summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/configreader.cpp5
-rw-r--r--src/modules/m_delaymsg.cpp17
-rw-r--r--src/modules/m_spanningtree/svspart.cpp16
3 files changed, 19 insertions, 19 deletions
diff --git a/src/configreader.cpp b/src/configreader.cpp
index b0bb6a92f..1e6d96d0d 100644
--- a/src/configreader.cpp
+++ b/src/configreader.cpp
@@ -436,8 +436,11 @@ static const Deprecated ChangedConfig[] = {
{"options", "somaxconn", "has been moved to <performance:somaxconn> as of 1.2a3"},
{"options", "netbuffersize", "has been moved to <performance:netbuffersize> as of 1.2a3"},
{"options", "maxwho", "has been moved to <performance:maxwho> as of 1.2a3"},
- {"options", "loglevel", "1.2 does not use the loglevel value. Please define <log> tags instead."},
+ {"options", "loglevel", "1.2+ does not use the loglevel value. Please define <log> tags instead."},
{"die", "value", "you need to reread your config"},
+ {"bind", "transport", "has been moved to <bind:ssl> as of 2.0a1"},
+ {"link", "transport", "has been moved to <link:ssl> as of 2.0a1"},
+
};
void ServerConfig::Fill()
diff --git a/src/modules/m_delaymsg.cpp b/src/modules/m_delaymsg.cpp
index baa6355ad..1a0734ed9 100644
--- a/src/modules/m_delaymsg.cpp
+++ b/src/modules/m_delaymsg.cpp
@@ -18,14 +18,11 @@
#include "inspircd.h"
-#include <stdarg.h>
/* $ModDesc: Provides channelmode +d <int>, to deny messages to a channel until <int> seconds. */
class DelayMsgMode : public ModeHandler
{
- private:
- CUList empty;
public:
LocalIntExt jointime;
DelayMsgMode(Module* Parent) : ModeHandler(Parent, "delaymsg", 'd', PARAM_SETONLY, MODETYPE_CHANNEL)
@@ -55,7 +52,6 @@ class ModuleDelayMsg : public Module
Implementation eventlist[] = { I_OnUserJoin, I_OnUserPreMessage};
ServerInstance->Modules->Attach(eventlist, this, 2);
}
- ~ModuleDelayMsg();
Version GetVersion();
void OnUserJoin(Membership* memb, bool sync, bool created, CUList&);
ModResult OnUserPreMessage(User* user, void* dest, int target_type, std::string &text, char status, CUList &exempt_list);
@@ -65,6 +61,9 @@ ModeAction DelayMsgMode::OnModeChange(User* source, User* dest, Channel* channel
{
if (adding)
{
+ if ((channel->IsModeSet('d')) && (channel->GetModeParameter('d') == parameter))
+ return MODEACTION_DENY;
+
/* Setting a new limit, sanity check */
long limit = atoi(parameter.c_str());
@@ -90,10 +89,6 @@ ModeAction DelayMsgMode::OnModeChange(User* source, User* dest, Channel* channel
return MODEACTION_ALLOW;
}
-ModuleDelayMsg::~ModuleDelayMsg()
-{
-}
-
Version ModuleDelayMsg::GetVersion()
{
return Version("Provides channelmode +d <int>, to deny messages to a channel until <int> seconds.", VF_VENDOR);
@@ -101,7 +96,7 @@ Version ModuleDelayMsg::GetVersion()
void ModuleDelayMsg::OnUserJoin(Membership* memb, bool sync, bool created, CUList&)
{
- if (memb->chan->IsModeSet('d'))
+ if ((IS_LOCAL(memb->user)) && (memb->chan->IsModeSet('d')))
{
djm.jointime.set(memb, ServerInstance->Time());
}
@@ -110,7 +105,7 @@ void ModuleDelayMsg::OnUserJoin(Membership* memb, bool sync, bool created, CULis
ModResult ModuleDelayMsg::OnUserPreMessage(User* user, void* dest, int target_type, std::string &text, char status, CUList &exempt_list)
{
/* Server origin */
- if (!user)
+ if ((!user) || (!IS_LOCAL(user)))
return MOD_RES_PASSTHRU;
if (target_type != TYPE_CHANNEL)
@@ -121,7 +116,7 @@ ModResult ModuleDelayMsg::OnUserPreMessage(User* user, void* dest, int target_ty
if (!memb)
return MOD_RES_PASSTHRU;
-
+
time_t ts = djm.jointime.get(memb);
if (ts == 0)
diff --git a/src/modules/m_spanningtree/svspart.cpp b/src/modules/m_spanningtree/svspart.cpp
index 7edc720af..35bce781d 100644
--- a/src/modules/m_spanningtree/svspart.cpp
+++ b/src/modules/m_spanningtree/svspart.cpp
@@ -30,17 +30,19 @@
CmdResult CommandSVSPart::Handle(const std::vector<std::string>& parameters, User *user)
{
- std::string reason = "Services forced part";
+ User* u = ServerInstance->FindUUID(parameters[0]);
+ if (!u)
+ return CMD_FAILURE;
- if (parameters.size() == 3)
- reason = parameters[2];
-
- User* u = ServerInstance->FindNick(parameters[0]);
Channel* c = ServerInstance->FindChan(parameters[1]);
+ if (!c)
+ return CMD_FAILURE;
- if (u && IS_LOCAL(u))
+ if (IS_LOCAL(u))
+ {
+ std::string reason = (parameters.size() == 3) ? parameters[2] : "Services forced part";
c->PartUser(u, reason);
-
+ }
return CMD_SUCCESS;
}