Just a couple months ago, a hoax started circulating as a meme, stating that, if users set their time to January 1, 1970, a retro boot logo would appear as an Easter egg.
People did this and ended up bricking their phones.
Skip forward to the release of iOS 9.3, which, as part of the update description, states that it fixed a bug where manually setting the time before May 1970 would brick it.
This is quite odd, as...
- To my understanding, iOS is a derivative of Mac OS X, and that's based off of UNIX
NSDate's reference date is January 1, 2001 (Reference)
NSDateallows for dates to be created as an interval from 1970 so it can retain compatibility with BSD's
time_ttype (Reference: Discussion section of this method)
- iOS didn't change its entire backing system. Otherwise, nothing would work and it'd be an entirely different platform.
- The security page for iOS 9.3 says nothing about this issue that I found.
How did Apple silently fix this issue? Did they change date calculations on boot? Why, before May 1970, would those months specifically cause an issue? Why May?
They didn't change how time was stored. Otherwise, the
NSDate type in iOS 9.3 would work completely differently.