mirror of
https://github.com/glest/glest-source.git
synced 2025-08-11 19:04:00 +02:00
- headless server will only give network status info to the locahost now and not on any other ip (for security purposes)
This commit is contained in:
@@ -73,9 +73,12 @@ ServerInterface::ServerInterface(bool publishEnabled) :GameNetworkInterface() {
|
|||||||
lastGlobalLagCheckTime = 0;
|
lastGlobalLagCheckTime = 0;
|
||||||
masterserverAdminRequestLaunch = false;
|
masterserverAdminRequestLaunch = false;
|
||||||
|
|
||||||
|
// This is an admin port listening only on the localhost intended to
|
||||||
|
// give current connection status info
|
||||||
serverSocketAdmin = new ServerSocket(true);
|
serverSocketAdmin = new ServerSocket(true);
|
||||||
serverSocketAdmin->setBlock(false);
|
serverSocketAdmin->setBlock(false);
|
||||||
serverSocketAdmin->setBindPort(Config::getInstance().getInt("ServerAdminPort", intToStr(GameConstants::serverAdminPort).c_str()));
|
serverSocketAdmin->setBindPort(Config::getInstance().getInt("ServerAdminPort", intToStr(GameConstants::serverAdminPort).c_str()));
|
||||||
|
serverSocketAdmin->setBindSpecificAddress("127.0.0.1");
|
||||||
serverSocketAdmin->listen(5);
|
serverSocketAdmin->listen(5);
|
||||||
|
|
||||||
maxFrameCountLagAllowed = Config::getInstance().getInt("MaxFrameCountLagAllowed", intToStr(maxFrameCountLagAllowed).c_str());
|
maxFrameCountLagAllowed = Config::getInstance().getInt("MaxFrameCountLagAllowed", intToStr(maxFrameCountLagAllowed).c_str());
|
||||||
|
@@ -234,6 +234,7 @@ protected:
|
|||||||
|
|
||||||
bool portBound;
|
bool portBound;
|
||||||
int boundPort;
|
int boundPort;
|
||||||
|
string bindSpecificAddress;
|
||||||
|
|
||||||
static int externalPort;
|
static int externalPort;
|
||||||
static int ftpServerPort;
|
static int ftpServerPort;
|
||||||
@@ -269,6 +270,8 @@ public:
|
|||||||
int getBindPort() const { return boundPort; }
|
int getBindPort() const { return boundPort; }
|
||||||
bool isPortBound() const { return portBound; }
|
bool isPortBound() const { return portBound; }
|
||||||
|
|
||||||
|
void setBindSpecificAddress(string value) { bindSpecificAddress = value;}
|
||||||
|
|
||||||
static void setExternalPort(int port) { externalPort = port; }
|
static void setExternalPort(int port) { externalPort = port; }
|
||||||
static int getExternalPort() { return externalPort; }
|
static int getExternalPort() { return externalPort; }
|
||||||
|
|
||||||
|
@@ -2046,6 +2046,7 @@ ServerSocket::ServerSocket(bool basicMode) : Socket() {
|
|||||||
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d] basicMode = %d\n",__FILE__,__FUNCTION__,__LINE__,basicMode);
|
if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"In [%s::%s Line: %d] basicMode = %d\n",__FILE__,__FUNCTION__,__LINE__,basicMode);
|
||||||
|
|
||||||
this->basicMode = basicMode;
|
this->basicMode = basicMode;
|
||||||
|
this->bindSpecificAddress = "";
|
||||||
//printf("SERVER SOCKET CONSTRUCTOR\n");
|
//printf("SERVER SOCKET CONSTRUCTOR\n");
|
||||||
//MutexSafeWrapper safeMutexUPNP(&ServerSocket::mutexUpnpdiscoverThread,CODE_AT_LINE);
|
//MutexSafeWrapper safeMutexUPNP(&ServerSocket::mutexUpnpdiscoverThread,CODE_AT_LINE);
|
||||||
//ServerSocket::upnpdiscoverThread = NULL;
|
//ServerSocket::upnpdiscoverThread = NULL;
|
||||||
@@ -2178,7 +2179,12 @@ void ServerSocket::bind(int port) {
|
|||||||
//sockaddr structure
|
//sockaddr structure
|
||||||
sockaddr_in addr;
|
sockaddr_in addr;
|
||||||
addr.sin_family= AF_INET;
|
addr.sin_family= AF_INET;
|
||||||
addr.sin_addr.s_addr= INADDR_ANY;
|
if(this->bindSpecificAddress != "") {
|
||||||
|
addr.sin_addr.s_addr= inet_addr(this->bindSpecificAddress.c_str());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
addr.sin_addr.s_addr= INADDR_ANY;
|
||||||
|
}
|
||||||
addr.sin_port= htons(port);
|
addr.sin_port= htons(port);
|
||||||
|
|
||||||
int val = 1;
|
int val = 1;
|
||||||
|
Reference in New Issue
Block a user