lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20241004091724.61344-1-equinox@diac24.net>
Date: Fri,  4 Oct 2024 11:16:38 +0200
From: David Lamparter <equinox@...c24.net>
To: David Ahern <dsahern@...il.com>
Cc: netdev@...r.kernel.org,
	David Lamparter <equinox@...c24.net>
Subject: [PATCH iproute2-next] rt_names: read `rt_addrprotos.d` directory

`rt_addrprotos` doesn't currently use the `.d` directory thing - add it.

My magic 8-ball predicts we might be grabbing a value or two for use in
FRRouting at some point in the future.  Let's make it so we can ship
those in a separate file when it's time.

Signed-off-by: David Lamparter <equinox@...c24.net>
---
 etc/iproute2/rt_addrprotos.d/README | 2 ++
 lib/rt_names.c                      | 3 +++
 man/man8/ip-address.8.in            | 5 ++++-
 3 files changed, 9 insertions(+), 1 deletion(-)
 create mode 100644 etc/iproute2/rt_addrprotos.d/README

diff --git a/etc/iproute2/rt_addrprotos.d/README b/etc/iproute2/rt_addrprotos.d/README
new file mode 100644
index 000000000000..092115b12423
--- /dev/null
+++ b/etc/iproute2/rt_addrprotos.d/README
@@ -0,0 +1,2 @@
+Each file in this directory is an rt_addrprotos configuration file. iproute2
+commands scan this directory processing all files that end in '.conf'.
diff --git a/lib/rt_names.c b/lib/rt_names.c
index e967e0cac5b4..f44b1e4ba34e 100644
--- a/lib/rt_names.c
+++ b/lib/rt_names.c
@@ -315,6 +315,9 @@ static void rtnl_addrprot_initialize(void)
 		ret = rtnl_tab_initialize(CONF_USR_DIR "/rt_addrprotos",
 					  rtnl_addrprot_tab,
 					  ARRAY_SIZE(rtnl_addrprot_tab));
+
+	rtnl_tab_initialize_dir("rt_addrprotos.d", rtnl_addrprot_tab,
+				ARRAY_SIZE(rtnl_addrprot_tab));
 }
 
 const char *rtnl_addrprot_n2a(__u8 id, char *buf, int len)
diff --git a/man/man8/ip-address.8.in b/man/man8/ip-address.8.in
index d37dddb7b1a9..6c3f07f1173a 100644
--- a/man/man8/ip-address.8.in
+++ b/man/man8/ip-address.8.in
@@ -303,7 +303,10 @@ receive multicast traffic.
 the protocol identifier of this route.
 .I ADDRPROTO
 may be a number or a string from the file
-.BR "/etc/iproute2/rt_addrprotos" .
+.BR @SYSCONF_USR_DIR@..._addrprotos " or " @SYSCONF_ETC_DIR@..._addrprotos
+(has precedence if exists).  A directory named
+.BR rt_addrprotos.d
+is also scanned in either location.
 If the protocol ID is not given,
 
 .B ip assumes protocol 0. Several protocol
-- 
2.45.2


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ