| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
- This fix avoids NULL pointer dereferences,
Array Index Out of Bounds Exceptions
and Banned funciton in the bluedroid code
space of Bluetooth.
CRs-Fixed: 890309, 890321
Change-Id: I24ae794ee01b65b5ab15c73cd82677b0481910ad
|
|
|
|
|
|
|
|
| |
This changes Gatt state to CLOSING from OPEN to avoid any farther
gatt operations from that particular fixed channel CID during
gatt disconnection process.
Change-Id: I8511caa477881de4f4eaf18b84f23530e1958fe9
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LE L2CAP Connection Oriented Channel implementation for
credit based flow control on LE L2CAP.
- This feature is enabled only when BLE feature is enabled.
- Handled signalling commands on channel id 5 to establish
the connection of LE COC.
- Implemented the SM for LE L2CAP channel to handle events
from App layer and hci layer.
- Introduced security levels for LE L2CAP channels.
- Introduced tranport variable for major functions where
BREDR and LE shares common data structures.
- Implemented segmentation and reassembly of LE L2CAP SDU.
- Introduced congestion mechanism for LE L2CAP channel
- As the new LE L2CAP callbacks not required for existing
BREDR services, made it as null for newly introduced
LE L2CAP callbacks.
- New APIs introduced for LE L2CAP connection establishment.
- New APIs provided for LE L2CAP security procedure.
- Relevent L2cap APIs from Test app interface exposed to the
test tool.
- New macros, definitions, structures introduced for LE L2CAP
channel establishment/data tranfer.
CRs-Fixed: 776657
Change-Id: I50a24374659f9802cbc92421db139f75f2790f2e
|
|
|
|
|
|
| |
Bug: 19816438
Original author: Chaojing Sun <cjsun@broadcom.com>
Change-Id: I5951f4d4e038f8348a62aa6d19b2111bae0b3ecc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added support for exposing L2CAP to Java such that OBEX over L2CAP
is made possible.
Added support to create SDP records as a seperate step.(as opposed to
creating a SDP record when a BluetoothSocket is created).
This allows both a RFCOMM channel and a L2CAP PSM to be included in a
SDP record. (Additionally the content of the SDP record is set by the
profile in Java, in stead of beeing hardcoded in the socket layer.)
This completes the L2CAP channel exposure to Java.
Change-Id: Iaf68a07d910145cdd33e940d73cd680f79164100
|
|
|
|
| |
Also add another API GKI_queue_length(BUFFER_Q *)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
-> The service change indication was requested before
GATT profile finished processing the connection callback.
-> Sending service change indication after
profile connection is up solves the problem.
Bug: 16560957
Change-Id: I99dd7528883efbedcbf785132fe6aaa3aea5b42c
|
|\
| |
| |
| | |
Change-Id: I74c86dd5a13d4cc0b225a4b1d516904c4382db74
|
| |
| |
| |
| | |
Change-Id: I6d1e61ff023b5fd19f144955cff16831cc18c6e6
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The features include:
- LE Peripheral Mode
- Link Layer topology (LE Central & Peripheral Concurrency)
- Dual Mode Topology (Ability to choose LE transport when connecting with
other Dual Mode devices)
- Fast advertising Interval
- Limited Discovery Time Changes
- GAP Authentication and Lost Bond
- Dual Mode Addressing
- Common Profile and Service Error Code
- 32 bit UUIDs
Change-Id: Ic6701da4cf6aaa390ff2c8816b43157f36b7fb42
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change introduces two new callbacks for applications to better
handle LE notification flow control and transport congestion. The
notification callback is invoked when the remote platform confirms an
indication or when a local notification has been passed to the
controller. No new notifications should be sent until a callback is
received.
Congestion callbacks are triggered when a GATT operation cannot be sent
to the local Bluetooth controller. Repeatedly calling
writeCharacteristic() for example will eventually trigger a congestion
callback. Applications cannot send additional data until a further
callback is received, indicating that the congestion has cleared up.
Also fixes a memory leak issue that can trigger GKI exception for
certain GATT operations.
Change-Id: Ib470c15ca1f577573a632e9afe4cb9e86680fd8c
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The features include:
- LE Peripheral Mode
- Link Layer topology (LE Central & Peripheral Concurrency)
- Dual Mode Topology (Ability to choose LE transport when connecting with
other Dual Mode devices)
- Fast advertising Interval
- Limited Discovery Time Changes
- GAP Authentication and Lost Bond
- Dual Mode Addressing
- Common Profile and Service Error Code
- 32 bit UUIDs
Change-Id: Ic6701da4cf6aaa390ff2c8816b43157f36b7fb42
Conflicts:
stack/btu/btu_hcif.c
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mostly fixing unused parameter warnings.
A few other warnings also fixed like possible use of
unitialized variables (no real issue found, just compiler couldn't
follow the path), signed vs unsigned warning.
Also fixed some typos, indent issues, removal of dead code, etc.
Change-Id: I95eb887aefc4d559d7921f71a0af5f3bfb01ac01
Signed-off-by: Mike J. Chen <mjchen@google.com>
|
|
|
|
|
| |
Change-Id: I13e96a25b66a0a789d1adab9e41f2315d294943d
Signed-off-by: Mike J. Chen <mjchen@google.com>
|
|
|
|
|
|
|
|
|
|
|
| |
When a GATT connection is disconnected, a bonded device will be added
into service change pending list. But if the device is already in the
list, a duplicate record will be added and one buffer is lost.
This change ensures that devices are only added if they are not already
in the list.
Change-Id: Ied6872b145ed28bde8044444cb6c9cbee525943d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change fixes the following issues:
- Second GATT-over-BR/EDR channel cannot be established when there
already is an existing GATT-over-BR/EDR channel
- If encryption fails for an LE connection due to a missing key,
the security state is not being cleared and blocks all further
security processing
- When DM discovery of an LE Peripheral device fails with a
connection timeout, no further discovery requests can be made
- GATT service discovery can get into endless loop when duplicate descriptor
definitions are found on the remote device
- When GATT over BR/EDR fails, BTA does not give a connection
callback to the application initiating the connection
- BR/EDR connection to remote platform does not generate API callbacks
- Stack crash discovered during UPF after remote disconnects
- The host is sending HCI disconnect to invalid HCI handle when
SMP fails because of a connection timeout
- Possible race condition:
If a disconnect is immediately followed by a connection complete,
the connection complete cannot be processed in the BTA GATT state
machine
- Write Complete event is not triggered for Prepare Write requests
Change-Id: I539cdedd68007818ff4f0d0213cee1c913f72d0f
Conflicts:
bta/gatt/bta_gatts_act.c
|
|
|
|
| |
Change-Id: I9825a5cef9be2559c34c2a529b211b7d471147cf
|
|
Change-Id: Ia2de32ccb97a9641462c72363b0a8c4288f4f36d
|