Anay Wadhera
b7415ecd40
Implement NearbyDevice for PresenceDevice.
...
PiperOrigin-RevId: 491705794
2022-11-29 12:19:47 -08:00
Hai Shang
6871b9d5a6
Add initial impl for UpdateRemotePublicCredentials in CredentialManager.
...
PiperOrigin-RevId: 491458184
2022-11-28 15:24:26 -08:00
Janusz Sobczak
8bd3d34580
Link with Rust NP LDT
...
Add conditional dependency on Rust NP LDT.
By default, we will use an empty stub.
PiperOrigin-RevId: 490554102
2022-11-23 11:55:52 -08:00
Anay Wadhera
52d81710a2
Add fields to PresenceDevice
...
PiperOrigin-RevId: 490345719
2022-11-22 15:03:09 -08:00
Janusz Sobczak
9e61866ee3
Sync with Rust LDT changes
...
PiperOrigin-RevId: 490288278
2022-11-22 11:16:21 -08:00
Janusz Sobczak
a3b6058753
Fully qualify ::location::nearby imports.
...
Find and replace exercise.
Replace
`using location::nearby`
with
`using ::location::nearby`
and
`using <Name> = location::nearby`
with
`using <Name> = ::location::nearby`
PiperOrigin-RevId: 490087051
2022-11-21 15:33:21 -08:00
Janusz Sobczak
a11733988f
Implement start advertising in service controller.
...
PiperOrigin-RevId: 489584407
2022-11-18 16:17:55 -08:00
Anay Wadhera
beb67fc02a
Call StopScan() when ScanSession goes out of scope and make sure stop can only be called once.
...
PiperOrigin-RevId: 488717591
2022-11-15 11:46:34 -08:00
Anay Wadhera
b7de5f4097
Resolve unique_ptr being thrown away and potential deadlock issue
...
PiperOrigin-RevId: 487979164
2022-11-11 20:30:27 -08:00
Nick Bourdakos
4fb6ba318c
Internal change
...
PiperOrigin-RevId: 486691317
2022-11-07 09:59:14 -08:00
Janusz Sobczak
a90b7f85fc
Disable medium env by default.
...
MediumEnvironment's initial state will now match the state after calling `Stop()`.
Cleaned up tests that were calling Stop() before test start.
PiperOrigin-RevId: 486277290
2022-11-04 18:56:30 -07:00
Janusz Sobczak
5faa395f24
Change enum PublicCredentialType to enum class.
...
PiperOrigin-RevId: 486243753
2022-11-04 15:26:34 -07:00
Janusz Sobczak
23c9b106b1
Remove dependency on tink.
...
PiperOrigin-RevId: 486232030
2022-11-04 14:32:56 -07:00
Janusz Sobczak
951945dd5c
Add AdvertisementData struct.
...
Define and use an NP private AdvertisementData structure instead of the low level BleAdvertisementData,
The APIs look cleaner this way.
PiperOrigin-RevId: 486224840
2022-11-04 14:03:24 -07:00
Hai Shang
de4e7a66dc
Utilize ScanManager for scan operation in service controller.
...
PiperOrigin-RevId: 486208283
2022-11-04 12:50:19 -07:00
Anay Wadhera
c0531d556c
Explicitly convert absl::string_view to std::string for chromium
...
PiperOrigin-RevId: 485990008
2022-11-03 15:34:38 -07:00
Anay Wadhera
8028821593
Switch to .pb.h and explicit conversions to std::string
...
PiperOrigin-RevId: 485942813
2022-11-03 12:31:18 -07:00
Anay Wadhera
373a694b32
Add missing die_if_null and flat_hash_map dependency to fix build error
...
PiperOrigin-RevId: 485938749
2022-11-03 12:14:16 -07:00
Janusz Sobczak
d268b077c9
Save scan callbacks before starting scan session.
...
This reduces flakiness. We can start receiving advertisements before StartScan() has finished.
PiperOrigin-RevId: 485904791
2022-11-03 10:13:02 -07:00
Anay Wadhera
74f7f5ec5c
Fix visibility rules
...
PiperOrigin-RevId: 485897261
2022-11-03 09:44:47 -07:00
Anay Wadhera
fa983e304a
Allow tink to be fetched and compile presence in bazel builds.
...
PiperOrigin-RevId: 485876571
2022-11-03 08:15:15 -07:00
Anay Wadhera
c4dc132f50
Add ScanManager class for bookkeeping BLE v2 scans
...
PiperOrigin-RevId: 485675999
2022-11-02 13:15:31 -07:00
Janusz Sobczak
81f6b547bb
Add StartAdvertising to BLE medium.
...
StartAdvertising allows us to broadcast Nearby Presence advertisements.
We can now test scanning and advertising with the MediumEnvironment rather than mocking platform code.
PiperOrigin-RevId: 484662211
2022-10-28 18:23:30 -07:00
Janusz Sobczak
5d742558a4
Add advertisement filtering
...
PiperOrigin-RevId: 484616133
2022-10-28 14:07:29 -07:00
Janusz Sobczak
bc9a6ec55b
Use LDT for advertisement decryption.
...
We are still missing the real LDT implementation, so the code is linked with a
placeholder code that doesn't do the actual encryption.
PiperOrigin-RevId: 484596294
2022-10-28 12:37:48 -07:00
Janusz Sobczak
53c504be9d
Use LDT for advertisement encryption.
...
We are still missing the real LDT implementation, so the code is linked with a
placeholder code that doesn't do the actual encryption.
We also needed to pass the `account_name` to credential manager to choose the
correct credentials.
PiperOrigin-RevId: 483801163
2022-10-25 16:09:17 -07:00
Hai Shang
054f6efe53
Chain scan & broadcast invokes from PresenceClient to ServiceController
...
PiperOrigin-RevId: 483496670
2022-10-24 15:12:43 -07:00
Janusz Sobczak
8128bbc062
Include LDT header
...
PiperOrigin-RevId: 480757134
2022-10-12 17:16:16 -07:00
Janusz Sobczak
4bd0337c10
Update to match revised BLE 4.2 specification
...
PiperOrigin-RevId: 479615854
2022-10-07 10:33:38 -07:00
Hai Shang
c4ad6de6f8
add scan function in presence BLE
...
PiperOrigin-RevId: 478666843
2022-10-03 19:35:23 -07:00
Anthony Rueda
1443f3a135
Implement get public & private credentials.
...
PiperOrigin-RevId: 478522128
2022-10-03 09:18:19 -07:00
Anthony Rueda
fd59e9aede
Consolidate credential_storage callback functions. Move all callback struct definitions in a central header file compiled as part of internal/platform/implementation:comm library.
...
PiperOrigin-RevId: 476186596
2022-09-22 13:46:47 -07:00
Janusz Sobczak
5871209f44
Convert from public to internal broadcast request
...
Add conversion from public BroadcastRequest to internal BLE 4.2 broadcast request.
PiperOrigin-RevId: 473338534
2022-09-09 14:09:09 -07:00
Xin He
4f599a0d3e
Save generated credentials and make the callback
...
PiperOrigin-RevId: 472776321
2022-09-07 11:50:30 -07:00
Anay Wadhera
5b7bb37d41
Nearby Presence/Implementation: Fix for Android compile
...
PiperOrigin-RevId: 468735587
2022-08-19 10:43:41 -07:00
Xin He
f166f1e22c
Remove presence_identity struct.
...
PiperOrigin-RevId: 468032143
2022-08-16 14:56:38 -07:00
Xin He
e5c24b8b8a
Add manager app ID into the APIs
...
PiperOrigin-RevId: 467757514
2022-08-15 14:11:15 -07:00
Xin He
123a2cfd18
Move credentials related proto from Prensence to internal
...
Replace PresenceIdentityType with proto
PiperOrigin-RevId: 467294239
2022-08-12 14:18:34 -07:00
Anay Wadhera
e1f8cf40ba
Switch to absl::variant for Chrome compatibility
...
PiperOrigin-RevId: 467033120
2022-08-11 13:21:52 -07:00
Hai Shang
754b1ad349
Check in sensor fusion interface
...
PiperOrigin-RevId: 467029545
2022-08-11 13:07:26 -07:00
Janusz Sobczak
8446944697
Hide internal code in implementation/
...
Refactoring change.
action_factory* -> implementation/action_factory*
broadcast_request* -> implementation/base_broadcast_request*
encryption* -> implementation/encryption*
Clean up build targets.
PiperOrigin-RevId: 466992367
2022-08-11 10:37:56 -07:00
Xin He
76d45f20db
Replace encrypting metadata with CBC to AES.
...
Provide a new API to decrypt the device metadata inside a public credential
PiperOrigin-RevId: 466936093
2022-08-11 06:23:49 -07:00
Janusz Sobczak
07119e80de
Merge CertificateManager and CredentialManager
...
Refactoring change.
Merge CertificateManager and CredentialManager into a single interface.
Hide AdvertisementFactory in implementation/. The client app will not be using
that class directly.
Clean up build targets.
PiperOrigin-RevId: 466748133
2022-08-10 11:46:16 -07:00
Suet-Fei Li
55f20775d2
Fix internal flow
...
PiperOrigin-RevId: 466426960
2022-08-09 12:02:16 -07:00
hai007
0a8f1f1c39
Implement Credentials Generation APIs
...
PiperOrigin-RevId: 466389238
2022-08-09 09:56:54 -07:00
Janusz Sobczak
6e6ae3ebd7
Decode the action in Base NP advertisements back into a list of Data Elements
...
PiperOrigin-RevId: 466204445
2022-08-08 19:39:05 -07:00
jsobczak
319e5abea4
Add advertisement decoder
...
The decoder allows us to parse incoming Nearby Presence advertisements.
PiperOrigin-RevId: 465146528
2022-08-03 14:18:12 -07:00
hai007
a732616a97
Change private/public credentials from struct to proto.
...
PiperOrigin-RevId: 464678736
2022-08-01 19:16:05 -07:00
hai007
0d4964da7b
Splitting SaveCredentials into two separate virtual functions:
...
SavePrivateCredentials() and SavePublicCredentials().
Replacing Get_**_CredentialsCallback implementation with two function wrappers
instead of one function wrapper for the ExceptionOr class.
PiperOrigin-RevId: 464108110
2022-07-29 10:34:22 -07:00
hais
d5f86a04d6
Replace to use IdentityType where TrustType were used.
...
PiperOrigin-RevId: 463713311
2022-07-27 17:07:19 -07:00