/openbmc/linux/net/sctp/ |
H A D | ulpqueue.c | 32 static struct sctp_ulpevent *sctp_ulpq_reasm(struct sctp_ulpq *ulpq, 36 static void sctp_ulpq_reasm_drain(struct sctp_ulpq *ulpq); 41 void sctp_ulpq_init(struct sctp_ulpq *ulpq, struct sctp_association *asoc) in sctp_ulpq_init() argument 43 memset(ulpq, 0, sizeof(struct sctp_ulpq)); in sctp_ulpq_init() 45 ulpq->asoc = asoc; in sctp_ulpq_init() 46 skb_queue_head_init(&ulpq->reasm); in sctp_ulpq_init() 47 skb_queue_head_init(&ulpq->reasm_uo); in sctp_ulpq_init() 48 skb_queue_head_init(&ulpq->lobby); in sctp_ulpq_init() 49 ulpq->pd_mode = 0; in sctp_ulpq_init() 54 void sctp_ulpq_flush(struct sctp_ulpq *ulpq) in sctp_ulpq_flush() argument [all …]
|
H A D | stream_interleave.c | 124 static void sctp_intl_store_reasm(struct sctp_ulpq *ulpq, in sctp_intl_store_reasm() argument 130 pos = skb_peek_tail(&ulpq->reasm); in sctp_intl_store_reasm() 132 __skb_queue_tail(&ulpq->reasm, sctp_event2skb(event)); in sctp_intl_store_reasm() 143 __skb_queue_tail(&ulpq->reasm, sctp_event2skb(event)); in sctp_intl_store_reasm() 150 __skb_queue_tail(&ulpq->reasm, sctp_event2skb(event)); in sctp_intl_store_reasm() 155 skb_queue_walk(&ulpq->reasm, pos) { in sctp_intl_store_reasm() 175 __skb_queue_tail(&ulpq->reasm, sctp_event2skb(event)); in sctp_intl_store_reasm() 177 __skb_queue_before(&ulpq->reasm, loc, sctp_event2skb(event)); in sctp_intl_store_reasm() 181 struct sctp_ulpq *ulpq, in sctp_intl_retrieve_partial() argument 192 sin = sctp_stream_in(&ulpq->asoc->stream, event->stream); in sctp_intl_retrieve_partial() [all …]
|
H A D | sm_sideeffect.c | 659 asoc->stream.si->abort_pd(&asoc->ulpq, GFP_ATOMIC); in sctp_cmd_assoc_failed() 980 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_process_operr() 1053 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_assoc_change() 1063 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_peer_no_auth() 1075 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_cmd_adaptation_ind() 1346 asoc->stream.si->report_ftsn(&asoc->ulpq, cmd->obj.u32); in sctp_cmd_interpreter() 1350 asoc->stream.si->handle_ftsn(&asoc->ulpq, in sctp_cmd_interpreter() 1458 __func__, cmd->obj.chunk, &asoc->ulpq); in sctp_cmd_interpreter() 1460 asoc->stream.si->ulpevent_data(&asoc->ulpq, in sctp_cmd_interpreter() 1468 __func__, cmd->obj.ulpevent, &asoc->ulpq); in sctp_cmd_interpreter() [all …]
|
H A D | chunk.c | 99 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_datamsg_destroy() 108 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_datamsg_destroy()
|
H A D | associola.c | 230 sctp_ulpq_init(&asoc->ulpq, asoc); in sctp_association_init() 343 sctp_ulpq_free(&asoc->ulpq); in sctp_association_free() 1151 sctp_ulpq_flush(&asoc->ulpq); in sctp_assoc_update()
|
H A D | stream.c | 731 asoc->stream.si->report_ftsn(&asoc->ulpq, max_tsn_seen); in sctp_process_strreset_tsnreq() 1008 asoc->stream.si->report_ftsn(&asoc->ulpq, mtsn); in sctp_process_strreset_resp()
|
H A D | socket.c | 198 sctp_skb_for_each(skb, &asoc->ulpq.lobby, tmp) in sctp_for_each_rx_skb() 201 sctp_skb_for_each(skb, &asoc->ulpq.reasm, tmp) in sctp_for_each_rx_skb() 204 sctp_skb_for_each(skb, &asoc->ulpq.reasm_uo, tmp) in sctp_for_each_rx_skb() 1518 if (data_was_unread || !skb_queue_empty(&asoc->ulpq.lobby) || in sctp_close() 1519 !skb_queue_empty(&asoc->ulpq.reasm) || in sctp_close() 1520 !skb_queue_empty(&asoc->ulpq.reasm_uo) || in sctp_close() 2250 asoc->stream.si->enqueue_event(&asoc->ulpq, event); in sctp_setsockopt_events() 4281 asoc->stream.si->enqueue_event(&asoc->ulpq, event); in sctp_assoc_ulpevent_type_set() 9180 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_wfree() 9600 atomic_set(&sctp_sk(newsk)->pd_mode, assoc->ulpq.pd_mode); in sctp_sock_migrate() [all …]
|
H A D | auth.c | 1014 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_auth_deact_key_id()
|
H A D | ulpevent.c | 355 asoc->stream.si->enqueue_event(&asoc->ulpq, event); in sctp_ulpevent_notify_peer_addr_change()
|
H A D | sm_make_chunk.c | 91 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_control_release_owner()
|
H A D | sm_statefuns.c | 6554 if ((datalen >= asoc->rwnd) && (!asoc->ulpq.pd_mode)) { in sctp_eat_data()
|
/openbmc/linux/include/net/sctp/ |
H A D | stream_interleave.h | 28 int (*ulpevent_data)(struct sctp_ulpq *ulpq, 30 int (*enqueue_event)(struct sctp_ulpq *ulpq, 32 void (*renege_events)(struct sctp_ulpq *ulpq, 34 void (*start_pd)(struct sctp_ulpq *ulpq, gfp_t gfp); 35 void (*abort_pd)(struct sctp_ulpq *ulpq, gfp_t gfp); 39 void (*report_ftsn)(struct sctp_ulpq *ulpq, __u32 ftsn); 40 void (*handle_ftsn)(struct sctp_ulpq *ulpq,
|
H A D | ulpqueue.h | 38 void sctp_ulpq_init(struct sctp_ulpq *ulpq, struct sctp_association *asoc); 39 void sctp_ulpq_flush(struct sctp_ulpq *ulpq); 61 void sctp_ulpq_skip(struct sctp_ulpq *ulpq, __u16 sid, __u16 ssn); 65 __u16 sctp_ulpq_renege_list(struct sctp_ulpq *ulpq,
|
H A D | structs.h | 1962 struct sctp_ulpq ulpq; member
|