69 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2017 The go-ethereum Authors
 | |
| // This file is part of the go-ethereum library.
 | |
| //
 | |
| // The go-ethereum library is free software: you can redistribute it and/or modify
 | |
| // it under the terms of the GNU Lesser General Public License as published by
 | |
| // the Free Software Foundation, either version 3 of the License, or
 | |
| // (at your option) any later version.
 | |
| //
 | |
| // The go-ethereum library is distributed in the hope that it will be useful,
 | |
| // but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 | |
| // GNU Lesser General Public License for more details.
 | |
| //
 | |
| // You should have received a copy of the GNU Lesser General Public License
 | |
| // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.
 | |
| 
 | |
| package accounts
 | |
| 
 | |
| import (
 | |
| 	"errors"
 | |
| 	"fmt"
 | |
| )
 | |
| 
 | |
| // ErrUnknownAccount is returned for any requested operation for which no backend
 | |
| // provides the specified account.
 | |
| var ErrUnknownAccount = errors.New("unknown account")
 | |
| 
 | |
| // ErrUnknownWallet is returned for any requested operation for which no backend
 | |
| // provides the specified wallet.
 | |
| var ErrUnknownWallet = errors.New("unknown wallet")
 | |
| 
 | |
| // ErrNotSupported is returned when an operation is requested from an account
 | |
| // backend that it does not support.
 | |
| var ErrNotSupported = errors.New("not supported")
 | |
| 
 | |
| // ErrInvalidPassphrase is returned when a decryption operation receives a bad
 | |
| // passphrase.
 | |
| var ErrInvalidPassphrase = errors.New("invalid passphrase")
 | |
| 
 | |
| // ErrWalletAlreadyOpen is returned if a wallet is attempted to be opened the
 | |
| // second time.
 | |
| var ErrWalletAlreadyOpen = errors.New("wallet already open")
 | |
| 
 | |
| // ErrWalletClosed is returned if a wallet is attempted to be opened the
 | |
| // secodn time.
 | |
| var ErrWalletClosed = errors.New("wallet closed")
 | |
| 
 | |
| // AuthNeededError is returned by backends for signing requests where the user
 | |
| // is required to provide further authentication before signing can succeed.
 | |
| //
 | |
| // This usually means either that a password needs to be supplied, or perhaps a
 | |
| // one time PIN code displayed by some hardware device.
 | |
| type AuthNeededError struct {
 | |
| 	Needed string // Extra authentication the user needs to provide
 | |
| }
 | |
| 
 | |
| // NewAuthNeededError creates a new authentication error with the extra details
 | |
| // about the needed fields set.
 | |
| func NewAuthNeededError(needed string) error {
 | |
| 	return &AuthNeededError{
 | |
| 		Needed: needed,
 | |
| 	}
 | |
| }
 | |
| 
 | |
| // Error implements the standard error interface.
 | |
| func (err *AuthNeededError) Error() string {
 | |
| 	return fmt.Sprintf("authentication needed: %s", err.Needed)
 | |
| }
 |