OSDN Git Service

android-x86/system-bt.git
8 years agoDisable gnu-variable-sized-type-not-at-end warning
Jakub Pawlowski [Mon, 8 Feb 2016 23:21:53 +0000 (15:21 -0800)]
Disable gnu-variable-sized-type-not-at-end warning

This warning is triggered unnecessary in too many places.
It spills through the build log and cause very useful warnings
to stay unnoticed.

Change-Id: Iee75327d05cbece4b9dc9c13005a9bfdf94c0d56

8 years agoAdd missing log tags
Jakub Pawlowski [Mon, 8 Feb 2016 19:11:25 +0000 (11:11 -0800)]
Add missing log tags

When building for Linux, missing log tags cause errors.

Change-Id: I0b3cda3333c059251b00a25bbfc7e764057286be

8 years agoRemove BCM_STR* macros
Andre Eisenbach [Mon, 8 Feb 2016 19:34:00 +0000 (11:34 -0800)]
Remove BCM_STR* macros

This also fixes very incosistent null termination and various string
length issues.

Bug: 27069905
Change-Id: I527256d224ac5b18e3943d6038b9c912b247676f

8 years agoAdd list_back_node method to osi list
Jakub Pawlowski [Fri, 5 Feb 2016 23:48:29 +0000 (15:48 -0800)]
Add list_back_node method to osi list

Change-Id: I919ce97373701cbdea03b8228b3a90263d7ef180

8 years agoFix auto disconnect right after connecting
Jakub Pawlowski [Wed, 10 Feb 2016 00:20:41 +0000 (16:20 -0800)]
Fix auto disconnect right after connecting

Bug: 27207638
Change-Id: Ia36cd898c21058b9a3ed56a0d300c3ea8384a5cf

8 years agoSet GATT link inactivity timer to 1
Priti Aghera [Sat, 6 Feb 2016 01:16:42 +0000 (17:16 -0800)]
Set GATT link inactivity timer to 1

GATT_LINK_IDLE_TIMEOUT_WHEN_NO_APP timer was zero. Due to this zero
inactivity timer after the authentication is complete the link is brought
down immediately. Set it to 1 instead.

Bug: 22100369
Change-Id: I6ba4f63b9e48759e4255f230d6bbf426eda31c6f

8 years agoRemove %s from Log message.
Sanket Agarwal [Sat, 13 Feb 2016 18:19:45 +0000 (10:19 -0800)]
Remove %s from Log message.

This crashes when A2DP SNK role is executed in print statement.

Change-Id: Iceca09ecc5977a5379d7f98f265fc2d52332c6e4

8 years agoosi: add metrics API
Marie Janssen [Sat, 16 Jan 2016 00:14:14 +0000 (16:14 -0800)]
osi: add metrics API

Add a metrics API, which supports creating events which are eventually
passed up to the clearcut logging to track pairings and other events.

Connect this to the dumpsys call when it is called.

Change-Id: Idcf75541fd18b0413cc843d6c7e23a5f08a634a5

8 years agoOnly initiate codec negotiation if feature is supported am: ecb3b8386f
Chenjie Luo [Mon, 8 Feb 2016 21:20:09 +0000 (21:20 +0000)]
Only initiate codec negotiation if feature is supported am: ecb3b8386f
am: 879ec51029

* commit '879ec51029302b25415dc1362f4e6b042cbf4980':
  Only initiate codec negotiation if feature is supported

8 years agokeep history after reset to mnc-dr-dev(03d171170c7ad4e40454a9575cfd4919d2e1ef2f)
Baligh Uddin [Mon, 8 Feb 2016 21:20:04 +0000 (21:20 +0000)]
keep history after reset to mnc-dr-dev(03d171170c7ad4e40454a9575cfd4919d2e1ef2f)
am: a07c9fecb4  -s ours

* commit 'a07c9fecb4666e8451ab9eeff9fc89973e077361':

8 years agoRemove unused return value of bta_gattc_alloc_cache_buf
Jakub Pawlowski [Sat, 6 Feb 2016 01:04:08 +0000 (01:04 +0000)]
Remove unused return value of bta_gattc_alloc_cache_buf
am: 8a01f77a46

* commit '8a01f77a46186e04123b78ace6f79f57041a2e5c':
  Remove unused return value of bta_gattc_alloc_cache_buf

8 years agoRemove unused return value of bta_gattc_alloc_cache_buf
Jakub Pawlowski [Fri, 5 Feb 2016 01:59:43 +0000 (17:59 -0800)]
Remove unused return value of bta_gattc_alloc_cache_buf

Change-Id: I624aeaa0c562b5c7404ad37411ad209beac3a5e1

8 years agoSuppress some of the Power Management debug log messages
Pavlin Radoslavov [Fri, 5 Feb 2016 22:29:42 +0000 (22:29 +0000)]
Suppress some of the Power Management debug log messages
am: 2313c24867

* commit '2313c24867cf8f1354f6a6867e9817264029f80f':
  Suppress some of the Power Management debug log messages

8 years agoSuppress some of the Power Management debug log messages
Pavlin Radoslavov [Fri, 7 Aug 2015 02:38:32 +0000 (19:38 -0700)]
Suppress some of the Power Management debug log messages

Suppress some of the Power Management debug log messages that
are printed by default. Some of those messages can be very chatty
if the pairing devices cannot agree on the sniff interval.

For performance reasons, we cannot relax the Nexus Player's
sniff interval, hence those debug log messages shouldn't be
printed by default.

Bug: 22040710
Change-Id: I9a01c7a547b3c592192547e3e6000135ee97d6bf

8 years agoFix a call to osi_freebuf_and_reset()
Pavlin Radoslavov [Fri, 5 Feb 2016 19:33:41 +0000 (19:33 +0000)]
Fix a call to osi_freebuf_and_reset()
am: ea46bfaeaf

* commit 'ea46bfaeafb9498c8a288b7d2021ac4d333e61a9':
  Fix a call to osi_freebuf_and_reset()

8 years agoFix a call to osi_freebuf_and_reset()
Pavlin Radoslavov [Fri, 5 Feb 2016 19:22:12 +0000 (11:22 -0800)]
Fix a call to osi_freebuf_and_reset()

Add missing ampersand in a call to osi_freebuf_and_reset()

Bug: 27038970
Change-Id: Idcbd406a8c790bdddfe1c4fbc0381577bedd8c9c

8 years agoKeep sec_dev_rec in list instead of static array
Jakub Pawlowski [Fri, 5 Feb 2016 01:46:43 +0000 (01:46 +0000)]
Keep sec_dev_rec in list instead of static array
am: cac784d772

* commit 'cac784d772db7f42dc93acafb18e5d71617c04f3':
  Keep sec_dev_rec in list instead of static array

8 years agoKeep sec_dev_rec in list instead of static array
Jakub Pawlowski [Mon, 1 Feb 2016 19:53:36 +0000 (11:53 -0800)]
Keep sec_dev_rec in list instead of static array

This reduces the computational complexity of most BLE operations.

Change-Id: Ife35a50d9ef3467abdc5259c2712bf5d85b8f909

8 years agoRefactor usage of osi_free() and osi_freebuf()
Pavlin Radoslavov [Fri, 5 Feb 2016 00:38:46 +0000 (00:38 +0000)]
Refactor usage of osi_free() and osi_freebuf()
am: 20524d393e

* commit '20524d393e8b3bea4c573f7980cd843500b0e6a4':
  Refactor usage of osi_free() and osi_freebuf()

8 years agoRefactor usage of osi_free() and osi_freebuf()
Pavlin Radoslavov [Wed, 3 Feb 2016 02:12:08 +0000 (18:12 -0800)]
Refactor usage of osi_free() and osi_freebuf()

 * Allow to call osi_freebuf(ptr) on NULL pointers. This simplifies
   the code: a notable number of "if (foo != NULL)" checks are removed.
 * Add new function osi_free_and_reset(p_ptr) that frees the buffer,
   and explicitly resets the pointer to NULL.
   This prevents unintended usage of free memory.
 * Add corresponding function osi_freebuf_and_reset(p_ptr)
 * Minor cleanup around usages of osi_free() and osi_freebuf()

Also:
 * Removed unused function btif_gattc_cleanup()
 * Replaced usage of the following functions with osi_freebuf_and_reset()
   - mca_free_buf()
   - utl_freebuf()
   - btif_hl_free_buf()
 * Replaced usage of rc_supported_event_free() with osi_freebuf()
 * Replaced usage of btif_hl_get_buf() with osi_getbuf()
 * Eliminate some of the osi_get_buf_size() calls

Bug: 22948224
Change-Id: Ife860658b26274da6f228d7353cb0f1531587337

8 years agoosi: add native wakelocks to metrics
Marie Janssen [Thu, 4 Feb 2016 20:32:40 +0000 (20:32 +0000)]
osi: add native wakelocks to metrics
am: 1910a80f53

* commit '1910a80f533ece8669e5f62175422365f8abf270':
  osi: add native wakelocks to metrics

8 years agoosi: add native wakelocks to metrics
Marie Janssen [Fri, 29 Jan 2016 21:37:12 +0000 (13:37 -0800)]
osi: add native wakelocks to metrics

Metrics were only being counted for callout wakelocks.
Move metrics collection to the wrapping functions to account more
centrally.

Change-Id: I772198c3ae05bcb83965420931ddee87b1996b6b

8 years agoFix the processing of AVRCP Rcvd Pass Through messages
Pavlin Radoslavov [Thu, 4 Feb 2016 03:38:11 +0000 (03:38 +0000)]
Fix the processing of AVRCP Rcvd Pass Through messages
am: f94e67c2d9

* commit 'f94e67c2d96d25f221e0503f334f4a0a277bc68c':
  Fix the processing of AVRCP Rcvd Pass Through messages

8 years agoFix the processing of AVRCP Rcvd Pass Through messages
Pavlin Radoslavov [Tue, 2 Feb 2016 18:31:44 +0000 (10:31 -0800)]
Fix the processing of AVRCP Rcvd Pass Through messages

The assignment and handling of the optional tAVRC_MSG_PASS.p_pass_data
data buffer pointer was inconsistent:
 - For originating AVRCP packets, it was assigned to osi_getbuf()
   allocated memory.
 - For received AVRCP packets, it was a pointer in the middle of the
   received data buffer.
However, in the common function avrc_pass_msg(), the p_pass_data pointer
was deallocated by osi_freebuf(). This triggered an assert when processing
AVRCP Rcvd Pass Through messages with non-zero Data Length field.

Bug: 26865159
Change-Id: I1b2eb6713636c290caca16e77226c114d99dcb8e

8 years agoRegister for Service Changed notifications for untrusted devices
Jakub Pawlowski [Thu, 4 Feb 2016 02:42:17 +0000 (02:42 +0000)]
Register for Service Changed notifications for untrusted devices
am: 5f0e23d532

* commit '5f0e23d532f4f90d081ccc0e294f404eb5e5b688':
  Register for Service Changed notifications for untrusted devices

8 years agoRegister for Service Changed notifications for untrusted devices
Jakub Pawlowski [Wed, 3 Feb 2016 19:15:05 +0000 (11:15 -0800)]
Register for Service Changed notifications for untrusted devices

As required by Bluetooth Spec 4.2 [Vol 3, Part G] 2.5.2:
Clients without a trusted relationship shall receive an indication
when the service change occurs only during the current connection.

This means that even we're not paired, we should still register
and receive Service Changed.

Change-Id: Ifd6b69f4cdef6d7114a596221d2dd290a3b7044f

8 years agoDon\'t unregister notifications for unmodified services
Jakub Pawlowski [Thu, 4 Feb 2016 02:20:17 +0000 (02:20 +0000)]
Don\'t unregister notifications for unmodified services
am: 5919554fe8

* commit '5919554fe8e03b87a7c7724238481b85e9cf6630':
  Don't unregister notifications for unmodified services

8 years agoDon't unregister notifications for unmodified services
Jakub Pawlowski [Thu, 4 Feb 2016 01:22:50 +0000 (17:22 -0800)]
Don't unregister notifications for unmodified services

Change-Id: Ie02dd72a2d4a423ab532ec84a4d588ab83f3e22b

8 years agoRevert "Keep sec_dev_rec in list instead of static array"
Andre Eisenbach [Wed, 3 Feb 2016 18:38:29 +0000 (18:38 +0000)]
Revert "Keep sec_dev_rec in list instead of static array"
am: 7db2548c03

* commit '7db2548c0346c1d33a46cc35b250e71fd24adae4':
  Revert "Keep sec_dev_rec in list instead of static array"

8 years agoRevert "Keep sec_dev_rec in list instead of static array"
Andre Eisenbach [Wed, 3 Feb 2016 18:30:28 +0000 (10:30 -0800)]
Revert "Keep sec_dev_rec in list instead of static array"

Breaks pairing...

This reverts commit c9f86da73bfb637426c83b86497c50fede4e0f63.

8 years agoMake autoconnect work properly for devices not having security record
Jakub Pawlowski [Wed, 3 Feb 2016 02:12:41 +0000 (02:12 +0000)]
Make autoconnect work properly for devices not having security record
am: d36b421035

* commit 'd36b421035fe3b7d086f5d7737d8ba9fbdc471b3':
  Make autoconnect work properly for devices not having security record

8 years agoMake autoconnect work properly for devices not having security record
Jakub Pawlowski [Wed, 3 Feb 2016 01:11:45 +0000 (17:11 -0800)]
Make autoconnect work properly for devices not having security record

Change-Id: I16f71da85afe780383a5d84a904b44aabe4af9f7

8 years agoKeep sec_dev_rec in list instead of static array
Jakub Pawlowski [Tue, 2 Feb 2016 18:51:35 +0000 (18:51 +0000)]
Keep sec_dev_rec in list instead of static array
am: c9f86da73b

* commit 'c9f86da73bfb637426c83b86497c50fede4e0f63':
  Keep sec_dev_rec in list instead of static array

8 years agoKeep sec_dev_rec in list instead of static array
Jakub Pawlowski [Mon, 1 Feb 2016 19:53:36 +0000 (11:53 -0800)]
Keep sec_dev_rec in list instead of static array

This reduces the computational complexity of most BLE operations.

Change-Id: I3997b414680ff4288091b1ddf00ec1ef1c4453fb

8 years agoFixed paired device config UUID parsing logic
Andre Eisenbach [Tue, 2 Feb 2016 18:12:10 +0000 (18:12 +0000)]
Fixed paired device config UUID parsing logic
am: 16856640e6

* commit '16856640e6179a73abf955e24dc7acf0699b66e4':
  Fixed paired device config UUID parsing logic

8 years agoFixed paired device config UUID parsing logic
Andre Eisenbach [Sat, 30 Jan 2016 00:11:13 +0000 (16:11 -0800)]
Fixed paired device config UUID parsing logic

Also added unit tests to cover this bug.

Bug: 26883553
Change-Id: Ice8641fad5c38ee43f1b080665dde70979f9d60f

8 years agoMake list_foreach() even more useful
Jakub Pawlowski [Tue, 2 Feb 2016 04:24:02 +0000 (04:24 +0000)]
Make list_foreach() even more useful
am: 67f57c639e

* commit '67f57c639e6dc2f302115017eb92c40dd306c15d':
  Make list_foreach() even more useful

8 years agoMake list_foreach() even more useful
Jakub Pawlowski [Mon, 1 Feb 2016 19:51:44 +0000 (11:51 -0800)]
Make list_foreach() even more useful

- Changed |callback| return type to list_node_t to be able to interrupt
  iteration (to find specific elements for example).

Change-Id: I00eb83725d03e6f1aec239ae11eb19cf59af35a9

8 years agoAssume input from /dev/stdin if no argument provided to btsnooz.py.
Sharvil Nanavati [Mon, 1 Feb 2016 21:52:56 +0000 (21:52 +0000)]
Assume input from /dev/stdin if no argument provided to btsnooz.py.
am: 700b163a3e

* commit '700b163a3e5673a47df8de9509e971bb10f0580e':
  Assume input from /dev/stdin if no argument provided to btsnooz.py.

8 years agoAssume input from /dev/stdin if no argument provided to btsnooz.py.
Sharvil Nanavati [Sat, 23 Jan 2016 01:03:03 +0000 (17:03 -0800)]
Assume input from /dev/stdin if no argument provided to btsnooz.py.

Change-Id: I54bd137e67eb1fc959663189bcdaac4690c2c645

8 years agoRemove unused method
Jakub Pawlowski [Mon, 1 Feb 2016 20:06:12 +0000 (20:06 +0000)]
Remove unused method
am: 73d488ea3a

* commit '73d488ea3a3d14054e29c675f0b175647a86dcbb':
  Remove unused method

8 years agoRemove unused method
Jakub Pawlowski [Sat, 30 Jan 2016 08:53:30 +0000 (00:53 -0800)]
Remove unused method

Change-Id: Icb1a9f76cade28112c084cf6fde4d0f8d9c57ed0

8 years agoAdded extra Werror compiler flags
Pavlin Radoslavov [Sun, 31 Jan 2016 00:28:10 +0000 (00:28 +0000)]
Added extra Werror compiler flags
am: 061bf0c0e8

* commit '061bf0c0e896ce62cf273277c8c69d04cee6c87f':
  Added extra Werror compiler flags

8 years agoAdded extra Werror compiler flags
Pavlin Radoslavov [Fri, 29 Jan 2016 21:37:44 +0000 (13:37 -0800)]
Added extra Werror compiler flags

Added extra Werror compiler flags that are globally enabled
by default only on certain targets (e.g., arm64).
Thus, we can catch build errors before submitting the code.

Bug: 26879229
Change-Id: I8b1dae6f61219d2274cd2df019464315d4172da2

8 years agoservice/client: command line made nicer
Jakub Pawlowski [Sat, 30 Jan 2016 00:06:20 +0000 (00:06 +0000)]
service/client: command line made nicer
am: 64401bf539

* commit '64401bf539bdef652ddcfc25138ad5e353aea1c3':
  service/client: command line made nicer

8 years agoservice/client: command line made nicer
Jakub Pawlowski [Fri, 29 Jan 2016 07:57:17 +0000 (23:57 -0800)]
service/client: command line made nicer

Currently we print many unnecessary newlines and redisplay prompt too
often. This patch makes the bluetooth-cli output look much nicer.

Change-Id: I5b9d4844488d188e086f12d94e11c4b3e8bf1ddb

8 years agoUse C99 for new btif static library
Andre Eisenbach [Fri, 29 Jan 2016 22:32:48 +0000 (22:32 +0000)]
Use C99 for new btif static library
am: 9a76c7a21c

* commit '9a76c7a21cdb420ecdaf9dd2a74dadb558fdfa3d':
  Use C99 for new btif static library

8 years agoUse C99 for new btif static library
Andre Eisenbach [Fri, 29 Jan 2016 22:24:53 +0000 (14:24 -0800)]
Use C99 for new btif static library

Change-Id: Ica13d4e61f22e9bccfa5e3a5104c057cc7693233

8 years agoFix build error in bta_gattc_cache.c
Andre Eisenbach [Fri, 29 Jan 2016 21:57:35 +0000 (21:57 +0000)]
Fix build error in bta_gattc_cache.c
am: 96b9707fd0

* commit '96b9707fd07ce3596b5200dd64b2ebf1aed9efea':
  Fix build error in bta_gattc_cache.c

8 years agoFix build error in bta_gattc_cache.c
Andre Eisenbach [Fri, 29 Jan 2016 21:52:20 +0000 (13:52 -0800)]
Fix build error in bta_gattc_cache.c

Change-Id: I41e95f880bd37647278ad9dba4e12c2b54db273b

8 years agoMerge "Make BTIF a static library; add unit test framework"
Andre Eisenbach [Fri, 29 Jan 2016 21:39:51 +0000 (21:39 +0000)]
Merge "Make BTIF a static library; add unit test framework"
am: e37dcf393f

* commit 'e37dcf393f815e8d3eee4239af1dd2dacdbc808e':
  Make BTIF a static library; add unit test framework

8 years agoMerge "Make BTIF a static library; add unit test framework"
Andre Eisenbach [Fri, 29 Jan 2016 21:35:38 +0000 (21:35 +0000)]
Merge "Make BTIF a static library; add unit test framework"

8 years agoservice: add get_gatt_db and it\'s callback to HAL
Jakub Pawlowski [Fri, 29 Jan 2016 21:22:00 +0000 (21:22 +0000)]
service: add get_gatt_db and it\'s callback to HAL
am: 6859e0c7e3

* commit '6859e0c7e3e20b1d1725b360378b546dd73dcb90':
  service: add get_gatt_db and it's callback to HAL

8 years agoAdd new HAL method get_gatt_db
Jakub Pawlowski [Fri, 29 Jan 2016 21:21:56 +0000 (21:21 +0000)]
Add new HAL method get_gatt_db
am: 533fdbf46f

* commit '533fdbf46fb623aefbe4d0107b5cccd41aec097a':
  Add new HAL method get_gatt_db

8 years agoMake BTIF a static library; add unit test framework
Andre Eisenbach [Fri, 22 Jan 2016 01:47:46 +0000 (17:47 -0800)]
Make BTIF a static library; add unit test framework

Moving BTIF to a static library allows it to be loaded for unit tests.
The framework has been put in place to add unit tests to
'net_test_btif'.

Change-Id: Ie7e0984e90f11f6e3df5c0f34c77cc976627f1d2

8 years agoservice: add get_gatt_db and it's callback to HAL
Jakub Pawlowski [Fri, 22 Jan 2016 08:09:10 +0000 (00:09 -0800)]
service: add get_gatt_db and it's callback to HAL

Change-Id: I6412b464c4299ea351446f384b539ffa2e6111b2

8 years agoAdd new HAL method get_gatt_db
Jakub Pawlowski [Fri, 22 Jan 2016 07:26:11 +0000 (23:26 -0800)]
Add new HAL method get_gatt_db

Currently getting GATT database from HAL requires multiple calls
and iterating over each element. This is long, unnecessary
complicated process, error prone process. This patch adds new
method, get_gatt_db that can be used to grab whole GATT database
for remote device just in one call.

Change-Id: Ib5d88fbc28d09d5c191e7c0152ca61d6a34f7a81

8 years agoRevert "Revert "Avoid double memory free and crash during LE discovery or disconnect""
Pavlin Radoslavov [Fri, 29 Jan 2016 06:59:55 +0000 (06:59 +0000)]
Revert "Revert "Avoid double memory free and crash during LE discovery or disconnect""
am: 20c6840868

* commit '20c68408686ba4fd4d17e21957616e1c60a913b3':
  Revert "Revert "Avoid double memory free and crash during LE discovery or disconnect""

8 years agoRevert "Revert "Avoid double memory free and crash during LE discovery or disconnect""
Pavlin Radoslavov [Fri, 29 Jan 2016 06:46:31 +0000 (22:46 -0800)]
Revert "Revert "Avoid double memory free and crash during LE discovery or disconnect""

The revert includes a compilation fix as well
(missing include of a header file).

This reverts commit 3a4082d7af5c5941769c700d774022a9b982d45c.

Change-Id: I5bb1f468d2c64839037afe5ed2d3ed5d1b21dca2

8 years agoMerge "Revert "Avoid double memory free and crash during LE discovery or disconnect""
Ian Pedowitz [Fri, 29 Jan 2016 04:54:36 +0000 (04:54 +0000)]
Merge "Revert "Avoid double memory free and crash during LE discovery or disconnect""

8 years agoRevert "Avoid double memory free and crash during LE discovery or disconnect"
Ian Pedowitz [Fri, 29 Jan 2016 04:36:30 +0000 (04:36 +0000)]
Revert "Avoid double memory free and crash during LE discovery or disconnect"

This reverts commit 12091a323ef84cad10d91fcf6588a6657e591ee0.

(cherry picked from commit 3a4082d7af5c5941769c700d774022a9b982d45c)

Change-Id: I2bc9969a7bd5d434b68ca05a4899a7f52ffb4f3e

8 years agoRevert "Avoid double memory free and crash during LE discovery or disconnect"
Ian Pedowitz [Fri, 29 Jan 2016 04:43:25 +0000 (04:43 +0000)]
Revert "Avoid double memory free and crash during LE discovery or disconnect"
am: 3a4082d7af

* commit '3a4082d7af5c5941769c700d774022a9b982d45c':
  Revert "Avoid double memory free and crash during LE discovery or disconnect"

8 years agoRevert "Avoid double memory free and crash during LE discovery or disconnect"
Ian Pedowitz [Fri, 29 Jan 2016 04:36:30 +0000 (04:36 +0000)]
Revert "Avoid double memory free and crash during LE discovery or disconnect"

This reverts commit 12091a323ef84cad10d91fcf6588a6657e591ee0.

Change-Id: I01deaa5024bfef1782887fd8f8137f83916d8be0

8 years agoAvoid double memory free and crash during LE discovery or disconnect
Nitin Arora [Thu, 28 Jan 2016 22:30:01 +0000 (22:30 +0000)]
Avoid double memory free and crash during LE discovery or disconnect
am: 12091a323e

* commit '12091a323ef84cad10d91fcf6588a6657e591ee0':
  Avoid double memory free and crash during LE discovery or disconnect

8 years agoAvoid double memory free and crash during LE discovery or disconnect
Nitin Arora [Thu, 28 Jan 2016 01:02:02 +0000 (17:02 -0800)]
Avoid double memory free and crash during LE discovery or disconnect

1. Prevent GATT operations to proceed if queue is not empty

This change returns a FALSE from GATT enqueue operation, in case
there is already a GATT command enqueued. This simple change will
a. Prevent incorrect memory freeing of the currently queued command.
b. Prevent incorrect dequeing of the ongoing command and enqueing
another command which will never be executed.
c. Double free of memory causing segmentation fault

2. Prevent performing pending operations when link is down

This change prevents performing the execution of pending operations
when the link is disconnected. The pending operation in that case
is bound to fail thus freeing the memory pointed to by the p_q_cmd
which is cleaned up again by the discovery completion routine and
thus causing double free.

Bug:24178843
Change-Id: Ief2756f289a7db73d251ef7e247774dd3f7fc413

8 years agoAdd missing include statements
Pavlin Radoslavov [Thu, 28 Jan 2016 19:51:12 +0000 (19:51 +0000)]
Add missing include statements
am: 8eea109d26

* commit '8eea109d265c7c03d80ceb681f05b3604ec939ad':
  Add missing include statements

8 years agoAdd missing include statements
Pavlin Radoslavov [Thu, 28 Jan 2016 19:37:43 +0000 (11:37 -0800)]
Add missing include statements

This fixes "implicit declaration of function ..." warnings/errors.

Change-Id: I07d0f6a60fdb34acef6a11a00f6e528adece150f

8 years agoAdded metrics for A2DP transmission queue
Pavlin Radoslavov [Thu, 28 Jan 2016 17:28:53 +0000 (17:28 +0000)]
Added metrics for A2DP transmission queue
am: ffba52aeef

* commit 'ffba52aeef45451226991d9443c4442a33a7f231':
  Added metrics for A2DP transmission queue

8 years agoAdded metrics for A2DP transmission queue
Pavlin Radoslavov [Thu, 14 Jan 2016 00:27:01 +0000 (16:27 -0800)]
Added metrics for A2DP transmission queue

Collect and display A2DP metrics related to the A2DP transmission queue.
The result can be displayed by "adb shell dumpsys bluetooth_manager":

A2DP State:

  TxQueue:
    Counts (enqueue/dequeue/readbuf)                        : 1767 / 1767 / 3504
    Last update time ago in ms (enqueue/dequeue/readbuf)    : 3 / 3 / 3
    Frames per packet (total/max/ave)                       : 12210 / 11 / 6
    Counts (flushed/dropped/dropouts)                       : 0 / 0 / 0
    Last update time ago in ms (flushed/dropped)            : 0 / 0
    Counts (underflow/underrun)                             : 0 / 0
    Bytes (underflow/underrun)                              : 0 / 0
    Last update time ago in ms (underflow/underrun)         : 0 / 0
    Enqueue deviation counts (overdue/premature)            : 893 / 871
    Enqueue overdue scheduling time in ms (total/max/ave)   : 242 / 12 / 0
    Enqueue premature scheduling time in ms (total/max/ave) : 842 / 20 / 0
    Dequeue deviation counts (overdue/premature)            : 869 / 897
    Dequeue overdue scheduling time in ms (total/max/ave)   : 604 / 11 / 0
    Dequeue premature scheduling time in ms (total/max/ave) : 1204 / 19 / 1

Change-Id: I75c8f24a26cf9ce7a4164a142d4ac286ff17f322

8 years agoFix the calling pattern of the debug dump functions
Pavlin Radoslavov [Thu, 28 Jan 2016 17:13:06 +0000 (17:13 +0000)]
Fix the calling pattern of the debug dump functions
am: adca1518b5

* commit 'adca1518b51935a446d968d4c893a4fd46a00621':
  Fix the calling pattern of the debug dump functions

8 years agoFix the calling pattern of the debug dump functions
Pavlin Radoslavov [Thu, 28 Jan 2016 16:45:46 +0000 (08:45 -0800)]
Fix the calling pattern of the debug dump functions

Group together the calls to the internal foo_dump() functions,
so the output file descriptor is not closed prematurely.

Bug: 26847370
Change-Id: I3afc9502169424081efcc5deae055fbbd91ed5f1

8 years agoMerge "Spoof response to AT+CNUM if we don\'t get a reply from the audio gateway."
Sharvil Nanavati [Thu, 28 Jan 2016 15:51:05 +0000 (15:51 +0000)]
Merge "Spoof response to AT+CNUM if we don\'t get a reply from the audio gateway."
am: 8113f8cb28

* commit '8113f8cb28507b08df0645c701b1c47cb491a13a':
  Spoof response to AT+CNUM if we don't get a reply from the audio gateway.

8 years agoFix return value for HAL function config_clear.
Sharvil Nanavati [Thu, 28 Jan 2016 15:51:01 +0000 (15:51 +0000)]
Fix return value for HAL function config_clear.
am: 9ca88af1d9

* commit '9ca88af1d964c546af1c3dc2c16c4c98071fd5b1':
  Fix return value for HAL function config_clear.

8 years agoMerge "Spoof response to AT+CNUM if we don't get a reply from the audio gateway."
Sharvil Nanavati [Thu, 28 Jan 2016 15:48:34 +0000 (15:48 +0000)]
Merge "Spoof response to AT+CNUM if we don't get a reply from the audio gateway."

8 years agoFix return value for HAL function config_clear.
Sharvil Nanavati [Tue, 26 Jan 2016 21:09:22 +0000 (13:09 -0800)]
Fix return value for HAL function config_clear.

Change-Id: I75712f721f7031705d0accb4ffe89467d52d7aa3

8 years agoAdds null check before freeing LE services list
Subramanian Srinivasan [Thu, 28 Jan 2016 15:14:48 +0000 (15:14 +0000)]
Adds null check before freeing LE services list
am: b83028d142

* commit 'b83028d1422a097e57b829155d42882414c7a1ee':
  Adds null check before freeing LE services list

8 years agoFix compilation errors when SMP_DEBUG flag is enabled
Subramanian Srinivasan [Thu, 28 Jan 2016 15:11:17 +0000 (15:11 +0000)]
Fix compilation errors when SMP_DEBUG flag is enabled
am: 33bab32218

* commit '33bab322187874ec92f8fe2fbcf4e65c6efca989':
  Fix compilation errors when SMP_DEBUG flag is enabled

8 years agoAdds null check before freeing LE services list
Subramanian Srinivasan [Fri, 15 Jan 2016 01:45:01 +0000 (17:45 -0800)]
Adds null check before freeing LE services list

Prevents the crash which happens when device is
disconnected during service discovery and the
services list is not yet properly allocated
memory and populated. This change frees up the
services list after discovery complete only when
it is not null.

Change-Id: I0ced14d2ee133a332fa2fd7c456267438813a600

8 years agoFix compilation errors when SMP_DEBUG flag is enabled
Subramanian Srinivasan [Sat, 9 Jan 2016 01:37:28 +0000 (17:37 -0800)]
Fix compilation errors when SMP_DEBUG flag is enabled

Fix compilation errors in SMP related files when
SMP_DEBUG compile time flag is enabled.

Change-Id: I5593750c27241345beb8e8b9278b045803d3fcc9

8 years agoSpoof response to AT+CNUM if we don't get a reply from the audio gateway.
Sharvil Nanavati [Wed, 27 Jan 2016 17:43:16 +0000 (09:43 -0800)]
Spoof response to AT+CNUM if we don't get a reply from the audio gateway.

The Huawei Honor 4X CHE1-CL10 phone doesn't reply to AT+CNUM so
we end up disconnecting the service level connection. In this CL,
I'm spoofing an OK response to AT+CNUM in case we time out waiting
for a reply.

Bug: 26504036
Change-Id: I91d5ab4ea91fd67b3f6c6f796c39fd0091bff5cf

8 years agoAllow alarm_cancel() on NULL timers
Pavlin Radoslavov [Thu, 28 Jan 2016 01:01:04 +0000 (01:01 +0000)]
Allow alarm_cancel() on NULL timers
am: dd7aaec9e8

* commit 'dd7aaec9e8ccfeee5cd3f3a5caa1cc35d7870bde':
  Allow alarm_cancel() on NULL timers

8 years agoAllow alarm_cancel() on NULL timers
Pavlin Radoslavov [Thu, 28 Jan 2016 00:03:19 +0000 (16:03 -0800)]
Allow alarm_cancel() on NULL timers

Remove an assert that prevents using alarm_cancel() with NULL
timers.

Bug: 26831803
Change-Id: Ifd1476272b13a3f7fd5a0dbb57ee867cbfe2c2bb

8 years agoservice: Update HAL call for arguments
Marie Janssen [Wed, 27 Jan 2016 20:49:18 +0000 (20:49 +0000)]
service: Update HAL call for arguments
am: da35bbce70

* commit 'da35bbce704acff55b9748264106162d33a7ff2a':
  service: Update HAL call for arguments

8 years agoservice: Update HAL call for arguments
Marie Janssen [Tue, 12 Jan 2016 19:14:24 +0000 (11:14 -0800)]
service: Update HAL call for arguments

The HAL now takes an additional argument for dumpsys arguments.

Change-Id: I286149e4d86ea50c4830a9f6d32e1d57025d01a7

8 years agoservice: MTU changed callback for GATT server
Jakub Pawlowski [Wed, 27 Jan 2016 19:50:51 +0000 (19:50 +0000)]
service: MTU changed callback for GATT server
am: 326b602c15

* commit '326b602c1571bcc9b49036fa9353f0ed55e6610e':
  service: MTU changed callback for GATT server

8 years agoservice: MTU changed callback for GATT server
Jakub Pawlowski [Wed, 27 Jan 2016 19:38:54 +0000 (11:38 -0800)]
service: MTU changed callback for GATT server

Change-Id: I8431e970004f9b96cc40c3a5ca7878815d4d53bb

8 years agoservice/client: add command to change MTU
Jakub Pawlowski [Wed, 27 Jan 2016 16:41:53 +0000 (16:41 +0000)]
service/client: add command to change MTU
am: 756cc4bded

* commit '756cc4bdedca24e4ba157902a3d0b411cfa109be':
  service/client: add command to change MTU

8 years agoservice/client: add command to change MTU
Jakub Pawlowski [Tue, 26 Jan 2016 22:56:21 +0000 (14:56 -0800)]
service/client: add command to change MTU

Change-Id: I096760759991b855efd897adbd6c5aa4e18b26bb

8 years agoAdd explicit sec_act parameter to encryption requests
Andre Eisenbach [Wed, 27 Jan 2016 14:58:16 +0000 (14:58 +0000)]
Add explicit sec_act parameter to encryption requests
am: f40b136e7b

* commit 'f40b136e7b943d7e25224817fc47bb5b171479d5':
  Add explicit sec_act parameter to encryption requests

8 years agoFix invalid pointer de-reference resulting in a crash
Andre Eisenbach [Wed, 27 Jan 2016 14:58:06 +0000 (14:58 +0000)]
Fix invalid pointer de-reference resulting in a crash
am: 7066f58556

* commit '7066f585562e2d19fa9bfa6417c895e35ce6739a':
  Fix invalid pointer de-reference resulting in a crash

8 years agoAdd explicit sec_act parameter to encryption requests
Andre Eisenbach [Tue, 26 Jan 2016 21:29:11 +0000 (13:29 -0800)]
Add explicit sec_act parameter to encryption requests

This avoids de-referencing a potentially NULL pointer (p_ref_data) and
also makes the use of the parameter more obvious.

Also added NULL check before invoking security callback.

Bug: 26792899
Change-Id: I6613c9c2706f1d460ab39421a967d79c59ad0fde

8 years agoFix invalid pointer de-reference resulting in a crash
Andre Eisenbach [Tue, 26 Jan 2016 19:19:16 +0000 (11:19 -0800)]
Fix invalid pointer de-reference resulting in a crash

Bug: 26792899
Change-Id: I0c9a22ef1574e6214c108a4b247cf24e26f71ee9

8 years agoservice: add SetMtu and OnMtuChanged
Jakub Pawlowski [Wed, 27 Jan 2016 14:24:01 +0000 (14:24 +0000)]
service: add SetMtu and OnMtuChanged
am: a6551079fe

* commit 'a6551079fe71b1c76505ada0e4f758f6faf651e0':
  service: add SetMtu and OnMtuChanged

8 years agoservice: add SetMtu and OnMtuChanged
Jakub Pawlowski [Tue, 26 Jan 2016 20:58:47 +0000 (12:58 -0800)]
service: add SetMtu and OnMtuChanged

Change-Id: I7a6c6cb46f4710b5d2c57b9d0e9cfac166d7cd62

8 years agoMerge "Remove headers from LOCAL_SRC_FILES"
Dan Willemsen [Wed, 27 Jan 2016 00:39:03 +0000 (00:39 +0000)]
Merge "Remove headers from LOCAL_SRC_FILES"
am: 927d624e5f

* commit '927d624e5fd9667cf885ad4e997737a5c363ac1b':
  Remove headers from LOCAL_SRC_FILES

8 years agoMerge "Remove headers from LOCAL_SRC_FILES"
Dan Willemsen [Wed, 27 Jan 2016 00:34:20 +0000 (00:34 +0000)]
Merge "Remove headers from LOCAL_SRC_FILES"

8 years agoMerge "service: Update HAL call for arguments"
Marie Janssen [Tue, 26 Jan 2016 20:20:38 +0000 (20:20 +0000)]
Merge "service: Update HAL call for arguments"

8 years agoservice: add bunch of GATT callback handlers
Jakub Pawlowski [Tue, 26 Jan 2016 20:15:03 +0000 (20:15 +0000)]
service: add bunch of GATT callback handlers
am: c0b16987d5

* commit 'c0b16987d55447ae52c9b8c8bb2548d9b74463ed':
  service: add bunch of GATT callback handlers

8 years agoservice: Update HAL call for arguments
Marie Janssen [Tue, 12 Jan 2016 19:14:24 +0000 (11:14 -0800)]
service: Update HAL call for arguments

The HAL now takes an additional argument for dumpsys arguments.

Change-Id: I286149e4d86ea50c4830a9f6d32e1d57025d01a7
(cherry picked from commit 802c8879cbf1d6490aa312a986ac199b84415cec)

8 years agoservice: add bunch of GATT callback handlers
Jakub Pawlowski [Tue, 26 Jan 2016 17:53:06 +0000 (09:53 -0800)]
service: add bunch of GATT callback handlers

RegisterForNotificationCallback
NotifyCallback
WriteCharacteristicCallback
WriteDescriptorCallback

Change-Id: Ic92104e427d153b5b6567fcd7fe4d967df2b3b61