Bug #426

"GetClientAuthString" reported: Client 11 is not connected

Added by Mike Lebson 70 days ago. Updated 6 days ago.

Status:Resolved Start:10/27/2008
Priority:Normal Due date:
Assigned to:Erik Minekus % Done:

100%

Category:Game Plugin
Target version:-

Description

L 10/26/2008 - 23:48:03: [SM] Native "GetClientAuthString" reported: Client 11 is not connected
L 10/26/2008 - 23:48:03: [SM] Displaying call stack trace for plugin "sourcebans.smx":
L 10/26/2008 - 23:48:03: [SM] [0] Line 474, D:\Documents\SourceBans\trunk\game_upload\addons\sourcemod\scripting\sourcebans.sp::(null)()
L 10/26/2008 - 23:48:03: [SM] [1] Line 1744, D:\Documents\SourceBans\trunk\game_upload\addons\sourcemod\scripting\sourcebans.sp::(null)()

Running SourceMod 1.1.0-hg2374
and SourceBans 1.3.5 r175
and MetaMod:Source 1.6.2.703

Associated revisions

Revision 194
Added by Erik Minekus 6 days ago

History

Updated by Adam 'HiJacker' Lucansky 70 days ago

Im not sure, but this may happend, if client disconnect, and server try to to do command on client which already disconnected.

Updated by Mike Lebson 70 days ago

Yup that is exactly what it means.

Updated by Recon _ 70 days ago

What happened is that the plugin tried to get the steam id of a player after they disconnected.

I am tempted to say that it's probably nothing, but it should be investigated. There's a chance that a ban could be failing because the steam id couldn't be retrieved. Or it could be a client connecting then disconnecting really fast, which could cause the ban check to fail if a steam id can't be found.

Updated by Mike Lebson 70 days ago

I know exactly what is causing it, but there are a lot of people that would freak out over such a simple thing.

It involves 1 extra check to avoid it and get it out of the error logs.

Updated by Recon _ 65 days ago

Can you post the code so we don't have to go spend 10 minutes figuring it out ;)

Updated by Mike Lebson 65 days ago

GetClientAuthString(target, authid, sizeof(authid));

On line 474 is done without checking if(target > 0 && IsClientInGame(target))

So right before that, do

if(target <= 0 || !IsClientInGame(target))
return;

Though, you'll probably want to deal with that stuff, my code is just an example.

Updated by Lane Babuder 27 days ago

  • Status changed from New to Assigned
  • Assigned to set to Erik Minekus

Updated by Mike Lebson 27 days ago

I haven't gotten this in a long time so it's probably a rare and insignificant error anyway.

Updated by Erik Minekus 6 days ago

  • Status changed from Assigned to Resolved
  • % Done changed from 0 to 100

Fixed in r194.

Also available in: Atom PDF