0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-02 11:58:53 +01:00

Rework remote rehash messages to apply to all server notices during rehash.

Previously various notices such as those applying
to modules were not sent to the remote oper.
This commit is contained in:
Jilles Tjoelker 2009-03-07 01:27:05 +01:00
parent 464b7606a8
commit ad13bb7556
5 changed files with 14 additions and 15 deletions

View file

@ -54,8 +54,6 @@ struct ip_value
extern FILE *conf_fbfile_in; extern FILE *conf_fbfile_in;
extern char conf_line_in[256]; extern char conf_line_in[256];
extern struct Client *remote_rehash_oper_p;
struct ConfItem struct ConfItem
{ {
struct ConfItem *next; /* list node pointer */ struct ConfItem *next; /* list node pointer */

View file

@ -38,6 +38,8 @@ struct monitor;
/* The nasty global also used in s_serv.c for server bursts */ /* The nasty global also used in s_serv.c for server bursts */
extern unsigned long current_serial; extern unsigned long current_serial;
extern struct Client *remote_rehash_oper_p;
extern void send_pop_queue(struct Client *); extern void send_pop_queue(struct Client *);
extern void send_queued(struct Client *to); extern void send_queued(struct Client *to);

View file

@ -1790,8 +1790,6 @@ conf_report_error(const char *fmt, ...)
ierror("\"%s\", line %d: %s", current_file, lineno + 1, msg); ierror("\"%s\", line %d: %s", current_file, lineno + 1, msg);
sendto_realops_snomask(SNO_GENERAL, L_ALL, "\"%s\", line %d: %s", current_file, lineno + 1, msg); sendto_realops_snomask(SNO_GENERAL, L_ALL, "\"%s\", line %d: %s", current_file, lineno + 1, msg);
if (remote_rehash_oper_p)
sendto_one_notice(remote_rehash_oper_p, ":*** Notice -- \"%s\", line %d: %s", current_file, lineno + 1, msg);
} }
int int

View file

@ -76,7 +76,6 @@ static void reorganise_temp_kd(void *list);
FILE *conf_fbfile_in; FILE *conf_fbfile_in;
extern char yytext[]; extern char yytext[];
struct Client *remote_rehash_oper_p;
static int verify_access(struct Client *client_p, const char *username); static int verify_access(struct Client *client_p, const char *username);
static int attach_iline(struct Client *, struct ConfItem *); static int attach_iline(struct Client *, struct ConfItem *);
@ -683,10 +682,6 @@ rehash_bans(int sig)
sendto_realops_snomask(SNO_GENERAL, L_ALL, sendto_realops_snomask(SNO_GENERAL, L_ALL,
"Can't open %s file bans could be missing!", "Can't open %s file bans could be missing!",
*banconfs[i].filename); *banconfs[i].filename);
if (remote_rehash_oper_p)
sendto_one_notice(remote_rehash_oper_p,
":*** Notice -- Can't open %s file bans could be missing!",
*banconfs[i].filename);
} }
else else
{ {
@ -1160,9 +1155,6 @@ read_conf_files(int cold)
{ {
sendto_realops_snomask(SNO_GENERAL, L_ALL, sendto_realops_snomask(SNO_GENERAL, L_ALL,
"Can't open file '%s' - aborting rehash!", filename); "Can't open file '%s' - aborting rehash!", filename);
if (remote_rehash_oper_p)
sendto_one_notice(remote_rehash_oper_p,
":*** Notice -- Can't open file '%s' - aborting rehash!", filename);
return; return;
} }
} }
@ -1533,9 +1525,6 @@ yyerror(const char *msg)
sendto_realops_snomask(SNO_GENERAL, L_ALL, "\"%s\", line %d: %s at '%s'", sendto_realops_snomask(SNO_GENERAL, L_ALL, "\"%s\", line %d: %s at '%s'",
conffilebuf, lineno + 1, msg, newlinebuf); conffilebuf, lineno + 1, msg, newlinebuf);
if (remote_rehash_oper_p)
sendto_one_notice(remote_rehash_oper_p, ":*** Notice -- \"%s\", line %d: %s at '%s'",
conffilebuf, lineno + 1, msg, newlinebuf);
ilog(L_MAIN, "\"%s\", line %d: %s at '%s'", conffilebuf, lineno + 1, msg, newlinebuf); ilog(L_MAIN, "\"%s\", line %d: %s at '%s'", conffilebuf, lineno + 1, msg, newlinebuf);
} }

View file

@ -49,6 +49,8 @@ static void send_queued_write(rb_fde_t *F, void *data);
unsigned long current_serial = 0L; unsigned long current_serial = 0L;
struct Client *remote_rehash_oper_p;
/* send_linebuf() /* send_linebuf()
* *
* inputs - client to send to, linebuf to attach * inputs - client to send to, linebuf to attach
@ -969,6 +971,16 @@ sendto_realops_snomask(int flags, int level, const char *pattern, ...)
":%s ENCAP * SNOTE %c :%s", ":%s ENCAP * SNOTE %c :%s",
me.id, snobuf[1], buf); me.id, snobuf[1], buf);
} }
else if (remote_rehash_oper_p != NULL)
{
/* rather a lot of copying around, oh well -- jilles */
va_start(args, pattern);
rb_vsnprintf(buf, sizeof(buf), pattern, args);
va_end(args);
rb_linebuf_putmsg(&linebuf, pattern, NULL,
":%s NOTICE * :*** Notice -- %s", me.name, buf);
sendto_one_notice(remote_rehash_oper_p, ":*** Notice -- %s", buf);
}
else else
{ {
va_start(args, pattern); va_start(args, pattern);