diff options
Diffstat (limited to 'src/target/trx_toolkit')
-rw-r--r-- | src/target/trx_toolkit/data_msg.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/target/trx_toolkit/data_msg.py b/src/target/trx_toolkit/data_msg.py index a1046ec9..c5d284df 100644 --- a/src/target/trx_toolkit/data_msg.py +++ b/src/target/trx_toolkit/data_msg.py @@ -275,9 +275,9 @@ class DATAMSG: # Parses a TRX DATA message def parse_msg(self, msg): - # Make sure we have at least header - if len(msg) < self.HDR_LEN: - raise ValueError("Message is to short") + # Make sure we have at least common header + if len(msg) < self.CHDR_LEN: + raise ValueError("Message is to short: missing common header") # Parse version and TDMA TN self.ver = (msg[0] >> 4) @@ -286,6 +286,11 @@ class DATAMSG: # Parse TDMA FN self.fn = struct.unpack(">L", msg[1:5])[0] + # Make sure we have the whole header, + # including the version specific fields + if len(msg) < self.HDR_LEN: + raise ValueError("Message is to short: missing version specific header") + # Specific message part self.parse_hdr(msg) |