summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/standard/ftp_fopen_wrapper.c9
-rw-r--r--ext/standard/http_fopen_wrapper.c11
-rwxr-xr-xmain/php_streams.h2
3 files changed, 13 insertions, 9 deletions
diff --git a/ext/standard/ftp_fopen_wrapper.c b/ext/standard/ftp_fopen_wrapper.c
index b5d3ccdc16..054d39a5e3 100644
--- a/ext/standard/ftp_fopen_wrapper.c
+++ b/ext/standard/ftp_fopen_wrapper.c
@@ -90,9 +90,10 @@ static int php_stream_ftp_stream_stat(php_stream_wrapper *wrapper,
static php_stream_wrapper_ops ftp_stream_wops = {
php_stream_url_wrap_ftp,
- NULL,
+ NULL, /* stream_close */
php_stream_ftp_stream_stat,
- NULL
+ NULL, /* stat_url */
+ NULL /* opendir */
};
php_stream_wrapper php_stream_ftp_wrapper = {
@@ -117,7 +118,7 @@ php_stream * php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, char *path, ch
size_t file_size = 0;
if (strchr(mode, 'a') || strchr(mode, '+')) {
- php_stream_wrapper_log_error(wrapper, options, "FTP does not support simultaneous read/write connections.");
+ php_stream_wrapper_log_error(wrapper, options TSRMLS_CC, "FTP does not support simultaneous read/write connections.");
return NULL;
}
@@ -319,7 +320,7 @@ php_stream * php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, char *path, ch
php_stream_close(stream);
}
if (tmp_line[0] != '\0')
- php_stream_wrapper_log_error(wrapper, options, "FTP server reports %s", tmp_line);
+ php_stream_wrapper_log_error(wrapper, options TSRMLS_CC, "FTP server reports %s", tmp_line);
return NULL;
}
/* }}} */
diff --git a/ext/standard/http_fopen_wrapper.c b/ext/standard/http_fopen_wrapper.c
index c06dc6210c..0fdd74d873 100644
--- a/ext/standard/http_fopen_wrapper.c
+++ b/ext/standard/http_fopen_wrapper.c
@@ -87,7 +87,7 @@ php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, char *path, ch
size_t chunk_size = 0, file_size = 0;
if (strchr(mode, 'a') || strchr(mode, '+') || strchr(mode, 'w')) {
- php_stream_wrapper_log_error(wrapper, options, "HTTP wrapper does not writeable connections.");
+ php_stream_wrapper_log_error(wrapper, options TSRMLS_CC, "HTTP wrapper does not writeable connections.");
return NULL;
}
@@ -118,7 +118,7 @@ php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, char *path, ch
#if HAVE_OPENSSL_EXT
if (use_ssl) {
if (php_stream_sock_ssl_activate(stream, 1) == FAILURE) {
- php_stream_wrapper_log_error(wrapper, options, "Unable to activate SSL mode");
+ php_stream_wrapper_log_error(wrapper, options TSRMLS_CC, "Unable to activate SSL mode");
php_stream_close(stream);
stream = NULL;
goto out;
@@ -326,7 +326,7 @@ php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, char *path, ch
FREE_ZVAL(stream->wrapperdata);
}
} else {
- php_stream_wrapper_log_error(wrapper, options, "HTTP request failed! %s", tmp_line);
+ php_stream_wrapper_log_error(wrapper, options TSRMLS_CC, "HTTP request failed! %s", tmp_line);
}
}
out:
@@ -367,9 +367,10 @@ static int php_stream_http_stream_stat(php_stream_wrapper *wrapper,
static php_stream_wrapper_ops http_stream_wops = {
php_stream_url_wrap_http,
- NULL,
+ NULL, /* stream_close */
php_stream_http_stream_stat,
- NULL
+ NULL, /* stat_url */
+ NULL /* opendir */
};
php_stream_wrapper php_stream_http_wrapper = {
diff --git a/main/php_streams.h b/main/php_streams.h
index 160d733931..7791ad59de 100755
--- a/main/php_streams.h
+++ b/main/php_streams.h
@@ -226,6 +226,8 @@ PHPAPI php_stream *_php_stream_alloc(php_stream_ops *ops, void *abstract,
# define php_stream_to_zval(stream, zval) { ZVAL_RESOURCE(zval, (stream)->rsrc_id); }
#endif
+#define php_stream_from_zval(stream, ppzval) ZEND_FETCH_RESOURCE((stream), php_stream *, (ppzval), -1, "stream", php_file_le_stream())
+
#define PHP_STREAM_FREE_CALL_DTOR 1 /* call ops->close */
#define PHP_STREAM_FREE_RELEASE_STREAM 2 /* pefree(stream) */
#define PHP_STREAM_FREE_PRESERVE_HANDLE 4 /* tell ops->close to not close it's underlying handle */