1
0
mirror of https://github.com/bitcoin/bips.git synced 2026-07-06 17:46:00 +00:00

BIP-0158: add test cases for OP_RETURN with op codes, empty filter

In this commit, we add a new test case for a filter built from a block
that has a transaction with an OP_RETURN which isn't followed by only
push data items. The prior implementation for btcd (which was used to
generated these test vectors), had a stricter check which caused it to
add extra items to the filter. We also add a case of a block that has a
single coinbase transaction, with that transaction having only an
OP_RETURN output. As a result, that filter will be "empty", and is
signalled by by a single zero (0x00) byte.

In order to make building the code that makes the test vectors
reproducible, we've added go.mod and go.sum files as well.
This commit is contained in:
Olaoluwa Osuntokun
2019-02-12 18:31:08 -08:00
parent 954df0d107
commit dd3948b474
4 changed files with 69 additions and 4 deletions

View File

@@ -33,11 +33,13 @@ var (
{0, "Genesis block"},
{2, ""},
{3, ""},
{15007, "Tx has non-standard OP_RETURN output followed by opcodes"},
{49291, "Tx pays to empty output script"},
{180480, "Tx spends from empty output script"},
{926485, "Duplicate pushdata 913bcc2be49cb534c20474c4dee1e9c4c317e7eb"},
{987876, "Coinbase tx has unparseable output script"},
{1263442, "Includes witness data"},
{1414221, "Empty data"},
}
defaultBtcdDir = btcutil.AppDataDir("btcd", false)