Lines Matching +defs:a +defs:mark

42 /* Metadata mark for masked write to conntrack mark */
71 struct md_mark mark;
157 return ct ? READ_ONCE(ct->mark) : 0;
204 key->ct.mark = ovs_ct_get_mark(ct);
231 /* Clear 'ct_orig_proto' to mark the non-existence of conntrack
301 nla_put_u32(skb, OVS_KEY_ATTR_CT_MARK, output->ct.mark))
350 new_mark = ct_mark | (READ_ONCE(ct->mark) & ~(mask));
351 if (READ_ONCE(ct->mark) != new_mark) {
352 WRITE_ONCE(ct->mark, new_mark);
355 key->ct.mark = new_mark;
377 /* Initialize labels for a new, yet to be committed conntrack entry. Note that
542 * might be found for this skb. This happens when we lose a skb->_nfct
729 * committing with a separate conntrack action, then we don't need to
730 * actually run the packet through conntrack twice unless it's for a
758 /* Clear CT state NAT flags to mark that we have not yet done
772 /* Packets starting a new connection must be NATted before the
791 /* Userspace may decide to perform a ct lookup without a helper
792 * specified followed by a (recirculate and) commit with one,
793 * or attach a helper in a later commit. Therefore, for
813 * - nf_conntrack_in() was executed above ("!cached") or a
814 * helper was just attached ("add_helper") for a confirmed
968 /* The connection could be invalid, in which case this is a no-op.*/
992 * by a further CT action with both the commit flag and the eventmask
1005 if (info->mark.mask) {
1006 err = ovs_ct_set_mark(ct, key, info->mark.value,
1007 info->mark.mask);
1095 struct nlattr *a;
1101 nla_for_each_nested(a, attr, rem) {
1115 int type = nla_type(a);
1123 if (nla_len(a) != ovs_nat_attr_lens[type][ip_vers]) {
1125 type, nla_len(a),
1143 nla_memcpy(&info->range.min_addr, a,
1150 nla_memcpy(&info->range.max_addr, a,
1156 info->range.min_proto.all = htons(nla_get_u16(a));
1162 info->range.max_proto.all = htons(nla_get_u16(a));
1241 struct nlattr *a;
1244 nla_for_each_nested(a, attr, rem) {
1245 int type = nla_type(a);
1258 if (nla_len(a) < minlen || nla_len(a) > maxlen) {
1261 type, nla_len(a), maxlen);
1274 info->zone.id = nla_get_u16(a);
1279 struct md_mark *mark = nla_data(a);
1281 if (!mark->mask) {
1285 info->mark = *mark;
1291 struct md_labels *labels = nla_data(a);
1302 *helper = nla_data(a);
1303 if (!string_is_terminated(*helper, nla_len(a))) {
1310 int err = parse_nat(a, info, log);
1319 info->eventmask = nla_get_u32(a);
1323 memcpy(info->timeout, nla_data(a), nla_len(a));
1324 if (!string_is_terminated(info->timeout, nla_len(a))) {
1339 if (!info->commit && info->mark.mask) {
1341 "Setting conntrack mark requires 'commit' flag.");
1530 if (IS_ENABLED(CONFIG_NF_CONNTRACK_MARK) && ct_info->mark.mask &&
1531 nla_put(skb, OVS_CT_ATTR_MARK, sizeof(ct_info->mark),
1532 &ct_info->mark))
1561 void ovs_ct_free_action(const struct nlattr *a)
1563 struct ovs_conntrack_info *ct_info = nla_data(a);
1851 struct nlattr **a = info->attrs;
1863 if (!a[OVS_CT_LIMIT_ATTR_ZONE_LIMIT]) {
1868 err = ovs_ct_limit_set_zone_limit(a[OVS_CT_LIMIT_ATTR_ZONE_LIMIT],
1885 struct nlattr **a = info->attrs;
1897 if (!a[OVS_CT_LIMIT_ATTR_ZONE_LIMIT]) {
1902 err = ovs_ct_limit_del_zone_limit(a[OVS_CT_LIMIT_ATTR_ZONE_LIMIT],
1917 struct nlattr **a = info->attrs;
1937 if (a[OVS_CT_LIMIT_ATTR_ZONE_LIMIT]) {
1939 net, a[OVS_CT_LIMIT_ATTR_ZONE_LIMIT], ct_limit_info,