<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>5429</bug_id>
          
          <creation_ts>2004-11-02 10:41:44 +0300</creation_ts>
          <short_desc>&quot;Неправильно&quot; дополняются хосты для ssh/scp</short_desc>
          <delta_ts>2005-10-26 23:38:52 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>zsh</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sir Raorn">raorn</reporter>
          <assigned_to name="Fr. Br. George">george</assigned_to>
          <cc>arseny</cc>
    
    <cc>george</cc>
    
    <cc>mike</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>19558</commentid>
    <comment_count>0</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2004-11-02 10:41:44 +0300</bug_when>
    <thetext>Имена хостов берутся из /etc/hosts.  Для ssh/scp есть более &quot;доверенный&quot; источник:

10:19 &lt;icct&gt; уважаемые, напомните строчку для zsh чтоб дополняла host в ssh
10:20 &lt;virtuoso&gt; zstyle &apos;:completion:*:hosts&apos; hosts $hosts
10:20 &lt;virtuoso&gt; Где hosts=(${${${${(f)&quot;$(&lt;$HOME/.ssh/known_hosts)&quot;}:#[0-9]*}%%\
*}%%,*})
10:20 &lt;virtuoso&gt; Например. :)

Эти команды работают (будучи помещёнными в ~/.zshrc), но хотелось бы из коробки.
(hosts= в одну строку, после &apos;\&apos; идёт пробел)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>22571</commentid>
    <comment_count>1</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2005-03-16 21:10:56 +0300</bug_when>
    <thetext>There&apos;s a few problems with what you propose.  First, it is to fail when
~/.ssh/known_hosts is nonexistent.  Second, I&apos;m not sure I want to override
hosts style for all commands, not just for ssh and scp.  Anyway, this is going
to get too complicated for /etc/zshrc.  Maybe there should be a separate file,
perhaps in /etc/zshrc.d.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>22574</commentid>
    <comment_count>2</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2005-03-16 23:02:54 +0300</bug_when>
    <thetext>Separate file должен быть в районе /usr/share/zsh/Completion/Unix/_sshhosts, но
у меня сходу не получилось научить _ssh_hosts брать hosts из
~/.ssh/known_hosts... Будем надеяться, что LATER кто-ньдь что-ньдь сделает. 
Например я разберусь с zsh Completion System...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27203</commentid>
    <comment_count>3</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2005-07-13 00:36:31 +0400</bug_when>
    <thetext>LATER наступило.  Патчи в аттачах.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27204</commentid>
    <comment_count>4</comment_count>
      <attachid>983</attachid>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2005-07-13 00:37:49 +0400</bug_when>
    <thetext>Created attachment 983
Патч для /usr/share/zsh/Completion/Unix/_ssh</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27205</commentid>
    <comment_count>5</comment_count>
      <attachid>984</attachid>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2005-07-13 00:39:30 +0400</bug_when>
    <thetext>Created attachment 984
/usr/share/zsh/Completion/Unix/_known_hosts

Из ~/.zsh/functions почему-то не autoload&apos;ится.  Почему - пока не понял.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27206</commentid>
    <comment_count>6</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2005-07-13 00:43:38 +0400</bug_when>
    <thetext>Смысл такой:

Перебираем ssh_config в составе /etc/ssh/ssh_config /etc/ssh2/ssh_config
/etc/openssh/ssh_config $HOME/.ssh/config $HOME/.ssh/config, из каждого файла
выцепляем параметры:

1. Host с non-pattern аргументом, добавляем к списку вариантов.
2. Global/UserKnownHostsFile, если не определено, используем
/etc/ssh/ssh_known_hosts /etc/ssh/ssh_known_hosts2 /etc/known_hosts
/etc/known_hosts2 $HOME/.ssh/known_hosts $HOME/.ssh/known_hosts2, и выдираем из
этих файлов хосты.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27207</commentid>
    <comment_count>7</comment_count>
      <attachid>985</attachid>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2005-07-13 00:51:58 +0400</bug_when>
    <thetext>Created attachment 985
/usr/share/zsh/Completion/Unix/_known_hosts</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27209</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-07-13 09:11:42 +0400</bug_when>
    <thetext>о та!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27384</commentid>
    <comment_count>9</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2005-07-18 12:09:20 +0400</bug_when>
    <thetext>$HOME/.ssh/known_hosts listed twice in &quot;for&quot; loop condition.  Did you mean
$HOME/.ssh/known_hosts2?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27385</commentid>
    <comment_count>10</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2005-07-18 12:10:37 +0400</bug_when>
    <thetext>I mean &quot;config2&quot;.
-    for f in /etc/ssh/ssh_config /etc/ssh2/ssh_config /etc/openssh/ssh_config
$HOME/.ssh/config $HOME/.ssh/config; do
+    for f in /etc/ssh/ssh_config /etc/ssh2/ssh_config /etc/openssh/ssh_config
$HOME/.ssh/config $HOME/.ssh/config2; do

?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27386</commentid>
    <comment_count>11</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2005-07-18 12:23:21 +0400</bug_when>
    <thetext>(In reply to comment #10)
&gt; I mean &quot;config2&quot;.

My mistake.  ~/.ssh2/config.

I think these paths must be sanitized.  I&apos;ve loooked into
/etc/bash_completion(_known_hosts) and added /etc/openssh/.  I&apos;m not sure where
&quot;popular&quot; ssh implementations keeps their configs.  Original list:

Config:
/etc/ssh/ssh_config ~/.ssh/config ~/.ssh2/config

Global known_hosts:
/etc/ssh/ssh_known_hosts /etc/ssh/ssh_known_hosts2 /etc/known_hosts
/etc/known_hosts2 /etc/ssh2/knownhosts/*pub

User known_hosts:
~/.ssh/known_hosts ~/.ssh/known_hosts2 ~/.ssh2/hostkeys/*pub

knownhosts/hostkeys directories is not supported (yet?).  Also missing
/usr/local/etc/ paths that can be used on *BSD.

P.S. Is there any way to determine ssh config/known_hosts file at runtime?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27574</commentid>
    <comment_count>12</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2005-07-21 23:39:46 +0400</bug_when>
    <thetext>Fixed in zsh-4.3.0-alt0.2.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>983</attachid>
            <date>2005-07-13 00:37:49 +0400</date>
            <delta_ts>2005-07-13 00:37:49 +0400</delta_ts>
            <desc>Патч для /usr/share/zsh/Completion/Unix/_ssh</desc>
            <filename>_ssh.diff</filename>
            <type>text/plain</type>
            <size>522</size>
            <attacher name="Sir Raorn">raorn</attacher>
            
              <data encoding="base64">LS0tIF9zc2h+CTIwMDUtMDUtMDkgMDk6Mjc6MDMgKzA0MDAKKysrIF9zc2gJMjAwNS0wNy0xMiAy
MDo1NDoxNCArMDQwMApAQCAtMzEyLDEwICszMTIsMTAgQEAKIAogX3NzaF9ob3N0cyAoKSB7CiAg
IGlmIFtbICIkSVBSRUZJWCIgPT0gKkAgXV07IHRoZW4KLSAgICBfY29tYmluYXRpb24gLXMgJ1s6
QF0nIG15LWFjY291bnRzIHVzZXJzLWhvc3RzICJ1c2Vycz0ke0lQUkVGSVgvQH0iIGhvc3RzICIk
QCIKKyAgICBfY29tYmluYXRpb24gLXMgJ1s6QF0nIG15LWFjY291bnRzIHVzZXJzLWhvc3RzICJ1
c2Vycz0ke0lQUkVGSVgvQH0iIGtub3duX2hvc3RzICIkQCIKICAgZWxzZQogICAgIF9jb21iaW5h
dGlvbiAtcyAnWzpAXScgbXktYWNjb3VudHMgdXNlcnMtaG9zdHMgXAotICAgICAgJHtvcHRfYXJn
c1stbF06KyJ1c2Vycz0ke29wdF9hcmdzWy1sXTpxfSJ9IGhvc3RzICIkQCIKKyAgICAgICR7b3B0
X2FyZ3NbLWxdOisidXNlcnM9JHtvcHRfYXJnc1stbF06cX0ifSBrbm93bl9ob3N0cyAiJEAiCiAg
IGZpCiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>984</attachid>
            <date>2005-07-13 00:39:30 +0400</date>
            <delta_ts>2005-07-13 00:51:58 +0400</delta_ts>
            <desc>/usr/share/zsh/Completion/Unix/_known_hosts</desc>
            <filename>_known_hosts</filename>
            <type>text/plain</type>
            <size>1130</size>
            <attacher name="Sir Raorn">raorn</attacher>
            
              <data encoding="base64">I2F1dG9sb2FkCgpsb2NhbCBleHBsIGtub3duX2hvc3RzIGhvc3RzZmlsZXMgZiB0bXAKCmlmICEg
enN0eWxlIC1hICI6Y29tcGxldGlvbjoke2N1cmNvbnRleHR9Omhvc3RzIiBob3N0cyBrbm93bl9o
b3N0czsgdGhlbgogICgoICQrX2NhY2hlX2tub3duX2hvc3RzICkpIHx8IHsKICAgICMgRmluZCBz
c2hfY29uZmlnCiAgICBob3N0c2ZpbGVzPSggKQogICAgX2NhY2hlX2tub3duX2hvc3RzPSggKQog
ICAgZm9yIGYgaW4gL2V0Yy9zc2gvc3NoX2NvbmZpZyAvZXRjL3NzaDIvc3NoX2NvbmZpZyAvZXRj
L29wZW5zc2gvc3NoX2NvbmZpZyAkSE9NRS8uc3NoL2NvbmZpZyAkSE9NRS8uc3NoL2NvbmZpZzsg
ZG8KICAgICAgW1sgLXIgIiRmIiBdXSB8fCBjb250aW51ZQogICAgICBob3N0c2ZpbGVzKz0oICR7
JHskeyhNKSR7KGYpIiQoPCIkZiIpIn06IygjaSkoR2xvYmFsfFVzZXIpS25vd25Ib3N0c0ZpbGUq
fSMjKCNpKShHbG9iYWx8VXNlcilLbm93bkhvc3RzRmlsZVtbOmJsYW5rOl1dI30lJVtbOmJsYW5r
Ol1dI1sjXSp9KQogICAgICBfY2FjaGVfa25vd25faG9zdHMrPSggJHskeyR7KE0pJHsoZikiJCg8
IiRmIikifTojKCNpKUhvc3RbWzpibGFuazpdXSMjKFteKj9dIyMpfSMjKCNpKUhvc3RbWzpibGFu
azpdXSN9JSVbWzpibGFuazpdXSNbI10qfSApCiAgICBkb25lCiAgICA6ICR7KEEpPWhvc3RzZmls
ZXM6PS9ldGMvc3NoL3NzaF9rbm93bl9ob3N0cyAvZXRjL3NzaC9zc2hfa25vd25faG9zdHMyIC9l
dGMva25vd25faG9zdHMgL2V0Yy9rbm93bl9ob3N0czIgJEhPTUUvLnNzaC9rbm93bl9ob3N0cyAk
SE9NRS8uc3NoL2tub3duX2hvc3RzMn0KICAgIGZvciBmIGluICIkeyhAKWhvc3RzZmlsZXN9Ijsg
ZG8KICAgICAgW1sgLXIgIiRmIiBdXSB8fCBjb250aW51ZQogICAgICBfY2FjaGVfa25vd25faG9z
dHMrPSggJHskeyR7JHsoZikiJCg8IiRmIikifTojWzAtOV0qfSUlXCAqfSUlLCp9ICkKICAgIGRv
bmUKICB9CgogIGtub3duX2hvc3RzPSggIiR7KEApX2NhY2hlX2tub3duX2hvc3RzfSIgKQpmaQoK
X3dhbnRlZCBrbm93bl9ob3N0cyBleHBsIGhvc3QgXAogICAgY29tcGFkZCAtTSAnbTp7YS16QS1a
fT17QS1aYS16fSByOnwuPSogcjp8PSonIC1hICIkQCIgLSBrbm93bl9ob3N0cwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>985</attachid>
            <date>2005-07-13 00:51:58 +0400</date>
            <delta_ts>2005-07-13 00:51:58 +0400</delta_ts>
            <desc>/usr/share/zsh/Completion/Unix/_known_hosts</desc>
            <filename>_known_hosts</filename>
            <type>text/plain</type>
            <size>1131</size>
            <attacher name="Sir Raorn">raorn</attacher>
            
              <data encoding="base64">I2F1dG9sb2FkCgpsb2NhbCBleHBsIGtub3duX2hvc3RzIGhvc3RzZmlsZXMgZiB0bXAKCmlmICEg
enN0eWxlIC1hICI6Y29tcGxldGlvbjoke2N1cmNvbnRleHR9Omhvc3RzIiBob3N0cyBrbm93bl9o
b3N0czsgdGhlbgogICgoICQrX2NhY2hlX2tub3duX2hvc3RzICkpIHx8IHsKICAgICMgRmluZCBz
c2hfY29uZmlnCiAgICBob3N0c2ZpbGVzPSggKQogICAgX2NhY2hlX2tub3duX2hvc3RzPSggKQog
ICAgZm9yIGYgaW4gL2V0Yy9zc2gvc3NoX2NvbmZpZyAvZXRjL3NzaDIvc3NoX2NvbmZpZyAvZXRj
L29wZW5zc2gvc3NoX2NvbmZpZyAkSE9NRS8uc3NoL2NvbmZpZyAkSE9NRS8uc3NoL2NvbmZpZzsg
ZG8KICAgICAgW1sgLXIgIiRmIiBdXSB8fCBjb250aW51ZQogICAgICBob3N0c2ZpbGVzKz0oICR7
JHskeyhNKSR7KGYpIiQoPCIkZiIpIn06IygjaSkoR2xvYmFsfFVzZXIpS25vd25Ib3N0c0ZpbGUq
fSMjKCNpKShHbG9iYWx8VXNlcilLbm93bkhvc3RzRmlsZVtbOmJsYW5rOl1dI30lJVtbOmJsYW5r
Ol1dI1sjXSp9KQogICAgICBfY2FjaGVfa25vd25faG9zdHMrPSggJHs9JHskeyhNKSR7KGYpIiQo
PCIkZiIpIn06IygjaSlIb3N0W1s6Ymxhbms6XV0jIyhbXio/XSMjKX0jIygjaSlIb3N0W1s6Ymxh
bms6XV0jfSUlW1s6Ymxhbms6XV0jWyNdKn0gKQogICAgZG9uZQogICAgOiAkeyhBKT1ob3N0c2Zp
bGVzOj0vZXRjL3NzaC9zc2hfa25vd25faG9zdHMgL2V0Yy9zc2gvc3NoX2tub3duX2hvc3RzMiAv
ZXRjL2tub3duX2hvc3RzIC9ldGMva25vd25faG9zdHMyICRIT01FLy5zc2gva25vd25faG9zdHMg
JEhPTUUvLnNzaC9rbm93bl9ob3N0czJ9CiAgICBmb3IgZiBpbiAiJHsoQClob3N0c2ZpbGVzfSI7
IGRvCiAgICAgIFtbIC1yICIkZiIgXV0gfHwgY29udGludWUKICAgICAgX2NhY2hlX2tub3duX2hv
c3RzKz0oICR7JHskeyR7KGYpIiQoPCIkZiIpIn06I1swLTldKn0lJVwgKn0lJSwqfSApCiAgICBk
b25lCiAgfQoKICBrbm93bl9ob3N0cz0oICIkeyhAKV9jYWNoZV9rbm93bl9ob3N0c30iICkKZmkK
Cl93YW50ZWQga25vd25faG9zdHMgZXhwbCBob3N0IFwKICAgIGNvbXBhZGQgLU0gJ206e2EtekEt
Wn09e0EtWmEten0gcjp8Lj0qIHI6fD0qJyAtYSAiJEAiIC0ga25vd25faG9zdHMK
</data>

          </attachment>
      

    </bug>

</bugzilla>