Generate verity config.

A new minor version 6 kVerityMinorPayloadVersion is added, client
having a minor version >= 6 means it support writing verity hash
tree and fec given verity config from payload.

When generating payload in Android, if the source minor version is
>= 6, then we try to find the AVB footer for each partition image
and parse the AVB hashtree descriptor, if found then write verity
config to the payload, the verification of verity config will be
added in a follow up CL.

AVB is an Android specific format, so we will skip this for Chrome
OS for now, if later we decided to enable verity feature in Chrome
OS, we can implement the parsing logic for Chrome OS verity metadata
format in payload_generation_config_chromeos.cc

Bug: 28171891
Test: brillo_update_payload verify
Change-Id: Ic319ea05e9f0095e3a4721df79a6ab516fa8a915
diff --git a/payload_consumer/payload_constants.h b/payload_consumer/payload_constants.h
index 0833484..7f76898 100644
--- a/payload_consumer/payload_constants.h
+++ b/payload_consumer/payload_constants.h
@@ -53,6 +53,9 @@
 // The minor version that allows PUFFDIFF operation.
 extern const uint32_t kPuffdiffMinorPayloadVersion;
 
+// The minor version that allows Verity hash tree and FEC generation.
+extern const uint32_t kVerityMinorPayloadVersion;
+
 // The minimum and maximum supported minor version.
 extern const uint32_t kMinSupportedMinorPayloadVersion;
 extern const uint32_t kMaxSupportedMinorPayloadVersion;