diff options
Diffstat (limited to 'drivers/net/pppox.c')
-rw-r--r-- | drivers/net/pppox.c | 7 |
1 files changed, 5 insertions, 2 deletions
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 | ||
105 | EXPORT_SYMBOL(pppox_ioctl); | 105 | EXPORT_SYMBOL(pppox_ioctl); |
106 | 106 | ||
107 | static int pppox_create(struct socket *sock, int protocol) | 107 | static 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); |
129 | out: | 132 | out: |