Home
last modified time | relevance | path

Searched refs:nla (Results 1 – 25 of 101) sorted by relevance

12345

/linux/drivers/block/drbd/
H A Ddrbd_nl_gen.c648 struct nlattr *nla; in __drbd_cfg_context_from_attrs()
662 nla = ntb[DRBD_A_DRBD_CFG_CONTEXT_CTX_VOLUME]; in __drbd_cfg_context_from_attrs()
663 if (nla && s) in __drbd_cfg_context_from_attrs()
664 s->ctx_volume = nla_get_u32(nla); in __drbd_cfg_context_from_attrs()
666 nla = ntb[DRBD_A_DRBD_CFG_CONTEXT_CTX_RESOURCE_NAME]; in __drbd_cfg_context_from_attrs()
667 if (nla && s) in __drbd_cfg_context_from_attrs()
668 s->ctx_resource_name_len = nla_strscpy(s->ctx_resource_name, nla, 128); in __drbd_cfg_context_from_attrs()
670 nla = ntb[DRBD_A_DRBD_CFG_CONTEXT_CTX_MY_ADDR]; in __drbd_cfg_context_from_attrs()
671 if (nla && s) in __drbd_cfg_context_from_attrs()
672 s->ctx_my_addr_len = nla_memcpy(s->ctx_my_addr, nla, 12 in __drbd_cfg_context_from_attrs()
652 struct nlattr *nla; __drbd_cfg_context_from_attrs() local
710 struct nlattr *nla; __disk_conf_from_attrs() local
867 struct nlattr *nla; __res_opts_from_attrs() local
917 struct nlattr *nla; __net_conf_from_attrs() local
1083 struct nlattr *nla; __set_role_parms_from_attrs() local
1129 struct nlattr *nla; __resize_parms_from_attrs() local
1191 struct nlattr *nla; __start_ov_parms_from_attrs() local
1241 struct nlattr *nla; __new_c_uuid_parms_from_attrs() local
1287 struct nlattr *nla; __disconnect_parms_from_attrs() local
1333 struct nlattr *nla; __detach_parms_from_attrs() local
1379 struct nlattr *nla; __resource_info_from_attrs() local
1437 struct nlattr *nla; __device_info_from_attrs() local
1483 struct nlattr *nla; __connection_info_from_attrs() local
1533 struct nlattr *nla; __peer_device_info_from_attrs() local
1596 struct nlattr *nla; __resource_statistics_from_attrs() local
1643 struct nlattr *nla; __device_statistics_from_attrs() local
1741 struct nlattr *nla; __connection_statistics_from_attrs() local
1788 struct nlattr *nla; __peer_device_statistics_from_attrs() local
[all...]
/linux/lib/
H A Dnlattr.c66 static int validate_nla_bitfield32(const struct nlattr *nla, in validate_nla_bitfield32() argument
69 const struct nla_bitfield32 *bf = nla_data(nla); in validate_nla_bitfield32()
171 const struct nlattr *nla, in nla_validate_range_unsigned() argument
180 value = nla_get_u8(nla); in nla_validate_range_unsigned()
183 value = nla_get_u16(nla); in nla_validate_range_unsigned()
186 value = nla_get_u32(nla); in nla_validate_range_unsigned()
189 value = nla_get_u64(nla); in nla_validate_range_unsigned()
192 value = nla_get_uint(nla); in nla_validate_range_unsigned()
195 value = nla_get_u64(nla); in nla_validate_range_unsigned()
198 value = nla_len(nla); in nla_validate_range_unsigned()
[all …]
/linux/tools/lib/bpf/
H A Dnlattr.c25 static struct nlattr *nla_next(const struct nlattr *nla, int *remaining) in nla_next() argument
27 int totlen = NLA_ALIGN(nla->nla_len); 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() argument
35 return remaining >= (int)sizeof(*nla) && in nla_ok()
36 nla->nla_len >= sizeof(*nla) && in nla_ok()
37 nla->nla_len <= remaining; in nla_ok()
40 static int nla_type(const struct nlattr *nla) in nla_type() argument
42 return nla->nla_type & NLA_TYPE_MASK; in nla_type()
45 static int validate_nla(struct nlattr *nla, int maxtype, in validate_nla() argument
[all …]
H A Dnlattr.h84 static inline void *libbpf_nla_data(const struct nlattr *nla) in libbpf_nla_data() argument
86 return (void *)nla + NLA_HDRLEN; in libbpf_nla_data()
89 static inline uint8_t libbpf_nla_getattr_u8(const struct nlattr *nla) in libbpf_nla_getattr_u8() argument
91 return *(uint8_t *)libbpf_nla_data(nla); in libbpf_nla_getattr_u8()
94 static inline uint16_t libbpf_nla_getattr_u16(const struct nlattr *nla) in libbpf_nla_getattr_u16() argument
96 return *(uint16_t *)libbpf_nla_data(nla); in libbpf_nla_getattr_u16()
99 static inline uint32_t libbpf_nla_getattr_u32(const struct nlattr *nla) in libbpf_nla_getattr_u32() argument
101 return *(uint32_t *)libbpf_nla_data(nla); in libbpf_nla_getattr_u32()
104 static inline uint64_t libbpf_nla_getattr_u64(const struct nlattr *nla) in libbpf_nla_getattr_u64() argument
106 return *(uint64_t *)libbpf_nla_data(nla); in libbpf_nla_getattr_u64()
[all …]
/linux/net/netfilter/
H A Dnf_tables_api.c160 const struct nlattr * const *nla) in nft_ctx_init() argument
167 ctx->nla = nla; in nft_ctx_init()
670 if (ctx->nla[NFTA_CHAIN_ID]) { in nft_trans_chain_add()
672 ntohl(nla_get_be32(ctx->nla[NFTA_CHAIN_ID])); in nft_trans_chain_add()
742 if (msg_type == NFT_MSG_NEWRULE && ctx->nla[NFTA_RULE_ID] != NULL) { in nft_trans_rule_add()
744 ntohl(nla_get_be32(ctx->nla[NFTA_RULE_ID])); in nft_trans_rule_add()
814 if (msg_type == NFT_MSG_NEWSET && ctx->nla[NFTA_SET_ID] && !desc) { in __nft_trans_set_add()
816 ntohl(nla_get_be32(ctx->nla[NFTA_SET_ID])); in __nft_trans_set_add()
985 const struct nlattr *nla, in nft_table_lookup() argument
991 if (nla == NULL) in nft_table_lookup()
[all …]
H A Dnfnetlink_hook.c413 const struct nlattr * const *nla = cb->data; in nfnl_hook_dump_start() local
421 hooknum = ntohl(nla_get_be32(nla[NFNLA_HOOK_HOOKNUM])); in nfnl_hook_dump_start()
426 if (!nla[NFNLA_HOOK_DEV]) in nfnl_hook_dump_start()
429 nla_strscpy(name, nla[NFNLA_HOOK_DEV], sizeof(name)); in nfnl_hook_dump_start()
462 const struct nlattr * const nla[]) in nfnl_hook_get() argument
464 if (!nla[NFNLA_HOOK_HOOKNUM]) in nfnl_hook_get()
473 .data = (void *)nla, in nfnl_hook_get()
/linux/net/sched/
H A Dact_tunnel_key.c86 tunnel_key_copy_geneve_opt(const struct nlattr *nla, void *dst, int dst_len, in tunnel_key_copy_geneve_opt() argument
95 nla, geneve_opt_policy, extack); in tunnel_key_copy_geneve_opt()
138 tunnel_key_copy_vxlan_opt(const struct nlattr *nla, void *dst, int dst_len, in tunnel_key_copy_vxlan_opt() argument
144 err = nla_parse_nested(tb, TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX, nla, in tunnel_key_copy_vxlan_opt()
165 tunnel_key_copy_erspan_opt(const struct nlattr *nla, void *dst, int dst_len, in tunnel_key_copy_erspan_opt() argument
172 err = nla_parse_nested(tb, TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX, nla, in tunnel_key_copy_erspan_opt()
204 nla = tb[TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_INDEX]; in tunnel_key_copy_erspan_opt()
205 md->u.index = nla_get_be32(nla); in tunnel_key_copy_erspan_opt()
207 nla = tb[TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_DIR]; in tunnel_key_copy_erspan_opt()
208 md->u.md2.dir = nla_get_u8(nla); in tunnel_key_copy_erspan_opt()
[all …]
H A Dact_bpf.c100 struct nlattr *nla; in tcf_bpf_dump_bpf_info() local
105 nla = nla_reserve(skb, TCA_ACT_BPF_OPS, prog->bpf_num_ops * in tcf_bpf_dump_bpf_info()
107 if (nla == NULL) in tcf_bpf_dump_bpf_info()
110 memcpy(nla_data(nla), prog->bpf_ops, nla_len(nla)); in tcf_bpf_dump_bpf_info()
118 struct nlattr *nla; in tcf_bpf_dump_ebpf_info() local
127 nla = nla_reserve(skb, TCA_ACT_BPF_TAG, sizeof(prog->filter->tag)); in tcf_bpf_dump_ebpf_info()
128 if (nla == NULL) in tcf_bpf_dump_ebpf_info()
131 memcpy(nla_data(nla), prog->filter->tag, nla_len(nla)); in tcf_bpf_dump_ebpf_info()
277 static int tcf_bpf_init(struct net *net, struct nlattr *nla, in tcf_bpf_init() argument
293 if (!nla) in tcf_bpf_init()
[all …]
H A Dsch_fifo.c233 struct nlattr *nla; in fifo_set_limit() local
243 nla = kmalloc(nla_attr_size(sizeof(struct tc_fifo_qopt)), GFP_KERNEL); in fifo_set_limit()
244 if (nla) { in fifo_set_limit()
245 nla->nla_type = RTM_NEWQDISC; in fifo_set_limit()
246 nla->nla_len = nla_attr_size(sizeof(struct tc_fifo_qopt)); in fifo_set_limit()
247 ((struct tc_fifo_qopt *)nla_data(nla))->limit = limit; in fifo_set_limit()
249 ret = q->ops->change(q, nla, NULL); in fifo_set_limit()
250 kfree(nla); in fifo_set_limit()
H A Dem_meta.c695 static int meta_var_change(struct meta_value *dst, struct nlattr *nla) in meta_var_change() argument
697 int len = nla_len(nla); in meta_var_change()
699 dst->val = (unsigned long)kmemdup(nla_data(nla), len, GFP_KERNEL); in meta_var_change()
748 static int meta_int_change(struct meta_value *dst, struct nlattr *nla) in meta_int_change() argument
750 if (nla_len(nla) >= sizeof(unsigned long)) { in meta_int_change()
751 dst->val = *(unsigned long *) nla_data(nla); in meta_int_change()
753 } else if (nla_len(nla) == sizeof(u32)) { in meta_int_change()
754 dst->val = nla_get_u32(nla); in meta_int_change()
885 static inline int meta_change_data(struct meta_value *dst, struct nlattr *nla) in meta_change_data() argument
887 if (nla) { in meta_change_data()
[all …]
H A Dematch.c171 struct tcf_ematch *em, struct nlattr *nla, int idx) in tcf_em_validate() argument
174 struct tcf_ematch_hdr *em_hdr = nla_data(nla); in tcf_em_validate()
175 int data_len = nla_len(nla) - sizeof(*em_hdr); in tcf_em_validate()
305 int tcf_em_tree_validate(struct tcf_proto *tp, struct nlattr *nla, in tcf_em_tree_validate() argument
315 if (!nla) in tcf_em_tree_validate()
318 err = nla_parse_nested_deprecated(tb, TCA_EMATCH_TREE_MAX, nla, in tcf_em_tree_validate()
H A Dcls_bpf.c557 struct nlattr *nla; in cls_bpf_dump_bpf_info() local
562 nla = nla_reserve(skb, TCA_BPF_OPS, prog->bpf_num_ops * in cls_bpf_dump_bpf_info()
564 if (nla == NULL) in cls_bpf_dump_bpf_info()
567 memcpy(nla_data(nla), prog->bpf_ops, nla_len(nla)); in cls_bpf_dump_bpf_info()
575 struct nlattr *nla; in cls_bpf_dump_ebpf_info() local
584 nla = nla_reserve(skb, TCA_BPF_TAG, sizeof(prog->filter->tag)); in cls_bpf_dump_ebpf_info()
585 if (nla == NULL) in cls_bpf_dump_ebpf_info()
588 memcpy(nla_data(nla), prog->filter->tag, nla_len(nla)); in cls_bpf_dump_ebpf_info()
H A Dact_pedit.c45 static struct tcf_pedit_key_ex *tcf_pedit_keys_ex_parse(struct nlattr *nla, in tcf_pedit_keys_ex_parse() argument
54 if (!nla) in tcf_pedit_keys_ex_parse()
63 nla_for_each_nested(ka, nla, rem) { in tcf_pedit_keys_ex_parse()
85 if (NL_REQ_ATTR_CHECK(extack, nla, tb, TCA_PEDIT_KEY_EX_HTYPE)) { in tcf_pedit_keys_ex_parse()
91 if (NL_REQ_ATTR_CHECK(extack, nla, tb, TCA_PEDIT_KEY_EX_CMD)) { in tcf_pedit_keys_ex_parse()
159 static int tcf_pedit_init(struct net *net, struct nlattr *nla, in tcf_pedit_init() argument
176 if (!nla) { in tcf_pedit_init()
181 err = nla_parse_nested_deprecated(tb, TCA_PEDIT_MAX, nla, in tcf_pedit_init()
/linux/net/openvswitch/
H A Dflow_netlink.c55 struct nlattr *nla; in actions_may_change_flow() local
58 nla_for_each_nested(nla, actions, rem) { in actions_may_change_flow()
59 u16 action = nla_type(nla); in actions_may_change_flow()
481 const struct nlattr *nla; in __parse_flow_nlattrs() local
486 nla_for_each_nested(nla, attr, rem) { in __parse_flow_nlattrs()
487 u16 type = nla_type(nla); in __parse_flow_nlattrs()
509 if (!check_attr_len(nla_len(nla), expected_len)) { in __parse_flow_nlattrs()
511 type, nla_len(nla), expected_len); in __parse_flow_nlattrs()
515 if (!nz || !is_all_zero(nla_data(nla), nla_len(nla))) { in __parse_flow_nlattrs()
517 a[type] = nla; in __parse_flow_nlattrs()
[all …]
H A Dmeter.c240 struct nlattr *nla; in ovs_meter_cmd_reply_stats() local
255 nla = nla_nest_start_noflag(reply, OVS_METER_ATTR_BANDS); in ovs_meter_cmd_reply_stats()
256 if (!nla) in ovs_meter_cmd_reply_stats()
271 nla_nest_end(reply, nla); in ovs_meter_cmd_reply_stats()
282 struct nlattr *nla, *band_nla; in ovs_meter_cmd_features() local
308 nla = nla_nest_start_noflag(reply, OVS_METER_ATTR_BANDS); in ovs_meter_cmd_features()
309 if (!nla) in ovs_meter_cmd_features()
319 nla_nest_end(reply, nla); in ovs_meter_cmd_features()
333 struct nlattr *nla; in dp_meter_create() local
344 nla_for_each_nested(nla, a[OVS_METER_ATTR_BANDS], rem) in dp_meter_create()
[all …]
H A Dvport.c276 struct nlattr *nla; in ovs_vport_get_upcall_stats() local
294 nla = nla_nest_start_noflag(skb, OVS_VPORT_ATTR_UPCALL_STATS); in ovs_vport_get_upcall_stats()
295 if (!nla) in ovs_vport_get_upcall_stats()
300 nla_nest_cancel(skb, nla); in ovs_vport_get_upcall_stats()
306 nla_nest_cancel(skb, nla); in ovs_vport_get_upcall_stats()
309 nla_nest_end(skb, nla); in ovs_vport_get_upcall_stats()
/linux/net/mpls/
H A Daf_mpls.c754 static int nla_get_via(const struct nlattr *nla, u8 *via_alen, u8 *via_table, in nla_get_via() argument
757 struct rtvia *via = nla_data(nla); in nla_get_via()
761 if (nla_len(nla) < offsetof(struct rtvia, rtvia_addr)) { in nla_get_via()
762 NL_SET_ERR_MSG_ATTR(extack, nla, in nla_get_via()
766 alen = nla_len(nla) - in nla_get_via()
769 NL_SET_ERR_MSG_ATTR(extack, nla, in nla_get_via()
881 struct nlattr *nla, *attrs = rtnh_attrs(rtnh); in mpls_count_nexthops() local
886 nla = nla_find(attrs, attrlen, RTA_VIA); in mpls_count_nexthops()
887 if (nla && nla_len(nla) >= in mpls_count_nexthops()
889 int via_alen = nla_len(nla) - in mpls_count_nexthops()
[all …]
/linux/net/psample/
H A Dpsample.c293 struct nlattr *nla; in psample_ip_tun_to_nlattr() local
296 nla = nla_nest_start_noflag(skb, PSAMPLE_ATTR_TUNNEL); in psample_ip_tun_to_nlattr()
297 if (!nla) in psample_ip_tun_to_nlattr()
302 nla_nest_cancel(skb, nla); in psample_ip_tun_to_nlattr()
306 nla_nest_end(skb, nla); in psample_ip_tun_to_nlattr()
480 struct nlattr *nla; in psample_sample_packet() local
482 nla = skb_put(nl_skb, nla_len); in psample_sample_packet()
483 nla->nla_type = PSAMPLE_ATTR_DATA; in psample_sample_packet()
484 nla->nla_len = nla_len; in psample_sample_packet()
486 if (skb_copy_bits(skb, 0, nla_data(nla), data_len)) in psample_sample_packet()
/linux/net/ipv4/
H A Dfib_semantics.c731 static int fib_gw_from_attr(__be32 *gw, struct nlattr *nla, in fib_gw_from_attr()
734 if (nla_len(nla) < sizeof(*gw)) { in fib_gw_from_attr()
739 *gw = nla_get_in_addr(nla); in fib_gw_from_attr()
776 struct nlattr *nla, *nlav, *attrs = rtnh_attrs(rtnh); in fib_get_nhs()
778 nla = nla_find(attrs, attrlen, RTA_GATEWAY); in fib_get_nhs()
780 if (nla && nlav) { in fib_get_nhs()
785 if (nla) { in fib_get_nhs()
786 ret = fib_gw_from_attr(&fib_cfg.fc_gw4, nla, in fib_get_nhs()
799 nla = nla_find(attrs, attrlen, RTA_FLOW); in fib_get_nhs()
800 if (nla) { in fib_get_nhs()
728 fib_gw_from_attr(__be32 * gw,struct nlattr * nla,struct netlink_ext_ack * extack) fib_gw_from_attr() argument
773 struct nlattr *nla, *nlav, *attrs = rtnh_attrs(rtnh); fib_get_nhs() local
999 struct nlattr *nla, *nlav, *attrs = rtnh_attrs(rtnh); fib_nh_match() local
1063 struct nlattr *nla; fib_metrics_match() local
1641 struct nlattr *nla; fib_nexthop_info() local
[all...]
H A Dfib_rules.c233 static int fib4_nl2rule_dscp(const struct nlattr *nla, struct fib4_rule *rule4, in fib4_nl2rule_dscp() argument
241 rule4->dscp = inet_dsfield_to_dscp(nla_get_u8(nla) << 2); in fib4_nl2rule_dscp()
248 static int fib4_nl2rule_dscp_mask(const struct nlattr *nla, in fib4_nl2rule_dscp_mask() argument
255 NL_SET_ERR_MSG_ATTR(extack, nla, in fib4_nl2rule_dscp_mask()
260 dscp_mask = inet_dsfield_to_dscp(nla_get_u8(nla) << 2); in fib4_nl2rule_dscp_mask()
262 NL_SET_ERR_MSG_ATTR(extack, nla, "Invalid DSCP mask"); in fib4_nl2rule_dscp_mask()
/linux/net/ipv6/
H A Drpl_iptunnel.c67 static int rpl_build_state(struct net *net, struct nlattr *nla, in rpl_build_state() argument
81 err = nla_parse_nested(tb, RPL_IPTUNNEL_MAX, nla, in rpl_build_state()
328 struct nlattr *nla; in nla_put_rpl_srh() local
333 nla = nla_reserve(skb, attrtype, len); in nla_put_rpl_srh()
334 if (!nla) in nla_put_rpl_srh()
337 data = nla_data(nla); in nla_put_rpl_srh()
/linux/net/handshake/
H A Dtlshd.c66 struct nlattr *nla; in tls_handshake_remote_peerids() local
70 nla_for_each_attr(nla, head, len, rem) { in tls_handshake_remote_peerids()
71 if (nla_type(nla) == HANDSHAKE_A_DONE_REMOTE_AUTH) in tls_handshake_remote_peerids()
80 nla_for_each_attr(nla, head, len, rem) { in tls_handshake_remote_peerids()
81 if (nla_type(nla) == HANDSHAKE_A_DONE_REMOTE_AUTH) in tls_handshake_remote_peerids()
82 treq->th_peerid[i++] = nla_get_u32(nla); in tls_handshake_remote_peerids()
/linux/drivers/net/
H A Dgtp.c1395 const struct nlattr *nla, int family) in gtp_sock_udp_config() argument
1401 udp_conf->local_ip.s_addr = nla_get_be32(nla); in gtp_sock_udp_config()
1405 udp_conf->local_ip6 = nla_get_in6_addr(nla); in gtp_sock_udp_config()
1416 const struct nlattr *nla, int family) in gtp_create_sock() argument
1424 if (nla) { in gtp_create_sock()
1425 err = gtp_sock_udp_config(&udp_conf, nla, family); in gtp_create_sock()
1454 static int gtp_create_sockets(struct gtp_dev *gtp, const struct nlattr *nla, in gtp_create_sockets() argument
1460 sk0 = gtp_create_sock(UDP_ENCAP_GTP0, gtp, nla, family); in gtp_create_sockets()
1464 sk1u = gtp_create_sock(UDP_ENCAP_GTP1U, gtp, nla, family); in gtp_create_sockets()
1760 static struct gtp_dev *gtp_find_dev(struct net *src_net, struct nlattr *nla[]) in gtp_find_dev() argument
[all …]
/linux/include/net/
H A Dfib_rules.h141 static inline u32 frh_get_table(struct fib_rule_hdr *frh, struct nlattr **nla) in frh_get_table() argument
143 if (nla[FRA_TABLE]) in frh_get_table()
144 return nla_get_u32(nla[FRA_TABLE]); in frh_get_table()
H A Dact_api.h127 int (*init)(struct net *net, struct nlattr *nla,
216 int tcf_action_init(struct net *net, struct tcf_proto *tp, struct nlattr *nla,
220 struct tc_action_ops *tc_action_load_ops(struct nlattr *nla, u32 flags,
223 struct nlattr *nla, struct nlattr *est,

12345