From: Timo Sirainen Date: Tue, 14 Apr 2020 16:26:46 +0000 (+0300) Subject: master: Add SERVICE_NAME= environment to child service processes X-Git-Tag: 2.3.11.2~189 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bd3e393b92840124ed7d9317afc7be31f55af48b;p=thirdparty%2Fdovecot%2Fcore.git master: Add SERVICE_NAME= environment to child service processes --- diff --git a/src/lib-master/master-interface.h b/src/lib-master/master-interface.h index 1ddef5f687..e5db7ce720 100644 --- a/src/lib-master/master-interface.h +++ b/src/lib-master/master-interface.h @@ -40,6 +40,9 @@ enum master_login_state { /* getenv(MASTER_UID_ENV) provides master_status.uid value */ #define MASTER_UID_ENV "GENERATION" +/* getenv(MASTER_SERVICE_NAME) provides the service's name */ +#define MASTER_SERVICE_ENV "SERVICE_NAME" + /* getenv(MASTER_CLIENT_LIMIT_ENV) provides maximum master_status.available_count as specified in configuration file */ #define MASTER_CLIENT_LIMIT_ENV "CLIENT_LIMIT" diff --git a/src/master/service-process.c b/src/master/service-process.c index 36544498d8..b5c8f14f6e 100644 --- a/src/master/service-process.c +++ b/src/master/service-process.c @@ -244,6 +244,8 @@ service_process_setup_environment(struct service *service, unsigned int uid, env_put(MASTER_IS_PARENT_ENV"=1"); service_process_setup_config_environment(service); + env_put(t_strdup_printf(MASTER_SERVICE_ENV"=%s", + service->set->name)); env_put(t_strdup_printf(MASTER_CLIENT_LIMIT_ENV"=%u", service->client_limit)); env_put(t_strdup_printf(MASTER_PROCESS_LIMIT_ENV"=%u",