Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(285)

Issue 372044: Disable an FTP test which contains a date with year 2079 due to year-2038 problem on Linux. (Closed)

Created:
11 years, 1 month ago by Paweł Hajdan Jr.
Modified:
9 years, 7 months ago
Reviewers:
wtc
CC:
chromium-reviews_googlegroups.com
Visibility:
Public.

Description

Disable an FTP test which contains a date with year 2079 due to year-2038 problem on Linux. The date wraps around then and gives nonsensical results (the field to store the timestamp is too short to store dates beyond year 2038). TBR=wtc TEST=none BUG=25520 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=31378

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+3 lines, -0 lines) Patch
M net/ftp/ftp_directory_listing_parsers_unittest.cc View 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
Paweł Hajdan Jr.
TBR I consider this only a temporary "solution". Do you have an idea how to ...
11 years, 1 month ago (2009-11-07 09:21:32 UTC) #1
wtc
11 years, 1 month ago (2009-11-07 15:33:59 UTC) #2
LGTM.

We have several options.

1. Disable the test for 32-bit Linux.

2. Use a different expected test result for 32-bit Linux.
Note that the timestamp doesn't wrap around.  Rather,
it "saturates" at INT_MAX, which is some time in year
2038.  Use that as the expected test result for 32-bit
Linux.

3. On Linux, call the PR_ParseTimeString from the
system NSPR library, which doesn't have the year
2038 issue.  NSS (which we use for SSL) requires
NSPR, so this won't add a new dependency on NSPR.

4. Replace our OS-specific implementations of the
PR_ImplodeTime function in src/base/third_party/nspr/prtime.cc
with the PR_ImplodeTime code from NSPR upstream:
http://mxr.mozilla.org/nspr/source/nsprpub/pr/src/misc/prtime.c#261
Although this is only necessary for Linux, I'd replace
all OS-specific implementations for simplicity, at the
cost of adding some code.

I recommend that we do 1 or 2 immediately, and
then do 4.  I'm open to doing 3 instead of 4,
or replacing only the Linux implementation of
PR_ImplodeTime.

Powered by Google App Engine
This is Rietveld 408576698