Networking
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 10 Jul 2017 14:00:48 +0000 (22:00 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 12 Jul 2017 10:38:06 +0000 (18:38 +0800)
crypto: af_alg - Avoid sock_graft call warning

The newly added sock_graft warning triggers in af_alg_accept.
It's harmless as we're essentially doing sock->sk = sock->sk.

The sock_graft call is actually redundant because all the work
it does is subsumed by sock_init_data.  However, it was added
to placate SELinux as it uses it to initialise its internal state.

This patch avoisd the warning by making the SELinux call directly.

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: David S. Miller <davem@davemloft.net>
crypto/af_alg.c

index 3556d8eb54a740741fcb282d6c39f5d942ea79f5..92a3d540d9201ff651f94b7d68dc70c672c5166b 100644 (file)
@@ -287,7 +287,7 @@ int af_alg_accept(struct sock *sk, struct socket *newsock, bool kern)
                goto unlock;
 
        sock_init_data(newsock, sk2);
-       sock_graft(sk2, newsock);
+       security_sock_graft(sk2, newsock);
        security_sk_clone(sk, sk2);
 
        err = type->accept(ask->private, sk2);