return 0;
true_pass = cManager.uplink->their_password;
if (true_pass && strcmp(true_pass, argv[1])) {
- /* It might be good to mark the uplink as unavailable when
- this happens, though there should be a way of resetting
- the flag. */
- irc_squit(self, "Incorrect password received.", NULL);
- return 1;
+ /* It might be good to mark the uplink as unavailable when
+ this happens, though there should be a way of resetting
+ the flag. */
+ irc_squit(self, "Incorrect password received.", NULL);
+ return 1;
}
cManager.uplink->state = BURSTING;
static CMD_FUNC(cmd_error)
{
- if (argv[1]) log_module(MAIN_LOG, LOG_ERROR, "Error: %s", argv[1]);
+ if (argv[1]) log_module(MAIN_LOG, LOG_ERROR, "Error from ircd: %s", argv[1]);
log_module(MAIN_LOG, LOG_ERROR, "Error received from uplink, squitting.");
if (cManager.uplink->state != CONNECTED) {
- /* Error messages while connected should be fine. */
- cManager.uplink->flags |= UPLINK_UNAVAILABLE;
- log_module(MAIN_LOG, LOG_ERROR, "Disabling uplink.");
+ /* Error messages while connected should be fine. */
+ cManager.uplink->flags |= UPLINK_UNAVAILABLE;
+ log_module(MAIN_LOG, LOG_ERROR, "Disabling uplink.");
}
close_socket();
if ((mn = GetUserMode(cn, pd->user)))
mn->idle_since = now;
- if (cf->func && !pd->is_notice
- && (GetUserMode(cn, cf->service) && !IsDeaf(cf->service)))
- cf->func(pd->user, cn, pd->text+1, cf->service);
+ /* Never send a NOTICE to a channel to one of the services */
+ if (!pd->is_notice && cf->func
+ && ((cn->modes & MODE_REGISTERED) || GetUserMode(cn, cf->service)))
/* This catches *all* text sent to the channel that the services server sees */
for (x = 0; x < ALLCHANMSG_FUNCS_MAX; x++) {
reg_chanmsg_func(unsigned char prefix, struct userNode *service, chanmsg_func_t handler)
{
if (chanmsg_funcs[prefix].func)
- log_module(MAIN_LOG, LOG_WARNING, "Re-registering new chanmsg handler for character `%c'.", prefix);
+ log_module(MAIN_LOG, LOG_WARNING, "Re-registering new chanmsg handler for character `%c'.", prefix);
chanmsg_funcs[prefix].func = handler;
chanmsg_funcs[prefix].service = service;
}
reg_mode_change_func(mode_change_func_t handler)
{
if (mcf_used == mcf_size) {
- if (mcf_size) {
- mcf_size <<= 1;
- mcf_list = realloc(mcf_list, mcf_size*sizeof(mode_change_func_t));
- } else {
- mcf_size = 8;
- mcf_list = malloc(mcf_size*sizeof(mode_change_func_t));
- }
+ if (mcf_size) {
+ mcf_size <<= 1;
+ mcf_list = realloc(mcf_list, mcf_size*sizeof(mode_change_func_t));
+ } else {
+ mcf_size = 8;
+ mcf_list = malloc(mcf_size*sizeof(mode_change_func_t));
+ }
}
mcf_list[mcf_used++] = handler;
}