From ee24440b7c123ab1b0317e57be33e837a1cb51f1 Mon Sep 17 00:00:00 2001 From: Zac Nelson Date: Wed, 5 Oct 2016 10:17:23 -0700 Subject: reduce max isotp message size. see OpenXC vi-firmware issue #375 https://github.com/openxc/vi-firmware/issues/375. (#5) --- src/isotp/isotp_types.h | 2 +- tests/test_receive.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/isotp/isotp_types.h b/src/isotp/isotp_types.h index 6ae3a79..3b7fd26 100644 --- a/src/isotp/isotp_types.h +++ b/src/isotp/isotp_types.h @@ -10,7 +10,7 @@ // TODO we want to avoid malloc, and we can't be allocated 4K on the stack for // each IsoTpMessage, so for now we're setting an artificial max message size // here - for most multi-frame use cases, 256 bytes is plenty. -#define OUR_MAX_ISO_TP_MESSAGE_SIZE 256 +#define OUR_MAX_ISO_TP_MESSAGE_SIZE 127 /* Private: IsoTp nibble specifics for PCI and Payload. */ diff --git a/tests/test_receive.c b/tests/test_receive.c index 3c6a652..607f906 100644 --- a/tests/test_receive.c +++ b/tests/test_receive.c @@ -136,7 +136,7 @@ END_TEST START_TEST (test_receive_large_multi_frame) { - const uint8_t data0[CAN_MESSAGE_BYTE_SIZE] = {0x11, 0x01, 0x49, 0x02, 0x01, 0x31, 0x46, 0x4d}; + const uint8_t data0[CAN_MESSAGE_BYTE_SIZE] = {0x10, 0x80, 0x49, 0x02, 0x01, 0x31, 0x46, 0x4d}; IsoTpMessage message = isotp_continue_receive(&SHIMS, &RECEIVE_HANDLE, 0x2a, data0, 8); //Make sure we don't try to receive messages that are too large and don't send flow control. fail_unless(!can_frame_was_sent); -- cgit 1.2.3-korg