Commit Graph
304 Commits
Author SHA1 Message Date
Anay Wadhera 0ab31f6312 Implement device loss alarms
PiperOrigin-RevId: 538822094
2023-06-08 10:19:44 -07:00
Guogang Li dbd42b0de3 Handle GATT query in separate thread
PiperOrigin-RevId: 538819295
2023-06-08 10:10:00 -07:00
Crisrael Lucero a821e0378c Replace dynamic_cast with reinterpret_cast
PiperOrigin-RevId: 538330024
2023-06-06 17:03:12 -07:00
hai007 224ab6b698 Automated visibility attribute cleanup.
PiperOrigin-RevId: 538205367
2023-06-06 09:23:59 -07:00
Guogang Li 19bc10ff26 Fixed the issue to initialize discovery tracker
PiperOrigin-RevId: 537995407
2023-06-05 15:22:40 -07:00
hai007 e77c1e862e safe_to_disconnect_version for safe-to-disconnect features.
PiperOrigin-RevId: 537501354
2023-06-03 00:01:35 -07:00
Anay Wadhera 20622608b3 Plumb core into servicecontroller
PiperOrigin-RevId: 537480170
2023-06-02 21:21:57 -07:00
Anay Wadhera b0568ecc26 Update ServiceControllerRouter for v3 API entrypoint
PiperOrigin-RevId: 537478014
2023-06-02 21:06:58 -07:00
Eiden Kim 7c931aa9c7 Changed number (1/0) to true/false in Connections Dump()
PiperOrigin-RevId: 537092962
2023-06-01 12:09:56 -07:00
hai007 1e868a1a65 Fix a crash problem related to OnEndpointFound
PiperOrigin-RevId: 536541918
2023-05-30 16:35:11 -07:00
Juliet Levesque f38728bb0b [Nearby Connections] Do not erase CancellationFlag map entry in ClientProxy
To prevent invalid access of already destroyed CancellationFlag pointers, do not erase the map entry of a CancellationFlag in ClientProxy::CancelEndpoint. Crashes were caused by consumers accessing CancellationFlag::Cancelled to check if the flags were cancelled, however since the flags was destroyed by erasing the map entry in ClientProxy::CancelEndpoint, consumers are calling gabrage memory.

PiperOrigin-RevId: 536470187
2023-05-30 12:03:51 -07:00
Juliet Levesque 9c09f325e0 [Nearby Connections] Do not destroy CancellationFlag map in ClientProxy
To prevent invalid access of already destroyed CancellationFlag pointers, do not clear the map of CancellationFlags in ClientProxy::CancelAllEndpoints. Crashes
were caused by consumers accessing CancellationFlag::Cancelled to check if the flags were cancelled, however since the flags were destroyed by erasing the map in ClientProxy::CancelAllEndpoints, consumers are calling gabrage memory.

PiperOrigin-RevId: 535284214
2023-05-25 09:34:26 -07:00
Nick Bourdakos 3c72e4f40c Fix EXC_BAD_ACCESS crash when calling payload delegate methods.
Objective-C objects cannot be captured by reference in C++ lambdas and must always be captured by value.

This also takes a copy of the data returned from the Wi-Fi LAN reader, to prevent potential intermittent empty packet issues.

Fixes: #1702
PiperOrigin-RevId: 533925980
2023-05-21 19:19:18 -07:00
Anay Wadhera f727d00ad1 Create v3 ConnectionResponseInfo
PiperOrigin-RevId: 533518921
2023-05-19 12:14:15 -07:00
Anay Wadhera f80a50f402 Plumb RegisterDeviceProvider through to ClientProxy
PiperOrigin-RevId: 533492277
2023-05-19 10:36:41 -07:00
hai007 1b59c39c02 Fix OnEndpointLost behavior error
PiperOrigin-RevId: 533488774
2023-05-19 10:23:41 -07:00
hai007 47aea4b689 Fix Tsan data race error
PiperOrigin-RevId: 533486198
2023-05-19 10:14:21 -07:00
Anay Wadhera f2cadc2815 move payload listeners to absl::AnyInvocable
PiperOrigin-RevId: 533365325
2023-05-18 23:30:01 -07:00
Juliet Levesque 8a78212bb8 [Nearby Connections] Check for shutdown before accessing ClientProxy.
During the destruction of NearbyConnections, Core (which owns ClientProxy) is destructed before ServiceController (which owns EndpointManager), which means any pending tasks on the EndpointManager executor that use ClientProxy will be using
garbage memory. To fix this issue, EndpointManager::DiscardEndpoint will check
for an `is_shutdown` boolean set during ~EndpointManager before accessing
ClientProxy. The assumption is that any accessing of ClientProxy after the
destruction will be invalid.

PiperOrigin-RevId: 532581122
2023-05-16 14:54:20 -07:00
Anay Wadhera e4be4677c4 update ukey2 to use bazel
PiperOrigin-RevId: 532532700
2023-05-16 12:05:48 -07:00
Anay Wadhera 99e951dc53 ClientProxy: Wire in DeviceProvider
PiperOrigin-RevId: 532259220
2023-05-15 16:17:16 -07:00
Nick Bourdakos ae35b1a242 Internal change
PiperOrigin-RevId: 532215519
2023-05-15 13:56:22 -07:00
Anay Wadhera b698c00b5d DeviceProvider: refactor getdevice interface once again
PiperOrigin-RevId: 531659446
2023-05-12 19:37:54 -07:00
Nick Bourdakos 3c48cc80e8 Give endpoint detail subviews IDs so a new instance of the view is created between separate connections 2023-05-11 16:01:15 -04:00
Janusz Sobczak 0901aec6e2 Add BleMedium::GetRemotePeripheral
Added:
nearby::api::ble_v2::BlePeripheral::GetUniqueId()
nearby::api::ble_v2::BleMedium::GetRemotePeripheral(...)

Moved BlePeripheral implementation from bluetooth_adapter_* to ble_v2.*
Added G3 (test) implementation for the new methods.

PiperOrigin-RevId: 531023568
2023-05-10 15:40:38 -07:00
Guogang Li 072d24238b Made kPeripheralLostTimeout as flag
PiperOrigin-RevId: 530408275
2023-05-08 14:29:02 -07:00
hai007 4eaaeb254d Clean up third_party/nearby/connections/implementation/analytics
PiperOrigin-RevId: 529811175
2023-05-05 14:13:49 -07:00
Anay Wadhera 630b2dd3db Create ConnectionsDeviceProvider
PiperOrigin-RevId: 529781099
2023-05-05 12:13:06 -07:00
hai007 ff412edde1 Skip the analytics recording on the closed connection without strategy sessions
PiperOrigin-RevId: 529502206
2023-05-04 13:41:08 -07:00
Nick Bourdakos 58772e95f9 Internal change
PiperOrigin-RevId: 529464527
2023-05-04 11:24:39 -07:00
Anay Wadhera d91904d79d Create ConnectionsDevice
PiperOrigin-RevId: 529447365
2023-05-04 10:26:47 -07:00
Anay Wadhera 7caeb98443 Remove v2 callbacks from client_proxy
PiperOrigin-RevId: 529181183
2023-05-03 13:35:59 -07:00
Anay Wadhera 21d2efbccd Create PresenceDeviceProvider
PiperOrigin-RevId: 528913199
2023-05-02 16:02:36 -07:00
hai007 10174f8a47 Fix data overflow problem
PiperOrigin-RevId: 528023236
2023-04-28 17:16:44 -07:00
Eiden Kim aea5b223d3 Create min iOS and test runner under third_party/nearby for common test target.
PiperOrigin-RevId: 527754820
2023-04-27 19:52:01 -07:00
Anay Wadhera 5edd8e25ca Introduce v3 NC API callbacks
PiperOrigin-RevId: 527747390
2023-04-27 19:01:39 -07:00
hai007 5dfe7094c3 Update unit test minimum IOS version to 13.7
PiperOrigin-RevId: 527738714
2023-04-27 18:09:15 -07:00
Eiden Kim b0985c70b4 Update iOS unit test min version to have IOS_MINIMUM_OS
PiperOrigin-RevId: 527675057
2023-04-27 13:56:15 -07:00
Johnson Lu 83739b3185 [Connections] Switch to use P2P IPv6 address
PiperOrigin-RevId: 527502244
2023-04-27 01:05:22 -07:00
Nick Bourdakos 10faeb88c7 Add usage descriptions to iOS sample app 2023-04-25 12:56:05 -04:00
Edwin Wu 576b0babfa [Connections] Implement NC/NP Handshake & Connection Authentication, part IV
PiperOrigin-RevId: 525618680
2023-04-19 19:56:59 -07:00
Edwin Wu a706e95e7b [Connections] Implement NC/NP Handshake & Connection Authentication, part III
PiperOrigin-RevId: 525615681
2023-04-19 19:32:44 -07:00
hai007 b68431e6a8 Add IFTTT comment for linter.
PiperOrigin-RevId: 524593948
2023-04-15 20:30:24 -07:00
Nick Bourdakos 78908237c7 Add iOS sample app readme 2023-04-11 15:16:38 -04:00
Johnson Lu 7fb90aea30 Add connections_device and presence_device fields in ConnectionRequestFrame
PiperOrigin-RevId: 523024392
2023-04-09 21:12:02 -07:00
hai007 82b9cb50fa Fix the Hotspot and WFD unit tests when cancellation flag is enabled
PiperOrigin-RevId: 522643865
2023-04-07 11:29:31 -07:00
Anay Wadhera bd4f7646f5 Refactor windows medium selector to remove generic type
PiperOrigin-RevId: 522422530
2023-04-06 13:35:31 -07:00
hai007 388c96d125 Close webrtc socket before closing the PeerConnection.
PiperOrigin-RevId: 522140908
2023-04-05 13:36:30 -07:00
hai007 f8f9c4fd4e Don't unregister an observer while inside an observer callback.
PiperOrigin-RevId: 521860015
2023-04-04 14:05:32 -07:00
Anay Wadhera 13f7fb7966 Remove generic variant of MediumSelector, we only use bool as the indicator type.
PiperOrigin-RevId: 521834776
2023-04-04 12:31:06 -07:00