Lines Matching refs:sp
325 struct sctp_sock *sp = sctp_sk(sk); in sctp_do_bind() local
326 struct sctp_endpoint *ep = sp->ep; in sctp_do_bind()
333 af = sctp_sockaddr_af(sp, addr, len); in sctp_do_bind()
346 if (!sp->pf->bind_verify(sp, addr)) in sctp_do_bind()
370 if (sctp_bind_addr_match(bp, addr, sp)) in sctp_do_bind()
394 sp->pf->to_sk_saddr(addr, sk); in sctp_do_bind()
503 struct sctp_sock *sp; in sctp_send_asconf_add_ip() local
520 sp = sctp_sk(sk); in sctp_send_asconf_add_ip()
521 ep = sp->ep; in sctp_send_asconf_add_ip()
624 struct sctp_sock *sp = sctp_sk(sk); in sctp_bindx_rem() local
625 struct sctp_endpoint *ep = sp->ep; in sctp_bindx_rem()
655 if (!af->addr_valid(sa_addr, sp, NULL)) { in sctp_bindx_rem()
706 struct sctp_sock *sp; in sctp_send_asconf_del_ip() local
724 sp = sctp_sk(sk); in sctp_send_asconf_del_ip()
725 ep = sp->ep; in sctp_send_asconf_del_ip()
770 addrcnt, sp); in sctp_send_asconf_del_ip()
855 int sctp_asconf_mgmt(struct sctp_sock *sp, struct sctp_sockaddr_entry *addrw) in sctp_asconf_mgmt() argument
857 struct sock *sk = sctp_opt2sk(sp); in sctp_asconf_mgmt()
863 addr->v4.sin_port = htons(sp->ep->base.bind_addr.port); in sctp_asconf_mgmt()
1045 struct sctp_sock *sp; in __sctp_connect() local
1061 sp = sctp_sk(sk); in __sctp_connect()
1062 ep = sp->ep; in __sctp_connect()
1204 sp->pf->to_sk_daddr(sa_addr, sk); in __sctp_connect()
1591 struct sctp_sock *sp; in sctp_sendmsg() local
1612 sp = sctp_sk(sk); in sctp_sendmsg()
1613 ep = sp->ep; in sctp_sendmsg()
1783 sp->initmsg.sinit_num_ostreams) { in sctp_sendmsg()
2067 struct sctp_sock *sp = sctp_sk(sk); in sctp_recvmsg() local
2107 sp->pf->event_msgname(event, msg->msg_name, addr_len); in sctp_recvmsg()
2109 sp->pf->skb_msgname(skb, msg->msg_name, addr_len); in sctp_recvmsg()
2113 if (sp->recvnxtinfo) in sctp_recvmsg()
2116 if (sp->recvrcvinfo) in sctp_recvmsg()
2119 if (sp->subscribe.sctp_data_io_event) in sctp_recvmsg()
2236 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_autoclose() local
2244 if (copy_from_user(&sp->autoclose, optval, optlen)) in sctp_setsockopt_autoclose()
2247 if (sp->autoclose > net->sctp.max_autoclose) in sctp_setsockopt_autoclose()
2248 sp->autoclose = net->sctp.max_autoclose; in sctp_setsockopt_autoclose()
2353 struct sctp_sock *sp, in sctp_apply_peer_addr_params() argument
2390 sp->hbinterval = params->spp_hbinterval; in sctp_apply_peer_addr_params()
2403 sp->param_flags = in sctp_apply_peer_addr_params()
2404 (sp->param_flags & ~SPP_HB) | hb_change; in sctp_apply_peer_addr_params()
2416 sctp_assoc_sync_pmtu(sctp_opt2sk(sp), asoc); in sctp_apply_peer_addr_params()
2421 sp->pathmtu = params->spp_pathmtu; in sctp_apply_peer_addr_params()
2432 sctp_transport_pmtu(trans, sctp_opt2sk(sp)); in sctp_apply_peer_addr_params()
2433 sctp_assoc_sync_pmtu(sctp_opt2sk(sp), asoc); in sctp_apply_peer_addr_params()
2439 sp->param_flags = in sctp_apply_peer_addr_params()
2440 (sp->param_flags & ~SPP_PMTUD) | pmtud_change; in sctp_apply_peer_addr_params()
2456 sp->sackdelay = params->spp_sackdelay; in sctp_apply_peer_addr_params()
2470 sp->param_flags = in sctp_apply_peer_addr_params()
2471 (sp->param_flags & ~SPP_SACKDELAY) | in sctp_apply_peer_addr_params()
2485 sp->pathmaxrxt = params->spp_pathmaxrxt; in sctp_apply_peer_addr_params()
2499 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_peer_addr_params() local
2547 error = sctp_apply_peer_addr_params(¶ms, trans, asoc, sp, in sctp_setsockopt_peer_addr_params()
2560 sctp_apply_peer_addr_params(¶ms, trans, asoc, sp, in sctp_setsockopt_peer_addr_params()
2621 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_delayed_ack() local
2664 sp->sackdelay = params.sack_delay; in sctp_setsockopt_delayed_ack()
2665 sp->param_flags = in sctp_setsockopt_delayed_ack()
2666 sctp_spp_sackdelay_enable(sp->param_flags); in sctp_setsockopt_delayed_ack()
2675 sp->param_flags = in sctp_setsockopt_delayed_ack()
2676 sctp_spp_sackdelay_disable(sp->param_flags); in sctp_setsockopt_delayed_ack()
2684 sp->sackfreq = params.sack_freq; in sctp_setsockopt_delayed_ack()
2685 sp->param_flags = in sctp_setsockopt_delayed_ack()
2686 sctp_spp_sackdelay_enable(sp->param_flags); in sctp_setsockopt_delayed_ack()
2728 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_initmsg() local
2736 sp->initmsg.sinit_num_ostreams = sinit.sinit_num_ostreams; in sctp_setsockopt_initmsg()
2738 sp->initmsg.sinit_max_instreams = sinit.sinit_max_instreams; in sctp_setsockopt_initmsg()
2740 sp->initmsg.sinit_max_attempts = sinit.sinit_max_attempts; in sctp_setsockopt_initmsg()
2742 sp->initmsg.sinit_max_init_timeo = sinit.sinit_max_init_timeo; in sctp_setsockopt_initmsg()
2765 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_default_send_param() local
2788 sp->default_stream = info.sinfo_stream; in sctp_setsockopt_default_send_param()
2789 sp->default_flags = info.sinfo_flags; in sctp_setsockopt_default_send_param()
2790 sp->default_ppid = info.sinfo_ppid; in sctp_setsockopt_default_send_param()
2791 sp->default_context = info.sinfo_context; in sctp_setsockopt_default_send_param()
2792 sp->default_timetolive = info.sinfo_timetolive; in sctp_setsockopt_default_send_param()
2805 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_default_sndinfo() local
2827 sp->default_stream = info.snd_sid; in sctp_setsockopt_default_sndinfo()
2828 sp->default_flags = info.snd_flags; in sctp_setsockopt_default_sndinfo()
2829 sp->default_ppid = info.snd_ppid; in sctp_setsockopt_default_sndinfo()
2830 sp->default_context = info.snd_context; in sctp_setsockopt_default_sndinfo()
2902 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_rtoinfo() local
2922 rto_max = asoc ? asoc->rto_max : sp->rtoinfo.srto_max; in sctp_setsockopt_rtoinfo()
2927 rto_min = asoc ? asoc->rto_min : sp->rtoinfo.srto_min; in sctp_setsockopt_rtoinfo()
2943 sp->rtoinfo.srto_initial = rtoinfo.srto_initial; in sctp_setsockopt_rtoinfo()
2944 sp->rtoinfo.srto_max = rto_max; in sctp_setsockopt_rtoinfo()
2945 sp->rtoinfo.srto_min = rto_min; in sctp_setsockopt_rtoinfo()
3007 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_associnfo() local
3010 sp->assocparams.sasoc_asocmaxrxt = in sctp_setsockopt_associnfo()
3013 sp->assocparams.sasoc_cookie_life = in sctp_setsockopt_associnfo()
3032 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_mappedv4() local
3039 sp->v4mapped = 1; in sctp_setsockopt_mappedv4()
3041 sp->v4mapped = 0; in sctp_setsockopt_mappedv4()
3077 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_maxseg() local
3106 val -= sp->pf->af->net_header_len; in sctp_setsockopt_maxseg()
3113 sp->user_frag = val; in sctp_setsockopt_maxseg()
3132 struct sctp_sock *sp; in sctp_setsockopt_peer_primary_addr() local
3139 sp = sctp_sk(sk); in sctp_setsockopt_peer_primary_addr()
3167 if (!af->addr_valid((union sctp_addr *)&prim.sspp_addr, sp, NULL)) in sctp_setsockopt_peer_primary_addr()
3219 struct sctp_sock *sp; in sctp_setsockopt_context() local
3227 sp = sctp_sk(sk); in sctp_setsockopt_context()
3235 sp->default_rcv_context = params.assoc_value; in sctp_setsockopt_context()
3336 struct sctp_sock *sp; in sctp_setsockopt_maxburst() local
3357 sp = sctp_sk(sk); in sctp_setsockopt_maxburst()
3365 sp->max_burst = val; in sctp_setsockopt_maxburst()
3560 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_auto_asconf() local
3568 if ((val && sp->do_auto_asconf) || (!val && !sp->do_auto_asconf)) in sctp_setsockopt_auto_asconf()
3572 if (val == 0 && sp->do_auto_asconf) { in sctp_setsockopt_auto_asconf()
3573 list_del(&sp->auto_asconf_list); in sctp_setsockopt_auto_asconf()
3574 sp->do_auto_asconf = 0; in sctp_setsockopt_auto_asconf()
3575 } else if (val && !sp->do_auto_asconf) { in sctp_setsockopt_auto_asconf()
3576 list_add_tail(&sp->auto_asconf_list, in sctp_setsockopt_auto_asconf()
3578 sp->do_auto_asconf = 1; in sctp_setsockopt_auto_asconf()
3894 struct sctp_sock *sp; in sctp_accept() local
3903 sp = sctp_sk(sk); in sctp_accept()
3904 ep = sp->ep; in sctp_accept()
3927 newsk = sp->pf->create_accept_sk(sk, asoc); in sctp_accept()
3990 struct sctp_sock *sp; in sctp_init_sock() local
3994 sp = sctp_sk(sk); in sctp_init_sock()
3999 sp->type = SCTP_SOCKET_UDP; in sctp_init_sock()
4002 sp->type = SCTP_SOCKET_TCP; in sctp_init_sock()
4011 sp->default_stream = 0; in sctp_init_sock()
4012 sp->default_ppid = 0; in sctp_init_sock()
4013 sp->default_flags = 0; in sctp_init_sock()
4014 sp->default_context = 0; in sctp_init_sock()
4015 sp->default_timetolive = 0; in sctp_init_sock()
4017 sp->default_rcv_context = 0; in sctp_init_sock()
4018 sp->max_burst = net->sctp.max_burst; in sctp_init_sock()
4020 sp->sctp_hmac_alg = net->sctp.sctp_hmac_alg; in sctp_init_sock()
4026 sp->initmsg.sinit_num_ostreams = sctp_max_outstreams; in sctp_init_sock()
4027 sp->initmsg.sinit_max_instreams = sctp_max_instreams; in sctp_init_sock()
4028 sp->initmsg.sinit_max_attempts = net->sctp.max_retrans_init; in sctp_init_sock()
4029 sp->initmsg.sinit_max_init_timeo = net->sctp.rto_max; in sctp_init_sock()
4034 sp->rtoinfo.srto_initial = net->sctp.rto_initial; in sctp_init_sock()
4035 sp->rtoinfo.srto_max = net->sctp.rto_max; in sctp_init_sock()
4036 sp->rtoinfo.srto_min = net->sctp.rto_min; in sctp_init_sock()
4041 sp->assocparams.sasoc_asocmaxrxt = net->sctp.max_retrans_association; in sctp_init_sock()
4042 sp->assocparams.sasoc_number_peer_destinations = 0; in sctp_init_sock()
4043 sp->assocparams.sasoc_peer_rwnd = 0; in sctp_init_sock()
4044 sp->assocparams.sasoc_local_rwnd = 0; in sctp_init_sock()
4045 sp->assocparams.sasoc_cookie_life = net->sctp.valid_cookie_life; in sctp_init_sock()
4050 memset(&sp->subscribe, 0, sizeof(struct sctp_event_subscribe)); in sctp_init_sock()
4055 sp->hbinterval = net->sctp.hb_interval; in sctp_init_sock()
4056 sp->pathmaxrxt = net->sctp.max_retrans_path; in sctp_init_sock()
4057 sp->pathmtu = 0; /* allow default discovery */ in sctp_init_sock()
4058 sp->sackdelay = net->sctp.sack_timeout; in sctp_init_sock()
4059 sp->sackfreq = 2; in sctp_init_sock()
4060 sp->param_flags = SPP_HB_ENABLE | in sctp_init_sock()
4067 sp->disable_fragments = 0; in sctp_init_sock()
4070 sp->nodelay = 0; in sctp_init_sock()
4072 sp->recvrcvinfo = 0; in sctp_init_sock()
4073 sp->recvnxtinfo = 0; in sctp_init_sock()
4076 sp->v4mapped = 1; in sctp_init_sock()
4083 sp->autoclose = 0; in sctp_init_sock()
4086 sp->user_frag = 0; in sctp_init_sock()
4088 sp->adaptation_ind = 0; in sctp_init_sock()
4090 sp->pf = sctp_get_pf_specific(sk->sk_family); in sctp_init_sock()
4093 atomic_set(&sp->pd_mode, 0); in sctp_init_sock()
4094 skb_queue_head_init(&sp->pd_lobby); in sctp_init_sock()
4095 sp->frag_interleave = 0; in sctp_init_sock()
4101 sp->ep = sctp_endpoint_new(sk, GFP_KERNEL); in sctp_init_sock()
4102 if (!sp->ep) in sctp_init_sock()
4105 sp->hmac = NULL; in sctp_init_sock()
4120 list_add_tail(&sp->auto_asconf_list, in sctp_init_sock()
4122 sp->do_auto_asconf = 1; in sctp_init_sock()
4125 sp->do_auto_asconf = 0; in sctp_init_sock()
4138 struct sctp_sock *sp; in sctp_destroy_sock() local
4143 sp = sctp_sk(sk); in sctp_destroy_sock()
4147 if (sp->ep == NULL) in sctp_destroy_sock()
4150 if (sp->do_auto_asconf) { in sctp_destroy_sock()
4151 sp->do_auto_asconf = 0; in sctp_destroy_sock()
4152 list_del(&sp->auto_asconf_list); in sctp_destroy_sock()
4154 sctp_endpoint_free(sp->ep); in sctp_destroy_sock()
4164 struct sctp_sock *sp = sctp_sk(sk); in sctp_destruct_sock() local
4167 crypto_free_hash(sp->hmac); in sctp_destruct_sock()
4415 struct sctp_sock *sp = sctp_sk(sk); in sctp_do_peeloff() local
4438 sp->pf->to_sk_daddr(&asoc->peer.primary_addr, sk); in sctp_do_peeloff()
4601 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_peer_addr_params() local
4651 params.spp_hbinterval = sp->hbinterval; in sctp_getsockopt_peer_addr_params()
4652 params.spp_pathmtu = sp->pathmtu; in sctp_getsockopt_peer_addr_params()
4653 params.spp_sackdelay = sp->sackdelay; in sctp_getsockopt_peer_addr_params()
4654 params.spp_pathmaxrxt = sp->pathmaxrxt; in sctp_getsockopt_peer_addr_params()
4657 params.spp_flags = sp->param_flags; in sctp_getsockopt_peer_addr_params()
4710 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_delayed_ack() local
4749 if (sp->param_flags & SPP_SACKDELAY_ENABLE) { in sctp_getsockopt_delayed_ack()
4750 params.sack_delay = sp->sackdelay; in sctp_getsockopt_delayed_ack()
4751 params.sack_freq = sp->sackfreq; in sctp_getsockopt_delayed_ack()
4800 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_peer_addrs() local
4823 ->addr_to_user(sp, &temp); in sctp_getsockopt_peer_addrs()
4897 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_local_addrs() local
4958 ->addr_to_user(sp, &temp); in sctp_getsockopt_local_addrs()
4997 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_primary_addr() local
5017 sctp_get_pf_specific(sk->sk_family)->addr_to_user(sp, in sctp_getsockopt_primary_addr()
5077 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_default_send_param() local
5099 info.sinfo_stream = sp->default_stream; in sctp_getsockopt_default_send_param()
5100 info.sinfo_flags = sp->default_flags; in sctp_getsockopt_default_send_param()
5101 info.sinfo_ppid = sp->default_ppid; in sctp_getsockopt_default_send_param()
5102 info.sinfo_context = sp->default_context; in sctp_getsockopt_default_send_param()
5103 info.sinfo_timetolive = sp->default_timetolive; in sctp_getsockopt_default_send_param()
5121 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_default_sndinfo() local
5142 info.snd_sid = sp->default_stream; in sctp_getsockopt_default_sndinfo()
5143 info.snd_flags = sp->default_flags; in sctp_getsockopt_default_sndinfo()
5144 info.snd_ppid = sp->default_ppid; in sctp_getsockopt_default_sndinfo()
5145 info.snd_context = sp->default_context; in sctp_getsockopt_default_sndinfo()
5221 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_rtoinfo() local
5223 rtoinfo.srto_initial = sp->rtoinfo.srto_initial; in sctp_getsockopt_rtoinfo()
5224 rtoinfo.srto_max = sp->rtoinfo.srto_max; in sctp_getsockopt_rtoinfo()
5225 rtoinfo.srto_min = sp->rtoinfo.srto_min; in sctp_getsockopt_rtoinfo()
5285 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_associnfo() local
5287 assocparams.sasoc_asocmaxrxt = sp->assocparams.sasoc_asocmaxrxt; in sctp_getsockopt_associnfo()
5288 assocparams.sasoc_peer_rwnd = sp->assocparams.sasoc_peer_rwnd; in sctp_getsockopt_associnfo()
5289 assocparams.sasoc_local_rwnd = sp->assocparams.sasoc_local_rwnd; in sctp_getsockopt_associnfo()
5291 sp->assocparams.sasoc_cookie_life; in sctp_getsockopt_associnfo()
5293 sp->assocparams. in sctp_getsockopt_associnfo()
5320 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_mappedv4() local
5326 val = sp->v4mapped; in sctp_getsockopt_mappedv4()
5343 struct sctp_sock *sp; in sctp_getsockopt_context() local
5354 sp = sctp_sk(sk); in sctp_getsockopt_context()
5362 params.assoc_value = sp->default_rcv_context; in sctp_getsockopt_context()
5498 struct sctp_sock *sp; in sctp_getsockopt_maxburst() local
5515 sp = sctp_sk(sk); in sctp_getsockopt_maxburst()
5523 params.assoc_value = sp->max_burst; in sctp_getsockopt_maxburst()
5707 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_assoc_number() local
5719 list_for_each_entry(asoc, &(sp->ep->asocs), asocs) { in sctp_getsockopt_assoc_number()
5763 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_assoc_ids() local
5774 list_for_each_entry(asoc, &(sp->ep->asocs), asocs) { in sctp_getsockopt_assoc_ids()
5789 list_for_each_entry(asoc, &(sp->ep->asocs), asocs) { in sctp_getsockopt_assoc_ids()
6309 struct sctp_sock *sp = sctp_sk(sk); in sctp_listen_start() local
6310 struct sctp_endpoint *ep = sp->ep; in sctp_listen_start()
6315 if (!sp->hmac && sp->sctp_hmac_alg) { in sctp_listen_start()
6316 sprintf(alg, "hmac(%s)", sp->sctp_hmac_alg); in sctp_listen_start()
6320 sp->sctp_hmac_alg, PTR_ERR(tfm)); in sctp_listen_start()
6429 struct sctp_sock *sp = sctp_sk(sk); in sctp_poll() local
6438 return (!list_empty(&sp->ep->asocs)) ? in sctp_poll()