• Kyle Horimoto's avatar
    [CrOS Tether] Refactor BLE code to key by device ID. · 957fdda5
    Kyle Horimoto authored
    Previously, much of the BLE code was keyed by RemoteDevice instead. This
    can cause subtle race conditions; for example:
      (1) Register remote device A.
      (2) CryptAuth sync occurs; device A is updated.
      (3) Register remote device A again. Since device fields have changed,
          this would be considered a different device.
      (4) Multiple connections are attempted to the same device.
    
    These issues are recoverable, since the MessageTransferOperation which
    registered the original device (before the update) will eventually
    finish and unregister the device; however, during this time period,
    connections are prone to errors.
    
    Bug: 777610, 672263
    Change-Id: I9e6ed9c2ad69cb318863268f041db7b5f5ec3bd5
    Reviewed-on: https://chromium-review.googlesource.com/738467
    Commit-Queue: Kyle Horimoto <khorimoto@chromium.org>
    Reviewed-by: default avatarJeremy Klein <jlklein@chromium.org>
    Reviewed-by: default avatarRyan Hansberry <hansberry@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#521974}
    957fdda5
mock_remote_beacon_seed_fetcher.h 1.21 KB