Lines Matching defs:so

163 static void	udp_detach(struct socket *so);
233 * so that future changes to add, for example, per-CPU stats support won't
292 struct socket *so;
359 so = inp->inp_socket;
360 SOCKBUF_LOCK(&so->so_rcv);
361 if (sbappendaddr_locked(&so->so_rcv, append_sa, n, opts) == 0) {
362 SOCKBUF_UNLOCK(&so->so_rcv);
368 sorwakeup_locked(so);
700 * Notify a udp user of an asynchronous error; just wake up so that they can
932 udp_ctloutput(struct socket *so, struct sockopt *sopt)
939 isudplite = (so->so_proto->pr_protocol == IPPROTO_UDPLITE) ? 1 : 0;
940 inp = sotoinpcb(so);
943 if (sopt->sopt_level != so->so_proto->pr_protocol) {
945 if (INP_CHECK_SOCKAF(so, AF_INET6)) {
947 error = ip6_ctloutput(so, sopt);
956 error = ip_ctloutput(so, sopt);
971 inp = sotoinpcb(so);
1013 inp = sotoinpcb(so);
1180 * inpcb. This doesn't strictly follow the lock order, so we play
1182 * conservative locks than required the second time around, so later
1245 * Jail may rewrite the destination address, so let it do
1454 * Pull up data so the longest case is contiguous:
1555 * We cannot yet update the cksums so clear any
1567 udp_abort(struct socket *so)
1572 pcbinfo = get_inpcbinfo(so->so_proto->pr_protocol);
1573 inp = sotoinpcb(so);
1581 soisdisconnected(so);
1587 udp_attach(struct socket *so, int proto, struct thread *td)
1593 pcbinfo = get_inpcbinfo(so->so_proto->pr_protocol);
1594 inp = sotoinpcb(so);
1596 error = soreserve(so, udp_sendspace, udp_recvspace);
1600 error = in_pcballoc(so, pcbinfo);
1606 inp = sotoinpcb(so);
1625 udp_set_kernel_tunneling(struct socket *so, udp_tun_func_t f)
1630 KASSERT(so->so_type == SOCK_DGRAM,
1632 inp = sotoinpcb(so);
1647 udp_bind(struct socket *so, struct sockaddr *nam, struct thread *td)
1653 pcbinfo = get_inpcbinfo(so->so_proto->pr_protocol);
1654 inp = sotoinpcb(so);
1665 udp_close(struct socket *so)
1670 pcbinfo = get_inpcbinfo(so->so_proto->pr_protocol);
1671 inp = sotoinpcb(so);
1679 soisdisconnected(so);
1685 udp_connect(struct socket *so, struct sockaddr *nam, struct thread *td)
1692 pcbinfo = get_inpcbinfo(so->so_proto->pr_protocol);
1693 inp = sotoinpcb(so);
1710 soisconnected(so);
1716 udp_detach(struct socket *so)
1722 pcbinfo = get_inpcbinfo(so->so_proto->pr_protocol);
1723 inp = sotoinpcb(so);
1739 udp_disconnect(struct socket *so)
1744 pcbinfo = get_inpcbinfo(so->so_proto->pr_protocol);
1745 inp = sotoinpcb(so);
1756 SOCK_LOCK(so);
1757 so->so_state &= ~SS_ISCONNECTED; /* XXX */
1758 SOCK_UNLOCK(so);
1764 udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr,
1769 inp = sotoinpcb(so);
1776 udp_shutdown(struct socket *so)
1780 inp = sotoinpcb(so);
1783 socantsendmore(so);