Skip to content

Commit 6b259a7

Browse files
authored
caps/eth.md: change encoding of eth/68 tx announcement (#246)
Due to an implementation flaw in go-ethereum and other clients, we have decided to change the encoding of the `txtypes` list into a byte array.
1 parent 0b3b679 commit 6b259a7

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

caps/eth.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -393,12 +393,15 @@ block.
393393

394394
### NewPooledTransactionHashes (0x08)
395395

396-
`[[txtype₁: P, txtype₂: P, ...], [txsize₁: P, txsize₂: P, ...], [txhash₁: B_32, txhash₂: B_32, ...]]`
396+
`[txtypes: B, [txsize₁: P, txsize₂: P, ...], [txhash₁: B_32, txhash₂: B_32, ...]]`
397397

398398
This message announces one or more transactions that have appeared in the network and
399-
which have not yet been included in a block. Note that the message payload contains three
400-
sub-lists containing the [transaction types], sizes, and hashes of the announced
401-
transactions. All three sub-lists must be of equal length.
399+
which have not yet been included in a block. The message payload describes a list of
400+
of transactions, but note that it is encoded as three separate elements.
401+
402+
The `txtypes` element is a byte array containing the announced [transaction types].
403+
The other two payload elements refer to the sizes and hashes of the announced transactions.
404+
All three payload elements must contain an equal number of items.
402405

403406
The recommended soft limit for this message is 4096 hashes (~150 KiB).
404407

0 commit comments

Comments
 (0)