From b98b7ff6421d53b04830865557a0ce2e1987f983 Mon Sep 17 00:00:00 2001 From: paulc Date: Mon, 24 May 2021 13:47:03 +0000 Subject: [PATCH] Added own PID and if applicable supervisor's PID to the runtime parameters. git-svn-id: http://voip.null.ro/svn/yate@6496 acf43c95-373e-0410-b603-e72c3f656dc1 --- engine/Engine.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/engine/Engine.cpp b/engine/Engine.cpp index 10ffe486..55e45bae 100644 --- a/engine/Engine.cpp +++ b/engine/Engine.cpp @@ -1182,6 +1182,8 @@ static int supervise(int initDelay) return err; } if (s_childpid == 0) { + // Running in child now + s_childpid = ::getpid(); s_super_handle = wdogfd[1]; ::close(wdogfd[0]); if (s_logrotator) { @@ -1573,6 +1575,10 @@ int Engine::engineInit() s_params.addParam("runattempt",String(s_run_attempt)); #ifndef _WINDOWS s_params.addParam("lastsignal",String(s_childsig)); + if (s_childpid != -1) + s_params.addParam("childpid",String(s_childpid)); + if (s_superpid != -1) + s_params.addParam("superpid",String(s_superpid)); #endif s_params.addParam("minworkers",String(s_minworkers)); s_params.addParam("maxworkers",String(s_maxworkers)); @@ -3051,6 +3057,8 @@ int Engine::main(int argc, const char** argv, const char** env, RunMode mode, En #ifndef _WINDOWS if (supervised) retcode = supervise(supervised); + else + s_childpid = ::getpid(); if (retcode >= 0) return retcode; #endif