diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | src/dbus-hci.c | 11 |
4 files changed, 20 insertions, 3 deletions
@@ -30,6 +30,7 @@ parser.c bluez.pc include/bluetooth +src/bluetoothd doc/*.bak doc/*.stamp @@ -1,3 +1,12 @@ +ver 4.2: + Avoid memory copies in A2DP write routine. + Fix broken logic with Simple Pairing check and old kernels. + Allow non-bondable and outgoing SDP without agent. + Only remove the bonding for non-temporary devices. + Cleanup various unnecessary includes. + Make more unexported functions static. + Add basic infrastructure for gtk-doc support. + ver 4.1: Add 30 seconds timeout to BNEP connection setup phase. Avoid memory copies in A2DP write routine for ALSA. diff --git a/configure.ac b/configure.ac index 7da3817d..9f809c4a 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ AC_PREREQ(2.50) AC_INIT() -AM_INIT_AUTOMAKE(bluez, 4.1) +AM_INIT_AUTOMAKE(bluez, 4.2) AM_CONFIG_HEADER(config.h) AM_MAINTAINER_MODE diff --git a/src/dbus-hci.c b/src/dbus-hci.c index a7b83c0b..e4c0f345 100644 --- a/src/dbus-hci.c +++ b/src/dbus-hci.c @@ -1832,13 +1832,20 @@ int hcid_dbus_get_io_cap(bdaddr_t *local, bdaddr_t *remote, agent = adapter->agent; if (!agent) { + /* This is the non bondable mode case */ + if (device && device_get_auth(device) > 0x01) { + debug("Bonding request, but no agent present"); + return -1; + } + /* No agent available, and no bonding case */ - if (device && (device_get_auth(device) == 0x00 || - device_get_auth(device) == 0x01)) { + if (*auth < 0x02) { + debug("Allowing no bonding without agent"); /* No input, no output */ *cap = 0x03; return 0; } + error("No agent available for IO capability"); return -1; } |