• Home
  • Raw
  • Download

Lines Matching refs:tp

37 	struct flow_dissector_key_ports tp;  member
122 static int fl_classify(struct sk_buff *skb, const struct tcf_proto *tp, in fl_classify() argument
125 struct cls_fl_head *head = rcu_dereference_bh(tp->root); in fl_classify()
151 static int fl_init(struct tcf_proto *tp) in fl_init() argument
160 rcu_assign_pointer(tp->root, head); in fl_init()
191 static bool fl_destroy(struct tcf_proto *tp, bool force) in fl_destroy() argument
193 struct cls_fl_head *head = rtnl_dereference(tp->root); in fl_destroy()
209 static unsigned long fl_get(struct tcf_proto *tp, u32 handle) in fl_get() argument
211 struct cls_fl_head *head = rtnl_dereference(tp->root); in fl_get()
308 fl_set_key_val(tb, &key->tp.src, TCA_FLOWER_KEY_TCP_SRC, in fl_set_key()
309 &mask->tp.src, TCA_FLOWER_UNSPEC, in fl_set_key()
310 sizeof(key->tp.src)); in fl_set_key()
311 fl_set_key_val(tb, &key->tp.dst, TCA_FLOWER_KEY_TCP_DST, in fl_set_key()
312 &mask->tp.dst, TCA_FLOWER_UNSPEC, in fl_set_key()
313 sizeof(key->tp.dst)); in fl_set_key()
315 fl_set_key_val(tb, &key->tp.src, TCA_FLOWER_KEY_UDP_SRC, in fl_set_key()
316 &mask->tp.src, TCA_FLOWER_UNSPEC, in fl_set_key()
317 sizeof(key->tp.src)); in fl_set_key()
318 fl_set_key_val(tb, &key->tp.dst, TCA_FLOWER_KEY_UDP_DST, in fl_set_key()
319 &mask->tp.dst, TCA_FLOWER_UNSPEC, in fl_set_key()
320 sizeof(key->tp.dst)); in fl_set_key()
387 FLOW_DISSECTOR_KEY_PORTS, tp); in fl_init_dissector()
418 static int fl_set_parms(struct net *net, struct tcf_proto *tp, in fl_set_parms() argument
427 err = tcf_exts_validate(net, tp, tb, est, &e, ovr); in fl_set_parms()
433 tcf_bind_filter(tp, &f->res, base); in fl_set_parms()
443 tcf_exts_change(tp, &f->exts, &e); in fl_set_parms()
451 static u32 fl_grab_new_handle(struct tcf_proto *tp, in fl_grab_new_handle() argument
460 } while (--i > 0 && fl_get(tp, head->hgen)); in fl_grab_new_handle()
473 struct tcf_proto *tp, unsigned long base, in fl_change() argument
477 struct cls_fl_head *head = rtnl_dereference(tp->root); in fl_change()
501 handle = fl_grab_new_handle(tp, head); in fl_change()
509 err = fl_set_parms(net, tp, fnew, &mask, base, tb, tca[TCA_RATE], ovr); in fl_change()
529 tcf_unbind_filter(tp, &fold->res); in fl_change()
542 static int fl_delete(struct tcf_proto *tp, unsigned long arg) in fl_delete() argument
544 struct cls_fl_head *head = rtnl_dereference(tp->root); in fl_delete()
550 tcf_unbind_filter(tp, &f->res); in fl_delete()
555 static void fl_walk(struct tcf_proto *tp, struct tcf_walker *arg) in fl_walk() argument
557 struct cls_fl_head *head = rtnl_dereference(tp->root); in fl_walk()
563 if (arg->fn(tp, (unsigned long) f, arg) < 0) { in fl_walk()
591 static int fl_dump(struct net *net, struct tcf_proto *tp, unsigned long fh, in fl_dump() argument
594 struct cls_fl_head *head = rtnl_dereference(tp->root); in fl_dump()
658 (fl_dump_key_val(skb, &key->tp.src, TCA_FLOWER_KEY_TCP_SRC, in fl_dump()
659 &mask->tp.src, TCA_FLOWER_UNSPEC, in fl_dump()
660 sizeof(key->tp.src)) || in fl_dump()
661 fl_dump_key_val(skb, &key->tp.dst, TCA_FLOWER_KEY_TCP_DST, in fl_dump()
662 &mask->tp.dst, TCA_FLOWER_UNSPEC, in fl_dump()
663 sizeof(key->tp.dst)))) in fl_dump()
666 (fl_dump_key_val(skb, &key->tp.src, TCA_FLOWER_KEY_UDP_SRC, in fl_dump()
667 &mask->tp.src, TCA_FLOWER_UNSPEC, in fl_dump()
668 sizeof(key->tp.src)) || in fl_dump()
669 fl_dump_key_val(skb, &key->tp.dst, TCA_FLOWER_KEY_UDP_DST, in fl_dump()
670 &mask->tp.dst, TCA_FLOWER_UNSPEC, in fl_dump()
671 sizeof(key->tp.dst)))) in fl_dump()