From 06cc124c5c644916fe5dc46af31a4bec96a740a9 Mon Sep 17 00:00:00 2001 From: Matthias Kalle Dalheimer Date: Thu, 7 Mar 2002 21:18:27 +0000 Subject: [PATCH] Support for various warnings about expiring encryption certificates. Support for checking encryption certificate paths. Needs GPGME support. --- gpgmeplug/cryptplug.h | 15 +++++++++++++++ gpgmeplug/gpgmeplug.c | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) diff --git a/gpgmeplug/cryptplug.h b/gpgmeplug/cryptplug.h index 1b1aead..ba346de 100644 --- a/gpgmeplug/cryptplug.h +++ b/gpgmeplug/cryptplug.h @@ -769,6 +769,14 @@ void setReceiverCertificateExpiryNearWarning( bool ); certificate of the receiver expires in the near future. */ bool receiverCertificateExpiryNearWarning( void ); + + +/*! \ingroup groupConfigCrypt + \brief Returns the number of days until the specified receiver + certificate expires. +*/ +int receiverCertificateDaysLeftToExpiry( const char* certificate ); + /*! \ingroup groupConfigCrypt @@ -810,6 +818,13 @@ void setCertificateInChainExpiryNearWarningInterval( int ); */ int certificateInChainExpiryNearWarningInterval( void ); + +/*! \ingroup groupConfigCrypt + \brief Returns the number of days until the first certificate in + the chain of the receiver certificate expires. +*/ +int certificateInChainDaysLeftToExpiry( const char* certificate ); + /*! \ingroup groupConfigCrypt \brief Specifies whether a warning is emitted if the email address diff --git a/gpgmeplug/gpgmeplug.c b/gpgmeplug/gpgmeplug.c index 8fb11ae..a923d41 100644 --- a/gpgmeplug/gpgmeplug.c +++ b/gpgmeplug/gpgmeplug.c @@ -632,6 +632,17 @@ bool receiverCertificateExpiryNearWarning() return config.receiverCertificateExpiryNearWarning; } + +int receiverCertificateDaysLeftToExpiry( const char* certificate ) +{ + /* PENDING(g10) + Please return the number of days that are left until the + certificate specified in the parameter certificate expires. + */ + return 10; // dummy that triggers a warning in the MUA +} + + void setReceiverCertificateExpiryNearWarningInterval( int interval ) { config.receiverCertificateExpiryNearWarningInterval = interval; @@ -652,6 +663,18 @@ bool certificateInChainExpiryNearWarning() return config.certificateInChainExpiryNearWarning; } + +int certificateInChainDaysLeftToExpiry( const char* certificate ) +{ + /* PENDING(g10) + Please return the number of days that are left until the + the first certificate in the chain of the specified certificate + expires. + */ + return 10; // dummy that triggers a warning in the MUA +} + + void setCertificateInChainExpiryNearWarningInterval( int interval ) { config.certificateInChainExpiryNearWarningInterval = interval; @@ -1169,6 +1192,19 @@ bool encryptMessage( const char* cleartext, } } + // PENDING(g10) Implement this + // Possible values: RSA = 1, SHA1 = 2, TripleDES = 3 + //gpgme_set_encryption_algorithm( ctx, config.encryptionAlgorithm ); + + + // PENDING(g10) Implement this + // gpgme_set_encryption_check_certificate_path( + // config.checkCertificatePath ) + + // PENDING(g10) Implement this + // gpgme_set_encryption_check_certificate_path_to_root( + // config.checkEncryptionCertificatePathToRoot ) + err = gpgme_op_encrypt (ctx, rset, gPlaintext, gCiphertext ); if( err ) -- 2.26.2