m_rmtkl correct IRC operator privileges

Need a module converted from 3.2.x to UnrealIRCd 4? Or looking for a certain module? Ask here.

Moderators: Gottem, Supporters

Post Reply
CrazyCat
Posts: 95
Joined: Thu Apr 28, 2005 1:05 pm
Location: France
Contact:

m_rmtkl correct IRC operator privileges

Post by CrazyCat » Mon Apr 01, 2019 9:49 am

Hello !

Sorry to post here but your git refuse to send me any email, so I can't login...

I'm well identified as a netadmin-with-override oper on my network, and when I try to do /rmtkl * *, I got the message "Permission Denied- You do not have the correct IRC operator privileges".
I know it has work in the past (I was using Unreal 4.0.17 and m_rmtkl 1.23). I upgrade my servers to Unreal 4.2.2 and get the last version of this module and I now encounter this error.
Do I miss something in a configuration ?

The_Myth
Posts: 37
Joined: Tue Jun 27, 2017 4:42 pm

Re: m_rmtkl correct IRC operator privileges

Post by The_Myth » Mon Apr 01, 2019 11:04 am

Did you checked other oper commands?
the `privileges {}` block has changed to `permissions {}`.

CrazyCat
Posts: 95
Joined: Thu Apr 28, 2005 1:05 pm
Location: France
Contact:

Re: m_rmtkl correct IRC operator privileges

Post by CrazyCat » Mon Apr 01, 2019 12:01 pm

Yes:

Code: Select all

/* Network Administrator */
operclass netadmin {
        permissions {
                chat;
                channel { operonly; see; override { flood; }; };
                client;
                immune;
                self;
                server { opermotd; info; close; module; dns; rehash;
                         remote; description; addmotd;
                         addomotd; tsctl; };
                route;
                kill;
                server-ban;
                sacmd;
                services;
        };
};
operclass netadmin-with-override {
        parent netadmin;
        permissions {
                channel { operonly; see; override; };
        };
};

Gottem
Posts: 172
Joined: Fri Aug 19, 2016 5:26 pm
Location: NL

Re: m_rmtkl correct IRC operator privileges

Post by Gottem » Mon Apr 01, 2019 4:59 pm

That's just because starting with Unreal 4.2.1 some operprivs were renamed/moved. In this case it affects:

Code: Select all

TKLType tkl_types[] = {
	{ TKL_KILL, 'K', "K:Line", "tkl:kline:remove" },
	{ TKL_ZAP, 'z',	"Z:Line", "tkl:zline:local:remove" },
	{ TKL_KILL | TKL_GLOBAL, 'G', "G:Line", "tkl:gline:remove" },
	{ TKL_ZAP | TKL_GLOBAL, 'Z', "Global Z:Line", "tkl:zline:remove" },
	{ TKL_SHUN | TKL_GLOBAL, 's', "Shun", "tkl:shun:remove" },
	{ TKL_NICK, 'q', "Q:Line", "tkl:qline:local:remove" },
	{ TKL_NICK | TKL_GLOBAL, 'Q', "Global Q:Line", "tkl:qline:remove" },
	{ TKL_SPAMF | TKL_GLOBAL, 'F', "Global Spamfilter", "tkl:spamfilter:remove" },
	{ 0, 0, "Unknown *:Line", 0 },
};
All those tkl: privs no longer exist. So I "backported" that shit for compatibility with both Unreal version ranges. =]

Oper privs checked in Unreal 4.2.1 and up:
  • (Local) K:Line: server-ban:kline:remove
  • (Local) Z:Line: server-ban:zline:local:remove
  • G:Line: server-ban:gline:remove
  • S:Line: server-ban:shun:remove
  • Global Z:Line: server-ban:zline:global:remove
  • Global Spamfilter: server-ban:spamfilter:remove
Since the module explicitly checks for :remove permissions, you might need to adjust some operclasses here and there. For example, Z:Lines only have 2 related built-in privs (server-ban:zline:global and server-ban:zline:local:add) but neither of those is a direct parent of server-ban:zline:local:remove. So you can either add that last privilege as-is if you just want someone to be able to remove Z:Lines, or use server-ban:zline:local.

Sidenote: While I was at it, I also removed support for removing Q:Lines. These are added by services or through unrealircd.conf and in both cases we don't wanna touch em anyways. ;]
CrazyCat wrote:
Mon Apr 01, 2019 9:49 am
Sorry to post here but your git refuse to send me any email, so I can't login...
That's ok, in this case it's actually helpful for others with the exact same problem. You can always poke me on the Unreal support IRC if necessary anyways. =]

Also I activated your git account manually in March so you should be able to login just fine. I just checked my email server's logs for today and it shows:

Code: Select all

relay=mx1.ovh.net[188.165.47.122]:25, delay=7, delays=0.72/0.01/6/0.26, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 44XnM92t)
So it left my server properly, although it's also hosted by OVH so maybe something's funky with their routing or some shit. Perhaps you should come on IRC so we can look into this properly. ;]
If you like my modules, pls consider donating (through PayPal) or becoming a monthly Patron ;];]

Post Reply