summaryrefslogtreecommitdiff
path: root/adb/client/incremental_utils.h
diff options
context:
space:
mode:
authorSteven Laver <lavers@google.com>2020-04-14 08:17:16 -0700
committerSteven Laver <lavers@google.com>2020-04-14 08:17:16 -0700
commit6377bb8fa531e15ee5fa10ffbcd1882fda46a1cc (patch)
tree5e1c70a0dc02885ec5c47ecc270f4a7b65eb0513 /adb/client/incremental_utils.h
parentd9f287a3f37aae38c47f76e18b6f9d0d300c9247 (diff)
parent9403fa4ac16cece623145b139c523fe684cad6ee (diff)
Merge RP1A.200414.001
Change-Id: I5c1d78b2229f3cd244dc4cb29c8f21ae0d1b2fe8
Diffstat (limited to 'adb/client/incremental_utils.h')
-rw-r--r--adb/client/incremental_utils.h26
1 files changed, 23 insertions, 3 deletions
diff --git a/adb/client/incremental_utils.h b/adb/client/incremental_utils.h
index 8bcf6c081a..d969d9412b 100644
--- a/adb/client/incremental_utils.h
+++ b/adb/client/incremental_utils.h
@@ -16,11 +16,31 @@
#pragma once
-#include <stdint.h>
+#include "adb_unique_fd.h"
#include <string>
+#include <string_view>
+#include <utility>
#include <vector>
+#include <stdint.h>
+
namespace incremental {
-std::vector<int32_t> PriorityBlocksForFile(const std::string& filepath, int fd, int64_t fileSize);
-} // namespace incremental \ No newline at end of file
+
+using Size = int64_t;
+constexpr int kBlockSize = 4096;
+constexpr int kSha256DigestSize = 32;
+constexpr int kDigestSize = kSha256DigestSize;
+
+constexpr std::string_view IDSIG = ".idsig";
+
+std::vector<int32_t> PriorityBlocksForFile(const std::string& filepath, borrowed_fd fd,
+ Size fileSize);
+
+Size verity_tree_blocks_for_file(Size fileSize);
+Size verity_tree_size_for_file(Size fileSize);
+
+std::pair<std::vector<char>, int32_t> read_id_sig_headers(borrowed_fd fd);
+std::pair<off64_t, ssize_t> skip_id_sig_headers(borrowed_fd fd);
+
+} // namespace incremental