Lines Matching refs:entry

52 	if (ZSTR_LEN(entry->name) == sizeof("phar.readonly")-1) {  in ZEND_INI_MH()
62 if (ZSTR_LEN(entry->name) == sizeof("phar.readonly")-1) { in ZEND_INI_MH()
71 if (ZSTR_LEN(entry->name) == sizeof("phar.readonly")-1) { in ZEND_INI_MH()
309 phar_entry_info *entry = (phar_entry_info *) Z_PTR_P(zv); in phar_tmpclose_apply() local
311 if (entry->fp_type != PHAR_TMP) { in phar_tmpclose_apply()
315 if (entry->fp && !entry->fp_refcount) { in phar_tmpclose_apply()
316 php_stream_close(entry->fp); in phar_tmpclose_apply()
317 entry->fp = NULL; in phar_tmpclose_apply()
350 void destroy_phar_manifest_entry_int(phar_entry_info *entry) /* {{{ */ in destroy_phar_manifest_entry_int() argument
353 if (entry->cfp) { in destroy_phar_manifest_entry_int()
354 php_stream_close(entry->cfp); in destroy_phar_manifest_entry_int()
355 entry->cfp = 0; in destroy_phar_manifest_entry_int()
358 if (entry->fp) { in destroy_phar_manifest_entry_int()
359 php_stream_close(entry->fp); in destroy_phar_manifest_entry_int()
360 entry->fp = 0; in destroy_phar_manifest_entry_int()
363 phar_metadata_tracker_free(&entry->metadata_tracker, entry->is_persistent); in destroy_phar_manifest_entry_int()
365 pefree(entry->filename, entry->is_persistent); in destroy_phar_manifest_entry_int()
367 if (entry->link) { in destroy_phar_manifest_entry_int()
368 pefree(entry->link, entry->is_persistent); in destroy_phar_manifest_entry_int()
369 entry->link = 0; in destroy_phar_manifest_entry_int()
372 if (entry->tmp) { in destroy_phar_manifest_entry_int()
373 pefree(entry->tmp, entry->is_persistent); in destroy_phar_manifest_entry_int()
374 entry->tmp = 0; in destroy_phar_manifest_entry_int()
381 phar_entry_info *entry = Z_PTR_P(zv); in destroy_phar_manifest_entry() local
382 destroy_phar_manifest_entry_int(entry); in destroy_phar_manifest_entry()
383 pefree(entry, entry->is_persistent); in destroy_phar_manifest_entry()
735 phar_entry_info entry; in phar_parse_pharfile() local
1125 memset(&entry, 0, sizeof(phar_entry_info)); in phar_parse_pharfile()
1126 entry.phar = mydata; in phar_parse_pharfile()
1127 entry.fp_type = PHAR_FP; in phar_parse_pharfile()
1128 entry.is_persistent = mydata->is_persistent; in phar_parse_pharfile()
1135 PHAR_GET_32(buffer, entry.filename_len); in phar_parse_pharfile()
1137 if (entry.filename_len == 0) { in phar_parse_pharfile()
1141 if (entry.is_persistent) { in phar_parse_pharfile()
1142 entry.manifest_pos = manifest_index; in phar_parse_pharfile()
1145 if (entry.filename_len > (size_t)(endbuffer - buffer - 24)) { in phar_parse_pharfile()
1149 …if ((manifest_ver & PHAR_API_VER_MASK) >= PHAR_API_MIN_DIR && buffer[entry.filename_len - 1] == '/… in phar_parse_pharfile()
1150 entry.is_dir = 1; in phar_parse_pharfile()
1152 entry.is_dir = 0; in phar_parse_pharfile()
1155 phar_add_virtual_dirs(mydata, buffer, entry.filename_len); in phar_parse_pharfile()
1156 entry.filename = pestrndup(buffer, entry.filename_len, entry.is_persistent); in phar_parse_pharfile()
1157 buffer += entry.filename_len; in phar_parse_pharfile()
1158 PHAR_GET_32(buffer, entry.uncompressed_filesize); in phar_parse_pharfile()
1159 PHAR_GET_32(buffer, entry.timestamp); in phar_parse_pharfile()
1162 mydata->min_timestamp = entry.timestamp; in phar_parse_pharfile()
1163 mydata->max_timestamp = entry.timestamp; in phar_parse_pharfile()
1165 if (mydata->min_timestamp > entry.timestamp) { in phar_parse_pharfile()
1166 mydata->min_timestamp = entry.timestamp; in phar_parse_pharfile()
1167 } else if (mydata->max_timestamp < entry.timestamp) { in phar_parse_pharfile()
1168 mydata->max_timestamp = entry.timestamp; in phar_parse_pharfile()
1172 PHAR_GET_32(buffer, entry.compressed_filesize); in phar_parse_pharfile()
1173 PHAR_GET_32(buffer, entry.crc32); in phar_parse_pharfile()
1174 PHAR_GET_32(buffer, entry.flags); in phar_parse_pharfile()
1176 if (entry.is_dir) { in phar_parse_pharfile()
1177 entry.filename_len--; in phar_parse_pharfile()
1178 entry.flags |= PHAR_ENT_PERM_DEF_DIR; in phar_parse_pharfile()
1183 pefree(entry.filename, entry.is_persistent); in phar_parse_pharfile()
1188 ZVAL_UNDEF(&entry.metadata_tracker.val); in phar_parse_pharfile()
1189 entry.metadata_tracker.str = NULL; in phar_parse_pharfile()
1190 phar_parse_metadata_lazy(buffer, &entry.metadata_tracker, len, entry.is_persistent); in phar_parse_pharfile()
1193 entry.offset = entry.offset_abs = offset; in phar_parse_pharfile()
1194 offset += entry.compressed_filesize; in phar_parse_pharfile()
1196 switch (entry.flags & PHAR_ENT_COMPRESSION_MASK) { in phar_parse_pharfile()
1199 phar_metadata_tracker_free(&entry.metadata_tracker, entry.is_persistent); in phar_parse_pharfile()
1200 pefree(entry.filename, entry.is_persistent); in phar_parse_pharfile()
1206 phar_metadata_tracker_free(&entry.metadata_tracker, entry.is_persistent); in phar_parse_pharfile()
1207 pefree(entry.filename, entry.is_persistent); in phar_parse_pharfile()
1212 if (entry.uncompressed_filesize != entry.compressed_filesize) { in phar_parse_pharfile()
1213 phar_metadata_tracker_free(&entry.metadata_tracker, entry.is_persistent); in phar_parse_pharfile()
1214 pefree(entry.filename, entry.is_persistent); in phar_parse_pharfile()
1220 manifest_flags |= (entry.flags & PHAR_ENT_COMPRESSION_MASK); in phar_parse_pharfile()
1222 entry.is_crc_checked = (manifest_flags & PHAR_HDR_SIGNATURE ? 1 : 0); in phar_parse_pharfile()
1223 phar_set_inode(&entry); in phar_parse_pharfile()
1225 str = zend_string_init_interned(entry.filename, entry.filename_len, 1); in phar_parse_pharfile()
1227 str = zend_string_init(entry.filename, entry.filename_len, 0); in phar_parse_pharfile()
1229 zend_hash_add_mem(&mydata->manifest, str, (void*)&entry, sizeof(phar_entry_info)); in phar_parse_pharfile()
2245 …har *filename, size_t filename_len, char **arch, size_t *arch_len, char **entry, size_t *entry_len… in phar_split_fname() argument
2298 *entry = estrndup(ext_str+ext_len, *entry_len); in phar_split_fname()
2300 phar_unixify_path_separators(*entry, *entry_len); in phar_split_fname()
2302 *entry = phar_fix_filepath(*entry, entry_len, 0); in phar_split_fname()
2305 *entry = estrndup("/", 1); in phar_split_fname()
2388 phar_entry_info *entry = idata->internal_file; in phar_postprocess_file() local
2394 if (entry->is_zip && process_zip > 0) { in phar_postprocess_file()
2400 … archive \"%s\" to verify local file header for file \"%s\"", idata->phar->fname, entry->filename); in phar_postprocess_file()
2403 php_stream_seek(phar_get_entrypfp(idata->internal_file), entry->header_offset, SEEK_SET); in phar_postprocess_file()
2407 …phar \"%s\" (cannot read local file header for file \"%s\")", idata->phar->fname, entry->filename); in phar_postprocess_file()
2414 entry->header_offset + sizeof(local) + in phar_postprocess_file()
2417 entry->compressed_filesize, SEEK_SET); in phar_postprocess_file()
2420 … \"%s\" (cannot read local data descriptor for file \"%s\")", idata->phar->fname, entry->filename); in phar_postprocess_file()
2431entry->filename_len != PHAR_ZIP_16(local.filename_len) || entry->crc32 != PHAR_ZIP_32(local.crc32)… in phar_postprocess_file()
2432 …cal header of file \"%s\" does not match central directory)", idata->phar->fname, entry->filename); in phar_postprocess_file()
2437 entry->offset = entry->offset_abs = in phar_postprocess_file()
2438 …sizeof(local) + entry->header_offset + PHAR_ZIP_16(local.filename_len) + PHAR_ZIP_16(local.extra_l… in phar_postprocess_file()
2440 if (idata->zero && idata->zero != entry->offset_abs) { in phar_postprocess_file()
2441 idata->zero = entry->offset_abs; in phar_postprocess_file()
2456 entry->is_crc_checked = 1; in phar_postprocess_file()
2459 …l corruption of phar \"%s\" (crc32 mismatch on file \"%s\")", idata->phar->fname, entry->filename); in phar_postprocess_file()
2479 phar_entry_info *entry = (phar_entry_info *)Z_PTR_P(zv); in phar_flush_clean_deleted_apply() local
2481 if (entry->fp_refcount <= 0 && entry->is_deleted) { in phar_flush_clean_deleted_apply()
2540 phar_entry_info *entry, *newentry; in phar_flush() local
2727 ZEND_HASH_MAP_FOREACH_PTR(&phar->manifest, entry) { in phar_flush()
2728 if (entry->cfp) { in phar_flush()
2730 php_stream_close(entry->cfp); in phar_flush()
2731 entry->cfp = 0; in phar_flush()
2733 if (entry->is_deleted || entry->is_mounted) { in phar_flush()
2737 if (!entry->is_modified && entry->fp_refcount) { in phar_flush()
2739 switch (entry->fp_type) { in phar_flush()
2751 phar_add_virtual_dirs(phar, entry->filename, entry->filename_len); in phar_flush()
2753 if (entry->is_dir) { in phar_flush()
2757 if (!Z_ISUNDEF(entry->metadata_tracker.val) && !entry->metadata_tracker.str) { in phar_flush()
2758 ZEND_ASSERT(!entry->is_persistent); in phar_flush()
2762 php_var_serialize(&buf, &entry->metadata_tracker.val, &metadata_hash); in phar_flush()
2764 entry->metadata_tracker.str = buf.s; in phar_flush()
2768 …ffset += 4 + entry->filename_len + sizeof(entry_buffer) + (entry->metadata_tracker.str ? ZSTR_LEN( in phar_flush()
2771 if ((oldfile && !entry->is_modified) || entry->is_dir) { in phar_flush()
2772 if (entry->fp_type == PHAR_UFP) { in phar_flush()
2774 entry->fp_type = PHAR_FP; in phar_flush()
2778 if (!phar_get_efp(entry, 0)) { in phar_flush()
2780 newentry = phar_open_jit(phar, entry, error); in phar_flush()
2787 entry = newentry; in phar_flush()
2789 file = phar_get_efp(entry, 0); in phar_flush()
2790 if (-1 == phar_seek_efp(entry, 0, SEEK_SET, 0, 1)) { in phar_flush()
2796 … "unable to seek to start of file \"%s\" while creating new phar \"%s\"", entry->filename, phar->f… in phar_flush()
2801 php_crc32_stream_bulk_update(&newcrc32, file, entry->uncompressed_filesize); in phar_flush()
2802 entry->crc32 = php_crc32_bulk_end(newcrc32); in phar_flush()
2803 entry->is_crc_checked = 1; in phar_flush()
2804 if (!(entry->flags & PHAR_ENT_COMPRESSION_MASK)) { in phar_flush()
2806 entry->compressed_filesize = entry->uncompressed_filesize; in phar_flush()
2809 filter = php_stream_filter_create(phar_compress_filter(entry, 0), NULL, 0); in phar_flush()
2815 if (entry->flags & PHAR_ENT_COMPRESSED_GZ) { in phar_flush()
2817 …spprintf(error, 0, "unable to gzip compress file \"%s\" to new phar \"%s\"", entry->filename, phar… in phar_flush()
2821 …spprintf(error, 0, "unable to bzip2 compress file \"%s\" to new phar \"%s\"", entry->filename, pha… in phar_flush()
2833 entry->cfp = shared_cfp; in phar_flush()
2834 if (!entry->cfp) { in phar_flush()
2845 ZEND_ASSERT(entry->header_offset == 0); in phar_flush()
2846 entry->header_offset = php_stream_tell(entry->cfp); in phar_flush()
2848 if (-1 == phar_seek_efp(entry, 0, SEEK_SET, 0, 0)) { in phar_flush()
2854 … "unable to seek to start of file \"%s\" while creating new phar \"%s\"", entry->filename, phar->f… in phar_flush()
2858 php_stream_filter_append((&entry->cfp->writefilters), filter); in phar_flush()
2859 …if (SUCCESS != php_stream_copy_to_stream_ex(file, entry->cfp, entry->uncompressed_filesize, NULL))… in phar_flush()
2865 … compressed file contents of file \"%s\" while creating new phar \"%s\"", entry->filename, phar->f… in phar_flush()
2870 php_stream_flush(entry->cfp); in phar_flush()
2872 php_stream_seek(entry->cfp, 0, SEEK_END); in phar_flush()
2873 entry->compressed_filesize = ((uint32_t) php_stream_tell(entry->cfp)) - entry->header_offset; in phar_flush()
2875 entry->old_flags = entry->flags; in phar_flush()
2876 entry->is_modified = 1; in phar_flush()
2877 global_flags |= (entry->flags & PHAR_ENT_COMPRESSION_MASK); in phar_flush()
2959 ZEND_HASH_MAP_FOREACH_PTR(&phar->manifest, entry) { in phar_flush()
2961 if (entry->is_deleted || entry->is_mounted) { in phar_flush()
2966 if (entry->is_dir) { in phar_flush()
2968 phar_set_32(entry_buffer, entry->filename_len + 1); in phar_flush()
2970 phar_set_32(entry_buffer, entry->filename_len); in phar_flush()
2974 || entry->filename_len != php_stream_write(newfile, entry->filename, entry->filename_len) in phar_flush()
2975 || (entry->is_dir && 1 != php_stream_write(newfile, "/", 1))) { in phar_flush()
2981 if (entry->is_dir) { in phar_flush()
2982 …le to write filename of directory \"%s\" to manifest of new phar \"%s\"", entry->filename, phar->f… in phar_flush()
2984 …"unable to write filename of file \"%s\" to manifest of new phar \"%s\"", entry->filename, phar->f… in phar_flush()
3000 phar_set_32(entry_buffer, entry->uncompressed_filesize); in phar_flush()
3002 phar_set_32(entry_buffer+8, entry->compressed_filesize); in phar_flush()
3003 phar_set_32(entry_buffer+12, entry->crc32); in phar_flush()
3004 phar_set_32(entry_buffer+16, entry->flags); in phar_flush()
3005 metadata_str = entry->metadata_tracker.str; in phar_flush()
3018 … write temporary manifest of file \"%s\" to manifest of new phar \"%s\"", entry->filename, phar->f… in phar_flush()
3043 ZEND_HASH_MAP_FOREACH_PTR(&phar->manifest, entry) { in phar_flush()
3044 if (entry->is_deleted || entry->is_dir || entry->is_mounted) { in phar_flush()
3048 if (entry->cfp) { in phar_flush()
3049 file = entry->cfp; in phar_flush()
3050 php_stream_seek(file, entry->header_offset, SEEK_SET); in phar_flush()
3052 file = phar_get_efp(entry, 0); in phar_flush()
3053 if (-1 == phar_seek_efp(entry, 0, SEEK_SET, 0, 0)) { in phar_flush()
3059 … "unable to seek to start of file \"%s\" while creating new phar \"%s\"", entry->filename, phar->f… in phar_flush()
3071 … "unable to seek to start of file \"%s\" while creating new phar \"%s\"", entry->filename, phar->f… in phar_flush()
3077 entry->offset = entry->offset_abs = offset; in phar_flush()
3078 offset += entry->compressed_filesize; in phar_flush()
3079 if (php_stream_copy_to_stream_ex(file, newfile, entry->compressed_filesize, &wrote) == FAILURE) { in phar_flush()
3087 …spprintf(error, 0, "unable to write contents of file \"%s\" to new phar \"%s\"", entry->filename, … in phar_flush()
3093 entry->is_modified = 0; in phar_flush()
3095 if (entry->cfp) { in phar_flush()
3096 entry->cfp = NULL; in phar_flush()
3097 entry->header_offset = 0; in phar_flush()
3100 if (entry->fp_type == PHAR_MOD) { in phar_flush()
3102 if (entry->fp_refcount == 0 && entry->fp != phar->fp && entry->fp != phar->ufp) { in phar_flush()
3103 php_stream_close(entry->fp); in phar_flush()
3106 entry->fp = NULL; in phar_flush()
3107 entry->fp_type = PHAR_FP; in phar_flush()
3108 } else if (entry->fp_type == PHAR_UFP) { in phar_flush()
3109 entry->fp_type = PHAR_FP; in phar_flush()
3255 ZEND_HASH_MAP_FOREACH_PTR(&phar->manifest, entry) { in phar_flush()
3256 if (entry->cfp) { in phar_flush()
3257 entry->cfp = NULL; in phar_flush()
3258 entry->header_offset = 0; in phar_flush()