aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarl-Heinz Zimmer <[email protected]>2002-09-29 21:14:16 +0000
committerKarl-Heinz Zimmer <[email protected]>2002-09-29 21:14:16 +0000
commitf9a1d517566f26af5448d2faafad4ae0a1ec1534 (patch)
treea1ffc9948eaf1686ea53f864dd6f1766399f7d25
parent2002-09-28 Marcus Brinkmann <[email protected]> (diff)
downloadgpgme-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.c28
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 );
}
}