Module textshun, mode +T & oper are not compatible (fix needed)
Posted: Wed May 17, 2017 8:54 am
Setup details:
UnrealIrcd 4.0.12
Module textshun (m_textshun (Drop messages based on nick and body) [3RD])
Oper block:
Or if the client sets usermode +T on connection
Reproduction is easy.
Once logged in /oper nick pass and then /mode nick -T
Result is always:
Problem:
Removing mode -T also deopers the oper when the oper is using operclass netadmin-textshun and such should not happen.
If the operblock only loads the normal operclass netadmin, the problem does not happen.
UnrealIrcd 4.0.12
Module textshun (m_textshun (Drop messages based on nick and body) [3RD])
Oper block:
Set blockoper hotshot {
class clients;
operclass netadmin-textshun;
mask { *@127.0.0.1; };
password "whatever";
require-modes z;
modes HIipqTtWwxcFfksq;
vhost oh.i.am.so.amazing;
swhois "because i am special ";
snomask cDFfkejvGnNqsSo;
maxlogins 1;
};
Code: Select all
# https://www.unrealircd.org/docs/Set_block#set::modes-on-connect
# For everyone connecting https://unrealircd.org/docs/User_modes
set { modes-on-connect "T"; };
Reproduction is easy.
Once logged in /oper nick pass and then /mode nick -T
Result is always:
Code: Select all
User mode [-osHIqWT] by nick
Server notice mask for nick: Server notice mask (+)
Removing mode -T also deopers the oper when the oper is using operclass netadmin-textshun and such should not happen.
If the operblock only loads the normal operclass netadmin, the problem does not happen.