+ if (MyUser(state->sptr)) {
+ colon = strchr(t_str, ':');
+ if (colon != NULL) {
+ *colon++ = '\0';
+ req_oplevel = atoi(colon);
+ if (!(state->flags & MODE_PARSE_FORCE)
+ && state->member
+ && (req_oplevel < OpLevel(state->member)
+ || (req_oplevel == OpLevel(state->member)
+ && OpLevel(state->member) < MAXOPLEVEL)
+ || req_oplevel > MAXOPLEVEL))
+ send_reply(state->sptr, ERR_NOTLOWEROPLEVEL,
+ t_str, state->chptr->chname,
+ OpLevel(state->member), req_oplevel, "op",
+ OpLevel(state->member) == req_oplevel ? "the same" : "a higher");
+ else if (req_oplevel <= MAXOPLEVEL)
+ oplevel = req_oplevel;
+ }
+ /* find client we're manipulating */