[quake3-bugzilla] [Bug 5450] SV_SetUserinfo() incomplete?

bugzilla-daemon at icculus.org bugzilla-daemon at icculus.org
Wed Apr 4 15:28:21 EDT 2012


https://bugzilla.icculus.org/show_bug.cgi?id=5450

Zack "ZTurtleMan" Middleton <ZTurtleMan at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |ZTurtleMan at gmail.com
         Resolution|                            |WONTFIX

--- Comment #1 from Zack "ZTurtleMan" Middleton <ZTurtleMan at gmail.com> 2012-04-04 15:28:19 EDT ---
Yes, there are reasons.

SV_SetUserinfo is called when the server drops client or game change a client's
userinfo string. Game either gets GAME_CLIENT_DISCONNECT or caused the changed.

SV_UpdateUserinfo_f is called when client sends server an updated userinfo
string, server calls GAME_CLIENT_USERINFO_CHANGED. Comments above
ClientUserinfoChanged in game describes this behavior.

If the server told game userinfo changed when game caused it, might get stuck
in a loop (q3a doesn't call trap_SetUserinfo inside
GAME_CLIENT_USERINFO_CHANGED, so it would be fine for it but mods might). Game
can call it's own ClientUserinfoChanged function, so I see no case where it
would be necessary (or desirable really) to add vm call to SV_SetUserinfo.

Calling SV_UserinfoChanged in SV_SetUserinfo seems reasonable, I don't think it
would break anything. However, does game have any business changing a client's
"rate", "snaps", "cl_voip", or "ip"? I don't think so.

If you modify the server to load an external module, you could add a
SV_UpdateUserinfo function.

-- 
Configure bugmail: https://bugzilla.icculus.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the quake3-bugzilla mailing list