[Mew-dist 14819] mew-prog-ssh

Chifumi Hayashi ( 林 千史 ) chifumi at example.com
2000年 10月 31日 (火) 00:34:02 JST


林です。

In <20000831.061314.85420237.chifumi at example.com>,
On Thu, 31 Aug 2000 20:57:13 +0900,
Chifumi Hayashi (林 千史) <chifumi at example.com> wrote:

> どうせやるなら最新の 2.3.0、ということで、「クライアントだけ」ssh2 という名前で
> 作ってみました。
> 
> | $ ssh2 -V
> | ssh2: SSH Secure Shell 2.3.0 (non-commercial version) on i686-pc-linux-gnu
> 
> # はっきり「non-commercial version」と出ていますね。
> 
> .mew で「(setq mew-prog-ssh "ssh2")」しておいて問題のメールを取り込んでみると、
> 問題なく取得できました。

問題となっていた ISP (の POP over SSH)についてはこれで良いのですが、
別の ISP (の SMTP over SSH)を使う場合に、

> > ssh-2.3.0 では、Linux, FreeBSD, NetBSD, OpenBSD でならば商用・非商用を
> > 問わずインストール&使用が可能になりました。しかし、それ以外では条件が
> > あります。
> 
> というようなことが、まさに「気が進まない」最大の理由だったりします。

ということで やはり OpenSSH を使いたくて、mew-prog-ssh を 
mew-config-alist で切替えられるように下記の patch を使って来ました。
(毎回 (mew-ssh-setup) で mew-ssh-ver を調べているのがちょっと気に入りませんが)

--- mew-config.el.orig	Mon Oct 23 21:02:46 2000
+++ mew-config.el	Mon Oct 23 23:57:59 2000
@@ -206,6 +206,11 @@
 (defun mew-header-alist (&optional case)
   (mew-cfent-value case "header-alist" mew-header-alist))
 
+;;
+
+(defun mew-prog-ssh (&optional case)
+  (mew-cfent-value case "prog-ssh" mew-prog-ssh))
+
 ;;;
 ;;; Setting Config
 ;;;

--- mew-pop.el.orig	Thu Oct 19 16:47:35 2000
+++ mew-pop.el	Mon Oct 23 23:57:59 2000
@@ -171,6 +171,7 @@
 	 (port (mew-pop-port case))
 	 (sshsrv (mew-pop-ssh-server case))
 	 (pnm (mew-pop-process-name server sshsrv))
+	 (mew-prog-ssh (mew-prog-ssh case))
 	 (process (get-process pnm))
 	 (ret t)
 	 (buf (get-buffer-create (mew-pop-buffer-name pnm)))
@@ -182,6 +183,7 @@
       (if (not (string-match "^[0-9]+$" port))
 	  (setq port "110")) ;; ssh rejects a symbol port name
       (mew-pop-set-port pnm port)
+      (mew-ssh-setup)
       (setq sshpro (mew-open-ssh-stream server port sshsrv))
       (mew-pop-set-ssh-process pnm sshpro)
       (if (null sshpro)

--- mew-smtp.el.orig	Mon Oct 23 20:58:26 2000
+++ mew-smtp.el	Mon Oct 23 23:57:59 2000
@@ -150,6 +150,7 @@
 	    (setq process (mew-smtp-open pnm server port))
 	  (if (not (string-match "^[0-9]+$" port))
 	      (setq port "25")) ;; ssh rejects a symbol port name
+	  (mew-ssh-setup)
 	  (setq sshpro (mew-open-ssh-stream server port sshsrv))
 	  (mew-smtp-set-ssh-process pnm sshpro)
 	  (if (null sshpro)

--- mew-encode.el.orig	Mon Oct 23 20:58:26 2000
+++ mew-encode.el	Mon Oct 23 23:57:59 2000
@@ -195,6 +195,7 @@
 	 (time (current-time)))
     (setq mew-draft-smtp-server (mew-smtp-server case))
     (setq mew-draft-smtp-port (mew-smtp-port case))
+    (setq mew-prog-ssh (mew-prog-ssh case))
     (setq mew-draft-smtp-ssh-server (mew-smtp-ssh-server case))
     (setq mew-draft-smtp-helo-domain (mew-smtp-helo-domain case))
     (setq mew-draft-smtp-user (mew-smtp-user case))


本当は問題の ISP でも SMTP over SSH では OpenSSH を使いたいくらいなので、
mew-prog-ssh-arg と同様に

In <20001024.144244.10323879.kazu at example.com>,
On Tue, 24 Oct 2000 14:43:45 +0900,
Kazu Yamamoto (山本和彦) <kazu at example.com> wrote:

kazu> そもそも、POP と SMTP で同じ設定でよいのかという疑問もあります。
kazu> 
kazu> {case1, case2, ...} x {POP, SMTP, ...}

ということになるのだと思います。


In <20001030004938.36B247E56 at example.com>,
On Mon, 30 Oct 2000 09:53:01 +0900,
Jun-ichiro itojun Hagino <itojun at example.com> wrote:

itojun> 	(mewのどこでssh versionを認識する必要があるのかよくわかっていない
itojun> 	わたし...)

| (defun mew-open-ssh-stream (server port sshserver)
|   "Open SSH stream for SERVER's PORT via SSHSHERVER.
| This function returns a process when a SSH connection is created
| successfully. A local port number can be obtained the process name
| after '/'. "
...
| 	    (setq pro (apply
| 		       (function start-process)
| 		       name nil
| 		       mew-prog-ssh "-x" "-v"
| 		       "-o" (concat 
| 			     (if (= mew-ssh-ver 2)
| 				 "NumberOfPasswordPrompts " ;; OpenSSH style
| 			       "NumberOfPasswordPrompts=")  ;; SSH style
| 			     (int-to-string mew-ssh-number-of-password-prompts))
| 		       (format "-L%d:%s:%s" localport server port)
| 		       sshserver
| 		       mew-prog-ssh-arg))

の部分だけのような気がします。
今となっては (setq mew-prog-ssh-arg '("-o NumberOfPasswordPrompts=3")) 等でも
できそうなので、mew-prog-ssh-arg が

In <20001024.134742.56056111.shigeya at example.com>,
On Tue, 24 Oct 2000 13:48:52 +0900,
Shigeya Suzuki <shigeya at example.com> wrote:

shigeya> それなら mew-config-alist で出来る方が嬉しいきがしますね。

が実現されるなら、ここでやる必要もなく、上記 patch で毎回 
mew-ssh-setup をやる必要もなくなる気がします。
-- 
 林 千史  chifumi at example.com



Mew-dist メーリングリストの案内