blob: 8c83d5c8eb167116f51e2887d4d52ff020bdd5e6 [file] [log] [blame]
From 49aeccbec4bf620bb594999bbd4a9de669a3984c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 15 Mar 2024 14:34:06 -0700
Subject: [PATCH] zebra: Mimic GNU basename() API for non-glibc library e.g.
musl musl only provides POSIX version of basename and it has also removed
providing it via string.h header [1] which now results in compile errors with
newer compilers e.g. clang-18
[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
Upstream-Status: Submitted [https://github.com/FRRouting/frr/pull/15561/]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
zebra/zebra_netns_notify.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/zebra/zebra_netns_notify.c b/zebra/zebra_netns_notify.c
index 1bb1292e34..d55df2f62d 100644
--- a/zebra/zebra_netns_notify.c
+++ b/zebra/zebra_netns_notify.c
@@ -41,6 +41,10 @@
#define ZEBRA_NS_POLLING_INTERVAL_MSEC 1000
#define ZEBRA_NS_POLLING_MAX_RETRIES 200
+#if !defined(__GLIBC__)
+#define basename(src) (strrchr(src,'/') ? strrchr(src,'/')+1 : src)
+#endif
+
DEFINE_MTYPE_STATIC(ZEBRA, NETNS_MISC, "ZebraNetNSInfo");
static struct event *zebra_netns_notify_current;
--
2.44.0