version 1.1.1.1, 2012/02/21 23:48:05
|
version 1.1.1.2, 2012/05/29 12:34:35
|
Line 154 typedef struct _php_stream_wrapper_ops {
|
Line 154 typedef struct _php_stream_wrapper_ops {
|
/* Create/Remove directory */ |
/* Create/Remove directory */ |
int (*stream_mkdir)(php_stream_wrapper *wrapper, char *url, int mode, int options, php_stream_context *context TSRMLS_DC); |
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_rmdir)(php_stream_wrapper *wrapper, 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); |
} php_stream_wrapper_ops; |
} php_stream_wrapper_ops; |
|
|
struct _php_stream_wrapper { |
struct _php_stream_wrapper { |
Line 162 struct _php_stream_wrapper {
|
Line 164 struct _php_stream_wrapper {
|
int is_url; /* so that PG(allow_url_fopen) can be respected */ |
int is_url; /* so that PG(allow_url_fopen) can be respected */ |
|
|
/* support for wrappers to return (multiple) error messages to the stream opener */ |
/* support for wrappers to return (multiple) error messages to the stream opener */ |
int err_count; | int err_count; /* unused */ |
char **err_stack; | char **err_stack; /* unusued */ |
}; |
}; |
|
|
#define PHP_STREAM_FLAG_NO_SEEK 1 |
#define PHP_STREAM_FLAG_NO_SEEK 1 |
Line 225 struct _php_stream {
|
Line 227 struct _php_stream {
|
int eof; |
int eof; |
|
|
#if ZEND_DEBUG |
#if ZEND_DEBUG |
char *open_filename; | const char *open_filename; |
uint open_lineno; |
uint open_lineno; |
#endif |
#endif |
|
|
|
struct _php_stream *enclosing_stream; /* this is a private stream owned by enclosing_stream */ |
}; /* php_stream */ |
}; /* php_stream */ |
|
|
/* state definitions when closing down; these are private to streams.c */ |
/* state definitions when closing down; these are private to streams.c */ |
Line 259 END_EXTERN_C()
|
Line 263 END_EXTERN_C()
|
#define php_stream_from_zval_no_verify(xstr, ppzval) (xstr) = (php_stream*)zend_fetch_resource((ppzval) TSRMLS_CC, -1, "stream", NULL, 2, php_file_le_stream(), php_file_le_pstream()) |
#define php_stream_from_zval_no_verify(xstr, ppzval) (xstr) = (php_stream*)zend_fetch_resource((ppzval) TSRMLS_CC, -1, "stream", NULL, 2, php_file_le_stream(), php_file_le_pstream()) |
|
|
BEGIN_EXTERN_C() |
BEGIN_EXTERN_C() |
|
PHPAPI php_stream *php_stream_encloses(php_stream *enclosing, php_stream *enclosed); |
|
#define php_stream_free_enclosed(stream_enclosed, close_options) _php_stream_free_enclosed((stream_enclosed), (close_options) TSRMLS_CC) |
|
PHPAPI int _php_stream_free_enclosed(php_stream *stream_enclosed, int close_options TSRMLS_DC); |
|
|
PHPAPI int php_stream_from_persistent_id(const char *persistent_id, php_stream **stream TSRMLS_DC); |
PHPAPI int php_stream_from_persistent_id(const char *persistent_id, php_stream **stream TSRMLS_DC); |
#define PHP_STREAM_PERSISTENT_SUCCESS 0 /* id exists */ |
#define PHP_STREAM_PERSISTENT_SUCCESS 0 /* id exists */ |
#define PHP_STREAM_PERSISTENT_FAILURE 1 /* id exists but is not a stream! */ |
#define PHP_STREAM_PERSISTENT_FAILURE 1 /* id exists but is not a stream! */ |
Line 269 PHPAPI int php_stream_from_persistent_id(const char *p
|
Line 277 PHPAPI int php_stream_from_persistent_id(const char *p
|
#define PHP_STREAM_FREE_PRESERVE_HANDLE 4 /* tell ops->close to not close it's underlying handle */ |
#define PHP_STREAM_FREE_PRESERVE_HANDLE 4 /* tell ops->close to not close it's underlying handle */ |
#define PHP_STREAM_FREE_RSRC_DTOR 8 /* called from the resource list dtor */ |
#define PHP_STREAM_FREE_RSRC_DTOR 8 /* called from the resource list dtor */ |
#define PHP_STREAM_FREE_PERSISTENT 16 /* manually freeing a persistent connection */ |
#define PHP_STREAM_FREE_PERSISTENT 16 /* manually freeing a persistent connection */ |
|
#define PHP_STREAM_FREE_IGNORE_ENCLOSING 32 /* don't close the enclosing stream instead */ |
#define PHP_STREAM_FREE_CLOSE (PHP_STREAM_FREE_CALL_DTOR | PHP_STREAM_FREE_RELEASE_STREAM) |
#define PHP_STREAM_FREE_CLOSE (PHP_STREAM_FREE_CALL_DTOR | PHP_STREAM_FREE_RELEASE_STREAM) |
#define PHP_STREAM_FREE_CLOSE_CASTED (PHP_STREAM_FREE_CLOSE | PHP_STREAM_FREE_PRESERVE_HANDLE) |
#define PHP_STREAM_FREE_CLOSE_CASTED (PHP_STREAM_FREE_CLOSE | PHP_STREAM_FREE_PRESERVE_HANDLE) |
#define PHP_STREAM_FREE_CLOSE_PERSISTENT (PHP_STREAM_FREE_CLOSE | PHP_STREAM_FREE_PERSISTENT) |
#define PHP_STREAM_FREE_CLOSE_PERSISTENT (PHP_STREAM_FREE_CLOSE | PHP_STREAM_FREE_PERSISTENT) |
Line 429 BEGIN_EXTERN_C()
|
Line 438 BEGIN_EXTERN_C()
|
ZEND_ATTRIBUTE_DEPRECATED |
ZEND_ATTRIBUTE_DEPRECATED |
PHPAPI size_t _php_stream_copy_to_stream(php_stream *src, php_stream *dest, size_t maxlen STREAMS_DC TSRMLS_DC); |
PHPAPI size_t _php_stream_copy_to_stream(php_stream *src, php_stream *dest, size_t maxlen STREAMS_DC TSRMLS_DC); |
#define php_stream_copy_to_stream(src, dest, maxlen) _php_stream_copy_to_stream((src), (dest), (maxlen) STREAMS_CC TSRMLS_CC) |
#define php_stream_copy_to_stream(src, dest, maxlen) _php_stream_copy_to_stream((src), (dest), (maxlen) STREAMS_CC TSRMLS_CC) |
PHPAPI size_t _php_stream_copy_to_stream_ex(php_stream *src, php_stream *dest, size_t maxlen, size_t *len STREAMS_DC TSRMLS_DC); | PHPAPI int _php_stream_copy_to_stream_ex(php_stream *src, php_stream *dest, size_t maxlen, size_t *len STREAMS_DC TSRMLS_DC); |
#define php_stream_copy_to_stream_ex(src, dest, maxlen, len) _php_stream_copy_to_stream_ex((src), (dest), (maxlen), (len) STREAMS_CC TSRMLS_CC) |
#define php_stream_copy_to_stream_ex(src, dest, maxlen, len) _php_stream_copy_to_stream_ex((src), (dest), (maxlen), (len) STREAMS_CC TSRMLS_CC) |
|
|
|
|
Line 484 END_EXTERN_C()
|
Line 493 END_EXTERN_C()
|
#define IGNORE_PATH 0x00000000 |
#define IGNORE_PATH 0x00000000 |
#define USE_PATH 0x00000001 |
#define USE_PATH 0x00000001 |
#define IGNORE_URL 0x00000002 |
#define IGNORE_URL 0x00000002 |
#define ENFORCE_SAFE_MODE 0x00000004 |
|
#define REPORT_ERRORS 0x00000008 |
#define REPORT_ERRORS 0x00000008 |
|
#define ENFORCE_SAFE_MODE 0 /* for BC only */ |
|
|
/* If you don't need to write to the stream, but really need to |
/* If you don't need to write to the stream, but really need to |
* be able to seek, use this flag in your options. */ |
* be able to seek, use this flag in your options. */ |
Line 583 END_EXTERN_C()
|
Line 592 END_EXTERN_C()
|
|
|
/* Definitions for user streams */ |
/* Definitions for user streams */ |
#define PHP_STREAM_IS_URL 1 |
#define PHP_STREAM_IS_URL 1 |
|
|
|
/* Stream metadata definitions */ |
|
/* Create if referred resource does not exist */ |
|
#define PHP_STREAM_META_TOUCH 1 |
|
#define PHP_STREAM_META_OWNER_NAME 2 |
|
#define PHP_STREAM_META_OWNER 3 |
|
#define PHP_STREAM_META_GROUP_NAME 4 |
|
#define PHP_STREAM_META_GROUP 5 |
|
#define PHP_STREAM_META_ACCESS 6 |
/* |
/* |
* Local variables: |
* Local variables: |
* tab-width: 4 |
* tab-width: 4 |