php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
streams.c File Reference
#include "php.h"
#include "php_globals.h"
#include "php_memory_streams.h"
#include "php_network.h"
#include "php_open_temporary_file.h"
#include "ext/standard/file.h"
#include "ext/standard/basic_functions.h"
#include "ext/standard/php_string.h"
#include <stddef.h>
#include <fcntl.h>
#include "php_streams_int.h"

Go to the source code of this file.

Macros

#define _GNU_SOURCE
 
#define STREAM_BUFFERED_AMOUNT(stream)
 

Functions

PHPAPI int php_file_le_stream (void)
 
PHPAPI int php_file_le_pstream (void)
 
PHPAPI int php_file_le_stream_filter (void)
 
PHPAPI HashTable_php_stream_get_url_stream_wrappers_hash (void)
 
PHPAPI HashTablephp_stream_get_url_stream_wrappers_hash_global (void)
 
 PHP_RSHUTDOWN_FUNCTION (streams)
 
PHPAPI php_streamphp_stream_encloses (php_stream *enclosing, php_stream *enclosed)
 
PHPAPI int php_stream_from_persistent_id (const char *persistent_id, php_stream **stream)
 
PHPAPI void php_stream_wrapper_log_error (const php_stream_wrapper *wrapper, int options, const char *fmt,...)
 
PHPAPI php_stream_php_stream_alloc (const php_stream_ops *ops, void *abstract, const char *persistent_id, const char *mode STREAMS_DC)
 
PHPAPI int _php_stream_free_enclosed (php_stream *stream_enclosed, int close_options)
 
PHPAPI int _php_stream_free (php_stream *stream, int close_options)
 
PHPAPI zend_result _php_stream_fill_read_buffer (php_stream *stream, size_t size)
 
PHPAPI ssize_t _php_stream_read (php_stream *stream, char *buf, size_t size)
 
PHPAPI zend_stringphp_stream_read_to_str (php_stream *stream, size_t len)
 
PHPAPI bool _php_stream_eof (php_stream *stream)
 
PHPAPI int _php_stream_putc (php_stream *stream, int c)
 
PHPAPI int _php_stream_getc (php_stream *stream)
 
PHPAPI bool _php_stream_puts (php_stream *stream, const char *buf)
 
PHPAPI int _php_stream_stat (php_stream *stream, php_stream_statbuf *ssb)
 
PHPAPI const char * php_stream_locate_eol (php_stream *stream, zend_string *buf)
 
PHPAPI char * _php_stream_get_line (php_stream *stream, char *buf, size_t maxlen, size_t *returned_len)
 
PHPAPI zend_stringphp_stream_get_record (php_stream *stream, size_t maxlen, const char *delim, size_t delim_len)
 
PHPAPI int _php_stream_flush (php_stream *stream, int closing)
 
PHPAPI ssize_t _php_stream_write (php_stream *stream, const char *buf, size_t count)
 
PHPAPI ssize_t _php_stream_printf (php_stream *stream, const char *fmt,...)
 
PHPAPI zend_off_t _php_stream_tell (php_stream *stream)
 
PHPAPI int _php_stream_seek (php_stream *stream, zend_off_t offset, int whence)
 
PHPAPI int _php_stream_set_option (php_stream *stream, int option, int value, void *ptrparam)
 
PHPAPI int _php_stream_sync (php_stream *stream, bool data_only)
 
PHPAPI int _php_stream_truncate_set_size (php_stream *stream, size_t newsize)
 
PHPAPI ssize_t _php_stream_passthru (php_stream *stream STREAMS_DC)
 
PHPAPI zend_string_php_stream_copy_to_mem (php_stream *src, size_t maxlen, int persistent STREAMS_DC)
 
PHPAPI zend_result _php_stream_copy_to_stream_ex (php_stream *src, php_stream *dest, size_t maxlen, size_t *len STREAMS_DC)
 
ZEND_ATTRIBUTE_DEPRECATED PHPAPI size_t _php_stream_copy_to_stream (php_stream *src, php_stream *dest, size_t maxlen STREAMS_DC)
 
void php_shutdown_stream_hashes (void)
 
int php_init_stream_wrappers (int module_number)
 
void php_shutdown_stream_wrappers (int module_number)
 
PHPAPI zend_result php_register_url_stream_wrapper (const char *protocol, const php_stream_wrapper *wrapper)
 
PHPAPI zend_result php_unregister_url_stream_wrapper (const char *protocol)
 
PHPAPI zend_result php_register_url_stream_wrapper_volatile (zend_string *protocol, php_stream_wrapper *wrapper)
 
PHPAPI zend_result php_unregister_url_stream_wrapper_volatile (zend_string *protocol)
 
PHPAPI php_stream_wrapperphp_stream_locate_url_wrapper (const char *path, const char **path_for_open, int options)
 
PHPAPI int _php_stream_mkdir (const char *path, int mode, int options, php_stream_context *context)
 
PHPAPI int _php_stream_rmdir (const char *path, int options, php_stream_context *context)
 
PHPAPI int _php_stream_stat_path (const char *path, int flags, php_stream_statbuf *ssb, php_stream_context *context)
 
PHPAPI php_stream_php_stream_opendir (const char *path, int options, php_stream_context *context STREAMS_DC)
 
PHPAPI php_stream_dirent_php_stream_readdir (php_stream *dirstream, php_stream_dirent *ent)
 
PHPAPI php_stream_php_stream_open_wrapper_ex (const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC)
 
PHPAPI php_stream_contextphp_stream_context_set (php_stream *stream, php_stream_context *context)
 
PHPAPI void php_stream_notification_notify (php_stream_context *context, int notifycode, int severity, char *xmsg, int xcode, size_t bytes_sofar, size_t bytes_max, void *ptr)
 
PHPAPI void php_stream_context_free (php_stream_context *context)
 
PHPAPI php_stream_contextphp_stream_context_alloc (void)
 
PHPAPI php_stream_notifierphp_stream_notification_alloc (void)
 
PHPAPI void php_stream_notification_free (php_stream_notifier *notifier)
 
PHPAPI zvalphp_stream_context_get_option (php_stream_context *context, const char *wrappername, const char *optionname)
 
PHPAPI void php_stream_context_set_option (php_stream_context *context, const char *wrappername, const char *optionname, zval *optionvalue)
 
PHPAPI int php_stream_dirent_alphasort (const zend_string **a, const zend_string **b)
 
PHPAPI int php_stream_dirent_alphasortr (const zend_string **a, const zend_string **b)
 
PHPAPI int _php_stream_scandir (const char *dirname, zend_string **namelist[], int flags, php_stream_context *context, int(*compare)(const zend_string **a, const zend_string **b))
 

Macro Definition Documentation

◆ _GNU_SOURCE

#define _GNU_SOURCE

Definition at line 21 of file streams.c.

◆ STREAM_BUFFERED_AMOUNT

#define STREAM_BUFFERED_AMOUNT ( stream)
Value:
((size_t)(((stream)->writepos) - (stream)->readpos))

Definition at line 1035 of file streams.c.

Function Documentation

◆ _php_stream_alloc()

PHPAPI php_stream * _php_stream_alloc ( const php_stream_ops * ops,
void * abstract,
const char * persistent_id,
const char *mode STREAMS_DC )

Definition at line 278 of file streams.c.

◆ _php_stream_copy_to_mem()

PHPAPI zend_string * _php_stream_copy_to_mem ( php_stream * src,
size_t maxlen,
int persistent STREAMS_DC )

Definition at line 1520 of file streams.c.

◆ _php_stream_copy_to_stream()

ZEND_ATTRIBUTE_DEPRECATED PHPAPI size_t _php_stream_copy_to_stream ( php_stream * src,
php_stream * dest,
size_t maxlen STREAMS_DC )

Definition at line 1812 of file streams.c.

◆ _php_stream_copy_to_stream_ex()

PHPAPI zend_result _php_stream_copy_to_stream_ex ( php_stream * src,
php_stream * dest,
size_t maxlen,
size_t *len STREAMS_DC )

Definition at line 1613 of file streams.c.

◆ _php_stream_eof()

PHPAPI bool _php_stream_eof ( php_stream * stream)

Definition at line 810 of file streams.c.

◆ _php_stream_fill_read_buffer()

PHPAPI zend_result _php_stream_fill_read_buffer ( php_stream * stream,
size_t size )

Definition at line 541 of file streams.c.

◆ _php_stream_flush()

PHPAPI int _php_stream_flush ( php_stream * stream,
int closing )

Definition at line 1271 of file streams.c.

◆ _php_stream_free()

PHPAPI int _php_stream_free ( php_stream * stream,
int close_options )

Definition at line 365 of file streams.c.

◆ _php_stream_free_enclosed()

PHPAPI int _php_stream_free_enclosed ( php_stream * stream_enclosed,
int close_options )

Definition at line 330 of file streams.c.

◆ _php_stream_get_line()

PHPAPI char * _php_stream_get_line ( php_stream * stream,
char * buf,
size_t maxlen,
size_t * returned_len )

Definition at line 921 of file streams.c.

◆ _php_stream_get_url_stream_wrappers_hash()

PHPAPI HashTable * _php_stream_get_url_stream_wrappers_hash ( void )

Definition at line 57 of file streams.c.

◆ _php_stream_getc()

PHPAPI int _php_stream_getc ( php_stream * stream)

Definition at line 837 of file streams.c.

◆ _php_stream_mkdir()

PHPAPI int _php_stream_mkdir ( const char * path,
int mode,
int options,
php_stream_context * context )

Definition at line 2094 of file streams.c.

◆ _php_stream_open_wrapper_ex()

PHPAPI php_stream * _php_stream_open_wrapper_ex ( const char * path,
const char * mode,
int options,
zend_string ** opened_path,
php_stream_context *context STREAMS_DC )

Definition at line 2187 of file streams.c.

◆ _php_stream_opendir()

PHPAPI php_stream * _php_stream_opendir ( const char * path,
int options,
php_stream_context *context STREAMS_DC )

Definition at line 2138 of file streams.c.

◆ _php_stream_passthru()

PHPAPI ssize_t _php_stream_passthru ( php_stream *stream STREAMS_DC)

Definition at line 1481 of file streams.c.

◆ _php_stream_printf()

PHPAPI ssize_t _php_stream_printf ( php_stream * stream,
const char * fmt,
... )

Definition at line 1315 of file streams.c.

◆ _php_stream_putc()

PHPAPI int _php_stream_putc ( php_stream * stream,
int c )

Definition at line 827 of file streams.c.

◆ _php_stream_puts()

PHPAPI bool _php_stream_puts ( php_stream * stream,
const char * buf )

Definition at line 847 of file streams.c.

◆ _php_stream_read()

PHPAPI ssize_t _php_stream_read ( php_stream * stream,
char * buf,
size_t size )

Definition at line 706 of file streams.c.

◆ _php_stream_readdir()

PHPAPI php_stream_dirent * _php_stream_readdir ( php_stream * dirstream,
php_stream_dirent * ent )

Definition at line 2175 of file streams.c.

◆ _php_stream_rmdir()

PHPAPI int _php_stream_rmdir ( const char * path,
int options,
php_stream_context * context )

Definition at line 2108 of file streams.c.

◆ _php_stream_scandir()

PHPAPI int _php_stream_scandir ( const char * dirname,
zend_string ** namelist[],
int flags,
php_stream_context * context,
int(* compare )(const zend_string **a, const zend_string **b) )

Definition at line 2452 of file streams.c.

◆ _php_stream_seek()

PHPAPI int _php_stream_seek ( php_stream * stream,
zend_off_t offset,
int whence )

Definition at line 1340 of file streams.c.

◆ _php_stream_set_option()

PHPAPI int _php_stream_set_option ( php_stream * stream,
int option,
int value,
void * ptrparam )

Definition at line 1433 of file streams.c.

◆ _php_stream_stat()

PHPAPI int _php_stream_stat ( php_stream * stream,
php_stream_statbuf * ssb )

Definition at line 859 of file streams.c.

◆ _php_stream_stat_path()

PHPAPI int _php_stream_stat_path ( const char * path,
int flags,
php_stream_statbuf * ssb,
php_stream_context * context )

Definition at line 2122 of file streams.c.

◆ _php_stream_sync()

PHPAPI int _php_stream_sync ( php_stream * stream,
bool data_only )

Definition at line 1467 of file streams.c.

◆ _php_stream_tell()

PHPAPI zend_off_t _php_stream_tell ( php_stream * stream)

Definition at line 1335 of file streams.c.

◆ _php_stream_truncate_set_size()

PHPAPI int _php_stream_truncate_set_size ( php_stream * stream,
size_t newsize )

Definition at line 1476 of file streams.c.

◆ _php_stream_write()

PHPAPI ssize_t _php_stream_write ( php_stream * stream,
const char * buf,
size_t count )

Definition at line 1288 of file streams.c.

◆ php_file_le_pstream()

PHPAPI int php_file_le_pstream ( void )

Definition at line 47 of file streams.c.

◆ php_file_le_stream()

PHPAPI int php_file_le_stream ( void )

Definition at line 42 of file streams.c.

◆ php_file_le_stream_filter()

PHPAPI int php_file_le_stream_filter ( void )

Definition at line 52 of file streams.c.

◆ php_init_stream_wrappers()

int php_init_stream_wrappers ( int module_number)

Definition at line 1860 of file streams.c.

◆ php_register_url_stream_wrapper()

PHPAPI zend_result php_register_url_stream_wrapper ( const char * protocol,
const php_stream_wrapper * wrapper )

Definition at line 1911 of file streams.c.

◆ php_register_url_stream_wrapper_volatile()

PHPAPI zend_result php_register_url_stream_wrapper_volatile ( zend_string * protocol,
php_stream_wrapper * wrapper )

Definition at line 1940 of file streams.c.

◆ PHP_RSHUTDOWN_FUNCTION()

PHP_RSHUTDOWN_FUNCTION ( streams )

Definition at line 92 of file streams.c.

◆ php_shutdown_stream_hashes()

void php_shutdown_stream_hashes ( void )

Definition at line 1838 of file streams.c.

◆ php_shutdown_stream_wrappers()

void php_shutdown_stream_wrappers ( int module_number)

Definition at line 1884 of file streams.c.

◆ php_stream_context_alloc()

PHPAPI php_stream_context * php_stream_context_alloc ( void )

Definition at line 2383 of file streams.c.

◆ php_stream_context_free()

PHPAPI void php_stream_context_free ( php_stream_context * context)

Definition at line 2370 of file streams.c.

◆ php_stream_context_get_option()

PHPAPI zval * php_stream_context_get_option ( php_stream_context * context,
const char * wrappername,
const char * optionname )

Definition at line 2407 of file streams.c.

◆ php_stream_context_set()

PHPAPI php_stream_context * php_stream_context_set ( php_stream * stream,
php_stream_context * context )

Definition at line 2346 of file streams.c.

◆ php_stream_context_set_option()

PHPAPI void php_stream_context_set_option ( php_stream_context * context,
const char * wrappername,
const char * optionname,
zval * optionvalue )

Definition at line 2418 of file streams.c.

◆ php_stream_dirent_alphasort()

PHPAPI int php_stream_dirent_alphasort ( const zend_string ** a,
const zend_string ** b )

Definition at line 2438 of file streams.c.

◆ php_stream_dirent_alphasortr()

PHPAPI int php_stream_dirent_alphasortr ( const zend_string ** a,
const zend_string ** b )

Definition at line 2445 of file streams.c.

◆ php_stream_encloses()

PHPAPI php_stream * php_stream_encloses ( php_stream * enclosing,
php_stream * enclosed )

Definition at line 102 of file streams.c.

◆ php_stream_from_persistent_id()

PHPAPI int php_stream_from_persistent_id ( const char * persistent_id,
php_stream ** stream )

Definition at line 111 of file streams.c.

◆ php_stream_get_record()

PHPAPI zend_string * php_stream_get_record ( php_stream * stream,
size_t maxlen,
const char * delim,
size_t delim_len )

Definition at line 1062 of file streams.c.

◆ php_stream_get_url_stream_wrappers_hash_global()

PHPAPI HashTable * php_stream_get_url_stream_wrappers_hash_global ( void )

Definition at line 62 of file streams.c.

◆ php_stream_locate_eol()

PHPAPI const char * php_stream_locate_eol ( php_stream * stream,
zend_string * buf )

Definition at line 879 of file streams.c.

◆ php_stream_locate_url_wrapper()

PHPAPI php_stream_wrapper * php_stream_locate_url_wrapper ( const char * path,
const char ** path_for_open,
int options )

Definition at line 1964 of file streams.c.

◆ php_stream_notification_alloc()

PHPAPI php_stream_notifier * php_stream_notification_alloc ( void )

Definition at line 2394 of file streams.c.

◆ php_stream_notification_free()

PHPAPI void php_stream_notification_free ( php_stream_notifier * notifier)

Definition at line 2399 of file streams.c.

◆ php_stream_notification_notify()

PHPAPI void php_stream_notification_notify ( php_stream_context * context,
int notifycode,
int severity,
char * xmsg,
int xcode,
size_t bytes_sofar,
size_t bytes_max,
void * ptr )

Definition at line 2363 of file streams.c.

◆ php_stream_read_to_str()

PHPAPI zend_string * php_stream_read_to_str ( php_stream * stream,
size_t len )

Definition at line 792 of file streams.c.

◆ php_stream_wrapper_log_error()

PHPAPI void php_stream_wrapper_log_error ( const php_stream_wrapper * wrapper,
int options,
const char * fmt,
... )

Definition at line 241 of file streams.c.

◆ php_unregister_url_stream_wrapper()

PHPAPI zend_result php_unregister_url_stream_wrapper ( const char * protocol)

Definition at line 1927 of file streams.c.

◆ php_unregister_url_stream_wrapper_volatile()

PHPAPI zend_result php_unregister_url_stream_wrapper_volatile ( zend_string * protocol)

Definition at line 1953 of file streams.c.