forked from Silverfish/proton-bridge
fix: use correct (historical) macOS keychain name
This commit is contained in:
@ -72,11 +72,6 @@ func NewKeychain(s *settings.Settings, keychainName string) (*Keychain, error) {
|
|||||||
return newKeychain(helper, hostURL(keychainName)), nil
|
return newKeychain(helper, hostURL(keychainName)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// hostURL uniquely identifies the app's keychain items within the system keychain.
|
|
||||||
func hostURL(keychainName string) string {
|
|
||||||
return fmt.Sprintf("protonmail/%v/users", keychainName)
|
|
||||||
}
|
|
||||||
|
|
||||||
func newKeychain(helper credentials.Helper, url string) *Keychain {
|
func newKeychain(helper credentials.Helper, url string) *Keychain {
|
||||||
return &Keychain{
|
return &Keychain{
|
||||||
helper: helper,
|
helper: helper,
|
||||||
|
|||||||
30
pkg/keychain/keychain_darwin.go
Normal file
30
pkg/keychain/keychain_darwin.go
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
|
//
|
||||||
|
// This file is part of ProtonMail Bridge.
|
||||||
|
//
|
||||||
|
// ProtonMail Bridge is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// ProtonMail Bridge 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 General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
// +build darwin
|
||||||
|
|
||||||
|
package keychain
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
|
// hostURL uniquely identifies the app's keychain items within the system keychain.
|
||||||
|
func hostURL(keychainName string) string {
|
||||||
|
return fmt.Sprintf("ProtonMail%vService", strings.Title(keychainName))
|
||||||
|
}
|
||||||
@ -15,34 +15,13 @@
|
|||||||
// You should have received a copy of the GNU General Public License
|
// You should have received a copy of the GNU General Public License
|
||||||
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
// Package keychain implements a native secure password store for each platform.
|
// +build !darwin
|
||||||
|
|
||||||
package keychain
|
package keychain
|
||||||
|
|
||||||
import (
|
import "fmt"
|
||||||
"github.com/docker/docker-credential-helpers/credentials"
|
|
||||||
)
|
|
||||||
|
|
||||||
// NewMissingKeychain returns a new keychain that always returns an error.
|
// hostURL uniquely identifies the app's keychain items within the system keychain.
|
||||||
func NewMissingKeychain() *Keychain {
|
func hostURL(keychainName string) string {
|
||||||
return newKeychain(&missingHelper{}, "")
|
return fmt.Sprintf("protonmail/%v/users", keychainName)
|
||||||
}
|
|
||||||
|
|
||||||
// missingHelper is a helper which is used when no other helper is available.
|
|
||||||
// It always returns ErrNoKeychain.
|
|
||||||
type missingHelper struct{}
|
|
||||||
|
|
||||||
func (h *missingHelper) Add(*credentials.Credentials) error {
|
|
||||||
return ErrNoKeychain
|
|
||||||
}
|
|
||||||
|
|
||||||
func (h *missingHelper) Delete(string) error {
|
|
||||||
return ErrNoKeychain
|
|
||||||
}
|
|
||||||
|
|
||||||
func (h *missingHelper) Get(string) (string, string, error) {
|
|
||||||
return "", "", ErrNoKeychain
|
|
||||||
}
|
|
||||||
|
|
||||||
func (h *missingHelper) List() (map[string]string, error) {
|
|
||||||
return nil, ErrNoKeychain
|
|
||||||
}
|
}
|
||||||
|
|||||||
47
pkg/keychain/keychain_missing.go
Normal file
47
pkg/keychain/keychain_missing.go
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
// Copyright (c) 2021 Proton Technologies AG
|
||||||
|
//
|
||||||
|
// This file is part of ProtonMail Bridge.
|
||||||
|
//
|
||||||
|
// ProtonMail Bridge is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// ProtonMail Bridge 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 General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with ProtonMail Bridge. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
package keychain
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/docker/docker-credential-helpers/credentials"
|
||||||
|
)
|
||||||
|
|
||||||
|
// NewMissingKeychain returns a new keychain that always returns an error.
|
||||||
|
func NewMissingKeychain() *Keychain {
|
||||||
|
return newKeychain(&missingHelper{}, "")
|
||||||
|
}
|
||||||
|
|
||||||
|
// missingHelper is a helper which is used when no other helper is available.
|
||||||
|
// It always returns ErrNoKeychain.
|
||||||
|
type missingHelper struct{}
|
||||||
|
|
||||||
|
func (h *missingHelper) Add(*credentials.Credentials) error {
|
||||||
|
return ErrNoKeychain
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *missingHelper) Delete(string) error {
|
||||||
|
return ErrNoKeychain
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *missingHelper) Get(string) (string, string, error) {
|
||||||
|
return "", "", ErrNoKeychain
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *missingHelper) List() (map[string]string, error) {
|
||||||
|
return nil, ErrNoKeychain
|
||||||
|
}
|
||||||
@ -12,3 +12,4 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/)
|
|||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
* GODT-787 GODT-978 Fix IE and Bridge importing to sent not showing up in inbox (setting up flags properly).
|
* GODT-787 GODT-978 Fix IE and Bridge importing to sent not showing up in inbox (setting up flags properly).
|
||||||
|
* GODT-1006 Use correct macOS keychain name.
|
||||||
|
|||||||
Reference in New Issue
Block a user