diff options
Diffstat (limited to 'Assistant/Pairing')
-rw-r--r-- | Assistant/Pairing/MakeRemote.hs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Assistant/Pairing/MakeRemote.hs b/Assistant/Pairing/MakeRemote.hs index 9e65f4d13..1b39fcff7 100644 --- a/Assistant/Pairing/MakeRemote.hs +++ b/Assistant/Pairing/MakeRemote.hs @@ -19,6 +19,16 @@ import Assistant.MakeRemote import Network.Socket import qualified Data.Text as T +{- Authorized keys are set up before pairing is complete, so that the other + - side can immediately begin syncing. -} +setupAuthorizedKeys :: PairMsg -> IO () +setupAuthorizedKeys msg = do + validateSshPubKey pubkey + unlessM (liftIO $ addAuthorizedKeys False pubkey) $ + error "failed setting up ssh authorized keys" + where + pubkey = remoteSshPubKey $ pairMsgData msg + {- When pairing is complete, this is used to set up the remote for the host - we paired with. -} finishedPairing :: ThreadState -> DaemonStatusHandle -> ScanRemoteMap -> PairMsg -> SshKeyPair -> IO () |