diff options
author | Aki <please@ignore.pl> | 2022-02-03 22:57:49 +0100 |
---|---|---|
committer | Aki <please@ignore.pl> | 2022-02-03 22:57:49 +0100 |
commit | faeef00bb63623089d706c0c5b411b344d92bd9e (patch) | |
tree | bd6131a5d2f9a379b1468abb9c16976e1a82faa4 /Stars45/NetServerConfig.cpp | |
parent | 975a232cfb08410177af2ba06251e4c553780e7b (diff) | |
download | starshatter-faeef00bb63623089d706c0c5b411b344d92bd9e.zip starshatter-faeef00bb63623089d706c0c5b411b344d92bd9e.tar.gz starshatter-faeef00bb63623089d706c0c5b411b344d92bd9e.tar.bz2 |
Added hostname to the server configuration
This is in order to avoid default lookup for local address, which usually
caused the game to bind to a LAN address hence effectively disallowing any
other traffic in.
For now there is no option in GUI to configure the hostname. Menus definitions
are in the game files, so I should avoid any changes that can cause the binary
to be incompatible with currently available resource packs.
Diffstat (limited to 'Stars45/NetServerConfig.cpp')
-rw-r--r-- | Stars45/NetServerConfig.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Stars45/NetServerConfig.cpp b/Stars45/NetServerConfig.cpp index 90b7e0d..cab2f79 100644 --- a/Stars45/NetServerConfig.cpp +++ b/Stars45/NetServerConfig.cpp @@ -63,6 +63,7 @@ NetServerConfig::NetServerConfig() { instance = this; + hostname = "0.0.0.0"; name = "Starshatter "; admin_name = "system"; admin_pass = "manager"; @@ -161,7 +162,11 @@ NetServerConfig::Load() if (term) { TermDef* def = term->isDef(); if (def) { - if (def->name()->value() == "name") { + if (def->name()->value() == "hostname") { + GetDefText(instance->hostname, def, filename); + } + + else if (def->name()->value() == "name") { GetDefText(instance->name, def, filename); } @@ -271,6 +276,7 @@ NetServerConfig::Save() fopen_s(&f, "server.cfg", "w"); if (f) { fprintf(f, "SERVER_CONFIG\n\n"); + fprintf(f, "hostname: \"%s\"\n", instance->hostname.data()); fprintf(f, "name: \"%s\"\n", instance->name.data()); fprintf(f, "admin_name: \"%s\"\n", instance->admin_name.data()); fprintf(f, "admin_pass: \"%s\"\n", instance->admin_pass.data()); |