aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-crypto.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2002-06-26 03:55:00 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2002-06-26 03:55:00 +0800
commit83f5888387c17fd95faf4c75117a5768ac7a4825 (patch)
tree0822cf6c1cf442d910c5cfb3476d62027b23d33c /mail/mail-crypto.c
parentc22378ec3d57a2d351d663819e2c3da97e81101f (diff)
downloadgsoc2013-evolution-83f5888387c17fd95faf4c75117a5768ac7a4825.tar
gsoc2013-evolution-83f5888387c17fd95faf4c75117a5768ac7a4825.tar.gz
gsoc2013-evolution-83f5888387c17fd95faf4c75117a5768ac7a4825.tar.bz2
gsoc2013-evolution-83f5888387c17fd95faf4c75117a5768ac7a4825.tar.lz
gsoc2013-evolution-83f5888387c17fd95faf4c75117a5768ac7a4825.tar.xz
gsoc2013-evolution-83f5888387c17fd95faf4c75117a5768ac7a4825.tar.zst
gsoc2013-evolution-83f5888387c17fd95faf4c75117a5768ac7a4825.zip
Some compiler warning fixes.
2002-06-25 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (mail_add_storage): Some compiler warning fixes. * mail-crypto.c (mail_crypto_pgp_mime_part_sign): Removed. (mail_crypto_get_pgp_cipher_context): New convenience function to construct a pgp cipher context. (mail_crypto_pgp_mime_part_verify): Use the new get_pgp_cipher_context function. (mail_crypto_pgp_mime_part_encrypt): Same. (mail_crypto_pgp_mime_part_decrypt): Here too. * mail-account-gui.c (mail_account_gui_new): Initialise the pgp_always_trust checkbox. (mail_account_gui_save): Get whether or not to always_trust the user's pgp keys. * mail-config.c (account_copy): Copy over the pgp_always_trust option. (config_read): Read in the always_trust option. (mail_config_write): Save the always_trust option. svn path=/trunk/; revision=17277
Diffstat (limited to 'mail/mail-crypto.c')
-rw-r--r--mail/mail-crypto.c67
1 files changed, 12 insertions, 55 deletions
diff --git a/mail/mail-crypto.c b/mail/mail-crypto.c
index fbd2f4bda5..70cc620684 100644
--- a/mail/mail-crypto.c
+++ b/mail/mail-crypto.c
@@ -33,24 +33,22 @@
/**
- * mail_crypto_pgp_mime_part_sign:
- * @mime_part: a MIME part that will be replaced by a pgp signed part
- * @userid: userid to sign with
- * @hash: one of CAMEL_CIPHER_HASH_MD5 or CAMEL_CIPHER_HASH_SHA1
- * @ex: exception which will be set if there are any errors.
+ * mail_crypto_get_pgp_cipher_context:
+ * @account: Account that will be using this context
*
- * Constructs a PGP/MIME multipart in compliance with rfc2015 and
- * replaces #part with the generated multipart/signed. On failure,
- * #ex will be set and #part will remain untouched.
+ * Constructs a new PGP (or GPG) cipher context with the appropriate
+ * options set based on the account provided.
**/
-void
-mail_crypto_pgp_mime_part_sign (CamelMimePart **mime_part, const char *userid, CamelCipherHash hash, CamelException *ex)
+CamelCipherContext *
+mail_crypto_get_pgp_cipher_context (const MailConfigAccount *account)
{
CamelCipherContext *cipher;
switch (mail_config_get_pgp_type ()) {
case CAMEL_PGP_TYPE_GPG:
cipher = camel_gpg_context_new (session, mail_config_get_pgp_path ());
+ if (account)
+ camel_gpg_context_set_always_trust ((CamelGpgContext *) cipher, account->pgp_always_trust);
break;
case CAMEL_PGP_TYPE_PGP5:
case CAMEL_PGP_TYPE_PGP6:
@@ -62,12 +60,7 @@ mail_crypto_pgp_mime_part_sign (CamelMimePart **mime_part, const char *userid, C
break;
}
- if (cipher) {
- camel_pgp_mime_part_sign (cipher, mime_part, userid, hash, ex);
- camel_object_unref (CAMEL_OBJECT (cipher));
- } else
- camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
- _("Could not create a PGP signature context."));
+ return cipher;
}
@@ -84,19 +77,7 @@ mail_crypto_pgp_mime_part_verify (CamelMimePart *mime_part, CamelException *ex)
CamelCipherValidity *valid = NULL;
CamelCipherContext *cipher;
- switch (mail_config_get_pgp_type ()) {
- case CAMEL_PGP_TYPE_GPG:
- cipher = camel_gpg_context_new (session, mail_config_get_pgp_path ());
- break;
- case CAMEL_PGP_TYPE_PGP5:
- case CAMEL_PGP_TYPE_PGP6:
- cipher = camel_pgp_context_new (session, mail_config_get_pgp_type (),
- mail_config_get_pgp_path ());
- break;
- default:
- cipher = NULL;
- break;
- }
+ cipher = mail_crypto_get_pgp_cipher_context (NULL);
if (cipher) {
valid = camel_pgp_mime_part_verify (cipher, mime_part, ex);
@@ -124,19 +105,7 @@ mail_crypto_pgp_mime_part_encrypt (CamelMimePart **mime_part, GPtrArray *recipie
{
CamelCipherContext *cipher;
- switch (mail_config_get_pgp_type ()) {
- case CAMEL_PGP_TYPE_GPG:
- cipher = camel_gpg_context_new (session, mail_config_get_pgp_path ());
- break;
- case CAMEL_PGP_TYPE_PGP5:
- case CAMEL_PGP_TYPE_PGP6:
- cipher = camel_pgp_context_new (session, mail_config_get_pgp_type (),
- mail_config_get_pgp_path ());
- break;
- default:
- cipher = NULL;
- break;
- }
+ cipher = mail_crypto_get_pgp_cipher_context (NULL);
if (cipher) {
camel_pgp_mime_part_encrypt (cipher, mime_part, recipients, ex);
@@ -160,19 +129,7 @@ mail_crypto_pgp_mime_part_decrypt (CamelMimePart *mime_part, CamelException *ex)
CamelCipherContext *cipher;
CamelMimePart *part = NULL;
- switch (mail_config_get_pgp_type ()) {
- case CAMEL_PGP_TYPE_GPG:
- cipher = camel_gpg_context_new (session, mail_config_get_pgp_path ());
- break;
- case CAMEL_PGP_TYPE_PGP5:
- case CAMEL_PGP_TYPE_PGP6:
- cipher = camel_pgp_context_new (session, mail_config_get_pgp_type (),
- mail_config_get_pgp_path ());
- break;
- default:
- cipher = NULL;
- break;
- }
+ cipher = mail_crypto_get_pgp_cipher_context (NULL);
if (cipher) {
part = camel_pgp_mime_part_decrypt (cipher, mime_part, ex);