Load in new bans from bandb on startup.
This commit is contained in:
parent
d4c273075e
commit
80c9ac516e
2 changed files with 4 additions and 38 deletions
|
@ -671,7 +671,6 @@ main(int argc, char *argv[])
|
||||||
if (testing_conf)
|
if (testing_conf)
|
||||||
fprintf(stderr, "\nBeginning config test\n");
|
fprintf(stderr, "\nBeginning config test\n");
|
||||||
read_conf_files(YES); /* cold start init conf files */
|
read_conf_files(YES); /* cold start init conf files */
|
||||||
rehash_bans(0);
|
|
||||||
#ifndef STATIC_MODULES
|
#ifndef STATIC_MODULES
|
||||||
|
|
||||||
mod_add_path(MODULE_DIR);
|
mod_add_path(MODULE_DIR);
|
||||||
|
@ -681,6 +680,8 @@ main(int argc, char *argv[])
|
||||||
init_bandb();
|
init_bandb();
|
||||||
init_ssld();
|
init_ssld();
|
||||||
|
|
||||||
|
rehash_bans(0);
|
||||||
|
|
||||||
initialize_server_capabs(); /* Set up default_server_capabs */
|
initialize_server_capabs(); /* Set up default_server_capabs */
|
||||||
initialize_global_set_options();
|
initialize_global_set_options();
|
||||||
|
|
||||||
|
|
39
src/s_conf.c
39
src/s_conf.c
|
@ -49,6 +49,7 @@
|
||||||
#include "blacklist.h"
|
#include "blacklist.h"
|
||||||
#include "privilege.h"
|
#include "privilege.h"
|
||||||
#include "sslproc.h"
|
#include "sslproc.h"
|
||||||
|
#include "bandbi.h"
|
||||||
|
|
||||||
struct config_server_hide ConfigServerHide;
|
struct config_server_hide ConfigServerHide;
|
||||||
|
|
||||||
|
@ -654,43 +655,7 @@ static struct banconf_entry
|
||||||
void
|
void
|
||||||
rehash_bans(int sig)
|
rehash_bans(int sig)
|
||||||
{
|
{
|
||||||
FILE *file;
|
bandb_rehash_bans();
|
||||||
char buf[MAXPATHLEN];
|
|
||||||
int i;
|
|
||||||
|
|
||||||
if(sig != 0)
|
|
||||||
sendto_realops_snomask(SNO_GENERAL, L_ALL,
|
|
||||||
"Got signal SIGUSR2, reloading ban confs");
|
|
||||||
|
|
||||||
clear_out_address_conf_bans();
|
|
||||||
clear_s_newconf_bans();
|
|
||||||
|
|
||||||
for(i = 0; banconfs[i].filename; i++)
|
|
||||||
{
|
|
||||||
if(banconfs[i].perm)
|
|
||||||
snprintf(buf, sizeof(buf), "%s.perm", *banconfs[i].filename);
|
|
||||||
else
|
|
||||||
snprintf(buf, sizeof(buf), "%s", *banconfs[i].filename);
|
|
||||||
|
|
||||||
if((file = fopen(buf, "r")) == NULL)
|
|
||||||
{
|
|
||||||
if(banconfs[i].perm)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
ilog(L_MAIN, "Failed reading ban file %s",
|
|
||||||
*banconfs[i].filename);
|
|
||||||
sendto_realops_snomask(SNO_GENERAL, L_ALL,
|
|
||||||
"Can't open %s file bans could be missing!",
|
|
||||||
*banconfs[i].filename);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
(banconfs[i].func)(file);
|
|
||||||
fclose(file);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
check_banned_lines();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in a new issue