From 3ebfddeabe3451b7f33d110023bfc1b207a4760d Mon Sep 17 00:00:00 2001 From: Tao Bao Date: Tue, 23 May 2017 23:06:55 -0700 Subject: [PATCH] Remove three board_avb_* args from META/misc_info.txt. board_avb_algorithm and board_avb_key_path are overlapping with avb_signing_args. In core/Makefile, only avb_signing_args (i.e. INTERNAL_AVB_SIGNING_ARGS) will be used in the AVB-signing command. It covers the contents in board_avb_{algorithm,key_path}. We should do the same thing in tools/releasetools to avoid potential inconsistency. This CL cleans up the logic in tools/releasetools, by always using avb_signing_args. This also allows easier signing key replacement (so we can replace the key/algorithm/signer in 'avb_signing_args'). board_avb_system_add_hashtree_footer_args is unused in releasetools script, and the same information has been covered by system_avb_add_hashtree_footer_args. This CL removes this arg as well. Test: `m dist`. Then a) check the removed three args no longer exist in META/misc_info.txt; b) check that rebuilding images with add_img_to_target_files.py uses the same parameters. Change-Id: I7db890b5c942de5b6868d8d1ebf937586d4729c0 --- core/Makefile | 3 --- tools/releasetools/add_img_to_target_files.py | 6 +++--- tools/releasetools/common.py | 18 ++++-------------- 3 files changed, 7 insertions(+), 20 deletions(-) diff --git a/core/Makefile b/core/Makefile index 2a2be95f5..a23cdd466 100644 --- a/core/Makefile +++ b/core/Makefile @@ -2234,10 +2234,7 @@ endif ifeq ($(BOARD_AVB_ENABLE),true) $(hide) echo "board_avb_enable=true" >> $(zip_root)/META/misc_info.txt $(hide) echo "board_avb_rollback_index=$(BOARD_AVB_ROLLBACK_INDEX)" >> $(zip_root)/META/misc_info.txt - $(hide) echo "board_avb_key_path=$(BOARD_AVB_KEY_PATH)" >> $(zip_root)/META/misc_info.txt - $(hide) echo "board_avb_algorithm=$(BOARD_AVB_ALGORITHM)" >> $(zip_root)/META/misc_info.txt $(hide) echo "board_avb_boot_add_hash_footer_args=$(BOARD_AVB_BOOT_ADD_HASH_FOOTER_ARGS)" >> $(zip_root)/META/misc_info.txt - $(hide) echo "board_avb_system_add_hashtree_footer_args=$(BOARD_AVB_SYSTEM_ADD_HASHTREE_FOOTER_ARGS)" >> $(zip_root)/META/misc_info.txt $(hide) echo "board_avb_make_vbmeta_image_args=$(BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS)" >> $(zip_root)/META/misc_info.txt endif ifdef BOARD_BPT_INPUT_FILES diff --git a/tools/releasetools/add_img_to_target_files.py b/tools/releasetools/add_img_to_target_files.py index ac970d1f9..1d8090afc 100755 --- a/tools/releasetools/add_img_to_target_files.py +++ b/tools/releasetools/add_img_to_target_files.py @@ -194,11 +194,11 @@ def AddDtbo(output_zip, prefix="IMAGES/"): # AVB-sign the image as needed. if OPTIONS.info_dict.get("board_avb_enable") == "true": avbtool = os.getenv('AVBTOOL') or OPTIONS.info_dict["avb_avbtool"] - part_size = OPTIONS.info_dict.get("dtbo_size") + part_size = OPTIONS.info_dict["dtbo_size"] # The AVB hash footer will be replaced if already present. cmd = [avbtool, "add_hash_footer", "--image", img.name, "--partition_size", str(part_size), "--partition_name", "dtbo"] - common.AppendAVBSigningArgs(cmd) + cmd.extend(shlex.split(OPTIONS.info_dict["avb_signing_args"])) args = OPTIONS.info_dict.get("board_avb_dtbo_add_hash_footer_args") if args and args.strip(): cmd.extend(shlex.split(args)) @@ -349,7 +349,7 @@ def AddVBMeta(output_zip, boot_img_path, system_img_path, vendor_img_path, cmd.extend(["--include_descriptors_from_image", dtbo_img_path]) if OPTIONS.info_dict.get("system_root_image") == "true": cmd.extend(["--setup_rootfs_from_kernel", system_img_path]) - common.AppendAVBSigningArgs(cmd) + cmd.extend(shlex.split(OPTIONS.info_dict["avb_signing_args"])) args = OPTIONS.info_dict.get("board_avb_make_vbmeta_image_args") if args and args.strip(): cmd.extend(shlex.split(args)) diff --git a/tools/releasetools/common.py b/tools/releasetools/common.py index c022d2441..652fadf56 100644 --- a/tools/releasetools/common.py +++ b/tools/releasetools/common.py @@ -345,16 +345,6 @@ def DumpInfoDict(d): print("%-25s = (%s) %s" % (k, type(v).__name__, v)) -def AppendAVBSigningArgs(cmd): - """Append signing arguments for avbtool.""" - keypath = OPTIONS.info_dict.get("board_avb_key_path", None) - algorithm = OPTIONS.info_dict.get("board_avb_algorithm", None) - if not keypath or not algorithm: - algorithm = "SHA256_RSA4096" - keypath = "external/avb/test/data/testkey_rsa4096.pem" - cmd.extend(["--key", keypath, "--algorithm", algorithm]) - - def _BuildBootableImage(sourcedir, fs_config_file, info_dict=None, has_ramdisk=False, two_step_image=False): """Build a bootable image from the specified sourcedir. @@ -491,12 +481,12 @@ def _BuildBootableImage(sourcedir, fs_config_file, info_dict=None, # AVB: if enabled, calculate and add hash to boot.img. if info_dict.get("board_avb_enable", None) == "true": - avbtool = os.getenv('AVBTOOL') or OPTIONS.info_dict["avb_avbtool"] - part_size = info_dict.get("boot_size", None) + avbtool = os.getenv('AVBTOOL') or info_dict["avb_avbtool"] + part_size = info_dict["boot_size"] cmd = [avbtool, "add_hash_footer", "--image", img.name, "--partition_size", str(part_size), "--partition_name", "boot"] - AppendAVBSigningArgs(cmd) - args = info_dict.get("board_avb_boot_add_hash_footer_args", None) + cmd.extend(shlex.split(info_dict["avb_signing_args"])) + args = info_dict.get("board_avb_boot_add_hash_footer_args") if args and args.strip(): cmd.extend(shlex.split(args)) p = Run(cmd, stdout=subprocess.PIPE)