Commit Graph

280 Commits

Author SHA1 Message Date
Greg Beaver
ca6d36efb8 MFB: refactor function names for clarity. No functionality change 2008-05-30 22:39:33 +00:00
Steph Fox
76a9ec377b - MFB major fixes
* found felipe's segfault in util.c and fixed the segfault (3 tests fail due to odd behavior of . and .. on this machine)
   * fixed serious flaws in the setting/resetting of is_data - now it works properly.  Assume
     all new PharData are tar-based, and allow passing Phar::ZIP to PharData constructor to override this
   * fix broken earlier commit, introduced segfault that broke 20 tests here
2008-05-24 14:18:31 +00:00
Steph Fox
bdca5a12b0 - MFB fix offset detection in tar files 2008-05-24 13:59:56 +00:00
Greg Beaver
8589859191 MFB fix convertTo\*() for same-named archives with no files 2008-05-21 20:39:33 +00:00
Greg Beaver
a08acfb080 s/zend_hash_exists/zend_hash_find/ 2008-05-20 05:01:08 +00:00
Greg Beaver
ccf430ca93 MFB relax rename requirements 2008-05-20 04:09:41 +00:00
Steph Fox
f08aea109b - IS_UNICODE checks and conversions
- stub and creation file updates
- far too many test updates to think about
2008-05-19 19:05:42 +00:00
Greg Beaver
eb99aa475e MFH fix mem leak, add test for previous segfault fix 2008-05-18 23:41:17 +00:00
Greg Beaver
3d953abaf3 MFB fix segfault 2008-05-18 23:12:47 +00:00
Greg Beaver
11fb7561f0 enable by default statically instead of shared
this is done by removing zlib/bz2 explicit dependencies because they are unnecessary
we only ever use the stream filter, and the check for existence has
been moved to runtime where it is after startup
2008-05-17 20:07:38 +00:00
Greg Beaver
25b8e6cc3f MFB: add full metadata support for tar-based archives and test 2008-05-15 23:46:54 +00:00
Greg Beaver
144e472967 MFB: plug security hole of unfettered creation access to .phar magic directory 2008-05-15 16:09:21 +00:00
Steph Fox
c1ae13b985 - Make internal code back-compatible. This included a binary cast in the default stub, hence many test updates.
- Just over a third of tests pass. Test manifests are broken currently.
2008-05-14 21:27:31 +00:00
Steph Fox
247d91e780 - 'It builds on my box'.
- Don't expect any tests to pass.
2008-05-13 18:35:25 +00:00
Greg Beaver
82dc03941a fix weird alias issues, add tests to check for new-found problems 2008-05-12 20:42:07 +00:00
Greg Beaver
ad1be25d8c don't copy contents of linked/mounted files when converting an archive, and be sure to dupe mounted value 2008-05-11 22:45:03 +00:00
Greg Beaver
7149523766 add safety check to prevent unlinkArchive() from being called by a file within the archive 2008-05-11 21:15:47 +00:00
Greg Beaver
38d5943ee6 increase code coverage of funcinterceptors to 90%+, fix many bugs, fix errant wrong test condition in fgc_edgecases 2008-05-11 19:17:51 +00:00
Greg Beaver
53e02373d0 fix handling of mounted entries when flushing in all phars, and of deleted entries with open references in tar-based phars, do not extract mounted entries, add to test 2008-05-08 02:58:45 +00:00
Greg Beaver
f134a909c3 optimize phar filename extension detection to first search through known phars. This eliminates several stat/realpath calls for archives with lots of files 2008-05-07 17:24:22 +00:00
Greg Beaver
eda25ddb34 validate user-supplied aliases when converting archives to other formats 2008-05-07 06:36:24 +00:00
Greg Beaver
549bf83bd1 [DOC]
remove phar.extract_list
remove Phar::getExtractList()
2008-05-07 05:38:31 +00:00
Greg Beaver
196f0ef42b fix segfault in buildfromdirectory2 test and potential segfault 2008-05-06 21:23:48 +00:00
Greg Beaver
5ba8ca70a4 fix alias overloading handling for archives that are not in use 2008-05-06 21:14:53 +00:00
Steph Fox
c322c1a94a - Kill Windows warning when int meets short
- All tests still pass
2008-05-03 21:09:56 +00:00
Greg Beaver
a180fcc9bc add Phar::unlinkArchive() to allow complete removal of a parsed phar archive from memory and disk 2008-05-03 02:04:24 +00:00
Greg Beaver
bfbe53eeb2 refactor isTar/isZip/isPhar into isFileFormat(int format) where format is one of Phar::TAR,, Phar::ZIP, Phar::PHAR
[DOC]
2008-05-02 05:05:56 +00:00
Greg Beaver
e0bc2b2be1 update TODO, re-order methods to be alphabetical, tweak extractTo to set permissions and handle NULL for files
# this also matches the docs I just committed :)
2008-05-02 04:44:39 +00:00
Greg Beaver
0a3fc4faba fix unix-only valgrind issue by initializing arch 2008-04-30 23:44:30 +00:00
Greg Beaver
483018e170 remove unneeded exception handling (webPhar is always within an outer zend_execute block which handles exceptions for us, this is unnecessary) 2008-04-30 02:20:48 +00:00
Steph Fox
8559a2dbde - Prevent phars with empty manifests flushing to disk
- This would've fixed that test... removing clean section

@Greg: I commented out the call that breaks the Windows build, pending a decision about its future.
2008-04-29 12:06:54 +00:00
Greg Beaver
984ea1f437 fix segfault (now all tests pass here) 2008-04-28 23:00:46 +00:00
Greg Beaver
7220c19556 fix tar generation - we were subtly corrupting the header with \0 because of use of strcpy 2008-04-28 16:44:53 +00:00
Greg Beaver
5da6c48f7d add open_basedir/safe_mode checks for files in Phar::addFile() 2008-04-27 23:59:41 +00:00
Steph Fox
bcd2ddd018 - Kill another one from the gcov site's parameter parsing report 2008-04-27 16:42:03 +00:00
Steph Fox
2ea698eae7 - Make it possible to extract all *and* overwrite 2008-04-27 11:26:15 +00:00
Steph Fox
77dcb8cffd - Kill a few uninitialized vars (thanks gcov) 2008-04-27 10:14:00 +00:00
Greg Beaver
79a45a9666 fix buildfromiterator base to exclude directory separator on unix or windows, fix 10 test to have new tests 2008-04-26 17:09:58 +00:00
Steph Fox
cf7f50e42c - Added a RecursiveIterator/buildFromIterator test
- Fixed up bug13727.phpt to take < 15 minutes :\\ and clean up after itself
- Cleaned up protos/reflection data
- Added myself to package.xml credits
2008-04-26 13:22:38 +00:00
Greg Beaver
0c2f3b760a add Phar::extractTo(dest_directory[, mixed files[, bool overwrite]])
this is very similar to ext/zip's extractTo and is based on that code, with the addition of the third parameter, which
is used to allow overwriting existing files (disallowed by default, unlike ext/zip's implementation)
[DOC]
2008-04-26 05:31:00 +00:00
Steph Fox
dbb4618bd5 - cs 2008-04-26 02:04:09 +00:00
Steph Fox
f040cb6492 - fixed those pesky memleaks 2008-04-26 01:52:22 +00:00
Steph Fox
9bf8d7429e - implemented Phar::buildFromDirectory
@Greg: There are two (identical) recurring memleaks I can't seem to kill, both marked FIXME. Would you please take a look?

[DOC] $phar->buildFromDirectory(dirname[, regex]). Return value is an array pairing each file in the archive index with the original path on the filesystem.
2008-04-25 21:37:41 +00:00
Greg Beaver
8657ab7e5a add test for bug #13727, fix bug #13727 2008-04-25 16:50:22 +00:00
Greg Beaver
84004bf248 new test with code coverage for PharFileInfo::setMetadata/delMetadata, improve error messages 2008-04-25 16:05:05 +00:00
Greg Beaver
13dc477de2 new code coverage test, improve clarity of error message when chmod is used on a temp directory 2008-04-25 15:53:02 +00:00
Greg Beaver
efe519c194 fix access fault on windows, fix memleak on all platforms when accessing a temp directory via offsetGet 2008-04-25 04:34:03 +00:00
Greg Beaver
0db641af3e rework PharFileInfo->decompress and add failing test 2008-04-24 19:57:22 +00:00
Greg Beaver
91e67a4fbd test PharFileInfo::__construct, fix potential segfault, and bad logic in phar detection 2008-04-24 05:18:50 +00:00
Greg Beaver
8f0c9caac5 remove redundant unreachable code in Phar::copy, augment test, and add failing condition that needs to be fixed 2008-04-24 04:14:05 +00:00