From: Cliff Clark Date: Thu, 11 Apr 2024 21:48:13 +0000 (-0700) Subject: lib: Fix a buffer underflow in _lldpctl_dump_in_atom X-Git-Tag: 1.0.19~55 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f131aa876233feef1a215d9c975e295e66a11cc6;p=thirdparty%2Flldpd.git lib: Fix a buffer underflow in _lldpctl_dump_in_atom Do not write a zero byte before the beginning of the buffer when _lldpctl_dump_in_atom is called with a zero length atom. --- diff --git a/src/lib/atom.c b/src/lib/atom.c index 04011d44..8842ee06 100644 --- a/src/lib/atom.c +++ b/src/lib/atom.c @@ -649,7 +649,7 @@ _lldpctl_dump_in_atom(lldpctl_atom_t *atom, const uint8_t *input, size_t size, c snprintf(buffer + i * 3, 4, "%02x%c", *(u_int8_t *)(input + i), sep); if (max > 0 && size > max) snprintf(buffer + i * 3, sizeof(truncation) + 1, "%s", truncation); - else + else if (i > 0) *(buffer + i * 3 - 1) = 0; return buffer; }