forked from External/ergo
implement NS PASSWD for password changes
This commit is contained in:
parent
70364f5f67
commit
48f9b5e4fa
2 changed files with 68 additions and 5 deletions
|
|
@ -565,14 +565,15 @@ func (am *AccountManager) SetNickReserved(client *Client, nick string, saUnreser
|
|||
return nil
|
||||
}
|
||||
|
||||
func (am *AccountManager) AuthenticateByPassphrase(client *Client, accountName string, passphrase string) error {
|
||||
account, err := am.LoadAccount(accountName)
|
||||
func (am *AccountManager) checkPassphrase(accountName, passphrase string) (account ClientAccount, err error) {
|
||||
account, err = am.LoadAccount(accountName)
|
||||
if err != nil {
|
||||
return err
|
||||
return
|
||||
}
|
||||
|
||||
if !account.Verified {
|
||||
return errAccountUnverified
|
||||
err = errAccountUnverified
|
||||
return
|
||||
}
|
||||
|
||||
switch account.Credentials.Version {
|
||||
|
|
@ -583,9 +584,13 @@ func (am *AccountManager) AuthenticateByPassphrase(client *Client, accountName s
|
|||
default:
|
||||
err = errAccountInvalidCredentials
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (am *AccountManager) AuthenticateByPassphrase(client *Client, accountName string, passphrase string) error {
|
||||
account, err := am.checkPassphrase(accountName, passphrase)
|
||||
if err != nil {
|
||||
return errAccountInvalidCredentials
|
||||
return err
|
||||
}
|
||||
|
||||
am.Login(client, account)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue