X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;ds=sidebyside;f=php-fcgi-graceful.patch;h=5ce13ea13adb05cdbfcd95ffa9ac744183840c7a;hb=693736dbc1f53473bbeb919a884e7fed56422362;hp=6cf0d2c4f0f295317ce601e6614312675e9a6798;hpb=aef9a98d7828aeb48703ab2429a6968173d1addf;p=packages%2Fphp.git
diff --git a/php-fcgi-graceful.patch b/php-fcgi-graceful.patch
index 6cf0d2c..5ce13ea 100644
--- a/php-fcgi-graceful.patch
+++ b/php-fcgi-graceful.patch
@@ -18,8 +18,8 @@ while ($i < 35) {
echo "end!
\n";
?>
---- php5.3-200711090930/sapi/cgi/cgi_main.c 2007-11-01 13:32:38.000000000 +0200
-+++ php5.3-200711090930-graceful/sapi/cgi/cgi_main.c 2007-11-09 13:34:22.974559020 +0200
+--- php-7.1.0alpha2/sapi/cgi/cgi_main.c~ 2016-07-04 14:56:49.000000000 +0300
++++ php-7.1.0alpha2/sapi/cgi/cgi_main.c 2016-07-04 14:58:17.522958766 +0300
@@ -101,6 +101,9 @@
*/
static int parent = 1;
@@ -27,12 +27,12 @@ echo "end!
\n";
+/* Socket we are listening on incoming connections */
+static int fcgi_fd = 0;
+
- /**
- * Process group
- */
+ #ifndef PHP_WIN32
+ /* Did parent received exit signals SIG_TERM/SIG_INT/SIG_QUIT */
+ static int exit_signal = 0;
@@ -1221,6 +1224,21 @@
- exit(0);
}
+ #endif
+/**
+ * Graceful shutdown. Close listening sockets.
@@ -52,26 +52,27 @@ echo "end!
\n";
PHP_INI_BEGIN()
STD_PHP_INI_ENTRY("cgi.rfc2616_headers", "0", PHP_INI_ALL, OnUpdateBool, rfc2616_headers, php_cgi_globals_struct, php_cgi_globals)
STD_PHP_INI_ENTRY("cgi.nph", "0", PHP_INI_ALL, OnUpdateBool, nph, php_cgi_globals_struct, php_cgi_globals)
-@@ -1328,7 +1346,6 @@
+@@ -1764,7 +1764,6 @@
int requests = 0;
- int fastcgi = fcgi_is_fastcgi();
+ int fastcgi;
char *bindpath = NULL;
- int fcgi_fd = 0;
- fcgi_request request;
+ fcgi_request *request = NULL;
+ int warmup_repeats = 0;
int repeats = 1;
- int benchmark = 0;
-@@ -1579,9 +1596,13 @@
- parent = 0;
+@@ -2080,9 +2080,14 @@
+ parent = 0;
- /* don't catch our signals */
-- sigaction(SIGTERM, &old_term, 0);
- sigaction(SIGQUIT, &old_quit, 0);
- sigaction(SIGINT, &old_int, 0);
+ /* don't catch our signals */
+- sigaction(SIGTERM, &old_term, 0);
+ sigaction(SIGQUIT, &old_quit, 0);
+ sigaction(SIGINT, &old_int, 0);
++
++ /* call graceful shutdown handler for SIGTERM */
++ act.sa_flags = 0;
++ act.sa_handler = fastcgi_graceful_shutdown;
++ sigaction(SIGTERM, &act, &old_term);
+
-+ /* call graceful shutdown handler for SIGTERM */
-+ act.sa_flags = 0;
-+ act.sa_handler = fastcgi_graceful_shutdown;
-+ sigaction(SIGTERM, &act, &old_term);
- break;
- case -1:
- perror("php (pre-forking)");
+ zend_signal_init();
+ break;
+ case -1: