aboutsummaryrefslogtreecommitdiff
path: root/src/addrman.cpp
diff options
context:
space:
mode:
authorJohn Newbery <john@johnnewbery.com>2021-09-01 12:41:47 +0100
committerJohn Newbery <john@johnnewbery.com>2021-09-07 15:24:00 +0100
commit9fd5618610e91e3949536c5122cf31eb58c9aa6b (patch)
tree733d7b61305784b61a4c3b2a00b6947c8a42c935 /src/addrman.cpp
parentbfdf4ef334a16ef6108a658bf4f8514754128c18 (diff)
downloadbitcoin-9fd5618610e91e3949536c5122cf31eb58c9aa6b.tar.xz
[asmap] Make DecodeAsmap() a utility function
DecopeAsmap is a pure utility function and doesn't have any dependencies on addrman, so move it to util/asmap. Reviewer hint: use: `git diff --color-moved=dimmed-zebra --color-moved-ws=ignore-all-space`
Diffstat (limited to 'src/addrman.cpp')
-rw-r--r--src/addrman.cpp28
1 files changed, 0 insertions, 28 deletions
diff --git a/src/addrman.cpp b/src/addrman.cpp
index fd0d3dc6fa..49226dde42 100644
--- a/src/addrman.cpp
+++ b/src/addrman.cpp
@@ -9,7 +9,6 @@
#include <logging.h>
#include <netaddress.h>
#include <serialize.h>
-#include <util/asmap.h>
#include <cmath>
#include <optional>
@@ -1008,30 +1007,3 @@ CAddrInfo CAddrMan::SelectTriedCollision_()
return mapInfo[id_old];
}
-
-std::vector<bool> CAddrMan::DecodeAsmap(fs::path path)
-{
- std::vector<bool> bits;
- FILE *filestr = fsbridge::fopen(path, "rb");
- CAutoFile file(filestr, SER_DISK, CLIENT_VERSION);
- if (file.IsNull()) {
- LogPrintf("Failed to open asmap file from disk\n");
- return bits;
- }
- fseek(filestr, 0, SEEK_END);
- int length = ftell(filestr);
- LogPrintf("Opened asmap file %s (%d bytes) from disk\n", path, length);
- fseek(filestr, 0, SEEK_SET);
- uint8_t cur_byte;
- for (int i = 0; i < length; ++i) {
- file >> cur_byte;
- for (int bit = 0; bit < 8; ++bit) {
- bits.push_back((cur_byte >> bit) & 1);
- }
- }
- if (!SanityCheckASMap(bits, 128)) {
- LogPrintf("Sanity check of asmap file %s failed\n", path);
- return {};
- }
- return bits;
-}