Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
e171bf74
Commit
e171bf74
authored
Jan 05, 2017
by
Felix Lange
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
core/types: remove redundant SignECDSA wrappers, rename to SignTx
parent
bbc4ea4a
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
58 additions
and
99 deletions
+58
-99
util_test.go
accounts/abi/bind/util_test.go
+1
-1
bench_test.go
core/bench_test.go
+2
-2
blockchain_test.go
core/blockchain_test.go
+15
-15
chain_makers_test.go
core/chain_makers_test.go
+3
-3
tx_pool_test.go
core/tx_pool_test.go
+5
-5
transaction.go
core/types/transaction.go
+0
-9
transaction_signing.go
core/types/transaction_signing.go
+4
-36
transaction_signing_test.go
core/types/transaction_signing_test.go
+4
-4
transaction_test.go
core/types/transaction_test.go
+1
-1
downloader_test.go
eth/downloader/downloader_test.go
+1
-1
fetcher_test.go
eth/fetcher/fetcher_test.go
+1
-1
handler_test.go
eth/handler_test.go
+6
-6
helper_test.go
eth/helper_test.go
+1
-1
helper_test.go
les/helper_test.go
+7
-7
odr_test.go
light/odr_test.go
+6
-6
txpool_test.go
light/txpool_test.go
+1
-1
No files found.
accounts/abi/bind/util_test.go
View file @
e171bf74
...
@@ -60,7 +60,7 @@ func TestWaitDeployed(t *testing.T) {
...
@@ -60,7 +60,7 @@ func TestWaitDeployed(t *testing.T) {
// Create the transaction.
// Create the transaction.
tx
:=
types
.
NewContractCreation
(
0
,
big
.
NewInt
(
0
),
test
.
gas
,
big
.
NewInt
(
1
),
common
.
FromHex
(
test
.
code
))
tx
:=
types
.
NewContractCreation
(
0
,
big
.
NewInt
(
0
),
test
.
gas
,
big
.
NewInt
(
1
),
common
.
FromHex
(
test
.
code
))
tx
,
_
=
t
x
.
SignECDSA
(
types
.
HomesteadSigner
{},
testKey
)
tx
,
_
=
t
ypes
.
SignTx
(
tx
,
types
.
HomesteadSigner
{},
testKey
)
// Wait for it to get mined in the background.
// Wait for it to get mined in the background.
var
(
var
(
...
...
core/bench_test.go
View file @
e171bf74
...
@@ -83,7 +83,7 @@ func genValueTx(nbytes int) func(int, *BlockGen) {
...
@@ -83,7 +83,7 @@ func genValueTx(nbytes int) func(int, *BlockGen) {
toaddr
:=
common
.
Address
{}
toaddr
:=
common
.
Address
{}
data
:=
make
([]
byte
,
nbytes
)
data
:=
make
([]
byte
,
nbytes
)
gas
:=
IntrinsicGas
(
data
,
false
,
false
)
gas
:=
IntrinsicGas
(
data
,
false
,
false
)
tx
,
_
:=
types
.
NewTransaction
(
gen
.
TxNonce
(
benchRootAddr
),
toaddr
,
big
.
NewInt
(
1
),
gas
,
nil
,
data
)
.
SignECDSA
(
types
.
HomesteadSigner
{},
benchRootKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
benchRootAddr
),
toaddr
,
big
.
NewInt
(
1
),
gas
,
nil
,
data
),
types
.
HomesteadSigner
{},
benchRootKey
)
gen
.
AddTx
(
tx
)
gen
.
AddTx
(
tx
)
}
}
}
}
...
@@ -123,7 +123,7 @@ func genTxRing(naccounts int) func(int, *BlockGen) {
...
@@ -123,7 +123,7 @@ func genTxRing(naccounts int) func(int, *BlockGen) {
nil
,
nil
,
nil
,
nil
,
)
)
tx
,
_
=
t
x
.
SignECDSA
(
types
.
HomesteadSigner
{},
ringKeys
[
from
])
tx
,
_
=
t
ypes
.
SignTx
(
tx
,
types
.
HomesteadSigner
{},
ringKeys
[
from
])
gen
.
AddTx
(
tx
)
gen
.
AddTx
(
tx
)
from
=
to
from
=
to
}
}
...
...
core/blockchain_test.go
View file @
e171bf74
...
@@ -719,7 +719,7 @@ func TestFastVsFullChains(t *testing.T) {
...
@@ -719,7 +719,7 @@ func TestFastVsFullChains(t *testing.T) {
// If the block number is multiple of 3, send a few bonus transactions to the miner
// If the block number is multiple of 3, send a few bonus transactions to the miner
if
i
%
3
==
2
{
if
i
%
3
==
2
{
for
j
:=
0
;
j
<
i
%
4
+
1
;
j
++
{
for
j
:=
0
;
j
<
i
%
4
+
1
;
j
++
{
tx
,
err
:=
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
common
.
Address
{
0x00
},
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key
)
tx
,
err
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
common
.
Address
{
0x00
},
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key
)
if
err
!=
nil
{
if
err
!=
nil
{
panic
(
err
)
panic
(
err
)
}
}
...
@@ -883,8 +883,8 @@ func TestChainTxReorgs(t *testing.T) {
...
@@ -883,8 +883,8 @@ func TestChainTxReorgs(t *testing.T) {
// Create two transactions shared between the chains:
// Create two transactions shared between the chains:
// - postponed: transaction included at a later block in the forked chain
// - postponed: transaction included at a later block in the forked chain
// - swapped: transaction included at the same block number in the forked chain
// - swapped: transaction included at the same block number in the forked chain
postponed
,
_
:=
types
.
NewTransaction
(
0
,
addr1
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key1
)
postponed
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
0
,
addr1
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key1
)
swapped
,
_
:=
types
.
NewTransaction
(
1
,
addr1
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key1
)
swapped
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
1
,
addr1
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key1
)
// Create two transactions that will be dropped by the forked chain:
// Create two transactions that will be dropped by the forked chain:
// - pastDrop: transaction dropped retroactively from a past block
// - pastDrop: transaction dropped retroactively from a past block
...
@@ -900,13 +900,13 @@ func TestChainTxReorgs(t *testing.T) {
...
@@ -900,13 +900,13 @@ func TestChainTxReorgs(t *testing.T) {
chain
,
_
:=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
3
,
func
(
i
int
,
gen
*
BlockGen
)
{
chain
,
_
:=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
3
,
func
(
i
int
,
gen
*
BlockGen
)
{
switch
i
{
switch
i
{
case
0
:
case
0
:
pastDrop
,
_
=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr2
),
addr2
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key2
)
pastDrop
,
_
=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr2
),
addr2
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key2
)
gen
.
AddTx
(
pastDrop
)
// This transaction will be dropped in the fork from below the split point
gen
.
AddTx
(
pastDrop
)
// This transaction will be dropped in the fork from below the split point
gen
.
AddTx
(
postponed
)
// This transaction will be postponed till block #3 in the fork
gen
.
AddTx
(
postponed
)
// This transaction will be postponed till block #3 in the fork
case
2
:
case
2
:
freshDrop
,
_
=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr2
),
addr2
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key2
)
freshDrop
,
_
=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr2
),
addr2
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key2
)
gen
.
AddTx
(
freshDrop
)
// This transaction will be dropped in the fork from exactly at the split point
gen
.
AddTx
(
freshDrop
)
// This transaction will be dropped in the fork from exactly at the split point
gen
.
AddTx
(
swapped
)
// This transaction will be swapped out at the exact height
gen
.
AddTx
(
swapped
)
// This transaction will be swapped out at the exact height
...
@@ -925,18 +925,18 @@ func TestChainTxReorgs(t *testing.T) {
...
@@ -925,18 +925,18 @@ func TestChainTxReorgs(t *testing.T) {
chain
,
_
=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
5
,
func
(
i
int
,
gen
*
BlockGen
)
{
chain
,
_
=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
5
,
func
(
i
int
,
gen
*
BlockGen
)
{
switch
i
{
switch
i
{
case
0
:
case
0
:
pastAdd
,
_
=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr3
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key3
)
pastAdd
,
_
=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr3
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key3
)
gen
.
AddTx
(
pastAdd
)
// This transaction needs to be injected during reorg
gen
.
AddTx
(
pastAdd
)
// This transaction needs to be injected during reorg
case
2
:
case
2
:
gen
.
AddTx
(
postponed
)
// This transaction was postponed from block #1 in the original chain
gen
.
AddTx
(
postponed
)
// This transaction was postponed from block #1 in the original chain
gen
.
AddTx
(
swapped
)
// This transaction was swapped from the exact current spot in the original chain
gen
.
AddTx
(
swapped
)
// This transaction was swapped from the exact current spot in the original chain
freshAdd
,
_
=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr3
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key3
)
freshAdd
,
_
=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr3
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key3
)
gen
.
AddTx
(
freshAdd
)
// This transaction will be added exactly at reorg time
gen
.
AddTx
(
freshAdd
)
// This transaction will be added exactly at reorg time
case
3
:
case
3
:
futureAdd
,
_
=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr3
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key3
)
futureAdd
,
_
=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr3
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key3
)
gen
.
AddTx
(
futureAdd
)
// This transaction will be added after a full reorg
gen
.
AddTx
(
futureAdd
)
// This transaction will be added after a full reorg
}
}
})
})
...
@@ -995,7 +995,7 @@ func TestLogReorgs(t *testing.T) {
...
@@ -995,7 +995,7 @@ func TestLogReorgs(t *testing.T) {
subs
:=
evmux
.
Subscribe
(
RemovedLogsEvent
{})
subs
:=
evmux
.
Subscribe
(
RemovedLogsEvent
{})
chain
,
_
:=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
2
,
func
(
i
int
,
gen
*
BlockGen
)
{
chain
,
_
:=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
2
,
func
(
i
int
,
gen
*
BlockGen
)
{
if
i
==
1
{
if
i
==
1
{
tx
,
err
:=
types
.
NewContractCreation
(
gen
.
TxNonce
(
addr1
),
new
(
big
.
Int
),
big
.
NewInt
(
1000000
),
new
(
big
.
Int
),
code
)
.
SignECDSA
(
signer
,
key1
)
tx
,
err
:=
types
.
SignTx
(
types
.
NewContractCreation
(
gen
.
TxNonce
(
addr1
),
new
(
big
.
Int
),
big
.
NewInt
(
1000000
),
new
(
big
.
Int
),
code
),
signer
,
key1
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatalf
(
"failed to create tx: %v"
,
err
)
t
.
Fatalf
(
"failed to create tx: %v"
,
err
)
}
}
...
@@ -1035,7 +1035,7 @@ func TestReorgSideEvent(t *testing.T) {
...
@@ -1035,7 +1035,7 @@ func TestReorgSideEvent(t *testing.T) {
}
}
replacementBlocks
,
_
:=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
4
,
func
(
i
int
,
gen
*
BlockGen
)
{
replacementBlocks
,
_
:=
GenerateChain
(
params
.
TestChainConfig
,
genesis
,
db
,
4
,
func
(
i
int
,
gen
*
BlockGen
)
{
tx
,
err
:=
types
.
NewContractCreation
(
gen
.
TxNonce
(
addr1
),
new
(
big
.
Int
),
big
.
NewInt
(
1000000
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key1
)
tx
,
err
:=
types
.
SignTx
(
types
.
NewContractCreation
(
gen
.
TxNonce
(
addr1
),
new
(
big
.
Int
),
big
.
NewInt
(
1000000
),
new
(
big
.
Int
),
nil
),
signer
,
key1
)
if
i
==
2
{
if
i
==
2
{
gen
.
OffsetTime
(
-
1
)
gen
.
OffsetTime
(
-
1
)
}
}
...
@@ -1152,7 +1152,7 @@ func TestEIP155Transition(t *testing.T) {
...
@@ -1152,7 +1152,7 @@ func TestEIP155Transition(t *testing.T) {
tx
*
types
.
Transaction
tx
*
types
.
Transaction
err
error
err
error
basicTx
=
func
(
signer
types
.
Signer
)
(
*
types
.
Transaction
,
error
)
{
basicTx
=
func
(
signer
types
.
Signer
)
(
*
types
.
Transaction
,
error
)
{
return
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
common
.
Address
{},
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key
)
return
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
common
.
Address
{},
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
),
signer
,
key
)
}
}
)
)
switch
i
{
switch
i
{
...
@@ -1215,7 +1215,7 @@ func TestEIP155Transition(t *testing.T) {
...
@@ -1215,7 +1215,7 @@ func TestEIP155Transition(t *testing.T) {
tx
*
types
.
Transaction
tx
*
types
.
Transaction
err
error
err
error
basicTx
=
func
(
signer
types
.
Signer
)
(
*
types
.
Transaction
,
error
)
{
basicTx
=
func
(
signer
types
.
Signer
)
(
*
types
.
Transaction
,
error
)
{
return
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
common
.
Address
{},
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key
)
return
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
common
.
Address
{},
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
),
signer
,
key
)
}
}
)
)
switch
i
{
switch
i
{
...
@@ -1260,11 +1260,11 @@ func TestEIP161AccountRemoval(t *testing.T) {
...
@@ -1260,11 +1260,11 @@ func TestEIP161AccountRemoval(t *testing.T) {
)
)
switch
i
{
switch
i
{
case
0
:
case
0
:
tx
,
err
=
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
theAddr
,
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx
,
err
=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
theAddr
,
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
),
signer
,
key
)
case
1
:
case
1
:
tx
,
err
=
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
theAddr
,
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx
,
err
=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
theAddr
,
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
),
signer
,
key
)
case
2
:
case
2
:
tx
,
err
=
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
theAddr
,
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx
,
err
=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
address
),
theAddr
,
new
(
big
.
Int
),
big
.
NewInt
(
21000
),
new
(
big
.
Int
),
nil
),
signer
,
key
)
}
}
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
...
...
core/chain_makers_test.go
View file @
e171bf74
...
@@ -55,13 +55,13 @@ func ExampleGenerateChain() {
...
@@ -55,13 +55,13 @@ func ExampleGenerateChain() {
switch
i
{
switch
i
{
case
0
:
case
0
:
// In block 1, addr1 sends addr2 some ether.
// In block 1, addr1 sends addr2 some ether.
tx
,
_
:=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr1
),
addr2
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key1
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr1
),
addr2
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key1
)
gen
.
AddTx
(
tx
)
gen
.
AddTx
(
tx
)
case
1
:
case
1
:
// In block 2, addr1 sends some more ether to addr2.
// In block 2, addr1 sends some more ether to addr2.
// addr2 passes it on to addr3.
// addr2 passes it on to addr3.
tx1
,
_
:=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr1
),
addr2
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key1
)
tx1
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr1
),
addr2
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key1
)
tx2
,
_
:=
types
.
NewTransaction
(
gen
.
TxNonce
(
addr2
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
key2
)
tx2
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
gen
.
TxNonce
(
addr2
),
addr3
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
key2
)
gen
.
AddTx
(
tx1
)
gen
.
AddTx
(
tx1
)
gen
.
AddTx
(
tx2
)
gen
.
AddTx
(
tx2
)
case
2
:
case
2
:
...
...
core/tx_pool_test.go
View file @
e171bf74
...
@@ -32,7 +32,7 @@ import (
...
@@ -32,7 +32,7 @@ import (
)
)
func
transaction
(
nonce
uint64
,
gaslimit
*
big
.
Int
,
key
*
ecdsa
.
PrivateKey
)
*
types
.
Transaction
{
func
transaction
(
nonce
uint64
,
gaslimit
*
big
.
Int
,
key
*
ecdsa
.
PrivateKey
)
*
types
.
Transaction
{
tx
,
_
:=
types
.
NewTransaction
(
nonce
,
common
.
Address
{},
big
.
NewInt
(
100
),
gaslimit
,
big
.
NewInt
(
1
),
nil
)
.
SignECDSA
(
types
.
HomesteadSigner
{},
key
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
nonce
,
common
.
Address
{},
big
.
NewInt
(
100
),
gaslimit
,
big
.
NewInt
(
1
),
nil
),
types
.
HomesteadSigner
{},
key
)
return
tx
return
tx
}
}
...
@@ -238,7 +238,7 @@ func TestRemoveTx(t *testing.T) {
...
@@ -238,7 +238,7 @@ func TestRemoveTx(t *testing.T) {
func
TestNegativeValue
(
t
*
testing
.
T
)
{
func
TestNegativeValue
(
t
*
testing
.
T
)
{
pool
,
key
:=
setupTxPool
()
pool
,
key
:=
setupTxPool
()
tx
,
_
:=
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
-
1
),
big
.
NewInt
(
100
),
big
.
NewInt
(
1
),
nil
)
.
SignECDSA
(
types
.
HomesteadSigner
{},
key
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
-
1
),
big
.
NewInt
(
100
),
big
.
NewInt
(
1
),
nil
),
types
.
HomesteadSigner
{},
key
)
from
,
_
:=
deriveSender
(
tx
)
from
,
_
:=
deriveSender
(
tx
)
currentState
,
_
:=
pool
.
currentState
()
currentState
,
_
:=
pool
.
currentState
()
currentState
.
AddBalance
(
from
,
big
.
NewInt
(
1
))
currentState
.
AddBalance
(
from
,
big
.
NewInt
(
1
))
...
@@ -287,9 +287,9 @@ func TestTransactionDoubleNonce(t *testing.T) {
...
@@ -287,9 +287,9 @@ func TestTransactionDoubleNonce(t *testing.T) {
resetState
()
resetState
()
signer
:=
types
.
HomesteadSigner
{}
signer
:=
types
.
HomesteadSigner
{}
tx1
,
_
:=
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
100000
),
big
.
NewInt
(
1
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx1
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
100000
),
big
.
NewInt
(
1
),
nil
),
signer
,
key
)
tx2
,
_
:=
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
1000000
),
big
.
NewInt
(
2
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx2
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
1000000
),
big
.
NewInt
(
2
),
nil
),
signer
,
key
)
tx3
,
_
:=
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
1000000
),
big
.
NewInt
(
1
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx3
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
0
,
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
1000000
),
big
.
NewInt
(
1
),
nil
),
signer
,
key
)
// Add the first two transaction, ensure higher priced stays only
// Add the first two transaction, ensure higher priced stays only
if
err
:=
pool
.
add
(
tx1
);
err
!=
nil
{
if
err
:=
pool
.
add
(
tx1
);
err
!=
nil
{
...
...
core/types/transaction.go
View file @
e171bf74
...
@@ -18,7 +18,6 @@ package types
...
@@ -18,7 +18,6 @@ package types
import
(
import
(
"container/heap"
"container/heap"
"crypto/ecdsa"
"encoding/json"
"encoding/json"
"errors"
"errors"
"fmt"
"fmt"
...
@@ -293,14 +292,6 @@ func (tx *Transaction) AsMessage(s Signer) (Message, error) {
...
@@ -293,14 +292,6 @@ func (tx *Transaction) AsMessage(s Signer) (Message, error) {
return
msg
,
err
return
msg
,
err
}
}
// SignECDSA signs the transaction using the given signer and private key
//
// XXX This only makes for a nice API: NewTx(...).SignECDSA(signer, prv). Should
// we keep this?
func
(
tx
*
Transaction
)
SignECDSA
(
signer
Signer
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
{
return
signer
.
SignECDSA
(
tx
,
prv
)
}
// WithSignature returns a new transaction with the given signature.
// WithSignature returns a new transaction with the given signature.
// This signature needs to be formatted as described in the yellow paper (v+27).
// This signature needs to be formatted as described in the yellow paper (v+27).
func
(
tx
*
Transaction
)
WithSignature
(
signer
Signer
,
sig
[]
byte
)
(
*
Transaction
,
error
)
{
func
(
tx
*
Transaction
)
WithSignature
(
signer
Signer
,
sig
[]
byte
)
(
*
Transaction
,
error
)
{
...
...
core/types/transaction_signing.go
View file @
e171bf74
...
@@ -50,8 +50,8 @@ func MakeSigner(config *params.ChainConfig, blockNumber *big.Int) Signer {
...
@@ -50,8 +50,8 @@ func MakeSigner(config *params.ChainConfig, blockNumber *big.Int) Signer {
return
signer
return
signer
}
}
// Sign
ECDSA
signs the transaction using the given signer and private key
// Sign
Tx
signs the transaction using the given signer and private key
func
Sign
ECDSA
(
s
Signer
,
tx
*
Transaction
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
{
func
Sign
Tx
(
tx
*
Transaction
,
s
Signer
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
{
h
:=
s
.
Hash
(
tx
)
h
:=
s
.
Hash
(
tx
)
sig
,
err
:=
crypto
.
Sign
(
h
[
:
],
prv
)
sig
,
err
:=
crypto
.
Sign
(
h
[
:
],
prv
)
if
err
!=
nil
{
if
err
!=
nil
{
...
@@ -96,9 +96,8 @@ type Signer interface {
...
@@ -96,9 +96,8 @@ type Signer interface {
Hash
(
tx
*
Transaction
)
common
.
Hash
Hash
(
tx
*
Transaction
)
common
.
Hash
// PubilcKey returns the public key derived from the signature
// PubilcKey returns the public key derived from the signature
PublicKey
(
tx
*
Transaction
)
([]
byte
,
error
)
PublicKey
(
tx
*
Transaction
)
([]
byte
,
error
)
// SignECDSA signs the transaction with the given and returns a copy of the tx
// WithSignature returns a copy of the transaction with the given signature.
SignECDSA
(
tx
*
Transaction
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
// The signature must be encoded in [R || S || V] format where V is 0 or 1.
// WithSignature returns a copy of the transaction with the given signature
WithSignature
(
tx
*
Transaction
,
sig
[]
byte
)
(
*
Transaction
,
error
)
WithSignature
(
tx
*
Transaction
,
sig
[]
byte
)
(
*
Transaction
,
error
)
// Checks for equality on the signers
// Checks for equality on the signers
Equal
(
Signer
)
bool
Equal
(
Signer
)
bool
...
@@ -124,10 +123,6 @@ func (s EIP155Signer) Equal(s2 Signer) bool {
...
@@ -124,10 +123,6 @@ func (s EIP155Signer) Equal(s2 Signer) bool {
return
ok
&&
eip155
.
chainId
.
Cmp
(
s
.
chainId
)
==
0
return
ok
&&
eip155
.
chainId
.
Cmp
(
s
.
chainId
)
==
0
}
}
func
(
s
EIP155Signer
)
SignECDSA
(
tx
*
Transaction
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
{
return
SignECDSA
(
s
,
tx
,
prv
)
}
func
(
s
EIP155Signer
)
PublicKey
(
tx
*
Transaction
)
([]
byte
,
error
)
{
func
(
s
EIP155Signer
)
PublicKey
(
tx
*
Transaction
)
([]
byte
,
error
)
{
// if the transaction is not protected fall back to homestead signer
// if the transaction is not protected fall back to homestead signer
if
!
tx
.
Protected
()
{
if
!
tx
.
Protected
()
{
...
@@ -193,15 +188,6 @@ func (s EIP155Signer) Hash(tx *Transaction) common.Hash {
...
@@ -193,15 +188,6 @@ func (s EIP155Signer) Hash(tx *Transaction) common.Hash {
})
})
}
}
func
(
s
EIP155Signer
)
SigECDSA
(
tx
*
Transaction
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
{
h
:=
s
.
Hash
(
tx
)
sig
,
err
:=
crypto
.
Sign
(
h
[
:
],
prv
)
if
err
!=
nil
{
return
nil
,
err
}
return
s
.
WithSignature
(
tx
,
sig
)
}
// HomesteadTransaction implements TransactionInterface using the
// HomesteadTransaction implements TransactionInterface using the
// homestead rules.
// homestead rules.
type
HomesteadSigner
struct
{
FrontierSigner
}
type
HomesteadSigner
struct
{
FrontierSigner
}
...
@@ -224,15 +210,6 @@ func (hs HomesteadSigner) WithSignature(tx *Transaction, sig []byte) (*Transacti
...
@@ -224,15 +210,6 @@ func (hs HomesteadSigner) WithSignature(tx *Transaction, sig []byte) (*Transacti
return
cpy
,
nil
return
cpy
,
nil
}
}
func
(
hs
HomesteadSigner
)
SignECDSA
(
tx
*
Transaction
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
{
h
:=
hs
.
Hash
(
tx
)
sig
,
err
:=
crypto
.
Sign
(
h
[
:
],
prv
)
if
err
!=
nil
{
return
nil
,
err
}
return
hs
.
WithSignature
(
tx
,
sig
)
}
func
(
hs
HomesteadSigner
)
PublicKey
(
tx
*
Transaction
)
([]
byte
,
error
)
{
func
(
hs
HomesteadSigner
)
PublicKey
(
tx
*
Transaction
)
([]
byte
,
error
)
{
if
tx
.
data
.
V
.
BitLen
()
>
8
{
if
tx
.
data
.
V
.
BitLen
()
>
8
{
return
nil
,
ErrInvalidSig
return
nil
,
ErrInvalidSig
...
@@ -280,15 +257,6 @@ func (fs FrontierSigner) WithSignature(tx *Transaction, sig []byte) (*Transactio
...
@@ -280,15 +257,6 @@ func (fs FrontierSigner) WithSignature(tx *Transaction, sig []byte) (*Transactio
return
cpy
,
nil
return
cpy
,
nil
}
}
func
(
fs
FrontierSigner
)
SignECDSA
(
tx
*
Transaction
,
prv
*
ecdsa
.
PrivateKey
)
(
*
Transaction
,
error
)
{
h
:=
fs
.
Hash
(
tx
)
sig
,
err
:=
crypto
.
Sign
(
h
[
:
],
prv
)
if
err
!=
nil
{
return
nil
,
err
}
return
fs
.
WithSignature
(
tx
,
sig
)
}
// Hash returns the hash to be sned by the sender.
// Hash returns the hash to be sned by the sender.
// It does not uniquely identify the transaction.
// It does not uniquely identify the transaction.
func
(
fs
FrontierSigner
)
Hash
(
tx
*
Transaction
)
common
.
Hash
{
func
(
fs
FrontierSigner
)
Hash
(
tx
*
Transaction
)
common
.
Hash
{
...
...
core/types/transaction_signing_test.go
View file @
e171bf74
...
@@ -30,7 +30,7 @@ func TestEIP155Signing(t *testing.T) {
...
@@ -30,7 +30,7 @@ func TestEIP155Signing(t *testing.T) {
addr
:=
crypto
.
PubkeyToAddress
(
key
.
PublicKey
)
addr
:=
crypto
.
PubkeyToAddress
(
key
.
PublicKey
)
signer
:=
NewEIP155Signer
(
big
.
NewInt
(
18
))
signer
:=
NewEIP155Signer
(
big
.
NewInt
(
18
))
tx
,
err
:=
NewTransaction
(
0
,
addr
,
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx
,
err
:=
SignTx
(
NewTransaction
(
0
,
addr
,
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
),
signer
,
key
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
}
}
...
@@ -49,7 +49,7 @@ func TestEIP155ChainId(t *testing.T) {
...
@@ -49,7 +49,7 @@ func TestEIP155ChainId(t *testing.T) {
addr
:=
crypto
.
PubkeyToAddress
(
key
.
PublicKey
)
addr
:=
crypto
.
PubkeyToAddress
(
key
.
PublicKey
)
signer
:=
NewEIP155Signer
(
big
.
NewInt
(
18
))
signer
:=
NewEIP155Signer
(
big
.
NewInt
(
18
))
tx
,
err
:=
NewTransaction
(
0
,
addr
,
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
)
.
SignECDSA
(
signer
,
key
)
tx
,
err
:=
SignTx
(
NewTransaction
(
0
,
addr
,
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
),
signer
,
key
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
}
}
...
@@ -62,7 +62,7 @@ func TestEIP155ChainId(t *testing.T) {
...
@@ -62,7 +62,7 @@ func TestEIP155ChainId(t *testing.T) {
}
}
tx
=
NewTransaction
(
0
,
addr
,
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
)
tx
=
NewTransaction
(
0
,
addr
,
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
)
tx
,
err
=
tx
.
SignECDSA
(
HomesteadSigner
{},
key
)
tx
,
err
=
SignTx
(
tx
,
HomesteadSigner
{},
key
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
}
}
...
@@ -121,7 +121,7 @@ func TestChainId(t *testing.T) {
...
@@ -121,7 +121,7 @@ func TestChainId(t *testing.T) {
tx
:=
NewTransaction
(
0
,
common
.
Address
{},
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
)
tx
:=
NewTransaction
(
0
,
common
.
Address
{},
new
(
big
.
Int
),
new
(
big
.
Int
),
new
(
big
.
Int
),
nil
)
var
err
error
var
err
error
tx
,
err
=
tx
.
SignECDSA
(
NewEIP155Signer
(
big
.
NewInt
(
1
)),
key
)
tx
,
err
=
SignTx
(
tx
,
NewEIP155Signer
(
big
.
NewInt
(
1
)),
key
)
if
err
!=
nil
{
if
err
!=
nil
{
t
.
Fatal
(
err
)
t
.
Fatal
(
err
)
}
}
...
...
core/types/transaction_test.go
View file @
e171bf74
...
@@ -138,7 +138,7 @@ func TestTransactionPriceNonceSort(t *testing.T) {
...
@@ -138,7 +138,7 @@ func TestTransactionPriceNonceSort(t *testing.T) {
for
start
,
key
:=
range
keys
{
for
start
,
key
:=
range
keys
{
addr
:=
crypto
.
PubkeyToAddress
(
key
.
PublicKey
)
addr
:=
crypto
.
PubkeyToAddress
(
key
.
PublicKey
)
for
i
:=
0
;
i
<
25
;
i
++
{
for
i
:=
0
;
i
<
25
;
i
++
{
tx
,
_
:=
NewTransaction
(
uint64
(
start
+
i
),
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
100
),
big
.
NewInt
(
int64
(
start
+
i
)),
nil
)
.
SignECDSA
(
signer
,
key
)
tx
,
_
:=
SignTx
(
NewTransaction
(
uint64
(
start
+
i
),
common
.
Address
{},
big
.
NewInt
(
100
),
big
.
NewInt
(
100
),
big
.
NewInt
(
int64
(
start
+
i
)),
nil
),
signer
,
key
)
groups
[
addr
]
=
append
(
groups
[
addr
],
tx
)
groups
[
addr
]
=
append
(
groups
[
addr
],
tx
)
}
}
}
}
...
...
eth/downloader/downloader_test.go
View file @
e171bf74
...
@@ -119,7 +119,7 @@ func (dl *downloadTester) makeChain(n int, seed byte, parent *types.Block, paren
...
@@ -119,7 +119,7 @@ func (dl *downloadTester) makeChain(n int, seed byte, parent *types.Block, paren
// If the block number is multiple of 3, send a bonus transaction to the miner
// If the block number is multiple of 3, send a bonus transaction to the miner
if
parent
==
dl
.
genesis
&&
i
%
3
==
0
{
if
parent
==
dl
.
genesis
&&
i
%
3
==
0
{
signer
:=
types
.
MakeSigner
(
params
.
TestChainConfig
,
block
.
Number
())
signer
:=
types
.
MakeSigner
(
params
.
TestChainConfig
,
block
.
Number
())
tx
,
err
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testAddress
),
common
.
Address
{
seed
},
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testKey
)
tx
,
err
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testAddress
),
common
.
Address
{
seed
},
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testKey
)
if
err
!=
nil
{
if
err
!=
nil
{
panic
(
err
)
panic
(
err
)
}
}
...
...
eth/fetcher/fetcher_test.go
View file @
e171bf74
...
@@ -51,7 +51,7 @@ func makeChain(n int, seed byte, parent *types.Block) ([]common.Hash, map[common
...
@@ -51,7 +51,7 @@ func makeChain(n int, seed byte, parent *types.Block) ([]common.Hash, map[common
// If the block number is multiple of 3, send a bonus transaction to the miner
// If the block number is multiple of 3, send a bonus transaction to the miner
if
parent
==
genesis
&&
i
%
3
==
0
{
if
parent
==
genesis
&&
i
%
3
==
0
{
signer
:=
types
.
MakeSigner
(
params
.
TestChainConfig
,
block
.
Number
())
signer
:=
types
.
MakeSigner
(
params
.
TestChainConfig
,
block
.
Number
())
tx
,
err
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testAddress
),
common
.
Address
{
seed
},
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testKey
)
tx
,
err
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testAddress
),
common
.
Address
{
seed
},
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testKey
)
if
err
!=
nil
{
if
err
!=
nil
{
panic
(
err
)
panic
(
err
)
}
}
...
...
eth/handler_test.go
View file @
e171bf74
...
@@ -311,13 +311,13 @@ func testGetNodeData(t *testing.T, protocol int) {
...
@@ -311,13 +311,13 @@ func testGetNodeData(t *testing.T, protocol int) {
switch
i
{
switch
i
{
case
0
:
case
0
:
// In block 1, the test bank sends account #1 some ether.
// In block 1, the test bank sends account #1 some ether.
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
case
1
:
case
1
:
// In block 2, the test bank sends some more ether to account #1.
// In block 2, the test bank sends some more ether to account #1.
// acc1Addr passes it on to account #2.
// acc1Addr passes it on to account #2.
tx1
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx1
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
tx2
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
acc1Addr
),
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
acc1Key
)
tx2
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
acc1Addr
),
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
acc1Key
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx2
)
block
.
AddTx
(
tx2
)
case
2
:
case
2
:
...
@@ -403,13 +403,13 @@ func testGetReceipt(t *testing.T, protocol int) {
...
@@ -403,13 +403,13 @@ func testGetReceipt(t *testing.T, protocol int) {
switch
i
{
switch
i
{
case
0
:
case
0
:
// In block 1, the test bank sends account #1 some ether.
// In block 1, the test bank sends account #1 some ether.
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
case
1
:
case
1
:
// In block 2, the test bank sends some more ether to account #1.
// In block 2, the test bank sends some more ether to account #1.
// acc1Addr passes it on to account #2.
// acc1Addr passes it on to account #2.
tx1
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx1
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBank
.
Address
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
tx2
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
acc1Addr
),
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
acc1Key
)
tx2
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
acc1Addr
),
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
acc1Key
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx2
)
block
.
AddTx
(
tx2
)
case
2
:
case
2
:
...
...
eth/helper_test.go
View file @
e171bf74
...
@@ -124,7 +124,7 @@ func (p *testTxPool) Pending() (map[common.Address]types.Transactions, error) {
...
@@ -124,7 +124,7 @@ func (p *testTxPool) Pending() (map[common.Address]types.Transactions, error) {
// newTestTransaction create a new dummy transaction.
// newTestTransaction create a new dummy transaction.
func
newTestTransaction
(
from
*
ecdsa
.
PrivateKey
,
nonce
uint64
,
datasize
int
)
*
types
.
Transaction
{
func
newTestTransaction
(
from
*
ecdsa
.
PrivateKey
,
nonce
uint64
,
datasize
int
)
*
types
.
Transaction
{
tx
:=
types
.
NewTransaction
(
nonce
,
common
.
Address
{},
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
big
.
NewInt
(
0
),
make
([]
byte
,
datasize
))
tx
:=
types
.
NewTransaction
(
nonce
,
common
.
Address
{},
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
big
.
NewInt
(
0
),
make
([]
byte
,
datasize
))
tx
,
_
=
t
x
.
SignECDSA
(
types
.
HomesteadSigner
{},
from
)
tx
,
_
=
t
ypes
.
SignTx
(
tx
,
types
.
HomesteadSigner
{},
from
)
return
tx
return
tx
}
}
...
...
les/helper_test.go
View file @
e171bf74
...
@@ -79,17 +79,17 @@ func testChainGen(i int, block *core.BlockGen) {
...
@@ -79,17 +79,17 @@ func testChainGen(i int, block *core.BlockGen) {
switch
i
{
switch
i
{
case
0
:
case
0
:
// In block 1, the test bank sends account #1 some ether.
// In block 1, the test bank sends account #1 some ether.
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
case
1
:
case
1
:
// In block 2, the test bank sends some more ether to account #1.
// In block 2, the test bank sends some more ether to account #1.
// acc1Addr passes it on to account #2.
// acc1Addr passes it on to account #2.
// acc1Addr creates a test contract.
// acc1Addr creates a test contract.
tx1
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx1
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
nonce
:=
block
.
TxNonce
(
acc1Addr
)
nonce
:=
block
.
TxNonce
(
acc1Addr
)
tx2
,
_
:=
types
.
NewTransaction
(
nonce
,
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
acc1Key
)
tx2
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
nonce
,
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
acc1Key
)
nonce
++
nonce
++
tx3
,
_
:=
types
.
NewContractCreation
(
nonce
,
big
.
NewInt
(
0
),
big
.
NewInt
(
200000
),
big
.
NewInt
(
0
),
testContractCode
)
.
SignECDSA
(
signer
,
acc1Key
)
tx3
,
_
:=
types
.
SignTx
(
types
.
NewContractCreation
(
nonce
,
big
.
NewInt
(
0
),
big
.
NewInt
(
200000
),
big
.
NewInt
(
0
),
testContractCode
),
signer
,
acc1Key
)
testContractAddr
=
crypto
.
CreateAddress
(
acc1Addr
,
nonce
)
testContractAddr
=
crypto
.
CreateAddress
(
acc1Addr
,
nonce
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx2
)
block
.
AddTx
(
tx2
)
...
@@ -99,7 +99,7 @@ func testChainGen(i int, block *core.BlockGen) {
...
@@ -99,7 +99,7 @@ func testChainGen(i int, block *core.BlockGen) {
block
.
SetCoinbase
(
acc2Addr
)
block
.
SetCoinbase
(
acc2Addr
)
block
.
SetExtra
([]
byte
(
"yeehaw"
))
block
.
SetExtra
([]
byte
(
"yeehaw"
))
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001"
)
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001"
)
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
case
3
:
case
3
:
// Block 4 includes blocks 2 and 3 as uncle headers (with modified extra data).
// Block 4 includes blocks 2 and 3 as uncle headers (with modified extra data).
...
@@ -110,7 +110,7 @@ func testChainGen(i int, block *core.BlockGen) {
...
@@ -110,7 +110,7 @@ func testChainGen(i int, block *core.BlockGen) {
b3
.
Extra
=
[]
byte
(
"foo"
)
b3
.
Extra
=
[]
byte
(
"foo"
)
block
.
AddUncle
(
b3
)
block
.
AddUncle
(
b3
)
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002"
)
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002"
)
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
}
}
}
}
...
@@ -217,7 +217,7 @@ func (p *testTxPool) GetTransactions() types.Transactions {
...
@@ -217,7 +217,7 @@ func (p *testTxPool) GetTransactions() types.Transactions {
// newTestTransaction create a new dummy transaction.
// newTestTransaction create a new dummy transaction.
func
newTestTransaction
(
from
*
ecdsa
.
PrivateKey
,
nonce
uint64
,
datasize
int
)
*
types
.
Transaction
{
func
newTestTransaction
(
from
*
ecdsa
.
PrivateKey
,
nonce
uint64
,
datasize
int
)
*
types
.
Transaction
{
tx
:=
types
.
NewTransaction
(
nonce
,
common
.
Address
{},
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
big
.
NewInt
(
0
),
make
([]
byte
,
datasize
))
tx
:=
types
.
NewTransaction
(
nonce
,
common
.
Address
{},
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
big
.
NewInt
(
0
),
make
([]
byte
,
datasize
))
tx
,
_
=
t
x
.
SignECDSA
(
types
.
HomesteadSigner
{},
from
)
tx
,
_
=
t
ypes
.
SignTx
(
tx
,
types
.
HomesteadSigner
{},
from
)
return
tx
return
tx
}
}
...
...
light/odr_test.go
View file @
e171bf74
...
@@ -205,17 +205,17 @@ func testChainGen(i int, block *core.BlockGen) {
...
@@ -205,17 +205,17 @@ func testChainGen(i int, block *core.BlockGen) {
switch
i
{
switch
i
{
case
0
:
case
0
:
// In block 1, the test bank sends account #1 some ether.
// In block 1, the test bank sends account #1 some ether.
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
case
1
:
case
1
:
// In block 2, the test bank sends some more ether to account #1.
// In block 2, the test bank sends some more ether to account #1.
// acc1Addr passes it on to account #2.
// acc1Addr passes it on to account #2.
// acc1Addr creates a test contract.
// acc1Addr creates a test contract.
tx1
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
testBankKey
)
tx1
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
acc1Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
testBankKey
)
nonce
:=
block
.
TxNonce
(
acc1Addr
)
nonce
:=
block
.
TxNonce
(
acc1Addr
)
tx2
,
_
:=
types
.
NewTransaction
(
nonce
,
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
signer
,
acc1Key
)
tx2
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
nonce
,
acc2Addr
,
big
.
NewInt
(
1000
),
params
.
TxGas
,
nil
,
nil
),
signer
,
acc1Key
)
nonce
++
nonce
++
tx3
,
_
:=
types
.
NewContractCreation
(
nonce
,
big
.
NewInt
(
0
),
big
.
NewInt
(
1000000
),
big
.
NewInt
(
0
),
testContractCode
)
.
SignECDSA
(
signer
,
acc1Key
)
tx3
,
_
:=
types
.
SignTx
(
types
.
NewContractCreation
(
nonce
,
big
.
NewInt
(
0
),
big
.
NewInt
(
1000000
),
big
.
NewInt
(
0
),
testContractCode
),
signer
,
acc1Key
)
testContractAddr
=
crypto
.
CreateAddress
(
acc1Addr
,
nonce
)
testContractAddr
=
crypto
.
CreateAddress
(
acc1Addr
,
nonce
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx1
)
block
.
AddTx
(
tx2
)
block
.
AddTx
(
tx2
)
...
@@ -225,7 +225,7 @@ func testChainGen(i int, block *core.BlockGen) {
...
@@ -225,7 +225,7 @@ func testChainGen(i int, block *core.BlockGen) {
block
.
SetCoinbase
(
acc2Addr
)
block
.
SetCoinbase
(
acc2Addr
)
block
.
SetExtra
([]
byte
(
"yeehaw"
))
block
.
SetExtra
([]
byte
(
"yeehaw"
))
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001"
)
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001"
)
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
case
3
:
case
3
:
// Block 4 includes blocks 2 and 3 as uncle headers (with modified extra data).
// Block 4 includes blocks 2 and 3 as uncle headers (with modified extra data).
...
@@ -236,7 +236,7 @@ func testChainGen(i int, block *core.BlockGen) {
...
@@ -236,7 +236,7 @@ func testChainGen(i int, block *core.BlockGen) {
b3
.
Extra
=
[]
byte
(
"foo"
)
b3
.
Extra
=
[]
byte
(
"foo"
)
block
.
AddUncle
(
b3
)
block
.
AddUncle
(
b3
)
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002"
)
data
:=
common
.
Hex2Bytes
(
"C16431B900000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002"
)
tx
,
_
:=
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
)
.
SignECDSA
(
signer
,
testBankKey
)
tx
,
_
:=
types
.
SignTx
(
types
.
NewTransaction
(
block
.
TxNonce
(
testBankAddress
),
testContractAddr
,
big
.
NewInt
(
0
),
big
.
NewInt
(
100000
),
nil
,
data
),
signer
,
testBankKey
)
block
.
AddTx
(
tx
)
block
.
AddTx
(
tx
)
}
}
}
}
...
...
light/txpool_test.go
View file @
e171bf74
...
@@ -74,7 +74,7 @@ func txPoolTestChainGen(i int, block *core.BlockGen) {
...
@@ -74,7 +74,7 @@ func txPoolTestChainGen(i int, block *core.BlockGen) {
func
TestTxPool
(
t
*
testing
.
T
)
{
func
TestTxPool
(
t
*
testing
.
T
)
{
for
i
,
_
:=
range
testTx
{
for
i
,
_
:=
range
testTx
{
testTx
[
i
],
_
=
types
.
NewTransaction
(
uint64
(
i
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
)
.
SignECDSA
(
types
.
HomesteadSigner
{},
testBankKey
)
testTx
[
i
],
_
=
types
.
SignTx
(
types
.
NewTransaction
(
uint64
(
i
),
acc1Addr
,
big
.
NewInt
(
10000
),
params
.
TxGas
,
nil
,
nil
),
types
.
HomesteadSigner
{},
testBankKey
)
}
}
var
(
var
(
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment