After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 787963 - year 2038 workaround is of by 1900
year 2038 workaround is of by 1900
Status: RESOLVED FIXED
Product: gcr
Classification: Core
Component: General
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GNOME keyring maintainer(s)
GNOME keyring maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2017-09-20 21:21 UTC by Alban Browaeys
Modified: 2019-02-22 11:59 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
fix 2038 workaround (1.50 KB, patch)
2017-09-20 21:21 UTC, Alban Browaeys
committed Details | Review

Description Alban Browaeys 2017-09-20 21:21:37 UTC
Created attachment 360159 [details] [review]
fix 2038 workaround

egg/egg-asn1x.c check tm_year of struct tm to be below 2038 instead of below (2038 - 1900), ie 138.
My system have certificates which expires after 2038.
** (gcr-viewer:10007): CRITICAL **: anode_read_time: assertion '*value >= 0' failed
or
** (seahorse:11189): CRITICAL **: anode_read_time: assertion '*value >= 0' failed

(seahorse:11189): Gcr-WARNING **: a derived class provided an invalid or unparseable X.509 DER certificate data.

This only affects linux 32 bits systems (where timegm returned time_t is 32 bits).
Here ARM a box.
Comment 1 Daiki Ueno 2018-03-09 13:50:28 UTC
Review of attachment 360159 [details] [review]:

This looks correct; thank you for the patch!