On 11/2/21 8:19 AM, Riccardo Paolo Bestetti wrote: > Add support to inet v4 raw sockets for binding to nonlocal addresses > through the IP_FREEBIND and IP_TRANSPARENT socket options, as well as > the ipv4.ip_nonlocal_bind kernel parameter. > > Add helper function to inet_sock.h to check for bind address validity on > the base of the address type and whether nonlocal address are enabled > for the socket via any of the sockopts/sysctl, deduplicating checks in > ipv4/ping.c, ipv4/af_inet.c, ipv6/af_inet6.c (for mapped v4->v6 > addresses), and ipv4/raw.c. > > Add test cases with IP[V6]_FREEBIND verifying that both v4 and v6 raw > sockets support binding to nonlocal addresses after the change. Add > necessary support for the test cases to nettest. > > Signed-off-by: Riccardo Paolo Bestetti <pbl@xxxxxxxxx> > --- Reviewed-by: David Ahern <dsahern@xxxxxxxxxx>