summaryrefslogtreecommitdiff
path: root/system/stack/rfcomm
AgeCommit message (Collapse)Author
2025-03-14Merge "stack: Inline methods from stack_metrics_logging.h" into main Henri Chataing
2025-03-13Merge "Refactor RFCOMM_ConnectInd to avoid nested ifs" into main Pomai Ahlo
2025-03-13stack: Inline methods from stack_metrics_logging.h Henri Chataing
Bug: 401588157 Test: m com.android.bt Flag: EXEMPT, no logical change Change-Id: I1cf4a5e3664f4afc3eb2cfebbf23642c568403a4
2025-03-12Fail PORT_GetChannelInfo when p_mcb is null Pomai Ahlo
There is a case where the multiplexer is shut down and PORT_CLOSED is processed before BTA_JV_RFCOMM_CLOSE_EVT. In this case, PORT_GetChannelInfo should fail to prevent null pointer dereference. Bug: 400636306 Test: m com.android.bt Flag: EXEMPT adding null check and log Change-Id: If6efb16cadc28a710465046886a9f6680fa95a8c
2025-03-12Refactor RFCOMM_ConnectInd to avoid nested ifs Pomai Ahlo
Also treat p_mcb as a pointer and not a boolean for readability Bug: 345006660 Test: m com.android.bt Flag: EXEMPT mechanical refactor Change-Id: Iee65cd9b30d739db1771a1b645fb443e4baac033
2025-02-24Merge changes from topic "rfcomm_msc" into main am: 82ff24dea5 am: c587a4a502 Jayden Kim
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3468089 Change-Id: I56724e3a8808ae9384d185891efd59ad77530afe Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-02-24Merge changes from topic "rfcomm_msc" into main Jayden Kim
* changes: Indicate RFCOMM connection complete when modem signal is confirmed Flag to indicate rfcomm connection complete after modem status command
2025-02-24Indicate RFCOMM connection complete when modem signal is confirmed Jayden Kim
This change is applied only for offloaded socket Bug: 342012881 Bug: 393594567 Test: m com.android.bt Flag: com.android.bluetooth.flags.indicate_rfcomm_connection_complete_after_msc Change-Id: I3ec8652cb19a7e4dc1bd1f6e63d807374d68e503
2025-02-21Merge changes Idccdb2ab,Ie109fab6,Ie2de6f03 into main am: 10dfe15ea0 am: ↵ Pomai Ahlo
8eadfd0c12 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3475352 Change-Id: I6e55b695baa731fbd7835a6c9b2f770c9a2ac1f3 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-02-20RFCOMM Metrics V2: Collect at port closure Pomai Ahlo
Collect metrics in system/stack/rfcomm after tPORT structure closes Bug: 374989690 Test: m com.android.bt && manual with Atom Tester Flag: EXEMPT metrics Change-Id: Idccdb2ab660e62a998d46293cea8495a761fa916
2025-02-20RFCOMM metrics V2: Add metrics functions Pomai Ahlo
- Collect metrics when sdp fails for HFP and RFCOMM - Collect metrics when port creation fails for HFP and RFCOMM - Collect metrics when port closes Bug: 374989690 Test: m com.android.bt Flag: EXEMPT metrics no-op Change-Id: Ie2de6f0305afad58ab7d2cd7fdcf988c21649a28
2025-02-14Merge changes If008486e,I9a091725 into main am: 07c5190bea am: f6f997368b Pomai Ahlo
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3496031 Change-Id: Iff9042f555b6766d67f52bbf84845ff8193a8e95 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-02-13Remove PORT_IsOpening Pomai Ahlo
We now use PORT_IsCollisionDetected instead Bug: 345006660 Test: m com.android.btservices Flag: EXEMPT dead code removal Change-Id: If008486e298cc002a8ec7ae066f26fcaaca2171d
2025-01-31Merge changes I6d1e3dee,I9be47de0 into main am: b5818b7239 am: e318cacd18 Pomai Ahlo
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3470390 Change-Id: If041e4d1a582d5f869dadf94692637d5bafcd005 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-01-30Merge "RFCOMM: Update sm_cb where relevant" into main am: 91d1e0087b am: ↵ Pomai Ahlo
eb5d66bd89 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3312138 Change-Id: I63df671a953f97dba32d4638d60d2f294c827ee3 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-01-30RFCOMM Metrics Prep: SDP Pomai Ahlo
Collect SDP timestamps, save sdp_duration_ms and sdp_initiated to be used in later metrics CL Bug: 374989690 Test: m com.android.btservices Flag: EXEMPT metrics no-op Change-Id: I9be47de09e77708e4f550319d5d6a353ba42eb83
2025-01-30RFCOMM: Update sm_cb where relevant Pomai Ahlo
- Update the state and open_timestamp in new rfc_set_state function - Update the event when we call port_sm_execute - Update the close_reason when we close the port Bug: 374989690 Test: atest RfcommTest Flag: EXEMPT no-op Change-Id: Icaa04a7caa3b52ae3e988109b11f72ec509fad09
2025-01-28Merge "RFC: Add null check for port before calling close" into main am: ↵ Bhakthavatsala Raghavendra
2ca3a242ba am: ac52f822bf Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3466023 Change-Id: I1f6bfa28c2da87d37e6f5317893e3dcbf5578dce Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-01-28RFC: Add null check for port before calling close Bhakthavatsala Raghavendra
Test: mmm packages/modules/Bluetooth flag: Exempt, null check Bug: 392705329 Change-Id: I12d766d73313dc24d1b6b608e6c203496735d429
2025-01-23Merge "RFCOMM Logs: slot_id and port_handle" into main am: 5c0f57afd1 am: ↵ Pomai Ahlo
e3f1b99d6f Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3460899 Change-Id: I1be9d979983daf97f766bd4b3cd0c26f7da95f43 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-01-21RFCOMM Logs: slot_id and port_handle Pomai Ahlo
We have several different kinds of handles and ids. Give each reference in the logs a uniform name for easier debugging. Bug: 391404449 Test: m com.android.btservices Flag: EXEMPT logging change only Change-Id: Ie9f08fecbacb530d141a13a7371527c02f311767
2025-01-08RFCOMM: Save app_uid am: 5e8afe532f am: 6230b5e36c Pomai Ahlo
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3312137 Change-Id: Iaeef0fb1f7f2fe965b047494df69b2db5d5d0752 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-01-08RFCOMM: Replace rfc.state with rfc.sm_cb.state am: f494b46657 am: 3f65c51171 Pomai Ahlo
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3312136 Change-Id: I02daaea2dd67c01860681eab67e0b76b16920a1b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-01-08RFCOMM: Save app_uid Pomai Ahlo
Refactor code to pass app_uid down to sm_cb Bug: 361844445 Test: atest RfcommTest Flag: EXEMPT no-op for metrics Change-Id: I12b1545fb9d928b320c86a7b121e034531909003
2025-01-08RFCOMM: Replace rfc.state with rfc.sm_cb.state Pomai Ahlo
Introduce new state machine control block to hold port state. Move port state to sm_cb and change all references to reflect accordingly. Bug: 361844445 Test: m Bluetooth Flag: EXEMPT Mechanical Refactor Change-Id: I8d4467f4deb63f1befa3097ddcd244a76042172b
2025-01-07Merge changes I0caac76d,I77eba112,If765cc42 into main am: 87ffed50ed am: ↵ Henri Chataing
1841faf972 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3439126 Change-Id: If4e2124a6847172c686ba10d3f0e7980d32e4c21 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-01-06Remove gd/os/logging/log_adapter.h Henri Chataing
Bug: 331817295 Test: m com.android.bt Flag: EXEMPT, no logical change Change-Id: I0caac76d6500e586e8a205915524feb607274762
2025-01-02Merge "Add guardrail for offload RFCOMM socket local mtu" into main am: ↵ Jayden Kim
de6aa4f668 am: 217b70420d Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3431668 Change-Id: I3405f8af8c075f2f9dec0738c39cc01ac1ba13da Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-27Add guardrail for offload RFCOMM socket local mtu Liang Li
The offload stack may not know about the L2CAP mtu used for the offload RFCOMM socket, so it is safer to gate the local mtu in the BT stack in case a very large mtu is requested for the socket. Flag: com.android.bluetooth.flags.socket_settings_api Bug: 342012881 Bug: 374358112 Test: m com.android.btservices Change-Id: I18e5de7514cde1c67c9c7ace201cd2a18dd264e9
2024-12-19Merge "Fix app_fd and mtu for offload RFCOMM socket" into main am: ↵ Liang Li
f5995978a7 am: 59cd80a7d2 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3421165 Change-Id: Id923de7287d208ede01edd1277011503ff307bf9 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-19Fix app_fd and mtu for offload RFCOMM socket Liang Li
In on_srv_rfc_connect_offload it should not assign INVALID_FD to app_fd, which would block the socket from opening. Instead it assigns INVALID_FD to app_fd in on_btsocket_rfc_opened_complete after sending the app connect signal. Updated the selection of local mtu for offload socket by skipping the guardrail of L2CAP_MTU_SIZE in non-offload stack. Also removed several redundant function calls in on_srv_rfc_connect_offload and on_btsocket_rfc_opened_complete. Flag: com.android.bluetooth.flags.socket_settings_api Bug: 342012881 Bug: 374358112 Test: m com.android.btservices && OEM device tests Change-Id: Ie71ee75c3e05f8531f11b6b86871d0be2474db17
2024-12-17Merge changes from topic "rfcomm_offload_socket" into main am: 90cef83f24 ↵ Liang Li
am: e68bbbd966 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3409159 Change-Id: I9a513c624bcf86acacfeeea181708ea6087d0218 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-17Merge changes from topic "rfcomm_offload_socket" into main Liang Li
* changes: Determine local mtu for offload RFCOMM socket Set the initial local credits to 0 for offload RFCOMM socket Notify offloaded RFCOMM socket channel info to socket hal Send signal to indicate if app is accepting incoming connection on RFCOMM listen socket Add RFCOMM socket offload capabilities Add helper functions to get RFCOMM channel and L2CAP local mtu information
2024-12-16Merge "system: Convert base::StringPrintf to std::format" into main am: ↵ Henri Chataing
8c74fcfb8b am: b99dcfa40f Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3407745 Change-Id: I3204b9b49e3e1fb088d73d3af325876f62b9d2bd Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-16Determine local mtu for offload RFCOMM socket Liang Li
The local MTU is selected as the minimum of: - The socket hal's offload capabilities - The application's requested maximum RX packet size However, the MTU must be at least the minimum required by the RFCOMM specification. Flag: com.android.bluetooth.flags.socket_settings_api Bug: 342012881 Bug: 374358112 Test: m com.android.btservices Change-Id: Ia4a789aec3068d05fe80833246acc08774c86502
2024-12-13Set the initial local credits to 0 for offload RFCOMM socket Liang Li
Flag: com.android.bluetooth.flags.socket_settings_api Bug: 342012881 Bug: 374358112 Test: m com.android.btservices Change-Id: I05d5407d3cf5030037b46d5db3c9a48a4a1c0f48
2024-12-12Add helper functions to get RFCOMM channel and L2CAP local mtu information Liang Li
Flag: com.android.bluetooth.flags.socket_settings_api Bug: 342012881 Bug: 374358112 Test: m -j Change-Id: Id94712de7fb1ebdd88dd850db16e176092c10185
2024-12-12system: Convert base::StringPrintf to std::format Henri Chataing
Bug: 331817295 Test: m com.android.btservices Flag: EXEMPT, mechanical refactor Change-Id: Ib6933af3c28a1d429ea0cb6e3eae05b53fc9f2b4
2024-12-02Merge "system/stack/*: Fix -Wmissing-prototypes warnings" into main am: ↵ Treehugger Robot
cfea2a3d70 am: c0e7dfc66f Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3381253 Change-Id: If2c1a2c97e653b26e3d802ba741d13bf4cae7507 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-11-27system/stack/*: Fix -Wmissing-prototypes warnings Henri Chataing
Bug: 369381361 Test: m com.android.btservices Flag: EXEMPT, no logical change Change-Id: Idefcf4bb07451c40113689cda7815d486620ff35
2024-11-21Merge "system: Migrate from {fmt} to std::format" into main am: 3723874896 ↵ Henri Chataing
am: 648e440e0d Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3345590 Change-Id: I803c2c60053beaf4439a7090b0daa8dd0c7cfba4 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-11-20system: Migrate from {fmt} to std::format Henri Chataing
Bug: 305066880 Test: m com.android.btservices Flag: EXEMPT, log change Change-Id: If1dbab99250a4f62626206fc9f73d27e71ebab56
2024-11-09Merge "cpplint: fix and enable whitespace/newline" into main am: f61b8aba89 ↵ Treehugger Robot
am: 8d986fa23a Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/3341000 Change-Id: I4ab13eaa0dec9cc31e15e9d44e2709789f2c569e Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-11-08cpplint: fix and enable whitespace/newline William Escande
Done with a combination of: sed -i 'N;s|\(^ *// .*\)\n\( *else.*\)|\2\n\1|;P;D' $i sed -i 'N;s|\(^ */\* .*\)\n\( *else.*\)|\2\n\1|;P;D' $i sed -i 'N;s|\(^ */\*\* .*\)\n\( *else.*\)|\2\n\1|;P;D' $i sed -i 'N;s|\(^ *\* .*\)\n\( *else.*\)|\2\n\1|;P;D' $i + repo upload formatter Bug: 364967694 Test: m . Flag: Exempt refactor Change-Id: Ie1af09932f2508da5ed94c625b8c4052ab2c1e78
2024-11-06Fix more memory-unsafe logging Brian Delwiche
In various locations around the stack, log statements use structures that may, in exceptional cases, have been freed by preceding calls. This can lead to use after free and potentially to security vulnerabilities. Use local variables instead, or store the length before the call if no local variable is already convenient. Bug: 375404242 Bug: 375398779 Bug: 375397720 Bug: 375397164 Bug: 375397370 Bug: 375396810 Bug: 375159652 Bug: 375160214 Bug: 375159480 Test: m libbluetooth Test: researcher POC Flag: EXEMPT trivial logic fix Ignore-AOSP-First: security Tag: #security Change-Id: Ia50e074de751661a0e617bfffa17871497b8d1ea
2024-10-08port_api: Remove function names from logs Pomai Ahlo
The log will already have the function name, this removes the redundant function names Bug: 345006660 Test: m com.android.btservices Flag: EXEMPT Logging change Change-Id: Ia7f6773162c590b53bb3967fdf62cc63dce0b191
2024-10-08Rename tPORT_STATE to PortSettings Pomai Ahlo
Also rename "pars" variables to "settings" for consistency Bug: 345006660 Test: m com.android.btservices Flag: EXEMPT mechanical refactor Change-Id: I52f71268dfd9fe6b90d62c58212e248954a40dec
2024-09-25Enforce -Wmissing-prototypes Henri Chataing
This lint check will raise an error if a function is implemented without a corresponding prototype declaration included in scope. The main use case will be to ensure mock functions do not become out of sync causing the original function to be linked instead. Because of the large amount of errors, this change suppresses errors in all locations, to be cleaned up gradually. Bug: 369381361 Test: m com.android.btservices Flag: EXEMPT, lint fixes Change-Id: I888b5e284e237d8a6e2864bdde55c0a7fc0c348d
2024-09-11[25/25] stack::l2cap encapsulate l2c_api.h Chris Manton
Bug: 343808590 Test: m . Flag: EXEMPT, Mechanical Refactor Change-Id: I73cdcd8ce5f46db78958782fd2568e2a3f126583
2024-09-10[21/25] stack::rfcomm Use stack::l2cap::get_interface() Chris Manton
Bug: 343808590 Test: m . Flag: EXEMPT, Mechanical Refactor Change-Id: I1abfc4ef9ac0ecce1a70e1101eda4d29862ace11