summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelie <elie>2012-04-16 20:49:32 +0000
committerelie <elie>2012-04-16 20:49:32 +0000
commitd0f9cba3ba78cb206f2fc27f2ad7a857ccddbea6 (patch)
treed27c5d1eb8f94acc508abae13e66953e013fd9d0
parent57f2106422a98ed55fbdd6ded6b105068f872c6b (diff)
downloadpysnmp-d0f9cba3ba78cb206f2fc27f2ad7a857ccddbea6.tar.gz
fix to socket.error processing at Py3 on Windows
-rw-r--r--CHANGES1
-rw-r--r--pysnmp/carrier/asynsock/dgram/base.py6
2 files changed, 4 insertions, 3 deletions
diff --git a/CHANGES b/CHANGES
index cb966b6..1a0e9f6 100644
--- a/CHANGES
+++ b/CHANGES
@@ -28,6 +28,7 @@ Revision 4.2.2
- Out of PYTHONPATH MIB paths now supported.
- Fix to ContextName handling in bytes form whilst running Python3. Data
mismatch error would return otherwise.
+- Fix to socket.error processing at Py3 on Windows.
- Fix to oneliner GETNEXT/GETBULK implementation to properly support
ignoreNonIncreasingOIDs option.
- Fix to setEndOfMibError()/setNoSuchInstanceError() at v1 PDU not to
diff --git a/pysnmp/carrier/asynsock/dgram/base.py b/pysnmp/carrier/asynsock/dgram/base.py
index c1fd0fb..dc280e5 100644
--- a/pysnmp/carrier/asynsock/dgram/base.py
+++ b/pysnmp/carrier/asynsock/dgram/base.py
@@ -56,7 +56,7 @@ class DgramSocketTransport(AbstractSocketTransport):
try:
self.socket.sendto(outgoingMessage, transportAddress)
except socket.error:
- if sys.exc_info()[1][0] in sockErrors:
+ if sys.exc_info()[1].args[0] in sockErrors:
debug.logger & debug.flagIO and debug.logger('handle_write: ignoring socket error %s' % (sys.exc_info()[1],))
else:
raise socket.error(sys.exc_info()[1])
@@ -73,9 +73,9 @@ class DgramSocketTransport(AbstractSocketTransport):
self._cbFun(self, transportAddress, incomingMessage)
return
except socket.error:
- if sys.exc_info()[1][0] in sockErrors:
+ if sys.exc_info()[1].args[0] in sockErrors:
debug.logger & debug.flagIO and debug.logger('handle_read: known socket error %s' % (sys.exc_info()[1],))
- sockErrors[sys.exc_info()[1][0]] and self.handle_close()
+ sockErrors[sys.exc_info()[1].args[0]] and self.handle_close()
return
else:
raise socket.error(sys.exc_info()[1])