diff options
-rw-r--r-- | pysnmp/proto/api/verdec.py | 11 |
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') |