func remoteStandardio( s *ssh.Session) (io.WriteCloser, io.Reader, io.Reader, string) { var stdin io.WriteCloser var stdout io.Reader var stderr io.Reader var err error // plumb into standard input if stdin, err = s.StdinPipe(); err != nil { return nil, nil, nil, fmt.Sprintf("Error: %v\n", err) } // plumb into standard output if stdout, err = s.StdoutPipe(); err != nil { return nil, nil, nil, fmt.Sprintf("Error: %v\n", err) } // plumb into standard error if stderr, err = s.StderrPipe(); err != nil { return nil, nil, nil, fmt.Sprintf("Error: %v\n", err) } return stdin, stdout, stderr, "" }