@ -34,11 +34,23 @@ extern "C" {
@@ -34,11 +34,23 @@ extern "C" {
NET_MGMT_LAYER ( NET_IF_LAYER ) | \
NET_MGMT_LAYER_CODE ( NET_IF_CORE_CODE ) )
enum {
NET_EVENT_IF_CMD_DOWN_VAL ,
NET_EVENT_IF_CMD_UP_VAL ,
NET_EVENT_IF_CMD_ADMIN_DOWN_VAL ,
NET_EVENT_IF_CMD_ADMIN_UP_VAL ,
NET_EVENT_IF_CMD_MAX
} ;
BUILD_ASSERT ( NET_EVENT_IF_CMD_MAX < = NET_MGMT_MAX_COMMANDS ,
" Number of events in net_event_if_cmd exceeds the limit " ) ;
enum net_event_if_cmd {
NET_EVENT_IF_CMD_DOWN = 1 ,
NET_EVENT_IF_CMD_UP ,
NET_EVENT_IF_CMD_ADMIN_DOWN ,
NET_EVENT_IF_CMD_ADMIN_UP ,
NET_MGMT_CMD ( NET_EVENT_IF_CMD_DOWN ) ,
NET_MGMT_CMD ( NET_ EVENT_IF_CMD_UP ) ,
NET_MGMT_CMD ( NET_ EVENT_IF_CMD_ADMIN_DOWN ) ,
NET_MGMT_CMD ( NET_ EVENT_IF_CMD_ADMIN_UP ) ,
} ;
/* IPv6 Events */
@ -49,32 +61,65 @@ enum net_event_if_cmd {
@@ -49,32 +61,65 @@ enum net_event_if_cmd {
NET_MGMT_LAYER ( NET_IPV6_LAYER ) | \
NET_MGMT_LAYER_CODE ( NET_IPV6_CORE_CODE ) )
enum {
NET_EVENT_IPV6_CMD_ADDR_ADD_VAL ,
NET_EVENT_IPV6_CMD_ADDR_DEL_VAL ,
NET_EVENT_IPV6_CMD_MADDR_ADD_VAL ,
NET_EVENT_IPV6_CMD_MADDR_DEL_VAL ,
NET_EVENT_IPV6_CMD_PREFIX_ADD_VAL ,
NET_EVENT_IPV6_CMD_PREFIX_DEL_VAL ,
NET_EVENT_IPV6_CMD_MCAST_JOIN_VAL ,
NET_EVENT_IPV6_CMD_MCAST_LEAVE_VAL ,
NET_EVENT_IPV6_CMD_ROUTER_ADD_VAL ,
NET_EVENT_IPV6_CMD_ROUTER_DEL_VAL ,
NET_EVENT_IPV6_CMD_ROUTE_ADD_VAL ,
NET_EVENT_IPV6_CMD_ROUTE_DEL_VAL ,
NET_EVENT_IPV6_CMD_DAD_SUCCEED_VAL ,
NET_EVENT_IPV6_CMD_DAD_FAILED_VAL ,
NET_EVENT_IPV6_CMD_NBR_ADD_VAL ,
NET_EVENT_IPV6_CMD_NBR_DEL_VAL ,
NET_EVENT_IPV6_CMD_DHCP_START_VAL ,
NET_EVENT_IPV6_CMD_DHCP_BOUND_VAL ,
NET_EVENT_IPV6_CMD_DHCP_STOP_VAL ,
NET_EVENT_IPV6_CMD_ADDR_DEPRECATED_VAL ,
NET_EVENT_IPV6_CMD_PE_ENABLED_VAL ,
NET_EVENT_IPV6_CMD_PE_DISABLED_VAL ,
NET_EVENT_IPV6_CMD_PE_FILTER_ADD_VAL ,
NET_EVENT_IPV6_CMD_PE_FILTER_DEL_VAL ,
NET_EVENT_IPV6_CMD_PMTU_CHANGED_VAL ,
NET_EVENT_IPV6_CMD_MAX
} ;
BUILD_ASSERT ( NET_EVENT_IPV6_CMD_MAX < = NET_MGMT_MAX_COMMANDS ,
" Number of events in net_event_ipv6_cmd exceeds the limit " ) ;
enum net_event_ipv6_cmd {
NET_EVENT_IPV6_CMD_ADDR_ADD = 1 ,
NET_EVENT_IPV6_CMD_ADDR_DEL ,
NET_EVENT_IPV6_CMD_MADDR_ADD ,
NET_EVENT_IPV6_CMD_MADDR_DEL ,
NET_EVENT_IPV6_CMD_PREFIX_ADD ,
NET_EVENT_IPV6_CMD_PREFIX_DEL ,
NET_EVENT_IPV6_CMD_MCAST_JOIN ,
NET_EVENT_IPV6_CMD_MCAST_LEAVE ,
NET_EVENT_IPV6_CMD_ROUTER_ADD ,
NET_EVENT_IPV6_CMD_ROUTER_DEL ,
NET_EVENT_IPV6_CMD_ROUTE_ADD ,
NET_EVENT_IPV6_CMD_ROUTE_DEL ,
NET_EVENT_IPV6_CMD_DAD_SUCCEED ,
NET_EVENT_IPV6_CMD_DAD_FAILED ,
NET_EVENT_IPV6_CMD_NBR_ADD ,
NET_EVENT_IPV6_CMD_NBR_DEL ,
NET_EVENT_IPV6_CMD_DHCP_START ,
NET_EVENT_IPV6_CMD_DHCP_BOUND ,
NET_EVENT_IPV6_CMD_DHCP_STOP ,
NET_EVENT_IPV6_CMD_ADDR_DEPRECATED ,
NET_EVENT_IPV6_CMD_PE_ENABLED ,
NET_EVENT_IPV6_CMD_PE_DISABLED ,
NET_EVENT_IPV6_CMD_PE_FILTER_ADD ,
NET_EVENT_IPV6_CMD_PE_FILTER_DEL ,
NET_EVENT_IPV6_CMD_PMTU_CHANGED ,
NET_MGMT_CMD ( NET_EVENT_IPV6_CMD_ADDR_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_ADDR_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_MADDR_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_MADDR_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_PREFIX_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_PREFIX_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_MCAST_JOIN ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_MCAST_LEAVE ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_ROUTER_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_ROUTER_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_ROUTE_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_ROUTE_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_DAD_SUCCEED ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_DAD_FAILED ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_NBR_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_NBR_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_DHCP_START ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_DHCP_BOUND ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_DHCP_STOP ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_ADDR_DEPRECATED ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_PE_ENABLED ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_PE_DISABLED ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_PE_FILTER_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_PE_FILTER_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV6_CMD_PMTU_CHANGED ) ,
} ;
/* IPv4 Events*/
@ -85,22 +130,45 @@ enum net_event_ipv6_cmd {
@@ -85,22 +130,45 @@ enum net_event_ipv6_cmd {
NET_MGMT_LAYER ( NET_IPV4_LAYER ) | \
NET_MGMT_LAYER_CODE ( NET_IPV4_CORE_CODE ) )
enum {
NET_EVENT_IPV4_CMD_ADDR_ADD_VAL ,
NET_EVENT_IPV4_CMD_ADDR_DEL_VAL ,
NET_EVENT_IPV4_CMD_MADDR_ADD_VAL ,
NET_EVENT_IPV4_CMD_MADDR_DEL_VAL ,
NET_EVENT_IPV4_CMD_ROUTER_ADD_VAL ,
NET_EVENT_IPV4_CMD_ROUTER_DEL_VAL ,
NET_EVENT_IPV4_CMD_DHCP_START_VAL ,
NET_EVENT_IPV4_CMD_DHCP_BOUND_VAL ,
NET_EVENT_IPV4_CMD_DHCP_STOP_VAL ,
NET_EVENT_IPV4_CMD_MCAST_JOIN_VAL ,
NET_EVENT_IPV4_CMD_MCAST_LEAVE_VAL ,
NET_EVENT_IPV4_CMD_ACD_SUCCEED_VAL ,
NET_EVENT_IPV4_CMD_ACD_FAILED_VAL ,
NET_EVENT_IPV4_CMD_ACD_CONFLICT_VAL ,
NET_EVENT_IPV4_CMD_PMTU_CHANGED_VAL ,
NET_EVENT_IPV4_CMD_MAX
} ;
BUILD_ASSERT ( NET_EVENT_IPV4_CMD_MAX < = NET_MGMT_MAX_COMMANDS ,
" Number of events in net_event_ipv4_cmd exceeds the limit " ) ;
enum net_event_ipv4_cmd {
NET_EVENT_IPV4_CMD_ADDR_ADD = 1 ,
NET_EVENT_IPV4_CMD_ADDR_DEL ,
NET_EVENT_IPV4_CMD_MADDR_ADD ,
NET_EVENT_IPV4_CMD_MADDR_DEL ,
NET_EVENT_IPV4_CMD_ROUTER_ADD ,
NET_EVENT_IPV4_CMD_ROUTER_DEL ,
NET_EVENT_IPV4_CMD_DHCP_START ,
NET_EVENT_IPV4_CMD_DHCP_BOUND ,
NET_EVENT_IPV4_CMD_DHCP_STOP ,
NET_EVENT_IPV4_CMD_MCAST_JOIN ,
NET_EVENT_IPV4_CMD_MCAST_LEAVE ,
NET_EVENT_IPV4_CMD_ACD_SUCCEED ,
NET_EVENT_IPV4_CMD_ACD_FAILED ,
NET_EVENT_IPV4_CMD_ACD_CONFLICT ,
NET_EVENT_IPV4_CMD_PMTU_CHANGED ,
NET_MGMT_CMD ( NET_EVENT_IPV4_CMD_ADDR_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_ADDR_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_MADDR_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_MADDR_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_ROUTER_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_ROUTER_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_DHCP_START ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_DHCP_BOUND ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_DHCP_STOP ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_MCAST_JOIN ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_MCAST_LEAVE ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_ACD_SUCCEED ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_ACD_FAILED ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_ACD_CONFLICT ) ,
NET_MGMT_CMD ( NET_ EVENT_IPV4_CMD_PMTU_CHANGED ) ,
} ;
/* L4 network events */
@ -111,22 +179,45 @@ enum net_event_ipv4_cmd {
@@ -111,22 +179,45 @@ enum net_event_ipv4_cmd {
NET_MGMT_LAYER ( NET_L4_LAYER ) | \
NET_MGMT_LAYER_CODE ( NET_L4_CORE_CODE ) )
enum {
NET_EVENT_L4_CMD_CONNECTED_VAL ,
NET_EVENT_L4_CMD_DISCONNECTED_VAL ,
NET_EVENT_L4_CMD_IPV4_CONNECTED_VAL ,
NET_EVENT_L4_CMD_IPV4_DISCONNECTED_VAL ,
NET_EVENT_L4_CMD_IPV6_CONNECTED_VAL ,
NET_EVENT_L4_CMD_IPV6_DISCONNECTED_VAL ,
NET_EVENT_L4_CMD_DNS_SERVER_ADD_VAL ,
NET_EVENT_L4_CMD_DNS_SERVER_DEL_VAL ,
NET_EVENT_L4_CMD_HOSTNAME_CHANGED_VAL ,
NET_EVENT_L4_CMD_CAPTURE_STARTED_VAL ,
NET_EVENT_L4_CMD_CAPTURE_STOPPED_VAL ,
NET_EVENT_L4_CMD_VPN_CONNECTED_VAL ,
NET_EVENT_L4_CMD_VPN_DISCONNECTED_VAL ,
NET_EVENT_L4_CMD_VPN_PEER_ADD_VAL ,
NET_EVENT_L4_CMD_VPN_PEER_DEL_VAL ,
NET_EVENT_L4_CMD_MAX
} ;
BUILD_ASSERT ( NET_EVENT_L4_CMD_MAX < = NET_MGMT_MAX_COMMANDS ,
" Number of events in net_event_l4_cmd exceeds the limit " ) ;
enum net_event_l4_cmd {
NET_EVENT_L4_CMD_CONNECTED = 1 ,
NET_EVENT_L4_CMD_DISCONNECTED ,
NET_EVENT_L4_CMD_IPV4_CONNECTED ,
NET_EVENT_L4_CMD_IPV4_DISCONNECTED ,
NET_EVENT_L4_CMD_IPV6_CONNECTED ,
NET_EVENT_L4_CMD_IPV6_DISCONNECTED ,
NET_EVENT_L4_CMD_DNS_SERVER_ADD ,
NET_EVENT_L4_CMD_DNS_SERVER_DEL ,
NET_EVENT_L4_CMD_HOSTNAME_CHANGED ,
NET_EVENT_L4_CMD_CAPTURE_STARTED ,
NET_EVENT_L4_CMD_CAPTURE_STOPPED ,
NET_EVENT_L4_CMD_VPN_CONNECTED ,
NET_EVENT_L4_CMD_VPN_DISCONNECTED ,
NET_EVENT_L4_CMD_VPN_PEER_ADD ,
NET_EVENT_L4_CMD_VPN_PEER_DEL ,
NET_MGMT_CMD ( NET_EVENT_L4_CMD_CONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_DISCONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_IPV4_CONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_IPV4_DISCONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_IPV6_CONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_IPV6_DISCONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_DNS_SERVER_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_DNS_SERVER_DEL ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_HOSTNAME_CHANGED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_CAPTURE_STARTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_CAPTURE_STOPPED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_VPN_CONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_VPN_DISCONNECTED ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_VPN_PEER_ADD ) ,
NET_MGMT_CMD ( NET_ EVENT_L4_CMD_VPN_PEER_DEL ) ,
} ;
/** @endcond */
@ -153,11 +244,11 @@ enum net_event_l4_cmd {
@@ -153,11 +244,11 @@ enum net_event_l4_cmd {
/** Event emitted when an IPv6 address is removed from the system. */
# define NET_EVENT_IPV6_ADDR_DEL \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ADDR_DEL )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ADDR_DEL )
/** Event emitted when an IPv6 multicast address is added to the system. */
# define NET_EVENT_IPV6_MADDR_ADD \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MADDR_ADD )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MADDR_ADD )
/** Event emitted when an IPv6 multicast address is removed from the system. */
# define NET_EVENT_IPV6_MADDR_DEL \
@ -165,19 +256,19 @@ enum net_event_l4_cmd {
@@ -165,19 +256,19 @@ enum net_event_l4_cmd {
/** Event emitted when an IPv6 prefix is added to the system. */
# define NET_EVENT_IPV6_PREFIX_ADD \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PREFIX_ADD )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PREFIX_ADD )
/** Event emitted when an IPv6 prefix is removed from the system. */
# define NET_EVENT_IPV6_PREFIX_DEL \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PREFIX_DEL )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PREFIX_DEL )
/** Event emitted when an IPv6 multicast group is joined. */
# define NET_EVENT_IPV6_MCAST_JOIN \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MCAST_JOIN )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MCAST_JOIN )
/** Event emitted when an IPv6 multicast group is left. */
# define NET_EVENT_IPV6_MCAST_LEAVE \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MCAST_LEAVE )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MCAST_LEAVE )
/** Event emitted when an IPv6 router is added to the system. */
# define NET_EVENT_IPV6_ROUTER_ADD \
@ -213,15 +304,15 @@ enum net_event_l4_cmd {
@@ -213,15 +304,15 @@ enum net_event_l4_cmd {
/** Event emitted when an IPv6 DHCP client starts. */
# define NET_EVENT_IPV6_DHCP_START \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_START )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_START )
/** Event emitted when an IPv6 DHCP client address is bound. */
# define NET_EVENT_IPV6_DHCP_BOUND \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_BOUND )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_BOUND )
/** Event emitted when an IPv6 DHCP client is stopped. */
# define NET_EVENT_IPV6_DHCP_STOP \
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_STOP )
( NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_STOP )
/** IPv6 address is deprecated. */
# define NET_EVENT_IPV6_ADDR_DEPRECATED \
@ -253,11 +344,11 @@ enum net_event_l4_cmd {
@@ -253,11 +344,11 @@ enum net_event_l4_cmd {
/** Event emitted when an IPv4 address is removed from the system. */
# define NET_EVENT_IPV4_ADDR_DEL \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ADDR_DEL )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ADDR_DEL )
/** Event emitted when an IPv4 multicast address is added to the system. */
# define NET_EVENT_IPV4_MADDR_ADD \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MADDR_ADD )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MADDR_ADD )
/** Event emitted when an IPv4 multicast address is removed from the system. */
# define NET_EVENT_IPV4_MADDR_DEL \
@ -265,31 +356,31 @@ enum net_event_l4_cmd {
@@ -265,31 +356,31 @@ enum net_event_l4_cmd {
/** Event emitted when an IPv4 router is added to the system. */
# define NET_EVENT_IPV4_ROUTER_ADD \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTER_ADD )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTER_ADD )
/** Event emitted when an IPv4 router is removed from the system. */
# define NET_EVENT_IPV4_ROUTER_DEL \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTER_DEL )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTER_DEL )
/** Event emitted when an IPv4 DHCP client is started. */
# define NET_EVENT_IPV4_DHCP_START \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_START )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_START )
/** Event emitted when an IPv4 DHCP client address is bound. */
# define NET_EVENT_IPV4_DHCP_BOUND \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_BOUND )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_BOUND )
/** Event emitted when an IPv4 DHCP client is stopped. */
# define NET_EVENT_IPV4_DHCP_STOP \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_STOP )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_STOP )
/** Event emitted when an IPv4 multicast group is joined. */
# define NET_EVENT_IPV4_MCAST_JOIN \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MCAST_JOIN )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MCAST_JOIN )
/** Event emitted when an IPv4 multicast group is left. */
# define NET_EVENT_IPV4_MCAST_LEAVE \
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MCAST_LEAVE )
( NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MCAST_LEAVE )
/** Event emitted when an IPv4 address conflict detection succeeds. */
# define NET_EVENT_IPV4_ACD_SUCCEED \