diff --git a/src/initctl.c b/src/initctl.c index b6bcaf9fc6ecee159bd6818005167b67dfd0a766..3de7fcd42e89242b6dd1de24161bc6e91396ccde 100644 --- a/src/initctl.c +++ b/src/initctl.c @@ -336,6 +336,16 @@ int main(int argc, char *argv[]) { Server server; int r = 3, n; + if (getppid() != 1) { + log_error("This program should be invoked by init only."); + return 1; + } + + if (argc > 1) { + log_error("This program does not take arguments."); + return 1; + } + log_set_target(LOG_TARGET_SYSLOG_OR_KMSG); log_parse_environment(); diff --git a/src/logger.c b/src/logger.c index 66f6f8c2e5b3f71da5be1328abd91775d2ce841b..cc394df55c37e342c67f07082f6b0523371e184d 100644 --- a/src/logger.c +++ b/src/logger.c @@ -535,6 +535,16 @@ int main(int argc, char *argv[]) { Server server; int r = 3, n; + if (getppid() != 1) { + log_error("This program should be invoked by init only."); + return 1; + } + + if (argc > 1) { + log_error("This program does not take arguments."); + return 1; + } + log_set_target(LOG_TARGET_SYSLOG_OR_KMSG); log_parse_environment();