summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Nelson <znelson1@ford.com>2016-10-05 10:17:23 -0700
committerGitHub <noreply@github.com>2016-10-05 10:17:23 -0700
commitee24440b7c123ab1b0317e57be33e837a1cb51f1 (patch)
treeddd98f988e4d5943ac2771c6fef4798373b138e0
parent4e7375321a029a32989bc7546329c385e6edb80f (diff)
reduce max isotp message size. see OpenXC vi-firmware issue #375 https://github.com/openxc/vi-firmware/issues/375. (#5)
-rw-r--r--src/isotp/isotp_types.h2
-rw-r--r--tests/test_receive.c2
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);