/*
* Copyright (C) 2003 Werner Koch <wk@gnupg.org>
+ * Copyright (C) 2004 g10code GmbH
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#define BADSIGN (1 << 3)
#define PARTSIGN (1 << 4)
#define SIGNOPAQUE (1 << 5)
-/* (1 << 6) is used by PGPKEY below. */
+#define KEYBLOCK (1 << 6) /* KEY too generic? */
+#define INLINE (1 << 7)
-#define APPLICATION_PGP (1 << 7)
-#define APPLICATION_SMIME (1 << 8)
+#define APPLICATION_PGP (1 << 8)
+#define APPLICATION_SMIME (1 << 9)
+
+#define PGP_TRADITIONAL_CHECKED (1 << 10)
#define PGPENCRYPT (APPLICATION_PGP | ENCRYPT)
#define PGPSIGN (APPLICATION_PGP | SIGN)
#define PGPGOODSIGN (APPLICATION_PGP | GOODSIGN)
-#define PGPKEY (APPLICATION_PGP | (1 << 6))
+#define PGPKEY (APPLICATION_PGP | KEYBLOCK)
+#define PGPINLINE (APPLICATION_PGP | INLINE)
#define SMIMEENCRYPT (APPLICATION_SMIME | ENCRYPT)
#define SMIMESIGN (APPLICATION_SMIME | SIGN)
effectively as a conditional compile directive. It is set to false
if no crypto backend is configures or to a bit vector denoting the
configured backends. */
-#if defined(CRYPT_BACKEND_CLASSIC_PGP) && defined(CRYPT_BACKEND_CLASSIC_SMIME)
+#if (defined(CRYPT_BACKEND_CLASSIC_PGP) && defined(CRYPT_BACKEND_CLASSIC_SMIME)) || defined (CRYPT_BACKEND_GPGME)
# define WithCrypto (APPLICATION_PGP | APPLICATION_SMIME)
#elif defined(CRYPT_BACKEND_CLASSIC_PGP)
# define WithCrypto APPLICATION_PGP
#elif defined(CRYPT_BACKEND_CLASSIC_SMIME)
# define WithCrypto APPLICATION_SMIME
-#elif defined(CRYPT_BACKEND_GPGME)
-# define WithCrypto (APPLICATION_PGP | APPLICATION_SMIME)
#else
# define WithCrypto 0
#endif
#define KEYFLAG_CANSIGN (1 << 0)
#define KEYFLAG_CANENCRYPT (1 << 1)
+#define KEYFLAG_ISX509 (1 << 2)
#define KEYFLAG_SECRET (1 << 7)
#define KEYFLAG_EXPIRED (1 << 8)
#define KEYFLAG_REVOKED (1 << 9)
/* Some prototypes -- old crypt.h. */
-int mutt_protect (HEADER *, HEADER *, char *);
+int mutt_protect (HEADER *, char *);
int mutt_is_multipart_encrypted (BODY *);
/* Silently forget about a passphrase. */
void crypt_pgp_void_passphrase (void);
+int crypt_pgp_valid_passphrase (void);
+
+
/* Decrypt a PGP/MIME message. */
int crypt_pgp_decrypt_mime (FILE *a, FILE **b, BODY *c, BODY **d);
/* Invoke the PGP command to import a key. */
void crypt_pgp_invoke_import (const char *fname);
+int crypt_pgp_send_menu (HEADER *msg, int *redraw);
+
/* fixme: needs documentation */
int crypt_pgp_verify_one (BODY *sigbdy, STATE *s, const char *tempf);
/* Silently forget about a passphrase. */
void crypt_smime_void_passphrase (void);
+int crypt_smime_valid_passphrase (void);
+
/* Decrypt an S/MIME message. */
int crypt_smime_decrypt_mime (FILE *a, FILE **b, BODY *c, BODY **d);
/* Add a certificate and update index file (externally). */
void crypt_smime_invoke_import (char *infile, char *mailbox);
+int crypt_smime_send_menu (HEADER *msg, int *redraw);
+
/* fixme: needs documentation */
int crypt_smime_verify_one (BODY *sigbdy, STATE *s, const char *tempf);
+void crypt_init (void);
#endif /*MUTT_CRYPT_H*/