freebsd-src/lib/libc/net
Lexi Winter 3214a79585 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 a121509041)
2025-05-21 00:17:06 +01:00
..
base64.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
byteorder.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
ether_addr.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
ethers.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
eui64.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
eui64.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
gai_strerror.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
gai_strerror.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getaddrinfo.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
getaddrinfo.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
gethostbydns.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
gethostbyht.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
gethostbyname.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
gethostbynis.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
gethostnamadr.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getifaddrs.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
getifaddrs.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getifmaddrs.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
getifmaddrs.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getipnodebyname.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
getnameinfo.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
getnameinfo.c libc/getnameinfo: stop adding NI_NUMERICHOST where inappropriate 2024-09-28 11:07:44 +00:00
getnetbydns.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getnetbyht.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getnetbynis.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getnetent.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
getnetnamadr.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getproto.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getprotoent.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
getprotoent.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getprotoname.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
getservent.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
getservent.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
hesiod.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
hesiod.c hesiod: Modernize. 2023-12-13 17:39:37 +01:00
hosts Remove $FreeBSD$: one-line sh pattern 2023-08-23 11:43:30 -06:00
hosts.equiv Remove $FreeBSD$: one-line sh pattern 2023-08-23 11:43:30 -06:00
if_indextoname.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
if_indextoname.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
if_nameindex.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
if_nametoindex.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
inet.3 inet(3): clarify syntax accepted by inet_pton 2024-01-30 14:11:07 -06:00
inet6_opt_init.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
inet6_option_space.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
inet6_rth_space.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
inet6_rthdr_space.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
inet_net.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
ip6opt.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
linkaddr.3 link_addr: be more strict about address formats 2025-05-21 00:17:06 +01:00
linkaddr.c link_addr: be more strict about address formats 2025-05-21 00:17:06 +01:00
Makefile.inc libc: add link_ntoa_r() 2025-05-20 23:11:52 +01:00
map_v4v6.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
name6.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
netdb_private.h Remove $FreeBSD$: two-line .h pattern 2023-08-23 11:43:21 -06:00
networks Remove $FreeBSD$: one-line sh pattern 2023-08-23 11:43:30 -06:00
nscache.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
nscachedcli.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
nsdispatch.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
nsdispatch.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
nslexer.l Purge more stray embedded $FreeBSD$ strings 2023-10-24 11:13:18 -07:00
nsparser.y Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
nss_backends.h Remove $FreeBSD$: two-line .h pattern 2023-08-23 11:43:21 -06:00
nss_compat.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
nsswitch.conf Remove $FreeBSD$: one-line sh pattern 2023-08-23 11:43:30 -06:00
ntoh.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
protocols Remove $FreeBSD$: one-line sh pattern 2023-08-23 11:43:30 -06:00
rcmd.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
rcmd.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
rcmdsh.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
rcmdsh.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
recv.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
res_config.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-23 11:43:23 -06:00
resolver.3 resolv: Add a required include to resolv.h 2024-01-15 19:35:35 +09:00
rthdr.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
sctp_bindx.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
sctp_connectx.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
sctp_freepaddrs.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
sctp_getaddrlen.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
sctp_getassocid.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
sctp_getpaddrs.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
sctp_opt_info.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
sctp_recvmsg.3 sctp: document sctp_recvmsg as implemented 2024-08-01 22:52:09 +02:00
sctp_send.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
sctp_sendmsg.3 Remove $FreeBSD$: one-line nroff pattern 2023-08-23 11:43:32 -06:00
sctp_sys_calls.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
send.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
sockatmark.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
sockatmark.c Remove $FreeBSD$: two-line .h pattern 2023-08-23 11:43:21 -06:00
sourcefilter.3 Remove $FreeBSD$: two-line nroff pattern 2023-08-23 11:43:31 -06:00
sourcefilter.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00
Symbol.map libc: add link_ntoa_r() 2025-05-20 23:11:52 +01:00
vars.c Remove $FreeBSD$: one-line .c pattern 2023-08-23 11:43:26 -06:00