mirror of
https://github.com/Lakr233/vphone-cli.git
synced 2026-10-02 08:04:32 +08:00
udid.set restarted misagent and deliberately left installd alone, on the grounds that installd "asks misagent". It does not. A lockdown-path install runs +[MICodeSigningVerifier _validateSignatureAndCopyInfoForURL:withOptions:error:], which calls MISValidateSignatureAndCopyInfo and evaluates the profile's ProvisionedDevices itself. Two processes answer the UDID question independently, which is why cfw install injects libmisfix into both, so refreshing one and not the other leaves them disagreeing. Measured on test-26.4: with the override changed to a UDID that is in the profile and only misagent restarted, _installEmbeddedProfilesWithError: passed and installd then failed the same install with 0xE8008015, still holding the UDID from before the change. installd had been up since boot (pid 281) while misagent had been restarted 24 minutes later (pid 819). Restarting installd can abort an install already in flight. That is the lesser evil: changing the device's identity underneath a running install is incoherent anyway, whereas leaving one of two evaluators on a stale answer fails later, somewhere else, with an error that never mentions the UDID. This is necessary but, on its own, not sufficient — a hand-restarted installd still refuses the same install. The remaining half is that installd's UDID query may not reach this hook at all; see the next commit. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>