This handler is passed the application/octet-stream directly. The caller must propagate a->goodsig to its parent.
2662{
2663 int is_signed;
2664 int rc = 0;
2665
2667
2669 if (!fp_out)
2670 {
2673 {
2675 }
2676 return -1;
2677 }
2678
2680 if (tattach)
2681 {
2682 tattach->
goodsig = is_signed > 0;
2683
2685 {
2687 _(
"[-- The following data is PGP/MIME signed and encrypted --]\n\n") :
2688 _(
"[-- The following data is PGP/MIME encrypted --]\n\n"));
2690 }
2691
2692
2693
2694
2695
2699
2700 FILE *fp_save = state->
fp_in;
2701 state->
fp_in = fp_out;
2703 state->
fp_in = fp_save;
2704
2705
2706
2707
2709 {
2713 }
2714
2715
2716
2717
2720
2722 {
2725 _(
"[-- End of PGP/MIME signed and encrypted data --]\n") :
2726 _(
"[-- End of PGP/MIME encrypted data --]\n"));
2727 }
2728
2731 }
2732 else
2733 {
2734#ifdef USE_AUTOCRYPT
2736#endif
2737 {
2739 }
2740 rc = -1;
2741 }
2742
2745
2746 return rc;
2747}
SecurityFlags mutt_is_multipart_signed(struct Body *b)
Is a message signed?
static struct Body * decrypt_part(struct Body *a, struct State *state, FILE *fp_out, bool is_smime, int *r_is_signed)
Decrypt a PGP or SMIME message.
void mutt_body_free(struct Body **ptr)
Free a Body.
void mutt_env_free(struct Envelope **ptr)
Free an Envelope.
int mutt_file_fclose(FILE **fp)
Close a FILE handle (and NULL the pointer)
bool OptAutocryptGpgme
(pseudo) use Autocrypt context inside ncrypt/crypt_gpgme.c
int mutt_protected_headers_handler(struct Body *b, struct State *state)
Process a protected header - Implements handler_t -.
#define mutt_message(...)
#define mutt_debug(LEVEL,...)
int mutt_body_handler(struct Body *b, struct State *state)
Handler for the Body of an email.
@ LL_DEBUG2
Log at debug level 2.
void state_attach_puts(struct State *state, const char *t)
Write a string to the state.
#define state_puts(STATE, STR)
#define STATE_DISPLAY
Output is displayed to the user.
struct Body * parts
parts of a multipart or message/rfc822
struct Envelope * mime_headers
Memory hole protected headers.
struct Body * next
next attachment in the list
bool goodsig
Good cryptographic signature.
StateFlags flags
Flags, e.g. STATE_DISPLAY.
FILE * fp_in
File to read from.
#define mutt_file_mkstemp()