xref: /aosp_15_r20/external/bsdiff/include/bsdiff/constants.h (revision a3a45f308bd90ef1a6e6a5e8fb92fe449b895909)
1*a3a45f30SXin Li // Copyright 2017 The Chromium OS Authors. All rights reserved.
2*a3a45f30SXin Li // Use of this source code is governed by a BSD-style license that can be
3*a3a45f30SXin Li // found in the LICENSE file.
4*a3a45f30SXin Li 
5*a3a45f30SXin Li #ifndef _BSDIFF_CONSTANTS_H_
6*a3a45f30SXin Li #define _BSDIFF_CONSTANTS_H_
7*a3a45f30SXin Li 
8*a3a45f30SXin Li #include <stdint.h>
9*a3a45f30SXin Li 
10*a3a45f30SXin Li namespace bsdiff {
11*a3a45f30SXin Li 
12*a3a45f30SXin Li enum class CompressorType : uint8_t {
13*a3a45f30SXin Li   kNoCompression = 0,
14*a3a45f30SXin Li   kBZ2 = 1,
15*a3a45f30SXin Li   kBrotli = 2,
16*a3a45f30SXin Li };
17*a3a45f30SXin Li 
18*a3a45f30SXin Li // The header of the upstream's "BSDIFF40" format using BZ2 as compressor.
19*a3a45f30SXin Li constexpr uint8_t kLegacyMagicHeader[] = "BSDIFF40";
20*a3a45f30SXin Li 
21*a3a45f30SXin Li // The header of the new BSDF2 format. This format supports both bz2 and
22*a3a45f30SXin Li // brotli compressor.
23*a3a45f30SXin Li constexpr uint8_t kBSDF2MagicHeader[] = "BSDF2";
24*a3a45f30SXin Li 
25*a3a45f30SXin Li }  // namespace bsdiff
26*a3a45f30SXin Li 
27*a3a45f30SXin Li #endif  // _BSDIFF_CONSTANTS_H_
28