X-Git-Url: https://jfr.im/git/irc/evilnet/x3.git/blobdiff_plain/3d0b24ce4c7ef522cac7ad06ee5340e3e243c46c..5a1daaaba65bb61921c1274fd8672cb91bae4268:/src/opserv.c diff --git a/src/opserv.c b/src/opserv.c index 1fb15bd..6c8cd14 100644 --- a/src/opserv.c +++ b/src/opserv.c @@ -76,6 +76,7 @@ #define KEY_BLOCK_GLINE_DURATION "block_gline_duration" #define KEY_ISSUER "issuer" #define KEY_ISSUED "issued" +#define KEY_ADMIN_LEVEL "admin_level" #define IDENT_FORMAT "%s [%s@%s/%s]" #define IDENT_DATA(user) user->nick, user->ident, user->hostname, inet_ntoa(user->ip) @@ -304,6 +305,7 @@ static struct { unsigned long purge_lock_delay; unsigned long join_flood_moderate; unsigned long join_flood_moderate_threshold; + unsigned long admin_level; } opserv_conf; struct trusted_host { @@ -4149,6 +4151,10 @@ opserv_conf_read(void) } else { opserv_conf.staff_auth_channel = NULL; } + + str = database_get_data(conf_node, KEY_ADMIN_LEVEL, RECDB_QSTRING); + opserv_conf.admin_level = str ? strtoul(str, NULL, 0): 800; + str = database_get_data(conf_node, KEY_UNTRUSTED_MAX, RECDB_QSTRING); opserv_conf.untrusted_max = str ? strtoul(str, NULL, 0) : 5; str = database_get_data(conf_node, KEY_PURGE_LOCK_DELAY, RECDB_QSTRING); @@ -4187,6 +4193,13 @@ opserv_conf_read(void) dict_foreach(child, set_policer_param, pp); } +/* lame way to export opserv_conf value to nickserv.c ... */ +unsigned int +opserv_conf_admin_level() +{ + return(opserv_conf.admin_level); +} + static void opserv_db_init(void) { /* set up opserv_trusted_hosts dict */