mirror of
https://github.com/ddnet/ddnet.git
synced 2024-11-09 09:38:19 +00:00
Fixes a bug where econ was exposed publicly when ec_bindaddr was set to localhost
Also implements the original intention of 85f5e9c
that is to disable
econ if ec_binaddr is invalid.
This commit is contained in:
parent
9f278979e5
commit
0ad1c08c22
|
@ -70,18 +70,18 @@ void CEcon::Init(CConfig *pConfig, IConsole *pConsole, CNetBan *pNetBan)
|
||||||
}
|
}
|
||||||
|
|
||||||
NETADDR BindAddr;
|
NETADDR BindAddr;
|
||||||
if(g_Config.m_EcBindaddr[0] == '\0')
|
if(g_Config.m_EcBindaddr[0] && net_host_lookup(g_Config.m_EcBindaddr, &BindAddr, NETTYPE_ALL) == 0)
|
||||||
{
|
{
|
||||||
mem_zero(&BindAddr, sizeof(BindAddr));
|
// got bindaddr
|
||||||
|
BindAddr.port = g_Config.m_EcPort;
|
||||||
}
|
}
|
||||||
else if(net_host_lookup(g_Config.m_EcBindaddr, &BindAddr, NETTYPE_ALL) != 0)
|
else
|
||||||
{
|
{
|
||||||
char aBuf[256];
|
char aBuf[256];
|
||||||
str_format(aBuf, sizeof(aBuf), "The configured bindaddr '%s' cannot be resolved.", g_Config.m_Bindaddr);
|
str_format(aBuf, sizeof(aBuf), "The configured bindaddr '%s' cannot be resolved.", g_Config.m_EcBindaddr);
|
||||||
Console()->Print(IConsole::OUTPUT_LEVEL_STANDARD, "econ", aBuf);
|
Console()->Print(IConsole::OUTPUT_LEVEL_STANDARD, "econ", aBuf);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
BindAddr.type = NETTYPE_ALL;
|
|
||||||
BindAddr.port = g_Config.m_EcPort;
|
|
||||||
|
|
||||||
if(m_NetConsole.Open(BindAddr, pNetBan))
|
if(m_NetConsole.Open(BindAddr, pNetBan))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue