View Issue Details

IDProjectCategoryView StatusLast Update
0001501unrealircdpublic2007-04-19 04:44
Reporterbejito Assigned Tostskeeps 
Status resolvedResolutionfixed 
Platform*nixOSfreebsdOS Version4.7
Product Version3.2-beta19 
Fixed in Version3.2.6 
Summary0001501: new server ban idea
Description1) add realname server ban (sgline bahamut)
2) a new server s"r"line ban use regexp in server ban . + * ()
Steps To Reproducenone
Additional Informationnone
TagsNo tags attached.
3rd party modules



2004-01-17 16:37

reporter   ~0004698

 Adds a global realname ban.
 Must be sent through an U:Lined server.
 The reason must be a single parameter therefore
 spaces are indicated by _, Unreal will internally
 translate these to spaces
 Syntax: SVSNLINE <reason_for_ban> :<realname>
 Example: SVSNLINE sub7_drone :*sub7*

2) It is good yes, but how many opers would actually know how to accurately construct a regular expression ban mask? Still useful, nonetheless.


2004-01-17 17:00

reporter   ~0004700

Praetorian is right. No one seems to know what regexp is. Badwords already allows regexp, however no one even can figure that out. Instead we get people saying 'I added a badword for "a*s*s" and it doesn't work, it blocks everything that ends in an s.' For badwords all that happens when someone uses a bad regex is some text gets blocked, if it is for bans however, now you actually wind up disconnecting people. For this reason, this will not be added to Unreal anytime soon.


2004-01-17 18:56

reporter   ~0004706

2) Regexp are very important when you would like ban mass clones ex : [A-z]+[1-9]+.*
i suppose this can't be used in gline or actual because "I added a badword for "a*s*s" and it doesn't work" :)
mut maybe on szrline sgrline ...

3) An other idea channel server ban :p
/mode #channel +b $* or /mode #channel +b $
this ban user who using a specific server on a channel


2004-01-17 19:03

reporter   ~0004708

Yeah, I agree it could be useful. It's just, will it cause more problems than it will fix?

As for banning a specific server from joining a channel, what's the point of doing that? Couldn't the user then just change servers?


2004-01-17 20:02

reporter   ~0004716

>Couldn't the user then just change servers?

I suppose server admin use Iline :)
ex : * server allow acces on tld it and it ripe class C
and * server allow acces on tld fr and fr ripe class C

a french channel ban $* and all italien user are bans from this channel


2004-01-17 20:16

reporter   ~0004718

Yeah well that example makes no sense.

All *.it users are on "" so you say ban all users from the server "" instead, why not ban *@*.it?


2004-01-17 20:47

reporter   ~0004723

because server may have other .it Iline

1) Iline on (.net .org ...)
2) Iline on it ipv6 /48
3) Iline on it ripe class C, B
... (no reverse)

and not only tld .it


2004-01-18 18:09

reporter   ~0004733

I'd like to know if SVSNLINE works for anybody out there.

I tried the following command today on my network. would have triggered on one particularly annoying user.
/rs raw svsnline gibberish_ident :*dsafdsa*
and this kid's ident is dsadsadsafdsa
it doesn't work
I've also been trying to use it on another network, like this.
/os raw :*.com
doesn't work either. (do I have to escape the '.'? well, even if I do, it doesn't explain why the previous ban didn't work)


2004-01-18 19:09

reporter   ~0004734

Why not make the regexp syntax optional?
The default way could be the ordinary wildcard match, but "option regex;" makes it regex instead.


2004-01-19 01:15

administrator   ~0004744

Well it's not simply changing the match() routine or something... regexes are a lot slower than a simply match (especially) if you need to rebuild them everytime... so usually you need to add like XX lines of code every time you add regex support for something (even with general/helper functions)...
And if it was to be added to A, B and C, people would be asking... "hey why isn't there regex supported in D/E/F/G!!?!?!~?~!? PLZ TO ADD!!"...
So while I'm not entirely against the idea, I personally won't be implementing it ;).


2004-01-19 01:44

reporter   ~0004746

Well we likely wouldn't need to rebuild them each time, since they are config directives we can simply add a regex_t to the structure and store the compiled version there. Plus, unless you are using some really complex regexps, TRE does a pretty damn good job with speed :)


2004-01-19 03:28

administrator   ~0004747

that's exactly what I ment... let me try to rephrase ;)):
since it's way too slow to build the regex every time you got to modify/add code, this has to be repeated for every thing you want to add regex for... + the users ABCDEF bla story. I presume they also want it in TKL then, it just keeps on going. I won't be surpised if people would end up asking for regex channel bans (+b) etc... ;).

Anyway, if you feel like going for this.. go ahead.. there's not really a technical limit involved.. more like effort/crazyness ;p.

[offtopic]hmmm next release will have A LOT of new/modified code... I hope we won't get flooded by bugreports ;)[/offtopic]


2004-01-19 04:20

reporter   ~0004748

I'll admit to looking for more flexible glines and zlines.

I'd LOVE to be able to zline (and yes, banning AOL sounds fun if impractical, but it's a mask I can get w/o looking it up)

or allowing stuff in glines like *[abc]* or w/e would be nice too, if way beyond most of my opers.


2004-01-19 04:21

reporter   ~0004749

Also looking for info on SVSNLINE. should I just create a separate bug report?


2004-01-19 04:32

reporter   ~0004750

CIDR based bans are on the TODO list. The problem arises, yet again, because of IPv6. Not all systems support IPv6 which makes these things difficult...


2004-01-24 20:18

reporter   ~0004770

oops...sorry bout the inadvertent blank post....happy click finger or something..


2004-05-13 09:49

reporter   ~0006231

Dont worry. BE happy ;)


2007-04-19 04:44

reporter   ~0013596


Issue History

Date Modified Username Field Change
2004-01-17 15:22 bejito New Issue
2004-01-17 16:37 Praetorian_ Note Added: 0004698
2004-01-17 17:00 codemastr Note Added: 0004700
2004-01-17 18:56 bejito Note Added: 0004706
2004-01-17 19:03 codemastr Note Added: 0004708
2004-01-17 20:02 bejito Note Added: 0004716
2004-01-17 20:16 codemastr Note Added: 0004718
2004-01-17 20:47 bejito Note Added: 0004723
2004-01-18 18:09 tabrisnet Note Added: 0004733
2004-01-18 19:09 Cnils Note Added: 0004734
2004-01-19 01:15 syzop Note Added: 0004744
2004-01-19 01:44 codemastr Note Added: 0004746
2004-01-19 03:28 syzop Note Added: 0004747
2004-01-19 04:20 tabrisnet Note Added: 0004748
2004-01-19 04:21 tabrisnet Note Added: 0004749
2004-01-19 04:32 codemastr Note Added: 0004750
2004-01-24 20:18 Tony Note Added: 0004770
2004-05-13 09:49 Pioner Note Added: 0006231
2007-04-19 04:44 stskeeps Status new => resolved
2007-04-19 04:44 stskeeps Fixed in Version => 3.2.6
2007-04-19 04:44 stskeeps Resolution open => fixed
2007-04-19 04:44 stskeeps Assigned To => stskeeps
2007-04-19 04:44 stskeeps Note Added: 0013596