Lines Matching defs:so

148 #define sotokeycb(so)		((struct pkpcb *)(so)->so_pcb)
270 pfkeyv2_attach(struct socket *so, int proto, int wait)
275 if ((so->so_state & SS_PRIV) == 0)
278 error = soreserve(so, PFKEYSNDQ, PFKEYRCVQ);
286 so->so_pcb = kp;
288 kp->kcb_socket = so;
292 so->so_options |= SO_USELOOPBACK;
293 soisconnected(so);
306 pfkeyv2_detach(struct socket *so)
310 soassertlocked(so);
312 kp = sotokeycb(so);
332 sounlock(so);
335 solock(so);
337 so->so_pcb = NULL;
338 KASSERT((so->so_state & SS_NOFDREF) == 0);
345 pfkeyv2_disconnect(struct socket *so)
347 soisdisconnected(so);
352 pfkeyv2_shutdown(struct socket *so)
354 socantsendmore(so);
359 pfkeyv2_send(struct socket *so, struct mbuf *m, struct mbuf *nam,
364 soassertlocked(so);
376 error = pfkeyv2_output(m, so);
387 pfkeyv2_sockaddr(struct socket *so, struct mbuf *nam)
393 pfkeyv2_peeraddr(struct socket *so, struct mbuf *nam)
402 pfkeyv2_output(struct mbuf *mbuf, struct socket *so)
432 sounlock(so);
433 error = pfkeyv2_dosend(so, message, mbuf->m_pkthdr.len);
434 solock(so);
444 struct socket *so = kp->kcb_socket;
454 mtx_enter(&so->so_rcv.sb_mtx);
455 ret = sbappendaddr(so, &so->so_rcv, &pfkey_addr, m, NULL);
456 mtx_leave(&so->so_rcv.sb_mtx);
463 sorwakeup(so);
473 pfkeyv2_sendmessage(void **headers, int mode, struct socket *so,
521 pfkey_sendup(sotokeycb(so), packet, 0);
545 if (kp->kcb_socket == so || kp->kcb_rdomain != rdomain)
1121 pfkeyv2_dosend(struct socket *so, void *message, int len)
1154 kp = sotokeycb(so);
1395 * The SA is already initialized, so we're only allowed to
1746 dump_state.socket = so;
2124 rval = pfkeyv2_sendmessage(headers, mode, so, 0, 0, kp->kcb_rdomain);