Fix wwctl chmod arg parsing.

This commit is contained in:
MatthewHink
2022-01-26 17:03:22 -05:00
parent bc24cb65e3
commit 17bed325c5
2 changed files with 22 additions and 1 deletions

View File

@@ -0,0 +1,21 @@
package chmod
import (
"testing"
)
// TestArgsOverlayChmod is a regression test for 260.
// Two arguments should fail, three should succeed.
func TestArgsOverlayChmod(t *testing.T) {
command := GetCommand()
err := command.Args(command, []string{"overlay_name", "file_name"})
if err == nil {
t.Errorf("two arguments to overlay chmod should fail")
}
err = command.Args(command, []string{"overlay_name", "file_name", "0755"})
if err != nil {
t.Errorf("three arguments to overlay chmod should succeed")
}
}

View File

@@ -17,7 +17,7 @@ func CobraRunE(cmd *cobra.Command, args []string) error {
overlayName := args[0] overlayName := args[0]
fileName := args[1] fileName := args[1]
permissionMode, err := strconv.ParseInt(args[3], 8, 32) permissionMode, err := strconv.ParseUint(args[2], 8, 32)
if err != nil { if err != nil {
wwlog.Printf(wwlog.ERROR, "Could not convert requested mode: %s\n", err) wwlog.Printf(wwlog.ERROR, "Could not convert requested mode: %s\n", err)
os.Exit(1) os.Exit(1)