| /linux/tools/lib/bpf/ |
| H A D | nlattr.h | 84 static inline void *libbpf_nla_data(const struct nlattr *nla) in libbpf_nla_data() 89 static inline uint8_t libbpf_nla_getattr_u8(const struct nlattr *nla) in libbpf_nla_getattr_u8() 94 static inline uint16_t libbpf_nla_getattr_u16(const struct nlattr *nla) in libbpf_nla_getattr_u16() 99 static inline uint32_t libbpf_nla_getattr_u32(const struct nlattr *nla) in libbpf_nla_getattr_u32() 104 static inline uint64_t libbpf_nla_getattr_u64(const struct nlattr *nla) in libbpf_nla_getattr_u64() 109 static inline const char *libbpf_nla_getattr_str(const struct nlattr *nla) in libbpf_nla_getattr_str() 118 static inline int libbpf_nla_len(const struct nlattr *nla) in libbpf_nla_len() 123 int libbpf_nla_parse(struct nlattr *tb[], int maxtype, struct nlattr *head, 125 int libbpf_nla_parse_nested(struct nlattr *tb[], int maxtype, 126 struct nlattr *nla, [all …]
|
| H A D | nlattr.c | 13 #include "nlattr.h" 25 static struct nlattr *nla_next(const struct nlattr *nla, int *remaining) in nla_next() 30 return (struct nlattr *)((void *)nla + totlen); in nla_next() 33 static int nla_ok(const struct nlattr *nla, int remaining) in nla_ok() 40 static int nla_type(const struct nlattr *nla) in nla_type() 45 static int validate_nla(struct nlattr *nla, int maxtype, in validate_nla() 104 int libbpf_nla_parse(struct nlattr *tb[], int maxtype, struct nlattr *head, in libbpf_nla_parse() 107 struct nlattr *nl in libbpf_nla_parse() [all...] |
| /linux/tools/net/ynl/lib/ |
| H A D | ynl-priv.h | 190 static inline unsigned int ynl_attr_type(const struct nlattr *attr) in ynl_attr_type() 195 static inline unsigned int ynl_attr_data_len(const struct nlattr *attr) in ynl_attr_data_len() 200 static inline void *ynl_attr_data(const struct nlattr *attr) in ynl_attr_data() 205 static inline void *ynl_attr_data_end(const struct nlattr *attr) in ynl_attr_data_end() 217 sizeof(struct nlattr) + offset); \ 228 static inline struct nlattr * 229 ynl_attr_if_good(const void *end, struct nlattr *attr) in ynl_attr_if_good() 231 if (attr + 1 > (const struct nlattr *)end) in ynl_attr_if_good() 238 static inline struct nlattr * 239 ynl_attr_next(const void *end, const struct nlattr *prev) in ynl_attr_next() [all …]
|
| /linux/net/openvswitch/ |
| H A D | flow_netlink.h | 35 int parse_flow_nlattrs(const struct nlattr *attr, const struct nlattr *a[], 38 const struct nlattr *a[OVS_KEY_ATTR_MAX + 1], 46 const struct nlattr *key, const struct nlattr *mask, 52 bool ovs_nla_get_ufid(struct sw_flow_id *, const struct nlattr *, bool log); 53 int ovs_nla_get_identifier(struct sw_flow_id *sfid, const struct nlattr *ufid, 55 u32 ovs_nla_get_ufid_flags(const struct nlattr *attr); 57 int ovs_nla_copy_actions(struct net *net, const struct nlattr *attr, 62 int ovs_nla_put_actions(const struct nlattr *attr, 68 int nsh_hdr_from_nlattr(const struct nlattr *attr, struct nshhdr *nh,
|
| H A D | flow_netlink.c | 53 static bool actions_may_change_flow(const struct nlattr *actions) in actions_may_change_flow() 55 struct nlattr *nla; in actions_may_change_flow() 477 static int __parse_flow_nlattrs(const struct nlattr *attr, in __parse_flow_nlattrs() 478 const struct nlattr *a[], in __parse_flow_nlattrs() 481 const struct nlattr *nla; in __parse_flow_nlattrs() 529 static int parse_flow_mask_nlattrs(const struct nlattr *attr, in parse_flow_mask_nlattrs() 530 const struct nlattr *a[], u64 *attrsp, in parse_flow_mask_nlattrs() 536 int parse_flow_nlattrs(const struct nlattr *attr, const struct nlattr *a[], in parse_flow_nlattrs() 542 static int genev_tun_opt_from_nlattr(const struct nlattr *a, in genev_tun_opt_from_nlattr() 593 static int vxlan_tun_opt_from_nlattr(const struct nlattr *attr, in vxlan_tun_opt_from_nlattr() [all …]
|
| H A D | vport-vxlan.c | 31 struct nlattr *exts; in vxlan_get_options() 51 static int vxlan_configure_exts(struct vport *vport, struct nlattr *attr, in vxlan_configure_exts() 54 struct nlattr *exts[OVS_VXLAN_EXT_MAX + 1]; in vxlan_configure_exts() 57 if (nla_len(attr) < sizeof(struct nlattr)) in vxlan_configure_exts() 74 struct nlattr *options = parms->options; in vxlan_tnl_create() 77 struct nlattr *a; in vxlan_tnl_create()
|
| H A D | vport.h | 37 int ovs_vport_set_options(struct vport *, struct nlattr *options); 40 int ovs_vport_set_upcall_portids(struct vport *, const struct nlattr *pids); 107 struct nlattr *options; 112 struct nlattr *upcall_portids; 140 int (*set_options)(struct vport *, struct nlattr *);
|
| H A D | conntrack.h | 19 int ovs_ct_copy_action(struct net *, const struct nlattr *, 32 void ovs_ct_free_action(const struct nlattr *a); 50 static inline int ovs_ct_copy_action(struct net *net, const struct nlattr *nla, in ovs_ct_copy_action() 98 static inline void ovs_ct_free_action(const struct nlattr *a) { } in ovs_ct_free_action()
|
| /linux/tools/bpf/bpftool/ |
| H A D | netlink_dumper.c | 10 #include "bpf/nlattr.h" 14 static void xdp_dump_prog_id(struct nlattr **tb, int attr, in xdp_dump_prog_id() 29 static int do_xdp_dump_one(struct nlattr *attr, unsigned int ifindex, in do_xdp_dump_one() 32 struct nlattr *tb[IFLA_XDP_MAX + 1]; in do_xdp_dump_one() 72 int do_xdp_dump(struct ifinfomsg *ifinfo, struct nlattr **tb) in do_xdp_dump() 81 static int do_bpf_dump_one_act(struct nlattr *attr) in do_bpf_dump_one_act() 83 struct nlattr *tb[TCA_ACT_BPF_MAX + 1]; in do_bpf_dump_one_act() 102 static int do_dump_one_act(struct nlattr *attr) in do_dump_one_act() 104 struct nlattr *tb[TCA_ACT_MAX + 1]; in do_dump_one_act() 119 static int do_bpf_act_dump(struct nlattr *att [all...] |
| /linux/include/net/ |
| H A D | rtnetlink.h | 85 struct nlattr **tb; 86 struct nlattr **data; 147 struct net_device *(*alloc)(struct nlattr *tb[], 158 int (*validate)(struct nlattr *tb[], 159 struct nlattr *data[], 166 struct nlattr *tb[], 167 struct nlattr *data[], 186 struct nlattr *tb[], 187 struct nlattr *data[], 233 const struct nlattr *attr, [all …]
|
| H A D | act_api.h | 126 int (*init)(struct net *net, struct nlattr *nla, 127 struct nlattr *est, struct tc_action **act, 194 int tcf_idr_create(struct tc_action_net *tn, u32 index, struct nlattr *est, 198 struct nlattr *est, struct tc_action **a, 215 int tcf_action_init(struct net *net, struct tcf_proto *tp, struct nlattr *nla, 216 struct nlattr *est, 219 struct tc_action_ops *tc_action_load_ops(struct nlattr *nla, u32 flags, 222 struct nlattr *nla, struct nlattr *est,
|
| /linux/lib/ |
| H A D | nlattr.c | 60 static int __nla_validate_parse(const struct nlattr *head, int len, int maxtype, 64 struct nlattr **tb, unsigned int depth); 66 static int validate_nla_bitfield32(const struct nlattr *nla, in validate_nla_bitfield32() 89 static int nla_validate_array(const struct nlattr *head, int len, int maxtype, in nla_validate_array() 94 const struct nlattr *entry; in nla_validate_array() 171 const struct nlattr *nla, in nla_validate_range_unsigned() 288 const struct nlattr *nla, in nla_validate_int_range_signed() 326 const struct nlattr *nla, in nla_validate_int_range() 354 const struct nlattr *nla, in nla_validate_mask() 393 static int validate_nla(const struct nlattr *nla, int maxtype, in validate_nla() [all …]
|
| /linux/net/bridge/ |
| H A D | br_mrp_netlink.c | 31 static int br_mrp_instance_parse(struct net_bridge *br, struct nlattr *attr, in br_mrp_instance_parse() 34 struct nlattr *tb[IFLA_BRIDGE_MRP_INSTANCE_MAX + 1]; in br_mrp_instance_parse() 76 struct nlattr *attr, in br_mrp_port_state_parse() 79 struct nlattr *tb[IFLA_BRIDGE_MRP_PORT_STATE_MAX + 1]; in br_mrp_port_state_parse() 105 struct nlattr *attr, in br_mrp_port_role_parse() 108 struct nlattr *tb[IFLA_BRIDGE_MRP_PORT_ROLE_MAX + 1]; in br_mrp_port_role_parse() 134 static int br_mrp_ring_state_parse(struct net_bridge *br, struct nlattr *attr, in br_mrp_ring_state_parse() 137 struct nlattr *tb[IFLA_BRIDGE_MRP_RING_STATE_MAX + 1]; in br_mrp_ring_state_parse() 168 static int br_mrp_ring_role_parse(struct net_bridge *br, struct nlattr *attr, in br_mrp_ring_role_parse() 171 struct nlattr *tb[IFLA_BRIDGE_MRP_RING_ROLE_MAX + 1]; in br_mrp_ring_role_parse() [all …]
|
| H A D | br_cfm_netlink.c | 90 static int br_mep_create_parse(struct net_bridge *br, struct nlattr *attr, in br_mep_create_parse() 93 struct nlattr *tb[IFLA_BRIDGE_CFM_MEP_CREATE_MAX + 1]; in br_mep_create_parse() 130 static int br_mep_delete_parse(struct net_bridge *br, struct nlattr *attr, in br_mep_delete_parse() 133 struct nlattr *tb[IFLA_BRIDGE_CFM_MEP_DELETE_MAX + 1]; in br_mep_delete_parse() 153 static int br_mep_config_parse(struct net_bridge *br, struct nlattr *attr, in br_mep_config_parse() 156 struct nlattr *tb[IFLA_BRIDGE_CFM_MEP_CONFIG_MAX + 1]; in br_mep_config_parse() 195 static int br_cc_config_parse(struct net_bridge *br, struct nlattr *attr, in br_cc_config_parse() 198 struct nlattr *tb[IFLA_BRIDGE_CFM_CC_CONFIG_MAX + 1]; in br_cc_config_parse() 236 static int br_cc_peer_mep_add_parse(struct net_bridge *br, struct nlattr *attr, in br_cc_peer_mep_add_parse() 239 struct nlattr *tb[IFLA_BRIDGE_CFM_CC_PEER_MEP_MAX + 1]; in br_cc_peer_mep_add_parse() [all …]
|
| /linux/net/tipc/ |
| H A D | netlink_compat.c | 69 int (*format)(struct tipc_nl_compat_msg *msg, struct nlattr **attrs); 188 struct nlattr **attrbuf; in __tipc_nl_compat_dumpit() 205 attrbuf = kzalloc_objs(struct nlattr *, tipc_genl_family.maxattr + 1); in __tipc_nl_compat_dumpit() 333 struct nlattr **attrbuf; in __tipc_nl_compat_doit() 340 attrbuf = kmalloc_objs(struct nlattr *, tipc_genl_family.maxattr + 1); in __tipc_nl_compat_doit() 361 (const struct nlattr *)trans_buf->data, in __tipc_nl_compat_doit() 403 struct nlattr **attrs) in tipc_nl_compat_bearer_dump() 405 struct nlattr *bearer[TIPC_NLA_BEARER_MAX + 1]; in tipc_nl_compat_bearer_dump() 425 struct nlattr *prop; in tipc_nl_compat_bearer_enable() 426 struct nlattr *bearer; in tipc_nl_compat_bearer_enable() [all …]
|
| /linux/net/dcb/ |
| H A D | dcbnl.c | 242 u32 seq, struct nlattr **tb, struct sk_buff *skb) in dcbnl_getstate() 253 u32 seq, struct nlattr **tb, struct sk_buff *skb) in dcbnl_getpfccfg() 255 struct nlattr *data[DCB_PFC_UP_ATTR_MAX + 1], *nest; in dcbnl_getpfccfg() 298 u32 seq, struct nlattr **tb, struct sk_buff *skb) in dcbnl_getperm_hwaddr() 312 u32 seq, struct nlattr **tb, struct sk_buff *skb) in dcbnl_getcap() 314 struct nlattr *data[DCB_CAP_ATTR_MAX + 1], *nest; in dcbnl_getcap() 357 u32 seq, struct nlattr **tb, struct sk_buff *skb) in dcbnl_getnumtcs() 359 struct nlattr *data[DCB_NUMTCS_ATTR_MAX + 1], *nest; in dcbnl_getnumtcs() 404 u32 seq, struct nlattr **tb, struct sk_buff *skb) in dcbnl_setnumtcs() 406 struct nlattr *data[DCB_NUMTCS_ATTR_MAX + 1]; in dcbnl_setnumtcs() [all …]
|
| /linux/include/linux/netfilter/ipset/ |
| H A D | ip_set.h | 163 int (*uadt)(struct ip_set *set, struct nlattr *tb[], 231 struct nlattr *tb[], u32 flags); 312 const struct nlattr *name, struct ip_set **set); 333 extern int ip_set_get_ipaddr4(struct nlattr *nla, __be32 *ipaddr); 334 extern int ip_set_get_ipaddr6(struct nlattr *nla, union nf_inet_addr *ipaddr); 335 extern size_t ip_set_elem_len(struct ip_set *set, struct nlattr *tb[], 337 extern int ip_set_get_extensions(struct ip_set *set, struct nlattr *tb[], 347 ip_set_get_hostipaddr4(struct nlattr *nla, u32 *ipaddr) in ip_set_get_hostipaddr4() 377 ip_set_attr_netorder(struct nlattr *tb[], int type) in ip_set_attr_netorder() 383 ip_set_optattr_netorder(struct nlattr *tb[], int type) in ip_set_optattr_netorder() [all …]
|
| /linux/net/netfilter/ |
| H A D | nf_conntrack_netlink.c | 72 struct nlattr *nest_parms; in ctnetlink_dump_tuples_proto() 113 struct nlattr *nest_parms; in ctnetlink_dump_tuples_ip() 201 struct nlattr *nest_proto; in ctnetlink_dump_protoinfo() 225 struct nlattr *nest_helper; in ctnetlink_dump_helpinfo() 262 struct nlattr *nest_count; in dump_counters() 310 struct nlattr *nest_count; in ctnetlink_dump_timestamp() 358 struct nlattr *nest_secctx; in ctnetlink_dump_secctx() 436 struct nlattr *nest_parms; in ctnetlink_dump_master() 457 struct nlattr *nest_parms; in dump_ct_seq_adj() 506 struct nlattr *nest_parms; in ctnetlink_dump_ct_synproxy() [all …]
|
| H A D | nfnetlink_cthelper.c | 73 const struct nlattr *attr) in nfnl_cthelper_parse_tuple() 76 struct nlattr *tb[NFCTH_TUPLE_MAX+1]; in nfnl_cthelper_parse_tuple() 96 nfnl_cthelper_from_nlattr(struct nlattr *attr, struct nf_conn *ct) in nfnl_cthelper_from_nlattr() 138 const struct nlattr *attr) in nfnl_cthelper_expect_policy() 141 struct nlattr *tb[NFCTH_POLICY_MAX+1]; in nfnl_cthelper_expect_policy() 173 const struct nlattr *attr) in nfnl_cthelper_parse_expect_policy() 177 struct nlattr *tb[NFCTH_POLICY_SET_MAX+1]; in nfnl_cthelper_parse_expect_policy() 219 nfnl_cthelper_create(const struct nlattr * const tb[], in nfnl_cthelper_create() 289 const struct nlattr *attr) in nfnl_cthelper_update_policy_one() 291 struct nlattr *tb[NFCTH_POLICY_MAX + 1]; in nfnl_cthelper_update_policy_one() [all …]
|
| /linux/net/8021q/ |
| H A D | vlan_netlink.c | 31 static inline int vlan_validate_qos_map(struct nlattr *attr) in vlan_validate_qos_map() 39 static int vlan_validate(struct nlattr *tb[], struct nlattr *data[], in vlan_validate() 104 static int vlan_changelink(struct net_device *dev, struct nlattr *tb[], in vlan_changelink() 105 struct nlattr *data[], in vlan_changelink() 110 struct nlattr *attr; in vlan_changelink() 144 struct nlattr **data = params->data; in vlan_newlink() 145 struct nlattr **tb = params->tb; in vlan_newlink() 206 return nla_total_size(sizeof(struct nlattr)) + in vlan_qos_map_size() 227 struct nlattr *nes in vlan_fill_info() [all...] |
| /linux/tools/testing/selftests/nci/ |
| H A D | nci_dev.c | 117 struct nlattr *na; in send_cmd_mt_nla() 132 na = (struct nlattr *)(GENLMSG_DATA(&msg) + prv_len); in send_cmd_mt_nla() 183 struct nlattr *na; in get_family_id() 202 na = (struct nlattr *)GENLMSG_DATA(&ans); in get_family_id() 209 struct nlattr *nested_na; in get_family_id() 210 struct nlattr *group_na; in get_family_id() 214 nested_na = (struct nlattr *)((char *)na + NLA_HDRLEN); in get_family_id() 215 group_na = (struct nlattr *)((char *)nested_na + NLA_HDRLEN); in get_family_id() 231 group_na = (struct nlattr *)((char *)group_na + in get_family_id() 235 na = (struct nlattr *)(GENLMSG_DATA(&ans) + len); in get_family_id() [all …]
|
| /linux/drivers/net/can/dev/ |
| H A D | netlink.c | 55 static int can_validate_bittiming(struct nlattr *data[], in can_validate_bittiming() 76 static int can_validate_tdc(struct nlattr *data_tdc, in can_validate_tdc() 105 struct nlattr *tb_tdc[IFLA_CAN_TDC_MAX + 1]; in can_validate_tdc() 135 static int can_validate_pwm(struct nlattr *data[], in can_validate_pwm() 138 struct nlattr *tb_pwm[IFLA_CAN_PWM_MAX + 1]; in can_validate_pwm() 169 static int can_validate_databittiming(struct nlattr *data[], in can_validate_databittiming() 173 struct nlattr *data_tdc; in can_validate_databittiming() 257 static int can_validate(struct nlattr *tb[], struct nlattr *data[], in can_validate() 305 struct nlattr *data[], in can_ctrlmode_changelink() 386 const struct nlattr *nla, in can_tdc_changelink() [all …]
|
| /linux/net/sched/ |
| H A D | act_api.c | 511 struct nlattr *nest; in tcf_action_dump_1() 557 struct nlattr *nest; in tcf_dump_walker() 634 struct nlattr *nest; in tcf_del_walker() 777 int tcf_idr_create(struct tc_action_net *tn, u32 index, struct nlattr *est, in tcf_idr_create() 836 struct nlattr *est, struct tc_action **a, in tcf_idr_create_from_flags() 1106 static struct tc_action_ops *tc_lookup_action(struct nlattr *kind) in tc_lookup_action() 1251 struct nlattr *nest; in tcf_action_dump() 1273 static struct tc_cookie *nla_memdup_cookie(struct nlattr **tb) in nla_memdup_cookie() 1289 static u8 tcf_action_hw_stats_get(struct nlattr *hw_stats_attr) in tcf_action_hw_stats_get() 1334 struct tc_action_ops *tc_action_load_ops(struct nlattr *nla, u32 flags, in tc_action_load_ops() [all …]
|
| /linux/net/xfrm/ |
| H A D | xfrm_user.c | 47 static int verify_one_alg(struct nlattr **attrs, enum xfrm_attr_type_t type, in verify_one_alg() 50 struct nlattr *rt = attrs[type]; in verify_one_alg() 77 static int verify_auth_trunc(struct nlattr **attrs, in verify_auth_trunc() 80 struct nlattr *rt = attrs[XFRMA_ALG_AUTH_TRUNC]; in verify_auth_trunc() 96 static int verify_aead(struct nlattr **attrs, struct netlink_ext_ack *extack) in verify_aead() 98 struct nlattr *rt = attrs[XFRMA_ALG_AEAD]; in verify_aead() 114 static void verify_one_addr(struct nlattr **attrs, enum xfrm_attr_type_t type, in verify_one_addr() 117 struct nlattr *rt = attrs[type]; in verify_one_addr() 123 static inline int verify_sec_ctx_len(struct nlattr **attrs, struct netlink_ext_ack *extack) in verify_sec_ctx_len() 125 struct nlattr *rt = attrs[XFRMA_SEC_CTX]; in verify_sec_ctx_len() [all …]
|
| /linux/net/core/ |
| H A D | rtnetlink.c | 719 size += nla_total_size(sizeof(struct nlattr)) + in rtnl_link_get_slave_info_data_size() 735 size = nla_total_size(sizeof(struct nlattr)) + /* IFLA_LINKINFO */ in rtnl_link_get_size() 740 size += nla_total_size(sizeof(struct nlattr)) + in rtnl_link_get_size() 825 size = nla_total_size(sizeof(struct nlattr)); in rtnl_link_get_af_size() 831 size += nla_total_size(sizeof(struct nlattr)) + in rtnl_link_get_af_size() 859 struct nlattr *slave_data; in rtnl_link_slave_info_fill() 890 struct nlattr *data; in rtnl_link_info_fill() 920 struct nlattr *linkinfo; in rtnl_link_fill() 978 struct nlattr *mx; in rtnetlink_put_metrics() 1205 size_t vf_ports_size = nla_total_size(sizeof(struct nlattr)); in rtnl_port_size() [all …]
|