#endif
if(PG(allow_url_fopen)) {
- if (FAILURE==php_register_url_wrapper("http", php_fopen_url_wrap_http)) {
+ if (FAILURE==php_register_url_wrapper("http", php_fopen_url_wrap_http TSRMLS_CC)) {
return FAILURE;
}
- if (FAILURE==php_register_url_wrapper("ftp", php_fopen_url_wrap_ftp)) {
+ if (FAILURE==php_register_url_wrapper("ftp", php_fopen_url_wrap_ftp TSRMLS_CC)) {
return FAILURE;
}
- if (FAILURE==php_register_url_wrapper("php", php_fopen_url_wrap_php)) {
+ if (FAILURE==php_register_url_wrapper("php", php_fopen_url_wrap_php TSRMLS_CC)) {
return FAILURE;
}
}
#endif
if(PG(allow_url_fopen)) {
- php_unregister_url_wrapper("http");
- php_unregister_url_wrapper("ftp");
- php_unregister_url_wrapper("php");
+ php_unregister_url_wrapper("http" TSRMLS_CC);
+ php_unregister_url_wrapper("ftp" TSRMLS_CC);
+ php_unregister_url_wrapper("php" TSRMLS_CC);
}
UNREGISTER_INI_ENTRIES();
}
- ptr = sapi_getenv(Z_STRVAL_PP(str), Z_STRLEN_PP(str));
+ ptr = sapi_getenv(Z_STRVAL_PP(str), Z_STRLEN_PP(str) TSRMLS_CC);
if (!ptr) {
ptr = getenv(Z_STRVAL_PP(str));
}
Flush the output buffer */
PHP_FUNCTION(flush)
{
- sapi_flush();
+ sapi_flush(TSRMLS_C);
}
/* }}} */
}
convert_to_string_ex(arg);
- if (php_check_open_basedir((*arg)->value.str.val)) {
+ if (php_check_open_basedir((*arg)->value.str.val TSRMLS_CC)) {
RETURN_FALSE;
}
if (type == 1) {
if (output) PUTS(buf);
- sapi_flush();
+ sapi_flush(TSRMLS_C);
}
else if (type == 2) {
/* strip trailing whitespaces */
RETURN_FALSE;
}
- if (php_check_open_basedir((*source)->value.str.val)) {
+ if (php_check_open_basedir((*source)->value.str.val TSRMLS_CC)) {
RETURN_FALSE;
}
RETURN_FALSE;
}
- if (php_check_open_basedir((*target)->value.str.val)) {
+ if (php_check_open_basedir((*target)->value.str.val TSRMLS_CC)) {
RETURN_FALSE;
}
convert_to_string_ex(path);
- if (php_check_open_basedir((*path)->value.str.val)) RETURN_FALSE;
+ if (php_check_open_basedir((*path)->value.str.val TSRMLS_CC)) {
+ RETURN_FALSE;
+ }
#ifdef WINDOWS
/* GetDiskFreeSpaceEx is only available in NT and Win95 post-OSR2,
convert_to_string_ex(path);
- if (php_check_open_basedir((*path)->value.str.val)) RETURN_FALSE;
+ if (php_check_open_basedir((*path)->value.str.val TSRMLS_CC)) {
+ RETURN_FALSE;
+ }
#ifdef WINDOWS
/* GetDiskFreeSpaceEx is only available in NT and Win95 post-OSR2,
}
/* Check the basedir */
- if (php_check_open_basedir((*filename)->value.str.val))
+ if (php_check_open_basedir((*filename)->value.str.val TSRMLS_CC)) {
RETURN_FALSE;
+ }
ret = VCWD_CHOWN((*filename)->value.str.val, -1, gid);
if (ret == -1) {
}
/* Check the basedir */
- if (php_check_open_basedir((*filename)->value.str.val))
+ if (php_check_open_basedir((*filename)->value.str.val TSRMLS_CC)) {
RETURN_FALSE;
+ }
ret = VCWD_CHOWN((*filename)->value.str.val, uid, -1);
if (ret == -1) {
}
/* Check the basedir */
- if (php_check_open_basedir((*filename)->value.str.val))
+ if (php_check_open_basedir((*filename)->value.str.val TSRMLS_CC)) {
RETURN_FALSE;
+ }
imode = (mode_t) (*mode)->value.lval;
/* in safe mode, do not allow to setuid files.
}
/* Check the basedir */
- if (php_check_open_basedir((*filename)->value.str.val)) {
- if (newtime) efree(newtime);
+ if (php_check_open_basedir((*filename)->value.str.val TSRMLS_CC)) {
+ if (newtime) {
+ efree(newtime);
+ }
RETURN_FALSE;
}
case 1:
convert_to_string_ex(arg1);
}
- sapi_add_header_ex(Z_STRVAL_PP(arg1), Z_STRLEN_PP(arg1), 1, replace);
+ sapi_add_header_ex(Z_STRVAL_PP(arg1), Z_STRLEN_PP(arg1), 1, replace TSRMLS_CC);
}
/* }}} */
{
TSRMLS_FETCH();
- if (sapi_send_headers()==FAILURE || SG(request_info).headers_only) {
+ if (sapi_send_headers(TSRMLS_C)==FAILURE || SG(request_info).headers_only) {
return 0; /* don't allow output */
} else {
return 1; /* allow output */
break;
}
- if (php_check_open_basedir((*jpeg_file)->value.str.val))
+ if (php_check_open_basedir((*jpeg_file)->value.str.val TSRMLS_CC)) {
RETURN_FALSE;
+ }
if ((fp = VCWD_FOPEN((*jpeg_file)->value.str.val,"rb")) == 0) {
php_error(E_WARNING, "Unable to open %s", (*jpeg_file)->value.str.val);
{
struct stat *pstat;
- pstat = sapi_get_stat();
+ pstat = sapi_get_stat(TSRMLS_C);
if (BG(page_uid)==-1 || BG(page_gid)==-1) {
if(pstat) {
#if HAVE_FOPENCOOKIE
if(PG(allow_url_fopen)) {
- php_register_url_wrapper("zlib",zlib_fopen_wrapper);
+ php_register_url_wrapper("zlib",zlib_fopen_wrapper TSRMLS_CC);
}
#endif
{
#if HAVE_FOPENCOOKIE
if(PG(allow_url_fopen)) {
- php_unregister_url_wrapper("zlib");
+ php_unregister_url_wrapper("zlib" TSRMLS_CC);
}
#endif
/* This function expects a *duplicated* string, that was previously emalloc()'d.
* Pointers sent to this functions will be automatically freed by the framework.
*/
-SAPI_API int sapi_add_header_ex(char *header_line, uint header_line_len, zend_bool duplicate, zend_bool replace)
+SAPI_API int sapi_add_header_ex(char *header_line, uint header_line_len, zend_bool duplicate, zend_bool replace TSRMLS_DC)
{
int retval, free_header = 0;
sapi_header_struct sapi_header;
char *colon_offset;
- TSRMLS_FETCH();
if (SG(headers_sent) && !SG(request_info).no_headers) {
char *output_start_filename = php_get_output_start_filename();
}
-SAPI_API int sapi_send_headers()
+SAPI_API int sapi_send_headers(TSRMLS_D)
{
int retval;
int ret = FAILURE;
- TSRMLS_FETCH();
if (SG(headers_sent) || SG(request_info).no_headers) {
return SUCCESS;
}
-SAPI_API int sapi_flush()
+SAPI_API int sapi_flush(TSRMLS_D)
{
if (sapi_module.flush) {
- TSRMLS_FETCH();
-
sapi_module.flush(SG(server_context));
return SUCCESS;
} else {
}
}
-SAPI_API struct stat *sapi_get_stat()
+SAPI_API struct stat *sapi_get_stat(TSRMLS_D)
{
- TSRMLS_FETCH();
-
if (sapi_module.get_stat) {
return sapi_module.get_stat(TSRMLS_C);
} else {
}
-SAPI_API char *sapi_getenv(char *name, size_t name_len)
+SAPI_API char *sapi_getenv(char *name, size_t name_len TSRMLS_DC)
{
if (sapi_module.getenv) {
- TSRMLS_FETCH();
-
return sapi_module.getenv(name, name_len TSRMLS_CC);
} else {
return NULL;
SAPI_API void sapi_deactivate(TSRMLS_D);
SAPI_API void sapi_initialize_empty_request(TSRMLS_D);
-SAPI_API int sapi_add_header_ex(char *header_line, uint header_line_len, zend_bool duplicate, zend_bool replace);
+SAPI_API int sapi_add_header_ex(char *header_line, uint header_line_len, zend_bool duplicate, zend_bool replace TSRMLS_DC);
#define sapi_add_header(header_line, header_line_len, duplicate) \
- sapi_add_header_ex((header_line), (header_line_len), (duplicate), 1)
-SAPI_API int sapi_send_headers(void);
+ sapi_add_header_ex((header_line), (header_line_len), (duplicate), 1 TSRMLS_CC)
+SAPI_API int sapi_send_headers(TSRMLS_D);
SAPI_API void sapi_free_header(sapi_header_struct *sapi_header);
SAPI_API void sapi_handle_post(void *arg TSRMLS_DC);
SAPI_API void sapi_unregister_post_entry(sapi_post_entry *post_entry);
SAPI_API int sapi_register_default_post_reader(void (*default_post_reader)(TSRMLS_D));
-SAPI_API int sapi_flush(void);
-SAPI_API struct stat *sapi_get_stat(void);
-SAPI_API char *sapi_getenv(char *name, size_t name_len);
+SAPI_API int sapi_flush(TSRMLS_D);
+SAPI_API struct stat *sapi_get_stat(TSRMLS_D);
+SAPI_API char *sapi_getenv(char *name, size_t name_len TSRMLS_DC);
SAPI_API char *sapi_get_default_content_type(TSRMLS_D);
SAPI_API void sapi_get_default_content_type_header(sapi_header_struct *default_header TSRMLS_DC);
/* {{{ php_register_url_wrapper
*/
-PHPAPI int php_register_url_wrapper(char *protocol, FILE * (*wrapper)(char *path, char *mode, int options, int *issock, int *socketd, char **opened_path))
+PHPAPI int php_register_url_wrapper(char *protocol, FILE * (*wrapper)(char *path, char *mode, int options, int *issock, int *socketd, char **opened_path) TSRMLS_DC)
{
- TSRMLS_FETCH();
-
if(PG(allow_url_fopen)) {
return zend_hash_add(&fopen_url_wrappers_hash, protocol, strlen(protocol), &wrapper, sizeof(wrapper), NULL);
} else {
/* {{{ php_unregister_url_wrapper
*/
-PHPAPI int php_unregister_url_wrapper(char *protocol)
+PHPAPI int php_unregister_url_wrapper(char *protocol TSRMLS_DC)
{
- TSRMLS_FETCH();
-
if(PG(allow_url_fopen)) {
return zend_hash_del(&fopen_url_wrappers_hash, protocol, strlen(protocol));
} else {
/* {{{ php_init_fopen_wrappers
*/
-int php_init_fopen_wrappers(void)
+int php_init_fopen_wrappers(TSRMLS_D)
{
- TSRMLS_FETCH();
-
- if(PG(allow_url_fopen))
+ if(PG(allow_url_fopen)) {
return zend_hash_init(&fopen_url_wrappers_hash, 0, NULL, NULL, 1);
-
+ }
return SUCCESS;
}
/* }}} */
/* {{{ php_shutdown_fopen_wrappers
*/
-int php_shutdown_fopen_wrappers(void)
+int php_shutdown_fopen_wrappers(TSRMLS_D)
{
- TSRMLS_FETCH();
-
if(PG(allow_url_fopen)) {
zend_hash_destroy(&fopen_url_wrappers_hash);
}
-
return SUCCESS;
}
/* }}} */
/* {{{ php_check_open_basedir
*/
-PHPAPI int php_check_open_basedir(char *path)
+PHPAPI int php_check_open_basedir(char *path TSRMLS_DC)
{
- TSRMLS_FETCH();
-
/* Only check when open_basedir is available */
if (PG(open_basedir) && *PG(open_basedir)) {
char *pathbuf;
static FILE *php_fopen_and_set_opened_path(const char *path, char *mode, char **opened_path)
{
FILE *fp;
+ TSRMLS_FETCH();
- if (php_check_open_basedir((char *)path)) {
+ if (php_check_open_basedir((char *)path TSRMLS_CC)) {
return NULL;
}
fp = VCWD_FOPEN(path, mode);
PHPAPI int php_fopen_primary_script(zend_file_handle *file_handle);
PHPAPI char *expand_filepath(const char *filepath, char *real_path);
-PHPAPI int php_check_open_basedir(char *path);
+PHPAPI int php_check_open_basedir(char *path TSRMLS_DC);
PHPAPI int php_check_specific_open_basedir(char *basedir, char *path TSRMLS_DC);
PHPAPI FILE *php_fopen_with_path(char *filename, char *mode, char *path, char **opened_path);
PHPAPI char *php_strip_url_passwd(char *path);
-int php_init_fopen_wrappers(void);
-int php_shutdown_fopen_wrappers(void);
-PHPAPI int php_register_url_wrapper(char *protocol, FILE * (*wrapper)(char *path, char *mode, int options, int *issock, int *socketd, char **opened_path));
-PHPAPI int php_unregister_url_wrapper(char *protocol);
+int php_init_fopen_wrappers(TSRMLS_D);
+int php_shutdown_fopen_wrappers(TSRMLS_D);
+PHPAPI int php_register_url_wrapper(char *protocol, FILE * (*wrapper)(char *path, char *mode, int options, int *issock, int *socketd, char **opened_path) TSRMLS_DC);
+PHPAPI int php_unregister_url_wrapper(char *protocol TSRMLS_DC);
#endif
/*
} zend_end_try();
zend_try {
- sapi_send_headers();
+ sapi_send_headers(TSRMLS_C);
} zend_end_try();
if (PG(modules_activated)) zend_try {
/* initialize fopen wrappers registry
(this uses configuration parameters from php.ini)
*/
- if (php_init_fopen_wrappers() == FAILURE) {
+ if (php_init_fopen_wrappers(TSRMLS_C) == FAILURE) {
php_printf("PHP: Unable to initialize fopen url wrappers.\n");
return FAILURE;
}
#endif
php_shutdown_ticks(TSRMLS_C);
- sapi_flush();
+ sapi_flush(TSRMLS_C);
zend_shutdown(TSRMLS_C);
- php_shutdown_fopen_wrappers();
+ php_shutdown_fopen_wrappers(TSRMLS_C);
php_shutdown_info_logos();
UNREGISTER_INI_ENTRIES();
#ifndef ZTS
{
if (SG(request_info).query_string && SG(request_info).query_string[0]=='='
&& PG(expose_php)) {
- if (php_info_logos(SG(request_info).query_string+1)) {
+ if (php_info_logos(SG(request_info).query_string+1 TSRMLS_CC)) {
return 1;
} else if (!strcmp(SG(request_info).query_string+1, PHP_CREDITS_GUID)) {
php_print_credits(PHP_CREDITS_ALL);
result = OG(php_header_write)(str, str_length);
if (OG(implicit_flush)) {
- sapi_flush();
+ sapi_flush(TSRMLS_C);
}
return result;
}
#define CONTENT_TYPE_HEADER "Content-Type: "
-int php_info_logos(const char *logo_string)
+int php_info_logos(const char *logo_string TSRMLS_DC)
{
php_info_logo *logo_image;
char *content_header;
PHPAPI int php_unregister_info_logo(char *logo_string);
int php_init_info_logos(void);
int php_shutdown_info_logos(void);
-int php_info_logos(const char *logo_string);
+int php_info_logos(const char *logo_string TSRMLS_DC);
#endif /* _PHP_LOGOS_H */
USE_SAPI is defined, because cgi will also be
interfaced in USE_SAPI */
- pstat = sapi_get_stat();
+ pstat = sapi_get_stat(TSRMLS_C);
if (!pstat) {
return empty_string;
break;
case PHP_MODE_INDENT:
header_line = (char *)estrdup("Content-Type: text/plain");
- sapi_add_header_ex(header_line, strlen(header_line), 1, 1);
+ sapi_add_header_ex(header_line, strlen(header_line), 1, 1 TSRMLS_CC);
if ( open_file_for_scanning( &file_handle TSRMLS_CC ) == SUCCESS )
{
zend_indent();
char cwd[MAXPATHLEN];
#endif
TSRMLS_FETCH();
- TSRMLS_FETCH();
- TSRMLS_FETCH();
zend_try {
SG(server_context) = emalloc(sizeof(servlet_request));
if (open_file_for_scanning(&file_handle TSRMLS_CC)==SUCCESS) {
php_get_highlight_struct(&syntax_highlighter_ini);
- sapi_send_headers();
+ sapi_send_headers(TSRMLS_C);
zend_highlight(&syntax_highlighter_ini TSRMLS_CC);
}
} else {
sprintf(buf, "Server: %s", TUXAPI_version);
- sapi_add_header_ex(buf, strlen(buf), 1, 0);
+ sapi_add_header_ex(buf, strlen(buf), 1, 0 TSRMLS_CC);
php_register_variable("PHP_SELF", SG(request_info).request_uri, track_vars_array TSRMLS_FETCH()CC TSRMLS_FETCH()CC);
php_register_variable("SERVER_SOFTWARE", TUXAPI_version, track_vars_array TSRMLS_FETCH()CC TSRMLS_FETCH()CC);
php_register_variable("GATEWAY_INTERFACE", "CGI/1.1", track_vars_array TSRMLS_FETCH()CC TSRMLS_FETCH()CC);