package main import ( "fmt" "os" ) func usage() { fmt.Print("Usage:") fmt.Println("\tsignify -C [-q] -p pubkey -x sigfile [file ...]") fmt.Println("\tsignify -G [-n] [-c comment] -p pubkey -s seckey") fmt.Println("\tsignify -S [-ez] [-x sigfile] -s seckey -m message") fmt.Println("\tsignify -V [-eqz] [-p pubkey] [-t keytype] [-x sigfile] -m message") os.Exit(2) } var modes = map[string]func() error{ "-C": check, "-G": generate, "-S": sign, "-V": verify, } func main() { if len(os.Args) < 2 { usage() } mode, ok := modes[os.Args[1]] if !ok { usage() } if err := mode(); err != nil { fmt.Println(err) os.Exit(1) } }