12#ifndef ZEPHYR_INCLUDE_NET_NET_EVENT_H_
13#define ZEPHYR_INCLUDE_NET_NET_EVENT_H_
31#define NET_IF_LAYER NET_MGMT_LAYER_L2
32#define NET_IF_CORE_CODE NET_MGMT_LAYER_CODE_IFACE
33#define NET_EVENT_IF_BASE (NET_MGMT_EVENT_BIT | \
34 NET_MGMT_IFACE_BIT | \
35 NET_MGMT_LAYER(NET_IF_LAYER) | \
36 NET_MGMT_LAYER_CODE(NET_IF_CORE_CODE))
39 NET_EVENT_IF_CMD_DOWN_VAL,
40 NET_EVENT_IF_CMD_UP_VAL,
41 NET_EVENT_IF_CMD_ADMIN_DOWN_VAL,
42 NET_EVENT_IF_CMD_ADMIN_UP_VAL,
47BUILD_ASSERT(NET_EVENT_IF_CMD_MAX <= NET_MGMT_MAX_COMMANDS,
48 "Number of events in net_event_if_cmd exceeds the limit");
50enum net_event_if_cmd {
58#define NET_IPV6_LAYER NET_MGMT_LAYER_L3
59#define NET_IPV6_CORE_CODE NET_MGMT_LAYER_CODE_IPV6
60#define NET_EVENT_IPV6_BASE (NET_MGMT_EVENT_BIT | \
61 NET_MGMT_IFACE_BIT | \
62 NET_MGMT_LAYER(NET_IPV6_LAYER) | \
63 NET_MGMT_LAYER_CODE(NET_IPV6_CORE_CODE))
66 NET_EVENT_IPV6_CMD_ADDR_ADD_VAL,
67 NET_EVENT_IPV6_CMD_ADDR_DEL_VAL,
68 NET_EVENT_IPV6_CMD_MADDR_ADD_VAL,
69 NET_EVENT_IPV6_CMD_MADDR_DEL_VAL,
70 NET_EVENT_IPV6_CMD_PREFIX_ADD_VAL,
71 NET_EVENT_IPV6_CMD_PREFIX_DEL_VAL,
72 NET_EVENT_IPV6_CMD_MCAST_JOIN_VAL,
73 NET_EVENT_IPV6_CMD_MCAST_LEAVE_VAL,
74 NET_EVENT_IPV6_CMD_ROUTER_ADD_VAL,
75 NET_EVENT_IPV6_CMD_ROUTER_DEL_VAL,
76 NET_EVENT_IPV6_CMD_ROUTE_ADD_VAL,
77 NET_EVENT_IPV6_CMD_ROUTE_DEL_VAL,
78 NET_EVENT_IPV6_CMD_DAD_SUCCEED_VAL,
79 NET_EVENT_IPV6_CMD_DAD_FAILED_VAL,
80 NET_EVENT_IPV6_CMD_NBR_ADD_VAL,
81 NET_EVENT_IPV6_CMD_NBR_DEL_VAL,
82 NET_EVENT_IPV6_CMD_DHCP_START_VAL,
83 NET_EVENT_IPV6_CMD_DHCP_BOUND_VAL,
84 NET_EVENT_IPV6_CMD_DHCP_STOP_VAL,
85 NET_EVENT_IPV6_CMD_ADDR_DEPRECATED_VAL,
86 NET_EVENT_IPV6_CMD_PE_ENABLED_VAL,
87 NET_EVENT_IPV6_CMD_PE_DISABLED_VAL,
88 NET_EVENT_IPV6_CMD_PE_FILTER_ADD_VAL,
89 NET_EVENT_IPV6_CMD_PE_FILTER_DEL_VAL,
90 NET_EVENT_IPV6_CMD_PMTU_CHANGED_VAL,
92 NET_EVENT_IPV6_CMD_MAX
95BUILD_ASSERT(NET_EVENT_IPV6_CMD_MAX <= NET_MGMT_MAX_COMMANDS,
96 "Number of events in net_event_ipv6_cmd exceeds the limit");
98enum net_event_ipv6_cmd {
127#define NET_IPV4_LAYER NET_MGMT_LAYER_L3
128#define NET_IPV4_CORE_CODE NET_MGMT_LAYER_CODE_IPV4
129#define NET_EVENT_IPV4_BASE (NET_MGMT_EVENT_BIT | \
130 NET_MGMT_IFACE_BIT | \
131 NET_MGMT_LAYER(NET_IPV4_LAYER) | \
132 NET_MGMT_LAYER_CODE(NET_IPV4_CORE_CODE))
135 NET_EVENT_IPV4_CMD_ADDR_ADD_VAL,
136 NET_EVENT_IPV4_CMD_ADDR_DEL_VAL,
137 NET_EVENT_IPV4_CMD_MADDR_ADD_VAL,
138 NET_EVENT_IPV4_CMD_MADDR_DEL_VAL,
139 NET_EVENT_IPV4_CMD_ROUTER_ADD_VAL,
140 NET_EVENT_IPV4_CMD_ROUTER_DEL_VAL,
141 NET_EVENT_IPV4_CMD_ROUTE_ADD_VAL,
142 NET_EVENT_IPV4_CMD_ROUTE_DEL_VAL,
143 NET_EVENT_IPV4_CMD_DHCP_START_VAL,
144 NET_EVENT_IPV4_CMD_DHCP_BOUND_VAL,
145 NET_EVENT_IPV4_CMD_DHCP_STOP_VAL,
146 NET_EVENT_IPV4_CMD_MCAST_JOIN_VAL,
147 NET_EVENT_IPV4_CMD_MCAST_LEAVE_VAL,
148 NET_EVENT_IPV4_CMD_ACD_SUCCEED_VAL,
149 NET_EVENT_IPV4_CMD_ACD_FAILED_VAL,
150 NET_EVENT_IPV4_CMD_ACD_CONFLICT_VAL,
151 NET_EVENT_IPV4_CMD_PMTU_CHANGED_VAL,
153 NET_EVENT_IPV4_CMD_MAX
156BUILD_ASSERT(NET_EVENT_IPV4_CMD_MAX <= NET_MGMT_MAX_COMMANDS,
157 "Number of events in net_event_ipv4_cmd exceeds the limit");
159enum net_event_ipv4_cmd {
180#define NET_L4_LAYER NET_MGMT_LAYER_L4
181#define NET_L4_CORE_CODE NET_MGMT_LAYER_CODE_L4
182#define NET_EVENT_L4_BASE (NET_MGMT_EVENT_BIT | \
183 NET_MGMT_IFACE_BIT | \
184 NET_MGMT_LAYER(NET_L4_LAYER) | \
185 NET_MGMT_LAYER_CODE(NET_L4_CORE_CODE))
188 NET_EVENT_L4_CMD_CONNECTED_VAL,
189 NET_EVENT_L4_CMD_DISCONNECTED_VAL,
190 NET_EVENT_L4_CMD_IPV4_CONNECTED_VAL,
191 NET_EVENT_L4_CMD_IPV4_DISCONNECTED_VAL,
192 NET_EVENT_L4_CMD_IPV6_CONNECTED_VAL,
193 NET_EVENT_L4_CMD_IPV6_DISCONNECTED_VAL,
194 NET_EVENT_L4_CMD_DNS_SERVER_ADD_VAL,
195 NET_EVENT_L4_CMD_DNS_SERVER_DEL_VAL,
196 NET_EVENT_L4_CMD_HOSTNAME_CHANGED_VAL,
197 NET_EVENT_L4_CMD_CAPTURE_STARTED_VAL,
198 NET_EVENT_L4_CMD_CAPTURE_STOPPED_VAL,
199 NET_EVENT_L4_CMD_VPN_CONNECTED_VAL,
200 NET_EVENT_L4_CMD_VPN_DISCONNECTED_VAL,
201 NET_EVENT_L4_CMD_VPN_PEER_ADD_VAL,
202 NET_EVENT_L4_CMD_VPN_PEER_DEL_VAL,
203 NET_EVENT_L4_CMD_DNS_SERVERS_RECONFIGURED_VAL,
208BUILD_ASSERT(NET_EVENT_L4_CMD_MAX <= NET_MGMT_MAX_COMMANDS,
209 "Number of events in net_event_l4_cmd exceeds the limit");
211enum net_event_l4_cmd {
227 NET_MGMT_CMD(NET_EVENT_L4_CMD_DNS_SERVERS_RECONFIGURED),
233#define NET_EVENT_IF_DOWN \
234 (NET_EVENT_IF_BASE | NET_EVENT_IF_CMD_DOWN)
237#define NET_EVENT_IF_UP \
238 (NET_EVENT_IF_BASE | NET_EVENT_IF_CMD_UP)
241#define NET_EVENT_IF_ADMIN_DOWN \
242 (NET_EVENT_IF_BASE | NET_EVENT_IF_CMD_ADMIN_DOWN)
245#define NET_EVENT_IF_ADMIN_UP \
246 (NET_EVENT_IF_BASE | NET_EVENT_IF_CMD_ADMIN_UP)
249#define NET_EVENT_IPV6_ADDR_ADD \
250 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ADDR_ADD)
253#define NET_EVENT_IPV6_ADDR_DEL \
254 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ADDR_DEL)
257#define NET_EVENT_IPV6_MADDR_ADD \
258 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MADDR_ADD)
261#define NET_EVENT_IPV6_MADDR_DEL \
262 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MADDR_DEL)
265#define NET_EVENT_IPV6_PREFIX_ADD \
266 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PREFIX_ADD)
269#define NET_EVENT_IPV6_PREFIX_DEL \
270 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PREFIX_DEL)
273#define NET_EVENT_IPV6_MCAST_JOIN \
274 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MCAST_JOIN)
277#define NET_EVENT_IPV6_MCAST_LEAVE \
278 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_MCAST_LEAVE)
281#define NET_EVENT_IPV6_ROUTER_ADD \
282 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ROUTER_ADD)
285#define NET_EVENT_IPV6_ROUTER_DEL \
286 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ROUTER_DEL)
289#define NET_EVENT_IPV6_ROUTE_ADD \
290 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ROUTE_ADD)
293#define NET_EVENT_IPV6_ROUTE_DEL \
294 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ROUTE_DEL)
297#define NET_EVENT_IPV6_DAD_SUCCEED \
298 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DAD_SUCCEED)
301#define NET_EVENT_IPV6_DAD_FAILED \
302 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DAD_FAILED)
305#define NET_EVENT_IPV6_NBR_ADD \
306 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_NBR_ADD)
309#define NET_EVENT_IPV6_NBR_DEL \
310 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_NBR_DEL)
313#define NET_EVENT_IPV6_DHCP_START \
314 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_START)
317#define NET_EVENT_IPV6_DHCP_BOUND \
318 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_BOUND)
321#define NET_EVENT_IPV6_DHCP_STOP \
322 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_DHCP_STOP)
325#define NET_EVENT_IPV6_ADDR_DEPRECATED \
326 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_ADDR_DEPRECATED)
329#define NET_EVENT_IPV6_PE_ENABLED \
330 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PE_ENABLED)
333#define NET_EVENT_IPV6_PE_DISABLED \
334 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PE_DISABLED)
337#define NET_EVENT_IPV6_PE_FILTER_ADD \
338 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PE_FILTER_ADD)
341#define NET_EVENT_IPV6_PE_FILTER_DEL \
342 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PE_FILTER_DEL)
345#define NET_EVENT_IPV6_PMTU_CHANGED \
346 (NET_EVENT_IPV6_BASE | NET_EVENT_IPV6_CMD_PMTU_CHANGED)
349#define NET_EVENT_IPV4_ADDR_ADD \
350 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ADDR_ADD)
353#define NET_EVENT_IPV4_ADDR_DEL \
354 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ADDR_DEL)
357#define NET_EVENT_IPV4_MADDR_ADD \
358 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MADDR_ADD)
361#define NET_EVENT_IPV4_MADDR_DEL \
362 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MADDR_DEL)
365#define NET_EVENT_IPV4_ROUTER_ADD \
366 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTER_ADD)
369#define NET_EVENT_IPV4_ROUTER_DEL \
370 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTER_DEL)
373#define NET_EVENT_IPV4_ROUTE_ADD \
374 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTE_ADD)
377#define NET_EVENT_IPV4_ROUTE_DEL \
378 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ROUTE_DEL)
381#define NET_EVENT_IPV4_DHCP_START \
382 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_START)
385#define NET_EVENT_IPV4_DHCP_BOUND \
386 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_BOUND)
389#define NET_EVENT_IPV4_DHCP_STOP \
390 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_DHCP_STOP)
393#define NET_EVENT_IPV4_MCAST_JOIN \
394 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MCAST_JOIN)
397#define NET_EVENT_IPV4_MCAST_LEAVE \
398 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_MCAST_LEAVE)
401#define NET_EVENT_IPV4_ACD_SUCCEED \
402 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ACD_SUCCEED)
405#define NET_EVENT_IPV4_ACD_FAILED \
406 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ACD_FAILED)
412#define NET_EVENT_IPV4_ACD_CONFLICT \
413 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_ACD_CONFLICT)
416#define NET_EVENT_IPV4_PMTU_CHANGED \
417 (NET_EVENT_IPV4_BASE | NET_EVENT_IPV4_CMD_PMTU_CHANGED)
423#define NET_EVENT_L4_CONNECTED \
424 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_CONNECTED)
431#define NET_EVENT_L4_DISCONNECTED \
432 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_DISCONNECTED)
436#define NET_EVENT_L4_IPV4_CONNECTED \
437 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_IPV4_CONNECTED)
440#define NET_EVENT_L4_IPV4_DISCONNECTED \
441 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_IPV4_DISCONNECTED)
444#define NET_EVENT_L4_IPV6_CONNECTED \
445 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_IPV6_CONNECTED)
448#define NET_EVENT_L4_IPV6_DISCONNECTED \
449 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_IPV6_DISCONNECTED)
452#define NET_EVENT_DNS_SERVER_ADD \
453 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_DNS_SERVER_ADD)
456#define NET_EVENT_DNS_SERVER_DEL \
457 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_DNS_SERVER_DEL)
471#define NET_EVENT_DNS_SERVERS_RECONFIGURED \
472 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_DNS_SERVERS_RECONFIGURED)
475#define NET_EVENT_HOSTNAME_CHANGED \
476 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_HOSTNAME_CHANGED)
479#define NET_EVENT_CAPTURE_STARTED \
480 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_CAPTURE_STARTED)
483#define NET_EVENT_CAPTURE_STOPPED \
484 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_CAPTURE_STOPPED)
487#define NET_EVENT_VPN_CONNECTED \
488 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_VPN_CONNECTED)
491#define NET_EVENT_VPN_DISCONNECTED \
492 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_VPN_DISCONNECTED)
495#define NET_EVENT_VPN_PEER_ADD \
496 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_VPN_PEER_ADD)
499#define NET_EVENT_VPN_PEER_DEL \
500 (NET_EVENT_L4_BASE | NET_EVENT_L4_CMD_VPN_PEER_DEL)
@ NET_MGMT_CMD
Scan results available.
Definition wifi_mgmt.h:381
Hostname configuration definitions.
IPv6 and IPv4 definitions.
Network Management API public header.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
Network Management event information structure Used to pass information on network event NET_EVENT_IP...
Definition net_event.h:619
uint16_t mtu
New MTU.
Definition net_event.h:623
struct net_in_addr dst
IPv4 address.
Definition net_event.h:621
Network Management event information structure Used to pass information on network events like NET_EV...
Definition net_event.h:558
struct net_in_addr nexthop
IPv4 address of the next hop.
Definition net_event.h:560
uint8_t prefix_len
IPv4 prefix length.
Definition net_event.h:564
struct net_in_addr addr
IPv4 address or prefix of the route.
Definition net_event.h:562
Network Management event information structure Used to pass information on network events like NET_EV...
Definition net_event.h:512
struct net_in6_addr addr
IPv6 address related to this event.
Definition net_event.h:514
Network Management event information structure Used to pass information on network events like NET_EV...
Definition net_event.h:526
int idx
Neighbor index in cache.
Definition net_event.h:530
struct net_in6_addr addr
Neighbor IPv6 address.
Definition net_event.h:528
Network Management event information structure Used to pass information on network events like NET_EV...
Definition net_event.h:605
bool is_deny_list
IPv6 filter deny or allow list.
Definition net_event.h:609
struct net_in6_addr prefix
IPv6 address of privacy extension filter.
Definition net_event.h:607
Network Management event information structure Used to pass information on network event NET_EVENT_IP...
Definition net_event.h:633
uint32_t mtu
New MTU.
Definition net_event.h:637
struct net_in6_addr dst
IPv6 address.
Definition net_event.h:635
Network Management event information structure Used to pass information on network events like NET_EV...
Definition net_event.h:575
uint8_t len
IPv6 prefix length.
Definition net_event.h:579
uint32_t lifetime
IPv6 prefix lifetime in seconds.
Definition net_event.h:581
struct net_in6_addr addr
IPv6 prefix.
Definition net_event.h:577
Network Management event information structure Used to pass information on network events like NET_EV...
Definition net_event.h:541
uint8_t prefix_len
IPv6 prefix length.
Definition net_event.h:547
struct net_in6_addr addr
IPv6 address or prefix of the route.
Definition net_event.h:545
struct net_in6_addr nexthop
IPv6 address of the next hop.
Definition net_event.h:543
Network Management event information structure Used to pass information on NET_EVENT_HOSTNAME_CHANGED...
Definition net_event.h:590
char hostname[NET_HOSTNAME_SIZE]
New hostname.
Definition net_event.h:592
IPv6 address struct.
Definition net_ip.h:144
IPv4 address struct.
Definition net_ip.h:156