Set libavb version into system property for Treble OTA

Treble allows framework-only (system.img) OTA. To libavb statically
linked in init/fs_mgr cannot parse the AVB metadata of system.img, add
this property for the Treble OTA match process.

Bug: 35236019
Test: Normal boots, use 'adb shell getprop' to check the property is set.
Test: Recovery boots, press 'Mount system' and use 'adb shell getprop'
      to check the property is set

Change-Id: I552be229c4efd45088d93252ac67176606f75d4d
This commit is contained in:
bowgotsai 2017-02-14 22:06:20 +08:00 committed by Iliyan Malchev
parent 141e98474e
commit 763512795d

View file

@ -47,6 +47,7 @@
#include <cutils/iosched_policy.h>
#include <cutils/list.h>
#include <cutils/sockets.h>
#include <libavb/libavb.h>
#include <private/android_filesystem_config.h>
#include <fstream>
@ -959,6 +960,9 @@ int main(int argc, char** argv) {
property_set("ro.boottime.init", getenv("INIT_STARTED_AT"));
property_set("ro.boottime.init.selinux", getenv("INIT_SELINUX_TOOK"));
// Set libavb version for Framework-only OTA match in Treble build.
property_set("ro.boot.init.avb_version", std::to_string(AVB_MAJOR_VERSION).c_str());
// Clean up our environment.
unsetenv("INIT_SECOND_STAGE");
unsetenv("INIT_STARTED_AT");