mirror of
https://github.com/php/php-src.git
synced 2024-10-02 23:36:16 +00:00
Merge branch 'pull-request/399'
This commit is contained in:
commit
2141f394d8
@ -46,7 +46,7 @@ Opening Streams
|
||||
===============
|
||||
In most cases, you should use this API:
|
||||
|
||||
PHPAPI php_stream *php_stream_open_wrapper(char *path, char *mode,
|
||||
PHPAPI php_stream *php_stream_open_wrapper(const char *path, const char *mode,
|
||||
int options, char **opened_path TSRMLS_DC);
|
||||
|
||||
Where:
|
||||
|
@ -1673,7 +1673,7 @@ CWD_API int virtual_creat(const char *path, mode_t mode TSRMLS_DC) /* {{{ */
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
CWD_API int virtual_rename(char *oldname, char *newname TSRMLS_DC) /* {{{ */
|
||||
CWD_API int virtual_rename(const char *oldname, const char *newname TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
cwd_state old_state;
|
||||
cwd_state new_state;
|
||||
|
@ -161,7 +161,7 @@ CWD_API char *virtual_realpath(const char *path, char *real_path TSRMLS_DC);
|
||||
CWD_API FILE *virtual_fopen(const char *path, const char *mode TSRMLS_DC);
|
||||
CWD_API int virtual_open(const char *path TSRMLS_DC, int flags, ...);
|
||||
CWD_API int virtual_creat(const char *path, mode_t mode TSRMLS_DC);
|
||||
CWD_API int virtual_rename(char *oldname, char *newname TSRMLS_DC);
|
||||
CWD_API int virtual_rename(const char *oldname, const char *newname TSRMLS_DC);
|
||||
CWD_API int virtual_stat(const char *path, struct stat *buf TSRMLS_DC);
|
||||
CWD_API int virtual_lstat(const char *path, struct stat *buf TSRMLS_DC);
|
||||
CWD_API int virtual_unlink(const char *path TSRMLS_DC);
|
||||
|
@ -269,11 +269,11 @@ static inline zend_uchar is_numeric_string(const char *str, int length, long *lv
|
||||
return is_numeric_string_ex(str, length, lval, dval, allow_errors, NULL);
|
||||
}
|
||||
|
||||
static inline char *
|
||||
zend_memnstr(char *haystack, char *needle, int needle_len, char *end)
|
||||
static inline const char *
|
||||
zend_memnstr(const char *haystack, const char *needle, int needle_len, char *end)
|
||||
{
|
||||
char *p = haystack;
|
||||
char ne = needle[needle_len-1];
|
||||
const char *p = haystack;
|
||||
const char ne = needle[needle_len-1];
|
||||
|
||||
if (needle_len == 1) {
|
||||
return (char *)memchr(p, *needle, (end-p));
|
||||
|
@ -192,7 +192,7 @@ php_stream_ops php_stream_bz2io_ops = {
|
||||
|
||||
/* {{{ Bzip2 stream openers */
|
||||
PHP_BZ2_API php_stream *_php_stream_bz2open_from_BZFILE(BZFILE *bz,
|
||||
char *mode, php_stream *innerstream STREAMS_DC TSRMLS_DC)
|
||||
const char *mode, php_stream *innerstream STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
struct php_bz2_stream_data_t *self;
|
||||
|
||||
@ -205,8 +205,8 @@ PHP_BZ2_API php_stream *_php_stream_bz2open_from_BZFILE(BZFILE *bz,
|
||||
}
|
||||
|
||||
PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper,
|
||||
char *path,
|
||||
char *mode,
|
||||
const char *path,
|
||||
const char *mode,
|
||||
int options,
|
||||
char **opened_path,
|
||||
php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
|
@ -47,8 +47,8 @@ extern zend_module_entry bz2_module_entry;
|
||||
# define PHP_BZ2_API
|
||||
#endif
|
||||
|
||||
PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
PHP_BZ2_API php_stream *_php_stream_bz2open_from_BZFILE(BZFILE *bz, char *mode, php_stream *innerstream STREAMS_DC TSRMLS_DC);
|
||||
PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
PHP_BZ2_API php_stream *_php_stream_bz2open_from_BZFILE(BZFILE *bz, const char *mode, php_stream *innerstream STREAMS_DC TSRMLS_DC);
|
||||
|
||||
#define php_stream_bz2open_from_BZFILE(bz, mode, innerstream) _php_stream_bz2open_from_BZFILE((bz), (mode), (innerstream) STREAMS_CC TSRMLS_CC)
|
||||
#define php_stream_bz2open(wrapper, path, mode, options, opened_path) _php_stream_bz2open((wrapper), (path), (mode), (options), (opened_path), NULL STREAMS_CC TSRMLS_CC)
|
||||
|
@ -497,7 +497,7 @@ static void _php_finfo_get_type(INTERNAL_FUNCTION_PARAMETERS, int mode, int mime
|
||||
case FILEINFO_MODE_FILE:
|
||||
{
|
||||
/* determine if the file is a local file or remote URL */
|
||||
char *tmp2;
|
||||
const char *tmp2;
|
||||
php_stream_wrapper *wrap;
|
||||
php_stream_statbuf ssb;
|
||||
|
||||
|
@ -292,7 +292,8 @@ static void *php_libxml_streams_IO_open_wrapper(const char *filename, const char
|
||||
php_stream_statbuf ssbuf;
|
||||
php_stream_context *context = NULL;
|
||||
php_stream_wrapper *wrapper = NULL;
|
||||
char *resolved_path, *path_to_open = NULL;
|
||||
char *resolved_path;
|
||||
const char *path_to_open = NULL;
|
||||
void *ret_val = NULL;
|
||||
int isescaped=0;
|
||||
xmlURI *uri;
|
||||
|
@ -309,7 +309,7 @@ static inline int php_openssl_setup_crypto(php_stream *stream,
|
||||
php_stream_xport_crypto_param *cparam
|
||||
TSRMLS_DC)
|
||||
{
|
||||
SSL_METHOD *method;
|
||||
const SSL_METHOD *method;
|
||||
long ssl_ctx_options = SSL_OP_ALL;
|
||||
|
||||
if (sslsock->ssl_handle) {
|
||||
@ -853,7 +853,7 @@ php_stream_ops php_openssl_socket_ops = {
|
||||
php_openssl_sockop_set_option,
|
||||
};
|
||||
|
||||
static char * get_sni(php_stream_context *ctx, char *resourcename, long resourcenamelen, int is_persistent TSRMLS_DC) {
|
||||
static char * get_sni(php_stream_context *ctx, const char *resourcename, size_t resourcenamelen, int is_persistent TSRMLS_DC) {
|
||||
|
||||
php_url *url;
|
||||
|
||||
@ -900,8 +900,8 @@ static char * get_sni(php_stream_context *ctx, char *resourcename, long resource
|
||||
return NULL;
|
||||
}
|
||||
|
||||
php_stream *php_openssl_ssl_socket_factory(const char *proto, long protolen,
|
||||
char *resourcename, long resourcenamelen,
|
||||
php_stream *php_openssl_ssl_socket_factory(const char *proto, size_t protolen,
|
||||
const char *resourcename, size_t resourcenamelen,
|
||||
const char *persistent_id, int options, int flags,
|
||||
struct timeval *timeout,
|
||||
php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
|
@ -319,7 +319,7 @@ PHAR_ADD_ENTRY:
|
||||
/**
|
||||
* Open a directory handle within a phar archive
|
||||
*/
|
||||
php_stream *phar_wrapper_open_dir(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
php_stream *phar_wrapper_open_dir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
php_url *resource = NULL;
|
||||
php_stream *ret;
|
||||
@ -432,7 +432,7 @@ php_stream *phar_wrapper_open_dir(php_stream_wrapper *wrapper, char *path, char
|
||||
/**
|
||||
* Make a new directory within a phar archive
|
||||
*/
|
||||
int phar_wrapper_mkdir(php_stream_wrapper *wrapper, char *url_from, int mode, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
int phar_wrapper_mkdir(php_stream_wrapper *wrapper, const char *url_from, int mode, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
phar_entry_info entry, *e;
|
||||
phar_archive_data *phar = NULL;
|
||||
@ -564,7 +564,7 @@ int phar_wrapper_mkdir(php_stream_wrapper *wrapper, char *url_from, int mode, in
|
||||
/**
|
||||
* Remove a directory within a phar archive
|
||||
*/
|
||||
int phar_wrapper_rmdir(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
int phar_wrapper_rmdir(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
phar_entry_info *entry;
|
||||
phar_archive_data *phar = NULL;
|
||||
|
@ -20,11 +20,11 @@
|
||||
/* $Id$ */
|
||||
|
||||
BEGIN_EXTERN_C()
|
||||
int phar_wrapper_mkdir(php_stream_wrapper *wrapper, char *url_from, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
int phar_wrapper_rmdir(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
int phar_wrapper_mkdir(php_stream_wrapper *wrapper, const char *url_from, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
int phar_wrapper_rmdir(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
|
||||
#ifdef PHAR_DIRSTREAM
|
||||
php_url* phar_parse_url(php_stream_wrapper *wrapper, char *filename, char *mode, int options TSRMLS_DC);
|
||||
php_url* phar_parse_url(php_stream_wrapper *wrapper, const char *filename, const char *mode, int options TSRMLS_DC);
|
||||
|
||||
/* directory handlers */
|
||||
static size_t phar_dir_write(php_stream *stream, const char *buf, size_t count TSRMLS_DC);
|
||||
@ -33,7 +33,7 @@ static int phar_dir_close(php_stream *stream, int close_handle TSRMLS_DC);
|
||||
static int phar_dir_flush(php_stream *stream TSRMLS_DC);
|
||||
static int phar_dir_seek( php_stream *stream, off_t offset, int whence, off_t *newoffset TSRMLS_DC);
|
||||
#else
|
||||
php_stream* phar_wrapper_open_dir(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
php_stream* phar_wrapper_open_dir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
#endif
|
||||
END_EXTERN_C()
|
||||
|
||||
|
@ -2251,13 +2251,13 @@ last_time:
|
||||
*
|
||||
* This is used by phar_parse_url()
|
||||
*/
|
||||
int phar_split_fname(char *filename, int filename_len, char **arch, int *arch_len, char **entry, int *entry_len, int executable, int for_create TSRMLS_DC) /* {{{ */
|
||||
int phar_split_fname(const char *filename, int filename_len, char **arch, int *arch_len, char **entry, int *entry_len, int executable, int for_create TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
const char *ext_str;
|
||||
#ifdef PHP_WIN32
|
||||
char *save;
|
||||
#endif
|
||||
int ext_len, free_filename = 0;
|
||||
int ext_len;
|
||||
|
||||
if (!strncasecmp(filename, "phar://", 7)) {
|
||||
filename += 7;
|
||||
@ -2266,7 +2266,6 @@ int phar_split_fname(char *filename, int filename_len, char **arch, int *arch_le
|
||||
|
||||
ext_len = 0;
|
||||
#ifdef PHP_WIN32
|
||||
free_filename = 1;
|
||||
save = filename;
|
||||
filename = estrndup(filename, filename_len);
|
||||
phar_unixify_path_separators(filename, filename_len);
|
||||
@ -2282,10 +2281,9 @@ int phar_split_fname(char *filename, int filename_len, char **arch, int *arch_le
|
||||
#endif
|
||||
}
|
||||
|
||||
if (free_filename) {
|
||||
efree(filename);
|
||||
}
|
||||
|
||||
#ifdef PHP_WIN32
|
||||
efree(filename);
|
||||
#endif
|
||||
return FAILURE;
|
||||
}
|
||||
|
||||
@ -2308,9 +2306,9 @@ int phar_split_fname(char *filename, int filename_len, char **arch, int *arch_le
|
||||
*entry = estrndup("/", 1);
|
||||
}
|
||||
|
||||
if (free_filename) {
|
||||
efree(filename);
|
||||
}
|
||||
#ifdef PHP_WIN32
|
||||
efree(filename);
|
||||
#endif
|
||||
|
||||
return SUCCESS;
|
||||
}
|
||||
|
@ -690,11 +690,11 @@ int phar_entry_delref(phar_entry_data *idata TSRMLS_DC);
|
||||
|
||||
phar_entry_info *phar_get_entry_info(phar_archive_data *phar, char *path, int path_len, char **error, int security TSRMLS_DC);
|
||||
phar_entry_info *phar_get_entry_info_dir(phar_archive_data *phar, char *path, int path_len, char dir, char **error, int security TSRMLS_DC);
|
||||
phar_entry_data *phar_get_or_create_entry_data(char *fname, int fname_len, char *path, int path_len, char *mode, char allow_dir, char **error, int security TSRMLS_DC);
|
||||
int phar_get_entry_data(phar_entry_data **ret, char *fname, int fname_len, char *path, int path_len, char *mode, char allow_dir, char **error, int security TSRMLS_DC);
|
||||
phar_entry_data *phar_get_or_create_entry_data(char *fname, int fname_len, char *path, int path_len, const char *mode, char allow_dir, char **error, int security TSRMLS_DC);
|
||||
int phar_get_entry_data(phar_entry_data **ret, char *fname, int fname_len, char *path, int path_len, const char *mode, char allow_dir, char **error, int security TSRMLS_DC);
|
||||
int phar_flush(phar_archive_data *archive, char *user_stub, long len, int convert, char **error TSRMLS_DC);
|
||||
int phar_detect_phar_fname_ext(const char *filename, int filename_len, const char **ext_str, int *ext_len, int executable, int for_create, int is_complete TSRMLS_DC);
|
||||
int phar_split_fname(char *filename, int filename_len, char **arch, int *arch_len, char **entry, int *entry_len, int executable, int for_create TSRMLS_DC);
|
||||
int phar_split_fname(const char *filename, int filename_len, char **arch, int *arch_len, char **entry, int *entry_len, int executable, int for_create TSRMLS_DC);
|
||||
|
||||
typedef enum {
|
||||
pcr_use_query,
|
||||
|
@ -56,7 +56,7 @@ php_stream_wrapper php_stream_phar_wrapper = {
|
||||
/**
|
||||
* Open a phar file for streams API
|
||||
*/
|
||||
php_url* phar_parse_url(php_stream_wrapper *wrapper, char *filename, char *mode, int options TSRMLS_DC) /* {{{ */
|
||||
php_url* phar_parse_url(php_stream_wrapper *wrapper, const char *filename, const char *mode, int options TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
php_url *resource;
|
||||
char *arch = NULL, *entry = NULL, *error;
|
||||
@ -155,7 +155,7 @@ php_url* phar_parse_url(php_stream_wrapper *wrapper, char *filename, char *mode,
|
||||
/**
|
||||
* used for fopen('phar://...') and company
|
||||
*/
|
||||
static php_stream * phar_wrapper_open_url(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
static php_stream * phar_wrapper_open_url(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
phar_archive_data *phar;
|
||||
phar_entry_data *idata;
|
||||
@ -563,7 +563,7 @@ static int phar_stream_stat(php_stream *stream, php_stream_statbuf *ssb TSRMLS_D
|
||||
/**
|
||||
* Stream wrapper stat implementation of stat()
|
||||
*/
|
||||
static int phar_wrapper_stat(php_stream_wrapper *wrapper, char *url, int flags,
|
||||
static int phar_wrapper_stat(php_stream_wrapper *wrapper, const char *url, int flags,
|
||||
php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
php_url *resource = NULL;
|
||||
@ -686,7 +686,7 @@ free_resource:
|
||||
/**
|
||||
* Unlink a file within a phar archive
|
||||
*/
|
||||
static int phar_wrapper_unlink(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
static int phar_wrapper_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
php_url *resource;
|
||||
char *internal_file, *error;
|
||||
@ -762,7 +762,7 @@ static int phar_wrapper_unlink(php_stream_wrapper *wrapper, char *url, int optio
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
static int phar_wrapper_rename(php_stream_wrapper *wrapper, char *url_from, char *url_to, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
static int phar_wrapper_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
php_url *resource_from, *resource_to;
|
||||
char *error;
|
||||
|
@ -21,13 +21,13 @@
|
||||
|
||||
BEGIN_EXTERN_C()
|
||||
|
||||
php_url* phar_parse_url(php_stream_wrapper *wrapper, char *filename, char *mode, int options TSRMLS_DC);
|
||||
php_url* phar_parse_url(php_stream_wrapper *wrapper, const char *filename, const char *mode, int options TSRMLS_DC);
|
||||
void phar_entry_remove(phar_entry_data *idata, char **error TSRMLS_DC);
|
||||
|
||||
static php_stream* phar_wrapper_open_url(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
static int phar_wrapper_rename(php_stream_wrapper *wrapper, char *url_from, char *url_to, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int phar_wrapper_unlink(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int phar_wrapper_stat(php_stream_wrapper *wrapper, char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
static php_stream* phar_wrapper_open_url(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
static int phar_wrapper_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int phar_wrapper_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int phar_wrapper_stat(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
|
||||
/* file/stream handlers */
|
||||
static size_t phar_stream_write(php_stream *stream, const char *buf, size_t count TSRMLS_DC);
|
||||
|
@ -572,7 +572,7 @@ not_stream:
|
||||
* appended, truncated, or read. For read, if the entry is marked unmodified, it is
|
||||
* assumed that the file pointer, if present, is opened for reading
|
||||
*/
|
||||
int phar_get_entry_data(phar_entry_data **ret, char *fname, int fname_len, char *path, int path_len, char *mode, char allow_dir, char **error, int security TSRMLS_DC) /* {{{ */
|
||||
int phar_get_entry_data(phar_entry_data **ret, char *fname, int fname_len, char *path, int path_len, const char *mode, char allow_dir, char **error, int security TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
phar_archive_data *phar;
|
||||
phar_entry_info *entry;
|
||||
@ -733,7 +733,7 @@ really_get_entry:
|
||||
/**
|
||||
* Create a new dummy file slot within a writeable phar for a newly created file
|
||||
*/
|
||||
phar_entry_data *phar_get_or_create_entry_data(char *fname, int fname_len, char *path, int path_len, char *mode, char allow_dir, char **error, int security TSRMLS_DC) /* {{{ */
|
||||
phar_entry_data *phar_get_or_create_entry_data(char *fname, int fname_len, char *path, int path_len, const char *mode, char allow_dir, char **error, int security TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
phar_archive_data *phar;
|
||||
phar_entry_info *entry, etemp;
|
||||
|
@ -1284,7 +1284,7 @@ PHPAPI PHP_FUNCTION(fseek)
|
||||
*/
|
||||
|
||||
/* DEPRECATED APIs: Use php_stream_mkdir() instead */
|
||||
PHPAPI int php_mkdir_ex(char *dir, long mode, int options TSRMLS_DC)
|
||||
PHPAPI int php_mkdir_ex(const char *dir, long mode, int options TSRMLS_DC)
|
||||
{
|
||||
int ret;
|
||||
|
||||
@ -1299,7 +1299,7 @@ PHPAPI int php_mkdir_ex(char *dir, long mode, int options TSRMLS_DC)
|
||||
return ret;
|
||||
}
|
||||
|
||||
PHPAPI int php_mkdir(char *dir, long mode TSRMLS_DC)
|
||||
PHPAPI int php_mkdir(const char *dir, long mode TSRMLS_DC)
|
||||
{
|
||||
return php_mkdir_ex(dir, mode, REPORT_ERRORS TSRMLS_CC);
|
||||
}
|
||||
@ -1623,7 +1623,7 @@ PHP_FUNCTION(copy)
|
||||
|
||||
/* {{{ php_copy_file
|
||||
*/
|
||||
PHPAPI int php_copy_file(char *src, char *dest TSRMLS_DC)
|
||||
PHPAPI int php_copy_file(const char *src, const char *dest TSRMLS_DC)
|
||||
{
|
||||
return php_copy_file_ctx(src, dest, 0, NULL TSRMLS_CC);
|
||||
}
|
||||
@ -1631,7 +1631,7 @@ PHPAPI int php_copy_file(char *src, char *dest TSRMLS_DC)
|
||||
|
||||
/* {{{ php_copy_file_ex
|
||||
*/
|
||||
PHPAPI int php_copy_file_ex(char *src, char *dest, int src_flg TSRMLS_DC)
|
||||
PHPAPI int php_copy_file_ex(const char *src, const char *dest, int src_flg TSRMLS_DC)
|
||||
{
|
||||
return php_copy_file_ctx(src, dest, 0, NULL TSRMLS_CC);
|
||||
}
|
||||
@ -1639,7 +1639,7 @@ PHPAPI int php_copy_file_ex(char *src, char *dest, int src_flg TSRMLS_DC)
|
||||
|
||||
/* {{{ php_copy_file_ctx
|
||||
*/
|
||||
PHPAPI int php_copy_file_ctx(char *src, char *dest, int src_flg, php_stream_context *ctx TSRMLS_DC)
|
||||
PHPAPI int php_copy_file_ctx(const char *src, const char *dest, int src_flg, php_stream_context *ctx TSRMLS_DC)
|
||||
{
|
||||
php_stream *srcstream = NULL, *deststream = NULL;
|
||||
int ret = FAILURE;
|
||||
|
@ -74,11 +74,11 @@ PHP_MINIT_FUNCTION(user_streams);
|
||||
|
||||
PHPAPI int php_le_stream_context(TSRMLS_D);
|
||||
PHPAPI int php_set_sock_blocking(int socketd, int block TSRMLS_DC);
|
||||
PHPAPI int php_copy_file(char *src, char *dest TSRMLS_DC);
|
||||
PHPAPI int php_copy_file_ex(char *src, char *dest, int src_chk TSRMLS_DC);
|
||||
PHPAPI int php_copy_file_ctx(char *src, char *dest, int src_chk, php_stream_context *ctx TSRMLS_DC);
|
||||
PHPAPI int php_mkdir_ex(char *dir, long mode, int options TSRMLS_DC);
|
||||
PHPAPI int php_mkdir(char *dir, long mode TSRMLS_DC);
|
||||
PHPAPI int php_copy_file(const char *src, const char *dest TSRMLS_DC);
|
||||
PHPAPI int php_copy_file_ex(const char *src, const char *dest, int src_chk TSRMLS_DC);
|
||||
PHPAPI int php_copy_file_ctx(const char *src, const char *dest, int src_chk, php_stream_context *ctx TSRMLS_DC);
|
||||
PHPAPI int php_mkdir_ex(const char *dir, long mode, int options TSRMLS_DC);
|
||||
PHPAPI int php_mkdir(const char *dir, long mode TSRMLS_DC);
|
||||
PHPAPI void php_fgetcsv(php_stream *stream, char delimiter, char enclosure, char escape_char, size_t buf_len, char *buf, zval *return_value TSRMLS_DC);
|
||||
PHPAPI int php_fputcsv(php_stream *stream, zval *fields, char delimiter, char enclosure, char escape_char TSRMLS_DC);
|
||||
|
||||
@ -121,7 +121,7 @@ typedef struct {
|
||||
long default_socket_timeout;
|
||||
char *user_agent; /* for the http wrapper */
|
||||
char *from_address; /* for the ftp and http wrappers */
|
||||
char *user_stream_current_filename; /* for simple recursion protection */
|
||||
const char *user_stream_current_filename; /* for simple recursion protection */
|
||||
php_stream_context *default_context;
|
||||
HashTable *stream_wrappers; /* per-request copy of url_stream_wrappers_hash */
|
||||
HashTable *stream_filters; /* per-request copy of stream_filters_hash */
|
||||
|
@ -857,7 +857,7 @@ PHPAPI void php_stat(const char *filename, php_stat_len filename_length, int typ
|
||||
"dev", "ino", "mode", "nlink", "uid", "gid", "rdev",
|
||||
"size", "atime", "mtime", "ctime", "blksize", "blocks"
|
||||
};
|
||||
char *local;
|
||||
const char *local;
|
||||
php_stream_wrapper *wrapper;
|
||||
|
||||
if (!filename_length) {
|
||||
|
@ -130,8 +130,9 @@ static int php_stream_ftp_stream_close(php_stream_wrapper *wrapper, php_stream *
|
||||
|
||||
/* {{{ php_ftp_fopen_connect
|
||||
*/
|
||||
static php_stream *php_ftp_fopen_connect(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context,
|
||||
php_stream **preuseid, php_url **presource, int *puse_ssl, int *puse_ssl_on_data TSRMLS_DC)
|
||||
static php_stream *php_ftp_fopen_connect(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
|
||||
char **opened_path, php_stream_context *context, php_stream **preuseid,
|
||||
php_url **presource, int *puse_ssl, int *puse_ssl_on_data TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL, *reuseid = NULL;
|
||||
php_url *resource = NULL;
|
||||
@ -410,7 +411,8 @@ static unsigned short php_fopen_do_pasv(php_stream *stream, char *ip, size_t ip_
|
||||
|
||||
/* {{{ php_fopen_url_wrap_ftp
|
||||
*/
|
||||
php_stream * php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
php_stream * php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, const char *path, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL, *datastream = NULL;
|
||||
php_url *resource = NULL;
|
||||
@ -691,7 +693,8 @@ static php_stream_ops php_ftp_dirstream_ops = {
|
||||
|
||||
/* {{{ php_stream_ftp_opendir
|
||||
*/
|
||||
php_stream * php_stream_ftp_opendir(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
php_stream * php_stream_ftp_opendir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
|
||||
char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream, *reuseid, *datastream = NULL;
|
||||
php_ftp_dirstream_data *dirsdata;
|
||||
@ -780,7 +783,7 @@ opendir_errexit:
|
||||
|
||||
/* {{{ php_stream_ftp_url_stat
|
||||
*/
|
||||
static int php_stream_ftp_url_stat(php_stream_wrapper *wrapper, char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
static int php_stream_ftp_url_stat(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_url *resource = NULL;
|
||||
@ -903,7 +906,7 @@ stat_errexit:
|
||||
|
||||
/* {{{ php_stream_ftp_unlink
|
||||
*/
|
||||
static int php_stream_ftp_unlink(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_stream_ftp_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_url *resource = NULL;
|
||||
@ -953,7 +956,7 @@ unlink_errexit:
|
||||
|
||||
/* {{{ php_stream_ftp_rename
|
||||
*/
|
||||
static int php_stream_ftp_rename(php_stream_wrapper *wrapper, char *url_from, char *url_to, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_stream_ftp_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_url *resource_from = NULL, *resource_to = NULL;
|
||||
@ -1032,7 +1035,7 @@ rename_errexit:
|
||||
|
||||
/* {{{ php_stream_ftp_mkdir
|
||||
*/
|
||||
static int php_stream_ftp_mkdir(php_stream_wrapper *wrapper, char *url, int mode, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_stream_ftp_mkdir(php_stream_wrapper *wrapper, const char *url, int mode, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_url *resource = NULL;
|
||||
@ -1126,7 +1129,7 @@ mkdir_errexit:
|
||||
|
||||
/* {{{ php_stream_ftp_rmdir
|
||||
*/
|
||||
static int php_stream_ftp_rmdir(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_stream_ftp_rmdir(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_url *resource = NULL;
|
||||
|
@ -84,7 +84,8 @@
|
||||
#define HTTP_WRAPPER_HEADER_INIT 1
|
||||
#define HTTP_WRAPPER_REDIRECTED 2
|
||||
|
||||
php_stream *php_stream_url_wrap_http_ex(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context, int redirect_max, int flags STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
php_stream *php_stream_url_wrap_http_ex(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
|
||||
char **opened_path, php_stream_context *context, int redirect_max, int flags STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_url *resource = NULL;
|
||||
@ -921,7 +922,7 @@ out:
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
return php_stream_url_wrap_http_ex(wrapper, path, mode, options, opened_path, context, PHP_URL_REDIRECT_MAX, HTTP_WRAPPER_HEADER_INIT STREAMS_CC TSRMLS_CC);
|
||||
}
|
||||
|
@ -157,7 +157,8 @@ static void php_stream_apply_filter_list(php_stream *stream, char *filterlist, i
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
php_stream * php_stream_url_wrap_php(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
php_stream * php_stream_url_wrap_php(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
|
||||
char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
int fd = -1;
|
||||
int mode_rw = 0;
|
||||
|
@ -23,8 +23,8 @@
|
||||
#ifndef PHP_FOPEN_WRAPPERS_H
|
||||
#define PHP_FOPEN_WRAPPERS_H
|
||||
|
||||
php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
php_stream *php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
php_stream *php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
extern PHPAPI php_stream_wrapper php_stream_http_wrapper;
|
||||
extern PHPAPI php_stream_wrapper php_stream_ftp_wrapper;
|
||||
extern php_stream_wrapper php_stream_php_wrapper;
|
||||
|
@ -81,8 +81,8 @@ typedef struct _ze_zip_object {
|
||||
int filename_len;
|
||||
} ze_zip_object;
|
||||
|
||||
php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
php_stream *php_stream_zip_open(char *filename, char *path, char *mode STREAMS_DC TSRMLS_DC);
|
||||
php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
php_stream *php_stream_zip_open(const char *filename, const char *path, const char *mode STREAMS_DC TSRMLS_DC);
|
||||
|
||||
extern php_stream_wrapper php_stream_zip_wrapper;
|
||||
#endif
|
||||
|
@ -185,7 +185,7 @@ php_stream_ops php_stream_zipio_ops = {
|
||||
};
|
||||
|
||||
/* {{{ php_stream_zip_open */
|
||||
php_stream *php_stream_zip_open(char *filename, char *path, char *mode STREAMS_DC TSRMLS_DC)
|
||||
php_stream *php_stream_zip_open(const char *filename, const char *path, const char *mode STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
struct zip_file *zf = NULL;
|
||||
int err = 0;
|
||||
@ -235,8 +235,8 @@ php_stream *php_stream_zip_open(char *filename, char *path, char *mode STREAMS_D
|
||||
|
||||
/* {{{ php_stream_zip_opener */
|
||||
php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper,
|
||||
char *path,
|
||||
char *mode,
|
||||
const char *path,
|
||||
const char *mode,
|
||||
int options,
|
||||
char **opened_path,
|
||||
php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
|
@ -58,7 +58,7 @@ ZEND_BEGIN_MODULE_GLOBALS(zlib)
|
||||
zend_bool handler_registered;
|
||||
ZEND_END_MODULE_GLOBALS(zlib);
|
||||
|
||||
php_stream *php_stream_gzopen(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
php_stream *php_stream_gzopen(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
extern php_stream_ops php_stream_gzio_ops;
|
||||
extern php_stream_wrapper php_stream_gzip_wrapper;
|
||||
extern php_stream_filter_factory php_zlib_filter_factory;
|
||||
|
@ -106,7 +106,7 @@ php_stream_ops php_stream_gzio_ops = {
|
||||
NULL /* set_option */
|
||||
};
|
||||
|
||||
php_stream *php_stream_gzopen(php_stream_wrapper *wrapper, char *path, char *mode, int options,
|
||||
php_stream *php_stream_gzopen(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
|
||||
char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
struct php_gz_stream_data_t *self;
|
||||
|
@ -475,7 +475,7 @@ PHPAPI char *php_resolve_path(const char *filename, int filename_length, const c
|
||||
char resolved_path[MAXPATHLEN];
|
||||
char trypath[MAXPATHLEN];
|
||||
const char *ptr, *end, *p;
|
||||
char *actual_path;
|
||||
const char *actual_path;
|
||||
php_stream_wrapper *wrapper;
|
||||
|
||||
if (!filename || CHECK_NULL_PATH(filename, filename_length)) {
|
||||
|
@ -131,31 +131,31 @@ typedef struct _php_stream_ops {
|
||||
|
||||
typedef struct _php_stream_wrapper_ops {
|
||||
/* open/create a wrapped stream */
|
||||
php_stream *(*stream_opener)(php_stream_wrapper *wrapper, char *filename, char *mode,
|
||||
php_stream *(*stream_opener)(php_stream_wrapper *wrapper, const char *filename, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
/* close/destroy a wrapped stream */
|
||||
int (*stream_closer)(php_stream_wrapper *wrapper, php_stream *stream TSRMLS_DC);
|
||||
/* stat a wrapped stream */
|
||||
int (*stream_stat)(php_stream_wrapper *wrapper, php_stream *stream, php_stream_statbuf *ssb TSRMLS_DC);
|
||||
/* stat a URL */
|
||||
int (*url_stat)(php_stream_wrapper *wrapper, char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
int (*url_stat)(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
/* open a "directory" stream */
|
||||
php_stream *(*dir_opener)(php_stream_wrapper *wrapper, char *filename, char *mode,
|
||||
php_stream *(*dir_opener)(php_stream_wrapper *wrapper, const char *filename, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
|
||||
const char *label;
|
||||
|
||||
/* delete a file */
|
||||
int (*unlink)(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
int (*unlink)(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
|
||||
/* rename a file */
|
||||
int (*rename)(php_stream_wrapper *wrapper, char *url_from, char *url_to, int options, php_stream_context *context TSRMLS_DC);
|
||||
int (*rename)(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context TSRMLS_DC);
|
||||
|
||||
/* Create/Remove directory */
|
||||
int (*stream_mkdir)(php_stream_wrapper *wrapper, char *url, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
int (*stream_rmdir)(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
int (*stream_mkdir)(php_stream_wrapper *wrapper, const char *url, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
int (*stream_rmdir)(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
/* Metadata handling */
|
||||
int (*stream_metadata)(php_stream_wrapper *wrapper, char *url, int options, void *value, php_stream_context *context TSRMLS_DC);
|
||||
int (*stream_metadata)(php_stream_wrapper *wrapper, const char *url, int options, void *value, php_stream_context *context TSRMLS_DC);
|
||||
} php_stream_wrapper_ops;
|
||||
|
||||
struct _php_stream_wrapper {
|
||||
@ -322,26 +322,26 @@ PHPAPI char *_php_stream_get_line(php_stream *stream, char *buf, size_t maxlen,
|
||||
#define php_stream_gets(stream, buf, maxlen) _php_stream_get_line((stream), (buf), (maxlen), NULL TSRMLS_CC)
|
||||
|
||||
#define php_stream_get_line(stream, buf, maxlen, retlen) _php_stream_get_line((stream), (buf), (maxlen), (retlen) TSRMLS_CC)
|
||||
PHPAPI char *php_stream_get_record(php_stream *stream, size_t maxlen, size_t *returned_len, char *delim, size_t delim_len TSRMLS_DC);
|
||||
PHPAPI char *php_stream_get_record(php_stream *stream, size_t maxlen, size_t *returned_len, const char *delim, size_t delim_len TSRMLS_DC);
|
||||
|
||||
/* CAREFUL! this is equivalent to puts NOT fputs! */
|
||||
PHPAPI int _php_stream_puts(php_stream *stream, char *buf TSRMLS_DC);
|
||||
PHPAPI int _php_stream_puts(php_stream *stream, const char *buf TSRMLS_DC);
|
||||
#define php_stream_puts(stream, buf) _php_stream_puts((stream), (buf) TSRMLS_CC)
|
||||
|
||||
PHPAPI int _php_stream_stat(php_stream *stream, php_stream_statbuf *ssb TSRMLS_DC);
|
||||
#define php_stream_stat(stream, ssb) _php_stream_stat((stream), (ssb) TSRMLS_CC)
|
||||
|
||||
PHPAPI int _php_stream_stat_path(char *path, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
PHPAPI int _php_stream_stat_path(const char *path, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
#define php_stream_stat_path(path, ssb) _php_stream_stat_path((path), 0, (ssb), NULL TSRMLS_CC)
|
||||
#define php_stream_stat_path_ex(path, flags, ssb, context) _php_stream_stat_path((path), (flags), (ssb), (context) TSRMLS_CC)
|
||||
|
||||
PHPAPI int _php_stream_mkdir(char *path, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
PHPAPI int _php_stream_mkdir(const char *path, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
#define php_stream_mkdir(path, mode, options, context) _php_stream_mkdir(path, mode, options, context TSRMLS_CC)
|
||||
|
||||
PHPAPI int _php_stream_rmdir(char *path, int options, php_stream_context *context TSRMLS_DC);
|
||||
PHPAPI int _php_stream_rmdir(const char *path, int options, php_stream_context *context TSRMLS_DC);
|
||||
#define php_stream_rmdir(path, options, context) _php_stream_rmdir(path, options, context TSRMLS_CC)
|
||||
|
||||
PHPAPI php_stream *_php_stream_opendir(char *path, int options, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
PHPAPI php_stream *_php_stream_opendir(const char *path, int options, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
#define php_stream_opendir(path, options, context) _php_stream_opendir((path), (options), (context) STREAMS_CC TSRMLS_CC)
|
||||
PHPAPI php_stream_dirent *_php_stream_readdir(php_stream *dirstream, php_stream_dirent *ent TSRMLS_DC);
|
||||
#define php_stream_readdir(dirstream, dirent) _php_stream_readdir((dirstream), (dirent) TSRMLS_CC)
|
||||
@ -351,7 +351,7 @@ PHPAPI php_stream_dirent *_php_stream_readdir(php_stream *dirstream, php_stream_
|
||||
PHPAPI int php_stream_dirent_alphasort(const char **a, const char **b);
|
||||
PHPAPI int php_stream_dirent_alphasortr(const char **a, const char **b);
|
||||
|
||||
PHPAPI int _php_stream_scandir(char *dirname, char **namelist[], int flags, php_stream_context *context,
|
||||
PHPAPI int _php_stream_scandir(const char *dirname, char **namelist[], int flags, php_stream_context *context,
|
||||
int (*compare) (const char **a, const char **b) TSRMLS_DC);
|
||||
#define php_stream_scandir(dirname, namelist, context, compare) _php_stream_scandir((dirname), (namelist), 0, (context), (compare) TSRMLS_CC)
|
||||
|
||||
@ -540,13 +540,13 @@ void php_shutdown_stream_hashes(TSRMLS_D);
|
||||
PHP_RSHUTDOWN_FUNCTION(streams);
|
||||
|
||||
BEGIN_EXTERN_C()
|
||||
PHPAPI int php_register_url_stream_wrapper(char *protocol, php_stream_wrapper *wrapper TSRMLS_DC);
|
||||
PHPAPI int php_unregister_url_stream_wrapper(char *protocol TSRMLS_DC);
|
||||
PHPAPI int php_register_url_stream_wrapper_volatile(char *protocol, php_stream_wrapper *wrapper TSRMLS_DC);
|
||||
PHPAPI int php_unregister_url_stream_wrapper_volatile(char *protocol TSRMLS_DC);
|
||||
PHPAPI php_stream *_php_stream_open_wrapper_ex(char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
PHPAPI php_stream_wrapper *php_stream_locate_url_wrapper(const char *path, char **path_for_open, int options TSRMLS_DC);
|
||||
PHPAPI char *php_stream_locate_eol(php_stream *stream, char *buf, size_t buf_len TSRMLS_DC);
|
||||
PHPAPI int php_register_url_stream_wrapper(const char *protocol, php_stream_wrapper *wrapper TSRMLS_DC);
|
||||
PHPAPI int php_unregister_url_stream_wrapper(const char *protocol TSRMLS_DC);
|
||||
PHPAPI int php_register_url_stream_wrapper_volatile(const char *protocol, php_stream_wrapper *wrapper TSRMLS_DC);
|
||||
PHPAPI int php_unregister_url_stream_wrapper_volatile(const char *protocol TSRMLS_DC);
|
||||
PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
PHPAPI php_stream_wrapper *php_stream_locate_url_wrapper(const char *path, const char **path_for_open, int options TSRMLS_DC);
|
||||
PHPAPI const char *php_stream_locate_eol(php_stream *stream, const char *buf, size_t buf_len TSRMLS_DC);
|
||||
|
||||
#define php_stream_open_wrapper(path, mode, options, opened) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), NULL STREAMS_CC TSRMLS_CC)
|
||||
#define php_stream_open_wrapper_ex(path, mode, options, opened, context) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), (context) STREAMS_CC TSRMLS_CC)
|
||||
|
@ -109,9 +109,9 @@ PHPAPI int _php_glob_stream_get_count(php_stream *stream, int *pflags STREAMS_DC
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
static void php_glob_stream_path_split(glob_s_t *pglob, char *path, int get_path, char **p_file TSRMLS_DC) /* {{{ */
|
||||
static void php_glob_stream_path_split(glob_s_t *pglob, const char *path, int get_path, const char **p_file TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
char *pos, *gpath = path;
|
||||
const char *pos, *gpath = path;
|
||||
|
||||
if ((pos = strrchr(path, '/')) != NULL) {
|
||||
path = pos+1;
|
||||
@ -141,7 +141,7 @@ static size_t php_glob_stream_read(php_stream *stream, char *buf, size_t count T
|
||||
{
|
||||
glob_s_t *pglob = (glob_s_t *)stream->abstract;
|
||||
php_stream_dirent *ent = (php_stream_dirent*)buf;
|
||||
char *path;
|
||||
const char *path;
|
||||
|
||||
/* avoid problems if someone mis-uses the stream */
|
||||
if (count == sizeof(php_stream_dirent) && pglob) {
|
||||
@ -206,12 +206,12 @@ php_stream_ops php_glob_stream_ops = {
|
||||
};
|
||||
|
||||
/* {{{ php_glob_stream_opener */
|
||||
static php_stream *php_glob_stream_opener(php_stream_wrapper *wrapper, char *path, char *mode,
|
||||
static php_stream *php_glob_stream_opener(php_stream_wrapper *wrapper, const char *path, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
glob_s_t *pglob;
|
||||
int ret;
|
||||
char *tmp, *pos;
|
||||
const char *tmp, *pos;
|
||||
|
||||
if (((options & STREAM_DISABLE_OPEN_BASEDIR) == 0) && php_check_open_basedir(path TSRMLS_CC)) {
|
||||
return NULL;
|
||||
|
@ -598,7 +598,9 @@ PHPAPI php_stream_ops php_stream_rfc2397_ops = {
|
||||
php_stream_temp_set_option
|
||||
};
|
||||
|
||||
static php_stream * php_stream_url_wrap_rfc2397(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
static php_stream * php_stream_url_wrap_rfc2397(php_stream_wrapper *wrapper, const char *path,
|
||||
const char *mode, int options, char **opened_path,
|
||||
php_stream_context *context STREAMS_DC TSRMLS_DC) /* {{{ */
|
||||
{
|
||||
php_stream *stream;
|
||||
php_stream_temp_data *ts;
|
||||
@ -640,11 +642,11 @@ static php_stream * php_stream_url_wrap_rfc2397(php_stream_wrapper *wrapper, cha
|
||||
MAKE_STD_ZVAL(meta);
|
||||
array_init(meta);
|
||||
if (!semi) { /* there is only a mime type */
|
||||
add_assoc_stringl(meta, "mediatype", path, mlen, 1);
|
||||
add_assoc_stringl(meta, "mediatype", (char *) path, mlen, 1);
|
||||
mlen = 0;
|
||||
} else if (sep && sep < semi) { /* there is a mime type */
|
||||
plen = semi - path;
|
||||
add_assoc_stringl(meta, "mediatype", path, plen, 1);
|
||||
add_assoc_stringl(meta, "mediatype", (char *) path, plen, 1);
|
||||
mlen -= plen;
|
||||
path += plen;
|
||||
} else if (semi != path || mlen != sizeof(";base64")-1 || memcmp(path, ";base64", sizeof(";base64")-1)) { /* must be error since parameters are only allowed after mediatype */
|
||||
|
@ -30,7 +30,7 @@ BEGIN_EXTERN_C()
|
||||
PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, char **opened_path, int options STREAMS_DC TSRMLS_DC);
|
||||
#define php_stream_fopen(filename, mode, opened) _php_stream_fopen((filename), (mode), (opened), 0 STREAMS_CC TSRMLS_CC)
|
||||
|
||||
PHPAPI php_stream *_php_stream_fopen_with_path(char *filename, char *mode, char *path, char **opened_path, int options STREAMS_DC TSRMLS_DC);
|
||||
PHPAPI php_stream *_php_stream_fopen_with_path(const char *filename, const char *mode, const char *path, char **opened_path, int options STREAMS_DC TSRMLS_DC);
|
||||
#define php_stream_fopen_with_path(filename, mode, path, opened) _php_stream_fopen_with_path((filename), (mode), (path), (opened), 0 STREAMS_CC TSRMLS_CC)
|
||||
|
||||
PHPAPI php_stream *_php_stream_fopen_from_file(FILE *file, const char *mode STREAMS_DC TSRMLS_DC);
|
||||
|
@ -26,16 +26,16 @@
|
||||
# include <sys/socket.h>
|
||||
#endif
|
||||
|
||||
typedef php_stream *(php_stream_transport_factory_func)(const char *proto, long protolen,
|
||||
char *resourcename, long resourcenamelen,
|
||||
typedef php_stream *(php_stream_transport_factory_func)(const char *proto, size_t protolen,
|
||||
const char *resourcename, size_t resourcenamelen,
|
||||
const char *persistent_id, int options, int flags,
|
||||
struct timeval *timeout,
|
||||
php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
typedef php_stream_transport_factory_func *php_stream_transport_factory;
|
||||
|
||||
BEGIN_EXTERN_C()
|
||||
PHPAPI int php_stream_xport_register(char *protocol, php_stream_transport_factory factory TSRMLS_DC);
|
||||
PHPAPI int php_stream_xport_unregister(char *protocol TSRMLS_DC);
|
||||
PHPAPI int php_stream_xport_register(const char *protocol, php_stream_transport_factory factory TSRMLS_DC);
|
||||
PHPAPI int php_stream_xport_unregister(const char *protocol TSRMLS_DC);
|
||||
|
||||
#define STREAM_XPORT_CLIENT 0
|
||||
#define STREAM_XPORT_SERVER 1
|
||||
@ -46,7 +46,7 @@ PHPAPI int php_stream_xport_unregister(char *protocol TSRMLS_DC);
|
||||
#define STREAM_XPORT_CONNECT_ASYNC 16
|
||||
|
||||
/* Open a client or server socket connection */
|
||||
PHPAPI php_stream *_php_stream_xport_create(const char *name, long namelen, int options,
|
||||
PHPAPI php_stream *_php_stream_xport_create(const char *name, size_t namelen, int options,
|
||||
int flags, const char *persistent_id,
|
||||
struct timeval *timeout,
|
||||
php_stream_context *context,
|
||||
@ -59,13 +59,13 @@ PHPAPI php_stream *_php_stream_xport_create(const char *name, long namelen, int
|
||||
|
||||
/* Bind the stream to a local address */
|
||||
PHPAPI int php_stream_xport_bind(php_stream *stream,
|
||||
const char *name, long namelen,
|
||||
const char *name, size_t namelen,
|
||||
char **error_text
|
||||
TSRMLS_DC);
|
||||
|
||||
/* Connect to a remote address */
|
||||
PHPAPI int php_stream_xport_connect(php_stream *stream,
|
||||
const char *name, long namelen,
|
||||
const char *name, size_t namelen,
|
||||
int asynchronous,
|
||||
struct timeval *timeout,
|
||||
char **error_text,
|
||||
@ -141,7 +141,7 @@ typedef struct _php_stream_xport_param {
|
||||
|
||||
struct {
|
||||
char *name;
|
||||
long namelen;
|
||||
size_t namelen;
|
||||
int backlog;
|
||||
struct timeval *timeout;
|
||||
struct sockaddr *addr;
|
||||
|
@ -851,7 +851,7 @@ static php_stream_ops php_plain_files_dirstream_ops = {
|
||||
NULL /* set_option */
|
||||
};
|
||||
|
||||
static php_stream *php_plain_files_dir_opener(php_stream_wrapper *wrapper, char *path, char *mode,
|
||||
static php_stream *php_plain_files_dir_opener(php_stream_wrapper *wrapper, const char *path, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
DIR *dir = NULL;
|
||||
@ -989,7 +989,7 @@ PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, cha
|
||||
/* }}} */
|
||||
|
||||
|
||||
static php_stream *php_plain_files_stream_opener(php_stream_wrapper *wrapper, char *path, char *mode,
|
||||
static php_stream *php_plain_files_stream_opener(php_stream_wrapper *wrapper, const char *path, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
if (((options & STREAM_DISABLE_OPEN_BASEDIR) == 0) && php_check_open_basedir(path TSRMLS_CC)) {
|
||||
@ -999,7 +999,7 @@ static php_stream *php_plain_files_stream_opener(php_stream_wrapper *wrapper, ch
|
||||
return php_stream_fopen_rel(path, mode, opened_path, options);
|
||||
}
|
||||
|
||||
static int php_plain_files_url_stater(php_stream_wrapper *wrapper, char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
static int php_plain_files_url_stater(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
char *p;
|
||||
|
||||
@ -1029,7 +1029,7 @@ static int php_plain_files_url_stater(php_stream_wrapper *wrapper, char *url, in
|
||||
return VCWD_STAT(url, &ssb->sb);
|
||||
}
|
||||
|
||||
static int php_plain_files_unlink(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_plain_files_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
char *p;
|
||||
int ret;
|
||||
@ -1058,7 +1058,7 @@ static int php_plain_files_unlink(php_stream_wrapper *wrapper, char *url, int op
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int php_plain_files_rename(php_stream_wrapper *wrapper, char *url_from, char *url_to, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_plain_files_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
char *p;
|
||||
int ret;
|
||||
@ -1147,7 +1147,7 @@ static int php_plain_files_rename(php_stream_wrapper *wrapper, char *url_from, c
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int php_plain_files_mkdir(php_stream_wrapper *wrapper, char *dir, int mode, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_plain_files_mkdir(php_stream_wrapper *wrapper, const char *dir, int mode, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
int ret, recursive = options & PHP_STREAM_MKDIR_RECURSIVE;
|
||||
char *p;
|
||||
@ -1235,7 +1235,7 @@ static int php_plain_files_mkdir(php_stream_wrapper *wrapper, char *dir, int mod
|
||||
}
|
||||
}
|
||||
|
||||
static int php_plain_files_rmdir(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int php_plain_files_rmdir(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
#if PHP_WIN32
|
||||
int url_len = strlen(url);
|
||||
@ -1262,7 +1262,7 @@ static int php_plain_files_rmdir(php_stream_wrapper *wrapper, char *url, int opt
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int php_plain_files_metadata(php_stream_wrapper *wrapper, char *url, int option, void *value, php_stream_context *context TSRMLS_DC)
|
||||
static int php_plain_files_metadata(php_stream_wrapper *wrapper, const char *url, int option, void *value, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
struct utimbuf *newtime;
|
||||
char *p;
|
||||
@ -1371,10 +1371,11 @@ php_stream_wrapper php_plain_files_wrapper = {
|
||||
};
|
||||
|
||||
/* {{{ php_stream_fopen_with_path */
|
||||
PHPAPI php_stream *_php_stream_fopen_with_path(char *filename, char *mode, char *path, char **opened_path, int options STREAMS_DC TSRMLS_DC)
|
||||
PHPAPI php_stream *_php_stream_fopen_with_path(const char *filename, const char *mode, const char *path, char **opened_path, int options STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
/* code ripped off from fopen_wrappers.c */
|
||||
char *pathbuf, *ptr, *end;
|
||||
char *pathbuf, *end;
|
||||
const char *ptr;
|
||||
const char *exec_fname;
|
||||
char trypath[MAXPATHLEN];
|
||||
php_stream *stream;
|
||||
|
@ -803,7 +803,7 @@ PHPAPI int _php_stream_getc(php_stream *stream TSRMLS_DC)
|
||||
return EOF;
|
||||
}
|
||||
|
||||
PHPAPI int _php_stream_puts(php_stream *stream, char *buf TSRMLS_DC)
|
||||
PHPAPI int _php_stream_puts(php_stream *stream, const char *buf TSRMLS_DC)
|
||||
{
|
||||
int len;
|
||||
char newline[2] = "\n"; /* is this OK for Win? */
|
||||
@ -835,11 +835,11 @@ PHPAPI int _php_stream_stat(php_stream *stream, php_stream_statbuf *ssb TSRMLS_D
|
||||
return (stream->ops->stat)(stream, ssb TSRMLS_CC);
|
||||
}
|
||||
|
||||
PHPAPI char *php_stream_locate_eol(php_stream *stream, char *buf, size_t buf_len TSRMLS_DC)
|
||||
PHPAPI const char *php_stream_locate_eol(php_stream *stream, const char *buf, size_t buf_len TSRMLS_DC)
|
||||
{
|
||||
size_t avail;
|
||||
char *cr, *lf, *eol = NULL;
|
||||
char *readptr;
|
||||
const char *cr, *lf, *eol = NULL;
|
||||
const char *readptr;
|
||||
|
||||
if (!buf) {
|
||||
readptr = stream->readbuf + stream->readpos;
|
||||
@ -911,7 +911,7 @@ PHPAPI char *_php_stream_get_line(php_stream *stream, char *buf, size_t maxlen,
|
||||
if (avail > 0) {
|
||||
size_t cpysz = 0;
|
||||
char *readptr;
|
||||
char *eol;
|
||||
const char *eol;
|
||||
int done = 0;
|
||||
|
||||
readptr = stream->readbuf + stream->readpos;
|
||||
@ -994,11 +994,11 @@ PHPAPI char *_php_stream_get_line(php_stream *stream, char *buf, size_t maxlen,
|
||||
#define STREAM_BUFFERED_AMOUNT(stream) \
|
||||
((size_t)(((stream)->writepos) - (stream)->readpos))
|
||||
|
||||
static char *_php_stream_search_delim(php_stream *stream,
|
||||
size_t maxlen,
|
||||
size_t skiplen,
|
||||
char *delim, /* non-empty! */
|
||||
size_t delim_len TSRMLS_DC)
|
||||
static const char *_php_stream_search_delim(php_stream *stream,
|
||||
size_t maxlen,
|
||||
size_t skiplen,
|
||||
const char *delim, /* non-empty! */
|
||||
size_t delim_len TSRMLS_DC)
|
||||
{
|
||||
size_t seek_len;
|
||||
|
||||
@ -1018,10 +1018,10 @@ static char *_php_stream_search_delim(php_stream *stream,
|
||||
}
|
||||
}
|
||||
|
||||
PHPAPI char *php_stream_get_record(php_stream *stream, size_t maxlen, size_t *returned_len, char *delim, size_t delim_len TSRMLS_DC)
|
||||
PHPAPI char *php_stream_get_record(php_stream *stream, size_t maxlen, size_t *returned_len, const char *delim, size_t delim_len TSRMLS_DC)
|
||||
{
|
||||
char *ret_buf, /* returned buffer */
|
||||
*found_delim = NULL;
|
||||
char *ret_buf; /* returned buffer */
|
||||
const char *found_delim = NULL;
|
||||
size_t buffered_len,
|
||||
tent_ret_len; /* tentative returned length */
|
||||
int has_delim = delim_len > 0;
|
||||
@ -1676,9 +1676,9 @@ int php_shutdown_stream_wrappers(int module_number TSRMLS_DC)
|
||||
/* Validate protocol scheme names during registration
|
||||
* Must conform to /^[a-zA-Z0-9+.-]+$/
|
||||
*/
|
||||
static inline int php_stream_wrapper_scheme_validate(char *protocol, int protocol_len)
|
||||
static inline int php_stream_wrapper_scheme_validate(const char *protocol, unsigned int protocol_len)
|
||||
{
|
||||
int i;
|
||||
unsigned int i;
|
||||
|
||||
for(i = 0; i < protocol_len; i++) {
|
||||
if (!isalnum((int)protocol[i]) &&
|
||||
@ -1693,9 +1693,9 @@ static inline int php_stream_wrapper_scheme_validate(char *protocol, int protoco
|
||||
}
|
||||
|
||||
/* API for registering GLOBAL wrappers */
|
||||
PHPAPI int php_register_url_stream_wrapper(char *protocol, php_stream_wrapper *wrapper TSRMLS_DC)
|
||||
PHPAPI int php_register_url_stream_wrapper(const char *protocol, php_stream_wrapper *wrapper TSRMLS_DC)
|
||||
{
|
||||
int protocol_len = strlen(protocol);
|
||||
unsigned int protocol_len = strlen(protocol);
|
||||
|
||||
if (php_stream_wrapper_scheme_validate(protocol, protocol_len) == FAILURE) {
|
||||
return FAILURE;
|
||||
@ -1704,7 +1704,7 @@ PHPAPI int php_register_url_stream_wrapper(char *protocol, php_stream_wrapper *w
|
||||
return zend_hash_add(&url_stream_wrappers_hash, protocol, protocol_len + 1, &wrapper, sizeof(wrapper), NULL);
|
||||
}
|
||||
|
||||
PHPAPI int php_unregister_url_stream_wrapper(char *protocol TSRMLS_DC)
|
||||
PHPAPI int php_unregister_url_stream_wrapper(const char *protocol TSRMLS_DC)
|
||||
{
|
||||
return zend_hash_del(&url_stream_wrappers_hash, protocol, strlen(protocol) + 1);
|
||||
}
|
||||
@ -1719,9 +1719,9 @@ static void clone_wrapper_hash(TSRMLS_D)
|
||||
}
|
||||
|
||||
/* API for registering VOLATILE wrappers */
|
||||
PHPAPI int php_register_url_stream_wrapper_volatile(char *protocol, php_stream_wrapper *wrapper TSRMLS_DC)
|
||||
PHPAPI int php_register_url_stream_wrapper_volatile(const char *protocol, php_stream_wrapper *wrapper TSRMLS_DC)
|
||||
{
|
||||
int protocol_len = strlen(protocol);
|
||||
unsigned int protocol_len = strlen(protocol);
|
||||
|
||||
if (php_stream_wrapper_scheme_validate(protocol, protocol_len) == FAILURE) {
|
||||
return FAILURE;
|
||||
@ -1734,7 +1734,7 @@ PHPAPI int php_register_url_stream_wrapper_volatile(char *protocol, php_stream_w
|
||||
return zend_hash_add(FG(stream_wrappers), protocol, protocol_len + 1, &wrapper, sizeof(wrapper), NULL);
|
||||
}
|
||||
|
||||
PHPAPI int php_unregister_url_stream_wrapper_volatile(char *protocol TSRMLS_DC)
|
||||
PHPAPI int php_unregister_url_stream_wrapper_volatile(const char *protocol TSRMLS_DC)
|
||||
{
|
||||
if (!FG(stream_wrappers)) {
|
||||
clone_wrapper_hash(TSRMLS_C);
|
||||
@ -1745,7 +1745,7 @@ PHPAPI int php_unregister_url_stream_wrapper_volatile(char *protocol TSRMLS_DC)
|
||||
/* }}} */
|
||||
|
||||
/* {{{ php_stream_locate_url_wrapper */
|
||||
PHPAPI php_stream_wrapper *php_stream_locate_url_wrapper(const char *path, char **path_for_open, int options TSRMLS_DC)
|
||||
PHPAPI php_stream_wrapper *php_stream_locate_url_wrapper(const char *path, const char **path_for_open, int options TSRMLS_DC)
|
||||
{
|
||||
HashTable *wrapper_hash = (FG(stream_wrappers) ? FG(stream_wrappers) : &url_stream_wrappers_hash);
|
||||
php_stream_wrapper **wrapperpp = NULL;
|
||||
@ -1880,7 +1880,7 @@ PHPAPI php_stream_wrapper *php_stream_locate_url_wrapper(const char *path, char
|
||||
|
||||
/* {{{ _php_stream_mkdir
|
||||
*/
|
||||
PHPAPI int _php_stream_mkdir(char *path, int mode, int options, php_stream_context *context TSRMLS_DC)
|
||||
PHPAPI int _php_stream_mkdir(const char *path, int mode, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream_wrapper *wrapper = NULL;
|
||||
|
||||
@ -1895,7 +1895,7 @@ PHPAPI int _php_stream_mkdir(char *path, int mode, int options, php_stream_conte
|
||||
|
||||
/* {{{ _php_stream_rmdir
|
||||
*/
|
||||
PHPAPI int _php_stream_rmdir(char *path, int options, php_stream_context *context TSRMLS_DC)
|
||||
PHPAPI int _php_stream_rmdir(const char *path, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream_wrapper *wrapper = NULL;
|
||||
|
||||
@ -1909,10 +1909,10 @@ PHPAPI int _php_stream_rmdir(char *path, int options, php_stream_context *contex
|
||||
/* }}} */
|
||||
|
||||
/* {{{ _php_stream_stat_path */
|
||||
PHPAPI int _php_stream_stat_path(char *path, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
PHPAPI int _php_stream_stat_path(const char *path, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
php_stream_wrapper *wrapper = NULL;
|
||||
char *path_to_open = path;
|
||||
const char *path_to_open = path;
|
||||
int ret;
|
||||
|
||||
/* Try to hit the cache first */
|
||||
@ -1954,12 +1954,12 @@ PHPAPI int _php_stream_stat_path(char *path, int flags, php_stream_statbuf *ssb,
|
||||
/* }}} */
|
||||
|
||||
/* {{{ php_stream_opendir */
|
||||
PHPAPI php_stream *_php_stream_opendir(char *path, int options,
|
||||
PHPAPI php_stream *_php_stream_opendir(const char *path, int options,
|
||||
php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_stream_wrapper *wrapper = NULL;
|
||||
char *path_to_open;
|
||||
const char *path_to_open;
|
||||
|
||||
if (!path || !*path) {
|
||||
return NULL;
|
||||
@ -2003,12 +2003,12 @@ PHPAPI php_stream_dirent *_php_stream_readdir(php_stream *dirstream, php_stream_
|
||||
/* }}} */
|
||||
|
||||
/* {{{ php_stream_open_wrapper_ex */
|
||||
PHPAPI php_stream *_php_stream_open_wrapper_ex(char *path, char *mode, int options,
|
||||
PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mode, int options,
|
||||
char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream = NULL;
|
||||
php_stream_wrapper *wrapper = NULL;
|
||||
char *path_to_open;
|
||||
const char *path_to_open;
|
||||
int persistent = options & STREAM_OPEN_PERSISTENT;
|
||||
char *resolved_path = NULL;
|
||||
char *copy_of_path = NULL;
|
||||
@ -2264,7 +2264,7 @@ PHPAPI int php_stream_dirent_alphasortr(const char **a, const char **b)
|
||||
|
||||
/* {{{ php_stream_scandir
|
||||
*/
|
||||
PHPAPI int _php_stream_scandir(char *dirname, char **namelist[], int flags, php_stream_context *context,
|
||||
PHPAPI int _php_stream_scandir(const char *dirname, char **namelist[], int flags, php_stream_context *context,
|
||||
int (*compare) (const char **a, const char **b) TSRMLS_DC)
|
||||
{
|
||||
php_stream *stream;
|
||||
|
@ -29,12 +29,12 @@ PHPAPI HashTable *php_stream_xport_get_hash(void)
|
||||
return &xport_hash;
|
||||
}
|
||||
|
||||
PHPAPI int php_stream_xport_register(char *protocol, php_stream_transport_factory factory TSRMLS_DC)
|
||||
PHPAPI int php_stream_xport_register(const char *protocol, php_stream_transport_factory factory TSRMLS_DC)
|
||||
{
|
||||
return zend_hash_update(&xport_hash, protocol, strlen(protocol) + 1, &factory, sizeof(factory), NULL);
|
||||
}
|
||||
|
||||
PHPAPI int php_stream_xport_unregister(char *protocol TSRMLS_DC)
|
||||
PHPAPI int php_stream_xport_unregister(const char *protocol TSRMLS_DC)
|
||||
{
|
||||
return zend_hash_del(&xport_hash, protocol, strlen(protocol) + 1);
|
||||
}
|
||||
@ -49,7 +49,7 @@ PHPAPI int php_stream_xport_unregister(char *protocol TSRMLS_DC)
|
||||
if (local_err) { efree(local_err); local_err = NULL; } \
|
||||
}
|
||||
|
||||
PHPAPI php_stream *_php_stream_xport_create(const char *name, long namelen, int options,
|
||||
PHPAPI php_stream *_php_stream_xport_create(const char *name, size_t namelen, int options,
|
||||
int flags, const char *persistent_id,
|
||||
struct timeval *timeout,
|
||||
php_stream_context *context,
|
||||
@ -194,7 +194,7 @@ PHPAPI php_stream *_php_stream_xport_create(const char *name, long namelen, int
|
||||
|
||||
/* Bind the stream to a local address */
|
||||
PHPAPI int php_stream_xport_bind(php_stream *stream,
|
||||
const char *name, long namelen,
|
||||
const char *name, size_t namelen,
|
||||
char **error_text
|
||||
TSRMLS_DC)
|
||||
{
|
||||
@ -222,7 +222,7 @@ PHPAPI int php_stream_xport_bind(php_stream *stream,
|
||||
|
||||
/* Connect to a remote address */
|
||||
PHPAPI int php_stream_xport_connect(php_stream *stream,
|
||||
const char *name, long namelen,
|
||||
const char *name, size_t namelen,
|
||||
int asynchronous,
|
||||
struct timeval *timeout,
|
||||
char **error_text,
|
||||
|
@ -45,14 +45,14 @@ struct php_user_stream_wrapper {
|
||||
php_stream_wrapper wrapper;
|
||||
};
|
||||
|
||||
static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, char *filename, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
static int user_wrapper_stat_url(php_stream_wrapper *wrapper, char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_unlink(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_rename(php_stream_wrapper *wrapper, char *url_from, char *url_to, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_mkdir(php_stream_wrapper *wrapper, char *url, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_rmdir(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_metadata(php_stream_wrapper *wrapper, char *url, int option, void *value, php_stream_context *context TSRMLS_DC);
|
||||
static php_stream *user_wrapper_opendir(php_stream_wrapper *wrapper, char *filename, char *mode,
|
||||
static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *filename, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
static int user_wrapper_stat_url(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_mkdir(php_stream_wrapper *wrapper, const char *url, int mode, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_rmdir(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC);
|
||||
static int user_wrapper_metadata(php_stream_wrapper *wrapper, const char *url, int option, void *value, php_stream_context *context TSRMLS_DC);
|
||||
static php_stream *user_wrapper_opendir(php_stream_wrapper *wrapper, const char *filename, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
|
||||
|
||||
static php_stream_wrapper_ops user_stream_wops = {
|
||||
@ -332,7 +332,8 @@ static zval *user_stream_create_object(struct php_user_stream_wrapper *uwrap, ph
|
||||
return object;
|
||||
}
|
||||
|
||||
static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, char *filename, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *filename, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
php_userstream_data_t *us;
|
||||
@ -437,7 +438,7 @@ static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, char *filena
|
||||
return stream;
|
||||
}
|
||||
|
||||
static php_stream *user_wrapper_opendir(php_stream_wrapper *wrapper, char *filename, char *mode,
|
||||
static php_stream *user_wrapper_opendir(php_stream_wrapper *wrapper, const char *filename, const char *mode,
|
||||
int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
@ -1151,7 +1152,7 @@ static int php_userstreamop_set_option(php_stream *stream, int option, int value
|
||||
}
|
||||
|
||||
|
||||
static int user_wrapper_unlink(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int user_wrapper_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
zval *zfilename, *zfuncname, *zretval;
|
||||
@ -1198,7 +1199,8 @@ static int user_wrapper_unlink(php_stream_wrapper *wrapper, char *url, int optio
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int user_wrapper_rename(php_stream_wrapper *wrapper, char *url_from, char *url_to, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int user_wrapper_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to,
|
||||
int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
zval *zold_name, *znew_name, *zfuncname, *zretval;
|
||||
@ -1250,7 +1252,8 @@ static int user_wrapper_rename(php_stream_wrapper *wrapper, char *url_from, char
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int user_wrapper_mkdir(php_stream_wrapper *wrapper, char *url, int mode, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int user_wrapper_mkdir(php_stream_wrapper *wrapper, const char *url, int mode,
|
||||
int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
zval *zfilename, *zmode, *zoptions, *zfuncname, *zretval;
|
||||
@ -1308,7 +1311,8 @@ static int user_wrapper_mkdir(php_stream_wrapper *wrapper, char *url, int mode,
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int user_wrapper_rmdir(php_stream_wrapper *wrapper, char *url, int options, php_stream_context *context TSRMLS_DC)
|
||||
static int user_wrapper_rmdir(php_stream_wrapper *wrapper, const char *url,
|
||||
int options, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
zval *zfilename, *zoptions, *zfuncname, *zretval;
|
||||
@ -1361,7 +1365,8 @@ static int user_wrapper_rmdir(php_stream_wrapper *wrapper, char *url, int option
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int user_wrapper_metadata(php_stream_wrapper *wrapper, char *url, int option, void *value, php_stream_context *context TSRMLS_DC)
|
||||
static int user_wrapper_metadata(php_stream_wrapper *wrapper, const char *url, int option,
|
||||
void *value, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
zval *zfilename, *zoption, *zvalue, *zfuncname, *zretval;
|
||||
@ -1444,7 +1449,8 @@ static int user_wrapper_metadata(php_stream_wrapper *wrapper, char *url, int opt
|
||||
}
|
||||
|
||||
|
||||
static int user_wrapper_stat_url(php_stream_wrapper *wrapper, char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
static int user_wrapper_stat_url(php_stream_wrapper *wrapper, const char *url, int flags,
|
||||
php_stream_statbuf *ssb, php_stream_context *context TSRMLS_DC)
|
||||
{
|
||||
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
|
||||
zval *zfilename, *zfuncname, *zretval, *zflags;
|
||||
|
@ -230,7 +230,7 @@ static int php_sockop_stat(php_stream *stream, php_stream_statbuf *ssb TSRMLS_DC
|
||||
#endif
|
||||
}
|
||||
|
||||
static inline int sock_sendto(php_netstream_data_t *sock, char *buf, size_t buflen, int flags,
|
||||
static inline int sock_sendto(php_netstream_data_t *sock, const char *buf, size_t buflen, int flags,
|
||||
struct sockaddr *addr, socklen_t addrlen
|
||||
TSRMLS_DC)
|
||||
{
|
||||
@ -521,7 +521,7 @@ static inline int parse_unix_address(php_stream_xport_param *xparam, struct sock
|
||||
}
|
||||
#endif
|
||||
|
||||
static inline char *parse_ip_address_ex(const char *str, int str_len, int *portno, int get_err, char **err TSRMLS_DC)
|
||||
static inline char *parse_ip_address_ex(const char *str, size_t str_len, int *portno, int get_err, char **err TSRMLS_DC)
|
||||
{
|
||||
char *colon;
|
||||
char *host = NULL;
|
||||
@ -774,8 +774,8 @@ static int php_tcp_sockop_set_option(php_stream *stream, int option, int value,
|
||||
}
|
||||
|
||||
|
||||
PHPAPI php_stream *php_stream_generic_socket_factory(const char *proto, long protolen,
|
||||
char *resourcename, long resourcenamelen,
|
||||
PHPAPI php_stream *php_stream_generic_socket_factory(const char *proto, size_t protolen,
|
||||
const char *resourcename, size_t resourcenamelen,
|
||||
const char *persistent_id, int options, int flags,
|
||||
struct timeval *timeout,
|
||||
php_stream_context *context STREAMS_DC TSRMLS_DC)
|
||||
|
Loading…
Reference in New Issue
Block a user