diff options
| author | Jakob Unterwurzacher | 2016-10-10 20:21:52 +0200 | 
|---|---|---|
| committer | Jakob Unterwurzacher | 2016-10-10 20:57:35 +0200 | 
| commit | c8e5dc9844dbdb7fbd48c8409b37926900d4c5fc (patch) | |
| tree | de22b9354207b615ceaada41609c153dc84014c4 | |
| parent | 7b2049c7698325a6a0ef965b6fb7a2fa94e3329b (diff) | |
main: show "-o" in the help text
Binds it to a dummy variable so it appears in the help text.
| -rw-r--r-- | cli_args.go | 20 | ||||
| -rw-r--r-- | tests/normal/cli_test.go | 1 | 
2 files changed, 15 insertions, 6 deletions
| diff --git a/cli_args.go b/cli_args.go index ef1ca09..036de9b 100644 --- a/cli_args.go +++ b/cli_args.go @@ -61,6 +61,10 @@ func prefixOArgs(osArgs []string) []string {  		if o == "" {  			continue  		} +		if o == "o" || o == "-o" { +			tlog.Fatal.Printf("You can't pass \"-o\" to \"-o\"") +			os.Exit(ErrExitUsage) +		}  		newArgs = append(newArgs, "-"+o)  	}  	// Add other arguments @@ -111,19 +115,23 @@ func parseCliOpts() (args argContainer) {  	flagSet.IntVar(&args.scryptn, "scryptn", configfile.ScryptDefaultLogN, "scrypt cost parameter logN. "+  		"Setting this to a lower value speeds up mounting but makes the password susceptible to brute-force attacks")  	// Ignored otions -	var ignoredBool bool +	var dummyBool bool  	ignoreText := "(ignored for compatability)" -	flagSet.BoolVar(&ignoredBool, "rw", false, ignoreText) -	flagSet.BoolVar(&ignoredBool, "nosuid", false, ignoreText) -	flagSet.BoolVar(&ignoredBool, "nodev", false, ignoreText) +	flagSet.BoolVar(&dummyBool, "rw", false, ignoreText) +	flagSet.BoolVar(&dummyBool, "nosuid", false, ignoreText) +	flagSet.BoolVar(&dummyBool, "nodev", false, ignoreText) +	var dummyString string +	flagSet.StringVar(&dummyString, "o", "", "For compatability, all options can be also passed as a comma-separated list to -o.")  	// Actual parsing  	err = flagSet.Parse(os.Args[1:]) +	if err == flag.ErrHelp { +		os.Exit(0) +	}  	if err != nil {  		tlog.Warn.Printf("You passed: %s", prettyArgs())  		tlog.Fatal.Printf("%v", err) -		os.Exit(2) +		os.Exit(ErrExitUsage)  	} -  	// "-openssl" needs some post-processing  	if opensslAuto == "auto" {  		args.openssl = prefer_openssl.PreferOpenSSL() diff --git a/tests/normal/cli_test.go b/tests/normal/cli_test.go index bbb45ae..18c0bd9 100644 --- a/tests/normal/cli_test.go +++ b/tests/normal/cli_test.go @@ -178,6 +178,7 @@ func TestShadows(t *testing.T) {  		t.Fatal(err)  	}  	// This should work +	// (note that MountOrFatal creates "mnt" again)  	test_helpers.MountOrFatal(t, cipher, mnt, "-extpass=echo test")  	test_helpers.UnmountPanic(mnt)  	cipher2 := mnt + "/cipher" | 
