rpc/api allow empty password

pull/1739/head
Bas van Kervel 9 years ago
parent 6ec13e7e2b
commit 39e9560600
  1. 4
      rpc/api/personal.go
  2. 4
      rpc/api/personal_args.go

@ -110,7 +110,7 @@ func (self *personalApi) UnlockAccount(req *shared.Request) (interface{}, error)
return nil, shared.NewDecodeParamError(err.Error())
}
if len(args.Passphrase) == 0 {
if args.Passphrase == nil {
fe := self.xeth.Frontend()
if fe == nil {
return false, fmt.Errorf("No password provided")
@ -121,6 +121,6 @@ func (self *personalApi) UnlockAccount(req *shared.Request) (interface{}, error)
am := self.ethereum.AccountManager()
addr := common.HexToAddress(args.Address)
err := am.TimedUnlock(addr, args.Passphrase, time.Duration(args.Duration)*time.Second)
err := am.TimedUnlock(addr, *args.Passphrase, time.Duration(args.Duration)*time.Second)
return err == nil, err
}

@ -46,7 +46,7 @@ func (args *NewAccountArgs) UnmarshalJSON(b []byte) (err error) {
type UnlockAccountArgs struct {
Address string
Passphrase string
Passphrase *string
Duration int
}
@ -70,7 +70,7 @@ func (args *UnlockAccountArgs) UnmarshalJSON(b []byte) (err error) {
if len(obj) >= 2 && obj[1] != nil {
if passphrasestr, ok := obj[1].(string); ok {
args.Passphrase = passphrasestr
args.Passphrase = &passphrasestr
} else {
return shared.NewInvalidTypeError("passphrase", "not a string")
}

Loading…
Cancel
Save