diff options
author | Ken Raeburn <raeburn@mit.edu> | 2005-03-04 23:53:54 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@mit.edu> | 2005-03-04 23:53:54 +0000 |
commit | eea918a7732c97fdbf2b37461f50e3c53ba4f27d (patch) | |
tree | 87353773d1cdc652b8a413d182cba65a1e60072f /src/lib | |
parent | 39c4fe7e342e6da5599adcbe91d10d18afd3a863 (diff) | |
download | krb5-eea918a7732c97fdbf2b37461f50e3c53ba4f27d.tar.gz krb5-eea918a7732c97fdbf2b37461f50e3c53ba4f27d.tar.xz krb5-eea918a7732c97fdbf2b37461f50e3c53ba4f27d.zip |
* asn1_encode.c (asn1_encode_generaltime): If gmtime_r returns int instead of
pointer, do the appropriate error checking.
ticket: 2953
target_version: 1.4.1
tags: pullup
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17118 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/krb5/asn.1/ChangeLog | 5 | ||||
-rw-r--r-- | src/lib/krb5/asn.1/asn1_encode.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/krb5/asn.1/ChangeLog b/src/lib/krb5/asn.1/ChangeLog index 4baf064f2..9d9d2bbc2 100644 --- a/src/lib/krb5/asn.1/ChangeLog +++ b/src/lib/krb5/asn.1/ChangeLog @@ -1,3 +1,8 @@ +2005-03-04 Ken Raeburn <raeburn@mit.edu> + + * asn1_encode.c (asn1_encode_generaltime): If gmtime_r returns int + instead of pointer, do the appropriate error checking. + 2004-12-28 Ezra Peisach <epeisach@mit.edu> * asn1_decode.c (asn1_decode_generaltime): Fix memory leak when diff --git a/src/lib/krb5/asn.1/asn1_encode.c b/src/lib/krb5/asn.1/asn1_encode.c index 4f9e6949b..c5e3452b8 100644 --- a/src/lib/krb5/asn.1/asn1_encode.c +++ b/src/lib/krb5/asn.1/asn1_encode.c @@ -242,8 +242,13 @@ asn1_error_code asn1_encode_generaltime(asn1buf *buf, time_t val, * and some bogus implementations might overrun on the sprintf. */ #ifdef HAVE_GMTIME_R +# ifdef GMTIME_R_RETURNS_INT + if (gmtime_r(&gmt_time, >imebuf) != 0) + return ASN1_BAD_GMTIME; +# else if (gmtime_r(&gmt_time, >imebuf) == NULL) return ASN1_BAD_GMTIME; +# endif #else gtime = gmtime(&gmt_time); if (gtime == NULL) |