| /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 | 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 *nla; in libbpf_nla_parse() 110 memset(tb, 0, sizeof(struct nlattr *) * (maxtype + 1)); in libbpf_nla_parse() 148 int libbpf_nla_parse_nested(struct nlattr *tb[], int maxtype, in libbpf_nla_parse_nested() 149 struct nlattr *nla, in libbpf_nla_parse_nested() [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 | conntrack.h | 20 int ovs_ct_copy_action(struct net *, const struct nlattr *, 33 void ovs_ct_free_action(const struct nlattr *a); 52 static inline int ovs_ct_copy_action(struct net *net, const struct nlattr *nla, in ovs_ct_copy_action() 100 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 | 127 int (*init)(struct net *net, struct nlattr *nla, 128 struct nlattr *est, struct tc_action **act, 195 int tcf_idr_create(struct tc_action_net *tn, u32 index, struct nlattr *est, 199 struct nlattr *est, struct tc_action **a, 216 int tcf_action_init(struct net *net, struct tcf_proto *tp, struct nlattr *nla, 217 struct nlattr *est, 220 struct tc_action_ops *tc_action_load_ops(struct nlattr *nla, u32 flags, 223 struct nlattr *nla, struct nlattr *est,
|
| H A D | bpf_sk_storage.h | 29 struct nlattr; 34 bpf_sk_storage_diag_alloc(const struct nlattr *nla_stgs); 47 bpf_sk_storage_diag_alloc(const struct nlattr *nla) in bpf_sk_storage_diag_alloc()
|
| /linux/drivers/block/drbd/ |
| H A D | drbd_nl_gen.c | 642 struct nlattr ***ret_nested_attribute_table, 646 struct nlattr *tla = info->attrs[DRBD_NLA_CFG_CONTEXT]; in __drbd_cfg_context_from_attrs() 647 struct nlattr **ntb; in __drbd_cfg_context_from_attrs() 648 struct nlattr *nla; in __drbd_cfg_context_from_attrs() 693 struct nlattr ***ret_nested_attribute_table, in drbd_cfg_context_from_attrs() 700 struct nlattr ***ret_nested_attribute_table, in drbd_cfg_context_ntb_from_attrs() 704 struct nlattr *tla = info->attrs[DRBD_NLA_DISK_CONF]; in __disk_conf_from_attrs() 705 struct nlattr **ntb; in __disk_conf_from_attrs() 706 struct nlattr *nla; in __disk_conf_from_attrs() 850 struct nlattr ***ret_nested_attribute_tabl in disk_conf_from_attrs() [all...] |
| /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/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() 337 struct nlattr **attrbuf; in __tipc_nl_compat_doit() 344 attrbuf = kmalloc_objs(struct nlattr *, tipc_genl_family.maxattr + 1); in __tipc_nl_compat_doit() 365 (const struct nlattr *)trans_buf->data, in __tipc_nl_compat_doit() 407 struct nlattr **attrs) in tipc_nl_compat_bearer_dump() 409 struct nlattr *bearer[TIPC_NLA_BEARER_MAX + 1]; in tipc_nl_compat_bearer_dump() 429 struct nlattr *prop; in tipc_nl_compat_bearer_enable() 430 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/ethtool/ |
| H A D | bitset.c | 237 struct nlattr *nest; in ethnl_put_bitset32() 238 struct nlattr *attr; in ethnl_put_bitset32() 271 struct nlattr *bits; in ethnl_put_bitset32() 329 int ethnl_bitset_is_compact(const struct nlattr *bitset, bool *compact) in ethnl_bitset_is_compact() 331 struct nlattr *tb[ARRAY_SIZE(bitset_policy)]; in ethnl_bitset_is_compact() 379 const struct nlattr *bit_attr, bool no_mask, in ethnl_parse_bit() 383 struct nlattr *tb[ARRAY_SIZE(bit_policy)]; in ethnl_parse_bit() 450 const struct nlattr *attr, struct nlattr **tb, in ethnl_update_bitset32_verbose() 455 struct nlattr *bit_attr; in ethnl_update_bitset32_verbose() 522 const struct nlattr *nest, in ethnl_compact_sanity_checks() [all …]
|
| H A D | netlink.h | 14 const struct nlattr *nest, struct net *net, 54 struct nlattr *attr; in ethnl_put_strz() 76 static inline void ethnl_update_u32(u32 *dst, const struct nlattr *attr, in ethnl_update_u32() 102 static inline void ethnl_update_u8(u8 *dst, const struct nlattr *attr, in ethnl_update_u8() 129 static inline void ethnl_update_u8_u32(u8 *dst, const struct nlattr *attr, in ethnl_update_u8_u32() 156 static inline void ethnl_update_bool32(u32 *dst, const struct nlattr *attr, in ethnl_update_bool32() 182 static inline void ethnl_update_bool(bool *dst, const struct nlattr *attr, in ethnl_update_bool() 210 const struct nlattr *attr, bool *mod) in ethnl_update_binary() 233 static inline void ethnl_update_bitfield32(u32 *dst, const struct nlattr *attr, in ethnl_update_bitfield32() 324 struct nlattr **tb, unsigned int header, [all …]
|
| H A D | strset.c | 171 static int strset_get_id(const struct nlattr *nest, u32 *val, in strset_get_id() 174 struct nlattr *tb[ARRAY_SIZE(get_stringset_policy)]; in strset_get_id() 194 struct nlattr **tb, in strset_parse_request() 198 struct nlattr *nest = tb[ETHTOOL_A_STRSET_STRINGSETS]; in strset_parse_request() 199 struct nlattr *attr; in strset_parse_request() 295 struct nlattr **tb = info->attrs; in strset_prepare_data() 398 struct nlattr *string_attr; in strset_fill_string() 422 struct nlattr *stringset_attr; in strset_fill_set() 423 struct nlattr *strings_attr; in strset_fill_set() 464 struct nlattr *nest; in strset_fill_reply()
|
| /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() 263 struct nlattr *nest_count; in dump_counters() 311 struct nlattr *nest_count; in ctnetlink_dump_timestamp() 359 struct nlattr *nest_secctx; in ctnetlink_dump_secctx() 437 struct nlattr *nest_parms; in ctnetlink_dump_master() 458 struct nlattr *nest_parms; in dump_ct_seq_adj() 507 struct nlattr *nest_parms; in ctnetlink_dump_ct_synproxy() [all …]
|
| H A D | nfnetlink_cthelper.c | 76 const struct nlattr *attr) in nfnl_cthelper_parse_tuple() 79 struct nlattr *tb[NFCTH_TUPLE_MAX+1]; in nfnl_cthelper_parse_tuple() 99 nfnl_cthelper_from_nlattr(struct nlattr *attr, struct nf_conn *ct) in nfnl_cthelper_from_nlattr() 147 const struct nlattr *attr) in nfnl_cthelper_expect_policy() 150 struct nlattr *tb[NFCTH_POLICY_MAX+1]; in nfnl_cthelper_expect_policy() 184 const struct nlattr *attr) in nfnl_cthelper_parse_expect_policy() 187 struct nlattr *tb[NFCTH_POLICY_SET_MAX+1]; in nfnl_cthelper_parse_expect_policy() 222 nfnl_cthelper_create(const struct nlattr * const tb[], in nfnl_cthelper_create() 300 const struct nlattr *attr) in nfnl_cthelper_update_policy_one() 302 struct nlattr *tb[NFCTH_POLICY_MAX + 1]; in nfnl_cthelper_update_policy_one() [all …]
|
| /linux/tools/testing/selftests/nci/ |
| H A D | nci_dev.c | 128 struct nlattr *na; in send_cmd_mt_nla() 143 na = (struct nlattr *)(GENLMSG_DATA(&msg) + prv_len); in send_cmd_mt_nla() 194 struct nlattr *na; in get_family_id() 213 na = (struct nlattr *)GENLMSG_DATA(&ans); in get_family_id() 220 struct nlattr *nested_na; in get_family_id() 221 struct nlattr *group_na; in get_family_id() 225 nested_na = (struct nlattr *)((char *)na + NLA_HDRLEN); in get_family_id() 226 group_na = (struct nlattr *)((char *)nested_na + NLA_HDRLEN); in get_family_id() 242 group_na = (struct nlattr *)((char *)group_na + in get_family_id() 246 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/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/sched/ |
| H A D | act_api.c | 521 struct nlattr *nest; in tcf_action_dump_1() 567 struct nlattr *nest; in tcf_dump_walker() 644 struct nlattr *nest; in tcf_del_walker() 787 int tcf_idr_create(struct tc_action_net *tn, u32 index, struct nlattr *est, in tcf_idr_create() 846 struct nlattr *est, struct tc_action **a, in tcf_idr_create_from_flags() 1116 static struct tc_action_ops *tc_lookup_action(struct nlattr *kind) in tc_lookup_action() 1263 struct nlattr *nest; in tcf_action_dump() 1285 static struct tc_cookie *nla_memdup_cookie(struct nlattr **tb) in nla_memdup_cookie() 1301 static u8 tcf_action_hw_stats_get(struct nlattr *hw_stats_attr) in tcf_action_hw_stats_get() 1346 struct tc_action_ops *tc_action_load_ops(struct nlattr *nla, u32 flags, in tc_action_load_ops() [all …]
|
| /linux/net/core/ |
| H A D | rtnetlink.c | 750 size += nla_total_size(sizeof(struct nlattr)) + in rtnl_link_get_slave_info_data_size() 766 size = nla_total_size(sizeof(struct nlattr)) + /* IFLA_LINKINFO */ in rtnl_link_get_size() 771 size += nla_total_size(sizeof(struct nlattr)) + in rtnl_link_get_size() 855 size = nla_total_size(sizeof(struct nlattr)); in rtnl_link_get_af_size() 861 size += nla_total_size(sizeof(struct nlattr)) + in rtnl_link_get_af_size() 889 struct nlattr *slave_data; in rtnl_link_slave_info_fill() 920 struct nlattr *data; in rtnl_link_info_fill() 950 struct nlattr *linkinfo; in rtnl_link_fill() 1008 struct nlattr *mx; in rtnetlink_put_metrics() 1250 size_t vf_ports_size = nla_total_size(sizeof(struct nlattr)); in rtnl_port_size() [all …]
|