Page 1 of 1

Stopping a user from connecting temporarily

Posted: Wed Jun 08, 2005 4:48 pm
by nforbes
Hey all,

I'm looking for a way to stop a user from connecting to my network until my code tells the server to continue authenticating them. I posted a feature request, but if something like what I'm interested in is infact implemented, it won't be until 3.3. I'm going to need this functionality far before even the alphas of 3.3 are released.

I was looking at some of Syzop's modules (specifically SQLMod, which has a screenshot of basically what I want to do: http://www.vulnscan.org/UnrealIRCd/imag ... egnick.png ). Does anyone know how I can accomplish this?

I'm looking for code snippets, not a complete module... although a module would be fine too. ;)

Thanks in advance,

Posted: Thu Jun 09, 2005 7:50 am
by Stealth
You may want to take a look at AngryWolf's userauth module...

IIRC, the userauth module would not allow users to connect if they did not supply the proper nick/passwd combination from a file containing all the valid nick/passwd combinations. Perhaps this would be a way to have your own system set up for now...

Posted: Thu Jun 09, 2005 8:45 pm
by nforbes
Hey Stealth,

What you're suggesting won't really work for me (it uses the server password for authentication). I need it to essentially look like this:

*** Looking up your hostname...
*** Found your hostname
*** Please review our Terms of Service located at http://www.mynetwork.net/privacy/tos/
*** If you agree to these terms, please type /AGREE now

[ waits for the AGREE command to be sent ]

*** Welcome to the MyNetwork IRC network blahblah!blahblah@blahblah...
... and so on.

Thanks for the suggestion, though. :)

Regards,

Posted: Tue Jun 14, 2005 7:54 am
by sdamon
write a services module to send a numeric on connect, set a timer and and kill after 60 seconds. hel you could almost do that with an opered mirc client.

unrealircd.conf
set::autojoin "#tos";

new .mrc file.

Code: Select all

on *:join:#tos:{
timer $+ $nick 1 60 kill $nick you must accept our terms of service
notice $nick this is my terms of service
}

on *:text:accept:?:{
timer $+ $nick off
sapart $nick #tos
}

Posted: Mon Jun 20, 2005 3:02 pm
by black_skies4
lol. If you want someone to stop connecting... Do a G/K:line, or a GZ/Z:Line lol. OR! Shun them and incorporte something about your agreements in /admin, seeing as /admin is the only command a shunned user can do.

Posted: Mon Jun 20, 2005 7:36 pm
by Stealth
He doesn't want people to stop conencting, he wants people to read and agree to the rules of his network before they connect.

black_skies4, I suggest you start reading the topics before posting on them, or I may just start deleting your posts. I think of all the ones I have replied to that you have posted on, maybe 1 you actually read.

Posted: Fri Jul 01, 2005 2:15 am
by black_skies4
Stealth: I know that. I was saying, have it shun users and they can read /admin, where it would say that they had to agree and if they do they get un-shunned.

Posted: Sat Jul 02, 2005 3:11 pm
by Jason
Send a SNOTICE before setting the shun


Anyhow, Use that mIRC bot script in combination with AngryWolf's m_courtroom (not _lite) On connect, join them to that +U room and put a quarantine on them. Set chan +mu so only ops see the messages of nonvoices. They type agree, you opped bot removes the quarantine and saparts them, they are free to go.