Attach a reply.
920 bool mime_reply_any =
false;
924 struct Email *e_parent = NULL;
925 FILE *fp_parent = NULL;
926 struct Email *e_tmp = NULL;
928 struct Buffer *tmpbody = NULL;
947 fp_parent = parent->
fp;
960 "MIME-encapsulate the others?"));
964 mime_reply_any =
true;
966 else if (nattach == 1)
967 mime_reply_any =
true;
973 e_tmp->
env, actx, e_parent ? e_parent : (e_cur ? e_cur->
email : NULL), flags) == -1)
993 for (
short i = 0; i < actx->
idxlen; i++)
1005 memset(&st, 0,
sizeof(
struct State));
1040 for (
short i = 0; i < actx->
idxlen; i++)
1044 st.fp_in = actx->
idx[i]->
fp;
void mutt_make_attribution(struct Mailbox *m, struct Email *e, FILE *fp_out, struct ConfigSubset *sub)
Add "on DATE, PERSON wrote" header.
#define mutt_buffer_mktemp(buf)
An email to which things will be attached.
static bool check_all_msg(struct AttachCtx *actx, struct Body *cur, bool err)
Are all the Attachments RFC822 messages?
#define mutt_set_flag(m, e, flag, bf)
int msg_in_pager
Message currently shown in the pager.
The envelope/body of an email.
static void include_header(bool quote, FILE *fp_in, struct Email *e, FILE *fp_out, char *prefix)
Write an email header to a file, optionally quoting it.
static bool check_can_decode(struct AttachCtx *actx, struct Body *cur)
Can we decode all tagged attachments?
struct Buffer * mutt_buffer_pool_get(void)
Get a Buffer from the pool.
static void attach_include_reply(FILE *fp, FILE *fp_tmp, struct Email *e)
This is very similar to send.c's include_reply()
struct Body * body
List of MIME parts.
#define MUTT_CHARCONV
Do character set conversions.
int emaillist_add_email(struct EmailList *el, struct Email *e)
Add an Email to a list.
void mutt_buffer_pool_release(struct Buffer **pbuf)
Free a Buffer from the pool.
WHERE bool C_Header
Config: Include the message headers in the reply email (Weed applies)
void mutt_file_unlink(const char *s)
Delete a file, carefully.
FILE * fp_root
Used by recvattach for updating.
String manipulation buffer.
char * prefix
String to add to the beginning of each output line.
short idxlen
Number of attachmentes.
Container for Accounts, Notifications.
Messages that have been replied to.
QuadOption
Possible values for a quad-option.
StateFlags flags
Flags, e.g. MUTT_DISPLAY.
int mutt_file_fclose(FILE **fp)
Close a FILE handle (and NULL the pointer)
struct Envelope * env
Envelope information.
int mutt_body_copy(FILE *fp, struct Body **tgt, struct Body *src)
Create a send-mode duplicate from a receive-mode body.
bool tagged
This attachment is tagged.
User aborted the question (with Ctrl-G)
struct Envelope * mutt_env_new(void)
Create a new Envelope.
static struct AttachPtr * find_parent(struct AttachCtx *actx, struct Body *cur, short nattach)
Find the parent of an Attachment.
bool mutt_can_decode(struct Body *a)
Will decoding the attachment produce any output.
#define MUTT_WEED
Weed headers even when not in display mode.
FILE * fp
Used in the recvattach menu.
static short count_tagged(struct AttachCtx *actx)
Count the number of tagged attachments.
#define SEND_NEWS
Reply to a news article.
static struct Body ** copy_problematic_attachments(struct Body **last, struct AttachCtx *actx, bool force)
Attach the body parts which can't be decoded.
enum QuadOption query_quadoption(enum QuadOption opt, const char *prompt)
Ask the user a quad-question.
void emaillist_clear(struct EmailList *el)
Drop a private list of Emails.
size_t mutt_str_copy(char *dest, const char *src, size_t dsize)
Copy a string into a buffer (guaranteeing NUL-termination)
int mutt_send_message(SendFlags flags, struct Email *e_templ, const char *tempfile, struct Context *ctx, struct EmailList *el, struct ConfigSubset *sub)
Send an email.
bool C_Weed
Config: Filter headers when displaying/forwarding/printing/replying.
Keep track when processing files.
#define STAILQ_HEAD_INITIALIZER(head)
int mutt_body_handler(struct Body *b, struct State *s)
Handler for the Body of an email.
struct Email * email_new(void)
Create a new Email.
#define state_putc(STATE, STR)
struct ConfigSubset * sub
Inherited config items.
static int attach_reply_envelope_defaults(struct Envelope *env, struct AttachCtx *actx, struct Email *parent, SendFlags flags)
Create the envelope defaults for a reply.
WHERE bool OptNewsSend
(pseudo) used to change behavior when posting
unsigned char C_MimeForwardRest
Config: Forward all attachments, even if they can't be decoded.
FILE * mutt_file_fopen(const char *path, const char *mode)
Call fopen() safely.
void email_free(struct Email **ptr)
Free an Email.
struct Email * email
header information for message/rfc822
struct AttachPtr ** idx
Array of attachments.
void mutt_make_post_indent(struct Mailbox *m, struct Email *e, FILE *fp_out, struct ConfigSubset *sub)
Add suffix to replied email text.
#define mutt_make_string(BUF, BUFLEN, COLS, S, M, INPGR, E)
User answered 'Yes', or assume 'Yes'.
WHERE char * C_IndentString
Config: String used to indent 'reply' text.
WHERE bool C_TextFlowed
Config: Generate 'format=flowed' messages.
struct Body * body
Attachment.