#include "mutt.h"
#include "crypt.h"
#include "crypt-mod.h"
-
-/*
- Generic
-*/
-
-extern struct crypt_module_specs crypt_mod_pgp_gpgme;
-extern struct crypt_module_specs crypt_mod_smime_gpgme;
+#include "crypt-gpgme.h"
+
+static struct crypt_module_specs crypt_mod_smime_gpgme = { APPLICATION_SMIME,
+ {
+ smime_gpgme_init,
+ smime_gpgme_decrypt_mime,
+ smime_gpgme_application_handler,
+ NULL, /* encrypted_handler */
+ smime_gpgme_findkeys,
+ smime_gpgme_sign_message,
+ smime_gpgme_verify_one,
+ smime_gpgme_send_menu,
+
+ NULL, /* pgp_encrypt_message */
+ NULL, /* pgp_make_key_attachment */
+ NULL, /* pgp_check_traditional */
+ NULL, /* pgp_traditional_encryptsign */
+ NULL, /* pgp_invoke_getkeys */
+ NULL, /* pgp_invoke_import */
+ NULL, /* pgp_extract_keys_from_attachment_list */
+
+ NULL, /* smime_getkeys */
+ smime_gpgme_verify_sender,
+ smime_gpgme_build_smime_entity,
+ NULL, /* smime_invoke_import */
+ }
+};
+
+static struct crypt_module_specs crypt_mod_pgp_gpgme = { APPLICATION_PGP,
+ {
+ pgp_gpgme_init,
+ pgp_gpgme_decrypt_mime,
+ pgp_gpgme_application_handler,
+ pgp_gpgme_encrypted_handler,
+ pgp_gpgme_findkeys,
+ pgp_gpgme_sign_message,
+ pgp_gpgme_verify_one,
+ pgp_gpgme_send_menu,
+
+ /* PGP specific. */
+ pgp_gpgme_encrypt_message,
+ NULL, /* pgp_make_key_attachment, */
+ pgp_gpgme_check_traditional,
+ NULL, /* pgp_traditional_encryptsign */
+ NULL, /* pgp_invoke_getkeys */
+ pgp_gpgme_invoke_import, /* pgp_invoke_import */
+ pgp_gpgme_from_attachment_list,
+ /* pgp_extract_keys_from_attachment_list */
+
+ NULL, /* smime_getkeys */
+ NULL, /* smime_verify_sender */
+ NULL, /* smime_build_smime_entity */
+ NULL, /* smime_invoke_import */
+ }
+};
void crypt_init (void)
{