From 48bf8c1b61b779adf7657596e3835ff009ff13d8 Mon Sep 17 00:00:00 2001 From: Arthur Sengileyev Date: Mon, 9 Jan 2023 14:59:38 +0200 Subject: [PATCH] Accepting absolute Unix paths on Windows for use in Cygwin/msys2 Signed-off-by: Arthur Sengileyev --- pkg/reversesshfs/reversesshfs.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/reversesshfs/reversesshfs.go b/pkg/reversesshfs/reversesshfs.go index 130c2b1..3cdbed7 100644 --- a/pkg/reversesshfs/reversesshfs.go +++ b/pkg/reversesshfs/reversesshfs.go @@ -125,9 +125,12 @@ func DetectDriver(explicitOpensshSftpServerBinary string) (Driver, string, error func (rsf *ReverseSSHFS) Start() error { sshBinary := rsf.SSHConfig.Binary() sshArgs := rsf.SSHConfig.Args() - if !filepath.IsAbs(rsf.LocalPath) { + if !filepath.IsAbs(rsf.LocalPath) && !path.IsAbs(rsf.LocalPath) { return fmt.Errorf("unexpected relative path: %q", rsf.LocalPath) } + if runtime.GOOS == "windows" && path.IsAbs(rsf.LocalPath) { + logrus.Infof("Accepting %q Unix path, assuming Cygwin/msys2 OpenSSH", rsf.LocalPath) + } if !path.IsAbs(rsf.RemotePath) { return fmt.Errorf("unexpected relative path: %q", rsf.RemotePath) }