View Issue Details

IDProjectCategoryView StatusLast Update
0002252unrealircdpublic2005-02-03 20:41
ReporterGilou Assigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionopen 
Product Version3.2.2 
Summary0002252: cleaner spamfilter u
DescriptionAt the moment, the separator announcing the realname is ":". But what if I'm trying to match against an IPv6 address?
Maybe "!" would more appropriate?

Another thing cool the spamfilter could check is the server the user is on, something like nick!user@host!server:realname
(This is the syntax we use on personnal services which used to give us this feature already in fact)

Another problem, which may only be related to the documentation, is that we should be able to specify multiple targets. Using a such thing and mixing a "u" spamfilter with a "cpPn" one sounds funny ;)
3rd party modules

Activities

syzop

2004-12-22 23:56

administrator   ~0008662

@1 I don't think I understand the problem with IPv6, could you elaborate on that? if someone has the address for a n!u@h:r it could become stuff like alpha!beta@0:0:0:0:0:0:0:1:gamma... With what regex would you have problems with matching?

@2 When exactly would that be useful? Also, sounds to me like, if you want a spamfilter for just 1 server, you could just add a spamfilter { } block.

@3 You mean a user should match a certain pattern AND (for example) sends a certain msg? That idea is as a private bug here ("dronefilter"), it's nice, but it's unlikely to be implemented soon (complex :/)

aquanight

2004-12-23 00:40

reporter   ~0008664

Last edited: 2004-12-23 00:41

Although, would using ! seperator be possibly ambiguous with the nick-user seperator? Example, if I'm lazy and want to spamfilter everyone with realname "Bob" I do .+!Bob but this also bans the ident Bob which isn't what I want... Maybe instead use something like ; or $ (would need to be \'d)?

Gilou

2004-12-23 08:56

reporter   ~0008665

About the ipv6 thing, well you may not want to match a complete ipv6 adress, I can't test as I don't have some, but if you want to match something like alpha!beta@aaaa:aaaa:aaa.*:gamma gamma being the realname, aaa:aaa.* being a wildcarded IPv6 adress (quite huge range, for sure ;)), sound weird ? (or am I totally wrong ?)

About the server thing, well true, another stupid idea ;)

About the other thing, yeah in fact using cpu for a given pattern is quite stupid as it does not represent the same thing, that's what I meant ;)

codemastr

2004-12-23 12:58

reporter   ~0008667

No matter what character we use, there can be ambiguity. The reason is, all characters are valid in a realname! Say we decide on $. Well if my realname is "foo$bar" then there is ambiguity. So the problem exists with :, !, or anything else.

The solution to this is non-greedy repetition operators. Any repetition operator can be made non-greedy by adding a ?. so for example, .* = greedy, .*? = non-greedy. This makes it match the "minimal" rather than the "maximal" pattern. A simple example, I have text, "hello" I use a regex of ".+l" in that instance, the .+ matches "hel" because .+ is greedy. If I change the regex to ".+?l" the .+? matches "he" in either case, the entire regex still matches, but I've altered the way it matches.

syzop

2005-02-03 20:41

administrator   ~0009018

hmm I think this can be closed :)

Issue History

Date Modified Username Field Change
2004-12-22 22:41 Gilou New Issue
2004-12-22 23:56 syzop Note Added: 0008662
2004-12-23 00:40 aquanight Note Added: 0008664
2004-12-23 00:41 aquanight Note Edited: 0008664
2004-12-23 08:56 Gilou Note Added: 0008665
2004-12-23 12:58 codemastr Note Added: 0008667
2005-02-03 20:41 syzop Status new => closed
2005-02-03 20:41 syzop Note Added: 0009018