master-settings.c revision 40c99c96dd987adad8e61f4264f55eff63fec494
bcb4e51a409d94ae670de96afb8483a4f7855294Stephan Bosch/* Copyright (C) 2002 Timo Sirainen */
da985034a708db2f61394b30d117050ae6829ee5Timo Sirainen#define DEF_STR(name) DEF_STRUCT_STR(name, auth_settings)
6a19e109ee8c5a6f688da83a86a7f6abeb71abddTimo Sirainen#define DEF_INT(name) DEF_STRUCT_INT(name, auth_settings)
6a19e109ee8c5a6f688da83a86a7f6abeb71abddTimo Sirainen#define DEF_BOOL(name) DEF_STRUCT_BOOL(name, auth_settings)
da985034a708db2f61394b30d117050ae6829ee5Timo Sirainenstatic struct setting_def auth_setting_defs[] = {
{ 0, NULL, 0 }
{ 0, NULL, 0 }
{ 0, NULL, 0 }
{ 0, NULL, 0 }
{ 0, NULL, 0 }
{ 0, NULL, 0 }
#ifdef MMAP_CONFLICTS_WRITE
return TRUE;
return FALSE;
return TRUE;
return TRUE;
return FALSE;
return TRUE;
return FALSE;
return FALSE;
return TRUE;
struct auth_socket_settings *s;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return TRUE;
const char *name;
name);
return FALSE;
return TRUE;
char *str, *p;
if (p == NULL)
return str;
return TRUE;
return FALSE;
return FALSE;
return TRUE;
return TRUE;
return FALSE;
unsigned int prefix_len;
#ifdef HAVE_MODULES
static const char *args[] = {
unsigned int pos;
return TRUE;
if (uid != 0) {
return FALSE;
return FALSE;
alarm(0);
if (status != 0) {
status);
return FALSE;
pos = 0;
if (ret < 0) {
return FALSE;
return FALSE;
return TRUE;
const char *dir;
int facility;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
dir);
return FALSE;
return FALSE;
#ifdef HAVE_SSL
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
#ifdef HAVE_MODULES
return FALSE;
return FALSE;
return TRUE;
return FALSE;
return FALSE;
return FALSE;
#ifdef HAVE_MODULES
return FALSE;
return TRUE;
return FALSE;
if (nochecks)
return TRUE;
return FALSE;
int fd;
if (ret <= 0) {
if (ret == 0)
ret--;
ret = 0;
return ret;
static struct auth_settings *
return auth;
static struct auth_settings *
const char **errormsg)
return NULL;
return NULL;
static struct auth_passdb_settings *
return as;
static struct auth_userdb_settings *
return as;
static struct auth_socket_settings *
return as;
static struct auth_socket_settings *
const char **errormsg)
return NULL;
return NULL;
static struct namespace_settings *
return ns;
static struct namespace_settings *
const char **errormsg)
return NULL;
const char *error;
return NULL;
case SETTINGS_TYPE_ROOT:
case SETTINGS_TYPE_SERVER:
return NULL;
return error;
case SETTINGS_TYPE_AUTH:
case SETTINGS_TYPE_NAMESPACE:
case SETTINGS_TYPE_SOCKET:
case SETTINGS_TYPE_DICT:
return NULL;
case SETTINGS_TYPE_PLUGIN:
return NULL;
i_unreached();
static struct server_settings *
return server;
return TRUE;
return FALSE;
return TRUE;
return FALSE;
return FALSE;
return TRUE;
return FALSE;
return TRUE;
return TRUE;
return TRUE;
return TRUE;
return FALSE;
errormsg);
return FALSE;
return TRUE;
return FALSE;
return TRUE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
return FALSE;
nofixes))
return FALSE;
return FALSE;
return FALSE;
return FALSE;
if (!nochecks) {
return FALSE;
return FALSE;
return FALSE;
return TRUE;
const char **str;
t_push();
case SET_STR: {
const char *const *strp;
for (i = 0; i < count; i++) {
case SET_INT: {
for (i = 0; i < count; i++) {
case SET_BOOL: {
for (i = 0; i < count; i++) {
if (same) {
for (i = 0; i < indent; i++)
for (i = 0; i < indent; i++)
t_pop();
const void *empty_defaults;
sizeof(struct auth_userdb_settings) +
sizeof(struct auth_socket_settings));
const char *const *envs;
unsigned int i, count;
if (count == 0)
const char *const *dicts;
unsigned int i, count;
if (count == 0)
unsigned int count;
count++;
count++;
void master_settings_init(void)
void master_settings_deinit(void)