- move linux network interface names into ini file for easier management in the future
This commit is contained in:
parent
c5aff25a94
commit
ad4314fb29
|
@ -66,6 +66,7 @@ MaxLights=3
|
|||
Masterserver=http://master.megaglest.org/
|
||||
NetPlayerName=newbie
|
||||
NetworkConsistencyChecks=true
|
||||
NetworkInterfaces=lo,eth,wlan,vlan,vboxnet,br-lan,br-gest,enp0s,enp1s,enp2s,enp3s,enp4s,enp5s,enp6s,enp7s,enp8s,enp9s
|
||||
PhotoMode=false
|
||||
PortList=61357,61367,61377,61387,61397
|
||||
PortServer=61357
|
||||
|
|
|
@ -4615,6 +4615,14 @@ int glestMain(int argc, char** argv) {
|
|||
removeFile(binaryNameOld);
|
||||
}
|
||||
|
||||
string netInterfaces = config.getString("NetworkInterfaces","");
|
||||
if(netInterfaces != "") {
|
||||
//printf("Using network interfaces: %s\n",netInterfaces.c_str());
|
||||
std::vector<std::string> intfList;
|
||||
Tokenize(netInterfaces,intfList,",");
|
||||
Socket::setIntfTypes(intfList);
|
||||
}
|
||||
|
||||
if(hasCommandArgument(argc, argv,GAME_ARGS[GAME_ARG_USE_PORTS]) == true) {
|
||||
int foundParamIndIndex = -1;
|
||||
hasCommandArgument(argc, argv,string(GAME_ARGS[GAME_ARG_USE_PORTS]) + string("="),&foundParamIndIndex);
|
||||
|
|
|
@ -153,6 +153,7 @@ protected:
|
|||
time_t lastSocketError;
|
||||
|
||||
static string host_name;
|
||||
static std::vector<string> intfTypes;
|
||||
|
||||
public:
|
||||
Socket(PLATFORM_SOCKET sock);
|
||||
|
@ -163,6 +164,7 @@ public:
|
|||
static const char * getLastSocketErrorText(int *errNumber=NULL);
|
||||
static string getLastSocketErrorFormattedText(int *errNumber=NULL);
|
||||
|
||||
static void setIntfTypes(std::vector<string> intfTypes) { Socket::intfTypes = intfTypes; }
|
||||
static bool disableNagle;
|
||||
static int DEFAULT_SOCKET_SENDBUF_SIZE;
|
||||
static int DEFAULT_SOCKET_RECVBUF_SIZE;
|
||||
|
|
|
@ -69,6 +69,7 @@ bool Socket::disableNagle = false;
|
|||
int Socket::DEFAULT_SOCKET_SENDBUF_SIZE = -1;
|
||||
int Socket::DEFAULT_SOCKET_RECVBUF_SIZE = -1;
|
||||
string Socket::host_name = "";
|
||||
std::vector<string> Socket::intfTypes;
|
||||
|
||||
int Socket::broadcast_portno = 61357;
|
||||
int ServerSocket::ftpServerPort = 61358;
|
||||
|
@ -701,27 +702,29 @@ std::vector<std::string> Socket::getLocalIPAddressList() {
|
|||
#ifndef WIN32
|
||||
|
||||
// Now check all linux network devices
|
||||
std::vector<string> intfTypes;
|
||||
intfTypes.push_back("lo");
|
||||
intfTypes.push_back("eth");
|
||||
intfTypes.push_back("wlan");
|
||||
intfTypes.push_back("vlan");
|
||||
intfTypes.push_back("vboxnet");
|
||||
intfTypes.push_back("br-lan");
|
||||
intfTypes.push_back("br-gest");
|
||||
intfTypes.push_back("enp0s");
|
||||
intfTypes.push_back("enp1s");
|
||||
intfTypes.push_back("enp2s");
|
||||
intfTypes.push_back("enp3s");
|
||||
intfTypes.push_back("enp4s");
|
||||
intfTypes.push_back("enp5s");
|
||||
intfTypes.push_back("enp6s");
|
||||
intfTypes.push_back("enp7s");
|
||||
intfTypes.push_back("enp8s");
|
||||
intfTypes.push_back("enp9s");
|
||||
//std::vector<string> intfTypes;
|
||||
if(Socket::intfTypes.empty()) {
|
||||
Socket::intfTypes.push_back("lo");
|
||||
Socket::intfTypes.push_back("eth");
|
||||
Socket::intfTypes.push_back("wlan");
|
||||
Socket::intfTypes.push_back("vlan");
|
||||
Socket::intfTypes.push_back("vboxnet");
|
||||
Socket::intfTypes.push_back("br-lan");
|
||||
Socket::intfTypes.push_back("br-gest");
|
||||
Socket::intfTypes.push_back("enp0s");
|
||||
Socket::intfTypes.push_back("enp1s");
|
||||
Socket::intfTypes.push_back("enp2s");
|
||||
Socket::intfTypes.push_back("enp3s");
|
||||
Socket::intfTypes.push_back("enp4s");
|
||||
Socket::intfTypes.push_back("enp5s");
|
||||
Socket::intfTypes.push_back("enp6s");
|
||||
Socket::intfTypes.push_back("enp7s");
|
||||
Socket::intfTypes.push_back("enp8s");
|
||||
Socket::intfTypes.push_back("enp9s");
|
||||
}
|
||||
|
||||
for(int intfIdx = 0; intfIdx < (int)intfTypes.size(); intfIdx++) {
|
||||
string intfName = intfTypes[intfIdx];
|
||||
for(unsigned int intfIdx = 0; intfIdx < Socket::intfTypes.size(); intfIdx++) {
|
||||
string intfName = Socket::intfTypes[intfIdx];
|
||||
for(int idx = 0; idx < 10; ++idx) {
|
||||
PLATFORM_SOCKET fd = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
//PLATFORM_SOCKET fd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
|
||||
|
|
Loading…
Reference in New Issue