/* Copyright (c) 2009-2018 Dovecot authors, see the included COPYING file */
#include "lib.h"
#include "buffer.h"
#include "settings-parser.h"
#include "service-settings.h"
#include "stats-settings.h"
/* <settings checks> */
{ "stats-reader", 0600, "", "" },
{ "stats-writer", 0660, "", "$default_internal_group" },
};
};
};
/* </settings checks> */
.name = "stats",
.protocol = "",
.type = "",
.executable = "stats",
.user = "$default_internal_user",
.group = "",
.privileged_group = "",
.extra_groups = "",
.chroot = "empty",
.process_min_avail = 0,
.process_limit = 1,
.client_limit = 0,
.service_count = 0,
.unix_listeners = { { &stats_unix_listeners_buf,
sizeof(stats_unix_listeners[0]) } },
};
};
.name = "",
.event_name = "",
.source_location = "",
.categories = "",
.fields = "",
};
.struct_size = sizeof(struct stats_metric_settings),
};
{ SET_DEFLIST_UNIQUE, name, \
};
};
.module_name = "stats",
.struct_size = sizeof(struct stats_settings),
};
/* <settings checks> */
const char **error_r)
{
const char *p;
*error_r = "Metric name can't be empty";
return FALSE;
}
*error_r = "source_location is missing ':'";
return FALSE;
}
set->parsed_source_linenum == 0) {
*error_r = "source_location has invalid line number after ':'";
return FALSE;
}
}
return TRUE;
}
/* </settings checks> */