summaryrefslogtreecommitdiff
path: root/net/bluetooth/l2cap_sock.c
diff options
context:
space:
mode:
authorAmadeusz Sławiński <amadeusz.slawinski@tieto.com>2016-07-14 11:50:23 +0300
committerSasha Levin <alexander.levin@verizon.com>2016-08-22 19:23:12 +0300
commit6da472870a3d94d107a4e5af4164c422b3afac19 (patch)
treee5e9a2296a2a8ceecdcc16fe91384144220a3eb8 /net/bluetooth/l2cap_sock.c
parentb94d5a7f7813392d534256c023c83717721ef58d (diff)
downloadlinux-6da472870a3d94d107a4e5af4164c422b3afac19.tar.xz
Bluetooth: Fix l2cap_sock_setsockopt() with optname BT_RCVMTU
[ Upstream commit 23bc6ab0a0912146fd674a0becc758c3162baabc ] When we retrieve imtu value from userspace we should use 16 bit pointer cast instead of 32 as it's defined that way in headers. Fixes setsockopt calls on big-endian platforms. Signed-off-by: Amadeusz Sławiński <amadeusz.slawinski@tieto.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Cc: stable@vger.kernel.org Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Diffstat (limited to 'net/bluetooth/l2cap_sock.c')
-rw-r--r--net/bluetooth/l2cap_sock.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c
index 31f106e61ca2..79678aafae6c 100644
--- a/net/bluetooth/l2cap_sock.c
+++ b/net/bluetooth/l2cap_sock.c
@@ -922,7 +922,7 @@ static int l2cap_sock_setsockopt(struct socket *sock, int level, int optname,
break;
}
- if (get_user(opt, (u32 __user *) optval)) {
+ if (get_user(opt, (u16 __user *) optval)) {
err = -EFAULT;
break;
}