diff options
author | Karl-Heinz Zimmer <[email protected]> | 2002-09-29 21:14:16 +0000 |
---|---|---|
committer | Karl-Heinz Zimmer <[email protected]> | 2002-09-29 21:14:16 +0000 |
commit | f9a1d517566f26af5448d2faafad4ae0a1ec1534 (patch) | |
tree | a1ffc9948eaf1686ea53f864dd6f1766399f7d25 | |
parent | 2002-09-28 Marcus Brinkmann <[email protected]> (diff) | |
download | gpgme-f9a1d517566f26af5448d2faafad4ae0a1ec1534.tar.gz gpgme-f9a1d517566f26af5448d2faafad4ae0a1ec1534.zip |
Applying Ingo's patch: Makes signatureCertificateDaysLeftToExpiry() and receiverCertificateDaysLeftToExpiry() handle the case that a certificate _never_ expires correctly.
Diffstat (limited to '')
-rw-r--r-- | gpgmeplug/gpgmeplug.c | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/gpgmeplug/gpgmeplug.c b/gpgmeplug/gpgmeplug.c index 6e17c554..03d3dbe5 100644 --- a/gpgmeplug/gpgmeplug.c +++ b/gpgmeplug/gpgmeplug.c @@ -557,13 +557,15 @@ int signatureCertificateDaysLeftToExpiry( const char* certificate ) if ( GPGME_No_Error == err ) { time_t expire_time = gpgme_key_get_ulong_attr( rKey, GPGME_ATTR_EXPIRE, NULL, 0 ); - time_t cur_time = time (NULL); - if( cur_time > expire_time ) { - daysLeft = days_from_seconds(cur_time - expire_time); - daysLeft *= -1; + if ( 0 != expire_time ) { + time_t cur_time = time (NULL); + if( cur_time > expire_time ) { + daysLeft = days_from_seconds(cur_time - expire_time); + daysLeft *= -1; + } + else + daysLeft = days_from_seconds(expire_time - cur_time); } - else - daysLeft = days_from_seconds(expire_time - cur_time); gpgme_key_release( rKey ); } } @@ -847,13 +849,15 @@ int receiverCertificateDaysLeftToExpiry( const char* certificate ) if ( GPGME_No_Error == err ) { time_t expire_time = gpgme_key_get_ulong_attr( rKey,GPGME_ATTR_EXPIRE, NULL, 0 ); - time_t cur_time = time (NULL); - if( cur_time > expire_time ) { - daysLeft = days_from_seconds(cur_time - expire_time); - daysLeft *= -1; + if ( 0 != expire_time ) { + time_t cur_time = time (NULL); + if( cur_time > expire_time ) { + daysLeft = days_from_seconds(cur_time - expire_time); + daysLeft *= -1; + } + else + daysLeft = days_from_seconds(expire_time - cur_time); } - else - daysLeft = days_from_seconds(expire_time - cur_time); gpgme_key_release( rKey ); } } |