Add outrank check to chanserv.myaccess
authorThiefMaster <thiefmaster@gamesurge.net>
Fri, 27 Jun 2008 20:04:52 +0000 (22:04 +0200)
committerMichael Poole <mdpoole@troilus.org>
Thu, 5 Mar 2009 04:29:32 +0000 (23:29 -0500)
src/chanserv.c

index e039fbf44d882f63e523d29cbd425d8915555bd9..7f21d44e98ff66888cd1efa1badec826438cc450 100644 (file)
@@ -23,6 +23,7 @@
 #include "global.h"
 #include "modcmd.h"
 #include "opserv.h" /* for opserv_bad_channel() */
+#include "nickserv.h" /* for oper_outranks() */
 #include "saxdb.h"
 #include "timeq.h"
 
@@ -3626,7 +3627,7 @@ static CHANSERV_FUNC(cmd_myaccess)
 
     if(argc < 2)
         target_handle = user->handle_info;
-    else if(!IsHelping(user))
+    else if(!IsStaff(user))
     {
         reply("CSMSG_MYACCESS_SELF_ONLY", argv[0]);
         return 0;
@@ -3634,6 +3635,9 @@ static CHANSERV_FUNC(cmd_myaccess)
     else if(!(target_handle = modcmd_get_handle_info(user, argv[1])))
         return 0;
 
+    if(!oper_outranks(user, target_handle))
+        return 0;
+
     if(!target_handle->channels)
     {
         reply("CSMSG_SQUAT_ACCESS", target_handle->handle);