Re: [PATCH BlueZ 0/1] [v2] ExcludeAdapter configuration setting for input plugin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Sat, Jul 9, 2022 at 11:38 AM shwoseph <shwoseph@xxxxxxxxx> wrote:
>
> As a bluez user I have run into cases where the input plugin can be problematic because it binds both HID PSMs on all bluetooth adapters. Simply disabling the plugin is not an ideal solution if you want to, for example, run an application that binds PSMs 17 and 19 on adapterA while using a bluetooth input device on adapterB. This proposed feature would allow users to determine which of their adapters can be engaged by the input plugin. Using the ExcludeAdapters key in input.conf a comma separated list of bdaddrs can be specified that the input plugin will not start a server on.
>
> shwoseph (1):
>   ExcludeAdapter configuration setting for input profile
>
>  profiles/input/device.c   | 22 ++++++++++++++++++++++
>  profiles/input/device.h   |  4 ++++
>  profiles/input/input.conf |  4 ++++
>  profiles/input/manager.c  | 34 +++++++++++++++++++++++++++++++++-
>  4 files changed, 63 insertions(+), 1 deletion(-)
>
> --
> 2.32.0

Well those PSM would require root to bind anyway so if the intention
is to allow implementing something like an HID device perhaps we would
better off allowing RegisterProfile with HID UUID that way the daemon
still have control of these PSMs but it can dispatch the connections
to an application that has registered:

https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/profile-api.txt

On the plus side you can register an SDP record for it, but we may
need to do some changes if we want profile to be registered only to a
specific adapter.

-- 
Luiz Augusto von Dentz




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux