Trie => SecureTrie

This commit is contained in:
obscuren 2015-03-03 12:25:44 +01:00
parent 1650b59cd9
commit b909a5ec18
3 changed files with 7 additions and 3 deletions

@ -290,7 +290,7 @@ func (c *StateObject) Init() Code {
return c.initCode return c.initCode
} }
func (self *StateObject) Trie() *trie.Trie { func (self *StateObject) Trie() *trie.SecureTrie {
return self.State.trie return self.State.trie
} }

@ -18,7 +18,7 @@ var statelogger = logger.NewLogger("STATE")
// * Accounts // * Accounts
type StateDB struct { type StateDB struct {
db ethutil.Database db ethutil.Database
trie *trie.Trie trie *trie.SecureTrie
stateObjects map[string]*StateObject stateObjects map[string]*StateObject
@ -29,7 +29,7 @@ type StateDB struct {
// Create a new state from a given trie // Create a new state from a given trie
func New(root []byte, db ethutil.Database) *StateDB { func New(root []byte, db ethutil.Database) *StateDB {
trie := trie.New(ethutil.CopyBytes(root), db) trie := trie.NewSecure(ethutil.CopyBytes(root), db)
return &StateDB{db: db, trie: trie, stateObjects: make(map[string]*StateObject), refund: make(map[string]*big.Int)} return &StateDB{db: db, trie: trie, stateObjects: make(map[string]*StateObject), refund: make(map[string]*big.Int)}
} }

@ -30,3 +30,7 @@ func (self *SecureTrie) Delete(key []byte) Node {
func (self *SecureTrie) DeleteString(key string) Node { func (self *SecureTrie) DeleteString(key string) Node {
return self.Delete([]byte(key)) return self.Delete([]byte(key))
} }
func (self *SecureTrie) Copy() *SecureTrie {
return &SecureTrie{self.Trie.Copy()}
}