MCPcopy Create free account
hub / github.com/ElementsProject/lightning / tx_must_be_eq

Function tx_must_be_eq

channeld/test/run-commit_tx.c:59–89  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

57}
58
59static void tx_must_be_eq(const struct bitcoin_tx *a,
60 const struct bitcoin_tx *b)
61{
62 u8 *lina, *linb;
63 size_t i;
64
65 lina = linearize_tx(tmpctx, a);
66 linb = linearize_tx(tmpctx, b);
67
68 for (i = 0; i < tal_count(lina); i++) {
69 if (i >= tal_count(linb))
70 errx(1, "Second tx is truncated:\n"
71 "%s\n"
72 "%s",
73 tal_hex(tmpctx, lina),
74 tal_hex(tmpctx, linb));
75 if (lina[i] != linb[i])
76 errx(1, "tx differ at offset %zu:\n"
77 "%s\n"
78 "%s",
79 i,
80 tal_hex(tmpctx, lina),
81 tal_hex(tmpctx, linb));
82 }
83 if (i != tal_count(linb))
84 errx(1, "First tx is truncated:\n"
85 "%s\n"
86 "%s",
87 tal_hex(tmpctx, lina),
88 tal_hex(tmpctx, linb));
89}
90
91/* BOLT #3:
92 *

Callers 1

mainFunction · 0.70

Calls 3

linearize_txFunction · 0.85
errxFunction · 0.85
tal_hexFunction · 0.85

Tested by

no test coverage detected