core/types: add support for BlobTxType receipts (#27470)
Co-authored-by: Felix Lange <fjl@twurst.com>
This commit is contained in:
parent
93ecd77d77
commit
9cf9fae668
@ -194,7 +194,7 @@ func (r *Receipt) decodeTyped(b []byte) error {
|
|||||||
return errShortTypedReceipt
|
return errShortTypedReceipt
|
||||||
}
|
}
|
||||||
switch b[0] {
|
switch b[0] {
|
||||||
case DynamicFeeTxType, AccessListTxType:
|
case DynamicFeeTxType, AccessListTxType, BlobTxType:
|
||||||
var data receiptRLP
|
var data receiptRLP
|
||||||
err := rlp.DecodeBytes(b[1:], &data)
|
err := rlp.DecodeBytes(b[1:], &data)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -296,14 +296,13 @@ func (rs Receipts) Len() int { return len(rs) }
|
|||||||
func (rs Receipts) EncodeIndex(i int, w *bytes.Buffer) {
|
func (rs Receipts) EncodeIndex(i int, w *bytes.Buffer) {
|
||||||
r := rs[i]
|
r := rs[i]
|
||||||
data := &receiptRLP{r.statusEncoding(), r.CumulativeGasUsed, r.Bloom, r.Logs}
|
data := &receiptRLP{r.statusEncoding(), r.CumulativeGasUsed, r.Bloom, r.Logs}
|
||||||
|
if r.Type == LegacyTxType {
|
||||||
|
rlp.Encode(w, data)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
w.WriteByte(r.Type)
|
||||||
switch r.Type {
|
switch r.Type {
|
||||||
case LegacyTxType:
|
case AccessListTxType, DynamicFeeTxType, BlobTxType:
|
||||||
rlp.Encode(w, data)
|
|
||||||
case AccessListTxType:
|
|
||||||
w.WriteByte(AccessListTxType)
|
|
||||||
rlp.Encode(w, data)
|
|
||||||
case DynamicFeeTxType:
|
|
||||||
w.WriteByte(DynamicFeeTxType)
|
|
||||||
rlp.Encode(w, data)
|
rlp.Encode(w, data)
|
||||||
default:
|
default:
|
||||||
// For unsupported types, write nothing. Since this is for
|
// For unsupported types, write nothing. Since this is for
|
||||||
|
Loading…
Reference in New Issue
Block a user