diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2018-05-29 16:33:48 +0300 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2018-05-30 08:16:04 +0200 |
commit | 3bf5e97d7bbd175248da02efca2b265d13fb6041 (patch) | |
tree | c52acb227090112c167fc5ceff3c5a3fb1d32d7d /net/bluetooth/smp.c | |
parent | 9960521c44a5d828f29636ceac0600603ecbddbf (diff) | |
download | linux-3bf5e97d7bbd175248da02efca2b265d13fb6041.tar.gz linux-3bf5e97d7bbd175248da02efca2b265d13fb6041.tar.bz2 linux-3bf5e97d7bbd175248da02efca2b265d13fb6041.zip |
Bluetooth: Re-use kstrtobool_from_user()
Re-use kstrtobool_from_user() instead of open coded variant.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/smp.c')
-rw-r--r-- | net/bluetooth/smp.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/net/bluetooth/smp.c b/net/bluetooth/smp.c index a2ddae2f37d7..ae91e2d40056 100644 --- a/net/bluetooth/smp.c +++ b/net/bluetooth/smp.c @@ -3315,16 +3315,12 @@ static ssize_t force_bredr_smp_write(struct file *file, size_t count, loff_t *ppos) { struct hci_dev *hdev = file->private_data; - char buf[32]; - size_t buf_size = min(count, (sizeof(buf)-1)); bool enable; + int err; - if (copy_from_user(buf, user_buf, buf_size)) - return -EFAULT; - - buf[buf_size] = '\0'; - if (strtobool(buf, &enable)) - return -EINVAL; + err = kstrtobool_from_user(user_buf, count, &enable); + if (err) + return err; if (enable == hci_dev_test_flag(hdev, HCI_FORCE_BREDR_SMP)) return -EALREADY; |