d6a3300a0b
All changes are hidden behind the EXPERIMENTAL option and are not compiled in by default. Add ND6_IFF_IPV6_ONLY_MANUAL to be able to set the interface into no-IPv4-mode manually without router advertisement options. This will allow developers to test software for the appropriate behaviour even on dual-stack networks or IPv6-Only networks without the option being set in RA messages. Update ifconfig to allow setting and displaying the flag. Update the checks for the filters to check for either the automatic or the manual flag to be set. Add REVARP to the list of filtered IPv4-related protocols and add an input filter similar to the output filter. Add a check, when receiving the IPv6-Only RA flag to see if the receiving interface has any IPv4 configured. If it does, ignore the IPv6-Only flag. Add a per-VNET global sysctl, which is on by default, to not process the automatic RA IPv6-Only flag. This way an administrator (if this is compiled in) has control over the behaviour in case the node still relies on IPv4.
80 lines
1.8 KiB
Makefile
80 lines
1.8 KiB
Makefile
# From: @(#)Makefile 8.1 (Berkeley) 6/5/93
|
|
# $FreeBSD$
|
|
|
|
.include <src.opts.mk>
|
|
|
|
PACKAGE=runtime
|
|
PROG= ifconfig
|
|
|
|
SRCS= ifconfig.c # base support
|
|
|
|
#
|
|
# NB: The order here defines the order in which the constructors
|
|
# are called. This in turn defines the default order in which
|
|
# status is displayed. Probably should add a priority mechanism
|
|
# to the registration process so we don't depend on this aspect
|
|
# of the toolchain.
|
|
#
|
|
SRCS+= af_link.c # LLC support
|
|
.if ${MK_INET_SUPPORT} != "no"
|
|
SRCS+= af_inet.c # IPv4 support
|
|
.endif
|
|
.if ${MK_INET6_SUPPORT} != "no"
|
|
SRCS+= af_inet6.c # IPv6 support
|
|
.endif
|
|
.if ${MK_INET6_SUPPORT} != "no"
|
|
SRCS+= af_nd6.c # ND6 support
|
|
.endif
|
|
|
|
SRCS+= ifclone.c # clone device support
|
|
SRCS+= ifmac.c # MAC support
|
|
SRCS+= ifmedia.c # SIOC[GS]IFMEDIA support
|
|
SRCS+= iffib.c # non-default FIB support
|
|
SRCS+= ifvlan.c # SIOC[GS]ETVLAN support
|
|
SRCS+= ifvxlan.c # VXLAN support
|
|
SRCS+= ifgre.c # GRE keys etc
|
|
SRCS+= ifgif.c # GIF reversed header workaround
|
|
SRCS+= ifipsec.c # IPsec VTI
|
|
|
|
SRCS+= sfp.c # SFP/SFP+ information
|
|
LIBADD+= m
|
|
|
|
.if ${MK_WIRELESS_SUPPORT} != "no"
|
|
SRCS+= ifieee80211.c # SIOC[GS]IEEE80211 support
|
|
LIBADD+= 80211
|
|
.endif
|
|
|
|
SRCS+= carp.c # SIOC[GS]VH support
|
|
SRCS+= ifgroup.c # ...
|
|
.if ${MK_PF} != "no"
|
|
SRCS+= ifpfsync.c # pfsync(4) support
|
|
.endif
|
|
|
|
SRCS+= ifbridge.c # bridge support
|
|
SRCS+= iflagg.c # lagg support
|
|
|
|
.if ${MK_EXPERIMENTAL} != "no"
|
|
CFLAGS+= -DDRAFT_IETF_6MAN_IPV6ONLY_FLAG
|
|
CFLAGS+= -DEXPERIMENTAL
|
|
.endif
|
|
.if ${MK_INET6_SUPPORT} != "no"
|
|
CFLAGS+= -DINET6
|
|
.endif
|
|
.if ${MK_INET_SUPPORT} != "no"
|
|
CFLAGS+= -DINET
|
|
.endif
|
|
.if ${MK_JAIL} != "no" && !defined(RELEASE_CRUNCH) && !defined(RESCUE)
|
|
CFLAGS+= -DJAIL
|
|
LIBADD+= jail
|
|
.endif
|
|
|
|
MAN= ifconfig.8
|
|
|
|
CFLAGS+= -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wnested-externs
|
|
WARNS?= 2
|
|
|
|
HAS_TESTS=
|
|
SUBDIR.${MK_TESTS}+= tests
|
|
|
|
.include <bsd.prog.mk>
|