#include <h/mh.h>
#include <h/crawl_folders.h>
#include <h/utils.h>
+#include "sbr/lock_file.h"
+#include "sbr/m_maildir.h"
#define NEW_SWITCHES \
X("mode", 1, MODESW) \
return total;
}
-/* Return TRUE if the sequence 'name' is in 'sequences'. */
-static boolean
+/* Return true if the sequence 'name' is in 'sequences'. */
+static bool
seq_in_list(char *name, char *sequences[])
{
int i;
for (i = 0; sequences[i] != NULL; i++) {
if (strcmp(name, sequences[i]) == 0) {
- return TRUE;
+ return true;
}
}
- return FALSE;
+ return false;
}
/* Return the string list of message numbers from the sequences file, or NULL
char *cp;
char *msgnums = NULL, *this_msgnums, *old_msgnums;
int failed_to_lock = 0;
- m_getfld_state_t gstate = 0;
+ m_getfld_state_t gstate;
/* copied from seq_read.c:seq_public */
/*
return NULL;
if ((fp = lkfopendata (seqfile, "r", & failed_to_lock)) == NULL) {
-
- if (failed_to_lock) {
+ if (failed_to_lock)
adios (seqfile, "failed to lock");
- } else {
- free(seqfile);
- return NULL;
- }
+ free(seqfile);
+ return NULL;
}
- /* Use m_getfld to scan sequence file */
+ /* Use m_getfld2 to scan sequence file */
+ gstate = m_getfld_state_init(fp);
for (;;) {
int fieldsz = sizeof field;
- switch (state = m_getfld (&gstate, name, field, &fieldsz, fp)) {
+ switch (state = m_getfld2(&gstate, name, field, &fieldsz)) {
case FLD:
case FLDPLUS:
if (state == FLDPLUS) {
cp = getcpy (field);
while (state == FLDPLUS) {
fieldsz = sizeof field;
- state = m_getfld (&gstate, name, field, &fieldsz, fp);
+ state = m_getfld2(&gstate, name, field, &fieldsz);
cp = add (field, cp);
}
case BODY:
adios (NULL, "no blank lines are permitted in %s", seqfile);
- /* FALLTHRU */
+ break;
case FILEEOF:
break;
}
}
-static boolean
+static bool
crawl_callback(char *folder, void *baton)
{
check_folder(folder, strlen(folder), baton);
- return TRUE;
+ return true;
}
/* Scan folders, returning: