On 23 Jul 2016 23:24, "Richard Newman" <[email protected]> wrote:
> I suspect that you can ignore the details here, because you control neither 
> the IdP nor the consumer; just know that this can fail, and doing so implies 
> either bad input or a bug somewhere — see e.g., Bug 985504, Bug 1042109. 
> Prompt the user for their credentials again, and start over.
>
> The purpose of this whole flow is to make sure that clients with different 
> passwords (because you changed it on one device), and thus different keys, 
> don't sync to the same server and screw things up by seeing/writing partial 
> state. The purpose of the generation check is to avoid accidental time travel.

OK, I guess asking for the user's credentials again should do the trick.

> You should read this. It's easier to understand the Java source than to 
> explain in English :)
>
> https://dxr.mozilla.org/mozilla-central/source/mobile/android/services/src/main/java/org/mozilla/gecko/sync/net/HawkAuthHeaderProvider.java

I know how to generate a HAWK header.

My problem was that I didn't know whether the id and key received from
the tokenserver had to be base64 decoded before being passed to the
HAWK header function.

But, as I see here

https://dxr.mozilla.org/mozilla-central/source/mobile/android/services/src/main/java/org/mozilla/gecko/tokenserver/TokenServerClient.java#231-235

and here

https://dxr.mozilla.org/mozilla-central/source/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/sync/FxAccountSyncAdapter.java#314

they appear to be passed directly as they are, without being decoded
first, so this solves my problem.

Thank you for your help!

Regards,
Gabriel
_______________________________________________
Sync-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/sync-dev

Reply via email to