comparison mercurial/hgweb.py @ 881:16ce690c411d

Fix problem with "hg serve" on systems not providing IPv6.
author Bryan O'Sullivan <bos@serpentine.com>
date Wed, 10 Aug 2005 12:35:25 -0800
parents c333dfa8fa1a
children bc9ca4d51d23
comparison
equal deleted inserted replaced
859:6390c377a9e6 881:16ce690c411d
706 accesslog = sys.stdout, errorlog = sys.stderr): 706 accesslog = sys.stdout, errorlog = sys.stderr):
707 707
708 import BaseHTTPServer 708 import BaseHTTPServer
709 709
710 class IPv6HTTPServer(BaseHTTPServer.HTTPServer): 710 class IPv6HTTPServer(BaseHTTPServer.HTTPServer):
711 address_family = socket.AF_INET6 711 address_family = getattr(socket, 'AF_INET6', None)
712
713 def __init__(self, *args, **kwargs):
714 if self.address_family is None:
715 raise RepoError('IPv6 not available on this system')
716 BaseHTTPServer.HTTPServer.__init__(self, *args, **kwargs)
712 717
713 class hgwebhandler(BaseHTTPServer.BaseHTTPRequestHandler): 718 class hgwebhandler(BaseHTTPServer.BaseHTTPRequestHandler):
714 def log_error(self, format, *args): 719 def log_error(self, format, *args):
715 errorlog.write("%s - - [%s] %s\n" % (self.address_string(), 720 errorlog.write("%s - - [%s] %s\n" % (self.address_string(),
716 self.log_date_time_string(), 721 self.log_date_time_string(),