diff options
Diffstat (limited to 'usr/src/uts/common/sys/mac_flow.h')
-rw-r--r-- | usr/src/uts/common/sys/mac_flow.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/usr/src/uts/common/sys/mac_flow.h b/usr/src/uts/common/sys/mac_flow.h index b81acbae23..69b6c95834 100644 --- a/usr/src/uts/common/sys/mac_flow.h +++ b/usr/src/uts/common/sys/mac_flow.h @@ -155,6 +155,15 @@ typedef enum { #define MPT_MAXCID MPT_MAXCNT #define MPT_MAXCIDLEN 256 +/* Dynamic address detection types */ +#define MPT_DYN_DHCPV4 0x00000001 +#define MPT_DYN_DHCPV6 0x00000002 +#define MPT_DYN_SLAAC 0x00000004 +#define MPT_DYN_ALL 0x00000007 + +#define MPT_DYN_ISSET(mpt, method) \ + ((mpt->mp_dynamic & method) != 0 || mpt->mp_ipaddrcnt == 0) + typedef struct mac_ipaddr_s { uint32_t ip_version; in6_addr_t ip_addr; @@ -180,6 +189,7 @@ typedef struct mac_protect_s { uint32_t mp_cidcnt; /* Count of allowed DHCP CIDs */ mac_dhcpcid_t mp_cids[MPT_MAXCID]; /* Allowed DHCP CIDs */ boolean_t mp_allcids; /* Whether to allow all CIDs through */ + uint32_t mp_dynamic; /* Enabled dynamic address methods */ } mac_protect_t; /* The default priority for links */ |