]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Added compatibility hacks for Python 0.9.6.
authorGuido van Rossum <guido@python.org>
Thu, 17 Dec 1992 17:31:58 +0000 (17:31 +0000)
committerGuido van Rossum <guido@python.org>
Thu, 17 Dec 1992 17:31:58 +0000 (17:31 +0000)
Demo/rpc/rpc.py

index 4fbc795765138ec81ba7fb3ea2a617b367d7ac65..71a2c1f6945e2d733feaa546cca938b93999bbc5 100644 (file)
@@ -127,8 +127,13 @@ def make_auth_unix(seed, host, uid, gid, groups):
        return p.get_buf()
 
 def make_auth_unix_default():
-       return make_auth_unix(0, socket.gethostname(), \
-               os.getuid(), os.getgid(), [])
+       try:
+               from os import getuid, getgid
+               uid = getuid()
+               gid = getgid()
+       except ImportError:
+               uid = gid = 0
+       return make_auth_unix(0, socket.gethostname(), uid, gid, [])
 
 
 # Common base class for clients
@@ -259,7 +264,11 @@ class RawUDPClient(Client):
                p.pack_callheader(xid, self.prog, self.vers, proc, cred, verf)
 
        def do_call(self, *rest):
-               from select import select
+               try:
+                       from select import select
+               except ImportError:
+                       print 'WARNING: select not found, RPC may hang'
+                       select = None
                if len(rest) == 0:
                        bufsize = 8192
                elif len(rest) > 1:
@@ -271,7 +280,9 @@ class RawUDPClient(Client):
                count = 5
                self.sock.send(call)
                while 1:
-                       r, w, x = select([self.sock], [], [], timeout)
+                       r, w, x = [self.sock], [], []
+                       if select:
+                               r, w, x = select(r, w, x, timeout)
                        if self.sock not in r:
                                count = count - 1
                                if count < 0: raise RuntimeError, 'timeout'