sctp_sk
return sctp_sk(sk)->type == style;
return __sctp_mtu_payload(sctp_sk(t->asoc->base.sk), t, 0, 0) -
sctp_sk(sk)->nodelay = true;
struct sctp_sock *newsp = sctp_sk(newsk);
int frag = sctp_mtu_payload(sctp_sk(asoc->base.sk), asoc->pathmtu,
sctp_sk(asoc->base.sk)))
sp = sctp_sk(asoc->base.sk);
sp = sctp_sk((struct sock *)sk);
bp = &sctp_sk(sk)->ep->base.bind_addr;
max_data = sctp_min_frag_point(sctp_sk(asoc->base.sk),
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
sctp_sk(sk)->ep = NULL;
if (sctp_sk(sk)->bind_hash)
sctp_sk(ep->base.sk)))
if (!sctp_sk(sk)->ep)
laddr, sctp_sk(t->asoc->base.sk)))
err = sctp_bind_addrs_check(sctp_sk(sk2),
sctp_sk(sk), cnt);
ep = sctp_sk(net->sctp.ctl_sock)->ep;
ep = sctp_sk(sk)->ep;
rc = sctp_v6_addr_to_user(sctp_sk(sock->sk),
if (!t->encap_port || !sctp_sk(sk)->udp_port) {
sctp_sk(sk)->udp_port, t->encap_port, false, 0);
*addrlen = sctp_v6_addr_to_user(sctp_sk(asoc->base.sk), addr);
*addr_len = sctp_v6_addr_to_user(sctp_sk(skb->sk), addr);
if ((sctp_sk(asoc->base.sk)->nodelay || inflight == 0) &&
sp = sctp_sk(sk);
sctp_sched_set_sched(asoc, sctp_sk(asoc->base.sk)->default_ss);
sctp_sk(sk)->type, sk->sk_state, hash,
assoc, sk, sctp_sk(sk)->type, sk->sk_state,
if (!t->encap_port || !sctp_sk(sk)->udp_port) {
sctp_sk(sk)->udp_port, t->encap_port, false, false,
sp = sctp_sk(asoc->base.sk);
if (sctp_sk(ep->base.sk)->cookie_auth_enable) {
if (sctp_sk(ep->base.sk)->cookie_auth_enable) {
sp = sctp_sk(asoc->base.sk);
sp = sctp_sk(asoc->base.sk);
struct sctp_sock *sp = sctp_sk(ep->base.sk);
ep = sctp_sk(net->sctp.ctl_sock)->ep;
if (ep == sctp_sk(net->sctp.ctl_sock)->ep)
if (!sctp_sk(ep->base.sk)->cookie_auth_enable &&
if (ep == sctp_sk(net->sctp.ctl_sock)->ep) {
sctp_sk(net->sctp.ctl_sock));
if (ep == sctp_sk(net->sctp.ctl_sock)->ep) {
if (!sctp_sk(sk)->cookie_auth_enable &&
struct sctp_sock *sp = sctp_sk(sk);
ep = sctp_sk(sk)->ep;
data_was_unread += sctp_queue_purge_ulpevents(&sctp_sk(sk)->pd_lobby);
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_sock *sp = sctp_sk(sk);
af = sctp_sockaddr_af(sctp_sk(sk), addr, len);
if (!af->addr_valid(addr, sctp_sk(sk), NULL))
sctp_sk(sk)->disable_fragments = (*val == 0) ? 0 : 1;
struct sctp_sock *sp = sctp_sk(sk);
if (!sctp_sk(sk)->pf->send_verify(sctp_sk(sk), (addr)))
asoc->subscribe = sctp_sk(sk)->subscribe;
struct sctp_sock *sp = sctp_sk(sk);
if (!list_empty(&sctp_sk(sk)->ep->asocs))
asoc = list_entry(sctp_sk(sk)->ep->asocs.next,
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
addr_asoc = sctp_endpoint_lookup_assoc(sctp_sk(sk)->ep,
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
sctp_get_pf_specific(sk->sk_family)->addr_to_user(sctp_sk(sk),
struct sctp_sock *sp = sctp_sk(sk);
sctp_sk(sk)->nodelay = (*val == 0) ? 0 : 1;
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
if (!sctp_sk(sk)->ep->base.bind_addr.port)
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
sp = sctp_sk(sk);
sctp_sk(sk)->adaptation_ind = adapt->ssb_adaptation_ind;
struct sctp_sock *sp = sctp_sk(sk);
sctp_sk(sk)->frag_interleave = !!*val;
if (!sctp_sk(sk)->frag_interleave)
sctp_sk(sk)->ep->intl_enable = 0;
sctp_sk(sk)->pd_point = *val;
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
sctp_sk(sk)->recvrcvinfo = (*val == 0) ? 0 : 1;
sctp_sk(sk)->recvnxtinfo = (*val == 0) ? 0 : 1;
sctp_sk(sk)->ep->prsctp_enable = !!params->assoc_value;
struct sctp_sock *sp = sctp_sk(sk);
sctp_sk(sk)->ep->reconf_enable = !!params->assoc_value;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_sock *sp = sctp_sk(sk);
list_for_each_entry(asoc, &sctp_sk(sk)->ep->asocs, asocs) {
struct sctp_sock *sp = sctp_sk(sk);
if (sctp_sk(sk)->ep->base.bind_addr.port)
sctp_sk(sk)->reuse = !!*val;
struct sctp_sock *sp = sctp_sk(sk);
ep = sctp_sk(sk)->ep;
ep = sctp_sk(sk)->ep;
sctp_sk(sk)->ep->ecn_enable = !!params->assoc_value;
sctp_sk(sk)->pf_expose = params->assoc_value;
sctp_sk(sk)->encap_port = encap_port;
sctp_sk(sk)->probe_interval = probe_interval;
struct sctp_af *af = sctp_sk(sk)->pf->af;
newsp = sctp_sk(newsk);
asoc = list_entry(sctp_sk(sk)->ep->asocs.next,
sp = sctp_sk(sk);
sp = sctp_sk(sk);
ep = sctp_sk(sk)->ep;
struct sctp_sock *sp = sctp_sk(sk);
sctp_get_pf_specific(sk->sk_family)->addr_to_user(sctp_sk(sk),
val = (sctp_sk(sk)->disable_fragments == 1);
sn_type[i] = sctp_ulpevent_type_enabled(sctp_sk(sk)->subscribe,
if (put_user(sctp_sk(sk)->autoclose, (int __user *)optval))
sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
if (copy_to_user(optval, &sctp_sk(sk)->initmsg, len))
struct sctp_sock *sp = sctp_sk(sk);
->addr_to_user(sctp_sk(sk), &temp);
struct sctp_sock *sp = sctp_sk(sk);
bp = &sctp_sk(sk)->ep->base.bind_addr;
struct sctp_sock *sp = sctp_sk(sk);
adaptation.ssb_adaptation_ind = sctp_sk(sk)->adaptation_ind;
struct sctp_sock *sp = sctp_sk(sk);
sctp_sk(asoc->base.sk));
struct sctp_sock *sp = sctp_sk(sk);
val = (sctp_sk(sk)->nodelay == 1);
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
: sctp_sk(sk)->default_rcv_context;
struct sctp_sock *sp = sctp_sk(sk);
params.assoc_value = sctp_sk(sk)->user_frag;
val = sctp_sk(sk)->frag_interleave;
val = sctp_sk(sk)->pd_point;
params.assoc_value = asoc ? asoc->max_burst : sctp_sk(sk)->max_burst;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
struct sctp_sock *sp = sctp_sk(sk);
if (sctp_sk(sk)->do_auto_asconf && sctp_is_ep_boundall(sk))
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
if (sctp_sk(sk)->recvrcvinfo)
if (sctp_sk(sk)->recvnxtinfo)
: sctp_sk(sk)->ep->prsctp_enable;
struct sctp_sock *sp = sctp_sk(sk);
: sctp_sk(sk)->ep->reconf_enable;
: sctp_sk(sk)->ep->strreset_enable;
: sctp_sk(sk)->default_ss;
sp = sctp_sk(sk);
: sctp_sk(sk)->ep->intl_enable;
val = sctp_sk(sk)->reuse;
subscribe = asoc ? asoc->subscribe : sctp_sk(sk)->subscribe;
: sctp_sk(sk)->ep->asconf_enable;
: sctp_sk(sk)->ep->auth_enable;
: sctp_sk(sk)->ep->ecn_enable;
: sctp_sk(sk)->pf_expose;
encap_port = sctp_sk(sk)->encap_port;
probe_interval = sctp_sk(sk)->probe_interval;
struct sctp_af *af = sctp_sk(sk)->pf->af;
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp2 = sctp_sk(sk2);
struct sctp_af *af = sctp_sk(sk)->pf->af;
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_endpoint *ep = sctp_sk(sk)->ep;
if (sk->sk_reuse || sctp_sk(sk)->reuse)
sctp_sk(sk)->bind_hash->fastreuse = 1;
struct sctp_sock *sp = sctp_sk(sk);
pp = sctp_sk(sk)->bind_hash;
sctp_sk(sk)->bind_hash = NULL;
af = sctp_sk(sk)->pf->af;
sctp_sk(asoc->base.sk));
if (list_empty(&sctp_sk(sk)->ep->asocs) && !sctp_sstate(sk, LISTENING))
if (&tmp->asocs == &((sctp_sk(sk))->ep->asocs))
list_for_each_entry(asoc, &((sctp_sk(sk))->ep->asocs), asocs) {
ep = sctp_sk(sk)->ep;
if (list_empty(&sctp_sk(sk)->ep->asocs))
struct sctp_sock *oldsp = sctp_sk(oldsk);
struct sctp_sock *newsp = sctp_sk(newsk);
pp = sctp_sk(oldsk)->bind_hash;
sctp_sk(newsk)->bind_hash = pp;
atomic_set(&sctp_sk(newsk)->pd_mode, assoc->ulpq.pd_mode);
if (atomic_read(&sctp_sk(oldsk)->pd_mode)) {
pd_point = sctp_sk(asoc->base.sk)->pd_point;
struct sctp_sock *sp = sctp_sk(sk);
pd_point = sctp_sk(asoc->base.sk)->pd_point;
struct sctp_sock *sp = sctp_sk(sk);
sctp_sk(sk)->ep->auth_enable = new_value;
sctp_sk(sk)->udp_port = htons(net->sctp.udp_port);
sctp_sk(asoc->base.sk),
sp = sctp_sk(asoc->base.sk);
sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(sk);
struct sctp_sock *sp = sctp_sk(ulpq->asoc->base.sk);
struct sctp_sock *sp = sctp_sk(sk);
if (!sctp_sk(asoc->base.sk)->frag_interleave &&
atomic_read(&sctp_sk(asoc->base.sk)->pd_mode))
pd_point = sctp_sk(asoc->base.sk)->pd_point;