summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAvery Pennarun <apenwarr@gmail.com>2010-10-02 15:24:04 -0700
committerAvery Pennarun <apenwarr@gmail.com>2010-10-02 15:24:04 -0700
commitb219b523c2abcb9106622a100c16d2106534f47a (patch)
tree89eedebaef4ddfaff12655d1bd15d9c3db52c8f8
parent52fbb2ebbea3fef2c4876c16a93408c1dba9b28a (diff)
socket.SHUT_RD and socket.SHUT_WR don't exist in python 2.3.
Mercifully, socket.socket.shutdown() still does, but it uses hardcoded integer parameters - and the integers correspond to the SHUT_RD and SHUT_WR definitions in later versions - so let's just hardcode them ourselves. See the carnage for yourself: http://docs.python.org/release/2.3.5/lib/socket-objects.html
-rw-r--r--ssnet.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/ssnet.py b/ssnet.py
index 7dcd70e..f307629 100644
--- a/ssnet.py
+++ b/ssnet.py
@@ -1,6 +1,12 @@
import struct, socket, errno, select
if not globals().get('skip_imports'):
from helpers import *
+
+# these don't exist in the socket module in python 2.3!
+SHUT_RD = 0
+SHUT_WR = 1
+SHUT_RDWR = 2
+
HDR_LEN = 8
@@ -128,14 +134,14 @@ class SockWrapper:
if not self.shut_read:
debug2('%r: done reading\n' % self)
self.shut_read = True
- #self.rsock.shutdown(socket.SHUT_RD) # doesn't do anything anyway
+ #self.rsock.shutdown(SHUT_RD) # doesn't do anything anyway
def nowrite(self):
if not self.shut_write:
debug2('%r: done writing\n' % self)
self.shut_write = True
try:
- self.wsock.shutdown(socket.SHUT_WR)
+ self.wsock.shutdown(SHUT_WR)
except socket.error, e:
self.seterr(e)