Closed
Bug 732751
Opened 13 years ago
Closed 13 years ago
java.lang.SecurityException: caller uid 10090 is different than the authenticator's uid during setup
Categories
(Firefox for Android Graveyard :: Android Sync, defect)
Tracking
(Not tracked)
RESOLVED
INVALID
People
(Reporter: wesj, Unassigned)
References
Details
I can't set up Sync from my own local builds. Not sure if I'm supposed to, or if there's some security lock there.
STR:
Start Fennec
On about:home click Setup Sync button
Wait for JPAKE code to appear.
Enter on Desktop
Results:
On device sync changes to a progress bar and a waiting screen for a bit. Then shows me a new JPAKE code. Sync does not work. Desktop acts like everything was successful. logcat says:
03-03 18:06:55.230 12445 12529 E JPakeClient: Exception in stage org.mozilla.gecko.sync.jpake.stage.CompleteStage@40726dc8
03-03 18:06:55.230 12445 12529 E JPakeClient: java.lang.SecurityException: caller uid 10090 is different than the authenticator's uid
03-03 18:06:55.230 12445 12529 E JPakeClient: at android.os.Parcel.readException(Parcel.java:1322)
03-03 18:06:55.230 12445 12529 E JPakeClient: at android.os.Parcel.readException(Parcel.java:1276)
03-03 18:06:55.230 12445 12529 E JPakeClient: at android.accounts.IAccountManager$Stub$Proxy.addAccount(IAccountManager.java:547)
03-03 18:06:55.230 12445 12529 E JPakeClient: at android.accounts.AccountManager.addAccountExplicitly(AccountManager.java:489)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.setup.activities.AccountActivity.createAccount(AccountActivity.java:216)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.setup.activities.SetupSyncActivity.onComplete(SetupSyncActivity.java:365)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.JPakeClient.complete(JPakeClient.java:333)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.stage.CompleteStage.execute(CompleteStage.java:12)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.JPakeClient.runNextStage(JPakeClient.java:225)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.stage.DecryptDataStage.execute(DecryptDataStage.java:72)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.JPakeClient.runNextStage(JPakeClient.java:225)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.stage.GetRequestStage$1.handleSuccess(GetRequestStage.java:71)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.stage.GetRequestStage$2.handleHttpResponse(GetRequestStage.java:121)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.net.BaseResource.execute(BaseResource.java:207)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.net.BaseResource.go(BaseResource.java:229)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.net.BaseResource.get(BaseResource.java:235)
03-03 18:06:55.230 12445 12529 E JPakeClient: at org.mozilla.gecko.sync.jpake.stage.GetRequestStage$GetStepTimerTask.run(GetRequestStage.java:193)
03-03 18:06:55.230 12445 12529 E JPakeClient: at java.util.Timer$TimerImpl.run(Timer.java:284)
Comment 1•13 years ago
|
||
Do you have your build installed at the same time as a Nightly or Aurora build?
Updated•13 years ago
|
OS: Linux → Android
Hardware: x86 → ARM
Updated•13 years ago
|
Summary: Sync can't set up → java.lang.SecurityException: caller uid 10090 is different than the authenticator's uid during setup
Comment 2•13 years ago
|
||
To explain:
If you have two versions of Firefox installed (e.g., Nightly and a Fennec build), they both claim to know how to authenticate Firefox Sync accounts, because they both ship the account management code.
Whichever one the system picks has its uid assigned to the account type.
If you're running the other one's setup code, then when it tries to create an account its uid won't match, and you'll get:
java.lang.SecurityException: caller uid 10090 is different than the authenticator's uid
There are three solutions to this.
1. Have every version of Firefox specify the same sharedUserId, and be signed with the same certificate. That will allow Nightly to use Aurora's account code. Not scalable: you can't sign your own binaries with the Firefox Beta key.
2. Have every version of Firefox specify a different account type, so you'll get N entries in Add An Account for "Firefox Sync", one for each browser. Not pleasant for other reasons.
3. Don't bundle Sync with Firefox; install it separately. That requires installing a separate APK.
I've taken the fourth road: *don't do that*. If you want to use Firefox Sync, you must have only one version of Firefox installed when you set it up, and the behavior if you have more than one version installed is undefined.
Reporter | ||
Comment 3•13 years ago
|
||
Yes, I have both a Nightly and my local version installed. Thanks for explaining Richard. Glad to at least know what was wrong.
Comment 4•13 years ago
|
||
Thanks Wes! One day we'll have a good solution to this…
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → INVALID
Assignee | ||
Updated•12 years ago
|
Product: Mozilla Services → Android Background Services
Updated•8 years ago
|
Product: Android Background Services → Firefox for Android
Updated•5 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•