summaryrefslogtreecommitdiff
path: root/modules/m_connect.c
diff options
context:
space:
mode:
authormichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2013-05-12 14:51:41 +0000
committermichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2013-05-12 14:51:41 +0000
commitf12ebd1f2ac718e17c438410c332192d1360d6a3 (patch)
tree3ff48bf3a9c651e93c5df42f43e9c3dcc271a0cc /modules/m_connect.c
parentdf0978f4c17d55ce78679463d9a00f4fddbd14fe (diff)
- Removed 'remote', and 'global_kill' oper flags, and added 'connect',
'squit', and 'kill' flags for better fine-tuning instead. Whether or not a specific action is allowed on a remote server can be controlled by appeding the ':remote' flag. For example: 'kill' allows only local clients to be killed, whereas 'kill:remote' allows to issue a KILL for remote clients git-svn-id: svn://svn.ircd-hybrid.org/svnroot/ircd-hybrid/branches/8.1.x@2013 82007160-df01-0410-b94d-b575c5fd34c7
Diffstat (limited to 'modules/m_connect.c')
-rw-r--r--modules/m_connect.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/modules/m_connect.c b/modules/m_connect.c
index 1d27f53..775fb50 100644
--- a/modules/m_connect.c
+++ b/modules/m_connect.c
@@ -67,7 +67,7 @@ mo_connect(struct Client *client_p, struct Client *source_p,
if (parc > 3)
{
- if (!HasOFlag(source_p, OPER_FLAG_REMOTE))
+ if (!HasOFlag(source_p, OPER_FLAG_CONNECT_REMOTE))
{
sendto_one(source_p, form_str(ERR_NOPRIVS),
me.name, source_p->name, "connect");
@@ -78,6 +78,12 @@ mo_connect(struct Client *client_p, struct Client *source_p,
parc, parv) != HUNTED_ISME)
return;
}
+ else if (!HasOFlag(source_p, OPER_FLAG_CONNECT))
+ {
+ sendto_one(source_p, form_str(ERR_NOPRIVS),
+ me.name, source_p->name, "connect");
+ return;
+ }
if ((target_p = hash_find_server(parv[1])))
{