[gnutls-devel] time_t in 32-bit systems

Nikos Mavrogiannopoulos n.mavrogiannopoulos at gmail.com
Thu Dec 11 13:26:26 CET 2014

I recently broke binary compatibility of gnutls 3.4.0 in master, and I
was wondering whether there is something we can do to allow 32-bit
systems to create certificates past 2038. The issue as I understand is
twofold. As glibc on these systems offers a 32-bit time_t is prevents:
1. Using these systems after 2038
2. Using dates on these systems which refer to 2038 or later

The former cannot really be solved by gnutls, as it requires a
co-ordination between kernel and glibc, but the latter could be worked
around. We could offer a 64-bit gnutls_time_t, and then with some
reimplementation of gmtime() we could allow the generation and usage
of certificates which have expiration past-2038. The question is, does
it worth the time and the introduction and maintainance of a special
gnutls_time_t? Would it make better sense to simply wait for glibc or
any other libc people to fix that issue?


More information about the Gnutls-devel mailing list