diff options
Diffstat (limited to 'pysnmp/carrier/twisted/dgram/udp.py')
-rw-r--r-- | pysnmp/carrier/twisted/dgram/udp.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/pysnmp/carrier/twisted/dgram/udp.py b/pysnmp/carrier/twisted/dgram/udp.py index 10cf946f..2057c97d 100644 --- a/pysnmp/carrier/twisted/dgram/udp.py +++ b/pysnmp/carrier/twisted/dgram/udp.py @@ -26,24 +26,30 @@ class UdpTwistedTransport(DgramTwistedTransport): def openClientMode(self, iface=None): if iface is None: iface = ('', 0) + try: self._lport = reactor.listenUDP(iface[1], self, iface[0]) + except Exception as exc: raise error.CarrierError(exc) + return self def openServerMode(self, iface): try: self._lport = reactor.listenUDP(iface[1], self, iface[0]) + except Exception as exc: raise error.CarrierError(exc) + return self def closeTransport(self): if self._lport is not None: - d = self._lport.stopListening() - if d: - d.addCallback(lambda x: None) + deferred = self._lport.stopListening() + if deferred: + deferred.addCallback(lambda x: None) + DgramTwistedTransport.closeTransport(self) |