Lines Matching refs:asoc

74 	struct sctp_association *asoc = NULL;
90 asoc = chunk->asoc;
91 error = msg->send_error ?: asoc->outqueue.error;
94 if (sctp_ulpevent_type_enabled(asoc->subscribe,
96 ev = sctp_ulpevent_make_send_failed(asoc, chunk, sent,
99 asoc->stream.si->enqueue_event(&asoc->ulpq, ev);
102 if (sctp_ulpevent_type_enabled(asoc->subscribe,
104 ev = sctp_ulpevent_make_send_failed_event(asoc, chunk,
108 asoc->stream.si->enqueue_event(&asoc->ulpq, ev);
146 struct sctp_datamsg *sctp_datamsg_from_user(struct sctp_association *asoc,
165 if (asoc->peer.prsctp_capable && sinfo->sinfo_timetolive &&
174 max_data = asoc->frag_point;
176 max_data = sctp_min_frag_point(sctp_sk(asoc->base.sk),
177 sctp_datachk_len(&asoc->stream));
178 pr_warn_ratelimited("%s: asoc:%p frag_point is zero, forcing max_data to default minimum (%zu)",
179 __func__, asoc, max_data);
186 if (sctp_auth_send_cid(SCTP_CID_DATA, asoc)) {
187 struct sctp_hmac *hmac_desc = sctp_auth_asoc_get_hmac(asoc);
194 sinfo->sinfo_ssn != asoc->active_key_id) {
195 shkey = sctp_auth_get_shkey(asoc, sinfo->sinfo_ssn);
201 shkey = asoc->shkey;
214 if (timer_pending(&asoc->timers[SCTP_EVENT_TIMEOUT_SACK]) &&
215 asoc->outqueue.out_qlen == 0 &&
216 list_empty(&asoc->outqueue.retransmit) &&
221 if (asoc->state < SCTP_STATE_COOKIE_ECHOED)
228 SCTP_INC_STATS(asoc->base.net,
262 chunk = asoc->stream.si->make_datafrag(asoc, sinfo, len, frag,
302 if (!chunk->asoc->peer.prsctp_capable)
315 SCTP_SO(&chunk->asoc->stream,
319 chunk->asoc->abandoned_sent[SCTP_PR_INDEX(TTL)]++;
322 chunk->asoc->abandoned_unsent[SCTP_PR_INDEX(TTL)]++;
330 SCTP_SO(&chunk->asoc->stream,
333 chunk->asoc->abandoned_sent[SCTP_PR_INDEX(RTX)]++;