View Issue Details

IDProjectCategoryView StatusLast Update
0003322unrealircdpublic2015-07-13 22:36
ReporterShining Phoenix Assigned To 
PrioritynormalSeverityfeatureReproducibilityalways
Status feedbackResolutionopen 
Platformi386OSLinux 
Product Version3.2.6 
Summary0003322: Suggestions for channel mode f
Description1. Split it in two. Channel mode f would count actions for individual users, F would count actions for the whole channel.
 e.g. +f [6m,5t]:4 would become +fF [5t]:4 [6m]:4
2. More actions.
 e.g. +f [3n#n]:30 would set a ~n ban on someone when they nickchange too much
 e.g. +F [3n#n]:30 would set a ~n:*!*@* ban when there is too much nickchanging
j, n and q actions would be ~j, ~n and ~q bans respectively. Only a normal ban (b) would have an accompanying kick.
3. An i trigger for invite flooding.
TagsNo tags attached.
3rd party modules

Relationships

related to 0002108 closed flood feature suggestions 
has duplicate 0003709 closednate Extention to the +f flood protection. 

Activities

Shining Phoenix

2007-05-07 22:24

reporter   ~0014031

Last edited: 2007-05-18 18:27

Two Mode Binary Modes Option:

Trigger || f actions || F actions || extra notes
m || - || m,M
t || kick,b,q || -
c || C,m,M,b,q || C,m,M
j || i,R,b,j || i,R,j || f's j ~j bans one person, F's j sets +b ~j:*!*@*
k || K || K
n || N,n || N,n || f's n bans one person, F's n sets +b ~n:*!*@*
i || i,V || i,V

EDIT: How do I make this table more table-like?

Bock

2007-05-08 01:03

reporter   ~0014036

just do printscreen on notepad :P

syzop

2007-05-08 04:06

administrator   ~0014044

1. nah.. I indeed understand your confusion, but.. we should keep it as-is instead of doing major rework, otherwise people never get used to it (I'd hate it myself too). It also has various other effects in the code when separated. So.. no.
2. I guess. We could add this to another request which asks for a ~q ban on textflood (was some other bugid...), IIRC the suggestion was to use #bq btw, and not just #q or #n. Details...
3. hm, I see... :)

aquanight

2007-05-08 22:16

reporter   ~0014056

I'd actually think 3) is an interesting thing to have. Especially as non-chanopped users can silently invite others (maybe I should file a seperate bug on that so we can get it changed?).

As for seperating global from per-user. No. We don't need more complicated stuff with floodprot et al. As it is, we only have t as per user anyway. Maybe if we had more per-user stuff to the point that +f syntax started looking like weirdly valid perl... then maybe.

Shining Phoenix

2007-05-09 03:32

reporter   ~0014058

Last edited: 2007-05-18 18:28

Aquanight:
Maybe if we had more per-user stuff to the point that +f syntax started looking like weirdly valid perl... then maybe.

Me:
Huh?

One Binary Mode Option:

Trigger -|| Actions

c (user) || C,m,M,b,bq
C (chan) || C,m,M
i (user) || i,V
I (chan) || i,V
j (chan) || i,R,b,bj
J (user) || i,R,bj
k (chan) || K
K (user) || K
m (chan) || m,M
n (chan) || N,bn
N (user) || N,bn
t (user) || kick,b,bq

Related reports: 2108 and 2380...I can't remember if 2380 is the something I forgot or not =\

syzop

2007-05-09 15:54

administrator   ~0014063

[quote]I'd actually think 3) is an interesting thing to have. Especially as
non-chanopped users can silently invite others (maybe I should file a
seperate bug on that so we can get it changed?).[/quote]
changed? why? it's normal...
but yeah, offtopic for here :P

Shining Phoenix

2007-05-10 22:06

reporter   ~0014084

Last edited: 2007-05-18 18:31

I don't like a supercomplexlongbabyeating parameter, coders don't want to split f into multiple modes and everyone wants more features.

Hence, I have an idea.
* People run away

One List Mode Option:

e.g. /mode channel +fff 4t#b:5 3j#R:5 5j:5 <--Two join flood controls ;)
e.g. /mode channel +f <--returns a list of flood controls

Side components of this:
/mode channel -f ?n* <-- remove all nickchange flood controls
/mode channel -f * <-- remove all flood controls
/mode channel +f *:5 <-- set the bit after the colon for all of them to 5
/mode channel +f *j*:5 <-- set the bit after the colon for all join flood controls to 5

A Two List Mode Option would be analagous to the Two Binary Mode Option.

tabrisnet

2007-05-18 18:29

reporter   ~0014172

Y'know, validating chmode +f isn't _that_ hard. If anybody wants an example, there is a validate_chmodef in SrSv::Unreal::Validate in SurrealServices. As far as I can tell, it fits the exact same rules as what the IRCd does (via reverse-engineering and empirical testing).

Is the question making it easier for coders, or for users? Hell, we could just look at a simpler construction method. Consider a webpage that decodes and constructs new chmode f parameters.
Also, splitting it into multiple pieces leaves the possibilities of conflicts, and reordering during resyncs.

tabrisnet

2007-05-18 18:30

reporter   ~0014173

Also, what's the point of ~n:*!*@* when we already have +N ?

Shining Phoenix

2007-05-18 18:32

reporter   ~0014174

Last edited: 2007-08-08 21:09

Question: What do you mean by validate?

Note: ~n:* stops users with no status, N stops users with halfop or lower.

4. A related suggestion: A badwords trigger. When there are more than x badwords in y seconds, from a (user or whole channel?), do something.
e.g: +f [15g#G60]:60

Ok, ignore point 1 in the original suggestion and the "Two Mode Binary Modes", "One List Mode" and "Two List Modes Options" in notes.

5. The suggestion that was in this line is now redundant.

Shining Phoenix

2007-08-06 22:41

reporter   ~0014690

6. ACTION trigger
As far as I know the implementation of an ACTION trigger would probably be a lot like the CTCP trigger, so it shouldn't be hard to do.
This is specifically to deal with slap floods, because that is what a flood of ACTION would be. If someone starts clicking slap over and over, or their script goes off, I would like it if the server kicks, or bans and kicks, them.

syzop

2015-07-13 22:36

administrator   ~0018495

I don't think +b ~n is a good idea. If 50 drones are nick-change flooding you don't want 50 bans, you want a single +N. And I don't want to add a two-step process / two-limits either. Also, we have set::anti-flood::nick-flood for individual control anyway.

+b ~q could be done in case of 't' (but not 'm'.. for same reason as +N above), that would be more friendly way of limiting a user.. rather than kickbanning them.

Invite flood. Don't think I've really seen that before. Hmm. Unless you mean one user mass-/inviting people to him/her own channel, but we can add some other method to counter that (actually it may already be handled by MAXTARGETS throttling).

Action I don't see any reason to implement.

All the rest.. let's keep it as-is.

Issue History

Date Modified Username Field Change
2007-05-07 22:24 Shining Phoenix New Issue
2007-05-07 22:24 Shining Phoenix Note Added: 0014031
2007-05-07 22:25 Shining Phoenix Note Edited: 0014031
2007-05-07 22:25 Shining Phoenix Note Edited: 0014031
2007-05-07 22:27 Shining Phoenix Note Edited: 0014031
2007-05-08 01:03 Bock Note Added: 0014036
2007-05-08 03:38 stskeeps Status new => feedback
2007-05-08 04:06 syzop Note Added: 0014044
2007-05-08 22:16 aquanight Note Added: 0014056
2007-05-09 03:32 Shining Phoenix Note Added: 0014058
2007-05-09 03:38 Shining Phoenix Note Edited: 0014058
2007-05-09 04:00 Shining Phoenix Note Edited: 0014058
2007-05-09 04:19 Shining Phoenix Note Edited: 0014058
2007-05-09 07:28 syzop Relationship added related to 0002108
2007-05-09 15:27 Shining Phoenix Note Edited: 0014058
2007-05-09 15:54 syzop Note Added: 0014063
2007-05-10 22:06 Shining Phoenix Note Added: 0014084
2007-05-18 18:27 Shining Phoenix Note Edited: 0014031
2007-05-18 18:28 Shining Phoenix Note Edited: 0014058
2007-05-18 18:28 Shining Phoenix Note Edited: 0014084
2007-05-18 18:29 tabrisnet Note Added: 0014172
2007-05-18 18:30 tabrisnet Note Added: 0014173
2007-05-18 18:31 Shining Phoenix Note Edited: 0014084
2007-05-18 18:32 Shining Phoenix Note Added: 0014174
2007-05-18 18:33 Shining Phoenix Note Edited: 0014174
2007-05-25 07:14 Shining Phoenix Note Edited: 0014174
2007-05-25 07:41 Shining Phoenix Note Edited: 0014174
2007-05-25 07:50 Shining Phoenix Note Edited: 0014174
2007-05-25 23:18 Shining Phoenix Note Edited: 0014174
2007-08-06 22:34 Shining Phoenix Note Edited: 0014174
2007-08-06 22:41 Shining Phoenix Note Added: 0014690
2007-08-08 21:09 Shining Phoenix Note Edited: 0014174
2008-06-28 19:39 nate Status feedback => assigned
2008-06-28 19:39 nate Assigned To => nate
2008-06-28 19:41 nate Relationship added has duplicate 0003709
2013-01-09 09:57 syzop Assigned To nate =>
2013-01-09 09:57 syzop Status assigned => feedback
2015-07-13 22:36 syzop Note Added: 0018495