Skip to content

Commit 835bcad

Browse files
committed
fix reading bug (needs *address* of interface), read in metadata
1 parent ea1233a commit 835bcad

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

contrib/utxo-tools/utxo_to_sqlite.zig

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -176,13 +176,23 @@ pub fn main() !void {
176176
std.process.exit(4);
177177
}
178178

179-
// TODO: read in metadata from input file
179+
// prepare file reading
180180
var io_buf: [64 * 1024]u8 = undefined;
181-
const reader_obj = infile.reader(&io_buf);
182-
var reader = reader_obj.interface;
183-
std.debug.print("before reading\n", .{});
181+
var infile_reader = infile.reader(&io_buf);
182+
var reader = &infile_reader.interface;
183+
184+
// read in metadata (magic bytes, version, network magic, block hash, UTXO count)
184185
const magic_bytes = try reader.takeArray(5);
186+
const version = mem.readInt(u16, try reader.takeArray(2), .little);
187+
const network_magic = try reader.takeArray(4);
188+
const block_hash = try reader.takeArray(32);
189+
const num_utxos = mem.readInt(u64, try reader.takeArray(8), .little);
185190
std.debug.print("magic bytes: {x}\n", .{magic_bytes});
191+
std.debug.print("version: {d}\n", .{version});
192+
std.debug.print("network magic: {x}\n", .{network_magic});
193+
std.debug.print("block hash: {x}\n", .{block_hash});
194+
std.debug.print("number of UTXOs: {d}\n", .{num_utxos});
195+
186196
// TODO: implement coins conversion loop
187197
// TODO: write summary at the end
188198
}

0 commit comments

Comments
 (0)