Repository navigation
Conversation
c5ad46f to
f4987b8
Compare
…eport the Xcode client identity) c558994 switched AltServer and AltDaemon to report com.apple.akd/1.0 in X-MMe-Client-Info because Apple's authentication edge now refuses any request identifying the client as Xcode. AltStore's on-device path was not covered: FetchAnisetteDataOperation copies the client identity verbatim from the anisette server, and every server in anisette-servers.json still reports <MacBookPro13,2> <macOS;13.1;22C65> <com.apple.AuthKit/1 (com.apple.dt.Xcode/3594.4.19)>. So a refresh or sign-in from the device through Remote AltServer still fails with ALTGrandSlamErrorDomain 503. Present AltStore's own client identity instead, as AltServer already does for its own requests. There is no Mac to describe here, so use a fixed model and OS whose versions are consistent with each other, with akd as the client. Using a current OS rather than the servers' macOS 13.1 also keeps Apple granting two-factor trust (see altstoreio#1772); the override structure follows sshane/AltStore acc15f7.
f4987b8 to
12823b5
Compare
|
Confirmed on device (iPhone 17 Pro, iOS 27 beta, AltStore Classic 2.3b2) with |
|
Confirming the diagnosis independently, and +1 to merging this. I re-checked all five servers in So the on-device path is still broken on Small correction to the description: the One suggestion, as a follow-up rather than a blockerThis replaces a hardcoded identity that Apple blocked with another hardcoded identity, and pins a beta OS build while doing it. #1790 said the same of its own fix — "This treats the symptom. Apple could block
{
"clientInfo": "<Mac15,7> <macOS;27.0;26A5378j> <com.apple.AuthKit/1 (com.apple.akd/1.0)>",
"userAgent": "akd/1.0 CFNetwork/1568.100.1",
"servers": [ ... ]
}
Minor, while you're in there: |
|
Good catch, the akd probe returns 401, fixed the description. Agree the remote override belongs in a follow-up PR so this one can land as is, and can align the User-Agent there too. |
Problem
#1790 fixed the HTTP 503 sign-in for AltServer and AltDaemon by sending
com.apple.akd/1.0inX-MMe-Client-Info, but on-device sign-in still fails.FetchAnisetteDataOperationcopies the client identity from the anisette server, and every server inanisette-servers.jsonstill reports the blocked Xcode identity (/v3/client_info, 2026-09-12):client_info<MacBookPro13,2> <macOS;13.1;22C65> <com.apple.AuthKit/1 (com.apple.dt.Xcode/3594.4.19)>Apple drops the request on the client token alone. The same request with
com.apple.akd/1.0returns 401 instead of 503, so it reaches the service.Fix
AltStore sends its own client identity instead of the server's, the same way AltServer's
AnisetteDataManageralready does, using a fixed model and OS withcom.apple.akd/1.0as the client. A current OS instead ofmacOS;13.1also fixes the repeated two-factor prompts from #1772.Testing
On device from this branch on
classic, sign-in withani.sidestore.iocompletes and Delta and Aidoku install on a free account. After one verification code, later sign-ins and a refresh the next day needed no new code. Without the change the same device got 503 on every refresh for two days.Related: #1776, #1782, #1772