From 7933635b54b68eda3f8a906d5e2c3ca30dbed279 Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Thu, 30 Mar 2023 23:23:42 -0700 Subject: [PATCH] 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 --- python/uds.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/python/uds.py b/python/uds.py index b58ebffc..83d7a54a 100644 --- a/python/uds.py +++ b/python/uds.py @@ -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