HELPOPT("[--scan,--load] keep real atimes on directories") \
NOVAL(NODIRATIME) LONG(no_dir_atime) LONG(no_dir_atimes) \
HELPOPT("[--scan,--load] fake atimes on directories") \
+ NOVAL(NOEOF) LONG(no_eof) LONG(noeof) \
+ HELPOPT("[--web] do not close web server on EOF") \
NOVAL(MTIME) LONG(mtime) \
HELPOPT("[--scan] use mtime instead of atime") \
NOVAL(SHOWFILES) LONG(files) \
static const int opthasval[NOPTIONS] = {OPTIONS(ZERO,ONE,IGNORE,IGNORE)};
static const char shortopts[] = {OPTIONS(IGNORE,IGNORE,STRINGNOCOMMA,IGNORE)};
static const char *const longopts[] = {OPTIONS(IGNORE,IGNORE,IGNORE,STRING)};
-enum { OPTIONS(SHORTNEWOPT,SHORTNEWOPT,SHORTTHISOPT,IGNORE) };
-enum { OPTIONS(LONGNEWOPT,LONGNEWOPT,IGNORE,LONGTHISOPT) };
+enum { OPTIONS(SHORTNEWOPT,SHORTNEWOPT,SHORTTHISOPT,IGNORE) UNUSEDENUMVAL1 };
+enum { OPTIONS(LONGNEWOPT,LONGNEWOPT,IGNORE,LONGTHISOPT) UNUSEDENUMVAL2 };
static const int shortvals[] = {OPTIONS(IGNORE,IGNORE,SHORTOPTVAL,IGNORE)};
static const int longvals[] = {OPTIONS(IGNORE,IGNORE,IGNORE,LONGOPTVAL)};
int depth = -1, gotdepth = 0;
int fakediratimes = 1;
int mtime = 0;
+ int closeoneof = 1;
int showfiles = 0;
#ifdef DEBUG_MAD_OPTION_PARSING_MACROS
for (i = 0; licence[i]; i++)
fputs(licence[i], stdout);
-
- return 0;
}
return 0;
case OPT_SCAN:
case OPT_MTIME:
mtime = 1;
break;
+ case OPT_NOEOF:
+ closeoneof = 0;
+ break;
case OPT_DATAFILE:
filename = optval;
break;
prevbuf[0] = '\0';
tf = triewalk_next(tw, buf);
assert(tf);
+ prevtf = NULL; /* placate lint */
while (1) {
int i;
dcfg.address = httpserveraddr;
dcfg.port = httpserverport;
+ dcfg.closeoneof = closeoneof;
dcfg.basicauthdata = httpauthdata;
pcfg.format = NULL;
pcfg.rootpage = NULL;