Page 1 of 1
Module Request: m_sanick
Posted: Wed Jul 20, 2011 4:56 pm
by Robert
I think this module has been made before but I can't find it. If it hasn't can someone make it so you can /sanick nick new-nick? Thanks.
Re: Module Request: m_sanick
Posted: Thu Jul 21, 2011 1:13 am
by Stealth
This has been requested many times in the past and we have determined it wouldn't bring anything but more abuse in the power of opers. Controlling nicks is also the job of your services package. UnrealIRCd was designed to work WITH services and not standalone without services.
Please consult your services documentation for the ability to change user nicks.
Re: Module Request: m_sanick
Posted: Thu Jul 21, 2011 2:07 am
by Robert
In my opinion sajoin is more abusive than sanick so why was it added? It's possible to force users to join channels with services.
Re: Module Request: m_sanick
Posted: Thu Jul 21, 2011 2:18 am
by katsklaw
Robert wrote:In my opinion sajoin is more abusive than sanick so why was it added? It's possible to force users to join channels with services.
Why sajoin was added is irrelevant, the fact remains that sanick isn't to be added.
Re: Module Request: m_sanick
Posted: Thu Jul 21, 2011 2:22 am
by Robert
Ok. I'm not asking it to be added to Unreal. I was asking if anyone knew if there was such a module or if someone could write it.
Re: Module Request: m_sanick
Posted: Thu Jul 21, 2011 2:27 am
by Stealth
SAJOIN was added back in Unreal's more interesting days where there were some abusive features. Since then Unreal has pruned out some abusive features while leaving others that are useful for management.
SAJOIN/SAPART have more legitimate use than SANICK would have. For example, an oper can SAJOIN him/herself into a channel that violates network policies (and has opers banned, or +i, etc) to clear the channel or check it out before taking action through OperServ.
SAJOIN/SAPART can also be used to force users infected with IRC trojans into a specific channel (and out of other channels) to help them understand and clean their client. This works along with the viruschan spamfilter action.
A SANICK command would just be used to force people to use (or not use) nicks. If a user is abusing through the use of nicknames they deserve a swift GLINE or tempshun. Nicks can also be q:lined through the configuration or services.
Re: Module Request: m_sanick
Posted: Thu Jul 21, 2011 2:31 am
by Robert
Ok, but since I wanted my services administrators to be able to change a nick if they had to for whatever reason, and because only services roots can use os_svsnick in Anope. Would this version of m_sanick work for Unreal 3.2 if someone compiled it?
http://208.87.242.184/~area51/ircd-mods ... m_sanick.c
Re: Module Request: m_sanick
Posted: Mon Aug 08, 2011 11:43 am
by chevyman2002
Robert wrote:Ok, but since I wanted my services administrators to be able to change a nick if they had to for whatever reason, and because only services roots can use os_svsnick in Anope. Would this version of m_sanick work for Unreal 3.2 if someone compiled it?
http://208.87.242.184/~area51/ircd-mods ... m_sanick.c
The link to the module you provided does not work (at least in Unreal3.2.9-RC2) and is pretty outdated. I have come up with my [so far working] own module composed of mostly axe-hacked code from random other modules in Unreal's source. I don't recommend using it on a production server until you have tested it to your own approval as this is the first module I've ever made. However, some sample output below:
Code: Select all
[06:10] * tester is now known as test
[06:10] -irc.SummitIRC.com- *** Notice -- chevyman2002 used SANICK to make tester change their nick to test.
[06:10] * test is now known as test2
[06:10] -irc.SummitIRC.com- *** Notice -- chevyman2002 used SANICK to make test change their nick to test2.
etc...
And what the user sees:
Code: Select all
[06:10] * Your nick is now test
[06:10] -irc.SummitIRC.com- *** You were forced to change your nick to test
[06:10] * Your nick is now test2
[06:10] -irc.SummitIRC.com- *** You were forced to change your nick to test2
etc...
It will also log the command as needed to track potential abuse (the command is also subject to flooding and WILL kill the end user for nick flooding, if your services don't do it first). It loads, unloads and rehashes without a fuss.
Download here
Re: Module Request: m_sanick
Posted: Thu Aug 18, 2011 3:11 am
by chevyman2002
Under further testing, I have felt comfortable enough to run this module on my production server without fault. However, I did quickly realize a slight issue. If you're running the m_uline module, the /sanick command will ignore you (possibly only if you've added a U:Line for yourself, I didn't test details). To get around this, simply scroll down to line 92 and delete it along with line 93 (shown below). [Re]compile the module and it works just fine.
Code: Select all
if (IsServer(sptr) || IsServices(sptr))
return 0; //Servers and Services should be invoking SVSNICK directly...