}
msg->security = 0;
}
- msg->security = crypt_pgp_send_menu (msg, &menu->redraw);
+ msg->security = crypt_send_menu (msg, &menu->redraw, 0);
redraw_crypt_lines (msg);
mutt_message_hook (NULL, msg, M_SEND2HOOK);
break;
}
msg->security = 0;
}
- msg->security = crypt_smime_send_menu (msg, &menu->redraw);
+ msg->security = crypt_send_menu (msg, &menu->redraw, 1);
redraw_crypt_lines (msg);
mutt_message_hook (NULL, msg, M_SEND2HOOK);
break;
* Copyright (C) 2001 Thomas Roessler <roessler@guug.de>
* Oliver Ehli <elmy@acm.org>
* Copyright (C) 2002, 2003, 2004 g10 Code GmbH
- *
- * This file is part of mutt-ng, see http://www.muttng.org/.
- * It's licensed under the GNU General Public License,
- * please see the file GPL in the top level source directory.
+ */
+/*
+ * Copyright © 2006 Pierre Habouzit
*/
#include <lib-lib/lib-lib.h>
static struct crypt_cache *id_defaults = NULL;
static gpgme_key_t signature_key = NULL;
-/* Show a message that a backend will be invoked. */
-void crypt_invoke_message (int type)
-{
- if (type & APPLICATION_PGP) {
- mutt_message _("Invoking PGP...");
- }
- else if (type & APPLICATION_SMIME) {
- mutt_message _("Invoking S/MIME...");
- }
-}
-
/*
* General helper functions.
*/
return find_keys (to, cc, bcc, APPLICATION_SMIME);
}
-static int gpgme_send_menu (HEADER * msg, int *redraw, int is_smime)
+int crypt_send_menu (HEADER * msg, int *redraw, int is_smime)
{
crypt_key_t *p;
char input_signas[STRING];
choice =
mutt_multi_choice (_
("S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"),
- _("esabpfc"));
+ _("esabpc"));
else
choice =
mutt_multi_choice (_
("PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"),
- _("esabmfc"));
+ _("esabmc"));
switch (choice) {
case 1: /* (e)ncrypt */
break;
case 3: /* sign (a)s */
-/* unset_option(OPTCRYPTCHECKTRUST); */
if ((p = crypt_ask_for_key (_("Sign as: "), NULL, KEYFLAG_CANSIGN,
is_smime ? APPLICATION_SMIME :
APPLICATION_PGP, NULL))) {
break;
case 6: /* (c)lear */
- msg->security = 0;
- break;
+ return msg->security = 0;
}
- if (choice == 6 || choice == 7);
- else if (is_smime) {
+ if (is_smime) {
msg->security &= ~APPLICATION_PGP;
msg->security |= APPLICATION_SMIME;
- }
- else {
+ } else {
msg->security &= ~APPLICATION_SMIME;
msg->security |= APPLICATION_PGP;
}
- return (msg->security);
-}
-
-int crypt_pgp_send_menu(HEADER * msg, int *redraw)
-{
- return gpgme_send_menu(msg, redraw, 0);
-}
-
-int crypt_smime_send_menu(HEADER * msg, int *redraw)
-{
- return gpgme_send_menu (msg, redraw, 1);
+ return msg->security;
}
int crypt_smime_verify_sender (HEADER * h)
/*
* Copyright notice from original mutt:
* Copyright (C) 1996,1997 Michael R. Elkins <me@mutt.org>
- * Copyright (C) 1999-2000 Thomas Roessler <roessler@does-not-exist.org>
+ * Copyright (C) 1998-2000 Thomas Roessler <roessler@does-not-exist.org>
* Copyright (C) 2001 Thomas Roessler <roessler@does-not-exist.org>
* Oliver Ehli <elmy@acm.org>
* Copyright (C) 2003 Werner Koch <wk@gnupg.org>
- * Copyright (C) 2004 g10code GmbH
- *
- * This file is part of mutt-ng, see http://www.muttng.org/.
- * It's licensed under the GNU General Public License,
- * please see the file GPL in the top level source directory.
+ * Copyright (C) 2002, 2003, 2004 g10 Code GmbH
+ */
+/*
+ * Copyright © 2006 Pierre Habouzit
*/
#include <lib-lib/lib-lib.h>
#include "copy.h"
#include "crypt.h"
+void crypt_invoke_message (int type)
+{
+ if (type & APPLICATION_PGP) {
+ mutt_message _("Invoking PGP...");
+ }
+ else if (type & APPLICATION_SMIME) {
+ mutt_message _("Invoking S/MIME...");
+ }
+}
+
int mutt_protect (HEADER * msg, char *keylist)
{
BODY *pbody = NULL, *tmp_pbody = NULL;
void convert_to_7bit (BODY *);
+/*-- new API --*/
+
+void crypt_invoke_import(FILE *stream, int smime);
+int crypt_send_menu(HEADER *msg, int *redraw, int smime);
+
+
/*-- crypt.c --*/
/* Check out the type of encryption used and set the cached status
later. This is necessary for $fcc_attach. */
BODY *crypt_pgp_encrypt_message (BODY * a, char *keylist, int sign);
-void crypt_invoke_import(FILE *stream, int smime);
-
-int crypt_pgp_send_menu (HEADER * msg, int *redraw);
-
/* fixme: needs documentation */
int crypt_pgp_verify_one (BODY * sigbdy, STATE * s, const char *tempf);
/* fixme: needs documentation. */
BODY *crypt_smime_build_smime_entity (BODY * a, char *certlist);
-int crypt_smime_send_menu (HEADER * msg, int *redraw);
-
/* fixme: needs documentation */
int crypt_smime_verify_one (BODY * sigbdy, STATE * s, const char *tempf);