fix(rpc): avoid signing Optimism deposit transactions (#20254)

This commit is contained in:
radik878
2025-12-10 22:46:43 +02:00
committed by GitHub
parent e8dae2ae7d
commit 38331a362e

View File

@@ -90,13 +90,14 @@ impl SignableTxRequest<op_alloy_consensus::OpTxEnvelope>
) -> Result<op_alloy_consensus::OpTxEnvelope, SignTxRequestError> {
let mut tx =
self.build_typed_tx().map_err(|_| SignTxRequestError::InvalidTransactionRequest)?;
let signature = signer.sign_transaction(&mut tx).await?;
// sanity check
// sanity check: deposit transactions must not be signed by the user
if tx.is_deposit() {
return Err(SignTxRequestError::InvalidTransactionRequest);
}
let signature = signer.sign_transaction(&mut tx).await?;
Ok(tx.into_signed(signature).into())
}
}