Lines Matching refs:a

478 				const struct nlattr *a[],  in __parse_flow_nlattrs()  argument
517 a[type] = nla; in __parse_flow_nlattrs()
530 const struct nlattr *a[], u64 *attrsp, in parse_flow_mask_nlattrs() argument
533 return __parse_flow_nlattrs(attr, a, attrsp, log, true); in parse_flow_mask_nlattrs()
536 int parse_flow_nlattrs(const struct nlattr *attr, const struct nlattr *a[], in parse_flow_nlattrs() argument
539 return __parse_flow_nlattrs(attr, a, attrsp, log, false); in parse_flow_nlattrs()
542 static int genev_tun_opt_from_nlattr(const struct nlattr *a, in genev_tun_opt_from_nlattr() argument
548 if (nla_len(a) > sizeof(match->key->tun_opts)) { in genev_tun_opt_from_nlattr()
550 nla_len(a), sizeof(match->key->tun_opts)); in genev_tun_opt_from_nlattr()
554 if (nla_len(a) % 4 != 0) { in genev_tun_opt_from_nlattr()
556 nla_len(a)); in genev_tun_opt_from_nlattr()
565 SW_FLOW_KEY_PUT(match, tun_opts_len, nla_len(a), in genev_tun_opt_from_nlattr()
578 if (match->key->tun_opts_len != nla_len(a)) { in genev_tun_opt_from_nlattr()
580 match->key->tun_opts_len, nla_len(a)); in genev_tun_opt_from_nlattr()
587 opt_key_offset = TUN_METADATA_OFFSET(nla_len(a)); in genev_tun_opt_from_nlattr()
588 SW_FLOW_KEY_MEMCPY_OFFSET(match, opt_key_offset, nla_data(a), in genev_tun_opt_from_nlattr()
589 nla_len(a), is_mask); in genev_tun_opt_from_nlattr()
597 struct nlattr *a; in vxlan_tun_opt_from_nlattr() local
605 nla_for_each_nested(a, attr, rem) { in vxlan_tun_opt_from_nlattr()
606 int type = nla_type(a); in vxlan_tun_opt_from_nlattr()
614 if (!check_attr_len(nla_len(a), in vxlan_tun_opt_from_nlattr()
617 type, nla_len(a), in vxlan_tun_opt_from_nlattr()
624 opts.gbp = nla_get_u32(a); in vxlan_tun_opt_from_nlattr()
649 static int erspan_tun_opt_from_nlattr(const struct nlattr *a, in erspan_tun_opt_from_nlattr() argument
658 if (nla_len(a) > sizeof(match->key->tun_opts)) { in erspan_tun_opt_from_nlattr()
660 nla_len(a), sizeof(match->key->tun_opts)); in erspan_tun_opt_from_nlattr()
670 opt_key_offset = TUN_METADATA_OFFSET(nla_len(a)); in erspan_tun_opt_from_nlattr()
671 SW_FLOW_KEY_MEMCPY_OFFSET(match, opt_key_offset, nla_data(a), in erspan_tun_opt_from_nlattr()
672 nla_len(a), is_mask); in erspan_tun_opt_from_nlattr()
684 struct nlattr *a; in ip_tun_from_nlattr() local
687 nla_for_each_nested(a, attr, rem) { in ip_tun_from_nlattr()
688 int type = nla_type(a); in ip_tun_from_nlattr()
697 if (!check_attr_len(nla_len(a), in ip_tun_from_nlattr()
700 type, nla_len(a), ovs_tunnel_key_lens[type].len); in ip_tun_from_nlattr()
707 nla_get_be64(a), is_mask); in ip_tun_from_nlattr()
712 nla_get_in_addr(a), is_mask); in ip_tun_from_nlattr()
717 nla_get_in_addr(a), is_mask); in ip_tun_from_nlattr()
722 nla_get_in6_addr(a), is_mask); in ip_tun_from_nlattr()
727 nla_get_in6_addr(a), is_mask); in ip_tun_from_nlattr()
732 nla_get_u8(a), is_mask); in ip_tun_from_nlattr()
736 nla_get_u8(a), is_mask); in ip_tun_from_nlattr()
747 nla_get_be16(a), is_mask); in ip_tun_from_nlattr()
751 nla_get_be16(a), is_mask); in ip_tun_from_nlattr()
762 err = genev_tun_opt_from_nlattr(a, match, is_mask, log); in ip_tun_from_nlattr()
775 err = vxlan_tun_opt_from_nlattr(a, match, is_mask, log); in ip_tun_from_nlattr()
790 err = erspan_tun_opt_from_nlattr(a, match, is_mask, in ip_tun_from_nlattr()
989 const struct nlattr *a[], in encode_vlan_from_nlattrs() argument
995 if (a[OVS_KEY_ATTR_VLAN]) in encode_vlan_from_nlattrs()
996 tci = nla_get_be16(a[OVS_KEY_ATTR_VLAN]); in encode_vlan_from_nlattrs()
998 if (a[OVS_KEY_ATTR_ETHERTYPE]) in encode_vlan_from_nlattrs()
999 tpid = nla_get_be16(a[OVS_KEY_ATTR_ETHERTYPE]); in encode_vlan_from_nlattrs()
1013 const struct nlattr **a, bool log) in validate_vlan_from_nlattrs() argument
1019 eth_type_vlan(nla_get_be16(a[OVS_KEY_ATTR_ETHERTYPE])))) { in validate_vlan_from_nlattrs()
1030 if (a[OVS_KEY_ATTR_VLAN]) in validate_vlan_from_nlattrs()
1031 tci = nla_get_be16(a[OVS_KEY_ATTR_VLAN]); in validate_vlan_from_nlattrs()
1038 } else if (nla_len(a[OVS_KEY_ATTR_ENCAP])) { in validate_vlan_from_nlattrs()
1051 const struct nlattr **a, bool log) in validate_vlan_mask_from_nlattrs() argument
1071 if (a[OVS_KEY_ATTR_VLAN]) in validate_vlan_mask_from_nlattrs()
1072 tci = nla_get_be16(a[OVS_KEY_ATTR_VLAN]); in validate_vlan_mask_from_nlattrs()
1074 if (a[OVS_KEY_ATTR_ETHERTYPE]) in validate_vlan_mask_from_nlattrs()
1075 tpid = nla_get_be16(a[OVS_KEY_ATTR_ETHERTYPE]); in validate_vlan_mask_from_nlattrs()
1093 const struct nlattr **a, bool is_mask, in __parse_vlan_from_nlattrs() argument
1101 a, log); in __parse_vlan_from_nlattrs()
1104 a, log); in __parse_vlan_from_nlattrs()
1108 err = encode_vlan_from_nlattrs(match, a, is_mask, inner); in __parse_vlan_from_nlattrs()
1116 encap = a[OVS_KEY_ATTR_ENCAP]; in __parse_vlan_from_nlattrs()
1119 err = parse_flow_nlattrs(encap, a, key_attrs, log); in __parse_vlan_from_nlattrs()
1121 err = parse_flow_mask_nlattrs(encap, a, key_attrs, log); in __parse_vlan_from_nlattrs()
1127 u64 *key_attrs, const struct nlattr **a, in parse_vlan_from_nlattrs() argument
1133 err = __parse_vlan_from_nlattrs(match, key_attrs, false, a, in parse_vlan_from_nlattrs()
1140 err = __parse_vlan_from_nlattrs(match, key_attrs, true, a, in parse_vlan_from_nlattrs()
1150 u64 *attrs, const struct nlattr **a, in parse_eth_type_from_nlattrs() argument
1155 eth_type = nla_get_be16(a[OVS_KEY_ATTR_ETHERTYPE]); in parse_eth_type_from_nlattrs()
1171 u64 *attrs, const struct nlattr **a, in metadata_from_nlattrs() argument
1177 u32 hash_val = nla_get_u32(a[OVS_KEY_ATTR_DP_HASH]); in metadata_from_nlattrs()
1184 u32 recirc_id = nla_get_u32(a[OVS_KEY_ATTR_RECIRC_ID]); in metadata_from_nlattrs()
1192 nla_get_u32(a[OVS_KEY_ATTR_PRIORITY]), is_mask); in metadata_from_nlattrs()
1197 u32 in_port = nla_get_u32(a[OVS_KEY_ATTR_IN_PORT]); in metadata_from_nlattrs()
1214 uint32_t mark = nla_get_u32(a[OVS_KEY_ATTR_SKB_MARK]); in metadata_from_nlattrs()
1220 if (ip_tun_from_nlattr(a[OVS_KEY_ATTR_TUNNEL], match, in metadata_from_nlattrs()
1228 u32 ct_state = nla_get_u32(a[OVS_KEY_ATTR_CT_STATE]); in metadata_from_nlattrs()
1241 u16 ct_zone = nla_get_u16(a[OVS_KEY_ATTR_CT_ZONE]); in metadata_from_nlattrs()
1248 u32 mark = nla_get_u32(a[OVS_KEY_ATTR_CT_MARK]); in metadata_from_nlattrs()
1257 cl = nla_data(a[OVS_KEY_ATTR_CT_LABELS]); in metadata_from_nlattrs()
1265 ct = nla_data(a[OVS_KEY_ATTR_CT_ORIG_TUPLE_IPV4]); in metadata_from_nlattrs()
1277 ct = nla_data(a[OVS_KEY_ATTR_CT_ORIG_TUPLE_IPV6]); in metadata_from_nlattrs()
1302 return parse_eth_type_from_nlattrs(match, attrs, a, is_mask, in metadata_from_nlattrs()
1311 struct nlattr *a; in nsh_hdr_from_nlattr() local
1322 nla_for_each_nested(a, attr, rem) { in nsh_hdr_from_nlattr()
1323 int type = nla_type(a); in nsh_hdr_from_nlattr()
1327 const struct ovs_nsh_key_base *base = nla_data(a); in nsh_hdr_from_nlattr()
1337 mdlen = nla_len(a); in nsh_hdr_from_nlattr()
1340 memcpy(&nh->md1, nla_data(a), mdlen); in nsh_hdr_from_nlattr()
1344 mdlen = nla_len(a); in nsh_hdr_from_nlattr()
1347 memcpy(&nh->md2, nla_data(a), mdlen); in nsh_hdr_from_nlattr()
1365 struct nlattr *a; in nsh_key_from_nlattr() local
1370 nla_for_each_nested(a, attr, rem) { in nsh_key_from_nlattr()
1371 int type = nla_type(a); in nsh_key_from_nlattr()
1375 const struct ovs_nsh_key_base *base = nla_data(a); in nsh_key_from_nlattr()
1383 const struct ovs_nsh_key_md1 *md1 = nla_data(a); in nsh_key_from_nlattr()
1406 struct nlattr *a; in nsh_key_put_from_nlattr() local
1417 nla_for_each_nested(a, attr, rem) { in nsh_key_put_from_nlattr()
1418 int type = nla_type(a); in nsh_key_put_from_nlattr()
1427 if (!check_attr_len(nla_len(a), in nsh_key_put_from_nlattr()
1433 nla_len(a), in nsh_key_put_from_nlattr()
1441 const struct ovs_nsh_key_base *base = nla_data(a); in nsh_key_put_from_nlattr()
1458 const struct ovs_nsh_key_md1 *md1 = nla_data(a); in nsh_key_put_from_nlattr()
1471 mdlen = nla_len(a); in nsh_key_put_from_nlattr()
1524 u64 attrs, const struct nlattr **a, in ovs_key_from_nlattrs() argument
1529 err = metadata_from_nlattrs(net, match, &attrs, a, is_mask, log); in ovs_key_from_nlattrs()
1536 eth_key = nla_data(a[OVS_KEY_ATTR_ETHERNET]); in ovs_key_from_nlattrs()
1552 err = parse_eth_type_from_nlattrs(match, &attrs, a, is_mask, in ovs_key_from_nlattrs()
1567 ipv4_key = nla_data(a[OVS_KEY_ATTR_IPV4]); in ovs_key_from_nlattrs()
1591 ipv6_key = nla_data(a[OVS_KEY_ATTR_IPV6]); in ovs_key_from_nlattrs()
1629 ipv6_exthdrs_key = nla_data(a[OVS_KEY_ATTR_IPV6_EXTHDRS]); in ovs_key_from_nlattrs()
1640 arp_key = nla_data(a[OVS_KEY_ATTR_ARP]); in ovs_key_from_nlattrs()
1662 if (nsh_key_put_from_nlattr(a[OVS_KEY_ATTR_NSH], match, in ovs_key_from_nlattrs()
1673 mpls_key = nla_data(a[OVS_KEY_ATTR_MPLS]); in ovs_key_from_nlattrs()
1674 hdr_len = nla_len(a[OVS_KEY_ATTR_MPLS]); in ovs_key_from_nlattrs()
1696 tcp_key = nla_data(a[OVS_KEY_ATTR_TCP]); in ovs_key_from_nlattrs()
1704 nla_get_be16(a[OVS_KEY_ATTR_TCP_FLAGS]), in ovs_key_from_nlattrs()
1712 udp_key = nla_data(a[OVS_KEY_ATTR_UDP]); in ovs_key_from_nlattrs()
1721 sctp_key = nla_data(a[OVS_KEY_ATTR_SCTP]); in ovs_key_from_nlattrs()
1730 icmp_key = nla_data(a[OVS_KEY_ATTR_ICMP]); in ovs_key_from_nlattrs()
1741 icmpv6_key = nla_data(a[OVS_KEY_ATTR_ICMPV6]); in ovs_key_from_nlattrs()
1752 nd_key = nla_data(a[OVS_KEY_ATTR_ND]); in ovs_key_from_nlattrs()
1817 const struct nlattr *a[OVS_KEY_ATTR_MAX + 1]; in ovs_nla_get_match() local
1823 err = parse_flow_nlattrs(nla_key, a, &key_attrs, log); in ovs_nla_get_match()
1827 err = parse_vlan_from_nlattrs(match, &key_attrs, a, false, log); in ovs_nla_get_match()
1831 err = ovs_key_from_nlattrs(net, match, key_attrs, a, false, log); in ovs_nla_get_match()
1865 err = parse_flow_mask_nlattrs(nla_mask, a, &mask_attrs, log); in ovs_nla_get_match()
1873 err = parse_vlan_from_nlattrs(match, &mask_attrs, a, true, log); in ovs_nla_get_match()
1877 err = ovs_key_from_nlattrs(net, match, mask_attrs, a, true, in ovs_nla_get_match()
1965 const struct nlattr *a[OVS_KEY_ATTR_MAX + 1], in ovs_nla_get_flow_metadata()
1982 return metadata_from_nlattrs(net, &match, &attrs, a, false, log); in ovs_nla_get_flow_metadata()
2336 const struct nlattr *a; in ovs_nla_free_check_pkt_len_action() local
2339 nla_for_each_nested(a, action, rem) { in ovs_nla_free_check_pkt_len_action()
2340 switch (nla_type(a)) { in ovs_nla_free_check_pkt_len_action()
2343 ovs_nla_free_nested_actions(nla_data(a), nla_len(a)); in ovs_nla_free_check_pkt_len_action()
2351 const struct nlattr *a = nla_data(action); in ovs_nla_free_clone_action() local
2354 switch (nla_type(a)) { in ovs_nla_free_clone_action()
2357 a = nla_next(a, &rem); in ovs_nla_free_clone_action()
2358 ovs_nla_free_nested_actions(a, rem); in ovs_nla_free_clone_action()
2365 const struct nlattr *a = nla_data(action); in ovs_nla_free_dec_ttl_action() local
2367 switch (nla_type(a)) { in ovs_nla_free_dec_ttl_action()
2369 ovs_nla_free_nested_actions(nla_data(a), nla_len(a)); in ovs_nla_free_dec_ttl_action()
2376 const struct nlattr *a = nla_data(action); in ovs_nla_free_sample_action() local
2379 switch (nla_type(a)) { in ovs_nla_free_sample_action()
2382 a = nla_next(a, &rem); in ovs_nla_free_sample_action()
2383 ovs_nla_free_nested_actions(a, rem); in ovs_nla_free_sample_action()
2388 static void ovs_nla_free_set_action(const struct nlattr *a) in ovs_nla_free_set_action() argument
2390 const struct nlattr *ovs_key = nla_data(a); in ovs_nla_free_set_action()
2403 const struct nlattr *a; in ovs_nla_free_nested_actions() local
2414 nla_for_each_attr(a, actions, len, rem) { in ovs_nla_free_nested_actions()
2415 switch (nla_type(a)) { in ovs_nla_free_nested_actions()
2417 ovs_nla_free_check_pkt_len_action(a); in ovs_nla_free_nested_actions()
2421 ovs_nla_free_clone_action(a); in ovs_nla_free_nested_actions()
2425 ovs_ct_free_action(a); in ovs_nla_free_nested_actions()
2429 ovs_nla_free_dec_ttl_action(a); in ovs_nla_free_nested_actions()
2433 ovs_nla_free_sample_action(a); in ovs_nla_free_nested_actions()
2437 ovs_nla_free_set_action(a); in ovs_nla_free_nested_actions()
2497 struct nlattr *a; in __add_action() local
2499 a = reserve_sfa_size(sfa, nla_attr_size(len), log); in __add_action()
2500 if (IS_ERR(a)) in __add_action()
2501 return a; in __add_action()
2503 a->nla_type = attrtype; in __add_action()
2504 a->nla_len = nla_attr_size(len); in __add_action()
2507 memcpy(nla_data(a), data, len); in __add_action()
2508 memset((unsigned char *) a + a->nla_len, 0, nla_padlen(len)); in __add_action()
2510 return a; in __add_action()
2516 struct nlattr *a; in ovs_nla_add_action() local
2518 a = __add_action(sfa, attrtype, data, len, log); in ovs_nla_add_action()
2520 return PTR_ERR_OR_ZERO(a); in ovs_nla_add_action()
2539 struct nlattr *a = (struct nlattr *) ((unsigned char *)sfa->actions + in add_nested_action_end() local
2542 a->nla_len = sfa->actions_len - st_offset; in add_nested_action_end()
2561 const struct nlattr *a; in validate_and_copy_sample() local
2566 nla_for_each_nested(a, attr, rem) { in validate_and_copy_sample()
2567 int type = nla_type(a); in validate_and_copy_sample()
2570 attrs[type] = a; in validate_and_copy_sample()
2629 const struct nlattr *a, *actions; in validate_and_copy_dec_ttl() local
2632 nla_for_each_nested(a, attr, rem) { in validate_and_copy_dec_ttl()
2633 int type = nla_type(a); in validate_and_copy_dec_ttl()
2645 attrs[type] = a; in validate_and_copy_dec_ttl()
2770 struct nlattr *a; in validate_and_copy_set_tun() local
2812 a = __add_action(sfa, OVS_KEY_ATTR_TUNNEL_INFO, NULL, in validate_and_copy_set_tun()
2814 if (IS_ERR(a)) { in validate_and_copy_set_tun()
2816 return PTR_ERR(a); in validate_and_copy_set_tun()
2819 ovs_tun = nla_data(a); in validate_and_copy_set_tun()
2869 static int validate_set(const struct nlattr *a, in validate_set() argument
2874 const struct nlattr *ovs_key = nla_data(a); in validate_set()
2879 if (!nla_ok(ovs_key, nla_len(a)) || in validate_set()
2880 nla_total_size(nla_len(ovs_key)) != nla_len(a)) in validate_set()
2913 err = validate_and_copy_set_tun(a, sfa, log); in validate_set()
3003 if (!validate_nsh(nla_data(a), masked, false, log)) in validate_set()
3049 struct nlattr *a[OVS_USERSPACE_ATTR_MAX + 1]; in validate_userspace() local
3052 error = nla_parse_deprecated_strict(a, OVS_USERSPACE_ATTR_MAX, in validate_userspace()
3058 if (!a[OVS_USERSPACE_ATTR_PID] || in validate_userspace()
3059 !nla_get_u32(a[OVS_USERSPACE_ATTR_PID])) in validate_userspace()
3080 struct nlattr *a[OVS_CHECK_PKT_LEN_ATTR_MAX + 1]; in validate_and_copy_check_pkt_len() local
3085 err = nla_parse_deprecated_strict(a, OVS_CHECK_PKT_LEN_ATTR_MAX, in validate_and_copy_check_pkt_len()
3091 if (!a[OVS_CHECK_PKT_LEN_ATTR_PKT_LEN] || in validate_and_copy_check_pkt_len()
3092 !nla_get_u16(a[OVS_CHECK_PKT_LEN_ATTR_PKT_LEN])) in validate_and_copy_check_pkt_len()
3095 acts_if_lesser_eq = a[OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_LESS_EQUAL]; in validate_and_copy_check_pkt_len()
3096 acts_if_greater = a[OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER]; in validate_and_copy_check_pkt_len()
3108 arg.pkt_len = nla_get_u16(a[OVS_CHECK_PKT_LEN_ATTR_PKT_LEN]); in validate_and_copy_check_pkt_len()
3159 struct nlattr *a[OVS_PSAMPLE_ATTR_MAX + 1]; in validate_psample() local
3165 err = nla_parse_nested(a, OVS_PSAMPLE_ATTR_MAX, attr, policy, NULL); in validate_psample()
3169 return a[OVS_PSAMPLE_ATTR_GROUP] ? 0 : -EINVAL; in validate_psample()
3194 const struct nlattr *a; in __ovs_nla_copy_actions() local
3200 nla_for_each_nested(a, attr, rem) { in __ovs_nla_copy_actions()
3230 int type = nla_type(a); in __ovs_nla_copy_actions()
3234 (action_lens[type] != nla_len(a) && in __ovs_nla_copy_actions()
3244 err = validate_userspace(a); in __ovs_nla_copy_actions()
3250 if (nla_get_u32(a) >= DP_MAX_PORTS) in __ovs_nla_copy_actions()
3255 const struct ovs_action_trunc *trunc = nla_data(a); in __ovs_nla_copy_actions()
3263 const struct ovs_action_hash *act_hash = nla_data(a); in __ovs_nla_copy_actions()
3286 vlan = nla_data(a); in __ovs_nla_copy_actions()
3298 const struct ovs_action_add_mpls *mpls = nla_data(a); in __ovs_nla_copy_actions()
3325 const struct ovs_action_push_mpls *mpls = nla_data(a); in __ovs_nla_copy_actions()
3360 proto = nla_get_be16(a); in __ovs_nla_copy_actions()
3377 err = validate_set(a, key, sfa, in __ovs_nla_copy_actions()
3385 err = validate_set(a, key, sfa, in __ovs_nla_copy_actions()
3393 bool last = nla_is_last(a, rem); in __ovs_nla_copy_actions()
3395 err = validate_and_copy_sample(net, a, key, sfa, in __ovs_nla_copy_actions()
3406 err = ovs_ct_copy_action(net, a, key, sfa, log); in __ovs_nla_copy_actions()
3440 if (!validate_nsh(nla_data(a), false, true, true)) in __ovs_nla_copy_actions()
3464 bool last = nla_is_last(a, rem); in __ovs_nla_copy_actions()
3466 err = validate_and_copy_clone(net, a, key, sfa, in __ovs_nla_copy_actions()
3477 bool last = nla_is_last(a, rem); in __ovs_nla_copy_actions()
3479 err = validate_and_copy_check_pkt_len(net, a, key, sfa, in __ovs_nla_copy_actions()
3492 err = validate_and_copy_dec_ttl(net, a, key, sfa, in __ovs_nla_copy_actions()
3502 if (!nla_is_last(a, rem)) in __ovs_nla_copy_actions()
3507 err = validate_psample(a); in __ovs_nla_copy_actions()
3517 err = copy_action(a, sfa, log); in __ovs_nla_copy_actions()
3622 const struct nlattr *a, *cpl_arg; in check_pkt_len_action_to_attr() local
3643 a = nla_next(cpl_arg, &rem); in check_pkt_len_action_to_attr()
3651 err = ovs_nla_put_actions(nla_data(a), nla_len(a), skb); in check_pkt_len_action_to_attr()
3662 a = nla_next(a, &rem); in check_pkt_len_action_to_attr()
3670 err = ovs_nla_put_actions(nla_data(a), nla_len(a), skb); in check_pkt_len_action_to_attr()
3690 const struct nlattr *a; in dec_ttl_action_to_attr() local
3697 nla_for_each_attr(a, nla_data(attr), nla_len(attr), rem) { in dec_ttl_action_to_attr()
3698 switch (nla_type(a)) { in dec_ttl_action_to_attr()
3707 err = ovs_nla_put_actions(nla_data(a), nla_len(a), skb); in dec_ttl_action_to_attr()
3728 static int set_action_to_attr(const struct nlattr *a, struct sk_buff *skb) in set_action_to_attr() argument
3730 const struct nlattr *ovs_key = nla_data(a); in set_action_to_attr()
3754 if (nla_put(skb, OVS_ACTION_ATTR_SET, nla_len(a), ovs_key)) in set_action_to_attr()
3762 static int masked_set_action_to_set_action_attr(const struct nlattr *a, in masked_set_action_to_set_action_attr() argument
3765 const struct nlattr *ovs_key = nla_data(a); in masked_set_action_to_set_action_attr()
3785 const struct nlattr *a; in ovs_nla_put_actions() local
3788 nla_for_each_attr(a, attr, len, rem) { in ovs_nla_put_actions()
3789 int type = nla_type(a); in ovs_nla_put_actions()
3793 err = set_action_to_attr(a, skb); in ovs_nla_put_actions()
3799 err = masked_set_action_to_set_action_attr(a, skb); in ovs_nla_put_actions()
3805 err = sample_action_to_attr(a, skb); in ovs_nla_put_actions()
3811 err = ovs_ct_action_to_attr(nla_data(a), skb); in ovs_nla_put_actions()
3817 err = clone_action_to_attr(a, skb); in ovs_nla_put_actions()
3823 err = check_pkt_len_action_to_attr(a, skb); in ovs_nla_put_actions()
3829 err = dec_ttl_action_to_attr(a, skb); in ovs_nla_put_actions()
3835 if (nla_put(skb, type, nla_len(a), nla_data(a))) in ovs_nla_put_actions()