php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
util.c File Reference
#include "phar_internal.h"
#include "php_phar.h"
#include "ext/hash/php_hash.h"
#include "ext/hash/php_hash_sha.h"
#include "ext/standard/md5.h"

Go to the source code of this file.

Functions

phar_entry_infophar_get_link_source (phar_entry_info *entry)
 
php_streamphar_get_efp (phar_entry_info *entry, int follow_links)
 
int phar_seek_efp (phar_entry_info *entry, zend_off_t offset, int whence, zend_off_t position, int follow_links)
 
zend_result phar_mount_entry (phar_archive_data *phar, char *filename, size_t filename_len, char *path, size_t path_len)
 
zend_stringphar_find_in_include_path (zend_string *filename, phar_archive_data **pphar)
 
zend_result phar_get_entry_data (phar_entry_data **ret, char *fname, size_t fname_len, char *path, size_t path_len, const char *mode, char allow_dir, char **error, int security)
 
phar_entry_dataphar_get_or_create_entry_data (char *fname, size_t fname_len, char *path, size_t path_len, const char *mode, char allow_dir, char **error, int security)
 
zend_result phar_open_archive_fp (phar_archive_data *phar)
 
zend_result phar_copy_entry_fp (phar_entry_info *source, phar_entry_info *dest, char **error)
 
zend_result phar_open_entry_fp (phar_entry_info *entry, char **error, int follow_links)
 
phar_entry_infophar_open_jit (phar_archive_data *phar, phar_entry_info *entry, char **error)
 
PHP_PHAR_API zend_result phar_resolve_alias (char *alias, size_t alias_len, char **filename, size_t *filename_len)
 
zend_result phar_free_alias (phar_archive_data *phar, char *alias, size_t alias_len)
 
zend_result phar_get_archive (phar_archive_data **archive, char *fname, size_t fname_len, char *alias, size_t alias_len, char **error)
 
char * phar_compress_filter (phar_entry_info *entry, int return_unknown)
 
char * phar_decompress_filter (phar_entry_info *entry, int return_unknown)
 
phar_entry_infophar_get_entry_info (phar_archive_data *phar, char *path, size_t path_len, char **error, int security)
 
phar_entry_infophar_get_entry_info_dir (phar_archive_data *phar, char *path, size_t path_len, char dir, char **error, int security)
 
zend_result phar_verify_signature (php_stream *fp, size_t end_of_phar, uint32_t sig_type, char *sig, size_t sig_len, char *fname, char **signature, size_t *signature_len, char **error)
 
zend_result phar_create_signature (phar_archive_data *phar, php_stream *fp, char **signature, size_t *signature_length, char **error)
 
void phar_add_virtual_dirs (phar_archive_data *phar, char *filename, size_t filename_len)
 
zend_result phar_copy_on_write (phar_archive_data **pphar)
 

Function Documentation

◆ phar_add_virtual_dirs()

void phar_add_virtual_dirs ( phar_archive_data * phar,
char * filename,
size_t filename_len )

Definition at line 2039 of file util.c.

◆ phar_compress_filter()

char * phar_compress_filter ( phar_entry_info * entry,
int return_unknown )

Determine which stream compression filter (if any) we need to read this file

Definition at line 1217 of file util.c.

◆ phar_copy_entry_fp()

zend_result phar_copy_entry_fp ( phar_entry_info * source,
phar_entry_info * dest,
char ** error )

Definition at line 774 of file util.c.

◆ phar_copy_on_write()

zend_result phar_copy_on_write ( phar_archive_data ** pphar)

Definition at line 2140 of file util.c.

◆ phar_create_signature()

zend_result phar_create_signature ( phar_archive_data * phar,
php_stream * fp,
char ** signature,
size_t * signature_length,
char ** error )

Definition at line 1857 of file util.c.

◆ phar_decompress_filter()

char * phar_decompress_filter ( phar_entry_info * entry,
int return_unknown )

Determine which stream decompression filter (if any) we need to read this file

Definition at line 1233 of file util.c.

◆ phar_find_in_include_path()

zend_string * phar_find_in_include_path ( zend_string * filename,
phar_archive_data ** pphar )

Definition at line 266 of file util.c.

◆ phar_free_alias()

zend_result phar_free_alias ( phar_archive_data * phar,
char * alias,
size_t alias_len )

Definition at line 990 of file util.c.

◆ phar_get_archive()

zend_result phar_get_archive ( phar_archive_data ** archive,
char * fname,
size_t fname_len,
char * alias,
size_t alias_len,
char ** error )

Looks up a phar archive in the filename map, connecting it to the alias (if any) or returns null

Definition at line 1013 of file util.c.

◆ phar_get_efp()

php_stream * phar_get_efp ( phar_entry_info * entry,
int follow_links )

Definition at line 97 of file util.c.

◆ phar_get_entry_data()

zend_result phar_get_entry_data ( phar_entry_data ** ret,
char * fname,
size_t fname_len,
char * path,
size_t path_len,
const char * mode,
char allow_dir,
char ** error,
int security )

Retrieve a copy of the file information on a single file within a phar, or null. This also transfers the open file pointer, if any, to the entry.

If the file does not already exist, this will fail. Pre-existing files can be 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

Definition at line 474 of file util.c.

◆ phar_get_entry_info()

phar_entry_info * phar_get_entry_info ( phar_archive_data * phar,
char * path,
size_t path_len,
char ** error,
int security )

retrieve information on a file contained within a phar, or null if it ain't there

Definition at line 1257 of file util.c.

◆ phar_get_entry_info_dir()

phar_entry_info * phar_get_entry_info_dir ( phar_archive_data * phar,
char * path,
size_t path_len,
char dir,
char ** error,
int security )

retrieve information on a file or directory contained within a phar, or null if none found allow_dir is 0 for none, 1 for both empty directories in the phar and temp directories, and 2 for only valid pre-existing empty directory entries

Definition at line 1267 of file util.c.

◆ phar_get_link_source()

phar_entry_info * phar_get_link_source ( phar_entry_info * entry)

Definition at line 63 of file util.c.

◆ phar_get_or_create_entry_data()

phar_entry_data * phar_get_or_create_entry_data ( char * fname,
size_t fname_len,
char * path,
size_t path_len,
const char * mode,
char allow_dir,
char ** error,
int security )

Create a new dummy file slot within a writeable phar for a newly created file

Definition at line 634 of file util.c.

◆ phar_mount_entry()

zend_result phar_mount_entry ( phar_archive_data * phar,
char * filename,
size_t filename_len,
char * path,
size_t path_len )

Definition at line 190 of file util.c.

◆ phar_open_archive_fp()

zend_result phar_open_archive_fp ( phar_archive_data * phar)

Definition at line 753 of file util.c.

◆ phar_open_entry_fp()

zend_result phar_open_entry_fp ( phar_entry_info * entry,
char ** error,
int follow_links )

Definition at line 842 of file util.c.

◆ phar_open_jit()

phar_entry_info * phar_open_jit ( phar_archive_data * phar,
phar_entry_info * entry,
char ** error )

helper function to open an internal file's fp just-in-time

Definition at line 961 of file util.c.

◆ phar_resolve_alias()

PHP_PHAR_API zend_result phar_resolve_alias ( char * alias,
size_t alias_len,
char ** filename,
size_t * filename_len )

Definition at line 978 of file util.c.

◆ phar_seek_efp()

int phar_seek_efp ( phar_entry_info * entry,
zend_off_t offset,
int whence,
zend_off_t position,
int follow_links )

Definition at line 140 of file util.c.

◆ phar_verify_signature()

zend_result phar_verify_signature ( php_stream * fp,
size_t end_of_phar,
uint32_t sig_type,
char * sig,
size_t sig_len,
char * fname,
char ** signature,
size_t * signature_len,
char ** error )

Definition at line 1543 of file util.c.