Home
last modified time | relevance | path

Searched refs:asoc (Results 1 – 25 of 52) sorted by relevance

123

/linux/net/sctp/
H A Dassociola.c43 static void sctp_select_active_and_retran_path(struct sctp_association *asoc);
45 static void sctp_assoc_free_asconf_acks(struct sctp_association *asoc);
46 static void sctp_assoc_free_asconf_queue(struct sctp_association *asoc);
52 struct sctp_association *asoc, in sctp_association_init() argument
65 asoc->ep = (struct sctp_endpoint *)ep; in sctp_association_init()
66 asoc->base.sk = (struct sock *)sk; in sctp_association_init()
67 asoc->base.net = sock_net(sk); in sctp_association_init()
69 sctp_endpoint_hold(asoc->ep); in sctp_association_init()
70 sock_hold(asoc->base.sk); in sctp_association_init()
73 asoc->base.type = SCTP_EP_TYPE_ASSOCIATION; in sctp_association_init()
[all …]
H A Dsm_sideeffect.c44 struct sctp_association *asoc,
53 struct sctp_association **asoc,
64 static void sctp_do_ecn_ce_work(struct sctp_association *asoc, in sctp_do_ecn_ce_work() argument
69 asoc->last_ecne_tsn = lowest_tsn; in sctp_do_ecn_ce_work()
70 asoc->need_ecne = 1; in sctp_do_ecn_ce_work()
85 static struct sctp_chunk *sctp_do_ecn_ecne_work(struct sctp_association *asoc, in sctp_do_ecn_ecne_work() argument
101 if (TSN_lt(asoc->last_cwr_tsn, lowest_tsn)) { in sctp_do_ecn_ecne_work()
107 transport = sctp_assoc_lookup_tsn(asoc, lowest_tsn); in sctp_do_ecn_ecne_work()
113 asoc->last_cwr_tsn = lowest_tsn; in sctp_do_ecn_ecne_work()
119 repl = sctp_make_cwr(asoc, asoc->last_cwr_tsn, chunk); in sctp_do_ecn_ecne_work()
[all …]
H A Dstream.c27 #define SCTP_STRRESET_TEST(asoc, type) \ argument
28 ((asoc)->strreset_outstanding & SCTP_STRRESET_MASK(type))
29 #define SCTP_STRRESET_SET(asoc, type) \ argument
30 ((asoc)->strreset_outstanding |= SCTP_STRRESET_MASK(type))
31 #define SCTP_STRRESET_CLEAR(asoc, type) \ argument
32 ((asoc)->strreset_outstanding &= ~SCTP_STRRESET_MASK(type))
36 struct sctp_association *asoc; in sctp_stream_shrink_out() local
40 asoc = container_of(stream, struct sctp_association, stream); in sctp_stream_shrink_out()
41 outq = &asoc->outqueue; in sctp_stream_shrink_out()
56 if (asoc->peer.prsctp_capable && in sctp_stream_shrink_out()
[all …]
H A Dsm_statefuns.c55 const struct sctp_association *asoc,
58 static int sctp_eat_data(const struct sctp_association *asoc,
63 const struct sctp_association *asoc,
67 const struct sctp_association *asoc,
74 const struct sctp_association *asoc,
82 const struct sctp_association *asoc,
89 const struct sctp_association *asoc,
96 const struct sctp_association *asoc,
106 const struct sctp_association *asoc,
112 const struct sctp_association *asoc,
[all …]
H A Dsm_make_chunk.c49 static struct sctp_chunk *sctp_make_control(const struct sctp_association *asoc,
52 static struct sctp_chunk *sctp_make_data(const struct sctp_association *asoc,
54 static struct sctp_chunk *_sctp_make_chunk(const struct sctp_association *asoc,
59 const struct sctp_association *asoc,
63 static int sctp_process_param(struct sctp_association *asoc,
77 struct sctp_association *asoc = chunk->asoc; in sctp_control_release_owner() local
87 ev = sctp_ulpevent_make_authkey(asoc, shkey->key_id, in sctp_control_release_owner()
91 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_control_release_owner()
99 struct sctp_association *asoc = chunk->asoc; in sctp_control_set_owner_w() local
110 chunk->shkey = asoc->shkey; in sctp_control_set_owner_w()
[all …]
H A Dsocket.c74 static int sctp_wait_for_sndbuf(struct sctp_association *asoc,
88 static int sctp_send_asconf(struct sctp_association *asoc,
108 static inline int sctp_wspace(struct sctp_association *asoc) in sctp_wspace() argument
110 struct sock *sk = asoc->base.sk; in sctp_wspace()
112 return asoc->ep->sndbuf_policy ? sk->sk_sndbuf - asoc->sndbuf_used in sctp_wspace()
127 struct sctp_association *asoc = chunk->asoc; in sctp_set_owner_w() local
128 struct sock *sk = asoc->base.sk; in sctp_set_owner_w()
131 sctp_association_hold(asoc); in sctp_set_owner_w()
166 sctp_for_each_tx_datachunk(struct sctp_association * asoc,bool clear,void (* cb)(struct sctp_chunk *)) sctp_for_each_tx_datachunk() argument
193 sctp_for_each_rx_skb(struct sctp_association * asoc,struct sock * sk,void (* cb)(struct sk_buff *,struct sock *)) sctp_for_each_rx_skb() argument
235 struct sctp_association *asoc = NULL; sctp_id2assoc() local
469 sctp_send_asconf(struct sctp_association * asoc,struct sctp_chunk * chunk) sctp_send_asconf() argument
562 struct sctp_association *asoc; sctp_send_asconf_add_ip() local
764 struct sctp_association *asoc; sctp_send_asconf_del_ip() local
1073 struct sctp_association *asoc; sctp_connect_new_asoc() local
1135 sctp_connect_add_peer(struct sctp_association * asoc,union sctp_addr * daddr,int addr_len) sctp_connect_add_peer() argument
1173 struct sctp_association *asoc; __sctp_connect() local
1488 struct sctp_association *asoc; sctp_close() local
1662 struct sctp_association *asoc; sctp_sendmsg_new_asoc() local
1751 sctp_sendmsg_check_sflags(struct sctp_association * asoc,__u16 sflags,struct msghdr * msg,size_t msg_len) sctp_sendmsg_check_sflags() argument
1789 sctp_sendmsg_to_asoc(struct sctp_association * asoc,struct msghdr * msg,size_t msg_len,struct sctp_transport * transport,struct sctp_sndrcvinfo * sinfo) sctp_sendmsg_to_asoc() argument
1916 sctp_sendmsg_update_sinfo(struct sctp_association * asoc,struct sctp_sndrcvinfo * sinfo,struct sctp_cmsgs * cmsgs) sctp_sendmsg_update_sinfo() argument
1947 struct sctp_association *asoc, *tmp; sctp_sendmsg() local
2232 struct sctp_association *asoc; sctp_setsockopt_events() local
2436 sctp_apply_peer_addr_params(struct sctp_paddrparams * params,struct sctp_transport * trans,struct sctp_association * asoc,struct sctp_sock * sp,int hb_change,int pmtud_change,int sackdelay_change) sctp_apply_peer_addr_params() argument
2630 struct sctp_association *asoc = NULL; sctp_setsockopt_peer_addr_params() local
2715 sctp_apply_asoc_delayed_ack(struct sctp_sack_info * params,struct sctp_association * asoc) sctp_apply_asoc_delayed_ack() argument
2790 struct sctp_association *asoc; __sctp_setsockopt_delayed_ack() local
2916 struct sctp_association *asoc; sctp_setsockopt_default_send_param() local
2974 struct sctp_association *asoc; sctp_setsockopt_default_sndinfo() local
3090 struct sctp_association *asoc; sctp_setsockopt_rtoinfo() local
3155 struct sctp_association *asoc; sctp_setsockopt_associnfo() local
3265 struct sctp_association *asoc; sctp_setsockopt_maxseg() local
3325 struct sctp_association *asoc = NULL; sctp_setsockopt_peer_primary_addr() local
3412 struct sctp_association *asoc; sctp_setsockopt_context() local
3531 struct sctp_association *asoc; sctp_setsockopt_maxburst() local
3643 struct sctp_association *asoc; sctp_setsockopt_auth_key() local
3704 struct sctp_association *asoc; sctp_setsockopt_active_key() local
3752 struct sctp_association *asoc; sctp_setsockopt_del_key() local
3800 struct sctp_association *asoc; sctp_setsockopt_deactivate_key() local
3889 struct sctp_association *asoc; sctp_setsockopt_paddr_thresholds() local
3973 struct sctp_association *asoc; sctp_setsockopt_pr_supported() local
3993 struct sctp_association *asoc; sctp_setsockopt_default_prinfo() local
4044 struct sctp_association *asoc; sctp_setsockopt_reconfig_supported() local
4068 struct sctp_association *asoc; sctp_setsockopt_enable_strreset() local
4109 struct sctp_association *asoc; sctp_setsockopt_reset_streams() local
4132 struct sctp_association *asoc; sctp_setsockopt_reset_assoc() local
4148 struct sctp_association *asoc; sctp_setsockopt_add_streams() local
4165 struct sctp_association *asoc; sctp_setsockopt_scheduler() local
4207 struct sctp_association *asoc; sctp_setsockopt_scheduler_value() local
4243 struct sctp_association *asoc; sctp_setsockopt_interleaving_supported() local
4278 sctp_assoc_ulpevent_type_set(struct sctp_event * param,struct sctp_association * asoc) sctp_assoc_ulpevent_type_set() argument
4302 struct sctp_association *asoc; sctp_setsockopt_event() local
4345 struct sctp_association *asoc; sctp_setsockopt_asconf_supported() local
4375 struct sctp_association *asoc; sctp_setsockopt_auth_supported() local
4409 struct sctp_association *asoc; sctp_setsockopt_ecn_supported() local
4431 struct sctp_association *asoc; sctp_setsockopt_pf_expose() local
4459 struct sctp_association *asoc; sctp_setsockopt_encap_port() local
4509 struct sctp_association *asoc; sctp_setsockopt_probe_interval() local
4857 sctp_clone_sock(struct sock * sk,struct sctp_association * asoc,enum sctp_socket_type type) sctp_clone_sock() argument
4936 struct sctp_association *asoc; sctp_accept() local
5218 struct sctp_association *asoc; sctp_shutdown() local
5227 sctp_get_sctp_info(struct sock * sk,struct sctp_association * asoc,struct sctp_info * info) sctp_get_sctp_info() argument
5491 struct sctp_association *asoc = NULL; sctp_getsockopt_sctp_status() local
5705 struct sctp_association *asoc = sctp_id2assoc(sk, id); sctp_do_peeloff() local
5987 struct sctp_association *asoc = NULL; sctp_getsockopt_peer_addr_params() local
6130 struct sctp_association *asoc = NULL; sctp_getsockopt_delayed_ack() local
6215 struct sctp_association *asoc; sctp_getsockopt_peer_addrs() local
6312 struct sctp_association *asoc; sctp_getsockopt_local_addrs() local
6420 struct sctp_association *asoc; sctp_getsockopt_primary_addr() local
6502 struct sctp_association *asoc; sctp_getsockopt_default_send_param() local
6548 struct sctp_association *asoc; sctp_getsockopt_default_sndinfo() local
6627 struct sctp_association *asoc; sctp_getsockopt_rtoinfo() local
6683 struct sctp_association *asoc; sctp_getsockopt_associnfo() local
6773 struct sctp_association *asoc; sctp_getsockopt_context() local
6830 struct sctp_association *asoc; sctp_getsockopt_maxseg() local
6925 struct sctp_association *asoc; sctp_getsockopt_maxburst() local
7001 struct sctp_association *asoc; sctp_getsockopt_active_key() local
7037 struct sctp_association *asoc; sctp_getsockopt_peer_auth_chunks() local
7082 struct sctp_association *asoc; sctp_getsockopt_local_auth_chunks() local
7136 struct sctp_association *asoc; sctp_getsockopt_assoc_number() local
7192 struct sctp_association *asoc; sctp_getsockopt_assoc_ids() local
7244 struct sctp_association *asoc; sctp_getsockopt_paddr_thresholds() local
7302 struct sctp_association *asoc = NULL; sctp_getsockopt_assoc_stats() local
7400 struct sctp_association *asoc; sctp_getsockopt_pr_supported() local
7439 struct sctp_association *asoc; sctp_getsockopt_default_prinfo() local
7485 struct sctp_association *asoc; sctp_getsockopt_pr_assocstatus() local
7544 struct sctp_association *asoc; sctp_getsockopt_pr_streamstatus() local
7608 struct sctp_association *asoc; sctp_getsockopt_reconfig_supported() local
7647 struct sctp_association *asoc; sctp_getsockopt_enable_strreset() local
7686 struct sctp_association *asoc; sctp_getsockopt_scheduler() local
7725 struct sctp_association *asoc; sctp_getsockopt_scheduler_value() local
7767 struct sctp_association *asoc; sctp_getsockopt_interleaving_supported() local
7824 struct sctp_association *asoc; sctp_getsockopt_event() local
7861 struct sctp_association *asoc; sctp_getsockopt_asconf_supported() local
7900 struct sctp_association *asoc; sctp_getsockopt_auth_supported() local
7939 struct sctp_association *asoc; sctp_getsockopt_ecn_supported() local
7978 struct sctp_association *asoc; sctp_getsockopt_pf_expose() local
8015 struct sctp_association *asoc; sctp_getsockopt_encap_port() local
8076 struct sctp_association *asoc; sctp_getsockopt_probe_interval() local
9138 __sctp_write_space(struct sctp_association * asoc) __sctp_write_space() argument
9170 sctp_wake_up_waiters(struct sock * sk,struct sctp_association * asoc) sctp_wake_up_waiters() argument
9216 struct sctp_association *asoc = chunk->asoc; sctp_wfree() local
9271 sctp_wait_for_sndbuf(struct sctp_association * asoc,struct sctp_transport * transport,long * timeo_p,size_t msg_len) sctp_wait_for_sndbuf() argument
9361 struct sctp_association *asoc; sctp_write_space() local
9388 sctp_wait_for_connect(struct sctp_association * asoc,long * timeo_p) sctp_wait_for_connect() argument
[all...]
H A Dauth.c223 const struct sctp_association *asoc, in sctp_auth_make_local_vector() argument
227 (struct sctp_random_param *)asoc->c.auth_random, in sctp_auth_make_local_vector()
228 (struct sctp_chunks_param *)asoc->c.auth_chunks, in sctp_auth_make_local_vector()
229 (struct sctp_hmac_algo_param *)asoc->c.auth_hmacs, gfp); in sctp_auth_make_local_vector()
234 const struct sctp_association *asoc, in sctp_auth_make_peer_vector() argument
237 return sctp_auth_make_key_vector(asoc->peer.peer_random, in sctp_auth_make_peer_vector()
238 asoc->peer.peer_chunks, in sctp_auth_make_peer_vector()
239 asoc->peer.peer_hmacs, in sctp_auth_make_peer_vector()
288 const struct sctp_association *asoc, in sctp_auth_asoc_create_secret() argument
312 local_key_vector = sctp_auth_make_local_vector(asoc, gfp); in sctp_auth_asoc_create_secret()
[all …]
H A Dstream_sched.c60 struct sctp_stream *stream = &q->asoc->stream; in sctp_sched_fcfs_dequeue()
148 int sctp_sched_set_sched(struct sctp_association *asoc, in sctp_sched_set_sched() argument
151 const struct sctp_sched_ops *old = asoc->outqueue.sched; in sctp_sched_set_sched()
165 sctp_sched_free_sched(&asoc->stream); in sctp_sched_set_sched()
167 asoc->outqueue.sched = n; in sctp_sched_set_sched()
168 n->init(&asoc->stream); in sctp_sched_set_sched()
169 for (i = 0; i < asoc->stream.outcnt; i++) { in sctp_sched_set_sched()
170 if (!SCTP_SO(&asoc->stream, i)->ext) in sctp_sched_set_sched()
173 ret = n->init_sid(&asoc->stream, i, GFP_ATOMIC); in sctp_sched_set_sched()
179 list_for_each_entry(ch, &asoc in sctp_sched_set_sched()
195 sctp_sched_get_sched(struct sctp_association * asoc) sctp_sched_get_sched() argument
206 sctp_sched_set_value(struct sctp_association * asoc,__u16 sid,__u16 value,gfp_t gfp) sctp_sched_set_value() argument
223 sctp_sched_get_value(struct sctp_association * asoc,__u16 sid,__u16 * value) sctp_sched_get_value() argument
275 struct sctp_association *asoc; sctp_sched_ops_from_stream() local
[all...]
H A Doutqueue.c69 oute = SCTP_SO(&q->asoc->stream, stream)->ext; in sctp_outq_head_data()
90 oute = SCTP_SO(&q->asoc->stream, stream)->ext; in sctp_outq_tail_data()
191 void sctp_outq_init(struct sctp_association *asoc, struct sctp_outq *q) in sctp_outq_init() argument
195 q->asoc = asoc; in sctp_outq_init()
201 sctp_sched_set_sched(asoc, sctp_sk(asoc->base.sk)->default_ss); in sctp_outq_init()
213 list_for_each_entry(transport, &q->asoc->peer.transport_addr_list, in __sctp_outq_teardown()
270 sctp_outq_init(q->asoc, q); in sctp_outq_teardown()
283 struct net *net = q->asoc->base.net; in sctp_outq_tail()
300 if (chunk->asoc->peer.prsctp_capable && in sctp_outq_tail()
302 chunk->asoc->sent_cnt_removable++; in sctp_outq_tail()
[all …]
H A Dulpevent.c32 struct sctp_association *asoc);
77 const struct sctp_association *asoc) in sctp_ulpevent_set_owner() argument
85 sctp_association_hold((struct sctp_association *)asoc); in sctp_ulpevent_set_owner()
87 event->asoc = (struct sctp_association *)asoc; in sctp_ulpevent_set_owner()
88 atomic_add(event->rmem_len, &event->asoc->rmem_alloc); in sctp_ulpevent_set_owner()
89 sctp_skb_set_owner_r(skb, asoc->base.sk); in sctp_ulpevent_set_owner()
91 chunk->head_skb->sk = asoc->base.sk; in sctp_ulpevent_set_owner()
97 struct sctp_association *asoc = event->asoc; in sctp_ulpevent_release_owner() local
99 atomic_sub(event->rmem_len, &asoc->rmem_alloc); in sctp_ulpevent_release_owner()
100 sctp_association_put(asoc); in sctp_ulpevent_release_owner()
[all …]
H A Dchunk.c74 struct sctp_association *asoc = NULL; in sctp_datamsg_destroy() local
90 asoc = chunk->asoc; in sctp_datamsg_destroy()
91 error = msg->send_error ?: asoc->outqueue.error; in sctp_datamsg_destroy()
94 if (sctp_ulpevent_type_enabled(asoc->subscribe, in sctp_datamsg_destroy()
96 ev = sctp_ulpevent_make_send_failed(asoc, chunk, sent, in sctp_datamsg_destroy()
99 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_datamsg_destroy()
102 if (sctp_ulpevent_type_enabled(asoc->subscribe, in sctp_datamsg_destroy()
104 ev = sctp_ulpevent_make_send_failed_event(asoc, chunk, in sctp_datamsg_destroy()
108 asoc->stream.si->enqueue_event(&asoc->ulpq, ev); in sctp_datamsg_destroy()
146 struct sctp_datamsg *sctp_datamsg_from_user(struct sctp_association *asoc, in sctp_datamsg_from_user() argument
[all …]
H A Doutput.c77 struct sctp_association *asoc = tp->asoc; in sctp_packet_config() local
91 if (asoc) { in sctp_packet_config()
92 sk = asoc->base.sk; in sctp_packet_config()
98 if (!asoc) in sctp_packet_config()
104 if (asoc->param_flags & SPP_PMTUD_ENABLE) in sctp_packet_config()
105 sctp_assoc_sync_pmtu(asoc); in sctp_packet_config()
107 asoc->param_flags & SPP_PMTUD_ENABLE) { in sctp_packet_config()
109 sctp_assoc_sync_pmtu(asoc); in sctp_packet_config()
112 if (asoc->pmtu_pending) { in sctp_packet_config()
113 if (asoc->param_flags & SPP_PMTUD_ENABLE) in sctp_packet_config()
[all …]
H A Dtransport.c161 if (transport->asoc) in sctp_transport_destroy()
162 sctp_association_put(transport->asoc); in sctp_transport_destroy()
224 struct sctp_association *asoc) in sctp_transport_set_owner() argument
226 transport->asoc = asoc; in sctp_transport_set_owner()
227 sctp_association_hold(asoc); in sctp_transport_set_owner()
241 struct sctp_association *asoc = transport->asoc; in sctp_transport_pmtu() local
243 if (!transport->pathmtu && asoc && asoc->pathmtu) in sctp_transport_pmtu()
244 transport->pathmtu = asoc->pathmtu; in sctp_transport_pmtu()
269 sctp_assoc_sync_pmtu(t->asoc); in sctp_transport_pl_send()
279 sctp_assoc_sync_pmtu(t->asoc); in sctp_transport_pl_send()
[all …]
H A Dinput.c91 struct sctp_association *asoc; in sctp_rcv() local
165 asoc = __sctp_rcv_lookup(net, skb, &src, &dest, &transport, dif, sdif); in sctp_rcv()
167 if (!asoc) in sctp_rcv()
171 rcvr = asoc ? &asoc->base : &ep->base; in sctp_rcv()
182 if (!asoc) { in sctp_rcv()
197 chunk = sctp_chunkify(skb, asoc, sk, GFP_ATOMIC); in sctp_rcv()
372 void sctp_icmp_frag_needed(struct sock *sk, struct sctp_association *asoc, in sctp_icmp_frag_needed() argument
382 asoc->pmtu_pending = 1; in sctp_icmp_frag_needed()
402 sctp_assoc_sync_pmtu(asoc); in sctp_icmp_frag_needed()
405 sctp_retransmit(&asoc->outqueue, t, SCTP_RTXR_PMTUD); in sctp_icmp_frag_needed()
[all …]
H A Ddiag.c28 struct sctp_association *asoc) in inet_diag_msg_sctpasoc_fill() argument
32 struct timer_list *t3_rtx = &asoc->peer.primary_path->T3_rtx_timer; in inet_diag_msg_sctpasoc_fill()
34 laddr = list_entry(asoc->base.bind_addr.address_list.next, in inet_diag_msg_sctpasoc_fill()
36 paddr = asoc->peer.primary_path->ipaddr; in inet_diag_msg_sctpasoc_fill()
37 dst = asoc->peer.primary_path->dst; in inet_diag_msg_sctpasoc_fill()
40 r->id.idiag_sport = htons(asoc->base.bind_addr.port); in inet_diag_msg_sctpasoc_fill()
41 r->id.idiag_dport = htons(asoc->peer.port); in inet_diag_msg_sctpasoc_fill()
59 r->idiag_state = asoc->state; in inet_diag_msg_sctpasoc_fill()
62 r->idiag_retrans = asoc->rtx_data_chunks; in inet_diag_msg_sctpasoc_fill()
102 struct sctp_association *asoc) in inet_diag_msg_sctpaddrs_fill() argument
[all …]
H A Dendpointola.c156 struct sctp_association *asoc) in sctp_endpoint_add_asoc() argument
164 if (asoc->temp) in sctp_endpoint_add_asoc()
168 list_add_tail(&asoc->asocs, &ep->asocs); in sctp_endpoint_add_asoc()
276 struct sctp_association *asoc = NULL; in sctp_endpoint_lookup_assoc() local
293 asoc = t->asoc; in sctp_endpoint_lookup_assoc()
296 return asoc; in sctp_endpoint_lookup_assoc()
331 struct sctp_association *asoc; in sctp_endpoint_bh_rcv() local
345 asoc = NULL; in sctp_endpoint_bh_rcv()
386 if (NULL == chunk->asoc) { in sctp_endpoint_bh_rcv()
387 asoc = sctp_endpoint_lookup_assoc(ep, in sctp_endpoint_bh_rcv()
[all …]
H A Dulpqueue.c41 void sctp_ulpq_init(struct sctp_ulpq *ulpq, struct sctp_association *asoc) in sctp_ulpq_init() argument
45 ulpq->asoc = asoc; in sctp_ulpq_init()
90 event = sctp_ulpevent_make_rcvmsg(chunk->asoc, chunk, gfp); in sctp_ulpq_tail_data()
125 int sctp_clear_pd(struct sock *sk, struct sctp_association *asoc) in sctp_clear_pd() argument
144 if (!skb_queue_empty(&sp->pd_lobby) && asoc) { in sctp_clear_pd()
150 if (event->asoc == asoc) { in sctp_clear_pd()
165 struct sctp_sock *sp = sctp_sk(ulpq->asoc->base.sk); in sctp_ulpq_set_pd()
176 return sctp_clear_pd(ulpq->asoc->base.sk, ulpq->asoc); in sctp_ulpq_clear_pd()
181 struct sock *sk = ulpq->asoc->base.sk; in sctp_ulpq_tail_event()
204 if (!sctp_ulpevent_is_enabled(event, ulpq->asoc->subscribe)) in sctp_ulpq_tail_event()
[all …]
H A Dstream_interleave.c25 const struct sctp_association *asoc, in sctp_make_idatafrag_empty() argument
38 retval = sctp_make_idata(asoc, flags, sizeof(dp) + len, gfp); in sctp_make_idatafrag_empty()
59 stream = &chunk->asoc->stream; in sctp_chunk_assign_mid()
98 stream = &chunk->asoc->stream; in sctp_validate_data()
117 stream = &chunk->asoc->stream; in sctp_validate_idata()
192 sin = sctp_stream_in(&ulpq->asoc->stream, event->stream); in sctp_intl_retrieve_partial()
244 retval = sctp_make_reassembled_event(ulpq->asoc->base.net, &ulpq->reasm, in sctp_intl_retrieve_partial()
261 struct sctp_association *asoc = ulpq->asoc; in sctp_intl_retrieve_reassembled() local
272 sin = sctp_stream_in(&ulpq->asoc->stream, event->stream); in sctp_intl_retrieve_reassembled()
326 pd_point = sctp_sk(asoc->base.sk)->pd_point; in sctp_intl_retrieve_reassembled()
[all …]
H A Dprimitive.c38 int sctp_primitive_ ## name(struct net *net, struct sctp_association *asoc, \
47 state = asoc ? asoc->state : SCTP_STATE_CLOSED; \
48 ep = asoc ? asoc->ep : NULL; \
50 error = sctp_do_sm(net, event_type, subtype, state, ep, asoc, \
/linux/include/net/sctp/
H A Dsm.h56 const struct sctp_association *asoc,
169 struct sctp_chunk *sctp_make_init(const struct sctp_association *asoc,
172 struct sctp_chunk *sctp_make_init_ack(const struct sctp_association *asoc,
175 struct sctp_chunk *sctp_make_cookie_echo(const struct sctp_association *asoc,
177 struct sctp_chunk *sctp_make_cookie_ack(const struct sctp_association *asoc,
179 struct sctp_chunk *sctp_make_cwr(const struct sctp_association *asoc,
182 struct sctp_chunk *sctp_make_idata(const struct sctp_association *asoc,
184 struct sctp_chunk *sctp_make_ifwdtsn(const struct sctp_association *asoc,
187 struct sctp_chunk *sctp_make_datafrag_empty(const struct sctp_association *asoc,
190 struct sctp_chunk *sctp_make_ecne(const struct sctp_association *asoc,
376 sctp_vtag_verify(const struct sctp_chunk * chunk,const struct sctp_association * asoc) sctp_vtag_verify() argument
396 sctp_vtag_verify_either(const struct sctp_chunk * chunk,const struct sctp_association * asoc) sctp_vtag_verify_either() argument
[all...]
H A Dauth.h69 int sctp_auth_asoc_init_active_key(struct sctp_association *asoc, gfp_t gfp);
71 const struct sctp_association *asoc,
74 struct sctp_association *asoc,
80 sctp_auth_asoc_get_hmac(const struct sctp_association *asoc);
81 void sctp_auth_asoc_set_default_hmac(struct sctp_association *asoc,
83 int sctp_auth_asoc_verify_hmac_id(const struct sctp_association *asoc,
86 const struct sctp_association *asoc);
88 const struct sctp_association *asoc);
89 int sctp_auth_calculate_hmac(const struct sctp_association *asoc,
99 int sctp_auth_set_key(struct sctp_endpoint *ep, struct sctp_association *asoc,
[all …]
H A Dulpevent.h39 struct sctp_association *asoc; member
74 const struct sctp_association *asoc,
87 const struct sctp_association *asoc,
92 const struct sctp_association *asoc,
99 const struct sctp_association *asoc,
106 const struct sctp_association *asoc,
111 const struct sctp_association *asoc,
116 const struct sctp_association *asoc, gfp_t gfp);
118 struct sctp_ulpevent *sctp_ulpevent_make_rcvmsg(struct sctp_association *asoc,
123 const struct sctp_association *asoc, __u16 key_id,
[all …]
H A Dsctp.h116 int sctp_get_sctp_info(struct sock *sk, struct sctp_association *asoc,
128 int sctp_primitive_RECONF(struct net *net, struct sctp_association *asoc,
149 struct sctp_association *asoc,
183 int sctp_send_reset_streams(struct sctp_association *asoc,
185 int sctp_send_reset_assoc(struct sctp_association *asoc);
186 int sctp_send_add_streams(struct sctp_association *asoc,
256 static inline void sctp_max_rto(struct sctp_association *asoc, in sctp_max_rto() argument
259 if (asoc->stats.max_obs_rto < (__u64)trans->rto) { in sctp_max_rto()
260 asoc->stats.max_obs_rto = trans->rto; in sctp_max_rto()
261 memset(&asoc->stats.obs_rto_ipaddr, 0, in sctp_max_rto()
[all …]
/linux/include/trace/events/
H A Dsctp.h14 const struct sctp_association *asoc),
16 TP_ARGS(sp, asoc),
19 __field(__u64, asoc)
31 __entry->asoc = (unsigned long)asoc;
32 __entry->primary = (sp == asoc->peer.primary_path);
44 __entry->asoc, __entry->primary ? "(*)" : "",
53 const struct sctp_association *asoc,
56 TP_ARGS(ep, asoc, chunk),
59 __field(__u64, asoc)
71 __entry->asoc = (unsigned long)asoc;
[all …]
/linux/Documentation/translations/zh_CN/security/
H A DSCTP.rst31 将关联INIT数据包的 ``@asoc`` 和 ``@chunk->skb`` 传递给安全模块。
35 @asoc - 指向sctp关联结构的指针。
113 @asoc - 指向当前sctp关联结构的指针。
121 到 ``@asoc->peer_secid`` 中::
123 @asoc - 指向sctp关联结构的指针。
194 将关联INIT数据包的 ``@asoc`` 和 ``@chunk->skb`` 传递给安全模块。
198 @asoc - 指向sctp关联结构的指针。
202 如果这是 ``@asoc->base.sk`` 上的首次关联,则将对端的sid设置
204 关联的 ``@asoc->base.sk``。
206 否则验证 ``@asoc->base.sk peer sid`` 是否与 ``@skb peer sid``
[all …]

123