summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys/mac_flow.h
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/sys/mac_flow.h')
-rw-r--r--usr/src/uts/common/sys/mac_flow.h10
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 */