optimism: set chain-ID of pre-bedrock relayed txs

This commit is contained in:
protolambda 2023-06-07 14:37:36 +02:00
parent a22cadcf9f
commit 5d616c1481
No known key found for this signature in database
GPG Key ID: EC89FDBB2B4C7623
1 changed files with 4 additions and 0 deletions

View File

@ -1473,6 +1473,10 @@ func newRPCTransaction(tx *types.Transaction, blockHash common.Hash, blockNumber
result.Nonce = hexutil.Uint64(*receipt.DepositNonce) result.Nonce = hexutil.Uint64(*receipt.DepositNonce)
} }
case types.LegacyTxType: case types.LegacyTxType:
if v.Sign() == 0 && r.Sign() == 0 && s.Sign() == 0 { // pre-bedrock relayed tx does not have a signature
result.ChainID = (*hexutil.Big)(new(big.Int).Set(config.ChainID))
break
}
// if a legacy transaction has an EIP-155 chain id, include it explicitly // if a legacy transaction has an EIP-155 chain id, include it explicitly
if id := tx.ChainId(); id.Sign() != 0 { if id := tx.ChainId(); id.Sign() != 0 {
result.ChainID = (*hexutil.Big)(id) result.ChainID = (*hexutil.Big)(id)