Lines Matching refs:kp
145 key_sendup0(struct keycb *kp, struct mbuf *m, int promisc) in key_sendup0() argument
166 if (!sbappendaddr(&kp->kp_socket->so_rcv, &key_src, m, NULL)) { in key_sendup0()
169 soroverflow(kp->kp_socket); in key_sendup0()
173 sorwakeup(kp->kp_socket); in key_sendup0()
182 struct keycb *kp; in key_sendup_mbuf() local
206 LIST_FOREACH(kp, &V_keycb_list, kp_next) { in key_sendup_mbuf()
212 if (kp->kp_promisc) { in key_sendup_mbuf()
215 key_sendup0(kp, n, 1); in key_sendup_mbuf()
221 if (so != NULL && so->so_pcb == kp) in key_sendup_mbuf()
225 KEY_SENDUP_REGISTERED && kp->kp_registered == 0)) in key_sendup_mbuf()
236 if (key_sendup0(kp, n, 0) == 0) in key_sendup_mbuf()
262 struct keycb *kp; in key_attach() local
277 kp = malloc(sizeof(*kp), M_PCB, M_WAITOK); in key_attach()
278 kp->kp_socket = so; in key_attach()
279 kp->kp_promisc = kp->kp_registered = 0; in key_attach()
281 so->so_pcb = kp; in key_attach()
285 LIST_INSERT_HEAD(&V_keycb_list, kp, kp_next); in key_attach()
302 struct keycb *kp = so->so_pcb; in key_detach() local
306 LIST_REMOVE(kp, kp_next); in key_detach()
308 free(kp, M_PCB); in key_detach()