|
libnl
3.7.0
|
Related sections in the development guide: More...
Enumerations | |
| enum | nl_cb_action { NL_OK , NL_SKIP , NL_STOP } |
| Callback actions. More... | |
| enum | nl_cb_kind { NL_CB_DEFAULT , NL_CB_VERBOSE , NL_CB_DEBUG , NL_CB_CUSTOM , __NL_CB_KIND_MAX } |
| Callback kinds. More... | |
| enum | nl_cb_type { NL_CB_VALID , NL_CB_FINISH , NL_CB_OVERRUN , NL_CB_SKIPPED , NL_CB_ACK , NL_CB_MSG_IN , NL_CB_MSG_OUT , NL_CB_INVALID , NL_CB_SEQ_CHECK , NL_CB_SEND_ACK , NL_CB_DUMP_INTR , __NL_CB_TYPE_MAX } |
| Callback types. More... | |
Callback Typedefs | |
| typedef int(* | nl_recvmsg_msg_cb_t) (struct nl_msg *msg, void *arg) |
| nl_recvmsgs() callback for message processing customization More... | |
| typedef int(* | nl_recvmsg_err_cb_t) (struct sockaddr_nl *nla, struct nlmsgerr *nlerr, void *arg) |
| nl_recvmsgs() callback for error message processing customization More... | |
Callback Handle Management | |
| struct nl_cb * | nl_cb_alloc (enum nl_cb_kind kind) |
| Allocate a new callback handle. More... | |
| struct nl_cb * | nl_cb_clone (struct nl_cb *orig) |
| Clone an existing callback handle. More... | |
| struct nl_cb * | nl_cb_get (struct nl_cb *cb) |
| void | nl_cb_put (struct nl_cb *cb) |
| enum nl_cb_type | nl_cb_active_type (struct nl_cb *cb) |
| Obtain type of current active callback. More... | |
Callback Setup | |
| int | nl_cb_set (struct nl_cb *cb, enum nl_cb_type type, enum nl_cb_kind kind, nl_recvmsg_msg_cb_t func, void *arg) |
| Set up a callback. More... | |
| int | nl_cb_set_all (struct nl_cb *cb, enum nl_cb_kind kind, nl_recvmsg_msg_cb_t func, void *arg) |
| Set up a all callbacks. More... | |
| int | nl_cb_err (struct nl_cb *cb, enum nl_cb_kind kind, nl_recvmsg_err_cb_t func, void *arg) |
| Set up an error callback. More... | |
Overwriting | |
| void | nl_cb_overwrite_recvmsgs (struct nl_cb *cb, int(*func)(struct nl_sock *, struct nl_cb *)) |
| Overwrite internal calls to nl_recvmsgs() More... | |
| void | nl_cb_overwrite_recv (struct nl_cb *cb, int(*func)(struct nl_sock *, struct sockaddr_nl *, unsigned char **, struct ucred **)) |
| Overwrite internal calls to nl_recv() More... | |
| void | nl_cb_overwrite_send (struct nl_cb *cb, int(*func)(struct nl_sock *, struct nl_msg *)) |
| Overwrite internal calls to nl_send() More... | |
Related sections in the development guide:
| typedef int(* nl_recvmsg_msg_cb_t) (struct nl_msg *msg, void *arg) |
nl_recvmsgs() callback for message processing customization
| msg | netlink message being processed |
| arg | argument passed on through caller |
Definition at line 38 of file handlers.h.
| typedef int(* nl_recvmsg_err_cb_t) (struct sockaddr_nl *nla, struct nlmsgerr *nlerr, void *arg) |
nl_recvmsgs() callback for error message processing customization
| nla | netlink address of the peer |
| nlerr | netlink error message being processed |
| arg | argument passed on through caller |
Definition at line 47 of file handlers.h.
| enum nl_cb_action |
Callback actions.
| Enumerator | |
|---|---|
| NL_OK | Proceed with whatever would come next. |
| NL_SKIP | Skip this message. |
| NL_STOP | Stop parsing altogether and discard remaining messages. |
Definition at line 56 of file handlers.h.
| enum nl_cb_kind |
Callback kinds.
Definition at line 69 of file handlers.h.
| enum nl_cb_type |
Callback types.
| Enumerator | |
|---|---|
| NL_CB_VALID | Message is valid. |
| NL_CB_FINISH | Last message in a series of multi part messages received. |
| NL_CB_OVERRUN | Report received that data was lost. |
| NL_CB_SKIPPED | Message wants to be skipped. |
| NL_CB_ACK | Message is an acknowledgement. |
| NL_CB_MSG_IN | Called for every message received. |
| NL_CB_MSG_OUT | Called for every message sent out except for nl_sendto() |
| NL_CB_INVALID | Message is malformed and invalid. |
| NL_CB_SEQ_CHECK | Called instead of internal sequence number checking. |
| NL_CB_SEND_ACK | Sending of an acknowledge message has been requested. |
| NL_CB_DUMP_INTR | Flag NLM_F_DUMP_INTR is set in message. |
Definition at line 87 of file handlers.h.
| struct nl_cb* nl_cb_alloc | ( | enum nl_cb_kind | kind | ) |
Allocate a new callback handle.
| kind | callback kind to be used for initialization |
Definition at line 195 of file handlers.c.
References nl_cb_err(), and nl_cb_set().
Referenced by nl_cb_clone(), and nl_socket_alloc().
Here is the call graph for this function:
Here is the caller graph for this function:| struct nl_cb* nl_cb_clone | ( | struct nl_cb * | orig | ) |
Clone an existing callback handle.
| orig | original callback handle |
Definition at line 224 of file handlers.c.
References nl_cb_alloc(), and NL_CB_DEFAULT.
Referenced by nl_cache_mngr_data_ready(), nl_pickup_keep_syserr(), and nl_wait_for_ack().
Here is the call graph for this function:
Here is the caller graph for this function:| enum nl_cb_type nl_cb_active_type | ( | struct nl_cb * | cb | ) |
Obtain type of current active callback.
| cb | callback to query |
Definition at line 245 of file handlers.c.
| int nl_cb_set | ( | struct nl_cb * | cb, |
| enum nl_cb_type | type, | ||
| enum nl_cb_kind | kind, | ||
| nl_recvmsg_msg_cb_t | func, | ||
| void * | arg | ||
| ) |
Set up a callback.
| cb | callback set |
| type | callback to modify |
| kind | kind of implementation |
| func | callback function (NL_CB_CUSTOM) |
| arg | argument passed to callback |
Definition at line 287 of file handlers.c.
References NL_CB_CUSTOM.
Referenced by nl_cache_mngr_data_ready(), nl_cb_alloc(), nl_cb_set_all(), nl_pickup_keep_syserr(), nl_socket_disable_seq_check(), nl_socket_modify_cb(), and nl_wait_for_ack().
Here is the caller graph for this function:| int nl_cb_set_all | ( | struct nl_cb * | cb, |
| enum nl_cb_kind | kind, | ||
| nl_recvmsg_msg_cb_t | func, | ||
| void * | arg | ||
| ) |
Set up a all callbacks.
| cb | callback set |
| kind | kind of callback |
| func | callback function |
| arg | argument to be passwd to callback function |
Definition at line 316 of file handlers.c.
References nl_cb_set().
Here is the call graph for this function:| int nl_cb_err | ( | struct nl_cb * | cb, |
| enum nl_cb_kind | kind, | ||
| nl_recvmsg_err_cb_t | func, | ||
| void * | arg | ||
| ) |
Set up an error callback.
| cb | callback set |
| kind | kind of callback |
| func | callback function |
| arg | argument to be passed to callback function |
Definition at line 337 of file handlers.c.
References NL_CB_CUSTOM.
Referenced by nl_cb_alloc(), nl_pickup_keep_syserr(), and nl_socket_modify_err_cb().
Here is the caller graph for this function:| void nl_cb_overwrite_recvmsgs | ( | struct nl_cb * | cb, |
| int(*)(struct nl_sock *, struct nl_cb *) | func | ||
| ) |
Overwrite internal calls to nl_recvmsgs()
| cb | callback set |
| func | replacement callback for nl_recvmsgs() |
Definition at line 366 of file handlers.c.
| void nl_cb_overwrite_recv | ( | struct nl_cb * | cb, |
| int(*)(struct nl_sock *, struct sockaddr_nl *, unsigned char **, struct ucred **) | func | ||
| ) |
Overwrite internal calls to nl_recv()
| cb | callback set |
| func | replacement callback for nl_recv() |
Definition at line 377 of file handlers.c.
| void nl_cb_overwrite_send | ( | struct nl_cb * | cb, |
| int(*)(struct nl_sock *, struct nl_msg *) | func | ||
| ) |
Overwrite internal calls to nl_send()
| cb | callback set |
| func | replacement callback for nl_send() |
Definition at line 389 of file handlers.c.