[prev in list] [next in list] [prev in thread] [next in thread] 

List:       php-cvs
Subject:    [PHP-CVS] com php-src: Constify streams API and a few other calls down the rabbit hole. (`char *` to
From:       Sara Golemon <pollita () php ! net>
Date:       2013-07-30 10:49:36
Message-ID: php-mail-0459b2866bd51beb6f2b12acbf2a3ab0495537457 () git ! php ! net
[Download RAW message or body]

Commit:    92d27ccb0574f901a107409a7fec92888fa2b82f
Author:    Andrey Hristov <andrey@php.net>         Tue, 30 Jul 2013 12:49:36 +0200
Parents:   5e1ac558c3354f98a9a5aecb5b518c46cd55357a
Branches:  master

Link:       http://git.php.net/?p=php-src.git;a=commitdiff;h=92d27ccb0574f901a107409a7fec92888fa2b82f

Log:
Constify streams API and a few other calls down the rabbit hole.
(`char *` to `const char *` for parameters and few return values)
In a few places int len moved to size_t len.

Changed paths:
  M  README.STREAMS
  M  TSRM/tsrm_virtual_cwd.c
  M  TSRM/tsrm_virtual_cwd.h
  M  Zend/zend_operators.h
  M  ext/bz2/bz2.c
  M  ext/bz2/php_bz2.h
  M  ext/fileinfo/fileinfo.c
  M  ext/libxml/libxml.c
  M  ext/openssl/xp_ssl.c
  M  ext/phar/dirstream.c
  M  ext/phar/dirstream.h
  M  ext/phar/phar.c
  M  ext/phar/phar_internal.h
  M  ext/phar/stream.c
  M  ext/phar/stream.h
  M  ext/phar/util.c
  M  ext/standard/file.c
  M  ext/standard/file.h
  M  ext/standard/filestat.c
  M  ext/standard/ftp_fopen_wrapper.c
  M  ext/standard/http_fopen_wrapper.c
  M  ext/standard/php_fopen_wrapper.c
  M  ext/standard/php_fopen_wrappers.h
  M  ext/zip/php_zip.h
  M  ext/zip/zip_stream.c
  M  ext/zlib/php_zlib.h
  M  ext/zlib/zlib_fopen_wrapper.c
  M  main/fopen_wrappers.c
  M  main/php_streams.h
  M  main/streams/glob_wrapper.c
  M  main/streams/memory.c
  M  main/streams/php_stream_plain_wrapper.h
  M  main/streams/php_stream_transport.h
  M  main/streams/plain_wrapper.c
  M  main/streams/streams.c
  M  main/streams/transports.c
  M  main/streams/userspace.c
  M  main/streams/xp_socket.c


["diff_92d27ccb0574f901a107409a7fec92888fa2b82f.txt" (text/plain)]

diff --git a/README.STREAMS b/README.STREAMS
index f625406..0046e6a 100644
--- a/README.STREAMS
+++ b/README.STREAMS
@@ -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:
diff --git a/TSRM/tsrm_virtual_cwd.c b/TSRM/tsrm_virtual_cwd.c
index 3e211fa..a7d0963 100644
--- a/TSRM/tsrm_virtual_cwd.c
+++ b/TSRM/tsrm_virtual_cwd.c
@@ -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;
diff --git a/TSRM/tsrm_virtual_cwd.h b/TSRM/tsrm_virtual_cwd.h
index 8aac4aa..72c4424 100644
--- a/TSRM/tsrm_virtual_cwd.h
+++ b/TSRM/tsrm_virtual_cwd.h
@@ -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);
diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h
index e7ab9bb..38d96f1 100644
--- a/Zend/zend_operators.h
+++ b/Zend/zend_operators.h
@@ -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));
diff --git a/ext/bz2/bz2.c b/ext/bz2/bz2.c
index abe84fc..4adaa47 100644
--- a/ext/bz2/bz2.c
+++ b/ext/bz2/bz2.c
@@ -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)
diff --git a/ext/bz2/php_bz2.h b/ext/bz2/php_bz2.h
index 8b12eca..7bcffc1 100644
--- a/ext/bz2/php_bz2.h
+++ b/ext/bz2/php_bz2.h
@@ -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)
diff --git a/ext/fileinfo/fileinfo.c b/ext/fileinfo/fileinfo.c
index 353adb9..799891e 100644
--- a/ext/fileinfo/fileinfo.c
+++ b/ext/fileinfo/fileinfo.c
@@ -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;
 
diff --git a/ext/libxml/libxml.c b/ext/libxml/libxml.c
index b1cb45d..9ee4de2 100644
--- a/ext/libxml/libxml.c
+++ b/ext/libxml/libxml.c
@@ -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;
diff --git a/ext/openssl/xp_ssl.c b/ext/openssl/xp_ssl.c
index e9a72e3..85d20fd 100644
--- a/ext/openssl/xp_ssl.c
+++ b/ext/openssl/xp_ssl.c
@@ -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)
diff --git a/ext/phar/dirstream.c b/ext/phar/dirstream.c
index c29ca9d..b090577 100644
--- a/ext/phar/dirstream.c
+++ b/ext/phar/dirstream.c
@@ -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;
diff --git a/ext/phar/dirstream.h b/ext/phar/dirstream.h
index 9b07c9d..030fe65 100644
--- a/ext/phar/dirstream.h
+++ b/ext/phar/dirstream.h
@@ -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()
 
diff --git a/ext/phar/phar.c b/ext/phar/phar.c
index ec8e5fb..e8d1139 100644
--- a/ext/phar/phar.c
+++ b/ext/phar/phar.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;
 }
diff --git a/ext/phar/phar_internal.h b/ext/phar/phar_internal.h
index daa85f1..9b8d608 100644
--- a/ext/phar/phar_internal.h
+++ b/ext/phar/phar_internal.h
@@ -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,
diff --git a/ext/phar/stream.c b/ext/phar/stream.c
index 401d81e..d3d4cd6 100644
--- a/ext/phar/stream.c
+++ b/ext/phar/stream.c
@@ -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;
diff --git a/ext/phar/stream.h b/ext/phar/stream.h
index b22b67a..0155759 100644
--- a/ext/phar/stream.h
+++ b/ext/phar/stream.h
@@ -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);
diff --git a/ext/phar/util.c b/ext/phar/util.c
index 8348a47..38aa549 100644
--- a/ext/phar/util.c
+++ b/ext/phar/util.c
@@ -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;
diff --git a/ext/standard/file.c b/ext/standard/file.c
index 106f5c1..c880eb3 100644
--- a/ext/standard/file.c
+++ b/ext/standard/file.c
@@ -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;
diff --git a/ext/standard/file.h b/ext/standard/file.h
index 2bcdfd6..d6f142a 100644
--- a/ext/standard/file.h
+++ b/ext/standard/file.h
@@ -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 */
diff --git a/ext/standard/filestat.c b/ext/standard/filestat.c
index 2713d23..0b40e73 100644
--- a/ext/standard/filestat.c
+++ b/ext/standard/filestat.c
@@ -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) {
diff --git a/ext/standard/ftp_fopen_wrapper.c b/ext/standard/ftp_fopen_wrapper.c
index 86975d7..d04ef52 100644
--- a/ext/standard/ftp_fopen_wrapper.c
+++ b/ext/standard/ftp_fopen_wrapper.c
@@ -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;
diff --git a/ext/standard/http_fopen_wrapper.c b/ext/standard/http_fopen_wrapper.c
index b8676bb..ac6fdad 100644
--- a/ext/standard/http_fopen_wrapper.c
+++ b/ext/standard/http_fopen_wrapper.c
@@ -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);  }
diff --git a/ext/standard/php_fopen_wrapper.c b/ext/standard/php_fopen_wrapper.c
index f8d7bda..0fb27ba 100644
--- a/ext/standard/php_fopen_wrapper.c
+++ b/ext/standard/php_fopen_wrapper.c
@@ -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;
diff --git a/ext/standard/php_fopen_wrappers.h b/ext/standard/php_fopen_wrappers.h
index 5f78256..366a129 100644
--- a/ext/standard/php_fopen_wrappers.h
+++ b/ext/standard/php_fopen_wrappers.h
@@ -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;
diff --git a/ext/zip/php_zip.h b/ext/zip/php_zip.h
index 7dd9ff0..dace407 100644
--- a/ext/zip/php_zip.h
+++ b/ext/zip/php_zip.h
@@ -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
diff --git a/ext/zip/zip_stream.c b/ext/zip/zip_stream.c
index 400edd6..79b54cb 100644
--- a/ext/zip/zip_stream.c
+++ b/ext/zip/zip_stream.c
@@ -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)
diff --git a/ext/zlib/php_zlib.h b/ext/zlib/php_zlib.h
index 6b1d0cd..3e4b938 100644
--- a/ext/zlib/php_zlib.h
+++ b/ext/zlib/php_zlib.h
@@ -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;
diff --git a/ext/zlib/zlib_fopen_wrapper.c b/ext/zlib/zlib_fopen_wrapper.c
index 1b00eb8..2fd9dc7 100644
--- a/ext/zlib/zlib_fopen_wrapper.c
+++ b/ext/zlib/zlib_fopen_wrapper.c
@@ -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;
diff --git a/main/fopen_wrappers.c b/main/fopen_wrappers.c
index 6f11cf3..eb33ac7 100644
--- a/main/fopen_wrappers.c
+++ b/main/fopen_wrappers.c
@@ -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)) {
diff --git a/main/php_streams.h b/main/php_streams.h
index 5acf942..c56014c 100644
--- a/main/php_streams.h
+++ b/main/php_streams.h
@@ -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)
diff --git a/main/streams/glob_wrapper.c b/main/streams/glob_wrapper.c
index 9c051a5..8c3836f 100644
--- a/main/streams/glob_wrapper.c
+++ b/main/streams/glob_wrapper.c
@@ -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;
diff --git a/main/streams/memory.c b/main/streams/memory.c
index 328d3be..90780ea 100644
--- a/main/streams/memory.c
+++ b/main/streams/memory.c
@@ -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 */
diff --git a/main/streams/php_stream_plain_wrapper.h \
b/main/streams/php_stream_plain_wrapper.h index d88b30c..6700df0 100644
--- a/main/streams/php_stream_plain_wrapper.h
+++ b/main/streams/php_stream_plain_wrapper.h
@@ -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);
diff --git a/main/streams/php_stream_transport.h \
b/main/streams/php_stream_transport.h index c2d9110..52df73d 100644
--- a/main/streams/php_stream_transport.h
+++ b/main/streams/php_stream_transport.h
@@ -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;
diff --git a/main/streams/plain_wrapper.c b/main/streams/plain_wrapper.c
index 39df31a..949b827 100644
--- a/main/streams/plain_wrapper.c
+++ b/main/streams/plain_wrapper.c
@@ -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;
diff --git a/main/streams/streams.c b/main/streams/streams.c
index 823b885..d74f9fd 100644
--- a/main/streams/streams.c
+++ b/main/streams/streams.c
@@ -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;
diff --git a/main/streams/transports.c b/main/streams/transports.c
index c24bf97..2d31074 100644
--- a/main/streams/transports.c
+++ b/main/streams/transports.c
@@ -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,
diff --git a/main/streams/userspace.c b/main/streams/userspace.c
index 69edbaa..1e626e4 100644
--- a/main/streams/userspace.c
+++ b/main/streams/userspace.c
@@ -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;
diff --git a/main/streams/xp_socket.c b/main/streams/xp_socket.c
index a9c050f..4edc68b 100644
--- a/main/streams/xp_socket.c
+++ b/main/streams/xp_socket.c
@@ -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)



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic