Lines Matching refs:handler
40 #define for_each_protocol_rcu(head, handler) \ argument
41 for (handler = rcu_dereference(head); \
42 handler != NULL; \
43 handler = rcu_dereference(handler->next)) \
48 struct xfrm6_protocol *handler; in xfrm6_rcv_cb() local
54 for_each_protocol_rcu(*proto_handlers(protocol), handler) in xfrm6_rcv_cb()
55 if ((ret = handler->cb_handler(skb, err)) <= 0) in xfrm6_rcv_cb()
64 struct xfrm6_protocol *handler; in xfrm6_esp_rcv() local
68 for_each_protocol_rcu(esp6_handlers, handler) in xfrm6_esp_rcv()
69 if ((ret = handler->handler(skb)) != -EINVAL) in xfrm6_esp_rcv()
81 struct xfrm6_protocol *handler; in xfrm6_esp_err() local
83 for_each_protocol_rcu(esp6_handlers, handler) in xfrm6_esp_err()
84 if (!handler->err_handler(skb, opt, type, code, offset, info)) in xfrm6_esp_err()
93 struct xfrm6_protocol *handler; in xfrm6_ah_rcv() local
97 for_each_protocol_rcu(ah6_handlers, handler) in xfrm6_ah_rcv()
98 if ((ret = handler->handler(skb)) != -EINVAL) in xfrm6_ah_rcv()
110 struct xfrm6_protocol *handler; in xfrm6_ah_err() local
112 for_each_protocol_rcu(ah6_handlers, handler) in xfrm6_ah_err()
113 if (!handler->err_handler(skb, opt, type, code, offset, info)) in xfrm6_ah_err()
122 struct xfrm6_protocol *handler; in xfrm6_ipcomp_rcv() local
126 for_each_protocol_rcu(ipcomp6_handlers, handler) in xfrm6_ipcomp_rcv()
127 if ((ret = handler->handler(skb)) != -EINVAL) in xfrm6_ipcomp_rcv()
139 struct xfrm6_protocol *handler; in xfrm6_ipcomp_err() local
141 for_each_protocol_rcu(ipcomp6_handlers, handler) in xfrm6_ipcomp_err()
142 if (!handler->err_handler(skb, opt, type, code, offset, info)) in xfrm6_ipcomp_err()
149 .handler = xfrm6_esp_rcv,
155 .handler = xfrm6_ah_rcv,
161 .handler = xfrm6_ipcomp_rcv,
185 int xfrm6_protocol_register(struct xfrm6_protocol *handler, in xfrm6_protocol_register() argument
192 int priority = handler->priority; in xfrm6_protocol_register()
213 handler->next = *pprev; in xfrm6_protocol_register()
214 rcu_assign_pointer(*pprev, handler); in xfrm6_protocol_register()
232 int xfrm6_protocol_deregister(struct xfrm6_protocol *handler, in xfrm6_protocol_deregister() argument
248 if (t == handler) { in xfrm6_protocol_deregister()
249 *pprev = handler->next; in xfrm6_protocol_deregister()