From a9aeabdf879c25c584852a0bb5523837632f099b Mon Sep 17 00:00:00 2001 From: Vincent Bernat Date: Wed, 12 Apr 2023 07:38:31 +0200 Subject: [PATCH] daemon: fix read overflow when parsing CDP addresses Upstream: https://github.com/lldpd/lldpd/commit/a9aeabdf879c25c584852a0bb5523837632f099b Signed-off-by: Fabrice Fontaine --- NEWS | 4 ++++ src/daemon/protocols/cdp.c | 1 + 2 files changed, 5 insertions(+) diff --git a/src/daemon/protocols/cdp.c b/src/daemon/protocols/cdp.c index 8a1be863..42861c0e 100644 --- a/src/daemon/protocols/cdp.c +++ b/src/daemon/protocols/cdp.c @@ -466,6 +466,7 @@ cdp_decode(struct lldpd *cfg, char *frame, int s, struct lldpd_hardware *hardwar goto malformed; } PEEK_DISCARD(address_len); + addresses_len -= address_len; (void)PEEK_SAVE(pos_next_address); /* Next, we go back and try to extract IPv4 address */