(*lineNum)++;
if (readStanza(&next, overrideList, nextO, lineNum)) return 1;
(*lineNum)--; /* it'll get incremented again at the end
of this while loop */
nextO++;
} else if (!strcmp(start, "}")) {
if (overrideList == override) {
parseError(*lineNum,"} may only occur inside of a "
"device directive");
return 1;
} else if (*rest) {
parseError(*lineNum, "unexpected information after }");
}
if (argc != 1) {
parseError(*lineNum, "retries directive expects a "
"single argument");
return 1;
}
num = strtol(argv[0], &chptr, 0);
if (*chptr) {
parseError(*lineNum, "retries requires a numeric argument");
return 1;
}
override->numRetries = num;
} else if (!strcmp(start, "domainsearch")) {
if (overrideList != override) {
parseError(*lineNum, "domainsearch directive may not occur "
"inside of device specification");
return 1;
}
poptParseArgvString(rest, &argc, &argv);
if (argc != 1) {
parseError(*lineNum, "domainsearch directive expects a "
"single argument");
return 1;
}
/*
We don't free this as other configurations may have inherited
it. This could be the wrong decision, but leak would be tiny
so why worry?
*/
override->searchPath = strdup(argv[0]);
free(argv);
} else if (!strcmp(start, "nodns")) {
if (*rest) {
parseError(*lineNum, "unexpected argument to nodns directive");
return 1;
}
override->flags |= OVERRIDE_FLAG_NODNS;
} else {
char * error;