#
d9763698 |
| 13-Oct-2013 |
Marcel Holtmann <marcel@holtmann.org> |
Bluetooth: Add support for per socket msg_name callback
This allows to add a per socket msg_name callback that can be used for updating the msg_name information for recvmsg() system calls.
This fea
Bluetooth: Add support for per socket msg_name callback
This allows to add a per socket msg_name callback that can be used for updating the msg_name information for recvmsg() system calls.
This feature is used by another patch to support address information on L2CAP connectionless channels.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
show more ...
|
#
5f6cd79f |
| 13-Oct-2013 |
Marcel Holtmann <marcel@holtmann.org> |
Bluetooth: Remove src and dst fields from bt_sock structure
Every socket protocol now stores its own address information. So just remove the generic src and dst fields since they are no longer neede
Bluetooth: Remove src and dst fields from bt_sock structure
Every socket protocol now stores its own address information. So just remove the generic src and dst fields since they are no longer needed.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
show more ...
|
Revision tags: v3.12-rc4 |
|
#
a59ac2f7 |
| 02-Oct-2013 |
Marcel Holtmann <marcel@holtmann.org> |
Bluetooth: Replace BDADDR_LOCAL with BDADDR_NONE
The BDADDR_LOCAL is a relict from userspace and has never been used within the kernel. So remove that constant and replace it with a new BDADDR_NONE
Bluetooth: Replace BDADDR_LOCAL with BDADDR_NONE
The BDADDR_LOCAL is a relict from userspace and has never been used within the kernel. So remove that constant and replace it with a new BDADDR_NONE that is similar to HCI_DEV_NONE with all bits set.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
show more ...
|
Revision tags: v3.12-rc3, v3.12-rc2 |
|
#
e74e58f8 |
| 23-Sep-2013 |
Joe Perches <joe@perches.com> |
bluetooth: Remove extern from function prototypes
There are a mix of function prototypes with and without extern in the kernel sources. Standardize on not using extern for function prototypes.
Fun
bluetooth: Remove extern from function prototypes
There are a mix of function prototypes with and without extern in the kernel sources. Standardize on not using extern for function prototypes.
Function prototypes don't need to be written with extern. extern is assumed by the compiler. Its use is as unnecessary as using auto to declare automatic/local variables in a block.
Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v3.12-rc1 |
|
#
e793dcf0 |
| 16-Sep-2013 |
Johan Hedberg <johan.hedberg@intel.com> |
Bluetooth: Fix waiting for clearing of BT_SK_SUSPEND flag
In the case of blocking sockets we should not proceed with sendmsg() if the socket has the BT_SK_SUSPEND flag set. So far the code was only
Bluetooth: Fix waiting for clearing of BT_SK_SUSPEND flag
In the case of blocking sockets we should not proceed with sendmsg() if the socket has the BT_SK_SUSPEND flag set. So far the code was only ensuring that POLLOUT doesn't get set for non-blocking sockets using poll() but there was no code in place to ensure that blocking sockets do the right thing when writing to them.
This patch adds a new bt_sock_wait_ready helper function to sleep in the sendmsg call if the BT_SK_SUSPEND flag is set, and wake up as soon as it is unset. It also updates the L2CAP and RFCOMM sendmsg callbacks to take advantage of this new helper function.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
Revision tags: v3.11, v3.11-rc7 |
|
#
ad10b1a4 |
| 19-Aug-2013 |
Frédéric Dalleau <frederic.dalleau@linux.intel.com> |
Bluetooth: Add Bluetooth socket voice option
This patch extends the current Bluetooth socket options with BT_VOICE. This is intended to choose voice data type at runtime. It only applies to SCO sock
Bluetooth: Add Bluetooth socket voice option
This patch extends the current Bluetooth socket options with BT_VOICE. This is intended to choose voice data type at runtime. It only applies to SCO sockets. Incoming connections shall be setup during deferred setup. Outgoing connections shall be setup before connect(). The desired setting is stored in the SCO socket info. This patch declares needed members, modifies getsockopt() and setsockopt().
Signed-off-by: Frédéric Dalleau <frederic.dalleau@linux.intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
Revision tags: v3.11-rc6, v3.11-rc5, v3.11-rc4, v3.11-rc3, v3.11-rc2, v3.11-rc1, v3.10, v3.10-rc7, v3.10-rc6, v3.10-rc5, v3.10-rc4, v3.10-rc3, v3.10-rc2, v3.10-rc1, v3.9, v3.9-rc8, v3.9-rc7, v3.9-rc6 |
|
#
f53c20e9 |
| 06-Apr-2013 |
David Herrmann <dh.herrmann@gmail.com> |
Bluetooth: allow constant arguments for bacmp()/bacpy()
There is no reason to require the source arguments to be writeable so fix this to allow constant source addresses.
Signed-off-by: David Herrm
Bluetooth: allow constant arguments for bacmp()/bacpy()
There is no reason to require the source arguments to be writeable so fix this to allow constant source addresses.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
#
c10c062c |
| 04-Apr-2013 |
Al Viro <viro@zeniv.linux.org.uk> |
bluetooth: kill unused fops field in struct bt_sock_list
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
|
#
b0316615 |
| 04-Apr-2013 |
Al Viro <viro@zeniv.linux.org.uk> |
bluetooth: kill unused 'module' argument of bt_procfs_init()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
|
#
02350a72 |
| 03-Apr-2013 |
Johan Hedberg <johan.hedberg@intel.com> |
Bluetooth: Add support for custom event terminated commands
This patch adds support for having commands within HCI requests that do not result in a command complete but some other event. This is at
Bluetooth: Add support for custom event terminated commands
This patch adds support for having commands within HCI requests that do not result in a command complete but some other event. This is at least needed for some vendor specific commands to be issued in the hdev->setup() procecure, but might also be useful for other commands.
The way that the support is implemented is by extending the skb control buffer to have a field to indicate that the command is expected to terminate with a special event. After sending the command each received event can then be compared against this field through hdev->sent_cmd.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org>
show more ...
|
Revision tags: v3.9-rc5, v3.9-rc4, v3.9-rc3, v3.9-rc2 |
|
#
3119ae95 |
| 05-Mar-2013 |
Johan Hedberg <johan.hedberg@intel.com> |
Bluetooth: Add initial skeleton for asynchronous HCI requests
This patch adds the initial definitions and functions for asynchronous HCI requests. Asynchronous requests are essentially a group of HC
Bluetooth: Add initial skeleton for asynchronous HCI requests
This patch adds the initial definitions and functions for asynchronous HCI requests. Asynchronous requests are essentially a group of HCI commands together with an optional completion callback. The request is tracked through the already existing command queue by having the necessary context information as part of the control buffer of each skb.
The only information needed in the skb control buffer is a flag for indicating that the skb is the start of a request as well as the optional complete callback that should be used when the request is complete (this will be found in the last skb of the request).
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
Revision tags: v3.9-rc1 |
|
#
be9f97f0 |
| 24-Feb-2013 |
David Herrmann <dh.herrmann@gmail.com> |
Bluetooth: change bt_sock_unregister() to return void
There is no reason a caller ever wants to check the return type of this call. _Iff_ a user successfully called bt_sock_register(), they're allow
Bluetooth: change bt_sock_unregister() to return void
There is no reason a caller ever wants to check the return type of this call. _Iff_ a user successfully called bt_sock_register(), they're allowed to call bt_sock_unregister(). All other calls in the kernel (device_del, device_unregister, kfree(), ..) that are logically equivalent return void. Lets not make callers think they have to check the return type of this call and instead simply return void.
We guarantee that after bt_sock_unregister() is called, the socket type _is_ unregistered. If that is not what the caller wants, they're using the wrong function, anyway.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
Revision tags: v3.8, v3.8-rc7, v3.8-rc6, v3.8-rc5 |
|
#
679efe2b |
| 20-Jan-2013 |
Johan Hedberg <johan.hedberg@intel.com> |
Bluetooth: Add helper functions for testing bdaddr types
This patch adds two helper functions to test for valid bdaddr type values. These will be particularely useful in the mgmt code to check that
Bluetooth: Add helper functions for testing bdaddr types
This patch adds two helper functions to test for valid bdaddr type values. These will be particularely useful in the mgmt code to check that user space has passed valid values to the kernel.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
Revision tags: v3.8-rc4, v3.8-rc3, v3.8-rc2, v3.8-rc1, v3.7, v3.7-rc8, v3.7-rc7, v3.7-rc6, v3.7-rc5, v3.7-rc4, v3.7-rc3, v3.7-rc2, v3.7-rc1, v3.6 |
|
#
d945df25 |
| 25-Sep-2012 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
bluetooth: Remove unneeded batostr function
batostr is not needed anymore since for printing Bluetooth addresses we use %pMR specifier.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.c
bluetooth: Remove unneeded batostr function
batostr is not needed anymore since for printing Bluetooth addresses we use %pMR specifier.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
Revision tags: v3.6-rc7, v3.6-rc6, v3.6-rc5, v3.6-rc4, v3.6-rc3, v3.6-rc2, v3.6-rc1 |
|
#
256a06c8 |
| 25-Jul-2012 |
Masatake YAMATO <yamato@redhat.com> |
Bluetooth: /proc/net/ entries for bluetooth protocols
lsof command can tell the type of socket processes are using. Internal lsof uses inode numbers on socket fs to resolve the type of sockets. File
Bluetooth: /proc/net/ entries for bluetooth protocols
lsof command can tell the type of socket processes are using. Internal lsof uses inode numbers on socket fs to resolve the type of sockets. Files under /proc/net/, such as tcp, udp, unix, etc provides such inode information.
Unfortunately bluetooth related protocols don't provide such inode information. This patch series introduces /proc/net files for the protocols.
This patch against af_bluetooth.c provides facility to the implementation of protocols. This patch extends bt_sock_list and introduces two exported function bt_procfs_init, bt_procfs_cleanup.
The type bt_sock_list is already used in some of implementation of protocols. bt_procfs_init prepare seq_operations which converts protocol own bt_sock_list data to protocol own proc entry when the entry is accessed.
What I, lsof user, need is just inode number of bluetooth socket. However, people may want more information. The bt_procfs_init takes a function pointer for customizing the show handler of seq_operations.
In v4 patch, __acquires and __releases attributes are added to suppress sparse warning. Suggested by Andrei Emeltchenko.
In v5 patch, linux/proc_fs.h is included to use PDE. Build error is reported by Fengguang Wu.
Signed-off-by: Masatake YAMATO <yamato@redhat.com> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
show more ...
|
Revision tags: v3.5, v3.5-rc7, v3.5-rc6, v3.5-rc5, v3.5-rc4, v3.5-rc3, v3.5-rc2, v3.5-rc1 |
|
#
8c520a59 |
| 23-May-2012 |
Gustavo Padovan <gustavo.padovan@collabora.co.uk> |
Bluetooth: Remove unnecessary headers include
Most of the include were unnecessary or already included by some other header. Replace module.h by export.h where possible.
Signed-off-by: Gustavo Pado
Bluetooth: Remove unnecessary headers include
Most of the include were unnecessary or already included by some other header. Replace module.h by export.h where possible.
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
show more ...
|
#
c3c7ea65 |
| 23-May-2012 |
Gustavo Padovan <gustavo.padovan@collabora.co.uk> |
Bluetooth: Fix coding style in include/net/bluetooth
Fix all warning and errors reported by checkpatch but license trailing whitespace and bdaddr_t definition.
Signed-off-by: Gustavo Padovan <gusta
Bluetooth: Fix coding style in include/net/bluetooth
Fix all warning and errors reported by checkpatch but license trailing whitespace and bdaddr_t definition.
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
show more ...
|
#
38351c66 |
| 22-May-2012 |
Gustavo Padovan <gustavo.padovan@collabora.co.uk> |
Bluetooth: Fix trailing whitespaces in license text
As reported by checkpatch.pl
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
|
Revision tags: v3.4 |
|
#
c5daa683 |
| 16-May-2012 |
Gustavo Padovan <gustavo@padovan.org> |
Bluetooth: Create flags for bt_sk()
defer_setup and suspended are now flags into bt_sk().
Signed-off-by: Gustavo Padovan <gustavo@padovan.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
|
Revision tags: v3.4-rc7, v3.4-rc6 |
|
#
a6a5568c |
| 04-May-2012 |
Mat Martineau <mathewm@codeaurora.org> |
Bluetooth: Lock the L2CAP channel when sending
The ERTM and streaming mode transmit queue must only be accessed while the L2CAP channel lock is held. Locking the channel before calling l2cap_chan_s
Bluetooth: Lock the L2CAP channel when sending
The ERTM and streaming mode transmit queue must only be accessed while the L2CAP channel lock is held. Locking the channel before calling l2cap_chan_send ensures that multiple threads cannot simultaneously manipulate the queue when sending and receiving concurrently.
L2CAP channel locking had previously moved to the l2cap_chan struct instead of the associated socket, so some of the old socket locking can also be removed in this patch.
Signed-off-by: Mat Martineau <mathewm@codeaurora.org> Signed-off-by: Gustavo Padovan <gustavo@padovan.org>
show more ...
|
#
a7d7723a |
| 13-May-2012 |
Gustavo Padovan <gustavo@padovan.org> |
Bluetooth: notify userspace of security level change
It fixes L2CAP socket based security level elevation during a connection. The HID profile needs this (for keyboards) and it is the only way to ac
Bluetooth: notify userspace of security level change
It fixes L2CAP socket based security level elevation during a connection. The HID profile needs this (for keyboards) and it is the only way to achieve the security level elevation when using the management interface to talk to the kernel (hence the management enabling patch being the one that exposes this issue).
It enables the userspace a security level change when the socket is already connected and create a way to notify the socket the result of the request. At the moment of the request the socket is made non writable, if the request fails the connections closes, otherwise the socket is made writable again, POLL_OUT is emmited.
Signed-off-by: Gustavo Padovan <gustavo@padovan.org> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
show more ...
|
Revision tags: v3.4-rc5 |
|
#
3ce3514f |
| 25-Apr-2012 |
Mat Martineau <mathewm@codeaurora.org> |
Bluetooth: Remove duplicate structure members from bt_skb_cb
These values are now in the nested l2cap_ctrl struct.
Signed-off-by: Mat Martineau <mathewm@codeaurora.org> Acked-by: Marcel Holtmann <m
Bluetooth: Remove duplicate structure members from bt_skb_cb
These values are now in the nested l2cap_ctrl struct.
Signed-off-by: Mat Martineau <mathewm@codeaurora.org> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo@padovan.org>
show more ...
|
#
591f47f3 |
| 24-Apr-2012 |
Andre Guedes <andre.guedes@openbossa.org> |
Bluetooth: Move address type macros to bluetooth.h
This patch moves address type macros to bluetooth.h since they will be used by management interface and Bluetooth socket interface. It also replace
Bluetooth: Move address type macros to bluetooth.h
This patch moves address type macros to bluetooth.h since they will be used by management interface and Bluetooth socket interface. It also replaces the macro prefix MGMT_ADDR_ by BDADDR_.
Signed-off-by: Andre Guedes <andre.guedes@openbossa.org> Acked-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
show more ...
|
Revision tags: v3.4-rc4, v3.4-rc3 |
|
#
e4787220 |
| 12-Apr-2012 |
Syam Sidhardhan <s.syam@samsung.com> |
Bluetooth: Remove strtoba header declared but not defined
No one is using strtoba() in the bluetooth subsystem.
Signed-off-by: Syam Sidhardhan <s.syam@samsung.com> Signed-off-by: Gustavo Padovan <g
Bluetooth: Remove strtoba header declared but not defined
No one is using strtoba() in the bluetooth subsystem.
Signed-off-by: Syam Sidhardhan <s.syam@samsung.com> Signed-off-by: Gustavo Padovan <gustavo@padovan.org>
show more ...
|
Revision tags: v3.4-rc2, v3.4-rc1 |
|
#
00e3112c |
| 23-Mar-2012 |
Mat Martineau <mathewm@codeaurora.org> |
Bluetooth: Add a structure to carry ERTM data in skb control blocks
Every field from ERTM control headers is now carried in the control block so it only has to be parsed or generated once, and can b
Bluetooth: Add a structure to carry ERTM data in skb control blocks
Every field from ERTM control headers is now carried in the control block so it only has to be parsed or generated once, and can be efficiently accessed throughout the ERTM code.
Signed-off-by: Mat Martineau <mathewm@codeaurora.org> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo@padovan.org>
show more ...
|