net: socket: fix SIOCGIFNAME in compat
As reported by Robert O'Callahan in
https://bugzilla.kernel.org/show_bug.cgi?id=202273
reverting the previous changes in this area broke
the SIOCGIFNAME ioctl in compat again (I'd previously
fixed it after his previous report of breakage in
https://bugzilla.kernel.org/show_bug.cgi?id=199469).
This is obviously because I fixed SIOCGIFNAME more or
less by accident.
Fix it explicitly now by making it pass through the
restored compat translation code.
Cc: stable@vger.kernel.org
Fixes: 4cf808e7ac
("kill dev_ifname32()")
Reported-by: Robert O'Callahan <robert@ocallahan.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
37ac39bddd
commit
c6c9fee35d
|
@ -3029,6 +3029,7 @@ static int compat_ifreq_ioctl(struct net *net, struct socket *sock,
|
||||||
case SIOCGIFTXQLEN:
|
case SIOCGIFTXQLEN:
|
||||||
case SIOCGMIIPHY:
|
case SIOCGMIIPHY:
|
||||||
case SIOCGMIIREG:
|
case SIOCGMIIREG:
|
||||||
|
case SIOCGIFNAME:
|
||||||
if (copy_in_user(uifr32, uifr, sizeof(*uifr32)))
|
if (copy_in_user(uifr32, uifr, sizeof(*uifr32)))
|
||||||
err = -EFAULT;
|
err = -EFAULT;
|
||||||
break;
|
break;
|
||||||
|
@ -3252,6 +3253,7 @@ static int compat_sock_ioctl_trans(struct file *file, struct socket *sock,
|
||||||
case SIOCSIFTXQLEN:
|
case SIOCSIFTXQLEN:
|
||||||
case SIOCBRADDIF:
|
case SIOCBRADDIF:
|
||||||
case SIOCBRDELIF:
|
case SIOCBRDELIF:
|
||||||
|
case SIOCGIFNAME:
|
||||||
case SIOCSIFNAME:
|
case SIOCSIFNAME:
|
||||||
case SIOCGMIIPHY:
|
case SIOCGMIIPHY:
|
||||||
case SIOCGMIIREG:
|
case SIOCGMIIREG:
|
||||||
|
@ -3266,7 +3268,6 @@ static int compat_sock_ioctl_trans(struct file *file, struct socket *sock,
|
||||||
case SIOCBONDRELEASE:
|
case SIOCBONDRELEASE:
|
||||||
case SIOCBONDSETHWADDR:
|
case SIOCBONDSETHWADDR:
|
||||||
case SIOCBONDCHANGEACTIVE:
|
case SIOCBONDCHANGEACTIVE:
|
||||||
case SIOCGIFNAME:
|
|
||||||
return sock_do_ioctl(net, sock, cmd, arg);
|
return sock_do_ioctl(net, sock, cmd, arg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue