Bluetooth: Add option for disabling legacy ioctl interfaces
The legacy ioctl interfaces are only useful for BR/EDR operation and since Linux 3.4 no longer needed anyway. This options allows disabling them alltogether and use only management interfaces for setup and control. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
parent
96a1c173ea
commit
dbbccdc4ce
|
@ -126,4 +126,14 @@ config BT_DEBUGFS
|
|||
Provide extensive information about internal Bluetooth states
|
||||
in debugfs.
|
||||
|
||||
config BT_LEGACY_IOCTL
|
||||
bool "Enable legacy ioctl interfaces"
|
||||
depends on BT && BT_BREDR
|
||||
default y
|
||||
help
|
||||
Enable support for legacy ioctl interfaces. This is only needed
|
||||
for old and deprecated applications using direct ioctl calls for
|
||||
controller management. Since Linux 3.4 all configuration and
|
||||
setup is done via mgmt interface and this is no longer needed.
|
||||
|
||||
source "drivers/bluetooth/Kconfig"
|
||||
|
|
|
@ -878,6 +878,7 @@ static int hci_sock_release(struct socket *sock)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_BT_LEGACY_IOCTL
|
||||
static int hci_sock_blacklist_add(struct hci_dev *hdev, void __user *arg)
|
||||
{
|
||||
bdaddr_t bdaddr;
|
||||
|
@ -1049,6 +1050,7 @@ done:
|
|||
release_sock(sk);
|
||||
return err;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int hci_sock_bind(struct socket *sock, struct sockaddr *addr,
|
||||
int addr_len)
|
||||
|
@ -1969,7 +1971,11 @@ static const struct proto_ops hci_sock_ops = {
|
|||
.getname = hci_sock_getname,
|
||||
.sendmsg = hci_sock_sendmsg,
|
||||
.recvmsg = hci_sock_recvmsg,
|
||||
#ifdef CONFIG_BT_LEGACY_IOCTL
|
||||
.ioctl = hci_sock_ioctl,
|
||||
#else
|
||||
.ioctl = sock_no_ioctl,
|
||||
#endif
|
||||
.poll = datagram_poll,
|
||||
.listen = sock_no_listen,
|
||||
.shutdown = sock_no_shutdown,
|
||||
|
|
Loading…
Reference in New Issue