From 5273e55f45ad7807336cb6f2455abd44d939a38b Mon Sep 17 00:00:00 2001 From: maskpp Date: Wed, 14 Feb 2024 22:29:11 +0800 Subject: [PATCH 1/2] enable blob call --- ethclient/ethclient.go | 6 ++++++ interfaces.go | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/ethclient/ethclient.go b/ethclient/ethclient.go index 4c63b776ef9a..50c390270f88 100644 --- a/ethclient/ethclient.go +++ b/ethclient/ethclient.go @@ -665,6 +665,12 @@ func toCallArg(msg ethereum.CallMsg) interface{} { if msg.AccessList != nil { arg["accessList"] = msg.AccessList } + if msg.BlobGasFeeCap != nil { + arg["maxFeePerBlobGas"] = msg.BlobGasFeeCap + } + if msg.BlobHashes != nil { + arg["blobVersionedHashes"] = msg.BlobHashes + } return arg } diff --git a/interfaces.go b/interfaces.go index c6aee295ee56..53e2e3ae169d 100644 --- a/interfaces.go +++ b/interfaces.go @@ -152,6 +152,10 @@ type CallMsg struct { Data []byte // input data, usually an ABI-encoded contract method invocation AccessList types.AccessList // EIP-2930 access list. + + // For BlobTxType + BlobGasFeeCap *big.Int + BlobHashes []common.Hash } // A ContractCaller provides contract calls, essentially transactions that are executed by From 74196d4cc56321df9c041de9cbcba9f596f744c8 Mon Sep 17 00:00:00 2001 From: Felix Lange Date: Wed, 14 Feb 2024 19:09:19 +0100 Subject: [PATCH 2/2] Update ethclient.go --- ethclient/ethclient.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ethclient/ethclient.go b/ethclient/ethclient.go index 50c390270f88..5c3cb79dd65c 100644 --- a/ethclient/ethclient.go +++ b/ethclient/ethclient.go @@ -666,7 +666,7 @@ func toCallArg(msg ethereum.CallMsg) interface{} { arg["accessList"] = msg.AccessList } if msg.BlobGasFeeCap != nil { - arg["maxFeePerBlobGas"] = msg.BlobGasFeeCap + arg["maxFeePerBlobGas"] = (*hexutil.Big)(msg.BlobGasFeeCap) } if msg.BlobHashes != nil { arg["blobVersionedHashes"] = msg.BlobHashes