X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Firc-mode.c;h=90f638d811219282b34af51c8cf8369e7548e4f7;hp=7380c6eb5c70308b030097aadf58a9ab3bc933e4;hb=d21afce2b6fdc919a80c4eb1d6ba781c1cf63f3c;hpb=808c291c76b7ecb4ae13b6ee12e8afe658b627c1;ds=sidebyside diff --git a/src/ngircd/irc-mode.c b/src/ngircd/irc-mode.c index 7380c6eb..90f638d8 100644 --- a/src/ngircd/irc-mode.c +++ b/src/ngircd/irc-mode.c @@ -278,9 +278,15 @@ Client_Mode( CLIENT *Client, REQUEST *Req, CLIENT *Origin, CLIENT *Target ) ok = IRC_WriteStrClient(Origin, ERR_RESTRICTED_MSG, Client_ID(Origin)); - else + else if (!set || Conf_CloakHostModeX[0] + || Client_Type(Client) == CLIENT_SERVER + || Client_OperByMe(Client)) { x[0] = 'x'; send_RPL_HOSTHIDDEN_MSG = true; + } else + ok = IRC_WriteStrClient(Origin, + ERR_NOPRIVILEGES_MSG, + Client_ID(Origin)); break; default: if (Client_Type(Client) != CLIENT_SERVER) {