--- _http_server.py 2007-03-25 11:41:38.000000000 +0200 +++ http_server.py 2007-07-30 10:35:48.000000000 +0200 @@ -28,6 +28,9 @@ import status_handler import logger +# Zope imports +from ZPublisher.HTTPRequest import parse_cookie + if RCS_ID.startswith('$Id: '): VERSION_STRING = string.split(RCS_ID)[2] else: @@ -286,6 +289,27 @@ name = 'Unknown (bad auth string)' else: name = t[0] + else: + try: + auth_cookie_name = "__ac" + cookie = None + try: + cookies = {} + header_value = self.get_header("Cookie") + if header_value: + parse_cookie(header_value, cookies) + cookie = cookies.get(auth_cookie_name, None) + except: + name = "Anonymous" + if cookie is not None: + cookie = unquote( cookie ) + try: + cookie = base64.decodestring( cookie ) + name, password = tuple( cookie.split( ':', 1 ) ) + except: name = "Bad cookie!" + except: + name = "Failure!" + self.channel.server.logger.log ( self.channel.addr[0],