void advertise(char *, char *, char *, va_list);
void advise(char *, char *, ...);
void ambigsw(char *, struct swit *);
-int atooi(char *);
char **brkstring(char *, char *, char *);
-int check_charset(char *, int);
-void closefds(int);
+int is_native_charset(char *);
char *concat(char *, ...);
int context_del(char *);
char *context_find(char *);
-int context_foil(char *);
void context_read(void);
void context_replace(char *, char *);
void context_save(void);
-char **copyip(char **, char **, int);
void cpydata(int, int, char *, char *);
void cpydgst(int, int, char *, char *);
int decode_rfc2047(char *, char *, size_t);
void discard(FILE *);
int default_done(int);
+int execprog(char *, char **);
+int execprogl(char *, char *, ...);
char *expandfol(char *);
char *expanddir(char *);
int ext_hook(char *, char *, char *);
-int fdcompare(int, int);
int folder_addmsg(struct msgs **, char *, int, int, int, int, char *);
-int folder_delmsgs(struct msgs *, int, int);
+int folder_delmsgs(struct msgs *, int);
void folder_free(struct msgs *);
-int folder_pack(struct msgs **, int);
struct msgs *folder_read(char *);
struct msgs *folder_realloc(struct msgs *, int, int);
int gans(char *, struct swit *);
int m_putenv(char *, char *);
char *m_mktemp(const char *, int *, FILE **);
char *m_mktemp2(const char *, const char *, int *, FILE **);
-void m_unknown(FILE *);
+void thisisanmbox(FILE *);
int makedir(char *);
-char *nmh_getpass(const char *);
char *norm_charmap(char *);
-char *new_fs(char *, char *, char *);
-int peekc(FILE *ib);
+char *new_fs(char *, char *);
int pidwait(pid_t, int);
int pidstatus(int, FILE *, char *);
void print_help(char *, struct swit *, int);
char *pwd(void);
char *mhbasename(char *);
void readconfig(struct node **, FILE *, char *, int);
-int refile(char **, char *);
-void ruserpass(char *, char **, char **);
int seq_addmsg(struct msgs *, char *, int, int, int);
int seq_addsel(struct msgs *, char *, int, int);
char *seq_bits(struct msgs *);
int showfile(char **, char *);
int smatch(char *, struct swit *);
char *snprintb(char *, size_t, unsigned, char *);
-int isprefix(char *, char *);
int stringdex(char *, char *);
char *toabsdir(char *);
+char *trim(unsigned char *);
char *trimcpy(unsigned char *);
int unputenv(char *);
int uprf(char *, char *);
int vfgets(FILE *, char **);
char *write_charset_8bit(void);
-#ifdef RPATHS
-int get_returnpath(char *, int, char *, int);
-#endif
+int mh_strcasecmp(const char *s1, const char *s2);
+
/*
-** prototypes for compatibility functions in library
+** prototypes for some routines in uip
*/
-#ifndef HAVE_SNPRINTF_PROTOTYPE
-int snprintf(char *, size_t, const char *, ...);
-int vsnprintf(char *, size_t, const char *, va_list);
-#endif
-
-int mh_strcasecmp(const char *s1, const char *s2);
-int strncasecmp(const char *s1, const char *s2, size_t n);
-
+int distout(char *, char *, char *);
+int what_now(char *, int, char *, char *, int, struct msgs *,
+ char *, char *);
/*
-** some prototypes for address parsing system
-** (others are in addrsbr.h)
+** from the former mts.h
*/
-char *LocalName(void);
-char *SystemName(void);
-char *OfficialName(char *);
+char *LocalName(void); /* hostname */
+char *getusername(void);
+char *getfullname(void);
+
/*
-** prototypes for some routines in uip
+** prototypes for message and sequence manipulation
*/
-int annotate(char *, char *, char *, int, int, int, int);
-void annolist(char *, char *, char *, int);
-void annopreserve(int);
-int distout(char *, char *, char *);
-void replout(FILE *, char *, char *, struct msgs *, int, int,
- char *, char *, char *);
-int sendsbr(char **, int, char *, struct stat *, int, char *, int);
-int what_now(char *, int, int, char *, char *, int, struct msgs *,
- char *, int, char *);
+void clear_msg_flags(struct msgs *, int);
+void copy_msg_flags(struct msgs *, int, int);
+void get_msg_flags(struct msgs *, seqset_t *, int);
+void set_msg_flags(struct msgs *, seqset_t *, int);
+seqset_t does_exist(struct msgs *, int);
+void unset_exists(struct msgs *, int);
+void set_exists(struct msgs *, int);
+seqset_t is_selected(struct msgs *, int);
+void unset_selected(struct msgs *, int);
+void set_selected(struct msgs *, int);
+seqset_t is_unseen(struct msgs *, int);
+void unset_unseen(struct msgs *, int);
+void set_unseen(struct msgs *, int);
+seqset_t in_sequence(struct msgs *, int, int);
+void clear_sequence(struct msgs *, int, int);
+void add_sequence(struct msgs *, int, int);
+
+int is_seq_private(struct msgs *, int);
+void make_seq_public(struct msgs *, int);
+void make_seq_private(struct msgs *, int);
+void make_all_public(struct msgs *);
+
+void clear_folder_flags(struct msgs *);
+int is_readonly(struct msgs *);
+void set_readonly(struct msgs *);
+int other_files(struct msgs *);
+void set_other_files(struct msgs *);