libnl 3.9.0
|
Available operations to modules implementing a link address family. More...
#include <link-api.h>
Data Fields | |
const unsigned int | ao_family |
The address family this operations set implements. | |
int | ao_refcnt |
Number of users of this operations, DO NOT MODIFY. | |
const struct nla_policy * | ao_protinfo_policy |
Validation policy for IFLA_PROTINFO attribute. | |
void *(* | ao_alloc )(struct rtnl_link *) |
Called after address family has been assigned to link. | |
void *(* | ao_clone )(struct rtnl_link *, void *) |
Called when the link is cloned, must allocate a clone of the address family specific buffer and return it. | |
void(* | ao_free )(struct rtnl_link *, void *) |
Called when the link gets freed. | |
int(* | ao_parse_protinfo )(struct rtnl_link *, struct nlattr *, void *) |
Called if a IFLA_PROTINFO attribute needs to be parsed. | |
int(* | ao_parse_af )(struct rtnl_link *, struct nlattr *, void *) |
Called if a IFLA_AF_SPEC attribute needs to be parsed. | |
int(* | ao_fill_af )(struct rtnl_link *, struct nl_msg *msg, void *) |
Called if a link message is sent to the kernel. | |
int(* | ao_parse_af_full )(struct rtnl_link *, struct nlattr *, void *) |
Called if the full IFLA_AF_SPEC data needs to be parsed. | |
int(* | ao_get_af )(struct nl_msg *msg, uint32_t *ext_filter_mask) |
Called for GETLINK message to the kernel. | |
void(* | ao_dump [NL_DUMP_MAX+1])(struct rtnl_link *, struct nl_dump_params *, void *) |
Dump address family specific link attributes. | |
int(* | ao_compare )(struct rtnl_link *, struct rtnl_link *, int, uint32_t, int) |
Comparison function. | |
int(* | ao_override_rtm )(struct rtnl_link *) |
int(* | ao_fill_pi )(struct rtnl_link *, struct nl_msg *msg, void *) |
Called if a link message is sent to the kernel. | |
const int | ao_fill_pi_flags |
PROTINFO type. | |
const int | ao_fill_af_no_nest |
IFLA_AF_SPEC nesting override. | |
Available operations to modules implementing a link address family.
Definition at line 75 of file link-api.h.
const unsigned int rtnl_link_af_ops::ao_family |
The address family this operations set implements.
Definition at line 78 of file link-api.h.
Referenced by rtnl_link_af_alloc(), rtnl_link_af_data(), rtnl_link_af_register(), rtnl_link_af_unregister(), and rtnl_link_set_family().
int rtnl_link_af_ops::ao_refcnt |
Number of users of this operations, DO NOT MODIFY.
Definition at line 81 of file link-api.h.
Referenced by rtnl_link_af_ops_lookup(), rtnl_link_af_ops_put(), rtnl_link_af_register(), and rtnl_link_af_unregister().
const struct nla_policy* rtnl_link_af_ops::ao_protinfo_policy |
Validation policy for IFLA_PROTINFO attribute.
This pointer can be set to a nla_policy structure describing the minimal requirements the attribute must meet. Failure of meeting these requirements will result in a parsing error.
Definition at line 87 of file link-api.h.
void *(* rtnl_link_af_ops::ao_alloc) (struct rtnl_link *) |
Called after address family has been assigned to link.
Must allocate data buffer to hold address family specific data and store it in link->l_af_data.
Definition at line 92 of file link-api.h.
Referenced by rtnl_link_af_alloc().
void *(* rtnl_link_af_ops::ao_clone) (struct rtnl_link *, void *) |
Called when the link is cloned, must allocate a clone of the address family specific buffer and return it.
Definition at line 96 of file link-api.h.
void(* rtnl_link_af_ops::ao_free) (struct rtnl_link *, void *) |
Called when the link gets freed.
Must free all allocated data
Definition at line 99 of file link-api.h.
int(* rtnl_link_af_ops::ao_parse_protinfo) (struct rtnl_link *, struct nlattr *, void *) |
Called if a IFLA_PROTINFO attribute needs to be parsed.
Typically stores the parsed data in the address family specific buffer.
Definition at line 103 of file link-api.h.
int(* rtnl_link_af_ops::ao_parse_af) (struct rtnl_link *, struct nlattr *, void *) |
Called if a IFLA_AF_SPEC attribute needs to be parsed.
Typically stores the parsed data in the address family specific buffer.
Definition at line 108 of file link-api.h.
int(* rtnl_link_af_ops::ao_fill_af) (struct rtnl_link *, struct nl_msg *msg, void *) |
Called if a link message is sent to the kernel.
Must append the link address family specific attributes to the message.
Definition at line 113 of file link-api.h.
int(* rtnl_link_af_ops::ao_parse_af_full) (struct rtnl_link *, struct nlattr *, void *) |
Called if the full IFLA_AF_SPEC data needs to be parsed.
Typically stores the parsed data in the address family specific buffer.
Definition at line 118 of file link-api.h.
int(* rtnl_link_af_ops::ao_get_af) (struct nl_msg *msg, uint32_t *ext_filter_mask) |
Called for GETLINK message to the kernel.
Used to append link address family specific attributes to the request message.
Definition at line 123 of file link-api.h.
void(* rtnl_link_af_ops::ao_dump[NL_DUMP_MAX+1])(struct rtnl_link *, struct nl_dump_params *, void *) |
Dump address family specific link attributes.
Definition at line 127 of file link-api.h.
Comparison function.
Will be called when two links are compared for their af data. It takes two link objects in question, an object specific bitmask defining which attributes should be compared and flags to control the behaviour
The function must return a bitmask with the relevant bit set for each attribute that mismatches
Definition at line 141 of file link-api.h.
Referenced by rtnl_link_af_data_compare().
int(* rtnl_link_af_ops::ao_override_rtm) (struct rtnl_link *) |
Definition at line 150 of file link-api.h.
int(* rtnl_link_af_ops::ao_fill_pi) (struct rtnl_link *, struct nl_msg *msg, void *) |
Called if a link message is sent to the kernel.
Must append the link protocol specific attributes to the message. (IFLA_PROTINFO)
Definition at line 154 of file link-api.h.
const int rtnl_link_af_ops::ao_fill_pi_flags |
PROTINFO type.
Called if a link message is sent to the kernel. If this is set, the default IFLA_PROTINFO is bitmasked with what is specified here. (eg. NLA_F_NESTED)
Definition at line 163 of file link-api.h.
const int rtnl_link_af_ops::ao_fill_af_no_nest |
IFLA_AF_SPEC nesting override.
Called if a link message is sent to the kernel. If this is set, the AF specific nest is not created. Instead, AF specific attributes are nested directly in the IFLA_AF_SPEC attribute.
Definition at line 171 of file link-api.h.