nmea.c: Add null byte to nmea fields
authorAlexander Couzens <lynxis@fe80.eu>
Fri, 29 Jun 2018 21:19:11 +0000 (23:19 +0200)
committerJohn Crispin <john@phrozen.org>
Thu, 12 Jul 2018 07:59:06 +0000 (09:59 +0200)
Either the main.c treat them as non-null terminated strings or
nmea adds a null byte to the fields.

Found-by: Coverity
Fixes CID 1431321 1431098

nmea.c
nmea.h

diff --git a/nmea.c b/nmea.c
index 73ee722dfb7ee3ad0b3c49f79be67a9e565e36d5..4a49528130b70dea4ddea13eb41845f5ac42f022 100644 (file)
--- a/nmea.c
+++ b/nmea.c
@@ -51,7 +51,7 @@ struct nmea_param {
 } nmea_params[MAX_NMEA_PARAM];
 
 static int nmea_bad_time;
-char longitude[32] = { 0 }, latitude[32] = { 0 }, course[16] = { 0 }, speed[16] = { 0 }, elevation[16] = { 0 };
+char longitude[33] = { 0 }, latitude[33] = { 0 }, course[17] = { 0 }, speed[17] = { 0 }, elevation[17] = { 0 };
 int gps_valid = 0;
 
 static void
diff --git a/nmea.h b/nmea.h
index c6f1896df986cefeb2dc1bbad5180f7cb65f14fe..9f46d299983ef600d982ba798a4c86f6b1d92d11 100644 (file)
--- a/nmea.h
+++ b/nmea.h
@@ -23,7 +23,7 @@
 
 #include <libubox/ustream.h>
 
-extern char longitude[32], latitude[32], course[16], speed[16], elevation[16];
+extern char longitude[33], latitude[33], course[17], speed[17], elevation[17];
 extern int nmea_open(char *dev, struct ustream_fd *s, speed_t speed);
 extern void gps_timestamp(void);
 extern unsigned int adjust_clock;