diff --git a/core/rip7560_abi.go b/core/rip7560_abi.go index 7687dc6926..cc4aaf02f1 100644 --- a/core/rip7560_abi.go +++ b/core/rip7560_abi.go @@ -27,14 +27,14 @@ func abiEncodeValidateTransaction(tx *types.Rip7560AccountAbstractionTx, signing } txAbiEncoding, err := tx.AbiEncode() - validateTransactionData, err := jsonAbi.Pack("validateTransaction", big.NewInt(0), signingHash, txAbiEncoding) + validateTransactionData, err := jsonAbi.Pack("validateTransaction", big.NewInt(Rip7560AbiVersion), signingHash, txAbiEncoding) return validateTransactionData, err } func abiEncodeValidatePaymasterTransaction(tx *types.Rip7560AccountAbstractionTx, signingHash common.Hash) ([]byte, error) { jsonAbi, err := abi.JSON(strings.NewReader(ValidatePaymasterTransactionAbi)) txAbiEncoding, err := tx.AbiEncode() - data, err := jsonAbi.Pack("validatePaymasterTransaction", big.NewInt(0), signingHash, txAbiEncoding) + data, err := jsonAbi.Pack("validatePaymasterTransaction", big.NewInt(Rip7560AbiVersion), signingHash, txAbiEncoding) return data, err } @@ -43,6 +43,7 @@ func abiEncodePostPaymasterTransaction(context []byte) ([]byte, error) { if err != nil { return nil, err } + // TODO: pass actual gas cost parameter here! postOpData, err := jsonAbi.Pack("postPaymasterTransaction", true, big.NewInt(0), context) return postOpData, err } diff --git a/core/rip7560_abi_constants.go b/core/rip7560_abi_constants.go index d4d3f5c02a..1d9bae62f2 100644 --- a/core/rip7560_abi_constants.go +++ b/core/rip7560_abi_constants.go @@ -4,6 +4,7 @@ const AcceptAccountMethodSig = uint64(0x1256ebd1) // acceptAccount(uint256,uin const AcceptPaymasterMethodSig = uint64(0x03be8439) // acceptPaymaster(uint256,uint256,bytes) const SigFailAccountMethodSig = uint64(0x7715fac2) // sigFailAccount(uint256,uint256) const PaymasterMaxContextSize = 65536 +const Rip7560AbiVersion = 0 const ValidateTransactionAbi = ` [