61 lines
2 KiB
C
61 lines
2 KiB
C
/*
|
|
+----------------------------------------------------------------------+
|
|
| Copyright © The PHP Group and Contributors. |
|
|
+----------------------------------------------------------------------+
|
|
| This source file is subject to the Modified BSD License that is |
|
|
| bundled with this package in the file LICENSE, and is available |
|
|
| through the World Wide Web at <https://www.php.net/license/>. |
|
|
| |
|
|
| SPDX-License-Identifier: BSD-3-Clause |
|
|
+----------------------------------------------------------------------+
|
|
| Author: Jason Greene <jason@inetgurus.net> |
|
|
+----------------------------------------------------------------------+
|
|
*/
|
|
|
|
#ifndef PHP_PCNTL_H
|
|
#define PHP_PCNTL_H
|
|
|
|
#include "pcntl_decl.h"
|
|
|
|
#if defined(HAVE_DECL_WCONTINUED) && HAVE_DECL_WCONTINUED == 1 && defined(HAVE_WIFCONTINUED) && HAVE_WIFCONTINUED == 1
|
|
#define HAVE_WCONTINUED 1
|
|
#endif
|
|
|
|
extern zend_module_entry pcntl_module_entry;
|
|
#define phpext_pcntl_ptr &pcntl_module_entry
|
|
|
|
#include "php_version.h"
|
|
#define PHP_PCNTL_VERSION PHP_VERSION
|
|
|
|
PHP_MINIT_FUNCTION(pcntl);
|
|
PHP_MSHUTDOWN_FUNCTION(pcntl);
|
|
PHP_RINIT_FUNCTION(pcntl);
|
|
PHP_RSHUTDOWN_FUNCTION(pcntl);
|
|
PHP_MINFO_FUNCTION(pcntl);
|
|
|
|
struct php_pcntl_pending_signal {
|
|
struct php_pcntl_pending_signal *next;
|
|
zend_long signo;
|
|
siginfo_t siginfo;
|
|
};
|
|
|
|
ZEND_BEGIN_MODULE_GLOBALS(pcntl)
|
|
HashTable php_signal_table;
|
|
bool processing_signal_queue;
|
|
volatile bool pending_signals;
|
|
bool async_signals;
|
|
/* some OSes define NSIG to be > UINT8_MAX */
|
|
uint16_t num_signals;
|
|
int last_error;
|
|
struct php_pcntl_pending_signal *head, *tail, *spares;
|
|
ZEND_END_MODULE_GLOBALS(pcntl)
|
|
|
|
#if defined(ZTS) && defined(COMPILE_DL_PCNTL)
|
|
ZEND_TSRMLS_CACHE_EXTERN()
|
|
#endif
|
|
|
|
ZEND_EXTERN_MODULE_GLOBALS(pcntl)
|
|
#define PCNTL_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(pcntl, v)
|
|
|
|
#endif /* PHP_PCNTL_H */
|