From edb4ba7c17b1d0f09240626effb2476bc78f36b2 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sun, 7 Jan 2018 20:12:25 +0000 Subject: [PATCH] database: Pass header to functions loading database sections Signed-off-by: Michael Tremer --- src/database.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/database.c b/src/database.c index b1eead6..6d39937 100644 --- a/src/database.c +++ b/src/database.c @@ -84,7 +84,10 @@ static int loc_database_read_magic(struct loc_database* db, FILE* f) { } static int loc_database_read_as_section_v0(struct loc_database* db, - FILE* f, off_t as_offset, size_t as_length) { + FILE* f, const struct loc_database_header_v0* header) { + off_t as_offset = be32toh(header->as_offset); + size_t as_length = be32toh(header->as_length); + DEBUG(db->ctx, "Reading AS section from %jd (%zu bytes)\n", as_offset, as_length); if (as_length > 0) { @@ -103,7 +106,10 @@ static int loc_database_read_as_section_v0(struct loc_database* db, } static int loc_database_read_network_nodes_section_v0(struct loc_database* db, - FILE* f, off_t network_nodes_offset, size_t network_nodes_length) { + FILE* f, const struct loc_database_header_v0* header) { + off_t network_nodes_offset = be32toh(header->network_tree_offset); + size_t network_nodes_length = be32toh(header->network_tree_length); + DEBUG(db->ctx, "Reading network nodes section from %jd (%zu bytes)\n", network_nodes_offset, network_nodes_length); @@ -148,19 +154,12 @@ static int loc_database_read_header_v0(struct loc_database* db, FILE* f) { return r; // AS section - off_t as_offset = be32toh(header.as_offset); - size_t as_length = be32toh(header.as_length); - - r = loc_database_read_as_section_v0(db, f, as_offset, as_length); + r = loc_database_read_as_section_v0(db, f, &header); if (r) return r; // Network Nodes - off_t network_nodes_offset = be32toh(header.network_tree_offset); - size_t network_nodes_length = be32toh(header.network_tree_length); - - r = loc_database_read_network_nodes_section_v0(db, f, - network_nodes_offset, network_nodes_length); + r = loc_database_read_network_nodes_section_v0(db, f, &header); if (r) return r; -- 2.39.2