aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/pppoe.c4
-rw-r--r--drivers/net/pppol2tp.c4
-rw-r--r--drivers/net/pppox.c7
3 files changed, 9 insertions, 6 deletions
diff --git a/drivers/net/pppoe.c b/drivers/net/pppoe.c
index ee8ce195c538..53fcee26d6ae 100644
--- a/drivers/net/pppoe.c
+++ b/drivers/net/pppoe.c
@@ -477,12 +477,12 @@ static struct proto pppoe_sk_proto = {
477 * Initialize a new struct sock. 477 * Initialize a new struct sock.
478 * 478 *
479 **********************************************************************/ 479 **********************************************************************/
480static int pppoe_create(struct socket *sock) 480static int pppoe_create(struct net *net, struct socket *sock)
481{ 481{
482 int error = -ENOMEM; 482 int error = -ENOMEM;
483 struct sock *sk; 483 struct sock *sk;
484 484
485 sk = sk_alloc(PF_PPPOX, GFP_KERNEL, &pppoe_sk_proto, 1); 485 sk = sk_alloc(net, PF_PPPOX, GFP_KERNEL, &pppoe_sk_proto, 1);
486 if (!sk) 486 if (!sk)
487 goto out; 487 goto out;
488 488
diff --git a/drivers/net/pppol2tp.c b/drivers/net/pppol2tp.c
index 2eb424ba58e5..921d4ef6d14b 100644
--- a/drivers/net/pppol2tp.c
+++ b/drivers/net/pppol2tp.c
@@ -1411,12 +1411,12 @@ static struct proto pppol2tp_sk_proto = {
1411 1411
1412/* socket() handler. Initialize a new struct sock. 1412/* socket() handler. Initialize a new struct sock.
1413 */ 1413 */
1414static int pppol2tp_create(struct socket *sock) 1414static int pppol2tp_create(struct net *net, struct socket *sock)
1415{ 1415{
1416 int error = -ENOMEM; 1416 int error = -ENOMEM;
1417 struct sock *sk; 1417 struct sock *sk;
1418 1418
1419 sk = sk_alloc(PF_PPPOX, GFP_KERNEL, &pppol2tp_sk_proto, 1); 1419 sk = sk_alloc(net, PF_PPPOX, GFP_KERNEL, &pppol2tp_sk_proto, 1);
1420 if (!sk) 1420 if (!sk)
1421 goto out; 1421 goto out;
1422 1422
diff --git a/drivers/net/pppox.c b/drivers/net/pppox.c
index 25c52b55c38f..c6898c1fc54d 100644
--- a/drivers/net/pppox.c
+++ b/drivers/net/pppox.c
@@ -104,10 +104,13 @@ int pppox_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
104 104
105EXPORT_SYMBOL(pppox_ioctl); 105EXPORT_SYMBOL(pppox_ioctl);
106 106
107static int pppox_create(struct socket *sock, int protocol) 107static int pppox_create(struct net *net, struct socket *sock, int protocol)
108{ 108{
109 int rc = -EPROTOTYPE; 109 int rc = -EPROTOTYPE;
110 110
111 if (net != &init_net)
112 return -EAFNOSUPPORT;
113
111 if (protocol < 0 || protocol > PX_MAX_PROTO) 114 if (protocol < 0 || protocol > PX_MAX_PROTO)
112 goto out; 115 goto out;
113 116
@@ -123,7 +126,7 @@ static int pppox_create(struct socket *sock, int protocol)
123 !try_module_get(pppox_protos[protocol]->owner)) 126 !try_module_get(pppox_protos[protocol]->owner))
124 goto out; 127 goto out;
125 128
126 rc = pppox_protos[protocol]->create(sock); 129 rc = pppox_protos[protocol]->create(net, sock);
127 130
128 module_put(pppox_protos[protocol]->owner); 131 module_put(pppox_protos[protocol]->owner);
129out: 132out: