econet: Do the correct cleanup after an unprivileged SIOCSIFADDR.
We need to drop the mutex and do a dev_put, so set an error code and break like the other paths, instead of returning directly. Signed-off-by: Nelson Elhage <nelhage@ksplice.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0833847552
commit
0c62fc6dd0
|
@ -661,8 +661,10 @@ static int ec_dev_ioctl(struct socket *sock, unsigned int cmd, void __user *arg)
|
||||||
err = 0;
|
err = 0;
|
||||||
switch (cmd) {
|
switch (cmd) {
|
||||||
case SIOCSIFADDR:
|
case SIOCSIFADDR:
|
||||||
if (!capable(CAP_NET_ADMIN))
|
if (!capable(CAP_NET_ADMIN)) {
|
||||||
return -EPERM;
|
err = -EPERM;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
edev = dev->ec_ptr;
|
edev = dev->ec_ptr;
|
||||||
if (edev == NULL) {
|
if (edev == NULL) {
|
||||||
|
|
Loading…
Reference in New Issue