summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pysnmp/proto/api/verdec.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/pysnmp/proto/api/verdec.py b/pysnmp/proto/api/verdec.py
index ec809e09..50144635 100644
--- a/pysnmp/proto/api/verdec.py
+++ b/pysnmp/proto/api/verdec.py
@@ -1,6 +1,11 @@
from pyasn1.codec.ber import decoder
+from pyasn1.error import PyAsn1Error
+from pysnmp.proto.error import ProtocolError
def decodeMessageVersion(wholeMsg):
- seq, wholeMsg = decoder.decode(wholeMsg, recursiveFlag=0)
- ver, wholeMsg = decoder.decode(wholeMsg, recursiveFlag=0)
- return ver
+ try:
+ seq, wholeMsg = decoder.decode(wholeMsg, recursiveFlag=0)
+ ver, wholeMsg = decoder.decode(wholeMsg, recursiveFlag=0)
+ return ver
+ except PyAsn1Error:
+ raise ProtocolError('Invalid BER at SNMP version component')