Lines Matching defs:mp_so

112 mptcp_usr_attach(struct socket *mp_so, int proto, struct proc *p)
117 VERIFY(sotomppcb(mp_so) == NULL);
119 error = mptcp_attach(mp_so, p);
127 if ((mp_so->so_options & SO_LINGER) && mp_so->so_linger == 0)
128 mp_so->so_linger = TCP_LINGERTIME * hz;
137 mptcp_usr_detach(struct socket *mp_so)
139 struct mppcb *mpp = sotomppcb(mp_so);
145 error = mptcp_detach(mp_so, mpp);
154 mptcp_attach(struct socket *mp_so, struct proc *p)
162 if (mp_so->so_snd.sb_hiwat == 0 || mp_so->so_rcv.sb_hiwat == 0) {
163 error = soreserve(mp_so, tcp_sendspace, MPTCP_RWIN_MAX);
173 mp_so->so_snd.sb_flags |= SB_NOCOMPRESS;
174 mp_so->so_rcv.sb_flags |= SB_NOCOMPRESS;
177 mp_so->so_rcv.sb_flags &= ~SB_AUTOSIZE;
178 mp_so->so_snd.sb_flags &= ~SB_AUTOSIZE;
180 if ((error = mp_pcballoc(mp_so, &mtcbinfo)) != 0)
183 mpp = sotomppcb(mp_so);
186 mpte = mptcp_sescreate(mp_so, mpp);
209 mptcp_detach(struct socket *mp_so, struct mppcb *mpp)
214 VERIFY(mp_so->so_pcb == mpp);
215 VERIFY(mpp->mpp_socket == mp_so);
258 struct socket *mp_so;
262 mp_so = mpte->mpte_mppcb->mpp_socket;
267 mptcplog((LOG_DEBUG, "%s: mp_so 0x%llx\n", __func__,
268 (u_int64_t)VM_KERNEL_ADDRPERM(mp_so)));
271 struct socket *, mp_so);
313 mptcp_usr_connectx(struct socket *mp_so, struct sockaddr_list **src_sl,
319 struct mppcb *mpp = sotomppcb(mp_so);
635 mptcp_usr_control(struct socket *mp_so, u_long cmd, caddr_t data,
639 struct mppcb *mpp = sotomppcb(mp_so);
754 struct socket *mp_so;
760 mp_so = mpte->mpte_mppcb->mpp_socket;
763 mptcplog((LOG_DEBUG, "%s: mp_so 0x%llx aid %d cid %d %d\n", __func__,
764 (u_int64_t)VM_KERNEL_ADDRPERM(mp_so), aid, cid, mp_so->so_error));
766 connid_t, cid, struct socket *, mp_so, struct mptcb *, mp_tp);
774 if (!(mp_so->so_flags & SOF_PCBCLEARING)) {
775 if (!(mp_so->so_state & (SS_ISCONNECTED|
780 if (mp_so->so_state & SS_ISDISCONNECTING) {
790 } else if ((mp_so->so_options & SO_LINGER) &&
791 mp_so->so_linger == 0) {
796 soisdisconnecting(mp_so);
797 sbflush(&mp_so->so_rcv);
821 if ((mp_so->so_state & (SS_CANTRCVMORE | SS_CANTSENDMORE)) ==
835 mptcp_usr_disconnect(struct socket *mp_so)
839 error = mptcp_usr_disconnectx(mp_so, ASSOCID_ALL, CONNID_ALL);
847 mptcp_usr_disconnectx(struct socket *mp_so, associd_t aid, connid_t cid)
849 struct mppcb *mpp = sotomppcb(mp_so);
878 struct socket *mp_so;
883 mp_so = mpte->mpte_mppcb->mpp_socket;
894 soisdisconnected(mp_so);
918 mptcp_usr_peeloff(struct socket *mp_so, associd_t aid, struct socket **psop)
920 struct mppcb *mpp = sotomppcb(mp_so);
947 struct socket *so = NULL, *mp_so;
952 mp_so = mpte->mpte_mppcb->mpp_socket;
958 struct socket *, mp_so);
974 panic("%s: so %p is MPTCP capable but mp_so %p "
975 "aid is %d\n", __func__, so, mp_so,
1009 mptcplog((LOG_DEBUG, "%s: mp_so 0x%llx\n", __func__,
1010 (u_int64_t)VM_KERNEL_ADDRPERM(mp_so)));
1019 mptcp_usr_rcvd(struct socket *mp_so, int flags)
1022 struct mppcb *mpp = sotomppcb(mp_so);
1042 mptcp_usr_send(struct socket *mp_so, int prus_flags, struct mbuf *m,
1046 struct mppcb *mpp = sotomppcb(mp_so);
1072 if (!(mp_so->so_state & SS_ISCONNECTED)) {
1078 VERIFY(mp_so->so_snd.sb_flags & SB_NOCOMPRESS);
1079 (void) sbappendstream(&mp_so->so_snd, m);
1105 mptcp_usr_shutdown(struct socket *mp_so)
1107 struct mppcb *mpp = sotomppcb(mp_so);
1118 socantsendmore(mp_so);
1226 mptcp_usr_sosend(struct socket *mp_so, struct sockaddr *addr, struct uio *uio,
1243 socket_lock(mp_so, 1);
1244 so_update_last_owner_locked(mp_so, p);
1245 so_update_policy(mp_so);
1247 VERIFY(mp_so->so_type == SOCK_STREAM);
1248 VERIFY(!(mp_so->so_flags & SOF_MP_SUBFLOW));
1251 (mp_so->so_flags & SOF_ENABLE_MSGS)) {
1253 socket_unlock(mp_so, 1);
1266 socket_unlock(mp_so, 1);
1273 error = sosendcheck(mp_so, NULL, resid, 0, 0, flags,
1278 space = sbspace(&mp_so->so_snd);
1280 socket_unlock(mp_so, 0);
1286 socket_lock(mp_so, 0);
1292 socket_lock(mp_so, 0);
1304 error = sflt_data_out(mp_so, NULL, &top, &control, 0);
1321 error = (*mp_so->so_proto->pr_usrreqs->pru_send)
1322 (mp_so, sendflags, top, NULL, NULL, p);
1332 sbunlock(&mp_so->so_snd, FALSE); /* will unlock socket */
1334 socket_unlock(mp_so, 1);
1351 mptcp_usr_socheckopt(struct socket *mp_so, struct sockopt *sopt)
1353 #pragma unused(mp_so)
1444 struct socket *mp_so;
1467 mp_so = mpte->mpte_mppcb->mpp_socket;
1566 struct socket *mp_so;
1575 mp_so = mpte->mpte_mppcb->mpp_socket;
1628 mp_so->so_flags &= ~SOF_NOTSENT_LOWAT;
1631 mp_so->so_flags |= SOF_NOTSENT_LOWAT;
1656 mptcplog((LOG_DEBUG, "%s: mp_so 0x%llx sopt %s "
1658 (u_int64_t)VM_KERNEL_ADDRPERM(mp_so),
1698 mptcplog((LOG_ERR, "%s: mp_so 0x%llx sopt %s val %d set %s\n",
1699 __func__, (u_int64_t)VM_KERNEL_ADDRPERM(mp_so),
1704 mptcplog((LOG_ERR, "%s: mp_so 0x%llx sopt %s can't be issued "
1706 (u_int64_t)VM_KERNEL_ADDRPERM(mp_so), mptcp_sopt2str(level,
1828 mptcp_ctloutput(struct socket *mp_so, struct sockopt *sopt)
1830 struct mppcb *mpp = sotomppcb(mp_so);
1844 mptcplog((LOG_DEBUG, "%s: mp_so 0x%llx sopt %s level not "
1845 "handled\n", __func__, (u_int64_t)VM_KERNEL_ADDRPERM(mp_so),