Hello,

I have a situation where I want a host to communicate with remote peers 
normally, while at the same time ignoring incoming connection requests. I could 
of course put my application in a mode where I disconnect immediately peers for 
which I receive a CONNECT event, but I'd rather leave the peers alone and make 
sure I get connect events when I am ready to accept them. I was thinking that I 
could "short-circuit" connect commands. This could be made with a rudimentary 
password mechanism, as such (of course this requires the new connect data 
introduced in 1.3.0):

Add this in the host structure (and add proper initialization where required)

Typedef struct _EnetHost
{
                ...
                enet_uint32 sessionPassword;
};

Add the following at the beginning of enet_protocol_handle_connect():

switch( host-> sessionPassword)
{
                case 0: // session is opened, proceed
                break;

                case 0xffffffff: // session is locked, ignore all requests
                return NULL;

                default: // session is password-protected, proceed only if 
incoming request data matches password
                if( ENET_NET_TO_HOST_32( command->connect.data) != 
host->sessionPassword)
                                return NULL;
}

Is this the proper place and way to do what I want, or should I expect bad 
things from this?

Regards,


Benoit.

_______________________________________________
ENet-discuss mailing list
[email protected]
http://lists.cubik.org/mailman/listinfo/enet-discuss

Reply via email to