@@ -238,7 +238,7 @@ void phar_destroy_phar_data(phar_archive_data *phar) /* {{{ */
238
238
/**
239
239
* Delete refcount and destruct if needed. On destruct return 1 else 0.
240
240
*/
241
- int phar_archive_delref (phar_archive_data * phar ) /* {{{ */
241
+ bool phar_archive_delref (phar_archive_data * phar ) /* {{{ */
242
242
{
243
243
if (phar -> is_persistent ) {
244
244
return 0 ;
@@ -481,7 +481,7 @@ void phar_entry_remove(phar_entry_data *idata, char **error) /* {{{ */
481
481
/**
482
482
* Open an already loaded phar
483
483
*/
484
- int phar_open_parsed_phar (char * fname , size_t fname_len , char * alias , size_t alias_len , bool is_data , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
484
+ static zend_result phar_open_parsed_phar (char * fname , size_t fname_len , char * alias , size_t alias_len , bool is_data , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
485
485
{
486
486
phar_archive_data * phar ;
487
487
#ifdef PHP_WIN32
@@ -559,7 +559,7 @@ int phar_open_parsed_phar(char *fname, size_t fname_len, char *alias, size_t ali
559
559
* Attempt to serialize the data.
560
560
* Callers are responsible for handling EG(exception) if one occurs.
561
561
*/
562
- void phar_metadata_tracker_try_ensure_has_serialized_data (phar_metadata_tracker * tracker , int persistent ) /* {{{ */
562
+ void phar_metadata_tracker_try_ensure_has_serialized_data (phar_metadata_tracker * tracker , bool persistent ) /* {{{ */
563
563
{
564
564
php_serialize_data_t metadata_hash ;
565
565
smart_str metadata_str = {0 };
@@ -585,7 +585,7 @@ void phar_metadata_tracker_try_ensure_has_serialized_data(phar_metadata_tracker
585
585
*
586
586
* Precondition: phar_metadata_tracker_has_data is true
587
587
*/
588
- int phar_metadata_tracker_unserialize_or_copy (phar_metadata_tracker * tracker , zval * metadata , int persistent , HashTable * unserialize_options , const char * method_name ) /* {{{ */
588
+ zend_result phar_metadata_tracker_unserialize_or_copy (phar_metadata_tracker * tracker , zval * metadata , bool persistent , HashTable * unserialize_options , const char * method_name ) /* {{{ */
589
589
{
590
590
const bool has_unserialize_options = unserialize_options != NULL && zend_hash_num_elements (unserialize_options ) > 0 ;
591
591
/* It should be impossible to create a zval in a persistent phar/entry. */
@@ -626,7 +626,7 @@ int phar_metadata_tracker_unserialize_or_copy(phar_metadata_tracker *tracker, zv
626
626
/**
627
627
* Check if this has any data, serialized or as a raw value.
628
628
*/
629
- bool phar_metadata_tracker_has_data (const phar_metadata_tracker * tracker , int persistent ) /* {{{ */
629
+ bool phar_metadata_tracker_has_data (const phar_metadata_tracker * tracker , bool persistent ) /* {{{ */
630
630
{
631
631
ZEND_ASSERT (!persistent || Z_ISUNDEF (tracker -> val ));
632
632
return !Z_ISUNDEF (tracker -> val ) || tracker -> str != NULL ;
@@ -636,7 +636,7 @@ bool phar_metadata_tracker_has_data(const phar_metadata_tracker *tracker, int pe
636
636
/**
637
637
* Free memory used to track the metadata and set all fields to be null/undef.
638
638
*/
639
- void phar_metadata_tracker_free (phar_metadata_tracker * tracker , int persistent ) /* {{{ */
639
+ void phar_metadata_tracker_free (phar_metadata_tracker * tracker , bool persistent ) /* {{{ */
640
640
{
641
641
/* Free the string before the zval in case the zval's destructor modifies the metadata */
642
642
if (tracker -> str ) {
@@ -658,7 +658,7 @@ void phar_metadata_tracker_free(phar_metadata_tracker *tracker, int persistent)
658
658
/**
659
659
* Free memory used to track the metadata and set all fields to be null/undef.
660
660
*/
661
- void phar_metadata_tracker_copy (phar_metadata_tracker * dest , const phar_metadata_tracker * source , int persistent ) /* {{{ */
661
+ void phar_metadata_tracker_copy (phar_metadata_tracker * dest , const phar_metadata_tracker * source , bool persistent ) /* {{{ */
662
662
{
663
663
ZEND_ASSERT (dest != source );
664
664
phar_metadata_tracker_free (dest , persistent );
@@ -694,7 +694,7 @@ void phar_metadata_tracker_clone(phar_metadata_tracker *tracker) /* {{{ */
694
694
*
695
695
* data is the serialized zval
696
696
*/
697
- void phar_parse_metadata_lazy (const char * buffer , phar_metadata_tracker * tracker , uint32_t zip_metadata_len , int persistent ) /* {{{ */
697
+ void phar_parse_metadata_lazy (const char * buffer , phar_metadata_tracker * tracker , uint32_t zip_metadata_len , bool persistent ) /* {{{ */
698
698
{
699
699
phar_metadata_tracker_free (tracker , persistent );
700
700
if (zip_metadata_len ) {
@@ -1302,7 +1302,7 @@ static int phar_parse_pharfile(php_stream *fp, char *fname, size_t fname_len, ch
1302
1302
/**
1303
1303
* Create or open a phar for writing
1304
1304
*/
1305
- int phar_open_or_create_filename (char * fname , size_t fname_len , char * alias , size_t alias_len , bool is_data , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
1305
+ zend_result phar_open_or_create_filename (char * fname , size_t fname_len , char * alias , size_t alias_len , bool is_data , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
1306
1306
{
1307
1307
const char * ext_str , * z ;
1308
1308
char * my_error ;
@@ -1379,7 +1379,9 @@ int phar_open_or_create_filename(char *fname, size_t fname_len, char *alias, siz
1379
1379
}
1380
1380
/* }}} */
1381
1381
1382
- int phar_create_or_parse_filename (char * fname , size_t fname_len , char * alias , size_t alias_len , bool is_data , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
1382
+ static zend_result phar_open_from_fp (php_stream * fp , char * fname , size_t fname_len , char * alias , size_t alias_len , uint32_t options , phar_archive_data * * pphar , char * * error );
1383
+
1384
+ zend_result phar_create_or_parse_filename (char * fname , size_t fname_len , char * alias , size_t alias_len , bool is_data , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
1383
1385
{
1384
1386
phar_archive_data * mydata ;
1385
1387
php_stream * fp ;
@@ -1402,7 +1404,7 @@ int phar_create_or_parse_filename(char *fname, size_t fname_len, char *alias, si
1402
1404
}
1403
1405
1404
1406
if (fp ) {
1405
- if (phar_open_from_fp (fp , fname , fname_len , alias , alias_len , options , pphar , is_data , error ) == SUCCESS ) {
1407
+ if (phar_open_from_fp (fp , fname , fname_len , alias , alias_len , options , pphar , error ) == SUCCESS ) {
1406
1408
if ((* pphar )-> is_data || !PHAR_G (readonly )) {
1407
1409
(* pphar )-> is_writeable = 1 ;
1408
1410
}
@@ -1532,18 +1534,18 @@ int phar_create_or_parse_filename(char *fname, size_t fname_len, char *alias, si
1532
1534
* that the manifest is proper, then pass it to phar_parse_pharfile(). SUCCESS
1533
1535
* or FAILURE is returned and pphar is set to a pointer to the phar's manifest
1534
1536
*/
1535
- int phar_open_from_filename (char * fname , size_t fname_len , char * alias , size_t alias_len , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
1537
+ zend_result phar_open_from_filename (char * fname , size_t fname_len , char * alias , size_t alias_len , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
1536
1538
{
1537
1539
php_stream * fp ;
1538
1540
zend_string * actual ;
1539
- int ret , is_data = 0 ;
1541
+ bool is_data = false ;
1540
1542
1541
1543
if (error ) {
1542
1544
* error = NULL ;
1543
1545
}
1544
1546
1545
1547
if (!strstr (fname , ".phar" )) {
1546
- is_data = 1 ;
1548
+ is_data = true ;
1547
1549
}
1548
1550
1549
1551
if (phar_open_parsed_phar (fname , fname_len , alias , alias_len , is_data , options , pphar , error ) == SUCCESS ) {
@@ -1574,7 +1576,7 @@ int phar_open_from_filename(char *fname, size_t fname_len, char *alias, size_t a
1574
1576
fname_len = ZSTR_LEN (actual );
1575
1577
}
1576
1578
1577
- ret = phar_open_from_fp (fp , fname , fname_len , alias , alias_len , options , pphar , is_data , error );
1579
+ zend_result ret = phar_open_from_fp (fp , fname , fname_len , alias , alias_len , options , pphar , error );
1578
1580
1579
1581
if (actual ) {
1580
1582
zend_string_release_ex (actual , 0 );
@@ -1618,7 +1620,7 @@ static inline char *phar_strnstr(const char *buf, int buf_len, const char *searc
1618
1620
* that the manifest is proper, then pass it to phar_parse_pharfile(). SUCCESS
1619
1621
* or FAILURE is returned and pphar is set to a pointer to the phar's manifest
1620
1622
*/
1621
- static int phar_open_from_fp (php_stream * fp , char * fname , size_t fname_len , char * alias , size_t alias_len , uint32_t options , phar_archive_data * * pphar , int is_data , char * * error ) /* {{{ */
1623
+ static zend_result phar_open_from_fp (php_stream * fp , char * fname , size_t fname_len , char * alias , size_t alias_len , uint32_t options , phar_archive_data * * pphar , char * * error ) /* {{{ */
1622
1624
{
1623
1625
static const char token [] = "__HALT_COMPILER();" ;
1624
1626
static const char zip_magic [] = "PK\x03\x04" ;
@@ -1956,7 +1958,7 @@ static int phar_check_str(const char *fname, const char *ext_str, size_t ext_len
1956
1958
* the last parameter should be set to tell the thing to assume that filename is the full path, and only to check the
1957
1959
* extension rules, not to iterate.
1958
1960
*/
1959
- int phar_detect_phar_fname_ext (const char * filename , size_t filename_len , const char * * ext_str , size_t * ext_len , int executable , int for_create , int is_complete ) /* {{{ */
1961
+ zend_result phar_detect_phar_fname_ext (const char * filename , size_t filename_len , const char * * ext_str , size_t * ext_len , int executable , int for_create , int is_complete ) /* {{{ */
1960
1962
{
1961
1963
const char * pos , * slash ;
1962
1964
@@ -2101,7 +2103,7 @@ int phar_detect_phar_fname_ext(const char *filename, size_t filename_len, const
2101
2103
}
2102
2104
/* }}} */
2103
2105
2104
- static int php_check_dots (const char * element , size_t n ) /* {{{ */
2106
+ static bool php_check_dots (const char * element , size_t n ) /* {{{ */
2105
2107
{
2106
2108
for (n -- ; n != SIZE_MAX ; -- n ) {
2107
2109
if (element [n ] != '.' ) {
@@ -2237,7 +2239,7 @@ char *phar_fix_filepath(char *path, size_t *new_len, int use_cwd) /* {{{ */
2237
2239
*
2238
2240
* This is used by phar_parse_url()
2239
2241
*/
2240
- int phar_split_fname (const char * filename , size_t filename_len , char * * arch , size_t * arch_len , char * * entry , size_t * entry_len , int executable , int for_create ) /* {{{ */
2242
+ zend_result phar_split_fname (const char * filename , size_t filename_len , char * * arch , size_t * arch_len , char * * entry , size_t * entry_len , int executable , int for_create ) /* {{{ */
2241
2243
{
2242
2244
const char * ext_str ;
2243
2245
#ifdef PHP_WIN32
@@ -2314,7 +2316,7 @@ int phar_split_fname(const char *filename, size_t filename_len, char **arch, siz
2314
2316
* Invoked when a user calls Phar::mapPhar() from within an executing .phar
2315
2317
* to set up its manifest directly
2316
2318
*/
2317
- int phar_open_executed_filename (char * alias , size_t alias_len , char * * error ) /* {{{ */
2319
+ zend_result phar_open_executed_filename (char * alias , size_t alias_len , char * * error ) /* {{{ */
2318
2320
{
2319
2321
if (error ) {
2320
2322
* error = NULL ;
@@ -2362,7 +2364,7 @@ int phar_open_executed_filename(char *alias, size_t alias_len, char **error) /*
2362
2364
fname = actual ;
2363
2365
}
2364
2366
2365
- int ret = phar_open_from_fp (fp , ZSTR_VAL (fname ), ZSTR_LEN (fname ), alias , alias_len , REPORT_ERRORS , NULL , 0 , error );
2367
+ zend_result ret = phar_open_from_fp (fp , ZSTR_VAL (fname ), ZSTR_LEN (fname ), alias , alias_len , REPORT_ERRORS , NULL , error );
2366
2368
2367
2369
if (actual ) {
2368
2370
zend_string_release_ex (actual , 0 );
@@ -2375,10 +2377,8 @@ int phar_open_executed_filename(char *alias, size_t alias_len, char **error) /*
2375
2377
/**
2376
2378
* Validate the CRC32 of a file opened from within the phar
2377
2379
*/
2378
- int phar_postprocess_file (phar_entry_data * idata , uint32_t crc32 , char * * error , int process_zip ) /* {{{ */
2380
+ zend_result phar_postprocess_file (phar_entry_data * idata , uint32_t crc32 , char * * error , int process_zip ) /* {{{ */
2379
2381
{
2380
- uint32_t crc = php_crc32_bulk_init ();
2381
- int len = idata -> internal_file -> uncompressed_filesize , ret ;
2382
2382
php_stream * fp = idata -> fp ;
2383
2383
phar_entry_info * entry = idata -> internal_file ;
2384
2384
@@ -2443,7 +2443,8 @@ int phar_postprocess_file(phar_entry_data *idata, uint32_t crc32, char **error,
2443
2443
2444
2444
php_stream_seek (fp , idata -> zero , SEEK_SET );
2445
2445
2446
- ret = php_crc32_stream_bulk_update (& crc , fp , len );
2446
+ uint32_t crc = php_crc32_bulk_init ();
2447
+ zend_result ret = php_crc32_stream_bulk_update (& crc , fp , idata -> internal_file -> uncompressed_filesize );
2447
2448
2448
2449
php_stream_seek (fp , idata -> zero , SEEK_SET );
2449
2450
0 commit comments