1 // 2 // Copyright (C) 2014 The Android Open Source Project 3 // 4 // Licensed under the Apache License, Version 2.0 (the "License"); 5 // you may not use this file except in compliance with the License. 6 // You may obtain a copy of the License at 7 // 8 // http://www.apache.org/licenses/LICENSE-2.0 9 // 10 // Unless required by applicable law or agreed to in writing, software 11 // distributed under the License is distributed on an "AS IS" BASIS, 12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 // See the License for the specific language governing permissions and 14 // limitations under the License. 15 // 16 17 #include "update_engine/payload_consumer/payload_constants.h" 18 19 namespace chromeos_update_engine { 20 21 const uint64_t kChromeOSMajorPayloadVersion = 1; 22 const uint64_t kBrilloMajorPayloadVersion = 2; 23 24 const uint32_t kFullPayloadMinorVersion = 0; 25 const uint32_t kInPlaceMinorPayloadVersion = 1; 26 const uint32_t kSourceMinorPayloadVersion = 2; 27 const uint32_t kOpSrcHashMinorPayloadVersion = 3; 28 const uint32_t kImgdiffMinorPayloadVersion = 4; 29 30 const char kLegacyPartitionNameKernel[] = "boot"; 31 const char kLegacyPartitionNameRoot[] = "system"; 32 33 const char kDeltaMagic[4] = {'C', 'r', 'A', 'U'}; 34 const char kBspatchPath[] = "bspatch"; 35 36 // The zlib in Android and Chrome OS are currently compatible with each other, 37 // so they are sharing the same array, but if in the future they are no longer 38 // compatible with each other, we coule make the same change on the other one to 39 // make them compatible again or use ifdef here. 40 const char kCompatibleZlibFingerprint[][65] = { 41 "ea973605ccbbdb24f59f449c5f65861a1a9bc7a4353377aaaa06cb3e0f1cfbd7", 42 "3747fa404cceb00a5ec3606fc779510aaa784d5864ab1d5c28b9e267c40aad5c", 43 }; 44 45 const char* InstallOperationTypeName(InstallOperation_Type op_type) { 46 switch (op_type) { 47 case InstallOperation::BSDIFF: 48 return "BSDIFF"; 49 case InstallOperation::MOVE: 50 return "MOVE"; 51 case InstallOperation::REPLACE: 52 return "REPLACE"; 53 case InstallOperation::REPLACE_BZ: 54 return "REPLACE_BZ"; 55 case InstallOperation::SOURCE_COPY: 56 return "SOURCE_COPY"; 57 case InstallOperation::SOURCE_BSDIFF: 58 return "SOURCE_BSDIFF"; 59 case InstallOperation::ZERO: 60 return "ZERO"; 61 case InstallOperation::DISCARD: 62 return "DISCARD"; 63 case InstallOperation::REPLACE_XZ: 64 return "REPLACE_XZ"; 65 case InstallOperation::IMGDIFF: 66 return "IMGDIFF"; 67 } 68 return "<unknown_op>"; 69 } 70 71 }; // namespace chromeos_update_engine 72