summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bahamut.c14
-rw-r--r--src/dreamforge.c14
-rw-r--r--src/hostserv.c22
-rw-r--r--src/hybrid.c13
-rw-r--r--src/operserv.c11
-rw-r--r--src/ptlink.c12
-rw-r--r--src/rageircd.c13
-rw-r--r--src/servers.c14
-rw-r--r--src/ultimate2.c14
-rw-r--r--src/ultimate3.c13
-rw-r--r--src/unreal31.c14
-rw-r--r--src/unreal32.c14
-rw-r--r--src/viagra.c14
13 files changed, 152 insertions, 30 deletions
diff --git a/src/bahamut.c b/src/bahamut.c
index 5cc3bbab5..3e3be3844 100644
--- a/src/bahamut.c
+++ b/src/bahamut.c
@@ -813,7 +813,7 @@ void anope_cmd_svsmode(User * u, int ac, char **av)
*/
void anope_cmd_squit(char *servname, char *message)
{
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
/* PONG */
@@ -1590,5 +1590,17 @@ int anope_flood_mode_check(char *value)
}
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
+
#endif
diff --git a/src/dreamforge.c b/src/dreamforge.c
index e755c9781..b8be2ca7b 100644
--- a/src/dreamforge.c
+++ b/src/dreamforge.c
@@ -601,7 +601,7 @@ void anope_cmd_svsmode(User * u, int ac, char **av)
void anope_cmd_squit(char *servname, char *message)
{
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
void anope_pong(char *servname)
@@ -1341,4 +1341,16 @@ void anope_cmd_eob()
/* Not supported */
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
+
#endif
diff --git a/src/hostserv.c b/src/hostserv.c
index 7ab7d8884..3a660fd0d 100644
--- a/src/hostserv.c
+++ b/src/hostserv.c
@@ -384,9 +384,8 @@ int listOut(User * u)
&& (display_counter < NSListMax)) {
display_counter++;
tm = localtime(&current->time);
- strftime(buf, sizeof(buf),
- getstring(NULL,
- STRFTIME_DATE_TIME_FORMAT), tm);
+ strftime_lang(buf, sizeof(buf), u,
+ STRFTIME_DATE_TIME_FORMAT, tm);
if (current->vIdent) {
notice_lang(s_HostServ, u, HOST_IDENT_ENTRY,
counter, current->nick,
@@ -408,9 +407,8 @@ int listOut(User * u)
&& (display_counter < NSListMax)) {
display_counter++;
tm = localtime(&current->time);
- strftime(buf, sizeof(buf),
- getstring(NULL, STRFTIME_DATE_TIME_FORMAT),
- tm);
+ strftime_lang(buf, sizeof(buf), u,
+ STRFTIME_DATE_TIME_FORMAT, tm);
if (current->vIdent) {
notice_lang(s_HostServ, u, HOST_IDENT_ENTRY,
counter, current->nick,
@@ -707,6 +705,10 @@ int do_setall(User * u)
tmp_time = time(NULL);
if ((na = findnick(nick))) {
+ if (na->status & NS_VERBOTEN) {
+ notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick);
+ return MOD_CONT;
+ }
alog("vHost for all nicks in group \002%s\002 set to \002%s\002 by oper \002%s\002", nick, hostmask, u->nick);
do_hs_sync(na->nc, vIdent, hostmask, u->nick, tmp_time);
if (vIdent) {
@@ -734,6 +736,14 @@ int do_delall(User * u)
return MOD_CONT;
}
if ((na = findnick(nick))) {
+ if (na->status & NS_VERBOTEN) {
+ notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick);
+ return MOD_CONT;
+ }
+ if (na->status & NS_VERBOTEN) {
+ notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick);
+ return MOD_CONT;
+ }
nc = na->nc;
for (i = 0; i < nc->aliases.count; i++) {
na = nc->aliases.list[i];
diff --git a/src/hybrid.c b/src/hybrid.c
index 7b99f785a..30966700f 100644
--- a/src/hybrid.c
+++ b/src/hybrid.c
@@ -1299,7 +1299,7 @@ void anope_cmd_squit(char *servname, char *message)
return;
}
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
int anope_event_mode(char *source, int ac, char **av)
@@ -1465,6 +1465,17 @@ int anope_event_error(char *source, int ac, char **av)
return MOD_CONT;
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
#endif
diff --git a/src/operserv.c b/src/operserv.c
index da91d4ea4..76ebf671a 100644
--- a/src/operserv.c
+++ b/src/operserv.c
@@ -2962,7 +2962,7 @@ int check_sqline(char *nick, int nick_change)
{
int i;
SXLine *sx;
- char *reason = NULL;
+ char reason[300];
if (sqlines.count == 0)
return 0;
@@ -2980,7 +2980,6 @@ int check_sqline(char *nick, int nick_change)
if (match_wild_nocase(sx->mask, nick)) {
sqline(sx->mask, sx->reason);
/* We kill nick since s_sqline can't */
- reason = smalloc(strlen(sx->reason) + 10);
snprintf(reason, sizeof(reason), "Q-Lined: %s", sx->reason);
kill_user(s_OperServ, nick, reason);
free(reason);
@@ -4531,7 +4530,6 @@ static int do_jupe(User * u)
{
char *jserver = strtok(NULL, " ");
char *reason = strtok(NULL, "");
- char rbuf[256];
if (!jserver) {
syntax_error(s_OperServ, u, "JUPE", OPER_JUPE_SYNTAX);
@@ -4539,12 +4537,7 @@ static int do_jupe(User * u)
if (!isValidHost(jserver, 3)) {
notice_lang(s_OperServ, u, OPER_JUPE_HOST_ERROR);
} else {
- snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", u->nick,
- reason ? ": " : "", reason ? reason : "");
-
- anope_cmd_squit(jserver, rbuf);
- anope_cmd_server(jserver, 1, rbuf);
- new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+ anope_cmd_jupe(jserver, u->nick, reason);
if (WallOSJupe)
anope_cmd_global(s_OperServ, "\2%s\2 used JUPE on \2%s\2",
diff --git a/src/ptlink.c b/src/ptlink.c
index 7195abd39..ddb7a9d11 100644
--- a/src/ptlink.c
+++ b/src/ptlink.c
@@ -1646,4 +1646,16 @@ void anope_cmd_eob()
/* not supported */
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 1, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
+
#endif
diff --git a/src/rageircd.c b/src/rageircd.c
index 2d31e9cf1..6f1b03366 100644
--- a/src/rageircd.c
+++ b/src/rageircd.c
@@ -687,7 +687,7 @@ void anope_cmd_svsmode(User * u, int ac, char **av)
void anope_cmd_squit(char *servname, char *message)
{
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
/* PONG */
@@ -1582,5 +1582,16 @@ void anope_cmd_eob()
send_cmd(NULL, "BURST 0");
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
#endif
diff --git a/src/servers.c b/src/servers.c
index a3b8bf0d0..c32aadac0 100644
--- a/src/servers.c
+++ b/src/servers.c
@@ -116,12 +116,14 @@ static void delete_server(Server * serv, const char *quitreason)
NickAlias *na;
if (!serv) {
- alog("delete_server() called with NULL arg!");
+ if (debug) {
+ alog("debug: delete_server() called with NULL arg!");
+ }
return;
}
if (debug)
- alog("delete_server() called for %s", serv->name);
+ alog("debug: delete_server() called for %s", serv->name);
if (ircdcap->noquit) {
if (uplink_capab & ircdcap->noquit) {
@@ -146,7 +148,7 @@ static void delete_server(Server * serv, const char *quitreason)
u = unext;
}
if (debug >= 2)
- alog("delete_server() cleared all users");
+ alog("debug: delete_server() cleared all users");
}
}
@@ -158,7 +160,7 @@ static void delete_server(Server * serv, const char *quitreason)
}
if (debug >= 2)
- alog("delete_server() cleared all servers");
+ alog("debug: delete_server() cleared all servers");
free(serv->name);
free(serv->desc);
@@ -170,7 +172,7 @@ static void delete_server(Server * serv, const char *quitreason)
serv->uplink->links = serv->next;
if (debug)
- alog("delete_server() completed");
+ alog("debug: delete_server() completed");
}
/*************************************************************************/
@@ -266,7 +268,7 @@ void do_squit(const char *source, int ac, char **av)
if ((s->uplink == me_server)
&& (uplink_capab & ircdcap->unconnect)) {
if (debug)
- alog("debuf: Sending UNCONNECT SQUIT for %s", s->name);
+ alog("debug: Sending UNCONNECT SQUIT for %s", s->name);
/* need to fix */
anope_cmd_squit(s->name, buf);
}
diff --git a/src/ultimate2.c b/src/ultimate2.c
index ca288ead6..31f6cf220 100644
--- a/src/ultimate2.c
+++ b/src/ultimate2.c
@@ -1150,7 +1150,7 @@ void anope_cmd_squit(char *servname, char *message)
return;
}
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
/* SVSO */
@@ -1687,4 +1687,16 @@ int anope_event_error(char *source, int ac, char **av)
return MOD_CONT;
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
+
#endif
diff --git a/src/ultimate3.c b/src/ultimate3.c
index bfe22d41f..d0f88d048 100644
--- a/src/ultimate3.c
+++ b/src/ultimate3.c
@@ -1508,7 +1508,7 @@ void anope_cmd_squit(char *servname, char *message)
return;
}
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
/* SVSO */
@@ -1749,5 +1749,16 @@ int anope_flood_mode_check(char *value)
return 0;
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
#endif
diff --git a/src/unreal31.c b/src/unreal31.c
index 6d2a92867..c8a7b5c81 100644
--- a/src/unreal31.c
+++ b/src/unreal31.c
@@ -1069,7 +1069,7 @@ void anope_cmd_squit(char *servname, char *message)
return;
}
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
/* SVSO */
@@ -1538,4 +1538,16 @@ int anope_flood_mode_check(char *value)
}
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
+
#endif
diff --git a/src/unreal32.c b/src/unreal32.c
index 758ac8008..fd23edf0d 100644
--- a/src/unreal32.c
+++ b/src/unreal32.c
@@ -1385,7 +1385,7 @@ void anope_cmd_squit(char *servname, char *message)
return;
}
- send_cmd(servname, "%s %s :%s", send_token("SQUIT", "-"), servname,
+ send_cmd(NULL, "%s %s :%s", send_token("SQUIT", "-"), servname,
message);
}
@@ -2115,4 +2115,16 @@ int anope_flood_mode_check(char *value)
}
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
+
#endif
diff --git a/src/viagra.c b/src/viagra.c
index 51879a350..ef5d239a5 100644
--- a/src/viagra.c
+++ b/src/viagra.c
@@ -921,7 +921,7 @@ void anope_cmd_svsmode(User * u, int ac, char **av)
void anope_cmd_squit(char *servname, char *message)
{
- send_cmd(servname, "SQUIT %s :%s", servname, message);
+ send_cmd(NULL, "SQUIT %s :%s", servname, message);
}
/* PONG */
@@ -1657,4 +1657,16 @@ void anope_cmd_eob()
send_cmd(NULL, "BURST 0");
}
+void anope_cmd_jupe(char *jserver, char *who, char *reason)
+{
+ char rbuf[256];
+
+ snprintf(rbuf, sizeof(rbuf), "Juped by %s%s%s", who,
+ reason ? ": " : "", reason ? reason : "");
+
+ anope_cmd_squit(jserver, rbuf);
+ anope_cmd_server(jserver, 2, rbuf);
+ new_server(me_server, jserver, rbuf, SERVER_JUPED, NULL);
+}
+
#endif