Lines Matching refs:asoc

88 	struct sctp_association *asoc;  in sctp_rcv()  local
159 asoc = __sctp_rcv_lookup(net, skb, &src, &dest, &transport); in sctp_rcv()
161 if (!asoc) in sctp_rcv()
165 rcvr = asoc ? &asoc->base : &ep->base; in sctp_rcv()
175 asoc = NULL; in sctp_rcv()
195 if (!asoc) { in sctp_rcv()
210 chunk = sctp_chunkify(skb, asoc, sk, GFP_ATOMIC); in sctp_rcv()
385 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()
562 struct sctp_association *asoc = t->asoc; in sctp_v4_err_handle() local
563 struct sock *sk = asoc->base.sk; in sctp_v4_err_handle()
574 sctp_icmp_frag_needed(sk, asoc, t, SCTP_TRUNC4(info)); in sctp_v4_err_handle()
578 sctp_icmp_proto_unreachable(sk, asoc, t); in sctp_v4_err_handle()
625 struct sctp_association *asoc; in sctp_v4_err() local
634 sk = sctp_err_lookup(net, AF_INET, skb, sctp_hdr(skb), &asoc, &transport); in sctp_v4_err()
652 struct sctp_association *asoc; in sctp_udp_v4_err() local
658 sk = sctp_err_lookup(net, AF_INET, skb, sctp_hdr(skb), &asoc, &t); in sctp_udp_v4_err()
911 if (!net_eq(t->asoc->base.net, x->net)) in sctp_hash_cmp()
913 if (x->lport != htons(t->asoc->base.bind_addr.port)) in sctp_hash_cmp()
926 return sctp_hashfn(t->asoc->base.net, in sctp_hash_obj()
927 htons(t->asoc->base.bind_addr.port), in sctp_hash_obj()
963 if (t->asoc->temp) in sctp_hash_transport()
966 arg.net = t->asoc->base.net; in sctp_hash_transport()
968 arg.lport = htons(t->asoc->base.bind_addr.port); in sctp_hash_transport()
975 if (transport->asoc->ep == t->asoc->ep) { in sctp_hash_transport()
991 if (t->asoc->temp) in sctp_unhash_transport()
1019 if (sctp_bind_addr_match(&t->asoc->base.bind_addr, in sctp_addrs_lookup_transport()
1020 laddr, sctp_sk(t->asoc->base.sk))) in sctp_addrs_lookup_transport()
1045 if (ep == t->asoc->ep) in sctp_epaddr_lookup_transport()
1059 struct sctp_association *asoc = NULL; in __sctp_lookup_association() local
1065 asoc = t->asoc; in __sctp_lookup_association()
1069 return asoc; in __sctp_lookup_association()
1079 struct sctp_association *asoc; in sctp_lookup_association() local
1082 asoc = __sctp_lookup_association(net, laddr, paddr, transportp); in sctp_lookup_association()
1085 return asoc; in sctp_lookup_association()
1125 struct sctp_association *asoc; in __sctp_rcv_init_lookup() local
1162 asoc = __sctp_lookup_association(net, laddr, paddr, transportp); in __sctp_rcv_init_lookup()
1163 if (asoc) in __sctp_rcv_init_lookup()
1164 return asoc; in __sctp_rcv_init_lookup()
1227 struct sctp_association *asoc = NULL; in __sctp_rcv_walk_lookup() local
1265 asoc = __sctp_rcv_asconf_lookup( in __sctp_rcv_walk_lookup()
1274 if (asoc) in __sctp_rcv_walk_lookup()
1281 return asoc; in __sctp_rcv_walk_lookup()
1329 struct sctp_association *asoc; in __sctp_rcv_lookup() local
1331 asoc = __sctp_lookup_association(net, laddr, paddr, transportp); in __sctp_rcv_lookup()
1332 if (asoc) in __sctp_rcv_lookup()
1339 asoc = __sctp_rcv_lookup_harder(net, skb, laddr, transportp); in __sctp_rcv_lookup()
1340 if (asoc) in __sctp_rcv_lookup()
1353 return asoc; in __sctp_rcv_lookup()