Added ipx_check_ready_to_join for driver element CheckReadyToJoin, making sure communication between UDP/IP clients

This commit is contained in:
zicodxx 2007-08-20 21:33:26 +00:00
parent 9215de7d52
commit 91c393fb54
5 changed files with 22 additions and 0 deletions

View file

@ -1,5 +1,9 @@
D2X-Rebirth Changelog
20070821
--------
arch/linux/linuxnet.c, arch/win32/winnet.c, include/ipx.h, main/network.c: Added ipx_check_ready_to_join for driver element CheckReadyToJoin, making sure communication between UDP/IP clients
20070816
--------
main/inferno.c: moved first call of gr_set_mode to before font loading, so OpenGL is initialised before it tries to load textures

View file

@ -260,6 +260,12 @@ void ipx_send_internetwork_packet_data( ubyte * data, int datasize, ubyte * serv
}
}
int ipx_check_ready_to_join(ubyte *server, ubyte *node){
if (!driver->CheckReadyToJoin)
return 1;
return driver->CheckReadyToJoin(server,node);
}
int ipx_change_default_socket( ushort socket_number )
{
if ( !ipx_installed ) return -3;

View file

@ -243,6 +243,12 @@ void ipx_send_internetwork_packet_data( ubyte * data, int datasize, ubyte * serv
}
}
int ipx_check_ready_to_join(ubyte *server, ubyte *node){
if (!driver->CheckReadyToJoin)
return 1;
return driver->CheckReadyToJoin(server,node);
}
int ipx_change_default_socket( ushort socket_number )
{
if ( !ipx_installed ) return -3;

View file

@ -51,6 +51,8 @@ extern int ipx_init(int socket_number);
extern void ipx_close(void);
extern int ipx_check_ready_to_join(ubyte *server, ubyte *node);
extern int ipx_change_default_socket( ushort socket_number );
// Returns a pointer to 6-byte address

View file

@ -2390,6 +2390,10 @@ void network_process_packet(ubyte *data, int length )
}
mprintf( (0, "Got REQUEST from '%s'\n", their->player.callsign ));
if (!ipx_check_ready_to_join(their->player.network.ipx.server,their->player.network.ipx.node))
break;
if (Network_status == NETSTAT_STARTING)
{
// Someone wants to join our game!