summaryrefslogtreecommitdiffstats
path: root/libziparchive
Commit message (Collapse)AuthorAgeFilesLines
* Reject zip archives with entry names containing \0.Piotr Jastrzebski2014-08-261-1/+7
| | | | | | | | | | There should never be a need of an entry name with \0 character. Bug: 16162465 (cherry picked from commit 78271ba97b5d867e3597b7fc2257dd1bbd513b05) Change-Id: I68c72fb45e8ec70eb125cfc887488bc18ba5447d
* Prevent the accidental closure of fd[0] for missing zip files.Neil Fuller2014-07-282-22/+33
| | | | | | | (cherry picked from commit b1a113f618561b274ab793e6401416d449c60449) Bug: 16530747 Change-Id: I0d1be3dcadfa5128ffe04cec60f6c998dff61991
* Enable host multilib for ART testing.Ian Rogers2014-06-171-0/+1
| | | | Change-Id: Ic3ae5122eba13565fb5a4cb1bd0e7e465fb2140c
* Replace hand written offsets with structures.Narayan Kamath2014-06-102-160/+272
| | | | | | | | | | | | | | Given that all current & future android ABIs are little endian, we can get rid of the explicit conversions from memory regions to little endian data members. Also cleans up a few C style casts that snuck in during several -Werror efforts and fixes temporary file generation on target. bug: 15448202 Change-Id: I4fcbb3c1124cb82c82139d328344e54fc7895353
* Fix build.Narayan Kamath2014-06-061-2/+2
| | | | | | Uncommitted changes from a rename. Change-Id: If1cac7104c436970f905eede683040ae79529292
* Reject zip files that have trailing bytes after their CD.Narayan Kamath2014-06-052-12/+38
| | | | | bug: 15287086 Change-Id: I03219c4c2ca6afc9d417a35bd98ae682f478fc25
* Fix host 64-bit build.Ying Wang2014-05-161-2/+2
| | | | | Bug: 13751317 Change-Id: Ib42d24408d053bacc24142ed18fc5f3181d2345b
* libziparchive: off64_t is not int64_t (part deux)Mark Salyzyn2014-05-081-4/+4
| | | | Change-Id: I38e78bdba338a0c40aec43d6c86f26f388cee6ab
* libziparchive: off64_t is not int64_tMark Salyzyn2014-05-081-10/+10
| | | | | | - ToDo: investigate why our system headers let us down. Change-Id: Iada422adbbbd4fbd0fc09b51b97b3cd06ccc6374
* libziparchive: 64 bit issuesMark Salyzyn2014-05-081-12/+13
| | | | Change-Id: I1b53aff5b1527a3623d17deed306624707d345ef
* libziparchive: Turn on -WerrorMark Salyzyn2014-05-072-6/+11
| | | | Change-Id: I98a93273b9e1bac0324dd210f6a8493ba780e878
* libziparchive: 64 bit compile issuesMark Salyzyn2014-03-141-29/+29
| | | | | | - All within LOG messages. Change-Id: I52e81b49e8127276359c62febd4cc1d8d69102d9
* Add free to CloseArchive.Mathieu Chartier2014-03-041-7/+1
| | | | | | | | Currently CloseArchive doesn't call free and call sites don't appear to either. I could not find any call sites which manually freed the archive by deleting the handle. This fixes several memory leaks. Change-Id: I21f187dde60fd87e6e54bde06de9e76fd0791104
* Fix logging errors inside ALOGVColin Cross2014-02-071-1/+1
| | | | | | Fix errors exposed by adding checking to disabled ALOGVs. Change-Id: I36b77bb0ad8dc7661b0f834f20d1179b86134d57
* Fix entry handling for 0 length entries.Narayan Kamath2014-01-242-2/+46
| | | | | | | | | | | | | | | | Two minor issues were fixed: - The offset to entry data can be the same as the central directory offset when the last entry in the file has length 0 and is stored (not deflated). Fix a check that disallowed this. We already have a strict check that entry data must end before the central directory, so we're covered. - We would attempt to map a segment of length 0 when writing an entry whose length is 0. We should just return early in this case. bug: 12623277 Change-Id: I2a4ca0c4d170cc3cbf326e5ca13894acd9c434c9
* Merge "Fix a sporadic build breakage."Elliott Hughes2014-01-031-1/+1
|\
| * Fix a sporadic build breakage.Narayan Kamath2014-01-031-1/+1
| | | | | | | | | | | | | | | | | | The issue here is that the makefile sets LOCAL_LDFLAGS and asks for -llog without declaring a dependency on it. This will cause build breakages if liblog hasn't already been built yet. Change-Id: Ia38761cda44a38b6c2a88902d6108cbe64a328ce
* | Change a debug log to a verbose log.Narayan Kamath2014-01-021-1/+1
|/ | | | | | | | Unlike ALOGV, messages from ALOGD are logged on all configurations. Not finding an entry in a zip file is a "normal" occurrence so using an ALOGD message for it amounts to spam. Change-Id: I2c60d11e8a750be5106afd65c3c5e335f53f01b6
* Fix ExtractEntryToFile.Narayan Kamath2013-12-132-4/+53
| | | | | | | | | We would always write uncompressed data at offset 0 instead of the current filedescriptor offset. Also adds a unit-test & a clarifying comment on the API. Change-Id: If44757e96dde504ce63d81b4dec7115fc6f6d5fb
* Merge "Get rid of some log spam."Narayan Kamath2013-12-121-1/+1
|\
| * Get rid of some log spam.Narayan Kamath2013-12-121-1/+1
| | | | | | | | | | | | | | We don't need a warning if an entry isn't found in a zip file. It can happen as part of normal operation. Change-Id: I86c132a040371f36f0dd981b49c02b3173821439
* | Use FileMap from libcutil instead of rolling our own.Narayan Kamath2013-12-112-75/+43
|/ | | | | | Adds windows support as a side effect. Change-Id: I912c1f980f284d01d4f3936291999646ddf6250a
* Add unit tests for libziparchive.Narayan Kamath2013-12-104-15/+155
| | | | | | | | | - Add a build rule for host tests - Add basic tests for Find / Iterate and Extract for both deflated & stored entries. - Fix an off by one error that the test uncovered. Change-Id: If72009b1ea9791d5a265829f05c32ffe1c2752c4
* Fix return code for ended iteration.Narayan Kamath2013-12-091-6/+6
| | | | | | | | The API promises a return code of -1 for an ended iteration and lower negative values for errors. Change-Id: I688a1ee2efad1bdfc6959cf27e49c0426ebf27f8
* Unify zipfile implementations : Step 1.Narayan Kamath2013-12-043-0/+1173
Extract zip file processing logic from libdvm into a standalone library. This library is a stricter than the libdvm library in several ways: - Duplicate zip entry names are now disallowed. Files with such entries will fail to parse. - We now verify CD file size information with the individual file header information. (This was pointed out as a deficiency of this implementation in past discussions.) - We also add support for crc checking, which means we might need to parse the optional data descriptor footer (if one exists). We also provide an API for iterating over the entries of a zip file. This library is optimized for two use cases : - Lookup for a single entry in the file, with the intention of processing or extracting the data associated with that entry - Iterating over all entries in a file *and* processing / extracting their data. Change-Id: Ia87de6184ef753cc470b0af755c47a4f92ac8198