Commit Graph

1385 Commits

Author SHA1 Message Date
Tao Bao
6a47dffde5 updater: Skip empty lines in the transfer list file.
We have the last line being empty as a result of
android::base::Split("a\nb\n"), which leads to "missing command"
warnings in the update. Just skip all the empty lines.

Bug: 24373789
Change-Id: I5827e4600bd5cf0418d95477e4592fec47bbd3a9
2015-09-25 17:12:28 -07:00
Tao Bao
2bdac629f1 Merge changes Ic769eafc,I63f28b3b
* changes:
  updater: Use android::base::ParseInt() to parse integers.
  Suppress some compiler warnings due to signedness.
2015-09-25 18:28:10 +00:00
Tao Bao
b15fd224ed updater: Use android::base::ParseInt() to parse integers.
Change-Id: Ic769eafc8d9535b1d517d3dcbd398c3fd65cddd9
2015-09-24 12:14:37 -07:00
Tao Bao
5701d5829d Suppress some compiler warnings due to signedness.
Change-Id: I63f28b3b4ba4185c23b972fc8f93517295b1672a
2015-09-24 11:06:58 -07:00
Yabin Cui
3317d50179 Merge "minadbd: move from D() to VLOG()." 2015-09-23 23:05:32 +00:00
Yabin Cui
7c913e5faa minadbd: move from D() to VLOG().
Change-Id: I542e2ae8f5ef18b2d6b3dbc1888b3ce1e02a7404
2015-09-23 16:04:41 -07:00
Tao Bao
b739a32b7c Merge "recovery: Add timestamps in update logs." 2015-09-18 03:55:50 +00:00
Tao Bao
04ca426362 recovery: Add timestamps in update logs.
Fork a logger process and send over the log lines through a pipe.
Prepend a timestamp to each line for debugging purpose. Timestamps are
relative to the start of the logger.

Example lines with the change in this CL:

[  445.948393] Verifying update package...
[  446.279139] I:comment is 1738 bytes; signature 1720 bytes from end
[  449.463652] I:whole-file signature verified against RSA key 0
[  449.463704] I:verify_file returned 0

Change-Id: I139d02ed8f2e944c1618c91d5cc43282efd50b99
2015-09-17 10:57:31 -07:00
Tao Bao
a42a322d8f Merge "updater: Manage buffers with std::vector." 2015-09-16 19:12:14 +00:00
David Pursell
ee17242f90 Merge "minadbd: update service_to_fd() signature." 2015-09-14 18:39:37 +00:00
Tao Bao
b83fd51826 Merge "recovery: Remove redirect_stdio() when calling ShowFile()." 2015-09-12 01:09:49 +00:00
Tao Bao
9a7fd80d2d recovery: Remove redirect_stdio() when calling ShowFile().
When calling ScreenRecoveryUI::ShowFile(), the only thing that gets
inadequately logged is the progress bar. Replace the call to
ScreenRecoveryUI::Print() with ScreenRecoveryUI::PrintOnScreenOnly() for
the progress bar, so we can avoid calling redirect_stdio().

Change-Id: I4d7c5d5b39bebe0d5880a99d7a72cee4f0b8f325
2015-09-10 13:42:05 -07:00
Tao Bao
7a6778078b Merge "updater: Fix the line breaks in ui_print commands." 2015-09-10 17:23:26 +00:00
Tao Bao
1107d96746 updater: Fix the line breaks in ui_print commands.
When processing ui_print commands in the updater, it misses a line break
when printing to the recovery log.

Also clean up uiPrintf() and UIPrintFn() with std::string's.

Change-Id: Ie5dbbfbc40b024929887d3c3ccd3a334249a8c9d
2015-09-10 10:17:56 -07:00
Tao Bao
612336ddc1 updater: Manage buffers with std::vector.
Change-Id: Ide489e18dd8daf161b612f65b28921b61cdd8d8d
2015-09-09 17:44:23 -07:00
Tao Bao
e520f1d4cd Merge "updater: Replace the pointers in LoadSrcTgtVersion[1-3]() parameter." 2015-09-09 17:54:40 +00:00
Tao Bao
34847b2c70 updater: Replace the pointers in LoadSrcTgtVersion[1-3]() parameter.
And inline the call to LoadSrcTgtVersion1() into SaveStash().

Change-Id: Ibf4ef2bfa2cc62df59c4e8de99fd7d8039e71ecf
2015-09-08 11:08:00 -07:00
Tao Bao
585a50cecb Merge "imgdiff: fix file descriptor leak" 2015-09-08 17:40:27 +00:00
Jeremy Compostella
a91c66d7c1 imgdiff: fix file descriptor leak
mkstemp() allocates a file description that is never released.  If
MakePatch() is called too many time, imgdiff reaches the Operating
System EMFILE (too many open files) limit.

Change-Id: Icbe1399f6f6d32cfa1830f879cacf7d75bbd9fc3
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Signed-off-by: Gaelle Nassiet <gaellex.nassiet@intel.com>
2015-09-08 19:15:09 +02:00
Tom Cherry
f8c303f9c1 Merge "move uncrypt from init.rc to uncrypt.rc" 2015-09-04 16:51:30 +00:00
David Pursell
c3d4d53546 minadbd: update service_to_fd() signature.
No functional change, just matching the signature to an adb change. See
https://android-review.googlesource.com/#/c/169601/.

Change-Id: Ic826864e126054849b3a4d193ded8acc5ee5269c
2015-09-03 16:41:42 -07:00
Tom Cherry
daa6d04434 move uncrypt from init.rc to uncrypt.rc
Move uncrypt from /init.rc to /system/etc/init/uncrypt.rc using the
LOCAL_INIT_RC mechanism

Bug 23186545

Change-Id: Ib8cb6dffd2212f524298279787fd557bc84aa7b9
2015-09-03 16:32:54 -07:00
David Zeuthen
4c223f4e39 Merge "Add slot_suffix field to struct bootloader_message." 2015-09-03 15:10:55 +00:00
Tao Bao
6997c287be Merge "updater: Clean up C codes." 2015-09-02 21:45:36 +00:00
David Zeuthen
d85ae79dc9 Add slot_suffix field to struct bootloader_message.
This is needed by fs_mgr for certain A/B implementations.

Change-Id: I7bb404d61198eb7a962c2b693911f5156745daae
2015-09-02 15:49:58 -04:00
Tao Bao
0940fe17b0 updater: Clean up C codes.
Replace C-string with std::string, pointers with references, and
variable-size arrays in struct with std::vector.

Change-Id: I57f361a0e58286cbcd113e9be225981da56721b2
2015-09-01 12:57:35 -07:00
Tao Bao
eef991389c Merge "updater: Remove the unused isunresumable in SaveStash()." 2015-08-26 21:03:01 +00:00
Tao Bao
9739a2920c updater: Remove the unused isunresumable in SaveStash().
Change-Id: I6a8d9bea4c1cd8ea7b534682061b90e893b227a2
2015-08-25 18:05:38 -07:00
Tao Bao
50c17f9da6 Merge "GOOGLEGMS-749 Fix integer overflow while applying block based OTA package" 2015-08-26 00:57:42 +00:00
Shrinivas Sahukar
a6153df887 GOOGLEGMS-749 Fix integer overflow while applying block based OTA package
There is an integer overflow when the size of system goes beyond the
signed int limits. Hence changing pos to size_t.

Change-Id: I6e5e1b2f0e72030b30a6df09a01642f4c82abc79
2015-08-21 15:59:28 -07:00
Tao Bao
93fa4b677c Merge "edify: Switch to C++." 2015-08-21 17:36:11 +00:00
Tao Bao
2a5a49d337 edify: Switch to C++.
Change-Id: I71aede6e29af1dc4bb858a62016c8035db5d3452
2015-08-20 12:11:04 -07:00
Tao Bao
ad509fd4a2 Merge "Fix potential crash" 2015-08-11 16:11:44 +00:00
Tao Bao
0d46c7ab02 Merge "Use unique_ptr and unique_fd to manager FDs." 2015-08-10 17:28:52 +00:00
Tao Bao
7c511184bf Merge "updater: Clean up char* with std::string." 2015-08-10 17:23:13 +00:00
Tao Bao
c754792a07 Use unique_ptr and unique_fd to manager FDs.
Clean up leaky file descriptors in uncrypt/uncrypt.cpp. Add unique_fd
for open() and unique_file for fopen() to close FDs on destruction.

Bug: 21496020
Change-Id: I0174db0de9d5f59cd43b44757b8ef0f5912c91a2
2015-08-09 22:35:49 -07:00
Dan Albert
e67104a6a7 Merge "Use CPPFLAGS instead of CFLAGS." 2015-08-08 00:45:43 +00:00
Dan Albert
b02e90f85c Use CPPFLAGS instead of CFLAGS.
While we build these as C, to the build system they are technically
C++ and are subject to the global CPPFLAGS. Set LOCAL_CPPFLAGS here
instead of LOCAL_CFLAGS so we can be sure we override anything
provided by the build system.

Bug: http://b/23043421
Change-Id: I344b54ae4ff9f142365a42c33ba160c1be17a342
2015-08-07 17:24:49 -07:00
Elliott Hughes
06689dc53d Merge "Fix recovery image build." 2015-08-07 20:24:21 +00:00
Elliott Hughes
faa75006af Fix recovery image build.
A recent adb cleanup changed the signature of adb_main.

Change-Id: I98d084f999966f1a7aa94c63e9ed996b3375096d
2015-08-07 13:21:06 -07:00
Tao Bao
e6aa3326c1 updater: Clean up char* with std::string.
So we can remove a few free()s. And also replace a few pointers with
references.

Change-Id: I4b6332216704f4f9ea4a044b8d4bb7aa42a7ef26
2015-08-06 13:05:00 -07:00
Jeremy Compostella
1b7d9b7368 Fix potential crash
Malloc might fail when replacing package path. In this case, print a
clear error message in the logs and let the OTA fails.

Change-Id: I7209d95edc025e3ee1b4478f5e04f6e852d97205
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Signed-off-by: Gaelle Nassiet <gaellex.nassiet@intel.com>
2015-08-05 10:15:32 +02:00
Tao Bao
27c1ab2095 Merge "udpater: Call fsync() after rename()." 2015-08-04 18:24:53 +00:00
Tao Bao
dc3922622a udpater: Call fsync() after rename().
We need to ensure the renamed filename reaches the underlying storage.

Bug: 22840552
Change-Id: Ide2e753a2038691d472b6ee173cbf68ac998a084
2015-08-03 21:35:05 -07:00
Tao Bao
302779e71c Merge "recovery: Allow "Mount /system" for system_root_image." 2015-07-31 16:43:39 +00:00
Tao Bao
abb8f7785e recovery: Allow "Mount /system" for system_root_image.
When system images contain the root directory, there is no entry of
"/system" in the fstab. Change it to look for "/" instead if
ro.build.system_root_image is true. We actually mount the partition
to /system_root instead, and create a symlink to /system_root/system
for /system. This allows "adb shell" to work properly.

Bug: 22855115
Change-Id: Ibac493a5a9320c98ee3b60bd2cc635b925f5454a
2015-07-30 17:22:29 -07:00
Tao Bao
62e1923194 Merge "updater: Hoist fsync() to outer loop." 2015-07-28 00:12:31 +00:00
Tao Bao
187efff6f3 updater: Hoist fsync() to outer loop.
Currently the fsync() inside write_all() may be called multiple times
when performing a command. Move that to the outer loop and call it
only after completing the command.

Also remove the O_SYNC flag when writing a stash.

Change-Id: I71e51d76051a2f7f504eef1aa585d2cb7a000d80
2015-07-27 14:17:09 -07:00
Tao Bao
6a4a33e39e Merge "applypatch: Fix the checking in WriteToPartition()." 2015-07-24 22:56:36 +00:00
Tao Bao
1ce7a2a63d applypatch: Fix the checking in WriteToPartition().
WriteToPartition() should consider a target name as valid if it contains
multiple colons. But only the first two fields will be used.

Bug: 22725128
Change-Id: Ie9404375e24045c115595eec6ce5b6423da8fc3e
2015-07-24 15:33:35 -07:00