|
| cpeterso wrote:
| Summary of the bug: Exchange tried to store "2201010001" (i.e.
| date time '22-01-01 00:00) in a 32-bit signed int, but INT_MAX is
| 2147483647 so the result is a negative number.
| 29athrowaway wrote:
| Or std::numeric_limits::max()
| grishka wrote:
| Why is anyone using _two-digit years_ anywhere at all? This
| approach has already caused a lot of trouble 22 years ago. Do
| people learn nothing from their past mistakes?
| phkahler wrote:
| Oh they should have used an UNSIGNED number. /sarcasm
| sdoering wrote:
| Damn. This reminds me of the alleged 'Nuclear Gandhi' [1].
|
| Or the Swiss railway axle counter [2].
|
| [1]: https://en.wikipedia.org/wiki/Nuclear_Gandhi
|
| [2]:
| https://www.reddit.com/r/programming/comments/4sco75/the_axl...
| hn_throwaway_99 wrote:
| Storing dates in YYMMDDHHMM format but _then_ saving that as an
| int seems like such an ... odd choice. Curious to how /why that
| decision was made, or if it was perhaps unintentional but
| nobody noticed before (e.g. comparison was done on those date
| values but nobody realized that they were for some reason
| coerced to ints, and nobody noticed because it still worked as
| expected).
| dang wrote:
| Submitters: please don't editorialize titles. This is in the site
| guidelines: https://news.ycombinator.com/newsguidelines.html.
| We've reverted the title now. (Submitted title was "Y2K problem
| came back with vengeance in 2022".)
| indigodaddy wrote:
| Only the mods get to do that
| DoctorOW wrote:
| Do the mods do that?
| pc86 wrote:
| I don't think it's particularly widespread, and if _anyone_
| can do it it makes sense for mods to have that power.
| However I have on numerous times (in absolute terms) seen
| mods change titles to something more informative than the
| original. I wouldn 't necessarily call that
| "editorializing," though.
| hn_throwaway_99 wrote:
| There are mods, plural? I.e. someone else besides dang?
| sharmin123 wrote:
| mproud wrote:
| So many spelling mistakes!
| zinekeller wrote:
| Originally in German, this is a best-effort translation by the
| author.
| ocdtrekkie wrote:
| I love the solution: They changed their antimalware definition
| files to December 33rd, 2021, until they have a more substantial
| patch ready. The instructions are just to basically clear out the
| existing files and re-download to get rid of that pesky 2022
| year.
| axjmc wrote:
| Perhaps switch to unsigned int until a sane solution is
| implemented. Should give them a couple thousand years to work
| with.
| Fatnino wrote:
| No, it just kicks the can down the road another 22 years.
| axjmc wrote:
| At first glance thought they were using yyyy format, it's
| actually only yy. You are correct.
| ocdtrekkie wrote:
| It's pretty likely they'll change the data type somehow, but
| I guess the question is how fast they can test how that
| interacts with everywhere that might encounter that variable.
| Presumably the hack they implemented here buys them at least
| a month or two to test a real code change.
| MauranKilom wrote:
| Wow, what a bug.
|
| The malware scanning service of MS Exchange crashes, because it
| treats a yyMMddHHmm timestamp as a signed integer when verifying
| a signature file.
|
| Turns out that 2201010001 is negative when treated as a 32 bit
| integer (the greatest positive one is 2147483647, and 2021 had
| fewer than 47 months).
|
| I can only assume that somebody wrote that "timestamp string as
| integer" code, checked that it worked correctly (at the time) and
| then just assumed they must be good on data type range.
| [deleted]
| crehn wrote:
| Surprised this sort of hack would even pass code review.
| hn_throwaway_99 wrote:
| Really? Billions of lines of code is reviewed every year at
| Microsoft. Not hard for me to imagine that this was coerced
| to an int somewhere (perhaps even unintentionally) that was
| non-obvious during a code review.
| edoceo wrote:
| I wouldn't call one bug, in one software a "vengeance". Yea, it's
| widly used, and affected lots of mail but was very limited and
| had a trivial work-around.
|
| But, the Y2K issue, back then, was in 1000s of software from
| 1000s of vendors. The only Y2K affect I remember was the first
| issue of 2600 in 2000.
| Fatnino wrote:
| I remember the laser-tag place near Google (now long gone)
| would print out your scorecard with a date like 11/24/102
| throwawayboise wrote:
| Yeah I saw that sort of thing frequently on smaller websites
| back then as well.
| laumars wrote:
| It also wasn't just the tick over to the year 2000. It was
| various dates and times around the year 2000 (leap years et
| al). But the Jan 01 2000 problem was the biggest and most high
| profile.
| greenyoda wrote:
| This bug was extensively discussed yesterday:
|
| _Microsoft Exchange stops passing mail due to bug on 1 /1/22
| (677 points / 355 comments)_
|
| https://news.ycombinator.com/item?id=29756714
___________________________________________________________________
(page generated 2022-01-02 23:00 UTC) |