diff options
author | Amadeusz Sławiński <amadeusz.slawinski@tieto.com> | 2016-07-14 11:50:23 +0300 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2016-07-17 20:59:26 +0300 |
commit | 23bc6ab0a0912146fd674a0becc758c3162baabc (patch) | |
tree | be737d443591bf0b9d10899f60addd88fbcbcaa9 | |
parent | 4360fa22ad5b48a1d1e10e31ffb383ed8c977435 (diff) | |
download | linux-23bc6ab0a0912146fd674a0becc758c3162baabc.tar.xz |
Bluetooth: Fix l2cap_sock_setsockopt() with optname BT_RCVMTU
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
-rw-r--r-- | net/bluetooth/l2cap_sock.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c index 388ee8b59145..1842141baedb 100644 --- a/net/bluetooth/l2cap_sock.c +++ b/net/bluetooth/l2cap_sock.c @@ -927,7 +927,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; } |