diff --git a/src/main.cpp b/src/main.cpp index 2b47993..a3da6f0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -53,6 +54,13 @@ static void usage(std::ostream& out) { out << " -v enable verbose output\n"; } +static void on_sighup(int) +{ + constexpr const char msg[] = "Laminar received and ignored SIGHUP\n"; + // write(2) is safe to call inside signal handler. + write(STDERR_FILENO, msg, sizeof(msg) - 1); +} + int main(int argc, char** argv) { if(argv[0][0] == '{') return leader_main(); @@ -92,6 +100,7 @@ int main(int argc, char** argv) { signal(SIGINT, &laminar_quit); signal(SIGTERM, &laminar_quit); + signal(SIGHUP, &on_sighup); printf("laminard version %s started\n", laminar_version());