Lines Matching defs:so
442 struct sockaddr *src, struct socket *so)
448 KASSERT(so != NULL);
449 KASSERT(so->so_proto->pr_domain->dom_family == AF_INET);
450 inp = sotoinpcb(so);
464 SOOPT_TIMESTAMP(so->so_options)) {
470 if (sbappendaddr(&so->so_rcv, src, n, opts) == 0) {
474 soroverflow(so);
476 sorwakeup(so);
523 * we need udpiphdr for IPsec processing so we do that later.
642 * just wake up so that he can collect error status.
690 udp_ctloutput(int op, struct socket *so, struct sockopt *sopt)
698 family = so->so_proto->pr_domain->dom_family;
705 error = ip_ctloutput(op, so, sopt);
713 error = ip6_ctloutput(op, so, sopt);
726 inp = sotoinpcb(so);
856 udp_attach(struct socket *so, int proto)
861 KASSERT(sotoinpcb(so) == NULL);
864 sosetlock(so);
867 so->so_mowner = &udp_mowner;
868 so->so_rcv.sb_mowner = &udp_rx_mowner;
869 so->so_snd.sb_mowner = &udp_tx_mowner;
871 if (so->so_snd.sb_hiwat == 0 || so->so_rcv.sb_hiwat == 0) {
872 error = soreserve(so, udp_sendspace, udp_recvspace);
878 error = inpcb_create(so, &udbtable);
882 inp = sotoinpcb(so);
884 KASSERT(solocked(so));
890 udp_detach(struct socket *so)
894 KASSERT(solocked(so));
895 inp = sotoinpcb(so);
901 udp_accept(struct socket *so, struct sockaddr *nam)
903 KASSERT(solocked(so));
911 udp_bind(struct socket *so, struct sockaddr *nam, struct lwp *l)
913 struct inpcb *inp = sotoinpcb(so);
918 KASSERT(solocked(so));
930 udp_listen(struct socket *so, struct lwp *l)
932 KASSERT(solocked(so));
938 udp_connect(struct socket *so, struct sockaddr *nam, struct lwp *l)
940 struct inpcb *inp = sotoinpcb(so);
944 KASSERT(solocked(so));
951 soisconnected(so);
957 udp_connect2(struct socket *so, struct socket *so2)
959 KASSERT(solocked(so));
965 udp_disconnect(struct socket *so)
967 struct inpcb *inp = sotoinpcb(so);
970 KASSERT(solocked(so));
974 /*soisdisconnected(so);*/
975 so->so_state &= ~SS_ISCONNECTED; /* XXX */
985 udp_shutdown(struct socket *so)
989 KASSERT(solocked(so));
992 socantsendmore(so);
999 udp_abort(struct socket *so)
1001 KASSERT(solocked(so));
1009 udp_ioctl(struct socket *so, u_long cmd, void *nam, struct ifnet *ifp)
1011 return in_control(so, cmd, nam, ifp);
1015 udp_stat(struct socket *so, struct stat *ub)
1017 KASSERT(solocked(so));
1024 udp_peeraddr(struct socket *so, struct sockaddr *nam)
1028 KASSERT(solocked(so));
1029 KASSERT(sotoinpcb(so) != NULL);
1033 inpcb_fetch_peeraddr(sotoinpcb(so), (struct sockaddr_in *)nam);
1040 udp_sockaddr(struct socket *so, struct sockaddr *nam)
1044 KASSERT(solocked(so));
1045 KASSERT(sotoinpcb(so) != NULL);
1049 inpcb_fetch_sockaddr(sotoinpcb(so), (struct sockaddr_in *)nam);
1056 udp_rcvd(struct socket *so, int flags, struct lwp *l)
1058 KASSERT(solocked(so));
1064 udp_recvoob(struct socket *so, struct mbuf *m, int flags)
1066 KASSERT(solocked(so));
1072 udp_send(struct socket *so, struct mbuf *m, struct sockaddr *nam,
1075 struct inpcb *inp = sotoinpcb(so);
1080 KASSERT(solocked(so));
1089 if ((so->so_state & SS_ISCONNECTED) != 0) {
1097 if ((so->so_state & SS_ISCONNECTED) == 0) {
1119 udp_sendoob(struct socket *so, struct mbuf *m, struct mbuf *control)
1121 KASSERT(solocked(so));
1130 udp_purgeif(struct socket *so, struct ifnet *ifp)
1234 * We need to distinguish between ESP packets and IKE packets. We do so by
1319 * We have modified the packet - it is now ESP, so we should not