char *get_default_editor(void);
char *getfolder(int);
/*
- * Parse a lock type and return the type of lock it is
- */
-enum locktype init_locktype(const char *);
-/*
- * Lock open/close routines. The 3rd argument to lkopen/lfkopen is an
- * integer which indicates the type of lock. A "0" means a shared (read)
- * lock, and a "1" indicates an exclusive (write) lock.
+ * Lock open/close routines.
+ *
+ * The lk[f]opendata() functions are designed to open "data" files (anything
+ * not a mail spool file) using the locking mechanism configured for data
+ * files. The lk[f]openspool() functions are for opening the mail spool
+ * file, which will use the locking algorithm configured for the mail
+ * spool.
+ *
+ * Files opened for reading are locked with a read lock (if possible by
+ * the underlying lock mechanism), files opened for writing are locked
+ * using an exclusive lock.
*/
-int lkclose(int, char*);
-int lkfclose(FILE *, char *);
-FILE *lkfopen(char *, char *, int);
-int lkopen(char *, int, mode_t, int);
+int lkclosedata(int, const char *);
+int lkclosespool(int, const char *);
+int lkfclosedata(FILE *, const char *);
+int lkfclosespool(FILE *, const char *);
+FILE *lkfopendata(const char *, const char *);
+int lkopendata(const char *, int, mode_t);
+FILE *lkfopenspool(const char *, const char *);
+int lkopenspool(const char *, int, mode_t);
int m_atoi (char *);
char *m_backup (char *);
int m_convert (struct msgs *, char *);