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()
1588 struct sctp_sock *sp; in sctp_sendmsg() local
1609 sp = sctp_sk(sk); in sctp_sendmsg()
1610 ep = sp->ep; in sctp_sendmsg()
1780 sp->initmsg.sinit_num_ostreams) { in sctp_sendmsg()
2068 struct sctp_sock *sp = sctp_sk(sk); in sctp_recvmsg() local
2108 sp->pf->event_msgname(event, msg->msg_name, addr_len); in sctp_recvmsg()
2110 sp->pf->skb_msgname(skb, msg->msg_name, addr_len); in sctp_recvmsg()
2114 if (sp->recvnxtinfo) in sctp_recvmsg()
2117 if (sp->recvrcvinfo) in sctp_recvmsg()
2120 if (sp->subscribe.sctp_data_io_event) in sctp_recvmsg()
2249 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_autoclose() local
2257 if (copy_from_user(&sp->autoclose, optval, optlen)) in sctp_setsockopt_autoclose()
2260 if (sp->autoclose > net->sctp.max_autoclose) in sctp_setsockopt_autoclose()
2261 sp->autoclose = net->sctp.max_autoclose; in sctp_setsockopt_autoclose()
2366 struct sctp_sock *sp, in sctp_apply_peer_addr_params() argument
2403 sp->hbinterval = params->spp_hbinterval; in sctp_apply_peer_addr_params()
2416 sp->param_flags = in sctp_apply_peer_addr_params()
2417 (sp->param_flags & ~SPP_HB) | hb_change; in sctp_apply_peer_addr_params()
2429 sctp_assoc_sync_pmtu(sctp_opt2sk(sp), asoc); in sctp_apply_peer_addr_params()
2434 sp->pathmtu = params->spp_pathmtu; in sctp_apply_peer_addr_params()
2445 sctp_transport_pmtu(trans, sctp_opt2sk(sp)); in sctp_apply_peer_addr_params()
2446 sctp_assoc_sync_pmtu(sctp_opt2sk(sp), asoc); in sctp_apply_peer_addr_params()
2452 sp->param_flags = in sctp_apply_peer_addr_params()
2453 (sp->param_flags & ~SPP_PMTUD) | pmtud_change; in sctp_apply_peer_addr_params()
2469 sp->sackdelay = params->spp_sackdelay; in sctp_apply_peer_addr_params()
2483 sp->param_flags = in sctp_apply_peer_addr_params()
2484 (sp->param_flags & ~SPP_SACKDELAY) | in sctp_apply_peer_addr_params()
2498 sp->pathmaxrxt = params->spp_pathmaxrxt; in sctp_apply_peer_addr_params()
2512 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_peer_addr_params() local
2560 error = sctp_apply_peer_addr_params(&params, trans, asoc, sp, in sctp_setsockopt_peer_addr_params()
2573 sctp_apply_peer_addr_params(&params, trans, asoc, sp, in sctp_setsockopt_peer_addr_params()
2634 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_delayed_ack() local
2677 sp->sackdelay = params.sack_delay; in sctp_setsockopt_delayed_ack()
2678 sp->param_flags = in sctp_setsockopt_delayed_ack()
2679 sctp_spp_sackdelay_enable(sp->param_flags); in sctp_setsockopt_delayed_ack()
2688 sp->param_flags = in sctp_setsockopt_delayed_ack()
2689 sctp_spp_sackdelay_disable(sp->param_flags); in sctp_setsockopt_delayed_ack()
2697 sp->sackfreq = params.sack_freq; in sctp_setsockopt_delayed_ack()
2698 sp->param_flags = in sctp_setsockopt_delayed_ack()
2699 sctp_spp_sackdelay_enable(sp->param_flags); in sctp_setsockopt_delayed_ack()
2741 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_initmsg() local
2749 sp->initmsg.sinit_num_ostreams = sinit.sinit_num_ostreams; in sctp_setsockopt_initmsg()
2751 sp->initmsg.sinit_max_instreams = sinit.sinit_max_instreams; in sctp_setsockopt_initmsg()
2753 sp->initmsg.sinit_max_attempts = sinit.sinit_max_attempts; in sctp_setsockopt_initmsg()
2755 sp->initmsg.sinit_max_init_timeo = sinit.sinit_max_init_timeo; in sctp_setsockopt_initmsg()
2778 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_default_send_param() local
2801 sp->default_stream = info.sinfo_stream; in sctp_setsockopt_default_send_param()
2802 sp->default_flags = info.sinfo_flags; in sctp_setsockopt_default_send_param()
2803 sp->default_ppid = info.sinfo_ppid; in sctp_setsockopt_default_send_param()
2804 sp->default_context = info.sinfo_context; in sctp_setsockopt_default_send_param()
2805 sp->default_timetolive = info.sinfo_timetolive; in sctp_setsockopt_default_send_param()
2818 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_default_sndinfo() local
2840 sp->default_stream = info.snd_sid; in sctp_setsockopt_default_sndinfo()
2841 sp->default_flags = info.snd_flags; in sctp_setsockopt_default_sndinfo()
2842 sp->default_ppid = info.snd_ppid; in sctp_setsockopt_default_sndinfo()
2843 sp->default_context = info.snd_context; in sctp_setsockopt_default_sndinfo()
2915 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_rtoinfo() local
2935 rto_max = asoc ? asoc->rto_max : sp->rtoinfo.srto_max; in sctp_setsockopt_rtoinfo()
2940 rto_min = asoc ? asoc->rto_min : sp->rtoinfo.srto_min; in sctp_setsockopt_rtoinfo()
2956 sp->rtoinfo.srto_initial = rtoinfo.srto_initial; in sctp_setsockopt_rtoinfo()
2957 sp->rtoinfo.srto_max = rto_max; in sctp_setsockopt_rtoinfo()
2958 sp->rtoinfo.srto_min = rto_min; in sctp_setsockopt_rtoinfo()
3020 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_associnfo() local
3023 sp->assocparams.sasoc_asocmaxrxt = in sctp_setsockopt_associnfo()
3026 sp->assocparams.sasoc_cookie_life = in sctp_setsockopt_associnfo()
3045 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_mappedv4() local
3052 sp->v4mapped = 1; in sctp_setsockopt_mappedv4()
3054 sp->v4mapped = 0; in sctp_setsockopt_mappedv4()
3090 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_maxseg() local
3119 val -= sp->pf->af->net_header_len; in sctp_setsockopt_maxseg()
3126 sp->user_frag = val; in sctp_setsockopt_maxseg()
3145 struct sctp_sock *sp; in sctp_setsockopt_peer_primary_addr() local
3152 sp = sctp_sk(sk); in sctp_setsockopt_peer_primary_addr()
3180 if (!af->addr_valid((union sctp_addr *)&prim.sspp_addr, sp, NULL)) in sctp_setsockopt_peer_primary_addr()
3232 struct sctp_sock *sp; in sctp_setsockopt_context() local
3240 sp = sctp_sk(sk); in sctp_setsockopt_context()
3248 sp->default_rcv_context = params.assoc_value; in sctp_setsockopt_context()
3349 struct sctp_sock *sp; in sctp_setsockopt_maxburst() local
3370 sp = sctp_sk(sk); in sctp_setsockopt_maxburst()
3378 sp->max_burst = val; in sctp_setsockopt_maxburst()
3573 struct sctp_sock *sp = sctp_sk(sk); in sctp_setsockopt_auto_asconf() local
3581 if ((val && sp->do_auto_asconf) || (!val && !sp->do_auto_asconf)) in sctp_setsockopt_auto_asconf()
3585 if (val == 0 && sp->do_auto_asconf) { in sctp_setsockopt_auto_asconf()
3586 list_del(&sp->auto_asconf_list); in sctp_setsockopt_auto_asconf()
3587 sp->do_auto_asconf = 0; in sctp_setsockopt_auto_asconf()
3588 } else if (val && !sp->do_auto_asconf) { in sctp_setsockopt_auto_asconf()
3589 list_add_tail(&sp->auto_asconf_list, in sctp_setsockopt_auto_asconf()
3591 sp->do_auto_asconf = 1; in sctp_setsockopt_auto_asconf()
3907 struct sctp_sock *sp; in sctp_accept() local
3916 sp = sctp_sk(sk); in sctp_accept()
3917 ep = sp->ep; in sctp_accept()
3940 newsk = sp->pf->create_accept_sk(sk, asoc); in sctp_accept()
4003 struct sctp_sock *sp; in sctp_init_sock() local
4007 sp = sctp_sk(sk); in sctp_init_sock()
4012 sp->type = SCTP_SOCKET_UDP; in sctp_init_sock()
4015 sp->type = SCTP_SOCKET_TCP; in sctp_init_sock()
4024 sp->default_stream = 0; in sctp_init_sock()
4025 sp->default_ppid = 0; in sctp_init_sock()
4026 sp->default_flags = 0; in sctp_init_sock()
4027 sp->default_context = 0; in sctp_init_sock()
4028 sp->default_timetolive = 0; in sctp_init_sock()
4030 sp->default_rcv_context = 0; in sctp_init_sock()
4031 sp->max_burst = net->sctp.max_burst; in sctp_init_sock()
4033 sp->sctp_hmac_alg = net->sctp.sctp_hmac_alg; in sctp_init_sock()
4039 sp->initmsg.sinit_num_ostreams = sctp_max_outstreams; in sctp_init_sock()
4040 sp->initmsg.sinit_max_instreams = sctp_max_instreams; in sctp_init_sock()
4041 sp->initmsg.sinit_max_attempts = net->sctp.max_retrans_init; in sctp_init_sock()
4042 sp->initmsg.sinit_max_init_timeo = net->sctp.rto_max; in sctp_init_sock()
4047 sp->rtoinfo.srto_initial = net->sctp.rto_initial; in sctp_init_sock()
4048 sp->rtoinfo.srto_max = net->sctp.rto_max; in sctp_init_sock()
4049 sp->rtoinfo.srto_min = net->sctp.rto_min; in sctp_init_sock()
4054 sp->assocparams.sasoc_asocmaxrxt = net->sctp.max_retrans_association; in sctp_init_sock()
4055 sp->assocparams.sasoc_number_peer_destinations = 0; in sctp_init_sock()
4056 sp->assocparams.sasoc_peer_rwnd = 0; in sctp_init_sock()
4057 sp->assocparams.sasoc_local_rwnd = 0; in sctp_init_sock()
4058 sp->assocparams.sasoc_cookie_life = net->sctp.valid_cookie_life; in sctp_init_sock()
4063 memset(&sp->subscribe, 0, sizeof(struct sctp_event_subscribe)); in sctp_init_sock()
4068 sp->hbinterval = net->sctp.hb_interval; in sctp_init_sock()
4069 sp->pathmaxrxt = net->sctp.max_retrans_path; in sctp_init_sock()
4070 sp->pathmtu = 0; /* allow default discovery */ in sctp_init_sock()
4071 sp->sackdelay = net->sctp.sack_timeout; in sctp_init_sock()
4072 sp->sackfreq = 2; in sctp_init_sock()
4073 sp->param_flags = SPP_HB_ENABLE | in sctp_init_sock()
4080 sp->disable_fragments = 0; in sctp_init_sock()
4083 sp->nodelay = 0; in sctp_init_sock()
4085 sp->recvrcvinfo = 0; in sctp_init_sock()
4086 sp->recvnxtinfo = 0; in sctp_init_sock()
4089 sp->v4mapped = 1; in sctp_init_sock()
4096 sp->autoclose = 0; in sctp_init_sock()
4099 sp->user_frag = 0; in sctp_init_sock()
4101 sp->adaptation_ind = 0; in sctp_init_sock()
4103 sp->pf = sctp_get_pf_specific(sk->sk_family); in sctp_init_sock()
4106 atomic_set(&sp->pd_mode, 0); in sctp_init_sock()
4107 skb_queue_head_init(&sp->pd_lobby); in sctp_init_sock()
4108 sp->frag_interleave = 0; in sctp_init_sock()
4114 sp->ep = sctp_endpoint_new(sk, GFP_KERNEL); in sctp_init_sock()
4115 if (!sp->ep) in sctp_init_sock()
4118 sp->hmac = NULL; in sctp_init_sock()
4133 list_add_tail(&sp->auto_asconf_list, in sctp_init_sock()
4135 sp->do_auto_asconf = 1; in sctp_init_sock()
4138 sp->do_auto_asconf = 0; in sctp_init_sock()
4151 struct sctp_sock *sp; in sctp_destroy_sock() local
4156 sp = sctp_sk(sk); in sctp_destroy_sock()
4160 if (sp->ep == NULL) in sctp_destroy_sock()
4163 if (sp->do_auto_asconf) { in sctp_destroy_sock()
4164 sp->do_auto_asconf = 0; in sctp_destroy_sock()
4165 list_del(&sp->auto_asconf_list); in sctp_destroy_sock()
4167 sctp_endpoint_free(sp->ep); in sctp_destroy_sock()
4177 struct sctp_sock *sp = sctp_sk(sk); in sctp_destruct_sock() local
4180 crypto_free_hash(sp->hmac); in sctp_destruct_sock()
4428 struct sctp_sock *sp = sctp_sk(sk); in sctp_do_peeloff() local
4451 sp->pf->to_sk_daddr(&asoc->peer.primary_addr, sk); in sctp_do_peeloff()
4614 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_peer_addr_params() local
4664 params.spp_hbinterval = sp->hbinterval; in sctp_getsockopt_peer_addr_params()
4665 params.spp_pathmtu = sp->pathmtu; in sctp_getsockopt_peer_addr_params()
4666 params.spp_sackdelay = sp->sackdelay; in sctp_getsockopt_peer_addr_params()
4667 params.spp_pathmaxrxt = sp->pathmaxrxt; in sctp_getsockopt_peer_addr_params()
4670 params.spp_flags = sp->param_flags; in sctp_getsockopt_peer_addr_params()
4723 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_delayed_ack() local
4762 if (sp->param_flags & SPP_SACKDELAY_ENABLE) { in sctp_getsockopt_delayed_ack()
4763 params.sack_delay = sp->sackdelay; in sctp_getsockopt_delayed_ack()
4764 params.sack_freq = sp->sackfreq; in sctp_getsockopt_delayed_ack()
4813 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_peer_addrs() local
4836 ->addr_to_user(sp, &temp); in sctp_getsockopt_peer_addrs()
4910 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_local_addrs() local
4971 ->addr_to_user(sp, &temp); in sctp_getsockopt_local_addrs()
5010 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_primary_addr() local
5030 sctp_get_pf_specific(sk->sk_family)->addr_to_user(sp, in sctp_getsockopt_primary_addr()
5090 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_default_send_param() local
5112 info.sinfo_stream = sp->default_stream; in sctp_getsockopt_default_send_param()
5113 info.sinfo_flags = sp->default_flags; in sctp_getsockopt_default_send_param()
5114 info.sinfo_ppid = sp->default_ppid; in sctp_getsockopt_default_send_param()
5115 info.sinfo_context = sp->default_context; in sctp_getsockopt_default_send_param()
5116 info.sinfo_timetolive = sp->default_timetolive; in sctp_getsockopt_default_send_param()
5134 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_default_sndinfo() local
5155 info.snd_sid = sp->default_stream; in sctp_getsockopt_default_sndinfo()
5156 info.snd_flags = sp->default_flags; in sctp_getsockopt_default_sndinfo()
5157 info.snd_ppid = sp->default_ppid; in sctp_getsockopt_default_sndinfo()
5158 info.snd_context = sp->default_context; in sctp_getsockopt_default_sndinfo()
5234 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_rtoinfo() local
5236 rtoinfo.srto_initial = sp->rtoinfo.srto_initial; in sctp_getsockopt_rtoinfo()
5237 rtoinfo.srto_max = sp->rtoinfo.srto_max; in sctp_getsockopt_rtoinfo()
5238 rtoinfo.srto_min = sp->rtoinfo.srto_min; in sctp_getsockopt_rtoinfo()
5298 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_associnfo() local
5300 assocparams.sasoc_asocmaxrxt = sp->assocparams.sasoc_asocmaxrxt; in sctp_getsockopt_associnfo()
5301 assocparams.sasoc_peer_rwnd = sp->assocparams.sasoc_peer_rwnd; in sctp_getsockopt_associnfo()
5302 assocparams.sasoc_local_rwnd = sp->assocparams.sasoc_local_rwnd; in sctp_getsockopt_associnfo()
5304 sp->assocparams.sasoc_cookie_life; in sctp_getsockopt_associnfo()
5306 sp->assocparams. in sctp_getsockopt_associnfo()
5333 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_mappedv4() local
5339 val = sp->v4mapped; in sctp_getsockopt_mappedv4()
5356 struct sctp_sock *sp; in sctp_getsockopt_context() local
5367 sp = sctp_sk(sk); in sctp_getsockopt_context()
5375 params.assoc_value = sp->default_rcv_context; in sctp_getsockopt_context()
5511 struct sctp_sock *sp; in sctp_getsockopt_maxburst() local
5528 sp = sctp_sk(sk); in sctp_getsockopt_maxburst()
5536 params.assoc_value = sp->max_burst; in sctp_getsockopt_maxburst()
5720 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_assoc_number() local
5732 list_for_each_entry(asoc, &(sp->ep->asocs), asocs) { in sctp_getsockopt_assoc_number()
5776 struct sctp_sock *sp = sctp_sk(sk); in sctp_getsockopt_assoc_ids() local
5787 list_for_each_entry(asoc, &(sp->ep->asocs), asocs) { in sctp_getsockopt_assoc_ids()
5802 list_for_each_entry(asoc, &(sp->ep->asocs), asocs) { in sctp_getsockopt_assoc_ids()
6322 struct sctp_sock *sp = sctp_sk(sk); in sctp_listen_start() local
6323 struct sctp_endpoint *ep = sp->ep; in sctp_listen_start()
6328 if (!sp->hmac && sp->sctp_hmac_alg) { in sctp_listen_start()
6329 sprintf(alg, "hmac(%s)", sp->sctp_hmac_alg); in sctp_listen_start()
6333 sp->sctp_hmac_alg, PTR_ERR(tfm)); in sctp_listen_start()
6442 struct sctp_sock *sp = sctp_sk(sk); in sctp_poll() local
6451 return (!list_empty(&sp->ep->asocs)) ? in sctp_poll()