summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2019-01-25 22:43:20 +0100
committerDavid S. Miller <davem@davemloft.net>2019-01-30 10:19:31 -0800
commit98406133dd9cb9f195676eab540c270dceca879a (patch)
tree40b3d6fba724dbe524a484986727d2619427c70e
parentc6c9fee35dc27362b7bac34b2fc9f5b8ace2e22c (diff)
downloadlinux-98406133dd9cb9f195676eab540c270dceca879a.tar.gz
net: socket: make bond ioctls go through compat_ifreq_ioctl()
Same story as before, these use struct ifreq and thus need
to be read with the shorter version to not cause faults.

Cc: stable@vger.kernel.org
Fixes: f92d4fc95341 ("kill bond_ioctl()")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/socket.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/net/socket.c b/net/socket.c
index 473ac8d7c54e..d80d87a395ea 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -3258,16 +3258,16 @@ static int compat_sock_ioctl_trans(struct file *file, struct socket *sock,
 	case SIOCGMIIPHY:
 	case SIOCGMIIREG:
 	case SIOCSMIIREG:
+	case SIOCBONDENSLAVE:
+	case SIOCBONDRELEASE:
+	case SIOCBONDSETHWADDR:
+	case SIOCBONDCHANGEACTIVE:
 		return compat_ifreq_ioctl(net, sock, cmd, argp);
 
 	case SIOCSARP:
 	case SIOCGARP:
 	case SIOCDARP:
 	case SIOCATMARK:
-	case SIOCBONDENSLAVE:
-	case SIOCBONDRELEASE:
-	case SIOCBONDSETHWADDR:
-	case SIOCBONDCHANGEACTIVE:
 		return sock_do_ioctl(net, sock, cmd, arg);
 	}