summaryrefslogtreecommitdiffstats
path: root/minzip/Zip.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* am 2739ed96: am a5d105e2: Merge "recovery: fix building with pointer-to-int errors turned on"Colin Cross2014-02-061-2/+2
|\ | | | | | | | | * commit '2739ed9628f72813d213b7a429c4c1b8dcebe5fc': recovery: fix building with pointer-to-int errors turned on
| * recovery: fix building with pointer-to-int errors turned onColin Cross2014-02-061-2/+2
| | | | | | | | | | | | | | | | | | | | Use intptr_t/uintptr_t to cast between pointer and int to allow building with -Werror=pointer-to-int-cast and Werror=int-to-pointer-cast turned on. Cast to char* instead of unsigned int for pointer arithmetic. Change-Id: Ia862306fdcca53866b330e8cf726f3d62f2248a0
* | do verification and extraction on memory, not filesDoug Zongker2014-01-161-98/+23
|/ | | | | | | | | | | | | | | | Changes minzip and recovery's file signature verification to work on memory regions, rather than files. For packages which are regular files, install.cpp now mmap()s them into memory and then passes the mapped memory to the verifier and to the minzip library. Support for files which are raw block maps (which will be used when we have packages written to encrypted data partitions) is present but largely untested so far. Bug: 12188746 Change-Id: I12cc3e809834745a489dd9d4ceb558cbccdc3f71
* reduce some recovery loggingDoug Zongker2012-10-191-1/+5
| | | | | | | | | | | Make minzip log only a count of files when extracting, not individual filenames. Make patching only chatter about free space if there's not enough and compact the other messages. Only the last 8k of the recovery log gets uploaded; this makes it more likely that we will get all of it. Change-Id: I529cb4947fe2185df82b9da5fae450a7480dcecd
* Remove HAVE_SELINUX guardsKenny Root2012-10-161-4/+0
| | | | Change-Id: Ia96201f20f7838d7d9e8926208977d3f8318ced4
* Extend recovery and updater to support setting file security contexts.Stephen Smalley2012-03-301-3/+22
| | | | | | | Extend minzip, recovery, and updater to set the security context on files based on the file_contexts configuration included in the package. Change-Id: Ied379f266a16c64f2b4dca15dc39b98fcce16f29
* add a one-argument version of package_extract_fileDoug Zongker2010-02-011-0/+37
| | | | | | | | | | | Add a version of package_extract_file that returns the file data as its return value (to be consumed by some other edify function that expects to receive a bunch of binary data as an argument). Lets us avoid having two copies of a big file in memory (extracting it into /tmp, which is a ramdisk, and then having something load it into memory) when doing things like radio updates. Change-Id: Ie26ece5fbae457eb0ddcd8a13d74d78a769fbc70
* undo temporary alignment hackDoug Zongker2009-05-081-39/+7
| | | | | | Remove the memory alignment that mysteriously made OTA installs work, in anticipation of a kernel that fixes the actual problem. Handle EINTR properly.
* align data passed to write() on 32k boundariesDoug Zongker2009-05-061-16/+46
| | | | | | | | | | In donut, OTA installation often encounters the write() system call doing short writes -- which is legal but unexpected -- or failing with ENOSPC when plenty of space is available. Passing aligned memory buffers to write() appears to prevent (or at least reduce the frequency) of these problems. b/1833052 has been filed to look at the underlying problem, but this change aligns buffers we use with write() so we can OTA for now (or see if this problem still occurs).
* handle short writes when unzipping filesDoug Zongker2009-04-301-11/+27
| | | | | | | minzip fails if write() doesn't write all the data in one call. Apparently this was good enough before, but it causes OTAs to fail all the time now (maybe due to the recently-submitted kernel)? Change code to attempt continuing after short writes.
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-041-0/+1098
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-041-1098/+0
|
* Initial ContributionThe Android Open Source Project2008-10-211-0/+1098