4 ms·
Yeah, very cool. It only works because the rootfs is mounted as read-only or else they might end up messing it up if the system was writing to the same block. B
by innoying 13y ago
Yeah, very cool. It only works because the rootfs is mounted as read-only or else they might end up messing it up if the system was writing to the same block. But then again if it wasn't read-only this wouldn't be a problem.
- 0x0 13y agoA lot of the recent jailbreaks seem to depend on symlink shenanigans. I wonder why Apple can't simply remove symlink support from iOS' filesystem driver? Is there anything in iOS or the appstore apps that depend on it?
- innoying 13y agoMany parts of the internal system depend on it. Here's a run of `find / -type l` on a jailbroken iPhone 5: https://gist.github.com/innoying/8cd04821e17b3f67aa4b https://gist.github.com/innoying/8cd04821e17b3f67aa4b A few of those are created by the jailbreak but most are core parts of the system.
- gluxon 13y agoThat's actually a lot less than I thought would be in the iOS filesystem. It doesn't seem like it'd be incredibly hard to remove those symlinks. Although Apple would probably favor fixing the bugs that allow malicious symlinks rather than remove symlinks from their file system driver (the horror!)
- innoying 13y agoThey would also have to make sure no iOS applications make use of symlinks at any point. Since a ipa is simply a zip archive it's possible (and probable) that some applications already make use of symlinks on install or during operation. I think that's the major motivation.
- 0x0 13y agoI'm pretty sure symlinks aren't anything any regular xcode ios sdk project would end up delivering in normal use, though. Plus, old binaries break all the time due to incompatible software or hardware changes (AVFoundation, GL shaders, UDID bans, etc.). And new builds certainly get new requirements imposed (forced minimum SDK version etc)
- sprite 13y agoI've seen people symlink graphics for reuse. For for reusing @2x graphics on iPad, etc.
- void-star 13y agoNumerous App Store apps contain symlinks around the detached codesignature, most likely caused by changes over the years to the codesignature utility. Also in keeping with Xcode semantics, embedded frameworks often contain symlinks as well.