MantisBT - Zandronum
View Issue Details
0002431Zandronum[All Projects] Bugpublic2015-09-03 16:432018-09-30 21:55
Zalewa 
Torr Samaho 
normalmajoralways
closedfixed 
MicrosoftWindowsXP/Vista/7
3.0-beta 
3.03.0 
0002431: Rapid PUKENAME on a net script will get you kicked from the server for "client command flood".
Kick threshold for client command flood is too strict when it comes to pukename. Modifications may bind pukename ccmd to a key to provide extended functionality to the player. An example of this is in ZDCMP2 where grenade throw is a pukename that can be bound to a key. A player who rapidly presses the bound key will get kicked out from the server very quickly. Flood kick thresholds shouldn't be so strict. I've provided an example where puking an empty script will get you kicked out too. I haven't verified if puke ccmd suffers from the same problem.
1. Download the attached clientflood.pk3.
2. Load it up on a server.
3. Join this server.
4. Run "PUKENAME abc" several times in the console in rapid succession.
No tags attached.
related to 0002519closed Torr Samaho some scripts in this wad dont work properly online 
? clientflood.pk3 (537) 2015-09-03 16:43
/tracker/file_download.php?file_id=1637&type=bug
Issue History
2015-09-03 16:43ZalewaNew Issue
2015-09-03 16:43ZalewaFile Added: clientflood.pk3
2015-09-03 17:03DuskNote Added: 0013385
2015-09-04 08:59ZzZomboNote Added: 0013388
2015-09-04 14:29DuskNote Added: 0013391
2016-11-20 21:04Torr SamahoProduct Version3.0 => 3.0-beta
2016-11-20 21:04Torr SamahoTarget Version => 3.0
2016-11-20 21:06Torr SamahoNote Added: 0016225
2016-11-20 21:07Torr SamahoRelationship addedrelated to 0002519
2016-11-20 21:08Torr SamahoAssigned To => Torr Samaho
2016-11-20 21:08Torr SamahoStatusnew => needs testing
2016-11-23 18:05ZalewaFile Added: forbidden.pk3
2016-11-23 18:08ZalewaNote Added: 0016303
2016-11-23 18:10ZalewaNote Deleted: 0016303
2016-11-23 18:10ZalewaFile Deleted: forbidden.pk3
2016-11-23 18:21ZalewaNote Added: 0016304
2016-11-23 18:30Torr SamahoNote Added: 0016305
2016-12-08 04:23Ru5tK1ngNote Added: 0016449
2016-12-08 04:23Ru5tK1ngStatusneeds testing => resolved
2016-12-08 04:23Ru5tK1ngResolutionopen => fixed
2016-12-08 04:23Ru5tK1ngFixed in Version => 3.0
2018-09-30 21:55Blzut3Statusresolved => closed

Notes
(0013385)
Dusk   
2015-09-03 17:03   
puke and pukename use the same netcode, thus puke must be affected too. Which in turn suggests this problem affects earlier Zandronum versions as well.
(0013388)
ZzZombo   
2015-09-04 08:59   
But, since it uses strings that consume more space, it's evident only there, I think.
(0013391)
Dusk   
2015-09-04 14:29   
What? Names are internally numbers. No strings are sent.
(0016225)
Torr Samaho   
2016-11-20 21:06   
There shouldn't be any flood protection for puking valid scripts, but the server will kick clients that flood puking scripts that are not allowed to be puked (which legit clients shouldn't do since they will not request the server to puke such a script). Possibly there was a bug that caused this. Can you check whether it still happens for you in the latest beta?
(0016304)
Zalewa   
2016-11-23 18:21   
I tested in 3.0-alpha-r161030-2038 and the problem seems to be fixed. I no longer get kicked by puking NET scripts.

I don't get kicked for puking non-NET scripts either, unless I should be doing this at the rate that's impossible to do by repeating UP+ENTER in the console.
(0016305)
Torr Samaho   
2016-11-23 18:30   
Quote from Zalewa

I don't get kicked for puking non-NET scripts either, unless I should be doing this at the rate that's impossible to do by repeating UP+ENTER in the console.

A legit client notices that a non-NET script cannot be puked and thus will simply not request the server to do so. The flood kick will only happen if the client is modified to ignore the check and request the puking anyway.
(0016449)
Ru5tK1ng   
2016-12-08 04:23   
I'll mark this as resolved based upon the above check with 3.0-alpha-r161030.