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 /gpgmeplug | |
| 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 );      }    } | 
