]> code.delx.au - bg-scripts/commitdiff
Hack to make it work with Python 2.6
authorJames Bunton <jamesbunton@delx.net.au>
Wed, 5 May 2010 12:15:30 +0000 (22:15 +1000)
committerJames Bunton <jamesbunton@delx.net.au>
Wed, 5 May 2010 12:15:30 +0000 (22:15 +1000)
randombg.py

index 00c7d5434eaa0871eacd8106ab0598f1c7c1f431..9a587bb2e5b2270d36e72d965380f504160e14f5 100755 (executable)
@@ -312,8 +312,8 @@ class Cycler(object):
                self.filelist.add_to_favourites()
 
 class Server(asynchat.async_chat):
-       def __init__(self, cycler, conn, addr):
-               asynchat.async_chat.__init__(self, conn=conn)
+       def __init__(self, cycler, sock):
+               asynchat.async_chat.__init__(self, sock)
                self.cycler = cycler
                self.ibuffer = []
                self.set_terminator("\n")
@@ -335,6 +335,15 @@ class Server(asynchat.async_chat):
                        logging.debug('Unknown command received "%s"' % cmd)
 
 
+class SockHackWrap(object):
+       def __init__(self, sock, addr):
+               self.__sock = sock
+               self.__addr = addr
+       def getpeername(self):
+               return self.__addr
+       def __getattr__(self, key):
+               return getattr(self.__sock, key)
+
 class Listener(asyncore.dispatcher):
        def __init__(self, socket_filename, cycler):
                asyncore.dispatcher.__init__(self)
@@ -344,8 +353,8 @@ class Listener(asyncore.dispatcher):
                self.listen(2) # Backlog = 2
        
        def handle_accept(self):
-               conn, addr = self.accept()
-               Server(self.cycler, conn, addr)
+               sock, addr = self.accept()
+               Server(self.cycler, SockHackWrap(sock, addr))
        
        def writable(self):
                return False