Skip to content

Commit 8292577

Browse files
committed
Switch to flags
1 parent 9f749bc commit 8292577

File tree

3 files changed

+25
-37
lines changed

3 files changed

+25
-37
lines changed

Zend/zend_portability.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@
166166
# define DL_LOAD(libname) dlopen(libname, PHP_RTLD_MODE | RTLD_GLOBAL | RTLD_GROUP | RTLD_WORLD | RTLD_PARENT)
167167
# elif defined(RTLD_DEEPBIND) && !defined(__SANITIZE_ADDRESS__) && !__has_feature(memory_sanitizer)
168168
# if defined(LM_ID_NEWLM)
169-
# define DL_LOAD(libname) dlopen(libname, PHP_RTLD_MODE | RTLD_GLOBAL | (sapi_module.isolate_symbols ? RTLD_DEEPBIND : 0))
169+
# define DL_LOAD(libname) dlopen(libname, PHP_RTLD_MODE | RTLD_GLOBAL | ((sapi_module.flags & SAPI_MODULE_FLAG_ISOLATE_SYMBOLS) != 0 ? RTLD_DEEPBIND : 0))
170170
# else
171171
# define DL_LOAD(libname) dlopen(libname, PHP_RTLD_MODE | RTLD_GLOBAL | RTLD_DEEPBIND)
172172
# endif

main/SAPI.h

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,8 @@ SAPI_API double sapi_get_request_time(void);
234234
SAPI_API void sapi_terminate_process(void);
235235
END_EXTERN_C()
236236

237+
#define SAPI_MODULE_FLAG_ISOLATE_SYMBOLS (1<<0)
238+
237239
struct _sapi_module_struct {
238240
char *name;
239241
char *pretty_name;
@@ -288,7 +290,7 @@ struct _sapi_module_struct {
288290
const zend_function_entry *additional_functions;
289291
unsigned int (*input_filter_init)(void);
290292

291-
bool isolate_symbols;
293+
unsigned int flags;
292294
};
293295

294296
struct _sapi_post_entry {
@@ -323,23 +325,25 @@ SAPI_API SAPI_TREAT_DATA_FUNC(php_default_treat_data);
323325
SAPI_API SAPI_INPUT_FILTER_FUNC(php_default_input_filter);
324326
END_EXTERN_C()
325327

326-
#define STANDARD_SAPI_MODULE_PROPERTIES \
327-
NULL, /* php_ini_path_override */ \
328-
NULL, /* default_post_reader */ \
329-
NULL, /* treat_data */ \
330-
NULL, /* executable_location */ \
331-
0, /* php_ini_ignore */ \
332-
0, /* php_ini_ignore_cwd */ \
333-
NULL, /* get_fd */ \
334-
NULL, /* force_http_10 */ \
335-
NULL, /* get_target_uid */ \
336-
NULL, /* get_target_gid */ \
337-
NULL, /* input_filter */ \
338-
NULL, /* ini_defaults */ \
339-
0, /* phpinfo_as_text; */ \
340-
NULL, /* ini_entries; */ \
341-
NULL, /* additional_functions */ \
342-
NULL, /* input_filter_init */ \
343-
false /* isolate_symbols */
328+
#define STANDARD_SAPI_MODULE_PROPERTIES STANDARD_SAPI_MODULE_PROPERTIES_WITH_FLAGS(0)
329+
330+
#define STANDARD_SAPI_MODULE_PROPERTIES_WITH_FLAGS(_flags) \
331+
NULL, /* php_ini_path_override */ \
332+
NULL, /* default_post_reader */ \
333+
NULL, /* treat_data */ \
334+
NULL, /* executable_location */ \
335+
0, /* php_ini_ignore */ \
336+
0, /* php_ini_ignore_cwd */ \
337+
NULL, /* get_fd */ \
338+
NULL, /* force_http_10 */ \
339+
NULL, /* get_target_uid */ \
340+
NULL, /* get_target_gid */ \
341+
NULL, /* input_filter */ \
342+
NULL, /* ini_defaults */ \
343+
0, /* phpinfo_as_text; */ \
344+
NULL, /* ini_entries; */ \
345+
NULL, /* additional_functions */ \
346+
NULL, /* input_filter_init */ \
347+
(_flags) /* flags */
344348

345349
#endif /* SAPI_H */

sapi/apache2handler/sapi_apache2.c

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -415,23 +415,7 @@ static sapi_module_struct apache2_sapi_module = {
415415
php_apache_sapi_get_request_time, /* Request Time */
416416
NULL, /* Child Terminate */
417417

418-
NULL, /* php_ini_path_override */
419-
NULL, /* default_post_reader */
420-
NULL, /* treat_data */
421-
NULL, /* executable_location */
422-
0, /* php_ini_ignore */
423-
0, /* php_ini_ignore_cwd */
424-
NULL, /* get_fd */
425-
NULL, /* force_http_10 */
426-
NULL, /* get_target_uid */
427-
NULL, /* get_target_gid */
428-
NULL, /* input_filter */
429-
NULL, /* ini_defaults */
430-
0, /* phpinfo_as_text; */
431-
NULL, /* ini_entries; */
432-
NULL, /* additional_functions */
433-
NULL, /* input_filter_init */
434-
true /* isolate_symbols */
418+
STANDARD_SAPI_MODULE_PROPERTIES_WITH_FLAGS(SAPI_MODULE_FLAG_ISOLATE_SYMBOLS)
435419
};
436420

437421
static apr_status_t php_apache_server_shutdown(void *tmp)

0 commit comments

Comments
 (0)