GNU bug report logs - #10533
24.0.92; pcmpl-ssh-known-hosts - parse hosts with non-standard port numbers

Previous Next

Package: emacs;

Reported by: Mike Lamb <mrlamb <at> gmail.com>

Date: Tue, 17 Jan 2012 17:08:02 UTC

Severity: minor

Tags: patch

Found in version 24.0.92

Fixed in version 24.0.93

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Mike Lamb <mrlamb <at> gmail.com>
Subject: bug#10533: closed (Re: bug#10533: 24.0.92; pcmpl-ssh-known-hosts
 - parse hosts with non-standard port numbers)
Date: Fri, 27 Jan 2012 21:16:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#10533: 24.0.92; pcmpl-ssh-known-hosts - parse hosts with non-standard port numbers

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 10533 <at> debbugs.gnu.org.

-- 
10533: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10533
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Glenn Morris <rgm <at> gnu.org>
To: 10533-done <at> debbugs.gnu.org
Subject: Re: bug#10533: 24.0.92;
	pcmpl-ssh-known-hosts - parse hosts with non-standard port numbers
Date: Fri, 27 Jan 2012 16:14:34 -0500
Version: 24.0.93

Thank you; applied.

[Message part 3 (message/rfc822, inline)]
From: Mike Lamb <mrlamb <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.0.92;
	pcmpl-ssh-known-hosts - parse hosts with non-standard port numbers
Date: Tue, 17 Jan 2012 08:16:30 -0500
This patch extends the regex in pcmpl-ssh-known-hosts to include hosts
that use a non-standard port number.

The description of this syntax in the sshd(8) man page is:
A hostname or address may optionally be enclosed within `[' and `]'
brackets then followed by `:' and a non-standard port number.

Patch:

*** emacs-24.0.92.4/lisp/pcmpl-unix.el	2012-01-16 17:36:24.000000000 -0500
--- emacs-patch/lisp/pcmpl-unix.el	2012-01-16 17:36:42.000000000 -0500
***************
*** 152,164 ****
               (file-readable-p pcmpl-ssh-known-hosts-file))
      (with-temp-buffer
        (insert-file-contents-literally pcmpl-ssh-known-hosts-file)
!       (let (ssh-hosts-list)
!         (while (re-search-forward "^ *\\([-.[:alnum:]]+\\)[, ]" nil t)
!           (add-to-list 'ssh-hosts-list (match-string 1))
            (while (and (looking-back ",")
!                       (re-search-forward "\\([-.[:alnum:]]+\\)[, ]"
                                           (line-end-position) t))
!             (add-to-list 'ssh-hosts-list (match-string 1))))
          ssh-hosts-list))))
  
  (defun pcmpl-ssh-config-hosts ()
--- 152,166 ----
               (file-readable-p pcmpl-ssh-known-hosts-file))
      (with-temp-buffer
        (insert-file-contents-literally pcmpl-ssh-known-hosts-file)
!       (let (ssh-hosts-list
! 	    (host-re "\\(?:\\([-.[:alnum:]]+\\)\\|\\[\\([-.[:alnum:]]+\\)\\]:[0-9]+\\)[, ]")
! )
!         (while (re-search-forward (concat "^ *" host-re) nil t)
!           (add-to-list 'ssh-hosts-list (concat (match-string 1) (match-string 2)))
            (while (and (looking-back ",")
!                       (re-search-forward host-re
                                           (line-end-position) t))
!             (add-to-list 'ssh-hosts-list (concat (match-string 1) (match-string 2)) )))
          ssh-hosts-list))))
  
  (defun pcmpl-ssh-config-hosts ()


Test data for ~/.ssh/known_hosts:

host1 ssh-rsa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
host2,host3 ssh-rsa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
[host4]:2222 ssh-rsa cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
[host5]:2222,[host6]:2222 ssh-rsa dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
10.0.0.1 ssh-rsa eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
10.0.0.2,10.0.0.3 ssh-rsa ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
[10.0.0.4]:2222 ssh-rsa gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
[10.0.0.5]:2222,[10.0.0.6]:2222 ssh-rsa ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff

From emacs -Q:
M-x eshell
ssh TAB

Without patch:
Possible completions are:
10.0.0.3                               10.0.0.2                               10.0.0.1
host3                                  host2                                  host1

With patch:
Possible completions are:
10.0.0.6 	10.0.0.5 	10.0.0.4 	10.0.0.3 	10.0.0.2 	10.0.0.1
host6 	host5 	host4 	host3 	host2 	host1


In GNU Emacs 24.0.92.4 (x86_64-apple-darwin11.2.0)
 of 2012-01-16 on anvil.home
configured using `configure  '--without-x' '--without-ns''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: en_US.UTF-8
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: EShell

Minor modes in effect:
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
ESC [ > 0 ; 9 5 ; c ESC x e s h e l l RET s s h SPC 
TAB DEL SPC TAB DEL DEL DEL DEL DEL ESC x b u g TAB 
TAB DEL DEL DEL DEL DEL DEL DEL DEL DEL DEL DEL DEL 
DEL DEL r e p o r t - b TAB RET

Recent messages:
Loading em-glob...done
Loading em-hist...done
Loading em-ls...done
Loading em-prompt...done
Loading em-script...done
Loading em-term...done
Loading em-unix...done
Hit space to flush [2 times]
delete-backward-char: Text is read-only
Making completion list...

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr message format-spec rfc822 mml mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader
emacsbug help-mode easymenu view pcmpl-unix ansi-color em-unix pcomplete
comint regexp-opt em-term term disp-table ehelp electric em-script
em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl em-basic esh-opt
em-banner em-alias ring esh-var esh-io esh-cmd esh-ext esh-proc esh-arg
eldoc help-fns esh-groups eshell esh-module esh-mode esh-util time-date
ediff-hook vc-hooks lisp-float-type lisp-mode register page menu-bar
rfn-eshadow timer jit-lock font-lock syntax facemenu font-core frame
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese hebrew greek romanian slovak czech european ethiopic
indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple
abbrev minibuffer loaddefs button faces cus-face files text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
multi-tty emacs)



This bug report was last modified 13 years and 170 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.