Skip to content

Commit

Permalink
Merge pull request #1 from davcosentino/fix/username-slash
Browse files Browse the repository at this point in the history
Fix username slash issue
  • Loading branch information
davcosentino authored May 9, 2023
2 parents da93839 + c92d578 commit 470cc84
Showing 1 changed file with 16 additions and 2 deletions.
18 changes: 16 additions & 2 deletions pass/pass.go
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,12 @@ func (p Pass) Add(creds *credentials.Credentials) error {

encoded := base64.URLEncoding.EncodeToString([]byte(creds.ServerURL))

_, err := p.runPass(creds.Secret, "insert", "-f", "-m", path.Join(PASS_FOLDER, encoded, creds.Username))
username := creds.Username
if strings.Contains(username, "/") {
username = base64.URLEncoding.EncodeToString([]byte(creds.Username))
}

_, err := p.runPass(creds.Secret, "insert", "-f", "-m", path.Join(PASS_FOLDER, encoded, username))
return err
}

Expand Down Expand Up @@ -160,8 +165,13 @@ func (p Pass) Get(serverURL string) (string, string, error) {
}

actual := strings.TrimSuffix(usernames[0].Name(), ".gpg")
username := actual
decodedUsername, err := base64.URLEncoding.DecodeString(actual)
if err == nil {
username = string(decodedUsername)
}
secret, err := p.runPass("", "show", path.Join(PASS_FOLDER, encoded, actual))
return actual, secret, err
return username, secret, err
}

// List returns the stored URLs and corresponding usernames for a given credentials label
Expand Down Expand Up @@ -193,6 +203,10 @@ func (p Pass) List() (map[string]string, error) {
}

resp[string(serverURL)] = strings.TrimSuffix(usernames[0].Name(), ".gpg")
decodedUsername, err := base64.URLEncoding.DecodeString(strings.TrimSuffix(usernames[0].Name(), ".gpg"))
if err == nil {
resp[string(serverURL)] = string(decodedUsername)
}
}

return resp, nil
Expand Down

0 comments on commit 470cc84

Please sign in to comment.