So on ss13 branch /TG/Station, we have IsBanned() overridden to handle our own ban system, randomly we get alerts about blank information given in inbanned().
Current IsBanned() (link is a perma link, and the data will not change when the code does)
https://github.com/tgstation/-tg-station/blob/ 5529222b624ac713fa319b3befa46c18b9c1d466/code/modules/admin/ IsBanned.dm
Its almost always that both the ckey and computerid are blank, so we will see messages like this: http://i.imgur.com/2dJoNU1.png
Numbered Steps to Reproduce Problem:
Host world with 50 or more connections.
Restart the round.
Code Snippet (if applicable) to Reproduce Problem:
world/IsBanned(key,address,computer_id)
if (!key || !address || !computer_id)
world << "Blank information in isbanned() [key]|[address]|[computer_id]"
Expected Results:
IsBanned() not getting called with null arguments
Actual Results:
IsBanned() getting called with null arguments
Does the problem occur:
Every time? Or how often?
About once for every 15 clients, how ever you won't see the error message if you haven't connected yet compared to the other clients.
In other games?
Unknown
In other user accounts?
Unknown
On other computers?
Unknown
When does the problem NOT occur?
Unknown
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
Unknown, Issue existed as early as april of 2013
Workarounds:
Check ckey/computer_id/Reject connections with null data.
Other notes:
This may be related to an issue where our players will report getting "another client has logged in with your byond account. connection closed" or some other shit like that on world restart as if they had opened another connection to the server despite not opening one.
I'm mildly concerned about this bug in regard to servers that don't check for null info and reject connections, as this could be used to ban evade (maybe even ban evade DD bans) if somebody figures out how to reproduce this bug at will.