summary refs log tree commit diff
path: root/Completion
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2002-09-03 12:28:41 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2002-09-03 12:28:41 +0000
commitbb9a3f1e011bc20e39ac520cabd294a562ef87f1 (patch)
treee8886b9360c0688718e005bc2a1aa2f679134d83 /Completion
parent227194d7e09c21033790e20791295e19935e72db (diff)
downloadzsh-bb9a3f1e011bc20e39ac520cabd294a562ef87f1.tar.gz
zsh-bb9a3f1e011bc20e39ac520cabd294a562ef87f1.tar.xz
zsh-bb9a3f1e011bc20e39ac520cabd294a562ef87f1.zip
17607: pass on options for port no to ssh when getting remote files for scp
Diffstat (limited to 'Completion')
-rw-r--r--Completion/Unix/Command/_ssh7
1 files changed, 4 insertions, 3 deletions
diff --git a/Completion/Unix/Command/_ssh b/Completion/Unix/Command/_ssh
index 80f4100c9..692a9b5cf 100644
--- a/Completion/Unix/Command/_ssh
+++ b/Completion/Unix/Command/_ssh
@@ -2,10 +2,11 @@
 
 _remote_files () {
   # There should be coloring based on all the different ls -F classifiers.
-  local expl remfiles remdispf remdispd suf ret=1
+  local expl remfiles remdispf remdispd args suf ret=1
 
   if zstyle -T ":completion:${curcontext}:" remote-access; then
-    remfiles=(${(M)${(f)"$(ssh -a -x ${words[CURRENT]%%:*} ls -d1F ${PREFIX%%[^./][^/]#}\* 2>/dev/null)"}%%[^/]#(|/)})
+    zparseopts -D -E -a args p: 1 2 4 6
+    remfiles=(${(M)${(f)"$(ssh $args -a -x ${words[CURRENT]%%:*} ls -d1F ${PREFIX%%[^./][^/]#}\* 2>/dev/null)"}%%[^/]#(|/)})
     compset -P '*/'
     compset -S '/*' || suf='remote file'
 
@@ -262,7 +263,7 @@ _ssh () {
       ;;
     file)
       if compset -P '*:'; then
-        _remote_files && ret=0
+        _remote_files ${(kv)opt_args[(I)-[P1246]]/-P/-p} && ret=0
       elif compset -P '*@'; then
         _wanted hosts expl host _ssh_hosts -S: && ret=0
       else