Zephyr API Documentation
2.7.0-rc2
A Scalable Open Source RTOS
|
Network Management. More...
Data Structures | |
struct | net_mgmt_event_callback |
Network Management event callback structure Used to register a callback into the network management event part, in order to let the owner of this struct to get network event notification based on given event mask. More... | |
Macros | |
#define | net_mgmt(_mgmt_request, _iface, _data, _len) net_mgmt_##_mgmt_request(_mgmt_request, _iface, _data, _len) |
#define | NET_MGMT_DEFINE_REQUEST_HANDLER(_mgmt_request) |
#define | NET_MGMT_REGISTER_REQUEST_HANDLER(_mgmt_request, _func) FUNC_ALIAS(_func, net_mgmt_##_mgmt_request, int) |
Typedefs | |
typedef int(* | net_mgmt_request_handler_t) (uint32_t mgmt_request, struct net_if *iface, void *data, size_t len) |
Signature which all Net MGMT request handler need to follow. More... | |
typedef void(* | net_mgmt_event_handler_t) (struct net_mgmt_event_callback *cb, uint32_t mgmt_event, struct net_if *iface) |
Define the user's callback handler function signature. More... | |
Functions | |
static void | net_mgmt_init_event_callback (struct net_mgmt_event_callback *cb, net_mgmt_event_handler_t handler, uint32_t mgmt_event_mask) |
Helper to initialize a struct net_mgmt_event_callback properly. More... | |
void | net_mgmt_add_event_callback (struct net_mgmt_event_callback *cb) |
Add a user callback. More... | |
void | net_mgmt_del_event_callback (struct net_mgmt_event_callback *cb) |
Delete a user callback. More... | |
void | net_mgmt_event_notify_with_info (uint32_t mgmt_event, struct net_if *iface, const void *info, size_t length) |
Used by the system to notify an event. More... | |
static void | net_mgmt_event_notify (uint32_t mgmt_event, struct net_if *iface) |
int | net_mgmt_event_wait (uint32_t mgmt_event_mask, uint32_t *raised_event, struct net_if **iface, const void **info, size_t *info_length, k_timeout_t timeout) |
Used to wait synchronously on an event mask. More... | |
int | net_mgmt_event_wait_on_iface (struct net_if *iface, uint32_t mgmt_event_mask, uint32_t *raised_event, const void **info, size_t *info_length, k_timeout_t timeout) |
Used to wait synchronously on an event mask for a specific iface. More... | |
void | net_mgmt_event_init (void) |
Used by the core of the network stack to initialize the network event processing. More... | |
Network Management.
#define net_mgmt | ( | _mgmt_request, | |
_iface, | |||
_data, | |||
_len | |||
) | net_mgmt_##_mgmt_request(_mgmt_request, _iface, _data, _len) |
#include <include/net/net_mgmt.h>
#define NET_MGMT_DEFINE_REQUEST_HANDLER | ( | _mgmt_request | ) |
#include <include/net/net_mgmt.h>
#define NET_MGMT_REGISTER_REQUEST_HANDLER | ( | _mgmt_request, | |
_func | |||
) | FUNC_ALIAS(_func, net_mgmt_##_mgmt_request, int) |
#include <include/net/net_mgmt.h>
net_mgmt_event_handler_t |
#include <include/net/net_mgmt.h>
Define the user's callback handler function signature.
cb | Original struct net_mgmt_event_callback owning this handler. |
mgmt_event | The network event being notified. |
iface | A pointer on a struct net_if to which the the event belongs to, if it's an event on an iface. NULL otherwise. |
net_mgmt_request_handler_t |
#include <include/net/net_mgmt.h>
Signature which all Net MGMT request handler need to follow.
mgmt_request | The exact request value the handler is being called through |
iface | A valid pointer on struct net_if if the request is meant to be tight to a network interface. NULL otherwise. |
data | A valid pointer on a data understood by the handler. NULL otherwise. |
len | Length in byte of the memory pointed by data. |
void net_mgmt_add_event_callback | ( | struct net_mgmt_event_callback * | cb | ) |
#include <include/net/net_mgmt.h>
Add a user callback.
cb | A valid pointer on user's callback to add. |
void net_mgmt_del_event_callback | ( | struct net_mgmt_event_callback * | cb | ) |
#include <include/net/net_mgmt.h>
Delete a user callback.
cb | A valid pointer on user's callback to delete. |
#include <include/net/net_mgmt.h>
Used by the core of the network stack to initialize the network event processing.
#include <include/net/net_mgmt.h>
void net_mgmt_event_notify_with_info | ( | uint32_t | mgmt_event, |
struct net_if * | iface, | ||
const void * | info, | ||
size_t | length | ||
) |
#include <include/net/net_mgmt.h>
Used by the system to notify an event.
mgmt_event | The actual network event code to notify |
iface | a valid pointer on a struct net_if if only the event is based on an iface. NULL otherwise. |
info | a valid pointer on the information you want to pass along with the event. NULL otherwise. Note the data pointed there is normalized by the related event. |
length | size of the data pointed by info pointer. |
Note: info and length are disabled if CONFIG_NET_MGMT_EVENT_INFO is not defined.
int net_mgmt_event_wait | ( | uint32_t | mgmt_event_mask, |
uint32_t * | raised_event, | ||
struct net_if ** | iface, | ||
const void ** | info, | ||
size_t * | info_length, | ||
k_timeout_t | timeout | ||
) |
#include <include/net/net_mgmt.h>
Used to wait synchronously on an event mask.
mgmt_event_mask | A mask of relevant events to wait on. |
raised_event | a pointer on a uint32_t to get which event from the mask generated the event. Can be NULL if the caller is not interested in that information. |
iface | a pointer on a place holder for the iface on which the event has originated from. This is valid if only the event mask has bit NET_MGMT_IFACE_BIT set relevantly, depending on events the caller wants to listen to. |
info | a valid pointer if user wants to get the information the event might bring along. NULL otherwise. |
info_length | tells how long the info memory area is. Only valid if the info is not NULL. |
timeout | A timeout delay. K_FOREVER can be used to wait indefinitely. |
int net_mgmt_event_wait_on_iface | ( | struct net_if * | iface, |
uint32_t | mgmt_event_mask, | ||
uint32_t * | raised_event, | ||
const void ** | info, | ||
size_t * | info_length, | ||
k_timeout_t | timeout | ||
) |
#include <include/net/net_mgmt.h>
Used to wait synchronously on an event mask for a specific iface.
iface | a pointer on a valid network interface to listen event to |
mgmt_event_mask | A mask of relevant events to wait on. Listened to events should be relevant to iface events and thus have the bit NET_MGMT_IFACE_BIT set. |
raised_event | a pointer on a uint32_t to get which event from the mask generated the event. Can be NULL if the caller is not interested in that information. |
info | a valid pointer if user wants to get the information the event might bring along. NULL otherwise. |
info_length | tells how long the info memory area is. Only valid if the info is not NULL. |
timeout | A timeout delay. K_FOREVER can be used to wait indefinitely. |
|
inlinestatic |
#include <include/net/net_mgmt.h>
Helper to initialize a struct net_mgmt_event_callback properly.
cb | A valid application's callback structure pointer. |
handler | A valid handler function pointer. |
mgmt_event_mask | A mask of relevant events for the handler |