aboutsummaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2017-05-02 15:21:14 +0200
committerDimitri Sokolyuk <demon@dim13.org>2017-05-02 15:21:14 +0200
commitd45e9ff22001629da6f994e0bf7b2cc02c8d600f (patch)
tree2e23541a7ddff800d8b664117bb7c88c558f9dbb /main.go
parentb6c3c8405873c4d7141712e1037858340bf1689f (diff)
type mode
Diffstat (limited to 'main.go')
-rw-r--r--main.go41
1 files changed, 24 insertions, 17 deletions
diff --git a/main.go b/main.go
index 5950a4d..cdb16fb 100644
--- a/main.go
+++ b/main.go
@@ -5,7 +5,6 @@ import (
"flag"
"fmt"
"io/ioutil"
- "log"
"os"
"dim13.org/signify/ask"
@@ -43,44 +42,52 @@ var (
gzip = flag.Bool("z", false, "Sign and verify gzip archives")
)
+type Mode int
+
const (
- ModeNone = iota
+ ModeNone Mode = iota
ModeCheck
ModeGenerate
ModeSign
ModeVerify
)
+func usage() {
+ flag.Usage()
+ os.Exit(1)
+}
+
+func fatal(err error) {
+ fmt.Println(err)
+ os.Exit(1)
+}
+
func main() {
flag.Parse()
+ var mode Mode
+
if *embedded && *gzip {
- fmt.Println(ErrEZ)
- os.Exit(2)
+ fatal(ErrEZ)
}
- var mode int
-
if *generate {
if mode != ModeNone {
- flag.Usage()
- os.Exit(2)
+ usage()
}
mode = ModeGenerate
}
if *checksum {
if mode != ModeNone {
- flag.Usage()
- os.Exit(2)
+ usage()
}
mode = ModeCheck
}
if *sign {
if mode != ModeNone {
- flag.Usage()
- os.Exit(2)
+ usage()
}
mode = ModeSign
}
@@ -96,18 +103,18 @@ func main() {
switch mode {
case ModeGenerate:
if err := Generate(*pub, *sec, *comment, *nopass); err != nil {
- log.Fatal(err)
+ fatal(err)
}
case ModeSign:
if err := Sign(*msg, *sec, *embedded); err != nil {
- log.Fatal(err)
+ fatal(err)
}
case ModeVerify:
if err := Verify(*msg, *pub, *quiet); err != nil {
- log.Fatal(err)
+ fatal(err)
}
default:
- flag.Usage()
+ usage()
}
}
@@ -251,7 +258,7 @@ func Verify(msgFile, pubFile string, quiet bool) error {
return err
}
if !quiet {
- log.Println("Signature Verfied")
+ fmt.Println("Signature Verfied")
}
return nil
}