summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bahamut.c16
-rw-r--r--src/rageircd.c16
2 files changed, 28 insertions, 4 deletions
diff --git a/src/bahamut.c b/src/bahamut.c
index a8a4f911a..5fafd7f86 100644
--- a/src/bahamut.c
+++ b/src/bahamut.c
@@ -676,13 +676,20 @@ void anope_cmd_unsgline(char *mask)
/* UNSZLINE */
void anope_cmd_unszline(char *mask)
{
+ /* this will likely fail so its only here for legacy */
send_cmd(NULL, "UNSZLINE 0 %s", mask);
+ /* this is how we are supposed to deal with it */
+ send_cmd(NULL, "RAKILL %s *", mask);
}
/* SZLINE */
void anope_cmd_szline(char *mask, char *reason, char *whom)
{
+ /* this will likely fail so its only here for legacy */
send_cmd(NULL, "SZLINE %s :%s", mask, reason);
+ /* this is how we are supposed to deal with it */
+ send_cmd(NULL, "AKILL %s * %d %s %ld :%s", mask, 86400 * 2, whom,
+ (long int) time(NULL), reason);
}
/* SVSNOOP */
@@ -1647,4 +1654,13 @@ void anope_cmd_ctcp(char *source, char *dest, const char *fmt, ...)
send_cmd(source, "%s NOTICE :\1%s \1", dest, s);
}
+/* this avoids "undefined symbol" messages of those whom try to load mods that
+ call on this function */
+void anope_cmd_chghost(char *nick, char *vhost)
+{
+ if (debug) {
+ alog("debug: This IRCD does not support vhosting");
+ }
+}
+
#endif
diff --git a/src/rageircd.c b/src/rageircd.c
index bbf3c6b4e..f4cc54d7e 100644
--- a/src/rageircd.c
+++ b/src/rageircd.c
@@ -641,6 +641,14 @@ void anope_cmd_vhost_off(User * u)
void anope_cmd_vhost_on(char *nick, char *vIdent, char *vhost)
{
send_cmd(s_HostServ, "SVSMODE %s +x", nick);
+ anope_cmd_chghost(nick, vhost);
+}
+
+void anope_cmd_chghost(char *nick, char *vhost)
+{
+ if (!nick || !vhost) {
+ return;
+ }
send_cmd(ServerName, "VHOST %s %s", nick, vhost);
}
@@ -720,13 +728,13 @@ void anope_cmd_connect(int servernum)
void anope_cmd_svinfo()
{
- send_cmd(NULL, "SVINFO 5 5 0 %ld bluemoon 0", (long int) time(NULL));
+ send_cmd(NULL, "SVINFO 5 3 0 %ld bluemoon 0", (long int) time(NULL));
}
void anope_cmd_capab()
{
- /* future versions will support TSMODE */
- send_cmd(NULL, "CAPAB BURST UNCONNECT SSJ3 SN2 VHOST");
+ /* CAPAB BURST UNCONNECT ZIP SSJ3 SN2 VHOST SUID TOK1 TSMODE */
+ send_cmd(NULL, "CAPAB BURST UNCONNECT SSJ3 SN2 VHOST TSMODE");
}
void anope_cmd_server(char *servname, int hop, char *descript)
@@ -939,7 +947,7 @@ void anope_cmd_mode(char *source, char *dest, const char *fmt, ...)
}
if (ircdcap->tsmode) {
- if (uplink_capab & ircdcap->tsmode) {
+ if (uplink_capab & ircdcap->tsmode || UseTSMODE) {
send_cmd(source, "MODE %s 0 %s", dest, buf);
} else {
send_cmd(source, "MODE %s %s", dest, buf);