From 20c1ef76e36bd77ab83b141844e26f3dea0a25ed Mon Sep 17 00:00:00 2001 From: Vincent Bernat Date: Wed, 22 Sep 2021 09:17:12 +0200 Subject: [PATCH] interfaces: on OpenBSD, ensure we get a device before setting its flags --- src/daemon/interfaces-bsd.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/daemon/interfaces-bsd.c b/src/daemon/interfaces-bsd.c index c8baefbb..c8e466b0 100644 --- a/src/daemon/interfaces-bsd.c +++ b/src/daemon/interfaces-bsd.c @@ -433,17 +433,16 @@ ifbsd_extract(struct lldpd *cfg, "grabbing information on interface %s", ifaddr->ifa_name); device = ifbsd_extract_device(cfg, ifaddr); + if (device) { #if defined HOST_OS_OPENBSD - /* On OpenBSD, the interface can have IFF_RUNNING but be down. */ - { + /* On OpenBSD, the interface can have IFF_RUNNING but be down. */ struct if_data *ifdata; ifdata = ifaddr->ifa_data; if (!LINK_STATE_IS_UP(ifdata->ifi_link_state)) device->flags &= ~IFF_RUNNING; - } #endif - if (device) TAILQ_INSERT_TAIL(interfaces, device, next); + } break; case AF_INET: case AF_INET6: -- 2.39.5