Factor out UDP broadcast lookup

This commit is contained in:
Kp 2015-03-07 17:20:41 +00:00
parent 650831c0fe
commit dcb2fc6524

View file

@ -533,6 +533,14 @@ const sockaddr_resolve_family_dispatch_t<passthrough_static_apply<udp_dns_fillad
} }
static void udp_init_broadcast_addresses()
{
udp_dns_filladdr(GBcast, UDP_BCAST_ADDR, UDP_PORT_DEFAULT);
#ifdef IPv6
udp_dns_filladdr(GMcast_v6, UDP_MCASTv6_ADDR, UDP_PORT_DEFAULT);
#endif
}
// Open socket // Open socket
static int udp_open_socket(RAIIsocket &sock, int port) static int udp_open_socket(RAIIsocket &sock, int port)
{ {
@ -1211,10 +1219,7 @@ void net_udp_list_join_game()
nm_messagebox(TXT_WARNING, 1, TXT_OK, "Cannot open default port!\nYou can only scan for games\nmanually."); nm_messagebox(TXT_WARNING, 1, TXT_OK, "Cannot open default port!\nYou can only scan for games\nmanually.");
// prepare broadcast address to discover games // prepare broadcast address to discover games
udp_dns_filladdr(GBcast, UDP_BCAST_ADDR, UDP_PORT_DEFAULT); udp_init_broadcast_addresses();
#ifdef IPv6
udp_dns_filladdr(GMcast_v6, UDP_MCASTv6_ADDR, UDP_PORT_DEFAULT);
#endif
change_playernum_to(1); change_playernum_to(1);
N_players = 0; N_players = 0;
@ -3989,10 +3994,7 @@ static int net_udp_start_game(void)
return 0; return 0;
// prepare broadcast address to announce our game // prepare broadcast address to announce our game
udp_dns_filladdr(GBcast, UDP_BCAST_ADDR, UDP_PORT_DEFAULT); udp_init_broadcast_addresses();
#ifdef IPv6
udp_dns_filladdr(GMcast_v6, UDP_MCASTv6_ADDR, UDP_PORT_DEFAULT);
#endif
d_srand( (fix)timer_query() ); d_srand( (fix)timer_query() );
Netgame.protocol.udp.GameID=d_rand(); Netgame.protocol.udp.GameID=d_rand();