- Channel* c = target.Get<Channel>();
- if ((details.text.empty()) || (details.text[0] != '\001') || (!strncmp(details.text.c_str(),"\1ACTION ", 8)) || (details.text == "\1ACTION\1") || (details.text == "\1ACTION"))
- return MOD_RES_PASSTHRU;
+ case MessageTarget::TYPE_CHANNEL:
+ {
+ if (user->HasPrivPermission("channels/ignore-noctcp"))
+ return MOD_RES_PASSTHRU;
+
+ Channel* c = target.Get<Channel>();
+ ModResult res = CheckExemption::Call(exemptionprov, user, c, "noctcp");
+ if (res == MOD_RES_ALLOW)
+ return MOD_RES_PASSTHRU;