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
fb53a936
Commit
fb53a936
authored
Mar 08, 2015
by
Felix Lange
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
accounts: AccountManager -> Manager
parent
3750ec7b
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
37 additions
and
36 deletions
+37
-36
account_manager.go
accounts/account_manager.go
+13
-13
accounts_test.go
accounts/accounts_test.go
+2
-2
flags.go
cmd/utils/flags.go
+2
-2
backend.go
eth/backend.go
+17
-17
javascript_runtime.go
javascript/javascript_runtime.go
+1
-0
xeth.go
xeth/xeth.go
+2
-2
No files found.
accounts/account_manager.go
View file @
fb53a936
...
@@ -52,7 +52,7 @@ type Account struct {
...
@@ -52,7 +52,7 @@ type Account struct {
Address
[]
byte
Address
[]
byte
}
}
type
Account
Manager
struct
{
type
Manager
struct
{
keyStore
crypto
.
KeyStore2
keyStore
crypto
.
KeyStore2
unlocked
map
[
string
]
*
unlocked
unlocked
map
[
string
]
*
unlocked
unlockTime
time
.
Duration
unlockTime
time
.
Duration
...
@@ -66,8 +66,8 @@ type unlocked struct {
...
@@ -66,8 +66,8 @@ type unlocked struct {
*
crypto
.
Key
*
crypto
.
Key
}
}
func
New
AccountManager
(
keyStore
crypto
.
KeyStore2
,
unlockTime
time
.
Duration
)
*
Account
Manager
{
func
New
Manager
(
keyStore
crypto
.
KeyStore2
,
unlockTime
time
.
Duration
)
*
Manager
{
return
&
Account
Manager
{
return
&
Manager
{
keyStore
:
keyStore
,
keyStore
:
keyStore
,
unlocked
:
make
(
map
[
string
]
*
unlocked
),
unlocked
:
make
(
map
[
string
]
*
unlocked
),
unlockTime
:
unlockTime
,
unlockTime
:
unlockTime
,
...
@@ -75,19 +75,19 @@ func NewAccountManager(keyStore crypto.KeyStore2, unlockTime time.Duration) *Acc
...
@@ -75,19 +75,19 @@ func NewAccountManager(keyStore crypto.KeyStore2, unlockTime time.Duration) *Acc
}
}
// Coinbase returns the account address that mining rewards are sent to.
// Coinbase returns the account address that mining rewards are sent to.
func
(
am
*
Account
Manager
)
Coinbase
()
(
addr
[]
byte
,
err
error
)
{
func
(
am
*
Manager
)
Coinbase
()
(
addr
[]
byte
,
err
error
)
{
// TODO: persist coinbase address on disk
// TODO: persist coinbase address on disk
return
am
.
firstAddr
()
return
am
.
firstAddr
()
}
}
// MainAccount returns the primary account used for transactions.
// MainAccount returns the primary account used for transactions.
func
(
am
*
Account
Manager
)
Default
()
(
Account
,
error
)
{
func
(
am
*
Manager
)
Default
()
(
Account
,
error
)
{
// TODO: persist main account address on disk
// TODO: persist main account address on disk
addr
,
err
:=
am
.
firstAddr
()
addr
,
err
:=
am
.
firstAddr
()
return
Account
{
Address
:
addr
},
err
return
Account
{
Address
:
addr
},
err
}
}
func
(
am
*
Account
Manager
)
firstAddr
()
([]
byte
,
error
)
{
func
(
am
*
Manager
)
firstAddr
()
([]
byte
,
error
)
{
addrs
,
err
:=
am
.
keyStore
.
GetKeyAddresses
()
addrs
,
err
:=
am
.
keyStore
.
GetKeyAddresses
()
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
...
@@ -98,11 +98,11 @@ func (am *AccountManager) firstAddr() ([]byte, error) {
...
@@ -98,11 +98,11 @@ func (am *AccountManager) firstAddr() ([]byte, error) {
return
addrs
[
0
],
nil
return
addrs
[
0
],
nil
}
}
func
(
am
*
Account
Manager
)
DeleteAccount
(
address
[]
byte
,
auth
string
)
error
{
func
(
am
*
Manager
)
DeleteAccount
(
address
[]
byte
,
auth
string
)
error
{
return
am
.
keyStore
.
DeleteKey
(
address
,
auth
)
return
am
.
keyStore
.
DeleteKey
(
address
,
auth
)
}
}
func
(
am
*
Account
Manager
)
Sign
(
a
Account
,
toSign
[]
byte
)
(
signature
[]
byte
,
err
error
)
{
func
(
am
*
Manager
)
Sign
(
a
Account
,
toSign
[]
byte
)
(
signature
[]
byte
,
err
error
)
{
am
.
mutex
.
RLock
()
am
.
mutex
.
RLock
()
unlockedKey
,
found
:=
am
.
unlocked
[
string
(
a
.
Address
)]
unlockedKey
,
found
:=
am
.
unlocked
[
string
(
a
.
Address
)]
am
.
mutex
.
RUnlock
()
am
.
mutex
.
RUnlock
()
...
@@ -113,7 +113,7 @@ func (am *AccountManager) Sign(a Account, toSign []byte) (signature []byte, err
...
@@ -113,7 +113,7 @@ func (am *AccountManager) Sign(a Account, toSign []byte) (signature []byte, err
return
signature
,
err
return
signature
,
err
}
}
func
(
am
*
Account
Manager
)
SignLocked
(
a
Account
,
keyAuth
string
,
toSign
[]
byte
)
(
signature
[]
byte
,
err
error
)
{
func
(
am
*
Manager
)
SignLocked
(
a
Account
,
keyAuth
string
,
toSign
[]
byte
)
(
signature
[]
byte
,
err
error
)
{
key
,
err
:=
am
.
keyStore
.
GetKey
(
a
.
Address
,
keyAuth
)
key
,
err
:=
am
.
keyStore
.
GetKey
(
a
.
Address
,
keyAuth
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
...
@@ -124,7 +124,7 @@ func (am *AccountManager) SignLocked(a Account, keyAuth string, toSign []byte) (
...
@@ -124,7 +124,7 @@ func (am *AccountManager) SignLocked(a Account, keyAuth string, toSign []byte) (
return
signature
,
err
return
signature
,
err
}
}
func
(
am
*
Account
Manager
)
NewAccount
(
auth
string
)
(
Account
,
error
)
{
func
(
am
*
Manager
)
NewAccount
(
auth
string
)
(
Account
,
error
)
{
key
,
err
:=
am
.
keyStore
.
GenerateNewKey
(
crand
.
Reader
,
auth
)
key
,
err
:=
am
.
keyStore
.
GenerateNewKey
(
crand
.
Reader
,
auth
)
if
err
!=
nil
{
if
err
!=
nil
{
return
Account
{},
err
return
Account
{},
err
...
@@ -132,7 +132,7 @@ func (am *AccountManager) NewAccount(auth string) (Account, error) {
...
@@ -132,7 +132,7 @@ func (am *AccountManager) NewAccount(auth string) (Account, error) {
return
Account
{
Address
:
key
.
Address
},
nil
return
Account
{
Address
:
key
.
Address
},
nil
}
}
func
(
am
*
Account
Manager
)
Accounts
()
([]
Account
,
error
)
{
func
(
am
*
Manager
)
Accounts
()
([]
Account
,
error
)
{
addresses
,
err
:=
am
.
keyStore
.
GetKeyAddresses
()
addresses
,
err
:=
am
.
keyStore
.
GetKeyAddresses
()
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
...
@@ -148,7 +148,7 @@ func (am *AccountManager) Accounts() ([]Account, error) {
...
@@ -148,7 +148,7 @@ func (am *AccountManager) Accounts() ([]Account, error) {
return
accounts
,
err
return
accounts
,
err
}
}
func
(
am
*
Account
Manager
)
addUnlocked
(
addr
[]
byte
,
key
*
crypto
.
Key
)
*
unlocked
{
func
(
am
*
Manager
)
addUnlocked
(
addr
[]
byte
,
key
*
crypto
.
Key
)
*
unlocked
{
u
:=
&
unlocked
{
addr
:
addr
,
abort
:
make
(
chan
struct
{}),
Key
:
key
}
u
:=
&
unlocked
{
addr
:
addr
,
abort
:
make
(
chan
struct
{}),
Key
:
key
}
am
.
mutex
.
Lock
()
am
.
mutex
.
Lock
()
prev
,
found
:=
am
.
unlocked
[
string
(
addr
)]
prev
,
found
:=
am
.
unlocked
[
string
(
addr
)]
...
@@ -162,7 +162,7 @@ func (am *AccountManager) addUnlocked(addr []byte, key *crypto.Key) *unlocked {
...
@@ -162,7 +162,7 @@ func (am *AccountManager) addUnlocked(addr []byte, key *crypto.Key) *unlocked {
return
u
return
u
}
}
func
(
am
*
Account
Manager
)
dropLater
(
u
*
unlocked
)
{
func
(
am
*
Manager
)
dropLater
(
u
*
unlocked
)
{
t
:=
time
.
NewTimer
(
am
.
unlockTime
)
t
:=
time
.
NewTimer
(
am
.
unlockTime
)
defer
t
.
Stop
()
defer
t
.
Stop
()
select
{
select
{
...
...
accounts/accounts_test.go
View file @
fb53a936
...
@@ -12,7 +12,7 @@ import (
...
@@ -12,7 +12,7 @@ import (
func
TestAccountManager
(
t
*
testing
.
T
)
{
func
TestAccountManager
(
t
*
testing
.
T
)
{
ks
:=
crypto
.
NewKeyStorePlain
(
ethutil
.
DefaultDataDir
()
+
"/testaccounts"
)
ks
:=
crypto
.
NewKeyStorePlain
(
ethutil
.
DefaultDataDir
()
+
"/testaccounts"
)
am
:=
New
Account
Manager
(
ks
,
100
*
time
.
Millisecond
)
am
:=
NewManager
(
ks
,
100
*
time
.
Millisecond
)
pass
:=
""
// not used but required by API
pass
:=
""
// not used but required by API
a1
,
err
:=
am
.
NewAccount
(
pass
)
a1
,
err
:=
am
.
NewAccount
(
pass
)
toSign
:=
randentropy
.
GetEntropyCSPRNG
(
32
)
toSign
:=
randentropy
.
GetEntropyCSPRNG
(
32
)
...
@@ -38,7 +38,7 @@ func TestAccountManager(t *testing.T) {
...
@@ -38,7 +38,7 @@ func TestAccountManager(t *testing.T) {
func
TestAccountManagerLocking
(
t
*
testing
.
T
)
{
func
TestAccountManagerLocking
(
t
*
testing
.
T
)
{
ks
:=
crypto
.
NewKeyStorePassphrase
(
ethutil
.
DefaultDataDir
()
+
"/testaccounts"
)
ks
:=
crypto
.
NewKeyStorePassphrase
(
ethutil
.
DefaultDataDir
()
+
"/testaccounts"
)
am
:=
New
Account
Manager
(
ks
,
200
*
time
.
Millisecond
)
am
:=
NewManager
(
ks
,
200
*
time
.
Millisecond
)
pass
:=
"foo"
pass
:=
"foo"
a1
,
err
:=
am
.
NewAccount
(
pass
)
a1
,
err
:=
am
.
NewAccount
(
pass
)
toSign
:=
randentropy
.
GetEntropyCSPRNG
(
32
)
toSign
:=
randentropy
.
GetEntropyCSPRNG
(
32
)
...
...
cmd/utils/flags.go
View file @
fb53a936
...
@@ -167,8 +167,8 @@ func GetChain(ctx *cli.Context) (*core.ChainManager, ethutil.Database) {
...
@@ -167,8 +167,8 @@ func GetChain(ctx *cli.Context) (*core.ChainManager, ethutil.Database) {
return
core
.
NewChainManager
(
db
,
new
(
event
.
TypeMux
)),
db
return
core
.
NewChainManager
(
db
,
new
(
event
.
TypeMux
)),
db
}
}
func
GetAccountManager
(
ctx
*
cli
.
Context
)
*
accounts
.
Account
Manager
{
func
GetAccountManager
(
ctx
*
cli
.
Context
)
*
accounts
.
Manager
{
dataDir
:=
ctx
.
GlobalString
(
DataDirFlag
.
Name
)
dataDir
:=
ctx
.
GlobalString
(
DataDirFlag
.
Name
)
ks
:=
crypto
.
NewKeyStorePassphrase
(
path
.
Join
(
dataDir
,
"keys"
))
ks
:=
crypto
.
NewKeyStorePassphrase
(
path
.
Join
(
dataDir
,
"keys"
))
return
accounts
.
New
Account
Manager
(
ks
,
300
*
time
.
Second
)
return
accounts
.
NewManager
(
ks
,
300
*
time
.
Second
)
}
}
eth/backend.go
View file @
fb53a936
...
@@ -59,7 +59,7 @@ type Config struct {
...
@@ -59,7 +59,7 @@ type Config struct {
Dial
bool
Dial
bool
MinerThreads
int
MinerThreads
int
AccountManager
*
accounts
.
Account
Manager
AccountManager
*
accounts
.
Manager
}
}
func
(
cfg
*
Config
)
parseBootNodes
()
[]
*
discover
.
Node
{
func
(
cfg
*
Config
)
parseBootNodes
()
[]
*
discover
.
Node
{
...
@@ -115,7 +115,7 @@ type Ethereum struct {
...
@@ -115,7 +115,7 @@ type Ethereum struct {
txPool
*
core
.
TxPool
txPool
*
core
.
TxPool
chainManager
*
core
.
ChainManager
chainManager
*
core
.
ChainManager
blockPool
*
blockpool
.
BlockPool
blockPool
*
blockpool
.
BlockPool
accountManager
*
accounts
.
Account
Manager
accountManager
*
accounts
.
Manager
whisper
*
whisper
.
Whisper
whisper
*
whisper
.
Whisper
net
*
p2p
.
Server
net
*
p2p
.
Server
...
@@ -204,21 +204,21 @@ func New(config *Config) (*Ethereum, error) {
...
@@ -204,21 +204,21 @@ func New(config *Config) (*Ethereum, error) {
return
eth
,
nil
return
eth
,
nil
}
}
func
(
s
*
Ethereum
)
Logger
()
logger
.
LogSystem
{
return
s
.
logger
}
func
(
s
*
Ethereum
)
Logger
()
logger
.
LogSystem
{
return
s
.
logger
}
func
(
s
*
Ethereum
)
Name
()
string
{
return
s
.
net
.
Name
}
func
(
s
*
Ethereum
)
Name
()
string
{
return
s
.
net
.
Name
}
func
(
s
*
Ethereum
)
AccountManager
()
*
accounts
.
AccountManager
{
return
s
.
accountManager
}
func
(
s
*
Ethereum
)
AccountManager
()
*
accounts
.
Manager
{
return
s
.
accountManager
}
func
(
s
*
Ethereum
)
ChainManager
()
*
core
.
ChainManager
{
return
s
.
chainManager
}
func
(
s
*
Ethereum
)
ChainManager
()
*
core
.
ChainManager
{
return
s
.
chainManager
}
func
(
s
*
Ethereum
)
BlockProcessor
()
*
core
.
BlockProcessor
{
return
s
.
blockProcessor
}
func
(
s
*
Ethereum
)
BlockProcessor
()
*
core
.
BlockProcessor
{
return
s
.
blockProcessor
}
func
(
s
*
Ethereum
)
TxPool
()
*
core
.
TxPool
{
return
s
.
txPool
}
func
(
s
*
Ethereum
)
TxPool
()
*
core
.
TxPool
{
return
s
.
txPool
}
func
(
s
*
Ethereum
)
BlockPool
()
*
blockpool
.
BlockPool
{
return
s
.
blockPool
}
func
(
s
*
Ethereum
)
BlockPool
()
*
blockpool
.
BlockPool
{
return
s
.
blockPool
}
func
(
s
*
Ethereum
)
Whisper
()
*
whisper
.
Whisper
{
return
s
.
whisper
}
func
(
s
*
Ethereum
)
Whisper
()
*
whisper
.
Whisper
{
return
s
.
whisper
}
func
(
s
*
Ethereum
)
EventMux
()
*
event
.
TypeMux
{
return
s
.
eventMux
}
func
(
s
*
Ethereum
)
EventMux
()
*
event
.
TypeMux
{
return
s
.
eventMux
}
func
(
s
*
Ethereum
)
Db
()
ethutil
.
Database
{
return
s
.
db
}
func
(
s
*
Ethereum
)
Db
()
ethutil
.
Database
{
return
s
.
db
}
func
(
s
*
Ethereum
)
Miner
()
*
miner
.
Miner
{
return
s
.
miner
}
func
(
s
*
Ethereum
)
Miner
()
*
miner
.
Miner
{
return
s
.
miner
}
func
(
s
*
Ethereum
)
IsListening
()
bool
{
return
true
}
// Always listening
func
(
s
*
Ethereum
)
IsListening
()
bool
{
return
true
}
// Always listening
func
(
s
*
Ethereum
)
PeerCount
()
int
{
return
s
.
net
.
PeerCount
()
}
func
(
s
*
Ethereum
)
PeerCount
()
int
{
return
s
.
net
.
PeerCount
()
}
func
(
s
*
Ethereum
)
Peers
()
[]
*
p2p
.
Peer
{
return
s
.
net
.
Peers
()
}
func
(
s
*
Ethereum
)
Peers
()
[]
*
p2p
.
Peer
{
return
s
.
net
.
Peers
()
}
func
(
s
*
Ethereum
)
MaxPeers
()
int
{
return
s
.
net
.
MaxPeers
}
func
(
s
*
Ethereum
)
MaxPeers
()
int
{
return
s
.
net
.
MaxPeers
}
// Start the ethereum
// Start the ethereum
func
(
s
*
Ethereum
)
Start
()
error
{
func
(
s
*
Ethereum
)
Start
()
error
{
...
...
javascript/javascript_runtime.go
View file @
fb53a936
...
@@ -6,6 +6,7 @@ import (
...
@@ -6,6 +6,7 @@ import (
"os"
"os"
"path"
"path"
"path/filepath"
"path/filepath"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/xeth"
"github.com/ethereum/go-ethereum/xeth"
"github.com/obscuren/otto"
"github.com/obscuren/otto"
...
...
xeth/xeth.go
View file @
fb53a936
...
@@ -27,7 +27,7 @@ var pipelogger = logger.NewLogger("XETH")
...
@@ -27,7 +27,7 @@ var pipelogger = logger.NewLogger("XETH")
type
Backend
interface
{
type
Backend
interface
{
BlockProcessor
()
*
core
.
BlockProcessor
BlockProcessor
()
*
core
.
BlockProcessor
ChainManager
()
*
core
.
ChainManager
ChainManager
()
*
core
.
ChainManager
AccountManager
()
*
accounts
.
Account
Manager
AccountManager
()
*
accounts
.
Manager
TxPool
()
*
core
.
TxPool
TxPool
()
*
core
.
TxPool
PeerCount
()
int
PeerCount
()
int
IsListening
()
bool
IsListening
()
bool
...
@@ -42,7 +42,7 @@ type XEth struct {
...
@@ -42,7 +42,7 @@ type XEth struct {
eth
Backend
eth
Backend
blockProcessor
*
core
.
BlockProcessor
blockProcessor
*
core
.
BlockProcessor
chainManager
*
core
.
ChainManager
chainManager
*
core
.
ChainManager
accountManager
*
accounts
.
Account
Manager
accountManager
*
accounts
.
Manager
state
*
State
state
*
State
whisper
*
Whisper
whisper
*
Whisper
miner
*
miner
.
Miner
miner
*
miner
.
Miner
...
...
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