X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=protos.h;h=53b2b4f75aea5a29a2ec1ee5a4ae14bb831bc4ab;hp=ee558457f835dc686eaffc2b300f0adb2376b44c;hb=56025510c87ad388a257fcbd8b369b0edcf97c34;hpb=13ce824381b10ea5a66d6ec6177863e4a5e73639 diff --git a/protos.h b/protos.h index ee55845..53b2b4f 100644 --- a/protos.h +++ b/protos.h @@ -11,29 +11,26 @@ # include "config.h" #endif +#include + #if HAVE_STDINT_H #include #elif HAVE_INTTYPES_H #include #endif -#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) -void _mutt_make_string (char *, size_t, const char *, CONTEXT *, +void _mutt_make_string (char *, ssize_t, const char *, CONTEXT *, HEADER *, format_flag); -#define mutt_system(x) _mutt_system(x,0) -int _mutt_system (const char *, int); - #define mutt_new_enter_state() p_new(ENTER_STATE, 1) -typedef const char *format_t (char *, size_t, char, const char *, +typedef const char *format_t (char *, ssize_t, char, const char *, const char *, const char *, const char *, unsigned long, format_flag); @@ -49,7 +46,7 @@ void set_quadoption (int, int); int query_quadoption (int, const char *); int quadoption (int); -int mutt_option_value (const char* val, char* dst, size_t dstlen); +int mutt_option_value (const char* val, char* dst, ssize_t dstlen); address_t *mutt_default_from (void); address_t *mutt_remove_duplicates (address_t *); @@ -62,13 +59,13 @@ BODY *mutt_new_body(void); CONTENT *mutt_get_content_info (const char *fname, BODY * b); -LIST *mutt_make_references (ENVELOPE * e); +string_list_t *mutt_make_references (ENVELOPE * e); HEADER *mutt_dup_header (HEADER *); int mutt_cmp_header (const HEADER*, const HEADER*); 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_list (const string_list_t * a, const string_list_t * 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); @@ -76,20 +73,19 @@ int mutt_cmp_body (const BODY * b1, const BODY * b2); time_t mutt_decrease_mtime (const char *, struct stat *); 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 *); +int is_from (const char *, char *, ssize_t, time_t *); char *mutt_charset_hook (const char *); char *mutt_iconv_hook (const char *); -char *mutt_expand_path (char *, size_t); -char *_mutt_expand_path (char *, size_t, int); +char *mutt_expand_path (char *, ssize_t); +char *_mutt_expand_path (char *, ssize_t, int); char *mutt_find_hook (int, const char *); -char *mutt_gecos_name (char *, ssize_t, struct passwd *); char *mutt_gen_msgid (void); -char *mutt_get_body_charset (char *, size_t, BODY *); +char *mutt_get_body_charset (char *, ssize_t, BODY *); const char *mutt_get_name (address_t *); char *mutt_get_parameter (const char *, PARAMETER *); char *mutt_crypt_hook (address_t *); -char *mutt_make_date (char *, size_t); +char *mutt_make_date (char *, ssize_t); const char *mutt_make_version (int full); @@ -97,45 +93,41 @@ const char *mutt_fqdn (short); void mutt_account_hook (const char *url); void mutt_add_to_reference_headers (ENVELOPE * env, ENVELOPE * curenv, - LIST *** pp, LIST *** qq); -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); + 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_canonical_charset (char *, size_t, const char *); -int mutt_count_body_parts (HEADER *hdr, int flags); +void mutt_canonical_charset (char *, ssize_t, const char *); void mutt_check_rescore (CONTEXT *); void mutt_clear_error (void); -void mutt_default_save (char *, size_t, HEADER *); +void mutt_default_save (char *, ssize_t, HEADER *); void mutt_display_address (ENVELOPE *); void mutt_display_sanitize (char *); void mutt_edit_content_type (HEADER *, BODY *, FILE *); void mutt_edit_file (const char *, const char *); -void mutt_edit_headers (const char *, const char *, HEADER *, char *, size_t); +void mutt_edit_headers (const char *, const char *, HEADER *, char *, ssize_t); void mutt_curses_error (const char *, ...); void mutt_curses_message (const char *, ...); void mutt_enter_command (void); -void mutt_expand_file_fmt (char *, size_t, const char *, const char *); -void mutt_expand_fmt (char *, size_t, const char *, const char *); +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_expand_link (char *, const char *, const char *); void mutt_fix_reply_recipients (ENVELOPE * env); void mutt_folder_hook (char *); 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_format_s (char *, ssize_t, const char *, const char *); +void mutt_format_s_tree (char *, ssize_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_generate_header (char *, size_t, HEADER *, int); +void mutt_generate_header (char *, ssize_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_help (char *, ssize_t, char *, int, int); +char *mutt_compile_help(char *, ssize_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); @@ -151,18 +143,18 @@ void _mutt_perror (const char*, const char*,int); void mutt_prepare_envelope (ENVELOPE *, int); void mutt_unprepare_envelope (ENVELOPE *); void mutt_pretty_mailbox (char *); -void mutt_pretty_size (char *, size_t, long); +void mutt_pretty_size (char *, ssize_t, long); void mutt_pipe_message (HEADER *); void mutt_print_message (HEADER *); void mutt_query_exit (void); -void mutt_query_menu (char *, size_t); -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_query_menu (char *, ssize_t); +void mutt_safe_path (char *s, ssize_t l, address_t * a); +void mutt_save_path (char *s, ssize_t l, address_t * a); void mutt_score_message (CONTEXT *, HEADER *, int); -void mutt_select_fcc (char *, size_t, HEADER *); +void mutt_select_fcc (char *, ssize_t, HEADER *); #define mutt_select_file(A,B,C) _mutt_select_file(A,B,C,NULL,NULL) -void _mutt_select_file (char *, size_t, int, char ***, int *); +void _mutt_select_file (char *, ssize_t, int, char ***, int *); void mutt_message_hook (CONTEXT *, HEADER *, int); void _mutt_set_flag (CONTEXT *, HEADER *, int, int, int); @@ -170,15 +162,12 @@ void _mutt_set_flag (CONTEXT *, HEADER *, int, int, int); void mutt_set_followup_to (ENVELOPE *); void mutt_shell_escape (void); void mutt_show_error (void); -void mutt_signal_init (void); void mutt_stamp_attachment (BODY * a); void mutt_tabs_to_spaces (char *); void mutt_tag_set_flag (int, int); -void mutt_unblock_signals (void); -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_references (string_list_t *, FILE *); void mutt_write_address_list (address_t * adr, FILE * fp, int linelen, int display); @@ -190,12 +179,12 @@ int mutt_change_flag (HEADER *, int); int mutt_check_key (const char *); int mutt_check_menu (const char *); int mutt_check_month (const char *); -int mutt_check_overwrite (const char *, const char *, char *, size_t, int *, +int mutt_check_overwrite (const char *, const char *, char *, ssize_t, int *, char **); int mutt_check_traditional_pgp (HEADER *, int *); -int mutt_command_complete (char *, size_t, int, int); -int mutt_var_value_complete (char *, size_t, int); -int mutt_complete (char *, size_t); +int mutt_command_complete (char *, ssize_t, int, int); +int mutt_var_value_complete (char *, ssize_t, int); +int mutt_complete (char *, ssize_t); int mutt_copy_body (FILE *, BODY **, BODY *); int mutt_display_message (HEADER * h); @@ -210,13 +199,13 @@ int mutt_prepare_template (FILE *, CONTEXT *, HEADER *, HEADER *, short); int mutt_resend_message (FILE *, CONTEXT *, HEADER *); #define mutt_enter_fname(A,B,C,D,E) _mutt_enter_fname(A,B,C,D,E,0,NULL,NULL) -int _mutt_enter_fname (const char *, char *, size_t, int *, int, int, +int _mutt_enter_fname (const char *, char *, ssize_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 (const char *, char *, size_t, int, int, char ***, int *); -int mutt_get_field_unbuffered (char *, char *, size_t, int); +int _mutt_get_field (const char *, char *, ssize_t, int, int, char ***, int *); +int mutt_get_field_unbuffered (char *, char *, ssize_t, int); int mutt_get_hook_type (const char *); -int mutt_get_postponed (CONTEXT *, HEADER *, HEADER **, char *, size_t); +int mutt_get_postponed (CONTEXT *, HEADER *, HEADER **, char *, ssize_t); int mutt_index_menu (void); int mutt_invoke_mta (address_t *, address_t *, address_t *, address_t *, const char *, int); @@ -245,14 +234,14 @@ 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_complete (char *, size_t); -int mutt_query_variables (LIST * queries); +int mutt_query_complete (char *, ssize_t); +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 *); int mutt_search_command (int, int); int mutt_skipchars (const char *, const char *); int mutt_strwidth (const char *); -int mutt_compose_menu (HEADER *, char *, size_t, HEADER *); +int mutt_compose_menu (HEADER *, char *, ssize_t, HEADER *); int mutt_thread_set_flag (HEADER *, int, int, int); int mutt_user_is_recipient (HEADER *); void mutt_update_num_postponed (void); @@ -275,7 +264,7 @@ pid_t mutt_create_filter_fd (const char *, FILE **, FILE **, FILE **, int, int, int); /* base64.c */ -void mutt_to_base64 (unsigned char *, const unsigned char *, size_t, size_t); +void mutt_to_base64 (unsigned char *, const unsigned char *, ssize_t, ssize_t); int mutt_from_base64 (char *, const char *); /* utf8.c */ @@ -292,114 +281,9 @@ int mutt_wctoutf8 (char *s, unsigned int c); 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, size_t len, const char *simple); +void mutt_check_simple (char *s, ssize_t len, const char *simple); void mutt_pattern_free (pattern_t ** pat); -/* ---------------------------------------------------------------------------- - * Prototypes for broken systems - */ - -#ifdef HAVE_SRAND48 -#define LRAND lrand48 -#define SRAND srand48 -#define DRAND drand48 -#else -#define LRAND rand -#define SRAND srand -#define DRAND (double)rand -#endif /* HAVE_SRAND48 */ - -/* HP-UX, ConvexOS and UNIXware don't have this macro */ -#ifndef S_ISLNK -#define S_ISLNK(x) (((x) & S_IFMT) == S_IFLNK ? 1 : 0) -#endif - -int getdnsdomainname (char *, size_t); - -/* According to SCO support, this is how to detect SCO */ -#if defined (_M_UNIX) || defined (M_OS) -#define SCO -#endif - -#ifndef HAVE_SNPRINTF -extern int snprintf (char *, size_t, const char *, ...); -#endif - -#ifndef HAVE_VSNPRINTF -extern int vsnprintf (char *, size_t, const char *, va_list); -#endif - -#ifndef HAVE_STRERROR -#ifndef STDC_HEADERS -extern int sys_nerr; -extern char *sys_errlist[]; -#endif - -#define strerror(x) ((x) > 0 && (x) < sys_nerr) ? sys_errlist[(x)] : 0 -#endif /* !HAVE_STRERROR */ - -#ifndef HAVE_MEMMOVE -#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); - -int setegid (gid_t); -#endif /* _AIX */ - -#ifndef STDC_HEADERS -extern FILE *fdopen (); -extern int system (); -extern int puts (); -extern int fputs (); -extern int fputc (); -extern int fseeko (); -extern char *strchr (); -extern int getopt (); -extern int fputs (); -extern int fputc (); -extern int fclose (); -extern int fprintf (); -extern int printf (); -extern int fgetc (); -extern int tolower (); -extern int toupper (); -extern int sscanf (); -extern size_t fread (); -extern size_t fwrite (); -extern int system (); -extern int rename (); -extern time_t time (); -extern struct tm *localtime (); -extern char *asctime (); -extern char *strpbrk (); -extern int fflush (); -extern long lrand48 (); -extern void srand48 (); -extern time_t mktime (); -extern int vsprintf (); -extern int ungetc (); -extern char *mktemp (); -extern int ftruncate (); -extern void *memset (); -extern int pclose (); -extern int socket (); -extern int connect (); -extern size_t strftime (); -extern int lstat (); -extern void rewind (); -extern int readlink (); - -/* IRIX barfs on empty var decls because the system include file uses elipsis - in the declaration. So declare all the args to avoid compiler errors. This - should be harmless on other systems. */ -int ioctl (int, int, ...); - -#endif - /* unsorted */ void ci_bounce_message (HEADER *, int *); int ci_send_message (int, HEADER *, char *, CONTEXT *, HEADER *);