summaryrefslogtreecommitdiff
path: root/src/gunzip.c
AgeCommit message (Collapse)AuthorFilesLines
2014-10-07io: fix few error path leaksTimo Teräs1-4/+2
2011-09-13all: update copyright year statementTimo Teräs1-1/+1
2010-12-17gunzip: fix ordering of boundary callbacksTimo Teräs1-8/+24
The boundary callback should not happen until all the uncompressed data has been consumed. This previously seems to have worked because normally gzip library returns "no error" instead of the "stream end" if we extract exactly the amount of bytes remaining in the archive. (Perhaps this was changed in new zlib.) In any case, verification was broken with some apks due to this callback ordering issue.
2010-12-09io: enhance istream/bstreams with pipe to forked childTimo Teräs1-2/+2
* prunes the child pid to avoid zombies * handles the errors so e.g. file-not-found is reported properly
2009-08-12io: better error handling when writing stuff outTimo Teras1-4/+9
also have the output stream support writing to temporary file and do renameat/unlinkat on close depending on if all writes succeeded or not.
2009-07-22pkg: cleanup the signing codeTimo Teras1-3/+8
smaller callback and less cases to check. also reintroduce the oneshot digest flag, hopefully correct this time.
2009-07-22various: more informative error messagesTimo Teras1-12/+12
2009-07-22various: installation fixesTimo Teras1-8/+8
- extract everything as .apk-new and overwrite only after data has been checksummed - url construction fixes (to work with simple http servers) - end of gunzip stream fixed - remove oneshot digesting flag for now as it's usage was broken
2009-07-21pkg: fix indexing of multi-part apksTimo Teras1-21/+27
2009-07-21db: fixes to package checksumming while installing itTimo Teras1-3/+10
2009-07-20gzip: fix finalization of compressed outputTimo Teras1-5/+8
the unflushed data when closing file can be several thousand kiloes, loop until all is written out.
2009-07-17digest: use oneshot context flag where approriateTimo Teras1-25/+19
speeds up digest calculation on some cases.
2009-07-17pkg: fix index generationTimo Teras1-7/+10
that got broke during verify implementation.
2009-07-16various: new style index generationTimo Teras1-9/+89
change the index generation to do old index, or the new style index where package identity is sha1 of control block and it's contained within an .tar.gz to allow signing in future.
2009-07-16gzip: always autoclose the inner streamTimo Teras1-5/+2
2009-07-14bstream: make tokenizable and load index using bstreamTimo Teras1-1/+5
some fixes on index reading code too.
2009-07-13io: move csumming away from bstream to gunzipTimo Teras1-8/+41
in future we want to checksum on gzip boundary basis, not the full file.
2009-07-10gunzip: accept concatenated gzip streamsTimo Teras1-1/+11
allow .apk to consist of multiple separate gzip streams which are just concatenated together.
2009-01-06io: fix some memory leaksTimo Teras1-1/+5
2009-01-06io: check inner stream existance before creating gunzip streamTimo Teras1-0/+3
2008-11-28io: apk_ostream stuffTimo Teras1-1/+1
2008-11-14db: checksum installed files, protect config filesTimo Teras1-1/+0
Checksum of installed is computed on the fly when extracting them and it'll be saved to fdb. When installing config files those are diverted with suffix .apk-new if earlier version of same file with local changes exist.
2008-11-07use zlib internally to decompressTimo Teras1-0/+93