Okay, thanks
I was thinking of a situation where I'd request x potentially
exploitable cvars at certain times, without waiting for replies in
between and relying on them to come back in the right order.  To be on
the safe side, I'll store information on the currently checking cvar
per-client, and move on to the next one as the check is returned.

Regards,
Predatory Kangaroo

On 8/12/05, Alfred Reynolds <[EMAIL PROTECTED]> wrote:
> In general no. Each client is independent so you can have multiple
> outstanding requests to different clients without a problem. For each
> client the network stream should remain ordered so in theory the
> responses for a particular client would be in order but it may be
> possible that they get out of order.
> 
> I have imagined the usage scenario to be a background process in the
> server slowly walking a list of cvars over and over for each client
> (with some randomness to prevent clients from knowing when to revert a
> cvar).
> 
> - Alfred
> 
> ----Original Message----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of Predatory
> Kangaroo Sent: Thursday, August 11, 2005 8:54 PM To:
> [email protected] Subject: Re: [hlds_apps] New engine
> API for CVAR queries
> 
> > Quick question about this call/callback:
> >
> > Seeing as it's a callback without any context in the callback, can we
> > be assured that the replies are going to arrive in the order they
> > were requested?
> >
> > Regards,
> > Predatory Kangaroo
> >
> > On 8/12/05, Alfred Reynolds <[EMAIL PROTECTED]> wrote:
> > > With the Half-Life 1: Engine release today we added a new API
> > > function
> > > to allow a game server to query the value of clients CVAR settings.
> > >
> > > There was a new function added to the end of enginefuncs_t:
> > >         void (*pfnQueryClientCvarValue)( const edict_t *player,
> > > const
> > > char *cvarName );
> > >
> > > Calling this function requests the value of cvarName from player.
> > > The result is returned via a callback from NEW_DLL_FUNCTIONS, here
> > > is the complete NEW_DLL_FUNCTIONS definition:
> > >
> > > typedef struct
> > > {
> > >         // Called right before the object's memory is freed.
> > >         // Calls its destructor.
> > >         void                    (*pfnOnFreeEntPrivateData)(edict_t
> > >         *pEnt); void                    (*pfnGameShutdown)(void);
> > >         int                     (*pfnShouldCollide)( edict_t
> > > *pentTouched, edict_t *pentOther );
> > >         void                    (*pfnCvarValue)( const edict_t
> > > *pEnt, const char *value ); } NEW_DLL_FUNCTIONS;
> > >
> > > When the client responds to the cvar request you will get a callback
> > > to
> > > pfnCvarValue() with the edict of the player who is responding and
> > > the cvars values.
> > >
> > > This interface is implemented using a new server engine to client
> > > engine network command (so there will be some delay from the request
> > > to the response).  This new network protocol has NOT been versioned
> > > (to minimise the impact of its release), if you wish to use it you
> > > must make sure your users have an updated server before they try to
> > > use it.
> > >
> > > - Alfred
> > >
> > >
> > > _______________________________________________
> > > hlds_apps mailing list
> > > [email protected]
> > > http://list.valvesoftware.com/mailman/listinfo/hlds_apps
> > >
> >
> > _______________________________________________
> > hlds_apps mailing list
> > [email protected]
> > http://list.valvesoftware.com/mailman/listinfo/hlds_apps
> 
> _______________________________________________
> hlds_apps mailing list
> [email protected]
> http://list.valvesoftware.com/mailman/listinfo/hlds_apps
>

_______________________________________________
hlds_apps mailing list
[email protected]
http://list.valvesoftware.com/mailman/listinfo/hlds_apps

Reply via email to