diff options
Diffstat (limited to 'mail/em-format-html.c')
-rw-r--r-- | mail/em-format-html.c | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/mail/em-format-html.c b/mail/em-format-html.c index 5e9b2626a9..7f06969297 100644 --- a/mail/em-format-html.c +++ b/mail/em-format-html.c @@ -48,7 +48,6 @@ #include <camel/camel-mime-filter.h> #include <camel/camel-mime-filter-tohtml.h> #include <camel/camel-mime-filter-enriched.h> -#include <camel/camel-mime-filter-pgp.h> #include <camel/camel-mime-filter-basic.h> #include <camel/camel-gpg-context.h> #include <camel/camel-cipher-context.h> @@ -660,117 +659,6 @@ efh_format_secure(EMFormat *emf, CamelStream *stream, CamelMimePart *part, Camel camel_stream_printf(stream, "</td></tr></table>"); } } - -static void -efh_inlinepgp_signed(EMFormatHTML *efh, CamelStream *stream, CamelMimePart *ipart, EMFormatHandler *info) -{ - - CamelCipherContext *cipher; - CamelCipherValidity *valid; - CamelException *ex; - CamelMimePart *opart=NULL; - CamelContentType *type; - CamelStreamFilter *filtered_stream; - CamelStream *ostream; - CamelDataWrapper *dw; - CamelMimeFilterPgp *pgp_filter; - - /* Check we're passed valid input */ - type = camel_mime_part_get_content_type(ipart); - if (!camel_content_type_is(type, "application", "x-inlinepgp-signed")) { - em_format_format_error((EMFormat *)efh, stream, - "Invalid mime type passed to inline PGP format"); - return; - } - - ex = camel_exception_new(); - cipher = camel_gpg_context_new (((EMFormat *)efh)->session); - /* Verify the signature of the message */ - valid = camel_cipher_verify(cipher, ipart, ex); - if (!valid) { - /* Display an error */ - em_format_format_error((EMFormat *)efh, stream, ex->desc ? ex->desc : - _("Unknown error verifying signed messaage")); - camel_exception_free(ex); - camel_object_unref(cipher); - return; - } - - /* Setup output stream */ - ostream = camel_stream_mem_new(); - filtered_stream = camel_stream_filter_new_with_stream(ostream); - - /* Add PGP header / footer filter */ - pgp_filter = (CamelMimeFilterPgp *)camel_mime_filter_pgp_new(); - camel_stream_filter_add(filtered_stream, (CamelMimeFilter *)pgp_filter); - camel_object_unref(pgp_filter); - - /* Pass through the filters that have been setup */ - dw = camel_medium_get_content_object((CamelMedium *)ipart); - camel_data_wrapper_decode_to_stream(dw, (CamelStream *)filtered_stream); - camel_stream_flush((CamelStream *)filtered_stream); - camel_object_unref(filtered_stream); - - /* Extract new part and display it as text/plain */ - dw = camel_data_wrapper_new(); - camel_data_wrapper_construct_from_stream(dw, ostream); - camel_data_wrapper_set_mime_type(dw, "text/plain"); - opart = camel_mime_part_new(); - camel_medium_set_content_object((CamelMedium *)opart, dw); - camel_mime_part_set_content_type(opart, "text/plain"); - - /* Pass it off to the real formatter */ - em_format_format_secure((EMFormat *)efh, stream, opart, valid); - - /* Clean Up */ - camel_object_unref(dw); - camel_object_unref(opart); - camel_object_unref(ostream); - camel_object_unref(cipher); - camel_exception_free(ex); -} - -static void -efh_inlinepgp_encrypted(EMFormatHTML *efh, CamelStream *stream, CamelMimePart *ipart, EMFormatHandler *info) -{ - CamelCipherContext *cipher; - CamelCipherValidity *valid; - CamelException *ex; - CamelMimePart *opart; - CamelContentType *type; - - /* Check we're passed valid input */ - type = camel_mime_part_get_content_type(ipart); - if (!camel_content_type_is(type, "application", "x-inlinepgp-encrypted")) { - em_format_format_error((EMFormat *)efh, stream, - "Invalid mime type passed to inline PGP format encrypted"); - return; - } - - cipher = camel_gpg_context_new (((EMFormat *)efh)->session); - ex = camel_exception_new(); - opart = camel_mime_part_new(); - /* Decrypt the message */ - valid = camel_cipher_decrypt (cipher, ipart, opart, ex); - if (!valid) { - /* Display an error */ - em_format_format_error((EMFormat *)efh, stream, ex->desc ? ex->desc : - _("Unknown error decrypting messaage")); - camel_exception_free(ex); - camel_object_unref(cipher); - camel_object_unref(opart); - return; - } - - /* Pass it off to the real formatter */ - em_format_format_secure((EMFormat *)efh, stream, opart, valid); - - /* Clean Up */ - camel_object_unref(opart); - camel_object_unref (cipher); - camel_exception_free (ex); -} - static void efh_text_plain(EMFormatHTML *efh, CamelStream *stream, CamelMimePart *part, EMFormatHandler *info) @@ -1227,8 +1115,6 @@ static EMFormatHandler type_builtin_table[] = { { "message/external-body", (EMFormatFunc)efh_message_external }, { "message/delivery-status", (EMFormatFunc)efh_message_deliverystatus }, { "multipart/related", (EMFormatFunc)efh_multipart_related }, - { "application/x-inlinepgp-signed", (EMFormatFunc)efh_inlinepgp_signed }, - { "application/x-inlinepgp-encrypted", (EMFormatFunc)efh_inlinepgp_encrypted }, /* This is where one adds those busted, non-registered types, that some idiot mailer writers out there decide to pull out |