/Linux-v4.19/net/sctp/ |
D | ulpqueue.c | 47 static struct sctp_ulpevent *sctp_ulpq_reasm(struct sctp_ulpq *ulpq, 51 static void sctp_ulpq_reasm_drain(struct sctp_ulpq *ulpq); 56 struct sctp_ulpq *sctp_ulpq_init(struct sctp_ulpq *ulpq, in sctp_ulpq_init() argument 59 memset(ulpq, 0, sizeof(struct sctp_ulpq)); in sctp_ulpq_init() 61 ulpq->asoc = asoc; in sctp_ulpq_init() 62 skb_queue_head_init(&ulpq->reasm); in sctp_ulpq_init() 63 skb_queue_head_init(&ulpq->reasm_uo); in sctp_ulpq_init() 64 skb_queue_head_init(&ulpq->lobby); in sctp_ulpq_init() 65 ulpq->pd_mode = 0; in sctp_ulpq_init() 67 return ulpq; in sctp_ulpq_init() [all …]
|
D | stream_interleave.c | 139 static void sctp_intl_store_reasm(struct sctp_ulpq *ulpq, in sctp_intl_store_reasm() argument 145 pos = skb_peek_tail(&ulpq->reasm); in sctp_intl_store_reasm() 147 __skb_queue_tail(&ulpq->reasm, sctp_event2skb(event)); in sctp_intl_store_reasm() 158 __skb_queue_tail(&ulpq->reasm, sctp_event2skb(event)); in sctp_intl_store_reasm() 165 __skb_queue_tail(&ulpq->reasm, sctp_event2skb(event)); in sctp_intl_store_reasm() 169 skb_queue_walk(&ulpq->reasm, pos) { in sctp_intl_store_reasm() 185 __skb_queue_before(&ulpq->reasm, pos, sctp_event2skb(event)); in sctp_intl_store_reasm() 189 struct sctp_ulpq *ulpq, in sctp_intl_retrieve_partial() argument 200 sin = sctp_stream_in(&ulpq->asoc->stream, event->stream); in sctp_intl_retrieve_partial() 202 skb_queue_walk(&ulpq->reasm, pos) { in sctp_intl_retrieve_partial() [all …]
|
D | sm_sideeffect.c | 635 asoc->stream.si->abort_pd(&asoc->ulpq, GFP_ATOMIC); in sctp_cmd_assoc_failed() 975 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_process_operr() 1049 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_assoc_change() 1059 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_peer_no_auth() 1071 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_adaptation_ind() 1369 asoc->stream.si->report_ftsn(&asoc->ulpq, cmd->obj.u32); in sctp_cmd_interpreter() 1373 asoc->stream.si->handle_ftsn(&asoc->ulpq, in sctp_cmd_interpreter() 1476 __func__, cmd->obj.chunk, &asoc->ulpq); in sctp_cmd_interpreter() 1478 asoc->stream.si->ulpevent_data(&asoc->ulpq, in sctp_cmd_interpreter() 1486 __func__, cmd->obj.ulpevent, &asoc->ulpq); in sctp_cmd_interpreter() [all …]
|
D | associola.c | 248 if (!sctp_ulpq_init(&asoc->ulpq, asoc)) in sctp_association_init() 362 sctp_ulpq_free(&asoc->ulpq); in sctp_association_free() 866 asoc->stream.si->enqueue_event(&asoc->ulpq, event); in sctp_assoc_control_transport() 1166 sctp_ulpq_flush(&asoc->ulpq); in sctp_assoc_update()
|
D | chunk.c | 127 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_datamsg_destroy()
|
D | stream.c | 803 asoc->stream.si->report_ftsn(&asoc->ulpq, max_tsn_seen); in sctp_process_strreset_tsnreq() 1081 asoc->stream.si->report_ftsn(&asoc->ulpq, mtsn); in sctp_process_strreset_resp()
|
D | socket.c | 214 sctp_skb_for_each(skb, &asoc->ulpq.lobby, tmp) in sctp_for_each_rx_skb() 217 sctp_skb_for_each(skb, &asoc->ulpq.reasm, tmp) in sctp_for_each_rx_skb() 220 sctp_skb_for_each(skb, &asoc->ulpq.reasm_uo, tmp) in sctp_for_each_rx_skb() 1551 if (data_was_unread || !skb_queue_empty(&asoc->ulpq.lobby) || in sctp_close() 1552 !skb_queue_empty(&asoc->ulpq.reasm) || in sctp_close() 1553 !skb_queue_empty(&asoc->ulpq.reasm_uo) || in sctp_close() 2347 asoc->stream.si->enqueue_event(&asoc->ulpq, event); in sctp_setsockopt_events() 8491 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_wfree() 8903 atomic_set(&sctp_sk(newsk)->pd_mode, assoc->ulpq.pd_mode); in sctp_sock_migrate() 8909 if (assoc->ulpq.pd_mode) { in sctp_sock_migrate() [all …]
|
D | auth.c | 1007 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_auth_deact_key_id()
|
D | sm_make_chunk.c | 106 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_control_release_owner()
|
D | sm_statefuns.c | 6374 if ((datalen >= asoc->rwnd) && (!asoc->ulpq.pd_mode)) { in sctp_eat_data()
|
/Linux-v4.19/include/net/sctp/ |
D | stream_interleave.h | 43 int (*ulpevent_data)(struct sctp_ulpq *ulpq, 45 int (*enqueue_event)(struct sctp_ulpq *ulpq, 47 void (*renege_events)(struct sctp_ulpq *ulpq, 49 void (*start_pd)(struct sctp_ulpq *ulpq, gfp_t gfp); 50 void (*abort_pd)(struct sctp_ulpq *ulpq, gfp_t gfp); 54 void (*report_ftsn)(struct sctp_ulpq *ulpq, __u32 ftsn); 55 void (*handle_ftsn)(struct sctp_ulpq *ulpq,
|
D | ulpqueue.h | 55 void sctp_ulpq_flush(struct sctp_ulpq *ulpq); 77 void sctp_ulpq_skip(struct sctp_ulpq *ulpq, __u16 sid, __u16 ssn); 81 __u16 sctp_ulpq_renege_list(struct sctp_ulpq *ulpq,
|
D | structs.h | 1935 struct sctp_ulpq ulpq; member
|