#!/usr/bin/python3
# This file is part of curtin. See LICENSE file for copyright and license info.

# python2 or python3 web server.
# Usage: webserv [port [dir]]
#  run a webserver serving 'dir' at root on 'port'
#
#  port defaults to 8000
#  dir defaults to current dir.
import os
import socket
import sys
try:
    from BaseHTTPServer import HTTPServer
    from SimpleHTTPServer import SimpleHTTPRequestHandler
except ImportError:
    from http.server import HTTPServer, SimpleHTTPRequestHandler


class HTTPServerV6(HTTPServer):
    address_family = socket.AF_INET6


if __name__ == "__main__":
    port = 8000
    if len(sys.argv) > 1:
        port = int(sys.argv[1])
    if len(sys.argv) > 2:
        dir = sys.argv[2]
        os.chdir(dir)
    server = HTTPServerV6(("::", port), SimpleHTTPRequestHandler)
    # AF_INET6 address family, a four-tuple (host, port, flowinfo, scopeid)
    host, port, flowinfo, scopeid = server.socket.getsockname()
    sys.stdout.write("%s %s\n" % (host, port))
    sys.stdout.flush()
    server.serve_forever()

# vi: ts=4 expandtab syntax=python
