fix parse to int
This commit is contained in:
parent
0d4f34f6d5
commit
44c8c96fbd
|
@ -2,6 +2,7 @@ package handler
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
"gitea.urkob.com/urko/prosody-password/internal/services/fail2ban"
|
||||
"gitea.urkob.com/urko/prosody-password/internal/services/prosody"
|
||||
|
@ -33,6 +34,7 @@ func (handler ProsodyHandler) Post(c *fiber.Ctx) error {
|
|||
}
|
||||
|
||||
if err := handler.prosodyService.ChangePassword(req.User, req.CurrentPassword, req.NewPassword); err != nil {
|
||||
log.Println("c.IPs()", c.IPs())
|
||||
for _, ip := range c.IPs() {
|
||||
handler.fail2banSrv.FailedAttempt(ip)
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ import (
|
|||
type account struct {
|
||||
Salt string `prosody:"salt"`
|
||||
StoredKey string `prosody:"stored_key"`
|
||||
IterationCount int `prosody:"iteration_count"`
|
||||
IterationCount string `prosody:"iteration_count"`
|
||||
}
|
||||
|
||||
func (acc *account) unmarshal(data map[string]interface{}) {
|
||||
|
|
|
@ -8,6 +8,7 @@ import (
|
|||
"fmt"
|
||||
"log"
|
||||
"os/exec"
|
||||
"strconv"
|
||||
|
||||
"github.com/xdg-go/pbkdf2"
|
||||
)
|
||||
|
@ -18,7 +19,12 @@ func (p *Prosody) ChangePassword(user string, currentPwd string, newPwd string)
|
|||
return fmt.Errorf("p.loadAccount %w", err)
|
||||
}
|
||||
|
||||
storedKey, err := hashPassword(currentPwd, acc.Salt, acc.IterationCount)
|
||||
iterationCount, err := strconv.Atoi(acc.IterationCount)
|
||||
if err != nil {
|
||||
return fmt.Errorf("strconv.Atoi %w", err)
|
||||
}
|
||||
|
||||
storedKey, err := hashPassword(currentPwd, acc.Salt, iterationCount)
|
||||
if err != nil {
|
||||
return fmt.Errorf("hashPassword: %w", err)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue