aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/diag_io.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/diag_io.c b/src/diag_io.c
index f5b1d52..9309774 100644
--- a/src/diag_io.c
+++ b/src/diag_io.c
@@ -123,6 +123,12 @@ struct msgb *diag_read_msg(struct diag_instance *di)
if (rc == HDLC_COMPLETE) {
di->rx.msg = NULL;
+
+ if (msgb_length(msg) < 3) {
+ msgb_free(msg);
+ return NULL;
+ }
+
rc = crc_check(msgb_data(msg), msgb_length(msg));
if (rc) {
fprintf(stderr, "Bad CRC, dropping packet\n");