From: Kurt Zeilenga Date: Fri, 17 Sep 1999 22:12:54 +0000 (+0000) Subject: Apply ITS#294 y2k fix X-Git-Tag: OPENLDAP_REL_ENG_1_2_8~32 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=257810afe4f104ec2fe641cd625f33b4fadb6057;p=thirdparty%2Fopenldap.git Apply ITS#294 y2k fix --- diff --git a/CHANGES b/CHANGES index 08b5e2853e..7b5f011815 100644 --- a/CHANGES +++ b/CHANGES @@ -3,6 +3,7 @@ OpenLDAP Change Log Changes included in OpenLDAP 1.2 Release Engineering CVS Tag: OPENLDAP_REL_ENG_1_2 Fixed slapd lint + Fixed -lldap templates y2k bug (ITS#294) Changes included in OpenLDAP 1.2.7 CVS Tag: OPENLDAP_REL_ENG_1_2_7 diff --git a/libraries/libldap/tmplout.c b/libraries/libldap/tmplout.c index f40c343c52..d80b377405 100644 --- a/libraries/libldap/tmplout.c +++ b/libraries/libldap/tmplout.c @@ -900,8 +900,17 @@ time2text( char *ldtimestr, int dateonly ) /* POSIX says tm_year should be year - 1900 */ t.tm_year = 100 * GET2BYTENUM( p ) - 1900; p += 2; + t.tm_year += GET2BYTENUM( p ); p += 2; + + } else { + /* came without a century */ + t.tm_year = GET2BYTENUM( p ); p += 2; + + /* Y2K hack - 2 digit years < 70 are 21st century */ + if( t.tm_year < 70 ) { + t.tm_year += 100; + } } - t.tm_year = GET2BYTENUM( p ); p += 2; t.tm_mon = GET2BYTENUM( p ) - 1; p += 2; t.tm_mday = GET2BYTENUM( p ); p += 2;