diff options
author | Sadie Powell <sadie@witchery.services> | 2024-03-20 21:34:28 +0000 |
---|---|---|
committer | Sadie Powell <sadie@witchery.services> | 2024-03-20 21:34:28 +0000 |
commit | 4399eeaa587e5cb4c4f3b7a6a3a79390e32b7b78 (patch) | |
tree | ef74d644e56ab90ac4df1e22759ce51cf0a3e6cf /src | |
parent | 38cfb0603a79ca5545d8e9d2980cc6b3fef2d9e6 (diff) |
Add the --nopid option to disable writing a pidfile.
This is useful for init scripts that don't fork.
Diffstat (limited to 'src')
-rw-r--r-- | src/init.cpp | 6 | ||||
-rw-r--r-- | src/main.cpp | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/init.cpp b/src/init.cpp index 8bf7d387c..df53ee908 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -221,7 +221,7 @@ static void remove_pidfile() static void write_pidfile() { auto pidfile = Anope::ExpandData(Config->GetBlock("serverinfo")->Get<const Anope::string>("pid")); - if (pidfile.empty()) + if (Anope::NoPID || pidfile.empty()) return; std::ofstream stream(pidfile.str()); @@ -325,6 +325,7 @@ bool Anope::Init(int ac, char **av) Log(LOG_TERMINAL) << " --modulesdir=modules directory"; Log(LOG_TERMINAL) << "-e, --noexpire"; Log(LOG_TERMINAL) << "-n, --nofork"; + Log(LOG_TERMINAL) << "-p, --nopid"; Log(LOG_TERMINAL) << " --nothird"; Log(LOG_TERMINAL) << " --protocoldebug"; Log(LOG_TERMINAL) << "-r, --readonly"; @@ -352,6 +353,9 @@ bool Anope::Init(int ac, char **av) if (GetCommandLineArgument("nothird")) Anope::NoThird = true; + if (GetCommandLineArgument("nopid", 'p')) + Anope::NoPID = true; + if (GetCommandLineArgument("noexpire", 'e')) Anope::NoExpire = true; diff --git a/src/main.cpp b/src/main.cpp index 7106579c0..498378c43 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -24,7 +24,7 @@ /* Command-line options: */ int Anope::Debug = 0; -bool Anope::ReadOnly = false, Anope::NoFork = false, Anope::NoThird = false, Anope::NoExpire = false, Anope::ProtocolDebug = false; +bool Anope::ReadOnly = false, Anope::NoFork = false, Anope::NoThird = false, Anope::NoPID = false, Anope::NoExpire = false, Anope::ProtocolDebug = false; Anope::string Anope::ServicesDir; Anope::string Anope::ServicesBin; |