Lines Matching full:asoc

91 	struct sctp_association *asoc;  in sctp_rcv()  local
165 asoc = __sctp_rcv_lookup(net, skb, &src, &dest, &transport, dif, sdif); in sctp_rcv()
167 if (!asoc) in sctp_rcv()
171 rcvr = asoc ? &asoc->base : &ep->base; in sctp_rcv()
182 if (!asoc) { in sctp_rcv()
197 chunk = sctp_chunkify(skb, asoc, sk, GFP_ATOMIC); in sctp_rcv()
248 /* Release the asoc/ep ref we took in the lookup calls. */ in sctp_rcv()
262 /* Release the asoc/ep ref we took in the lookup calls. */ in sctp_rcv()
372 void sctp_icmp_frag_needed(struct sock *sk, struct sctp_association *asoc, in sctp_icmp_frag_needed() argument
382 asoc->pmtu_pending = 1; in sctp_icmp_frag_needed()
402 sctp_assoc_sync_pmtu(asoc); in sctp_icmp_frag_needed()
405 sctp_retransmit(&asoc->outqueue, t, SCTP_RTXR_PMTUD); in sctp_icmp_frag_needed()
432 struct sctp_association *asoc, in sctp_icmp_proto_unreachable() argument
454 asoc->state, asoc->ep, asoc, t, in sctp_icmp_proto_unreachable()
470 struct sctp_association *asoc; in sctp_err_lookup() local
490 asoc = __sctp_lookup_association(net, &saddr, &daddr, &transport, dif, sdif); in sctp_err_lookup()
491 if (!asoc) in sctp_err_lookup()
494 sk = asoc->base.sk; in sctp_err_lookup()
516 ntohl(chunkhdr->init_hdr.init_tag) != asoc->c.my_vtag) in sctp_err_lookup()
519 } else if (vtag != asoc->c.peer_vtag) { in sctp_err_lookup()
531 *app = asoc; in sctp_err_lookup()
551 struct sctp_association *asoc = t->asoc; in sctp_v4_err_handle() local
552 struct sock *sk = asoc->base.sk; in sctp_v4_err_handle()
563 sctp_icmp_frag_needed(sk, asoc, t, SCTP_TRUNC4(info)); in sctp_v4_err_handle()
567 sctp_icmp_proto_unreachable(sk, asoc, t); in sctp_v4_err_handle()
614 struct sctp_association *asoc; in sctp_v4_err() local
623 sk = sctp_err_lookup(net, AF_INET, skb, sctp_hdr(skb), &asoc, &transport); in sctp_v4_err()
641 struct sctp_association *asoc; in sctp_udp_v4_err() local
647 sk = sctp_err_lookup(net, AF_INET, skb, sctp_hdr(skb), &asoc, &t); in sctp_udp_v4_err()
897 if (!net_eq(t->asoc->base.net, x->net)) in sctp_hash_cmp()
899 if (x->lport != htons(t->asoc->base.bind_addr.port)) in sctp_hash_cmp()
912 return sctp_hashfn(t->asoc->base.net, in sctp_hash_obj()
913 htons(t->asoc->base.bind_addr.port), in sctp_hash_obj()
949 if (t->asoc->temp) in sctp_hash_transport()
952 arg.net = t->asoc->base.net; in sctp_hash_transport()
954 arg.lport = htons(t->asoc->base.bind_addr.port); in sctp_hash_transport()
961 if (transport->asoc->ep == t->asoc->ep) { in sctp_hash_transport()
977 if (t->asoc->temp) in sctp_unhash_transport()
1017 bound_dev_if = READ_ONCE(t->asoc->base.sk->sk_bound_dev_if); in sctp_addrs_lookup_transport()
1019 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()
1060 struct sctp_association *asoc = NULL; in __sctp_lookup_association() local
1066 asoc = t->asoc; in __sctp_lookup_association()
1070 return asoc; in __sctp_lookup_association()
1081 struct sctp_association *asoc; in sctp_lookup_association() local
1084 asoc = __sctp_lookup_association(net, laddr, paddr, transportp, dif, sdif); in sctp_lookup_association()
1087 return asoc; in sctp_lookup_association()
1129 struct sctp_association *asoc; in __sctp_rcv_init_lookup() local
1166 asoc = __sctp_lookup_association(net, laddr, paddr, transportp, dif, sdif); in __sctp_rcv_init_lookup()
1167 if (asoc) in __sctp_rcv_init_lookup()
1168 return asoc; in __sctp_rcv_init_lookup()
1233 struct sctp_association *asoc = NULL; in __sctp_rcv_walk_lookup() local
1271 asoc = __sctp_rcv_asconf_lookup( in __sctp_rcv_walk_lookup()
1280 if (asoc) in __sctp_rcv_walk_lookup()
1287 return asoc; in __sctp_rcv_walk_lookup()
1337 struct sctp_association *asoc; in __sctp_rcv_lookup() local
1339 asoc = __sctp_lookup_association(net, laddr, paddr, transportp, dif, sdif); in __sctp_rcv_lookup()
1340 if (asoc) in __sctp_rcv_lookup()
1347 asoc = __sctp_rcv_lookup_harder(net, skb, laddr, transportp, dif, sdif); in __sctp_rcv_lookup()
1348 if (asoc) in __sctp_rcv_lookup()
1352 pr_debug("sctp: asoc not found for src:%pI4:%d dst:%pI4:%d\n", in __sctp_rcv_lookup()
1356 pr_debug("sctp: asoc not found for src:%pI6:%d dst:%pI6:%d\n", in __sctp_rcv_lookup()
1361 return asoc; in __sctp_rcv_lookup()