mirror of
https://github.com/infiniteCable2/panda.git
synced 2026-02-18 17:23:52 +08:00
IsoTpMessage: rx_len sanity checks (#1311)
* add some more sanity checks for _isotp_rx_next * another PR * Update python/uds.py * cannot be bigger than 0xfff
This commit is contained in:
@@ -463,6 +463,7 @@ class IsoTpMessage():
|
||||
# single rx_frame
|
||||
if rx_data[0] >> 4 == 0x0:
|
||||
self.rx_len = rx_data[0] & 0xFF
|
||||
assert self.rx_len <= 0x7, f"isotp - rx: invalid single frame length: {self.rx_len}"
|
||||
self.rx_dat = rx_data[1:1 + self.rx_len]
|
||||
self.rx_idx = 0
|
||||
self.rx_done = True
|
||||
@@ -472,6 +473,7 @@ class IsoTpMessage():
|
||||
# first rx_frame
|
||||
elif rx_data[0] >> 4 == 0x1:
|
||||
self.rx_len = ((rx_data[0] & 0x0F) << 8) + rx_data[1]
|
||||
assert 0x8 <= self.rx_len, f"isotp - rx: invalid first frame length: {self.rx_len}"
|
||||
self.rx_dat = rx_data[2:]
|
||||
self.rx_idx = 0
|
||||
self.rx_done = False
|
||||
|
||||
Reference in New Issue
Block a user