htpasswd: standarize function names
Signed-off-by: Alejandro Mery <amery@jpi.io>
This commit is contained in:
+14
-14
@@ -19,18 +19,18 @@ type Hasher interface {
|
|||||||
Prefix() string
|
Prefix() string
|
||||||
}
|
}
|
||||||
|
|
||||||
// ParseHtpasswdFile parses a .htpasswd file
|
// ParseFile parses a .htpasswd file
|
||||||
// and returns a Passwd type
|
// and returns a Passwd type
|
||||||
func ParseHtpasswdFile(file string) (Passwds, error) {
|
func ParseFile(file string) (Passwds, error) {
|
||||||
htpasswdBytes, err := os.ReadFile(file)
|
htpasswdBytes, err := os.ReadFile(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
return ParseHtpasswd(htpasswdBytes)
|
return Parse(htpasswdBytes)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ParseHtpasswd parses a slice of bytes in htpasswd style
|
// Parse parses a slice of bytes in htpasswd style
|
||||||
func ParseHtpasswd(htpasswdBytes []byte) (Passwds, error) {
|
func Parse(htpasswdBytes []byte) (Passwds, error) {
|
||||||
lines := strings.Split(string(htpasswdBytes), "\n")
|
lines := strings.Split(string(htpasswdBytes), "\n")
|
||||||
passwords := make(map[string]string)
|
passwords := make(map[string]string)
|
||||||
var err error
|
var err error
|
||||||
@@ -63,7 +63,7 @@ func ParseHtpasswd(htpasswdBytes []byte) (Passwds, error) {
|
|||||||
// CreateUser creates a record in the named file with
|
// CreateUser creates a record in the named file with
|
||||||
// the named password and hash algorithm
|
// the named password and hash algorithm
|
||||||
func CreateUser(file, user, passwd string, algo Hasher) error {
|
func CreateUser(file, user, passwd string, algo Hasher) error {
|
||||||
pp, err := ParseHtpasswdFile(file)
|
pp, err := ParseFile(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -71,7 +71,7 @@ func CreateUser(file, user, passwd string, algo Hasher) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return pp.Write(file)
|
return pp.WriteFile(file)
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateUser will create a new user in the given Passwd object
|
// CreateUser will create a new user in the given Passwd object
|
||||||
@@ -91,7 +91,7 @@ func (pp Passwds) CreateUser(user, passwd string, algo Hasher) error {
|
|||||||
// UpdateUser will update the password for the named user
|
// UpdateUser will update the password for the named user
|
||||||
// in the named file
|
// in the named file
|
||||||
func UpdateUser(file, user, passwd string, algo Hasher) error {
|
func UpdateUser(file, user, passwd string, algo Hasher) error {
|
||||||
pp, err := ParseHtpasswdFile(file)
|
pp, err := ParseFile(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -99,7 +99,7 @@ func UpdateUser(file, user, passwd string, algo Hasher) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return pp.Write(file)
|
return pp.WriteFile(file)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UpdateUser will update the password for the named user
|
// UpdateUser will update the password for the named user
|
||||||
@@ -118,7 +118,7 @@ func (pp Passwds) UpdateUser(user, passwd string, algo Hasher) error {
|
|||||||
|
|
||||||
// DeleteUser deletes the named user from the named file
|
// DeleteUser deletes the named user from the named file
|
||||||
func DeleteUser(file, user string) error {
|
func DeleteUser(file, user string) error {
|
||||||
pp, err := ParseHtpasswdFile(file)
|
pp, err := ParseFile(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -127,7 +127,7 @@ func DeleteUser(file, user string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return pp.Write(file)
|
return pp.WriteFile(file)
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeleteUser deletes the named user from the named file
|
// DeleteUser deletes the named user from the named file
|
||||||
@@ -143,7 +143,7 @@ func (pp Passwds) DeleteUser(user string) error {
|
|||||||
// VerifyUser will check if the given user and password are matching
|
// VerifyUser will check if the given user and password are matching
|
||||||
// with the content of the given file
|
// with the content of the given file
|
||||||
func VerifyUser(file, user, passwd string) error {
|
func VerifyUser(file, user, passwd string) error {
|
||||||
pp, err := ParseHtpasswdFile(file)
|
pp, err := ParseFile(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -163,8 +163,8 @@ func (pp Passwds) VerifyUser(user, passwd string) error {
|
|||||||
return alg.Match(passwd, pp[user])
|
return alg.Match(passwd, pp[user])
|
||||||
}
|
}
|
||||||
|
|
||||||
// Write will write the Passwd object to the given file
|
// WriteFile will write the Passwds object to the given file
|
||||||
func (pp Passwds) Write(file string) error {
|
func (pp Passwds) WriteFile(file string) error {
|
||||||
return os.WriteFile(file, pp.Bytes(), os.ModePerm)
|
return os.WriteFile(file, pp.Bytes(), os.ModePerm)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func TestParseHtpasswd(t *testing.T) {
|
func TestParseHtpasswd(t *testing.T) {
|
||||||
passwords, err := ParseHtpasswd([]byte("sha:{SHA}IRRjboXT92QSYXm8lpGPCZUvU1E=\n"))
|
passwords, err := Parse([]byte("sha:{SHA}IRRjboXT92QSYXm8lpGPCZUvU1E=\n"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
@@ -51,7 +51,7 @@ func TestVerifyPassword(t *testing.T) {
|
|||||||
TestCreateUser(t)
|
TestCreateUser(t)
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err = ParseHtpasswdFile(f.Name())
|
_, err = ParseFile(f.Name())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
@@ -83,7 +83,7 @@ func TestVerifyUser(t *testing.T) {
|
|||||||
TestCreateUser(t)
|
TestCreateUser(t)
|
||||||
}
|
}
|
||||||
|
|
||||||
pp, err := ParseHtpasswdFile(f.Name())
|
pp, err := ParseFile(f.Name())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user