Add major_version flag in delta_generator.
Only affects major version number in the payload for now, actual implementation
of major version 2 will follow.
TEST=Call delta_generator manually with --major_version=2 then cros payload
show.
Bug: 23694580
Change-Id: I5baca5a868ec00dc2f6ea63d89e295d43283fd32
diff --git a/payload_generator/payload_file.cc b/payload_generator/payload_file.cc
index d3cc0ba..66f51dd 100644
--- a/payload_generator/payload_file.cc
+++ b/payload_generator/payload_file.cc
@@ -18,6 +18,7 @@
#include <algorithm>
+#include "update_engine/delta_performer.h"
#include "update_engine/file_writer.h"
#include "update_engine/omaha_hash_calculator.h"
#include "update_engine/payload_constants.h"
@@ -33,8 +34,6 @@
namespace {
-const uint64_t kMajorVersionNumber = 1;
-
static const char* kInstallOperationTypes[] = {
"REPLACE",
"REPLACE_BZ",
@@ -73,6 +72,9 @@
};
bool PayloadFile::Init(const PayloadGenerationConfig& config) {
+ major_version_ = config.major_version;
+ TEST_AND_RETURN_FALSE(major_version_ == kChromeOSMajorPayloadVersion ||
+ major_version_ == kBrilloMajorPayloadVersion);
manifest_.set_minor_version(config.minor_version);
if (!config.source.ImageInfoIsEmpty())
@@ -179,7 +181,7 @@
TEST_AND_RETURN_FALSE(writer.Write(kDeltaMagic, strlen(kDeltaMagic)));
// Write major version number
- TEST_AND_RETURN_FALSE(WriteUint64AsBigEndian(&writer, kMajorVersionNumber));
+ TEST_AND_RETURN_FALSE(WriteUint64AsBigEndian(&writer, major_version_));
// Write protobuf length
TEST_AND_RETURN_FALSE(WriteUint64AsBigEndian(&writer,