mirror of
https://github.com/ProtonMail/proton-bridge.git
synced 2025-12-10 04:36:43 +00:00
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
|
||||
}
|
||||
|
||||
// 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 {
|
||||
return &Keychain{
|
||||
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
|
||||
// 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
|
||||
|
||||
import (
|
||||
"github.com/docker/docker-credential-helpers/credentials"
|
||||
)
|
||||
import "fmt"
|
||||
|
||||
// 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
|
||||
// hostURL uniquely identifies the app's keychain items within the system keychain.
|
||||
func hostURL(keychainName string) string {
|
||||
return fmt.Sprintf("protonmail/%v/users", keychainName)
|
||||
}
|
||||
|
||||
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
|
||||
* 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