From c474036a035f1981d688769a3f1865456dcd2c9f Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Fri, 1 Mar 2019 12:02:56 +0100 Subject: [PATCH] - COTP: added payload length validation (see github #127) --- src/mms/iso_cotp/cotp.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/mms/iso_cotp/cotp.c b/src/mms/iso_cotp/cotp.c index 7ce8ecc4..49a1d38f 100644 --- a/src/mms/iso_cotp/cotp.c +++ b/src/mms/iso_cotp/cotp.c @@ -569,6 +569,13 @@ parseDataTpdu(CotpConnection* self, uint8_t* buffer, uint8_t len) static bool addPayloadToBuffer(CotpConnection* self, uint8_t* buffer, int payloadLength) { + if (payloadLength < 1) { + if (DEBUG_COTP) + printf("COTP: missing payload\n"); + + return false; + } + if (DEBUG_COTP) printf("COTP: add to payload buffer (cur size: %i, len: %i)\n", self->payload->size, payloadLength);