From 71048681d402d5f692bf293a2785dc83fb32d384 Mon Sep 17 00:00:00 2001 From: Joe Crayne Date: Sat, 9 May 2020 20:59:11 -0400 Subject: Added sign command to make detached signatures. --- kiki.hs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'kiki.hs') diff --git a/kiki.hs b/kiki.hs index 1138b7a..fe9a979 100644 --- a/kiki.hs +++ b/kiki.hs @@ -1636,6 +1636,21 @@ kiki "verify" argvals = Left er -> hPutStrLn stderr $ usageErrorMessage er Right io -> io +kiki "sign" args | "--help" `elem` args = do + putStr . unlines $ + [ "kiki sign [--homedir HOMEDIR | --homeless] [[--keyring FILE] ...] --with-key KEYID FILE" + ] +kiki "sign" argvals = + let opts = [("--homedir",1),("--keyring",1),("--homeless",0),("--with-key",1)] + in case runArgs (parseInvocation (fancy opts [] "") argvals) + (signFile <$> flag "--homeless" + <*> dashdashHomedir + <*> args "--keyring" + <*> arg "--with-key" + <*> param 0) of + Left er -> hPutStrLn stderr $ usageErrorMessage er + Right io -> io + kiki cmd args = hPutStrLn stderr $ "I don't know how to "++cmd++"." sshkeyname :: Packet -> [FilePath] @@ -1684,6 +1699,7 @@ commands = -- also repairs signature and adds missing cross-certification. , ( "tar", "import or export system key files in tar format" ) , ( "verify", "Check a clear-sign pgp signature." ) + , ( "sign", "Create a detached signature for a given file.") ] main :: IO () -- cgit v1.2.3