From 0605d5f309dc55642e6e4d1ef750bcd8a25afcc5 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Loyet?= Date: Tue, 31 Aug 2010 09:33:53 +0000 Subject: [PATCH] - Changed listen.backlog in the FPM configuration file to default to 128 instead of -1 (except on FreeBSD and OpenBSD). This is the same value as the one used in the cgi sapi. This patch completes revision 302725. --- NEWS | 1 + sapi/fpm/fpm/fpm_conf.c | 2 +- sapi/fpm/fpm/fpm_sockets.h | 9 +++++++++ sapi/fpm/php-fpm.conf.in | 2 +- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index a45ff9a793..c98e917435 100644 --- a/NEWS +++ b/NEWS @@ -15,6 +15,7 @@ (Kalle) - Changed the $context parameter on copy() to actually have an effect. (Kalle) - Fixed possible crash in mssql_fetch_batch(). (Kalle) +- Fixed inconsistent backlog default value (-1) in FPM on many systems. (fat) - Fixed bug #52745 (Binding params doesn't work when selecting a date inside a CASE-WHEN). (Andrey) diff --git a/sapi/fpm/fpm/fpm_conf.c b/sapi/fpm/fpm/fpm_conf.c index 958f68b991..4c7e6d618c 100644 --- a/sapi/fpm/fpm/fpm_conf.c +++ b/sapi/fpm/fpm/fpm_conf.c @@ -322,7 +322,7 @@ static void *fpm_worker_pool_config_alloc() /* {{{ */ } memset(wp->config, 0, sizeof(struct fpm_worker_pool_config_s)); - wp->config->listen_backlog = -1; + wp->config->listen_backlog = FPM_BACKLOG_DEFAULT; if (!fpm_worker_all_pools) { fpm_worker_all_pools = wp; diff --git a/sapi/fpm/fpm/fpm_sockets.h b/sapi/fpm/fpm/fpm_sockets.h index d9e283d5a3..8bd778ea50 100644 --- a/sapi/fpm/fpm/fpm_sockets.h +++ b/sapi/fpm/fpm/fpm_sockets.h @@ -10,6 +10,15 @@ #include "fpm_worker_pool.h" +/* + On FreeBSD and OpenBSD, backlog negative values are truncated to SOMAXCONN +*/ +#if (__FreeBSD__) || (__OpenBSD__) +#define FPM_BACKLOG_DEFAULT -1 +#else +#define FPM_BACKLOG_DEFAULT 128 +#endif + enum fpm_address_domain fpm_sockets_domain_from_address(char *addr); int fpm_sockets_init_main(); diff --git a/sapi/fpm/php-fpm.conf.in b/sapi/fpm/php-fpm.conf.in index 6a73047adc..ca45fb414c 100644 --- a/sapi/fpm/php-fpm.conf.in +++ b/sapi/fpm/php-fpm.conf.in @@ -75,7 +75,7 @@ listen = 127.0.0.1:9000 ; Set listen(2) backlog. A value of '-1' means unlimited. -; Default Value: -1 +; Default Value: 128 (-1 on FreeBSD and OpenBSD) ;listen.backlog = -1 ; List of ipv4 addresses of FastCGI clients which are allowed to connect. -- 2.40.0