Disable monitor by default in config file

This commit is contained in:
dongresource 2020-12-04 17:30:21 +01:00
parent 26024de866
commit 46552307cd
4 changed files with 10 additions and 0 deletions

View File

@ -68,6 +68,7 @@ spawnz=-5500
# Player location monitor interface configuration
[monitor]
enabled=false
# the port to listen for connections on
port=8003
# how often the listeners should be updated (in milliseconds)

View File

@ -13,6 +13,9 @@ static sockaddr_in address;
// runs during init
void Monitor::init() {
if (!settings::MONITORENABLED)
return;
listener = socket(AF_INET, SOCK_STREAM, 0);
if (SOCKETERROR(listener)) {
std::cout << "Failed to create monitor socket" << std::endl;
@ -106,6 +109,9 @@ void Monitor::tick(CNServer *serv, time_t delta) {
void Monitor::start(void *unused) {
socklen_t len = sizeof(address);
if (!settings::MONITORENABLED)
return;
for (;;) {
int sock = accept(listener, (struct sockaddr*)&address, &len);
if (SOCKETERROR(sock))

View File

@ -31,6 +31,7 @@ std::string settings::MOTDSTRING = "Welcome to OpenFusion!";
int settings::ACCLEVEL = 1;
// monitor settings
bool settings::MONITORENABLED = false;
int settings::MONITORPORT = 8003;
int settings::MONITORINTERVAL = 5000;
@ -74,6 +75,7 @@ void settings::init() {
ACCLEVEL = reader.GetInteger("shard", "accountlevel", ACCLEVEL);
EVENTMODE = reader.GetInteger("shard", "eventmode", EVENTMODE);
EVENTCRATECHANCE = reader.GetInteger("shard", "eventcratechance", EVENTCRATECHANCE);
MONITORENABLED = reader.GetBoolean("monitor", "enabled", MONITORENABLED);
MONITORPORT = reader.GetInteger("monitor", "port", MONITORPORT);
MONITORINTERVAL = reader.GetInteger("monitor", "interval", MONITORINTERVAL);
}

View File

@ -25,6 +25,7 @@ namespace settings {
extern std::string GRUNTWORKJSON;
extern int EVENTMODE;
extern int EVENTCRATECHANCE;
extern bool MONITORENABLED;
extern int MONITORPORT;
extern int MONITORINTERVAL;