From f24382c4166868c66f032a7212da9edbee780fdf Mon Sep 17 00:00:00 2001 From: Vincent Bernat Date: Mon, 6 Oct 2014 12:08:14 +0200 Subject: [PATCH] lldpd: also try /usr/lib/os-release if /etc/os-release is not present Usually, `/etc/os-release` is a symlink to `/usr/lib/os-release` but on some of them, programs are expected to fallback to `/usr/lib/os-release`. --- src/daemon/lldpd.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/daemon/lldpd.c b/src/daemon/lldpd.c index 33a85a3e..80a6ab5b 100644 --- a/src/daemon/lldpd.c +++ b/src/daemon/lldpd.c @@ -718,10 +718,15 @@ lldpd_get_os_release() { char *key, *val; char *ptr1 = release; - FILE *fp = fopen("/etc/os-release", "r"); log_debug("localchassis", "grab OS release"); + FILE *fp = fopen("/etc/os-release", "r"); + if (!fp) { + log_debug("localchassis", "could not open /etc/os-release"); + fp = fopen("/usr/lib/os-release", "r"); + } if (!fp) { - log_info("localchassis", "could not open /etc/os-release"); + log_info("localchassis", + "could not open either /etc/os-release or /usr/lib/os-release"); return NULL; } -- 2.39.5