Added execprog() and execprogl(), which are safer alternatives to system(3)
[mmh] / h / prototypes.h
index 9b76d07..1333a84 100644 (file)
@@ -40,6 +40,8 @@ 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 *);
@@ -126,3 +128,35 @@ int what_now(char *, int, char *, char *, int, struct msgs *,
 char *LocalName(void);  /* hostname */
 char *getusername(void);
 char *getfullname(void);
+
+
+/*
+** prototypes for message and sequence manipulation
+*/
+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 *);