Lines Matching refs:control
284 sctp_log_strm_del(struct sctp_queued_to_read *control, struct sctp_queued_to_read *poschk, int from) in sctp_log_strm_del() argument
289 if (control == NULL) { in sctp_log_strm_del()
293 sctp_clog.x.strlog.stcb = control->stcb; in sctp_log_strm_del()
294 sctp_clog.x.strlog.n_tsn = control->sinfo_tsn; in sctp_log_strm_del()
295 sctp_clog.x.strlog.n_sseq = (uint16_t)control->mid; in sctp_log_strm_del()
296 sctp_clog.x.strlog.strm = control->sinfo_stream; in sctp_log_strm_del()
3139 struct sctp_queued_to_read *control; in sctp_notify_assoc_change() local
3221 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_assoc_change()
3224 if (control != NULL) { in sctp_notify_assoc_change()
3225 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_assoc_change()
3226 control->spec_flags = M_NOTIFICATION; in sctp_notify_assoc_change()
3228 control->tail_mbuf = m_notify; in sctp_notify_assoc_change()
3230 control, in sctp_notify_assoc_change()
3281 struct sctp_queued_to_read *control; in sctp_notify_peer_addr_change() local
3344 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_peer_addr_change()
3347 if (control == NULL) { in sctp_notify_peer_addr_change()
3352 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_peer_addr_change()
3353 control->spec_flags = M_NOTIFICATION; in sctp_notify_peer_addr_change()
3355 control->tail_mbuf = m_notify; in sctp_notify_peer_addr_change()
3357 control, in sctp_notify_peer_addr_change()
3370 struct sctp_queued_to_read *control; in sctp_notify_send_failed() local
3475 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_send_failed()
3478 if (control == NULL) { in sctp_notify_send_failed()
3483 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_send_failed()
3484 control->spec_flags = M_NOTIFICATION; in sctp_notify_send_failed()
3486 control->tail_mbuf = m_notify; in sctp_notify_send_failed()
3488 control, in sctp_notify_send_failed()
3501 struct sctp_queued_to_read *control; in sctp_notify_send_failed2() local
3573 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_send_failed2()
3576 if (control == NULL) { in sctp_notify_send_failed2()
3581 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_send_failed2()
3582 control->spec_flags = M_NOTIFICATION; in sctp_notify_send_failed2()
3584 control->tail_mbuf = m_notify; in sctp_notify_send_failed2()
3586 control, in sctp_notify_send_failed2()
3595 struct sctp_queued_to_read *control; in sctp_notify_adaptation_layer() local
3620 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_adaptation_layer()
3623 if (control == NULL) { in sctp_notify_adaptation_layer()
3628 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_adaptation_layer()
3629 control->spec_flags = M_NOTIFICATION; in sctp_notify_adaptation_layer()
3631 control->tail_mbuf = m_notify; in sctp_notify_adaptation_layer()
3633 control, in sctp_notify_adaptation_layer()
3644 struct sctp_queued_to_read *control; in sctp_notify_partial_delivery_indication() local
3673 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_partial_delivery_indication()
3676 if (control == NULL) { in sctp_notify_partial_delivery_indication()
3681 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_partial_delivery_indication()
3682 control->spec_flags = M_NOTIFICATION; in sctp_notify_partial_delivery_indication()
3684 control->tail_mbuf = m_notify; in sctp_notify_partial_delivery_indication()
3687 sctp_sblog(sb, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBALLOC, SCTP_BUF_LEN(m_notify)); in sctp_notify_partial_delivery_indication()
3691 sctp_sblog(sb, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBRESULT, 0); in sctp_notify_partial_delivery_indication()
3693 control->end_added = 1; in sctp_notify_partial_delivery_indication()
3695 TAILQ_INSERT_AFTER(&stcb->sctp_ep->read_queue, stcb->asoc.control_pdapi, control, next); in sctp_notify_partial_delivery_indication()
3698 TAILQ_INSERT_TAIL(&stcb->sctp_ep->read_queue, control, next); in sctp_notify_partial_delivery_indication()
3711 struct sctp_queued_to_read *control; in sctp_notify_shutdown_event() local
3742 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_shutdown_event()
3745 if (control == NULL) { in sctp_notify_shutdown_event()
3750 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_shutdown_event()
3751 control->spec_flags = M_NOTIFICATION; in sctp_notify_shutdown_event()
3753 control->tail_mbuf = m_notify; in sctp_notify_shutdown_event()
3755 control, in sctp_notify_shutdown_event()
3765 struct sctp_queued_to_read *control; in sctp_notify_sender_dry_event() local
3790 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_sender_dry_event()
3793 if (control == NULL) { in sctp_notify_sender_dry_event()
3798 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_sender_dry_event()
3799 control->spec_flags = M_NOTIFICATION; in sctp_notify_sender_dry_event()
3801 control->tail_mbuf = m_notify; in sctp_notify_sender_dry_event()
3802 sctp_add_to_readq(stcb->sctp_ep, stcb, control, in sctp_notify_sender_dry_event()
3810 struct sctp_queued_to_read *control; in sctp_notify_stream_reset_add() local
3845 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_stream_reset_add()
3848 if (control == NULL) { in sctp_notify_stream_reset_add()
3853 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_stream_reset_add()
3854 control->spec_flags = M_NOTIFICATION; in sctp_notify_stream_reset_add()
3856 control->tail_mbuf = m_notify; in sctp_notify_stream_reset_add()
3858 control, in sctp_notify_stream_reset_add()
3866 struct sctp_queued_to_read *control; in sctp_notify_stream_reset_tsn() local
3895 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_stream_reset_tsn()
3898 if (control == NULL) { in sctp_notify_stream_reset_tsn()
3903 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_stream_reset_tsn()
3904 control->spec_flags = M_NOTIFICATION; in sctp_notify_stream_reset_tsn()
3906 control->tail_mbuf = m_notify; in sctp_notify_stream_reset_tsn()
3908 control, in sctp_notify_stream_reset_tsn()
3917 struct sctp_queued_to_read *control; in sctp_notify_stream_reset() local
3959 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_stream_reset()
3962 if (control == NULL) { in sctp_notify_stream_reset()
3967 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_stream_reset()
3968 control->spec_flags = M_NOTIFICATION; in sctp_notify_stream_reset()
3970 control->tail_mbuf = m_notify; in sctp_notify_stream_reset()
3972 control, in sctp_notify_stream_reset()
3981 struct sctp_queued_to_read *control; in sctp_notify_remote_error() local
4024 control = sctp_build_readq_entry(stcb, stcb->asoc.primary_destination, in sctp_notify_remote_error()
4027 if (control != NULL) { in sctp_notify_remote_error()
4028 control->length = SCTP_BUF_LEN(m_notify); in sctp_notify_remote_error()
4029 control->spec_flags = M_NOTIFICATION; in sctp_notify_remote_error()
4031 control->tail_mbuf = m_notify; in sctp_notify_remote_error()
4033 control, in sctp_notify_remote_error()
4768 struct sctp_queued_to_read *control, *nctl; in sctp_pull_off_control_to_new_inp() local
4791 TAILQ_FOREACH_SAFE(control, &old_inp->read_queue, next, nctl) { in sctp_pull_off_control_to_new_inp()
4793 if (control->stcb == stcb) { in sctp_pull_off_control_to_new_inp()
4795 TAILQ_REMOVE(&old_inp->read_queue, control, next); in sctp_pull_off_control_to_new_inp()
4796 TAILQ_INSERT_TAIL(&tmp_queue, control, next); in sctp_pull_off_control_to_new_inp()
4797 m = control->data; in sctp_pull_off_control_to_new_inp()
4800 …sctp_sblog(&old_so->so_rcv, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBFREE, SCTP_BUF_LEN(… in sctp_pull_off_control_to_new_inp()
4802 sctp_sbfree(control, stcb, &old_so->so_rcv, m); in sctp_pull_off_control_to_new_inp()
4804 sctp_sblog(&old_so->so_rcv, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBRESULT, 0); in sctp_pull_off_control_to_new_inp()
4815 TAILQ_FOREACH_SAFE(control, &tmp_queue, next, nctl) { in sctp_pull_off_control_to_new_inp()
4816 TAILQ_INSERT_TAIL(&new_inp->read_queue, control, next); in sctp_pull_off_control_to_new_inp()
4817 m = control->data; in sctp_pull_off_control_to_new_inp()
4820 …sctp_sblog(&new_so->so_rcv, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBALLOC, SCTP_BUF_LEN… in sctp_pull_off_control_to_new_inp()
4824 sctp_sblog(&new_so->so_rcv, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBRESULT, 0); in sctp_pull_off_control_to_new_inp()
4847 struct sctp_queued_to_read *control, in sctp_add_to_readq() argument
4870 if (!control->on_strm_q) { in sctp_add_to_readq()
4871 sctp_free_remote_addr(control->whoFrom); in sctp_add_to_readq()
4872 if (control->data) { in sctp_add_to_readq()
4873 sctp_m_freem(control->data); in sctp_add_to_readq()
4874 control->data = NULL; in sctp_add_to_readq()
4876 sctp_free_a_readq(stcb, control); in sctp_add_to_readq()
4882 if (!(control->spec_flags & M_NOTIFICATION)) { in sctp_add_to_readq()
4884 if (!control->do_not_ref_stcb) { in sctp_add_to_readq()
4888 m = control->data; in sctp_add_to_readq()
4889 control->held_length = 0; in sctp_add_to_readq()
4890 control->length = 0; in sctp_add_to_readq()
4896 control->data = sctp_m_free(m); in sctp_add_to_readq()
4897 m = control->data; in sctp_add_to_readq()
4903 control->tail_mbuf = prev; in sctp_add_to_readq()
4909 sctp_sblog(sb, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBALLOC, SCTP_BUF_LEN(m)); in sctp_add_to_readq()
4913 sctp_sblog(sb, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBRESULT, 0); in sctp_add_to_readq()
4915 atomic_add_int(&control->length, SCTP_BUF_LEN(m)); in sctp_add_to_readq()
4919 control->tail_mbuf = prev; in sctp_add_to_readq()
4922 if (!control->on_strm_q) { in sctp_add_to_readq()
4923 sctp_free_remote_addr(control->whoFrom); in sctp_add_to_readq()
4924 sctp_free_a_readq(stcb, control); in sctp_add_to_readq()
4931 control->end_added = 1; in sctp_add_to_readq()
4933 TAILQ_INSERT_TAIL(&inp->read_queue, control, next); in sctp_add_to_readq()
4934 control->on_read_q = 1; in sctp_add_to_readq()
5498 struct sctp_queued_to_read *control = NULL, *ctl = NULL, *nxt = NULL; in sctp_sorecvmsg() local
5652 control = TAILQ_FIRST(&inp->read_queue); in sctp_sorecvmsg()
5653 if (control == NULL) { in sctp_sorecvmsg()
5662 control = TAILQ_FIRST(&inp->read_queue); in sctp_sorecvmsg()
5663 if ((control == NULL) && (so->so_rcv.sb_cc != 0)) { in sctp_sorecvmsg()
5674 if ((control->length == 0) && in sctp_sorecvmsg()
5675 (control->do_not_ref_stcb)) { in sctp_sorecvmsg()
5685 control->held_length = 0; in sctp_sorecvmsg()
5686 if (control->data) { in sctp_sorecvmsg()
5691 m_tmp = control->data; in sctp_sorecvmsg()
5695 control->tail_mbuf = m_tmp; in sctp_sorecvmsg()
5696 control->end_added = 1; in sctp_sorecvmsg()
5700 control->length = cnt; in sctp_sorecvmsg()
5703 TAILQ_REMOVE(&inp->read_queue, control, next); in sctp_sorecvmsg()
5705 sctp_free_remote_addr(control->whoFrom); in sctp_sorecvmsg()
5706 sctp_free_a_readq(stcb, control); in sctp_sorecvmsg()
5714 if ((control->length == 0) && in sctp_sorecvmsg()
5715 (control->end_added == 1)) { in sctp_sorecvmsg()
5724 TAILQ_REMOVE(&inp->read_queue, control, next); in sctp_sorecvmsg()
5725 if (control->data) { in sctp_sorecvmsg()
5730 sctp_m_freem(control->data); in sctp_sorecvmsg()
5731 control->data = NULL; in sctp_sorecvmsg()
5734 if (control->aux_data) { in sctp_sorecvmsg()
5735 sctp_m_free(control->aux_data); in sctp_sorecvmsg()
5736 control->aux_data = NULL; in sctp_sorecvmsg()
5739 if (control->on_strm_q) { in sctp_sorecvmsg()
5741 control, so, control->on_strm_q); in sctp_sorecvmsg()
5744 sctp_free_remote_addr(control->whoFrom); in sctp_sorecvmsg()
5745 sctp_free_a_readq(stcb, control); in sctp_sorecvmsg()
5752 if (control->length == 0) { in sctp_sorecvmsg()
5756 ctl = TAILQ_NEXT(control, next); in sctp_sorecvmsg()
5758 if ((ctl->stcb != control->stcb) && (ctl->length) && in sctp_sorecvmsg()
5771 control = ctl; in sctp_sorecvmsg()
5787 control = ctl; in sctp_sorecvmsg()
5799 control->held_length = so->so_rcv.sb_cc; in sctp_sorecvmsg()
5803 control->held_length = 0; in sctp_sorecvmsg()
5813 control->some_taken++; in sctp_sorecvmsg()
5814 stcb = control->stcb; in sctp_sorecvmsg()
5816 if ((control->do_not_ref_stcb == 0) && in sctp_sorecvmsg()
5820 } else if (control->do_not_ref_stcb == 0) { in sctp_sorecvmsg()
5853 ((control->spec_flags & M_NOTIFICATION) == 0) && in sctp_sorecvmsg()
5854 control->do_not_ref_stcb == 0) { in sctp_sorecvmsg()
5855 stcb->asoc.strmin[control->sinfo_stream].delivery_started = 1; in sctp_sorecvmsg()
5860 sinfo->sinfo_stream = control->sinfo_stream; in sctp_sorecvmsg()
5861 sinfo->sinfo_ssn = (uint16_t)control->mid; in sctp_sorecvmsg()
5862 sinfo->sinfo_flags = control->sinfo_flags; in sctp_sorecvmsg()
5863 sinfo->sinfo_ppid = control->sinfo_ppid; in sctp_sorecvmsg()
5864 sinfo->sinfo_context = control->sinfo_context; in sctp_sorecvmsg()
5865 sinfo->sinfo_timetolive = control->sinfo_timetolive; in sctp_sorecvmsg()
5866 sinfo->sinfo_tsn = control->sinfo_tsn; in sctp_sorecvmsg()
5867 sinfo->sinfo_cumtsn = control->sinfo_cumtsn; in sctp_sorecvmsg()
5868 sinfo->sinfo_assoc_id = control->sinfo_assoc_id; in sctp_sorecvmsg()
5869 nxt = TAILQ_NEXT(control, next); in sctp_sorecvmsg()
5911 if ((control->do_not_ref_stcb == 0) && stcb) in sctp_sorecvmsg()
5918 if ((control->sinfo_flags >> 8) & SCTP_DATA_UNORDERED) { in sctp_sorecvmsg()
5935 entry->vtag = control->sinfo_assoc_id; in sctp_sorecvmsg()
5936 entry->strm = control->sinfo_stream; in sctp_sorecvmsg()
5937 entry->seq = (uint16_t)control->mid; in sctp_sorecvmsg()
5938 entry->sz = control->length; in sctp_sorecvmsg()
5939 entry->flgs = control->sinfo_flags; in sctp_sorecvmsg()
5946 switch (control->whoFrom->ro._l_addr.sa.sa_family) { in sctp_sorecvmsg()
5950 store.sin6 = control->whoFrom->ro._l_addr.sin6; in sctp_sorecvmsg()
5951 store.sin6.sin6_port = control->port_from; in sctp_sorecvmsg()
5959 in6_sin_2_v4mapsin6(&control->whoFrom->ro._l_addr.sin, in sctp_sorecvmsg()
5961 store.sin6.sin6_port = control->port_from; in sctp_sorecvmsg()
5964 store.sin = control->whoFrom->ro._l_addr.sin; in sctp_sorecvmsg()
5965 store.sin.sin_port = control->port_from; in sctp_sorecvmsg()
5969 store.sin = control->whoFrom->ro._l_addr.sin; in sctp_sorecvmsg()
5970 store.sin.sin_port = control->port_from; in sctp_sorecvmsg()
6000 m = control->data; in sctp_sorecvmsg()
6020 if ((control->do_not_ref_stcb == 0) && stcb && in sctp_sorecvmsg()
6032 (control->end_added)) { in sctp_sorecvmsg()
6034 if ((control->do_not_ref_stcb == 0) && in sctp_sorecvmsg()
6035 (control->stcb != NULL) && in sctp_sorecvmsg()
6036 ((control->spec_flags & M_NOTIFICATION) == 0)) in sctp_sorecvmsg()
6037 control->stcb->asoc.strmin[control->sinfo_stream].delivery_started = 0; in sctp_sorecvmsg()
6039 if (control->spec_flags & M_NOTIFICATION) { in sctp_sorecvmsg()
6051 control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBFREE, SCTP_BUF_LEN(m)); in sctp_sorecvmsg()
6053 sctp_sbfree(control, stcb, &so->so_rcv, m); in sctp_sorecvmsg()
6056 control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBRESULT, 0); in sctp_sorecvmsg()
6061 atomic_subtract_int(&control->length, (int)cp_len); in sctp_sorecvmsg()
6062 control->data = sctp_m_free(m); in sctp_sorecvmsg()
6063 m = control->data; in sctp_sorecvmsg()
6068 if (control->data == NULL) { in sctp_sorecvmsg()
6070 if ((control->end_added == 0) || in sctp_sorecvmsg()
6071 (TAILQ_NEXT(control, next) == NULL)) { in sctp_sorecvmsg()
6084 control->tail_mbuf = NULL; in sctp_sorecvmsg()
6086 if ((control->end_added) && ((out_flags & MSG_EOR) == 0)) { in sctp_sorecvmsg()
6094 if (control->spec_flags & M_NOTIFICATION) { in sctp_sorecvmsg()
6101 sctp_sblog(&so->so_rcv, control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBFREE, (int)cp_len); in sctp_sorecvmsg()
6104 if ((control->do_not_ref_stcb == 0) && in sctp_sorecvmsg()
6112 sctp_sblog(&so->so_rcv, control->do_not_ref_stcb ? NULL : stcb, in sctp_sorecvmsg()
6115 atomic_subtract_int(&control->length, (int)cp_len); in sctp_sorecvmsg()
6124 (control->do_not_ref_stcb == 0) && in sctp_sorecvmsg()
6136 if (control->length == 0) { in sctp_sorecvmsg()
6137 if (control->data) { in sctp_sorecvmsg()
6142 sctp_m_freem(control->data); in sctp_sorecvmsg()
6143 control->data = NULL; in sctp_sorecvmsg()
6151 TAILQ_REMOVE(&inp->read_queue, control, next); in sctp_sorecvmsg()
6153 if (control->held_length) { in sctp_sorecvmsg()
6155 control->held_length = 0; in sctp_sorecvmsg()
6158 if (control->aux_data) { in sctp_sorecvmsg()
6159 sctp_m_free(control->aux_data); in sctp_sorecvmsg()
6160 control->aux_data = NULL; in sctp_sorecvmsg()
6162 no_rcv_needed = control->do_not_ref_stcb; in sctp_sorecvmsg()
6163 sctp_free_remote_addr(control->whoFrom); in sctp_sorecvmsg()
6164 control->data = NULL; in sctp_sorecvmsg()
6166 if (control->on_strm_q) { in sctp_sorecvmsg()
6168 control, so, control->on_strm_q); in sctp_sorecvmsg()
6171 sctp_free_a_readq(stcb, control); in sctp_sorecvmsg()
6172 control = NULL; in sctp_sorecvmsg()
6185 if (control->end_added && in sctp_sorecvmsg()
6186 (control->data == NULL) && in sctp_sorecvmsg()
6187 (control->tail_mbuf == NULL)) { in sctp_sorecvmsg()
6191 no_rcv_needed = control->do_not_ref_stcb; in sctp_sorecvmsg()
6224 (control->do_not_ref_stcb == 0) && in sctp_sorecvmsg()
6244 if ((copied_so_far) && (control->length == 0) && in sctp_sorecvmsg()
6248 if (so->so_rcv.sb_cc <= control->held_length) { in sctp_sorecvmsg()
6253 control->held_length = 0; in sctp_sorecvmsg()
6259 if (control->length == 0) { in sctp_sorecvmsg()
6261 if (control->end_added == 1) { in sctp_sorecvmsg()
6264 if (control->pdapi_aborted) { in sctp_sorecvmsg()
6265 if ((control->do_not_ref_stcb == 0) && ((control->spec_flags & M_NOTIFICATION) == 0)) in sctp_sorecvmsg()
6266 control->stcb->asoc.strmin[control->sinfo_stream].delivery_started = 0; in sctp_sorecvmsg()
6270 if ((control->do_not_ref_stcb == 0) && ((control->spec_flags & M_NOTIFICATION) == 0)) in sctp_sorecvmsg()
6271 control->stcb->asoc.strmin[control->sinfo_stream].delivery_started = 0; in sctp_sorecvmsg()
6276 control->held_length = so->so_rcv.sb_cc; in sctp_sorecvmsg()
6280 } else if (control->data == NULL) { in sctp_sorecvmsg()
6286 if ((control->length > 0) && (control->data == NULL)) { in sctp_sorecvmsg()
6296 control->length = 0; in sctp_sorecvmsg()
6310 if ((control->end_added == 0) || in sctp_sorecvmsg()
6311 (TAILQ_NEXT(control, next) == NULL)) { in sctp_sorecvmsg()
6318 if (control->end_added) { in sctp_sorecvmsg()
6320 if ((control->do_not_ref_stcb == 0) && in sctp_sorecvmsg()
6321 (control->stcb != NULL) && in sctp_sorecvmsg()
6322 ((control->spec_flags & M_NOTIFICATION) == 0)) in sctp_sorecvmsg()
6323 control->stcb->asoc.strmin[control->sinfo_stream].delivery_started = 0; in sctp_sorecvmsg()
6325 if (control->spec_flags & M_NOTIFICATION) { in sctp_sorecvmsg()
6328 uio->uio_resid = control->length; in sctp_sorecvmsg()
6329 *mp = control->data; in sctp_sorecvmsg()
6330 m = control->data; in sctp_sorecvmsg()
6334 control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBFREE, SCTP_BUF_LEN(m)); in sctp_sorecvmsg()
6336 sctp_sbfree(control, stcb, &so->so_rcv, m); in sctp_sorecvmsg()
6341 control->do_not_ref_stcb ? NULL : stcb, SCTP_LOG_SBRESULT, 0); in sctp_sorecvmsg()
6345 control->data = control->tail_mbuf = NULL; in sctp_sorecvmsg()
6346 control->length = 0; in sctp_sorecvmsg()
6372 (control && (control->do_not_ref_stcb == 0)) && in sctp_sorecvmsg()