enableremote: When the remote has creds, update the local creds cache file. Before, the old version of the creds could be left there, and would continue to be used.
This commit is contained in:
parent
3006b79c86
commit
25574bead1
2 changed files with 8 additions and 3 deletions
8
Creds.hs
8
Creds.hs
|
@ -40,8 +40,10 @@ data CredPairStorage = CredPairStorage
|
|||
}
|
||||
|
||||
{- Stores creds in a remote's configuration, if the remote allows
|
||||
- that. Otherwise, caches them locally.
|
||||
- The creds are found in storage if not provided.
|
||||
- that. Also caches them locally.
|
||||
-
|
||||
- The creds are found from the CredPairStorage storage if not provided,
|
||||
- so may be provided by an environment variable etc.
|
||||
-
|
||||
- The remote's configuration should have already had a cipher stored in it
|
||||
- if that's going to be done, so that the creds can be encrypted using the
|
||||
|
@ -54,7 +56,7 @@ setRemoteCredPair encsetup c storage Nothing =
|
|||
setRemoteCredPair _ c storage (Just creds)
|
||||
| embedCreds c = case credPairRemoteKey storage of
|
||||
Nothing -> localcache
|
||||
Just key -> storeconfig key =<< remoteCipher c
|
||||
Just key -> storeconfig key =<< remoteCipher =<< localcache
|
||||
| otherwise = localcache
|
||||
where
|
||||
localcache = do
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue