X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=protos.h;h=8148476d3d6dd7ec21c39fb1825681aaf4b61a86;hp=112ea545190f80aed334ec1d842865a0e519535d;hb=197d39c13fb4cc5e316ecf5b2dcf981d7d71c512;hpb=364bf52ada05bf7d7158dba9d2391f63b71258f6 diff --git a/protos.h b/protos.h index 112ea54..8148476 100644 --- a/protos.h +++ b/protos.h @@ -19,6 +19,9 @@ #include "mbyte.h" +#include +#include + #define MoreArgs(p) (*p->dptr && *p->dptr != ';' && *p->dptr != '#') #define mutt_make_string(A,B,C,D,E) _mutt_make_string(A,B,C,D,E,0) @@ -28,60 +31,50 @@ void _mutt_make_string (char *, size_t, const char *, CONTEXT *, #define mutt_system(x) _mutt_system(x,0) int _mutt_system (const char *, int); -#define mutt_new_parameter() mem_calloc (1, sizeof (PARAMETER)) -#define mutt_new_header() mem_calloc (1, sizeof (HEADER)) -#define mutt_new_envelope() mem_calloc (1, sizeof (ENVELOPE)) -#define mutt_new_enter_state() mem_calloc (1, sizeof (ENTER_STATE)) +#define mutt_new_enter_state() p_new(ENTER_STATE, 1) typedef const char *format_t (char *, size_t, char, const char *, const char *, const char *, const char *, unsigned long, format_flag); -void mutt_FormatString (char *, size_t, const char *, format_t *, +void mutt_FormatString (char *, ssize_t, const char *, format_t *, unsigned long, format_flag); -void mutt_parse_content_type (char *, BODY *); void mutt_generate_boundary (PARAMETER **); void mutt_delete_parameter (const char *attribute, PARAMETER ** p); void mutt_set_parameter (const char *, const char *, PARAMETER **); - FILE *mutt_open_read (const char *, pid_t *); void set_quadoption (int, int); int query_quadoption (int, const char *); int quadoption (int); -ADDRESS *mutt_default_from (void); -ADDRESS *mutt_remove_duplicates (ADDRESS *); -ADDRESS *mutt_parse_adrlist (ADDRESS *, const char *); +int mutt_option_value (const char* val, char* dst, size_t dstlen); + +address_t *mutt_default_from (void); +address_t *mutt_remove_duplicates (address_t *); BODY *mutt_make_file_attach (const char *); BODY *mutt_make_message_attach (CONTEXT *, HEADER *, int); BODY *mutt_remove_multipart (BODY *); BODY *mutt_make_multipart (BODY *); -BODY *mutt_new_body (void); -BODY *mutt_parse_multipart (FILE *, const char *, long, int); -BODY *mutt_parse_messageRFC822 (FILE *, BODY *); -BODY *mutt_read_mime_header (FILE *, int); +BODY *mutt_new_body(void); CONTENT *mutt_get_content_info (const char *fname, BODY * b); LIST *mutt_make_references (ENVELOPE * e); -LIST *mutt_parse_references (char *, int); -ENVELOPE *mutt_read_rfc822_header (FILE *, HEADER *, short, short); HEADER *mutt_dup_header (HEADER *); int mutt_cmp_header (const HEADER*, const HEADER*); -int mutt_cmp_addr (const ADDRESS * a, const ADDRESS * b); +int mutt_cmp_addr (const address_t * a, const address_t * b); int mutt_cmp_list (const LIST * a, const LIST * b); int mutt_cmp_env (const ENVELOPE * e1, const ENVELOPE * e2); int mutt_cmp_param (const PARAMETER * p1, const PARAMETER * p2); int mutt_cmp_body (const BODY * b1, const BODY * b2); time_t mutt_decrease_mtime (const char *, struct stat *); -time_t mutt_local_tz (time_t); -time_t mutt_mktime (struct tm *, int); +void mutt_set_mtime (const char*, const char*); time_t mutt_parse_date (const char *, HEADER *); int is_from (const char *, char *, size_t, time_t *); @@ -90,12 +83,12 @@ char *mutt_iconv_hook (const char *); char *mutt_expand_path (char *, size_t); char *_mutt_expand_path (char *, size_t, int); char *mutt_find_hook (int, const char *); -char *mutt_gecos_name (char *, size_t, struct passwd *); +char *mutt_gecos_name (char *, ssize_t, struct passwd *); char *mutt_gen_msgid (void); char *mutt_get_body_charset (char *, size_t, BODY *); -const char *mutt_get_name (ADDRESS *); +const char *mutt_get_name (address_t *); char *mutt_get_parameter (const char *, PARAMETER *); -char *mutt_crypt_hook (ADDRESS *); +char *mutt_crypt_hook (address_t *); char *mutt_make_date (char *, size_t); const char *mutt_make_version (int full); @@ -109,7 +102,7 @@ void mutt_adv_mktemp (const char*, char*, size_t); void mutt_allow_interrupt (int); void mutt_block_signals (void); void mutt_block_signals_system (void); -int mutt_bounce_message (FILE * fp, HEADER *, ADDRESS *); +int mutt_bounce_message (FILE * fp, HEADER *, address_t *); void mutt_canonical_charset (char *, size_t, const char *); void mutt_check_rescore (CONTEXT *); void mutt_clear_error (void); @@ -127,23 +120,21 @@ void mutt_expand_fmt (char *, size_t, const char *, const char *); void mutt_expand_link (char *, const char *, const char *); void mutt_fix_reply_recipients (ENVELOPE * env); void mutt_folder_hook (char *); -void mutt_format_string (char *, size_t, int, int, int, char, const char *, - size_t, int); +void mutt_format_string (char *, ssize_t, int, int, int, char, const char *, + ssize_t, int); void mutt_format_s (char *, size_t, const char *, const char *); void mutt_format_s_tree (char *, size_t, const char *, const char *); void mutt_forward_intro (FILE * fp, HEADER * cur); void mutt_forward_trailer (FILE * fp); void mutt_free_body (BODY **); void mutt_free_color (int fg, int bg); -void mutt_free_envelope (ENVELOPE **); -void mutt_free_header (HEADER **); -void mutt_free_parameter (PARAMETER **); void mutt_generate_header (char *, size_t, HEADER *, int); void mutt_help (int); void mutt_draw_tree (CONTEXT *); void mutt_make_attribution (CONTEXT * ctx, HEADER * cur, FILE * out); void mutt_make_forward_subject (ENVELOPE * env, CONTEXT * ctx, HEADER * cur); void mutt_make_help (char *, size_t, char *, int, int); +char *mutt_compile_help(char *, size_t, int, struct mapping_t *); void mutt_make_misc_reply_headers (ENVELOPE * env, CONTEXT * ctx, HEADER * cur, ENVELOPE * curenv); void mutt_make_post_indent (CONTEXT * ctx, HEADER * cur, FILE * out); @@ -152,10 +143,8 @@ void mutt_message_to_7bit (BODY *, FILE *); #define mutt_mktemp(a) _mutt_mktemp (a, __FILE__, __LINE__) void _mutt_mktemp (char *, const char *, int); -void mutt_normalize_time (struct tm *); void mutt_paddstr (int, const char *); void mutt_parse_mime_message (CONTEXT * ctx, HEADER *); -void mutt_parse_part (FILE *, BODY *); #define mutt_perror(a) _mutt_perror (a, __FILE__, __LINE__) void _mutt_perror (const char*, const char*,int); void mutt_prepare_envelope (ENVELOPE *, int); @@ -164,11 +153,10 @@ void mutt_pretty_mailbox (char *); void mutt_pretty_size (char *, size_t, long); void mutt_pipe_message (HEADER *); void mutt_print_message (HEADER *); -void mutt_print_patchlist (void); void mutt_query_exit (void); void mutt_query_menu (char *, size_t); -void mutt_safe_path (char *s, size_t l, ADDRESS * a); -void mutt_save_path (char *s, size_t l, ADDRESS * a); +void mutt_safe_path (char *s, size_t l, address_t * a); +void mutt_save_path (char *s, size_t l, address_t * a); void mutt_score_message (CONTEXT *, HEADER *, int); void mutt_select_fcc (char *, size_t, HEADER *); @@ -190,19 +178,16 @@ void mutt_unblock_signals_system (int); void mutt_update_encoding (BODY * a); void mutt_version (void); void mutt_write_references (LIST *, FILE *); -void mutt_write_address_list (ADDRESS * adr, FILE * fp, int linelen, +void mutt_write_address_list (address_t * adr, FILE * fp, int linelen, int display); int mutt_addwch (wchar_t); int mutt_alloc_color (int fg, int bg); int mutt_any_key_to_continue (const char *); -int mutt_builtin_editor (const char *, HEADER *, HEADER *); int mutt_can_decode (BODY *); int mutt_change_flag (HEADER *, int); -int mutt_check_encoding (const char *); int mutt_check_key (const char *); int mutt_check_menu (const char *); -int mutt_check_mime_type (const char *); int mutt_check_month (const char *); int mutt_check_overwrite (const char *, const char *, char *, size_t, int *, char **); @@ -213,7 +198,7 @@ int mutt_complete (char *, size_t); int mutt_copy_body (FILE *, BODY **, BODY *); int mutt_display_message (HEADER * h); -int mutt_dump_variables (void); +int mutt_dump_variables (int full); int mutt_edit_message (CONTEXT *, HEADER *); int mutt_fetch_recips (ENVELOPE * out, ENVELOPE * in, int flags); int mutt_chscmp (const char *s, const char *chs); @@ -227,17 +212,17 @@ int mutt_resend_message (FILE *, CONTEXT *, HEADER *); int _mutt_enter_fname (const char *, char *, size_t, int *, int, int, char ***, int *); #define mutt_get_field(A,B,C,D) _mutt_get_field(A,B,C,D,0,NULL,NULL) -int _mutt_get_field (char *, char *, size_t, int, int, char ***, int *); +int _mutt_get_field (const char *, char *, size_t, int, int, char ***, int *); int mutt_get_field_unbuffered (char *, char *, size_t, int); int mutt_get_hook_type (const char *); int mutt_get_postponed (CONTEXT *, HEADER *, HEADER **, char *, size_t); int mutt_index_menu (void); -int mutt_invoke_mta (ADDRESS *, ADDRESS *, ADDRESS *, ADDRESS *, const char *, +int mutt_invoke_mta (address_t *, address_t *, address_t *, address_t *, const char *, int); -int mutt_is_mail_list (ADDRESS *); -int mutt_is_list_cc (int, ADDRESS *, ADDRESS *); -int mutt_is_list_recipient (int, ADDRESS *, ADDRESS *); -int mutt_is_subscribed_list (ADDRESS *); +int mutt_is_mail_list (address_t *); +int mutt_is_list_cc (int, address_t *, address_t *); +int mutt_is_list_recipient (int, address_t *, address_t *); +int mutt_is_subscribed_list (address_t *); int mutt_is_text_part (BODY *); int mutt_is_valid_mailbox (const char *); int mutt_lookup_mime_type (BODY *, const char *); @@ -255,9 +240,6 @@ int mutt_parse_mono (BUFFER *, BUFFER *, unsigned long, BUFFER *); int mutt_parse_unmono (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_rfc822_line (ENVELOPE * e, HEADER * hdr, char *line, char *p, - short user_hdrs, short weed, short do_2047, - LIST ** lastp); 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 *); @@ -298,19 +280,13 @@ int mutt_from_base64 (char *, const char *); /* utf8.c */ int mutt_wctoutf8 (char *s, unsigned int c); -#ifdef LOCALES_HACK -#define IsPrint(c) (isprint((unsigned char)(c)) || \ - ((unsigned char)(c) >= 0xa0)) -#define IsWPrint(wc) (iswprint(wc) || wc >= 0xa0) -#else #define IsPrint(c) (isprint((unsigned char)(c)) || \ (option (OPTLOCALES) ? 0 : \ ((unsigned char)(c) >= 0xa0))) #define IsWPrint(wc) (iswprint(wc) || \ (option (OPTLOCALES) ? 0 : (wc >= 0xa0))) -#endif -#define new_pattern() mem_calloc(1, sizeof (pattern_t)) +#define new_pattern() p_new(pattern_t, 1) int mutt_pattern_exec (struct pattern_t *pat, pattern_exec_flag flags, CONTEXT * ctx, HEADER * h); @@ -344,11 +320,6 @@ int getdnsdomainname (char *, size_t); #define SCO #endif -/* SCO Unix uses chsize() instead of ftruncate() */ -#ifndef HAVE_FTRUNCATE -#define ftruncate chsize -#endif - #ifndef HAVE_SNPRINTF extern int snprintf (char *, size_t, const char *, ...); #endif @@ -370,11 +341,11 @@ extern char *sys_errlist[]; #define memmove(d,s,n) bcopy((s),(d),(n)) #endif +#ifdef _AIX /* AIX doesn't define these in any headers (sigh) */ int strcasecmp (const char *, const char *); int strncasecmp (const char *, const char *, size_t); -#ifdef _AIX int setegid (gid_t); #endif /* _AIX */ @@ -384,7 +355,7 @@ extern int system (); extern int puts (); extern int fputs (); extern int fputc (); -extern int fseek (); +extern int fseeko (); extern char *strchr (); extern int getopt (); extern int fputs ();