diff options
Diffstat (limited to 'net/ipv6/af_inet6.c')
-rw-r--r-- | net/ipv6/af_inet6.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c index 7c9f19269f21..68afc53be662 100644 --- a/net/ipv6/af_inet6.c +++ b/net/ipv6/af_inet6.c | |||
@@ -434,7 +434,6 @@ int inet6_getname(struct socket *sock, struct sockaddr *uaddr, | |||
434 | int inet6_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) | 434 | int inet6_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) |
435 | { | 435 | { |
436 | struct sock *sk = sock->sk; | 436 | struct sock *sk = sock->sk; |
437 | int err = -EINVAL; | ||
438 | 437 | ||
439 | switch(cmd) | 438 | switch(cmd) |
440 | { | 439 | { |
@@ -453,10 +452,9 @@ int inet6_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg) | |||
453 | case SIOCSIFDSTADDR: | 452 | case SIOCSIFDSTADDR: |
454 | return addrconf_set_dstaddr((void __user *) arg); | 453 | return addrconf_set_dstaddr((void __user *) arg); |
455 | default: | 454 | default: |
456 | if (!sk->sk_prot->ioctl || | 455 | if (!sk->sk_prot->ioctl) |
457 | (err = sk->sk_prot->ioctl(sk, cmd, arg)) == -ENOIOCTLCMD) | 456 | return -ENOIOCTLCMD; |
458 | return(dev_ioctl(cmd,(void __user *) arg)); | 457 | return sk->sk_prot->ioctl(sk, cmd, arg); |
459 | return err; | ||
460 | } | 458 | } |
461 | /*NOTREACHED*/ | 459 | /*NOTREACHED*/ |
462 | return(0); | 460 | return(0); |