* please see the file GPL in the top level source directory.
*/
-#define MoreArgs(p) (*p->dptr && *p->dptr != ';' && *p->dptr != '#')
-typedef const char *format_t (char *, ssize_t, char, const char *,
- const char *, const char *, const char *,
- unsigned long, format_flag);
+/* use the m_temp{fd,file} functions instead */
+void mutt_adv_mktemp (const char*, char*, ssize_t) __attribute__((deprecated));
+void mutt_mktemp (char *) __attribute__((deprecated));
-void mutt_FormatString (char *, ssize_t, const char *, format_t *,
- unsigned long, format_flag);
+#define MoreArgs(p) (*p->dptr && *p->dptr != ';' && *p->dptr != '#')
void set_quadoption (int, int);
int query_quadoption (int, const char *);
int mutt_cmp_header (const HEADER*, const HEADER*);
-time_t mutt_decrease_mtime (const char *, struct stat *);
int is_from (const char *, char *, ssize_t, time_t *);
const char *mutt_charset_hook (const char *);
const char *mutt_iconv_hook (const char *);
-char *mutt_expand_path (char *, ssize_t);
-char *_mutt_expand_path (char *, ssize_t, int);
+
+ssize_t _mutt_expand_path (char *, ssize_t, int);
+#define mutt_expand_path(s, n) _mutt_expand_path((s), (n), 0)
+
char *mutt_find_hook (int, const char *);
char *mutt_get_body_charset (char *, ssize_t, BODY *);
const char *mutt_get_name (address_t *);
void mutt_account_hook (const char *url);
void mutt_add_to_reference_headers (ENVELOPE * env, ENVELOPE * curenv,
string_list_t *** pp, string_list_t *** qq);
-void mutt_adv_mktemp (const char*, char*, ssize_t);
int mutt_bounce_message (FILE * fp, HEADER *, address_t *);
void mutt_check_rescore (CONTEXT *);
-void mutt_default_save (char *, ssize_t, HEADER *);
+void mutt_default_save (char *, ssize_t, const HEADER *);
void mutt_display_address (ENVELOPE *);
void mutt_edit_content_type (HEADER *, BODY *, FILE *);
void mutt_edit_headers (const char *, const char *, HEADER *, char *, ssize_t);
void mutt_enter_command (void);
-void mutt_expand_file_fmt (char *, ssize_t, const char *, const char *);
-void mutt_expand_fmt (char *, ssize_t, const char *, const char *);
void mutt_fix_reply_recipients (ENVELOPE * env);
void mutt_folder_hook (char *);
void mutt_forward_intro (FILE * fp, HEADER * cur);
void mutt_make_post_indent (CONTEXT * ctx, HEADER * cur, FILE * out);
void mutt_message_to_7bit (BODY *, FILE *);
-void mutt_mktemp (char *);
void mutt_prepare_envelope (ENVELOPE *, int);
void mutt_unprepare_envelope (ENVELOPE *);
void mutt_pretty_mailbox (char *);
-void mutt_pretty_size (char *, ssize_t, long);
void mutt_pipe_message (HEADER *);
void mutt_print_message (HEADER *);
void mutt_safe_path (char *s, ssize_t l, address_t * a);
int mutt_check_traditional_pgp (HEADER *, int *);
int mutt_command_complete (char *, ssize_t, int, int);
int mutt_var_value_complete (char *, ssize_t, int);
-int mutt_copy_body (FILE *, BODY **, BODY *);
int mutt_display_message (HEADER * h);
int mutt_dump_variables (int full);
int mutt_is_list_cc (int, address_t *, address_t *);
int mutt_is_list_recipient (int, address_t *, address_t *);
int mutt_lookup_mime_type (BODY *, const char *);
-int mutt_match_spam_list (const char *, SPAM_LIST *, char *, int);
int mutt_num_postponed (int);
int mutt_parse_bind (BUFFER *, BUFFER *, unsigned long, BUFFER *);
int mutt_parse_exec (BUFFER *, BUFFER *, unsigned long, BUFFER *);
int mutt_parse_hook (BUFFER *, BUFFER *, unsigned long, BUFFER *);
int mutt_parse_macro (BUFFER *, BUFFER *, unsigned long, BUFFER *);
int mutt_parse_push (BUFFER *, BUFFER *, unsigned long, BUFFER *);
-int mutt_parse_rc_line ( /* const */ char *, BUFFER *, BUFFER *);
+int mutt_parse_rc_line (const char *, BUFFER *, BUFFER *);
int mutt_parse_score (BUFFER *, BUFFER *, unsigned long, BUFFER *);
int mutt_parse_unscore (BUFFER *, BUFFER *, unsigned long, BUFFER *);
int mutt_parse_unhook (BUFFER *, BUFFER *, unsigned long, BUFFER *);
-int mutt_pattern_func (int, char *);
int mutt_query_variables (string_list_t * queries);
int _mutt_save_message (HEADER *, CONTEXT *, int, int, int);
int mutt_save_message (HEADER *, int, int, int, int *);
void mutt_to_base64 (unsigned char *, const unsigned char *, ssize_t, ssize_t);
int mutt_from_base64 (char *, const char *);
-#define new_pattern() p_new(pattern_t, 1)
-#define mutt_new_enter_state() p_new(ENTER_STATE, 1)
-
-int mutt_pattern_exec (struct pattern_t *pat, pattern_exec_flag flags,
- CONTEXT * ctx, HEADER * h);
-pattern_t *mutt_pattern_comp ( /* const */ char *s, int flags, BUFFER * err);
-void mutt_check_simple (char *s, ssize_t len, const char *simple);
-void mutt_pattern_free (pattern_t ** pat);
-
void ci_bounce_message (HEADER *, int *);
int ci_send_message (int, HEADER *, char *, CONTEXT *, HEADER *);
/* flags for mutt_extract_token() */
-#define M_TOKEN_EQUAL 1 /* treat '=' as a special */
-#define M_TOKEN_CONDENSE (1<<1) /* ^(char) to control chars (macros) */
-#define M_TOKEN_SPACE (1<<2) /* don't treat whitespace as a term */
-#define M_TOKEN_QUOTE (1<<3) /* don't interpret quotes */
-#define M_TOKEN_PATTERN (1<<4) /* !)|~ are terms (for patterns) */
-#define M_TOKEN_COMMENT (1<<5) /* don't reap comments */
-#define M_TOKEN_SEMICOLON (1<<6) /* don't treat ; as special */
+#define M_TOKEN_EQUAL (1 << 0) /* treat '=' as a special */
+#define M_TOKEN_CONDENSE (1 << 1) /* ^(char) to control chars (macros) */
+#define M_TOKEN_SPACE (1 << 2) /* don't treat whitespace as a term */
+#define M_TOKEN_PATTERN (1 << 3) /* !)|~ are terms (for patterns) */
+
+/* equivalent to M_TOKEN_PATTERN */
+#define M_TOKEN_COMMENT (1 << 4) /* don't reap comments */
+/* implies M_TOKEN_SPACE */
+#define M_TOKEN_QUOTE (1 << 5) /* don't interpret quotes */
int mutt_extract_token(BUFFER *, BUFFER *, int);