about summary refs log tree commit diff
path: root/src/engine
diff options
context:
space:
mode:
authoroy <Tom_Adams@web.de>2012-01-06 19:17:14 +0100
committeroy <Tom_Adams@web.de>2012-01-06 19:17:14 +0100
commit29738552a69e5b74410f2667e81243593cc26233 (patch)
treee5d23361c13d44c87be64ccf929d80d008ac6aaa /src/engine
parent78bb0e3d8c6c4ea35bc35aada6dfb780930570b2 (diff)
downloadzcatch-29738552a69e5b74410f2667e81243593cc26233.tar.gz
zcatch-29738552a69e5b74410f2667e81243593cc26233.zip
made bindaddr config work for client and master too. Closes #909
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/client/client.cpp7
-rw-r--r--src/engine/server/server.cpp2
-rw-r--r--src/engine/shared/config_variables.h2
3 files changed, 7 insertions, 4 deletions
diff --git a/src/engine/client/client.cpp b/src/engine/client/client.cpp
index a9c86060..34923f28 100644
--- a/src/engine/client/client.cpp
+++ b/src/engine/client/client.cpp
@@ -1738,8 +1738,11 @@ void CClient::Run()
 	// open socket
 	{
 		NETADDR BindAddr;
-		mem_zero(&BindAddr, sizeof(BindAddr));
-		BindAddr.type = NETTYPE_ALL;
+		if(g_Config.m_Bindaddr[0] == 0 || net_host_lookup(g_Config.m_Bindaddr, &BindAddr, NETTYPE_ALL) != 0)
+		{
+			mem_zero(&BindAddr, sizeof(BindAddr));
+			BindAddr.type = NETTYPE_ALL;
+		}
 		if(!m_NetClient.Open(BindAddr, 0))
 		{
 			dbg_msg("client", "couldn't start network");
diff --git a/src/engine/server/server.cpp b/src/engine/server/server.cpp
index de84ad35..6e63f747 100644
--- a/src/engine/server/server.cpp
+++ b/src/engine/server/server.cpp
@@ -1271,7 +1271,7 @@ int CServer::Run()
 
 	// start server
 	NETADDR BindAddr;
-	if(g_Config.m_SvBindaddr[0] && net_host_lookup(g_Config.m_SvBindaddr, &BindAddr, NETTYPE_ALL) == 0)
+	if(g_Config.m_Bindaddr[0] && net_host_lookup(g_Config.m_Bindaddr, &BindAddr, NETTYPE_ALL) == 0)
 	{
 		// sweet!
 		BindAddr.port = g_Config.m_SvPort;
diff --git a/src/engine/shared/config_variables.h b/src/engine/shared/config_variables.h
index d92073d7..f76e69c8 100644
--- a/src/engine/shared/config_variables.h
+++ b/src/engine/shared/config_variables.h
@@ -77,7 +77,7 @@ MACRO_CONFIG_INT(GfxThreaded, gfx_threaded, 1, 0, 1, CFGFLAG_SAVE|CFGFLAG_CLIENT
 MACRO_CONFIG_INT(InpMousesens, inp_mousesens, 100, 5, 100000, CFGFLAG_SAVE|CFGFLAG_CLIENT, "Mouse sensitivity")
 
 MACRO_CONFIG_STR(SvName, sv_name, 128, "unnamed server", CFGFLAG_SERVER, "Server name")
-MACRO_CONFIG_STR(SvBindaddr, sv_bindaddr, 128, "", CFGFLAG_SERVER, "Address to bind the server to")
+MACRO_CONFIG_STR(Bindaddr, bindaddr, 128, "", CFGFLAG_CLIENT|CFGFLAG_SERVER|CFGFLAG_MASTER, "Address to bind the client/server to")
 MACRO_CONFIG_INT(SvPort, sv_port, 8303, 0, 0, CFGFLAG_SERVER, "Port to use for the server")
 MACRO_CONFIG_INT(SvExternalPort, sv_external_port, 0, 0, 0, CFGFLAG_SERVER, "External port to report to the master servers")
 MACRO_CONFIG_STR(SvMap, sv_map, 128, "dm1", CFGFLAG_SERVER, "Map to use on the server")