diff options
author | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2016-08-12 15:11:28 +0300 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2016-08-25 20:58:47 +0200 |
commit | 90a56f72edb088c678083c32d05936c7c8d9a948 (patch) | |
tree | 77ae81d5190d168dff3f78c55de97a88865af6f5 /net/bluetooth/af_bluetooth.c | |
parent | dbb50887c8f619fc5c3489783ebc3122bc134a31 (diff) | |
download | linux-90a56f72edb088c678083c32d05936c7c8d9a948.tar.gz linux-90a56f72edb088c678083c32d05936c7c8d9a948.tar.bz2 linux-90a56f72edb088c678083c32d05936c7c8d9a948.zip |
Bluetooth: Fix bt_sock_recvmsg when MSG_TRUNC is not set
Commit b5f34f9420b50c9b5876b9a2b68e96be6d629054 attempt to introduce
proper handling for MSG_TRUNC but recv and variants should still work
as read if no flag is passed, but because the code may set MSG_TRUNC to
msg->msg_flags that shall not be used as it may cause it to be behave as
if MSG_TRUNC is always, so instead of using it this changes the code to
use the flags parameter which shall contain the original flags.
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/af_bluetooth.c')
-rw-r--r-- | net/bluetooth/af_bluetooth.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bluetooth/af_bluetooth.c b/net/bluetooth/af_bluetooth.c index ece45e0683fd..0b5f729d08d2 100644 --- a/net/bluetooth/af_bluetooth.c +++ b/net/bluetooth/af_bluetooth.c @@ -250,7 +250,7 @@ int bt_sock_recvmsg(struct socket *sock, struct msghdr *msg, size_t len, skb_free_datagram(sk, skb); - if (msg->msg_flags & MSG_TRUNC) + if (flags & MSG_TRUNC) copied = skblen; return err ? : copied; |