Преглед на файлове

Fix 756 SSH command line parsing error to write to user instead of stderr (#757)

brad-defined преди 2 години
родител
ревизия
9a8892c526
променени са 1 файла, в които са добавени 7 реда и са изтрити 2 реда
  1. 7 2
      sshd/command.go

+ 7 - 2
sshd/command.go

@@ -40,8 +40,13 @@ func execCommand(c *Command, args []string, w StringWriter) error {
 	if c.Flags != nil {
 		fl, fs = c.Flags()
 		if fl != nil {
-			//TODO: handle the error
-			fl.Parse(args)
+			// SetOutput() here in case fl.Parse dumps usage.
+			fl.SetOutput(w.GetWriter())
+			err := fl.Parse(args)
+			if err != nil {
+				// fl.Parse has dumped error information to the user via the w writer.
+				return err
+			}
 			args = fl.Args()
 		}
 	}