From 9d82e9b92034897c381324842f004b4ee1eb9566 Mon Sep 17 00:00:00 2001 From: cflakes Date: Wed, 31 Mar 2010 21:41:30 +0000 Subject: [PATCH] Add missing DenyLoadMod check in admin.cpp, following up revision 1845. Patch by Nirjen, thanks again! git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@1864 726aef4b-f618-498e-8847-2d620e286838 --- modules/admin.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/modules/admin.cpp b/modules/admin.cpp index a86dfb9b..d7f745c2 100644 --- a/modules/admin.cpp +++ b/modules/admin.cpp @@ -601,6 +601,11 @@ class CAdminMod : public CModule { if (!pUser) return; + if (pUser->DenyLoadMod() && !m_pUser->IsAdmin()) { + PutModule("Loading modules has been denied"); + return; + } + CModule *pMod = (pUser)->GetModules().FindModule(sModName); if (!pMod) { if (!(pUser)->GetModules().LoadModule(sModName, sArgs, pUser, sModRet, false)) { @@ -633,6 +638,11 @@ class CAdminMod : public CModule { CUser* pUser = GetUser(sUsername); if (!pUser) return; + + if (pUser->DenyLoadMod() && !m_pUser->IsAdmin()) { + PutModule("Loading modules has been denied"); + return; + } if (!(pUser)->GetModules().UnloadModule(sModName, sModRet)) { PutModule("Unable to unload module [" + sModName + "] [" + sModRet + "]");