MASTER_SERVICE_FLAG_STD_CLIENT;
} else {
service_flags |= MASTER_SERVICE_FLAG_KEEP_CONFIG_OPEN;
- storage_service_flags |=
- MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT;
}
master_service = master_service_init("imap-urlauth-worker", service_flags,
} else {
service_flags |= MASTER_SERVICE_FLAG_KEEP_CONFIG_OPEN;
storage_service_flags |=
- MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT |
MAIL_STORAGE_SERVICE_FLAG_NO_NAMESPACES;
/*
MASTER_SERVICE_FLAG_SEND_STATS |
MASTER_SERVICE_FLAG_KEEP_CONFIG_OPEN;
enum mail_storage_service_flags storage_service_flags =
- MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT |
MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP |
MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP |
MAIL_STORAGE_SERVICE_FLAG_NO_IDLE_TIMEOUT;
service_input.service = "lda";
service_input.username = user;
- service_flags |= MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT |
- MAIL_STORAGE_SERVICE_FLAG_USE_SYSEXITS;
+ service_flags |= MAIL_STORAGE_SERVICE_FLAG_USE_SYSEXITS;
storage_service = mail_storage_service_init(master_service, set_roots,
service_flags);
mail_deliver_hooks_init();
const char *error;
size_t len;
bool allow_root =
- (user->flags & MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT) == 0;
+ (user->flags & MAIL_STORAGE_SERVICE_FLAG_ALLOW_ROOT) != 0;
bool temp_priv_drop =
(user->flags & MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP) != 0;
bool use_chroot;
struct mail_storage_service_user;
enum mail_storage_service_flags {
- /* Fail if we don't drop root privileges */
- MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT = 0x01,
+ /* Allow not dropping root privileges */
+ MAIL_STORAGE_SERVICE_FLAG_ALLOW_ROOT = 0x01,
/* Lookup user from userdb */
MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP = 0x02,
/* Force mail_debug=yes */
MASTER_SERVICE_FLAG_SEND_STATS |
MASTER_SERVICE_FLAG_USE_SSL_SETTINGS;
enum mail_storage_service_flags storage_service_flags =
- MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT |
MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP |
MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP |
MAIL_STORAGE_SERVICE_FLAG_NO_LOG_INIT |
clients = connection_list_init(&client_set, &client_vfuncs);
storage_service = mail_storage_service_init(master_service, set_roots,
+ MAIL_STORAGE_SERVICE_FLAG_ALLOW_ROOT |
MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP |
MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP |
MAIL_STORAGE_SERVICE_FLAG_ENABLE_CORE_DUMPS |
MASTER_SERVICE_FLAG_STD_CLIENT;
} else {
service_flags |= MASTER_SERVICE_FLAG_KEEP_CONFIG_OPEN;
- storage_service_flags |=
- MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT;
}
/*
MASTER_SERVICE_FLAG_STD_CLIENT;
} else {
service_flags |= MASTER_SERVICE_FLAG_KEEP_CONFIG_OPEN;
- storage_service_flags |=
- MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT;
}
master_service = master_service_init("submission", service_flags,
static void client_connected(struct master_service_connection *conn)
{
enum mail_storage_service_flags flags =
+ MAIL_STORAGE_SERVICE_FLAG_ALLOW_ROOT |
MAIL_STORAGE_SERVICE_FLAG_NO_PLUGINS;
string_t *instr, *keys;
const char *const *args, *key, *value, *error, *version_line, *data_line;