summaryrefslogtreecommitdiff
path: root/sapi/fpm/fpm/fpm_sockets.c
diff options
context:
space:
mode:
Diffstat (limited to 'sapi/fpm/fpm/fpm_sockets.c')
-rw-r--r--sapi/fpm/fpm/fpm_sockets.c28
1 files changed, 16 insertions, 12 deletions
diff --git a/sapi/fpm/fpm/fpm_sockets.c b/sapi/fpm/fpm/fpm_sockets.c
index aaa16cc89e..c9c0acc7b7 100644
--- a/sapi/fpm/fpm/fpm_sockets.c
+++ b/sapi/fpm/fpm/fpm_sockets.c
@@ -39,6 +39,16 @@ static struct fpm_array_s sockets_list;
enum { FPM_GET_USE_SOCKET = 1, FPM_STORE_SOCKET = 2, FPM_STORE_USE_SOCKET = 3 };
+static inline void fpm_sockets_get_env_name(char *envname, unsigned idx) /* {{{ */
+{
+ if (!idx) {
+ strcpy(envname, "FPM_SOCKETS");
+ } else {
+ sprintf(envname, "FPM_SOCKETS_%d", idx);
+ }
+}
+/* }}} */
+
static void fpm_sockets_cleanup(int which, void *arg) /* {{{ */
{
unsigned i;
@@ -82,13 +92,11 @@ static void fpm_sockets_cleanup(int which, void *arg) /* {{{ */
if (env_value) {
for (i = 0; i < socket_set_count; i++) {
- if (!i) {
- strcpy(envname, "FPM_SOCKETS");
- } else {
- sprintf(envname, "FPM_SOCKETS_%d", i);
- }
+ fpm_sockets_get_env_name(envname, i);
setenv(envname, env_value + socket_set[i], 1);
}
+ fpm_sockets_get_env_name(envname, socket_set_count);
+ unsetenv(envname);
free(env_value);
}
@@ -373,7 +381,7 @@ int fpm_sockets_init_main() /* {{{ */
{
unsigned i, lq_len;
struct fpm_worker_pool_s *wp;
- char sockname[32];
+ char envname[32];
char sockpath[256];
char *inherited;
struct listening_socket_s *ls;
@@ -384,12 +392,8 @@ int fpm_sockets_init_main() /* {{{ */
/* import inherited sockets */
for (i = 0; i < FPM_ENV_SOCKET_SET_MAX; i++) {
- if (!i) {
- strcpy(sockname, "FPM_SOCKETS");
- } else {
- sprintf(sockname, "FPM_SOCKETS_%d", i);
- }
- inherited = getenv(sockname);
+ fpm_sockets_get_env_name(envname, i);
+ inherited = getenv(envname);
if (!inherited) {
break;
}