summaryrefslogtreecommitdiffstats
path: root/otafault (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove ota_close(int) and ota_fclose(FILE*).Tao Bao2016-11-282-14/+22
| | | | | | | | | | | We should always use unique_fd or unique_file to hold the FD or FILE* pointer when opening via ota_(f)open functions. This CL avoids accidentally closing raw FDs or FILE* pointers that are managed by unique_fd/unique_file. Test: recovery_component_test passes. Change-Id: If58eb8b5c5da507563f85efd5d56276472a1c957
* Add ota_close(unique_fd&) and ota_fclose(std::unique_ptr<FILE>&).Tao Bao2016-11-232-2/+18
| | | | | | | | | | | | | | | | | | | | | | We were using the below sequence prior to the CL in [1]. unique_fd fd(ota_open(...)); ota_close(fd); fd.reset(ota_open(...)); fd.reset() may unintentionally close the newly opened FD if it has the same value as the early ota_open. The CL in [1] changed to "ota_close(fd.release())" to avoid the issue. This CL adds a new overloaded function ota_close(unique_fd&) to handle the release automatically. Similarly add ota_fclose(std::unique_ptr<FILE>&). [1] commit 48cf770471ef53fbf0a1837196220862a0bdb18d. Bug: 33034669 Test: recovery_component_test passes. Change-Id: Ief91edc590e95a7426e33364b28754173efb1056
* applypatch: Use unique_fd to avoid leaking FDs.Tao Bao2016-11-171-0/+10
| | | | | | | | | Add unique_fd that calls ota_close() instead of the default closer. Test: recovery_component_test passes. Test: Apply a package that calls apply_patch(). Change-Id: I0c19921731757934f76cf7d5215916673a8f2777
* Replace minzip with libziparchiveTianjie Xu2016-10-183-11/+15
| | | | | | | | | | | Clean up the duplicated codes that handle the zip files in bootable/recovery; and rename the library of the remaining utility functions to libotautil. Test: Update package installed successfully on angler. Bug: 19472796 Change-Id: Iea8962fcf3004473cb0322b6bb3a9ea3ca7f679e
* Turn on -Werror for recoveryTianjie Xu2016-09-301-0/+2
| | | | | | | | | | Also remove the 0xff comparison when validating the bootloader message fields. As the fields won't be erased to 0xff after we remove the MTD support. Bug: 28202046 Test: The recovery folder compiles for aosp_x86-eng Change-Id: Ibb30ea1b2b28676fb08c7e92a1e5f7b6ef3247ab
* Switch recovery to libbase loggingTianjie Xu2016-09-011-2/+3
| | | | | | | | Clean up the recovery image and switch to libbase logging. Bug: 28191554 Change-Id: Icd999c3cc832f0639f204b5c36cea8afe303ad35 Merged-In: Icd999c3cc832f0639f204b5c36cea8afe303ad35
* Merge \"Fix clang-tidy performance warnings.\"Chih-Hung Hsieh2016-07-271-1/+1
|\ | | | | | | | | | | am: 2a3b695168 Change-Id: I55cadf517ec612f1b03de71ce7ca5cff69bc80d0
| * Fix clang-tidy performance warnings.Chih-Hung Hsieh2016-07-271-1/+1
| | | | | | | | | | | | | | | | | | | | * Use const reference parameter type to avoid unnecessary copy. * Use more efficient overloaded string methods. Bug: 30407689 Bug: 30411878 Change-Id: Iefab05c077367f272abf545036b853e8a295c8cd Test: build with WITH_TIDY=1
| * Correct caching behavior for should_inject_cacheJed Estep2016-03-252-18/+23
| | | | | | | | | | | | Bug: 27800498 Change-Id: I5255283c1d04a385ed719c5bc2be461cae9f3648 (cherry picked from commit 88dd7796a1fd4c64d57afb20021bf66cb26fa886)
* | Correct caching behavior for should_inject_cacheJed Estep2016-03-242-17/+17
|\ \ | | | | | | | | | | | | | | | | | | am: 88dd779 * commit '88dd7796a1fd4c64d57afb20021bf66cb26fa886': Correct caching behavior for should_inject_cache
| * | Correct caching behavior for should_inject_cacheJed Estep2016-03-232-17/+17
| | | | | | | | | | | | | | | Bug: 27800498 Change-Id: I5255283c1d04a385ed719c5bc2be461cae9f3648
* | | Control fault injection with config files instead of build flagsJed Estep2016-03-216-134/+237
|\| | | | | | | | | | | | | | | | | | | | am: ff6df89 * commit 'ff6df890a2a01bf3bf56d3f430b17a5ef69055cf': Control fault injection with config files instead of build flags
| * | Control fault injection with config files instead of build flagsJed Estep2016-03-196-134/+237
| | | | | | | | | | | | | | | Bug: 27724259 Change-Id: I65bdefed10b3fb85fcb9e1147eaf0687d7d438f4
* | | resolve merge conflicts of ce58688 to nyc-dev-plus-aospTao Bao2016-03-176-236/+136
|\| | | |/ |/| | | Change-Id: Ia9bfb989b6d13ee4f6a22216beb94065a9487484
| * Revert "DO NOT MERGE Control fault injection with config files instead of build flags"Tao Bao2016-03-176-232/+134
| | | | | | | | | | | | | | This reverts commit f73abf36bcfd433a3fdd1664a77e8e531346c1b1. Bug: 27724259 Change-Id: I1301fdad15650837d0b1febd0c3239134e2b94fb
| * DO NOT MERGE Control fault injection with config files instead of build flagsJed Estep2016-03-166-134/+232
| | | | | | | | | | Bug: 26570379 Change-Id: I76109d09276d6e3ed3a32b6fedafb2582f545c0c
| * otafault: Fix setting of have_eio_error.Greg Kaiser2016-03-141-1/+1
| | | | | | | | | | | | | | | | There was one case (ota_fsync, under TARGET_SYNC_FAULT, when the filename was cached) where we were not setting have_eio_error prior to returning. We fix that. Change-Id: I2b0aa61fb1e821f0e77881aba04db95cd8396812
| * Reboot and retry on I/O errorsTianjie Xu2016-03-101-10/+58
| | | | | | | | | | | | | | | | | | When I/O error happens, reboot and retry installation two times before we abort this OTA update. Bug: 25633753 Change-Id: Iba6d4203a343a725aa625a41d237606980d62f69 (cherry picked from commit 3c62b67faf8a25f1dd1c44dc19759c3997fdfd36)
| * IO fault injection for OTA packagesJed Estep2016-01-064-0/+299
| | | | | Bug: 25951086 Change-Id: I31c74c735eb7a975b7f41fe2b2eff042e5699c0c
* Merge "Reboot and retry on I/O errors"Tianjie Xu2016-03-081-5/+32
|\
| * Reboot and retry on I/O errorsTianjie Xu2016-03-031-5/+32
| | | | | | | | | | | | | | | | When I/O error happens, reboot and retry installation two times before we abort this OTA update. Bug: 25633753 Change-Id: Iba6d4203a343a725aa625a41d237606980d62f69
* | Fix the improper use of LOCAL_WHOLE_STATIC_LIBRARIES.Tao Bao2016-03-031-4/+9
|/ | | | | | | | | | | | | If two libraries both use LOCAL_WHOLE_STATIC_LIBRARIES and include a same library, there would be linking errors when generating a shared library (or executable) that depends on the two libraries both. Also clean up Android.mk files. Remove the "LOCAL_MODULE_TAGS := eng" line for the updater module. The module will then default to "optional" which won't be built until needed. Change-Id: I3ec227109b8aa744b7568e7f82f575aae3fe0e6f
* Control fault injection with config files instead of build flagsJed Estep2016-02-236-118/+237
| | | | | | Bug: 26570379 Change-Id: I76109d09276d6e3ed3a32b6fedafb2582f545c0c (cherry picked from commit d940887dde23597dc358b16d96ca48dd7480fee6)
* IO fault injection for OTA packagesJed Estep2016-02-104-0/+299
Bug: 25951086 Change-Id: I31c74c735eb7a975b7f41fe2b2eff042e5699c0c (cherry-picked from commit f1fc48c6e62cfee42d25ad12f443e22d50c15d0b)