mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-20 10:52:25 +00:00
Revert "core/types: remove duplication in eip2930 signer (#27860)"
This reverts commit dc448e7e2c.
This commit is contained in:
parent
414953c066
commit
f05afac643
1 changed files with 14 additions and 2 deletions
|
|
@ -331,7 +331,11 @@ func (s eip2930Signer) Sender(tx *Transaction) (common.Address, error) {
|
||||||
V, R, S := tx.RawSignatureValues()
|
V, R, S := tx.RawSignatureValues()
|
||||||
switch tx.Type() {
|
switch tx.Type() {
|
||||||
case LegacyTxType:
|
case LegacyTxType:
|
||||||
return s.EIP155Signer.Sender(tx)
|
if !tx.Protected() {
|
||||||
|
return HomesteadSigner{}.Sender(tx)
|
||||||
|
}
|
||||||
|
V = new(big.Int).Sub(V, s.chainIdMul)
|
||||||
|
V.Sub(V, big8)
|
||||||
case AccessListTxType:
|
case AccessListTxType:
|
||||||
// AL txs are defined to use 0 and 1 as their recovery
|
// AL txs are defined to use 0 and 1 as their recovery
|
||||||
// id, add 27 to become equivalent to unprotected Homestead signatures.
|
// id, add 27 to become equivalent to unprotected Homestead signatures.
|
||||||
|
|
@ -368,7 +372,15 @@ func (s eip2930Signer) SignatureValues(tx *Transaction, sig []byte) (R, S, V *bi
|
||||||
func (s eip2930Signer) Hash(tx *Transaction) common.Hash {
|
func (s eip2930Signer) Hash(tx *Transaction) common.Hash {
|
||||||
switch tx.Type() {
|
switch tx.Type() {
|
||||||
case LegacyTxType:
|
case LegacyTxType:
|
||||||
return s.EIP155Signer.Hash(tx)
|
return rlpHash([]interface{}{
|
||||||
|
tx.Nonce(),
|
||||||
|
tx.GasPrice(),
|
||||||
|
tx.Gas(),
|
||||||
|
tx.To(),
|
||||||
|
tx.Value(),
|
||||||
|
tx.Data(),
|
||||||
|
s.chainId, uint(0), uint(0),
|
||||||
|
})
|
||||||
case AccessListTxType:
|
case AccessListTxType:
|
||||||
return prefixedRlpHash(
|
return prefixedRlpHash(
|
||||||
tx.Type(),
|
tx.Type(),
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue