Lines Matching refs:ops
126 int tcf_em_register(struct tcf_ematch_ops *ops) in tcf_em_register() argument
131 if (ops->match == NULL) in tcf_em_register()
136 if (ops->kind == e->kind) in tcf_em_register()
139 list_add_tail(&ops->link, &ematch_ops); in tcf_em_register()
158 void tcf_em_unregister(struct tcf_ematch_ops *ops) in tcf_em_unregister() argument
161 list_del(&ops->link); in tcf_em_unregister()
216 em->ops = tcf_em_lookup(em_hdr->kind); in tcf_em_validate()
218 if (em->ops == NULL) { in tcf_em_validate()
224 em->ops = tcf_em_lookup(em_hdr->kind); in tcf_em_validate()
225 if (em->ops) { in tcf_em_validate()
230 module_put(em->ops->owner); in tcf_em_validate()
231 em->ops = NULL; in tcf_em_validate()
241 if (em->ops->datalen && data_len < em->ops->datalen) in tcf_em_validate()
244 if (em->ops->change) { in tcf_em_validate()
245 err = em->ops->change(net, data, data_len, em); in tcf_em_validate()
409 if (em->ops) { in tcf_em_tree_destroy()
410 if (em->ops->destroy) in tcf_em_tree_destroy()
411 em->ops->destroy(em); in tcf_em_tree_destroy()
414 module_put(em->ops->owner); in tcf_em_tree_destroy()
459 .kind = em->ops ? em->ops->kind : TCF_EM_CONTAINER, in tcf_em_tree_dump()
467 if (em->ops && em->ops->dump) { in tcf_em_tree_dump()
468 if (em->ops->dump(skb, em) < 0) in tcf_em_tree_dump()
493 int r = em->ops->match(skb, em, info); in tcf_em_match()