Client_Modes(Target));
}
- IRC_SetPenalty(Client, 1);
return ok;
} /* Client_Mode */
goto chan_exit;
if (!set) {
if (is_oper || is_machine || is_owner ||
- is_admin || is_op || is_halfop)
+ is_admin || is_op || is_halfop) {
x[0] = *mode_ptr;
- else
+ if (Channel_HasMode(Channel, 'k'))
+ strlcpy(argadd, "*", sizeof(argadd));
+ if (arg_arg > mode_arg)
+ arg_arg++;
+ } else
connected = IRC_WriteErrClient(Origin,
ERR_CHANOPRIVSNEEDED_MSG,
Client_ID(Origin),
#ifdef STRICT_RFC
/* Only send error message in "strict" mode,
* this is how ircd2.11 and others behave ... */
- IRC_SetPenalty(Origin, 2);
connected = IRC_WriteErrClient(Origin,
ERR_NEEDMOREPARAMS_MSG,
Client_ID(Origin), Req->command);
#ifdef STRICT_RFC
/* Only send error message in "strict" mode,
* this is how ircd2.11 and others behave ... */
- IRC_SetPenalty(Origin, 2);
connected = IRC_WriteErrClient(Origin,
ERR_NEEDMOREPARAMS_MSG,
Client_ID(Origin), Req->command);
* mode, because most other servers don't do
* it as well and some clients send "wired"
* MODE commands like "MODE #chan -ooo nick". */
- IRC_SetPenalty(Origin, 2);
connected = IRC_WriteErrClient(Origin,
ERR_NEEDMOREPARAMS_MSG,
Client_ID(Origin), Req->command);
}
}
- IRC_SetPenalty(Client, 1);
return connected;
} /* Channel_Mode */