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
de4b39a1
Unverified
Commit
de4b39a1
authored
Nov 09, 2016
by
Péter Szilágyi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cmd/utils, mobile: update to reprice HF and light client
parent
322502b4
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
55 additions
and
31 deletions
+55
-31
bootnodes.go
cmd/utils/bootnodes.go
+10
-6
core.go
mobile/core.go
+32
-18
geth.go
mobile/geth.go
+13
-7
No files found.
cmd/utils/bootnodes.go
View file @
de4b39a1
...
...
@@ -46,14 +46,18 @@ var TestnetBootnodes = []*discover.Node{
// MainnetChainConfig is the chain parameters to run a node on the main network.
var
MainnetChainConfig
=
&
core
.
ChainConfig
{
HomesteadBlock
:
params
.
MainNetHomesteadBlock
,
DAOForkBlock
:
params
.
MainNetDAOForkBlock
,
DAOForkSupport
:
true
,
HomesteadBlock
:
params
.
MainNetHomesteadBlock
,
DAOForkBlock
:
params
.
MainNetDAOForkBlock
,
DAOForkSupport
:
true
,
HomesteadGasRepriceBlock
:
params
.
MainNetHomesteadGasRepriceBlock
,
HomesteadGasRepriceHash
:
params
.
MainNetHomesteadGasRepriceHash
,
}
// TestnetChainConfig is the chain parameters to run a node on the test network.
var
TestnetChainConfig
=
&
core
.
ChainConfig
{
HomesteadBlock
:
params
.
TestNetHomesteadBlock
,
DAOForkBlock
:
params
.
TestNetDAOForkBlock
,
DAOForkSupport
:
false
,
HomesteadBlock
:
params
.
TestNetHomesteadBlock
,
DAOForkBlock
:
params
.
TestNetDAOForkBlock
,
DAOForkSupport
:
false
,
HomesteadGasRepriceBlock
:
params
.
TestNetHomesteadGasRepriceBlock
,
HomesteadGasRepriceHash
:
params
.
TestNetHomesteadGasRepriceHash
,
}
mobile/core.go
View file @
de4b39a1
...
...
@@ -23,32 +23,46 @@ import (
"github.com/ethereum/go-ethereum/params"
)
// MainnetChainConfig is the chain configurations for the main Ethereum network.
var
MainnetChainConfig
=
&
ChainConfig
{
HomesteadBlock
:
params
.
MainNetHomesteadBlock
.
Int64
(),
DAOForkBlock
:
params
.
MainNetDAOForkBlock
.
Int64
(),
DAOForkSupport
:
true
,
// MainnetChainConfig returns the chain configurations for the main Ethereum network.
func
MainnetChainConfig
()
*
ChainConfig
{
return
&
ChainConfig
{
HomesteadBlock
:
params
.
MainNetHomesteadBlock
.
Int64
(),
DAOForkBlock
:
params
.
MainNetDAOForkBlock
.
Int64
(),
DAOForkSupport
:
true
,
HomesteadGasRepriceBlock
:
params
.
MainNetHomesteadGasRepriceBlock
.
Int64
(),
HomesteadGasRepriceHash
:
Hash
{
params
.
MainNetHomesteadGasRepriceHash
},
}
}
// MainnetGenesis is the JSON spec to use for the main Ethereum network. It is
// actually empty since that defaults to the hard coded binary genesis block.
var
MainnetGenesis
=
""
// MainnetGenesis returns the JSON spec to use for the main Ethereum network. It
// is actually empty since that defaults to the hard coded binary genesis block.
func
MainnetGenesis
()
string
{
return
""
}
// TestnetChainConfig is the chain configurations for the Ethereum test network.
var
TestnetChainConfig
=
&
ChainConfig
{
HomesteadBlock
:
params
.
TestNetHomesteadBlock
.
Int64
(),
DAOForkBlock
:
0
,
DAOForkSupport
:
false
,
// TestnetChainConfig returns the chain configurations for the Ethereum test network.
func
TestnetChainConfig
()
*
ChainConfig
{
return
&
ChainConfig
{
HomesteadBlock
:
params
.
TestNetHomesteadBlock
.
Int64
(),
DAOForkBlock
:
0
,
DAOForkSupport
:
false
,
HomesteadGasRepriceBlock
:
params
.
TestNetHomesteadGasRepriceBlock
.
Int64
(),
HomesteadGasRepriceHash
:
Hash
{
params
.
TestNetHomesteadGasRepriceHash
},
}
}
// TestnetGenesis is the JSON spec to use for the Ethereum test network.
var
TestnetGenesis
=
core
.
TestNetGenesisBlock
()
// TestnetGenesis returns the JSON spec to use for the Ethereum test network.
func
TestnetGenesis
()
string
{
return
core
.
TestNetGenesisBlock
()
}
// ChainConfig is the core config which determines the blockchain settings.
type
ChainConfig
struct
{
HomesteadBlock
int64
// Homestead switch block
DAOForkBlock
int64
// TheDAO hard-fork switch block
DAOForkSupport
bool
// Whether the nodes supports or opposes the DAO hard-fork
HomesteadBlock
int64
// Homestead switch block
DAOForkBlock
int64
// TheDAO hard-fork switch block
DAOForkSupport
bool
// Whether the nodes supports or opposes the DAO hard-fork
HomesteadGasRepriceBlock
int64
// Homestead gas reprice switch block
HomesteadGasRepriceHash
Hash
// Homestead gas reprice switch block hash
}
// NewChainConfig creates a new chain configuration that transitions immediately
...
...
mobile/geth.go
View file @
de4b39a1
...
...
@@ -24,12 +24,13 @@ import (
"math/big"
"path/filepath"
"github.com/ethereum/go-ethereum/cmd/utils"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core"
"github.com/ethereum/go-ethereum/core/state"
"github.com/ethereum/go-ethereum/eth"
"github.com/ethereum/go-ethereum/ethclient"
"github.com/ethereum/go-ethereum/les"
"github.com/ethereum/go-ethereum/light"
"github.com/ethereum/go-ethereum/node"
"github.com/ethereum/go-ethereum/p2p/nat"
"github.com/ethereum/go-ethereum/whisper/whisperv2"
...
...
@@ -107,9 +108,11 @@ func NewNode(datadir string, config *NodeConfig) (*Node, error) {
}
// Create the empty networking stack
nodeConf
:=
&
node
.
Config
{
Name
:
clientIdentifier
,
DataDir
:
datadir
,
KeyStoreDir
:
filepath
.
Join
(
datadir
,
"keystore"
),
// Mobile should never use internal keystores!
Name
:
common
.
MakeName
(
clientIdentifier
,
utils
.
Version
),
NoDiscovery
:
true
,
DiscoveryV5
:
true
,
BootstrapNodes
:
config
.
BootstrapNodes
.
nodes
,
ListenAddr
:
":0"
,
NAT
:
nat
.
Any
(),
...
...
@@ -123,12 +126,14 @@ func NewNode(datadir string, config *NodeConfig) (*Node, error) {
if
config
.
EthereumEnabled
{
ethConf
:=
&
eth
.
Config
{
ChainConfig
:
&
core
.
ChainConfig
{
HomesteadBlock
:
big
.
NewInt
(
config
.
EthereumChainConfig
.
HomesteadBlock
),
DAOForkBlock
:
big
.
NewInt
(
config
.
EthereumChainConfig
.
DAOForkBlock
),
DAOForkSupport
:
config
.
EthereumChainConfig
.
DAOForkSupport
,
HomesteadBlock
:
big
.
NewInt
(
config
.
EthereumChainConfig
.
HomesteadBlock
),
DAOForkBlock
:
big
.
NewInt
(
config
.
EthereumChainConfig
.
DAOForkBlock
),
DAOForkSupport
:
config
.
EthereumChainConfig
.
DAOForkSupport
,
HomesteadGasRepriceBlock
:
big
.
NewInt
(
config
.
EthereumChainConfig
.
HomesteadGasRepriceBlock
),
HomesteadGasRepriceHash
:
config
.
EthereumChainConfig
.
HomesteadGasRepriceHash
.
hash
,
},
Genesis
:
config
.
EthereumGenesis
,
FastSync
:
true
,
LightMode
:
true
,
DatabaseCache
:
config
.
EthereumDatabaseCache
,
NetworkId
:
config
.
EthereumNetworkID
,
GasPrice
:
new
(
big
.
Int
)
.
Mul
(
big
.
NewInt
(
20
),
common
.
Shannon
),
...
...
@@ -141,9 +146,10 @@ func NewNode(datadir string, config *NodeConfig) (*Node, error) {
}
if
config
.
EthereumTestnetNonces
{
state
.
StartingNonce
=
1048576
// (2**20)
light
.
StartingNonce
=
1048576
// (2**20)
}
if
err
:=
stack
.
Register
(
func
(
ctx
*
node
.
ServiceContext
)
(
node
.
Service
,
error
)
{
return
eth
.
New
(
ctx
,
ethConf
)
return
les
.
New
(
ctx
,
ethConf
)
});
err
!=
nil
{
return
nil
,
fmt
.
Errorf
(
"ethereum init: %v"
,
err
)
}
...
...
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