Lines Matching refs:newsk
442 static void sctp_v6_copy_ip_options(struct sock *sk, struct sock *newsk)
447 newnp = inet6_sk(newsk);
452 opt = ipv6_dup_options(newsk, opt);
720 struct sock *newsk;
724 newsk = sk_alloc(sock_net(sk), PF_INET6, GFP_KERNEL, sk->sk_prot, kern);
725 if (!newsk)
728 sock_init_data(NULL, newsk);
730 sctp_copy_sock(newsk, sk, asoc);
733 newsctp6sk = (struct sctp6_sock *)newsk;
734 inet_sk(newsk)->pinet6 = &newsctp6sk->inet6;
736 sctp_sk(newsk)->v4mapped = sctp_sk(sk)->v4mapped;
738 newnp = inet6_sk(newsk);
745 sctp_v6_copy_ip_options(sk, newsk);
750 sctp_v6_to_sk_daddr(&asoc->peer.primary_addr, newsk);
752 newsk->sk_v6_rcv_saddr = sk->sk_v6_rcv_saddr;
754 sk_refcnt_debug_inc(newsk);
756 if (newsk->sk_prot->init(newsk)) {
757 sk_common_release(newsk);
758 newsk = NULL;
762 return newsk;