Lines Matching refs:asoc
88 struct sctp_association *asoc; in sctp_rcv() local
160 asoc = __sctp_rcv_lookup(net, skb, &src, &dest, &transport); in sctp_rcv()
162 if (!asoc) in sctp_rcv()
166 rcvr = asoc ? &asoc->base : &ep->base; in sctp_rcv()
177 asoc = NULL; in sctp_rcv()
197 if (!asoc) { in sctp_rcv()
212 chunk = sctp_chunkify(skb, asoc, sk, GFP_ATOMIC); in sctp_rcv()
387 void sctp_icmp_frag_needed(struct sock *sk, struct sctp_association *asoc, in sctp_icmp_frag_needed() argument
395 asoc->pmtu_pending = 1; in sctp_icmp_frag_needed()
415 sctp_assoc_sync_pmtu(asoc); in sctp_icmp_frag_needed()
418 sctp_retransmit(&asoc->outqueue, t, SCTP_RTXR_PMTUD); in sctp_icmp_frag_needed()
445 struct sctp_association *asoc, in sctp_icmp_proto_unreachable() argument
467 asoc->state, asoc->ep, asoc, t, in sctp_icmp_proto_unreachable()
483 struct sctp_association *asoc; in sctp_err_lookup() local
501 asoc = __sctp_lookup_association(net, &saddr, &daddr, &transport); in sctp_err_lookup()
502 if (!asoc) in sctp_err_lookup()
505 sk = asoc->base.sk; in sctp_err_lookup()
527 ntohl(chunkhdr->init_hdr.init_tag) != asoc->c.my_vtag) in sctp_err_lookup()
530 } else if (vtag != asoc->c.peer_vtag) { in sctp_err_lookup()
542 *app = asoc; in sctp_err_lookup()
581 struct sctp_association *asoc = NULL; in sctp_v4_err() local
593 sk = sctp_err_lookup(net, AF_INET, skb, sctp_hdr(skb), &asoc, &transport); in sctp_v4_err()
615 sctp_icmp_frag_needed(sk, asoc, transport, in sctp_v4_err()
620 sctp_icmp_proto_unreachable(sk, asoc, in sctp_v4_err()
888 if (!net_eq(t->asoc->base.net, x->net)) in sctp_hash_cmp()
890 if (x->lport != htons(t->asoc->base.bind_addr.port)) in sctp_hash_cmp()
903 return sctp_hashfn(t->asoc->base.net, in sctp_hash_obj()
904 htons(t->asoc->base.bind_addr.port), in sctp_hash_obj()
940 if (t->asoc->temp) in sctp_hash_transport()
943 arg.net = t->asoc->base.net; in sctp_hash_transport()
945 arg.lport = htons(t->asoc->base.bind_addr.port); in sctp_hash_transport()
952 if (transport->asoc->ep == t->asoc->ep) { in sctp_hash_transport()
968 if (t->asoc->temp) in sctp_unhash_transport()
996 if (sctp_bind_addr_match(&t->asoc->base.bind_addr, in sctp_addrs_lookup_transport()
997 laddr, sctp_sk(t->asoc->base.sk))) in sctp_addrs_lookup_transport()
1022 if (ep == t->asoc->ep) in sctp_epaddr_lookup_transport()
1036 struct sctp_association *asoc = NULL; in __sctp_lookup_association() local
1042 asoc = t->asoc; in __sctp_lookup_association()
1046 return asoc; in __sctp_lookup_association()
1056 struct sctp_association *asoc; in sctp_lookup_association() local
1059 asoc = __sctp_lookup_association(net, laddr, paddr, transportp); in sctp_lookup_association()
1062 return asoc; in sctp_lookup_association()
1102 struct sctp_association *asoc; in __sctp_rcv_init_lookup() local
1139 asoc = __sctp_lookup_association(net, laddr, paddr, transportp); in __sctp_rcv_init_lookup()
1140 if (asoc) in __sctp_rcv_init_lookup()
1141 return asoc; in __sctp_rcv_init_lookup()
1204 struct sctp_association *asoc = NULL; in __sctp_rcv_walk_lookup() local
1242 asoc = __sctp_rcv_asconf_lookup( in __sctp_rcv_walk_lookup()
1250 if (asoc) in __sctp_rcv_walk_lookup()
1257 return asoc; in __sctp_rcv_walk_lookup()
1305 struct sctp_association *asoc; in __sctp_rcv_lookup() local
1307 asoc = __sctp_lookup_association(net, laddr, paddr, transportp); in __sctp_rcv_lookup()
1308 if (asoc) in __sctp_rcv_lookup()
1315 asoc = __sctp_rcv_lookup_harder(net, skb, laddr, transportp); in __sctp_rcv_lookup()
1316 if (asoc) in __sctp_rcv_lookup()
1329 return asoc; in __sctp_rcv_lookup()