opnsense-src/lib/libc/net
Lexi Winter c8759dc5fb link_addr: be more strict about address formats
instead of accepting any character as a delimiter, only accept ':', '.'
and '-', and only permit a single delimiter in an address.

this prevents accepting bizarre addresses like:

	ifconfig epair2a link 10.1.2.200/28

... which is particularly problematic on an INET6-only system, in which
case ifconfig defaults to the 'link' family, meaning that:

	ifconfig epair2a 10.1.2.200/28

... changes the Ethernet address of the interface.

bump __FreeBSD_version so link_addr() consumers can detect the change.

Reviewed by:	kp, des
Approved by:	des (mentor)
Differential Revision:	https://reviews.freebsd.org/D49936

(cherry picked from commit a1215090416b8afb346fb2ff5b38f25ba0134a3a)

Note-from-OPNsense: not bumping the FreeBSD version for stable/25.7
2025-07-09 10:05:44 +02:00
..
base64.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
byteorder.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
ether_addr.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
ethers.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
eui64.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
eui64.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
gai_strerror.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
gai_strerror.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getaddrinfo.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
getaddrinfo.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
gethostbydns.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
gethostbyht.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
gethostbyname.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
gethostbynis.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
gethostnamadr.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getifaddrs.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
getifaddrs.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getifmaddrs.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
getifmaddrs.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getipnodebyname.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getnameinfo.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
getnameinfo.c libc/getnameinfo: stop adding NI_NUMERICHOST where inappropriate 2024-09-28 10:35:11 +00:00
getnetbydns.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getnetbyht.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getnetbynis.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getnetent.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getnetnamadr.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getproto.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getprotoent.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getprotoent.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getprotoname.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getservent.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getservent.c libc: Annotate a couple of local functions as such 2024-02-09 09:55:45 -05:00
hesiod.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
hesiod.c hesiod: Modernize. 2023-12-13 17:41:48 +01:00
hosts Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
hosts.equiv Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
if_indextoname.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
if_indextoname.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
if_nameindex.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
if_nametoindex.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
inet.3 inet(3): clarify syntax accepted by inet_pton 2024-01-30 14:10:30 -06:00
inet6_opt_init.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
inet6_option_space.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
inet6_rth_space.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
inet6_rthdr_space.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
inet_net.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
ip6opt.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
linkaddr.3 link_addr: be more strict about address formats 2025-07-09 10:05:44 +02:00
linkaddr.c link_addr: be more strict about address formats 2025-07-09 10:05:44 +02:00
Makefile.inc libc: add link_ntoa_r() 2025-07-09 10:05:44 +02:00
map_v4v6.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
name6.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
netdb_private.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
networks Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
nscache.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
nscachedcli.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
nsdispatch.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
nsdispatch.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
nslexer.l Purge more stray embedded $FreeBSD$ strings 2023-10-24 10:10:12 -07:00
nsparser.y libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
nss_backends.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
nss_compat.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
nsswitch.conf Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
ntoh.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
protocols Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
rcmd.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
rcmd.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
rcmdsh.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
rcmdsh.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
recv.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
res_config.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
resolver.3 resolv: Add a required include to resolv.h 2024-01-15 19:33:59 +09:00
rthdr.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sctp_bindx.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sctp_connectx.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sctp_freepaddrs.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sctp_getaddrlen.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sctp_getassocid.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sctp_getpaddrs.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sctp_opt_info.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sctp_recvmsg.3 sctp: document sctp_recvmsg as implemented 2024-08-04 00:19:33 +02:00
sctp_send.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sctp_sendmsg.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sctp_sys_calls.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
send.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sockatmark.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sockatmark.c Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
sourcefilter.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sourcefilter.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
Symbol.map libc: add link_ntoa_r() 2025-07-09 10:05:44 +02:00
vars.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00