]> jfr.im git - solanum.git/commitdiff
chmode: Check mlock when a local oper changes cmode +L/+P.
authorJilles Tjoelker <redacted>
Sun, 17 Aug 2014 22:26:38 +0000 (00:26 +0200)
committerJilles Tjoelker <redacted>
Sun, 17 Aug 2014 22:26:38 +0000 (00:26 +0200)
This check was erroneously removed when fixing /mode #channel f when +f is
mlocked. Mlock checks were restricted to the places requiring chanops
(other than viewing +eI lists); cmode +L/+P do not require chanops, but
still constitute a mode change that must be checked against mlock.

src/chmode.c

index 4ebb3724e6afa87d275c3dc663450a8a2643f756..062cda58873a215a685b264f216a714072b3e250 100644 (file)
@@ -698,6 +698,9 @@ chm_staff(struct Client *source_p, struct Channel *chptr,
                return;
        }
 
+       if(!allow_mode_change(source_p, chptr, CHFL_CHANOP, errors, c))
+               return;
+
        if(MyClient(source_p) && (++mode_limit_simple > MAXMODES_SIMPLE))
                return;