summaryrefslogtreecommitdiff
path: root/one.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'one.cpp')
-rw-r--r--one.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/one.cpp b/one.cpp
index 55cc2e19..51cda0c7 100644
--- a/one.cpp
+++ b/one.cpp
@@ -973,6 +973,7 @@ int main(int argc,char **argv)
std::string homeDir;
unsigned int port = ZT_DEFAULT_PORT;
bool skipRootCheck = false;
+ const char *allowManagementFrom = (const char *)0;
for(int i=1;i<argc;++i) {
if (argv[i][0] == '-') {
@@ -986,6 +987,14 @@ int main(int argc,char **argv)
}
break;
+ case 'M': // allow management from this IP/bits network
+ allowManagementFrom = argv[i] + 2;
+ if (!strlen(allowManagementFrom)) {
+ printHelp(argv[0],stdout);
+ return 1;
+ }
+ break;
+
#ifdef __UNIX_LIKE__
case 'd': // Run in background as daemon
runAsDaemon = true;
@@ -1167,7 +1176,7 @@ int main(int argc,char **argv)
unsigned int returnValue = 0;
for(;;) {
- zt1Service = OneService::newInstance(homeDir.c_str(),port);
+ zt1Service = OneService::newInstance(homeDir.c_str(),port,allowManagementFrom);
switch(zt1Service->run()) {
case OneService::ONE_STILL_RUNNING: // shouldn't happen, run() won't return until done
case OneService::ONE_NORMAL_TERMINATION: