type_stringlist_accum = { set_stringlist_accum, free_stringlistlist },
type_string_accum = { set_string_accum, free_stringlist },
type_sample_format = { set_sample_format, free_none },
+#if HAVE_PCRE_H
type_namepart = { set_namepart, free_namepartlist },
type_transform = { set_transform, free_transformlist },
+#endif
type_netaddress = { set_netaddress, free_netaddress },
type_rights = { set_rights, free_string };
for(n = 0; n < nvec; ++n)
if(vec[n][0] != '/') {
- disorder_error(errno, "%s:%d: %s: not an absolute path",
+ disorder_error(0, "%s:%d: %s: not an absolute path",
cs->path, cs->line, vec[n]);
return -1;
}
static int validate_non_negative(const struct config_state *cs,
int nvec, char **vec) {
long n;
+ char errbuf[1024];
if(nvec < 1) {
disorder_error(0, "%s:%d: missing argument", cs->path, cs->line);
return -1;
}
if(xstrtol(&n, vec[0], 0, 0)) {
- disorder_error(0, "%s:%d: %s", cs->path, cs->line, strerror(errno));
+ disorder_error(0, "%s:%d: %s", cs->path, cs->line,
+ format_error(ec_errno, errno, errbuf, sizeof errbuf));
return -1;
}
if(n < 0) {
static int validate_positive(const struct config_state *cs,
int nvec, char **vec) {
long n;
+ char errbuf[1024];
if(nvec < 1) {
disorder_error(0, "%s:%d: missing argument", cs->path, cs->line);
return -1;
}
if(xstrtol(&n, vec[0], 0, 0)) {
- disorder_error(0, "%s:%d: %s", cs->path, cs->line, strerror(errno));
+ disorder_error(0, "%s:%d: %s", cs->path, cs->line,
+ format_error(ec_errno, errno, errbuf, sizeof errbuf));
return -1;
}
if(n <= 0) {
va_list ap;
struct vector v[1];
char *s;
+ int rc;
vector_init(v);
vector_append(v, (char *)which);
vector_append(v, s);
va_end(ap);
vector_terminate(v);
- int rc = config_set(cs, v->nvec, v->vec);
+ rc = config_set(cs, v->nvec, v->vec);
xfree(v->vec);
return rc;
}
*/
int config_verify(void) {
int fails = 0;
- for(size_t n = 1; n < sizeof conf / sizeof *conf; ++n)
+ size_t n;
+ for(n = 1; n < sizeof conf / sizeof *conf; ++n)
if(strcmp(conf[n-1].name, conf[n].name) >= 0) {
fprintf(stderr, "%s >= %s\n", conf[n-1].name, conf[n].name);
++fails;