aboutsummaryrefslogtreecommitdiffstats
path: root/conf.c
diff options
context:
space:
mode:
authorDennis Kaarsemaker <dennis@kaarsemaker.net>2016-02-22 21:25:39 +0100
committerDennis Kaarsemaker <dennis@kaarsemaker.net>2016-03-23 07:44:13 +0100
commit446a23ea39184c5fe43cd40706bb683b89534e2e (patch)
treec2a3933f4f962071174225c3bb86b3884927fd15 /conf.c
parente41ba05c0a9002b30e9e2475f56fd207e856a9f8 (diff)
Add a setting to disable 'account add'
In a locked down bitlbee instance it is useful to disable the 'account add' command.
Diffstat (limited to 'conf.c')
-rw-r--r--conf.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/conf.c b/conf.c
index b249a11b..6da77d59 100644
--- a/conf.c
+++ b/conf.c
@@ -56,6 +56,7 @@ conf_t *conf_load(int argc, char *argv[])
conf->authmode = AUTHMODE_OPEN;
conf->auth_pass = NULL;
conf->oper_pass = NULL;
+ conf->allow_account_add = 1;
conf->configdir = g_strdup(CONFIG);
conf->plugindir = g_strdup(PLUGINDIR);
conf->pidfile = g_strdup(PIDFILE);
@@ -245,6 +246,12 @@ static int conf_loadini(conf_t *conf, char *file)
} else if (g_strcasecmp(ini->key, "operpassword") == 0) {
g_free(conf->oper_pass);
conf->oper_pass = g_strdup(ini->value);
+ } else if (g_strcasecmp(ini->key, "allowaccountadd") == 0) {
+ if (!is_bool(ini->value)) {
+ fprintf(stderr, "Invalid %s value: %s\n", ini->key, ini->value);
+ return 0;
+ }
+ conf->allow_account_add = bool2int(ini->value);
} else if (g_strcasecmp(ini->key, "hostname") == 0) {
g_free(conf->hostname);
conf->hostname = g_strdup(ini->value);