Ticket #35210

/ssh-Lに複数ポートを設定できない

오픈 날짜: 2015-06-02 13:56 마지막 업데이트: 2015-09-02 13:04

Reporter:
(Anonymous)
소유자:
(del#1144)
Type:
Status:
Closed
Component:
MileStone:
(None)
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

Details

tetaterm接続マクロで、/ssh-Lに複数ポートを設定して利用していました。

version4.86

/ssh-L8081:localhost:8081;L8082:localhost:8082

これが version4.87 では挙動が変わり、最初の一つしか有効になりません。

例ではL8081は有効だがL8082は設定されない。

Ticket History (3/15 Histories)

2015-06-02 13:56 Updated by: None
  • New Ticket "/ssh-Lに複数ポートを設定できない" created
2015-06-07 19:50 Updated by: (del#1144)
  • Milestone Update from (None) to Tera Term 4.88 (closed)
  • 소유자 Update from (None) to maya
  • Component Update from (None) to TTSSH
댓글 올리기

TeraTermの仕様では;以降の引数はコメントですが、TeraTerm本体はコメントとして扱うのにTTSSHはコメントとして扱わない、というバグがありました。#34353

このチケットで指摘されている書式はTeraTermの引数の仕様に沿わないものでしたが、上記のバグがあったために使えていた書式でした。

今回のバージョンで上記のバグを修正したため、いままで使えていた;で複数のポート転送を指定する書式が使えなくなりました。

下記のように指定すればどちらのポート転送設定も読み込まれます。

/ssh-L8081:localhost:8081 /ssh-L8082:localhost:8082

次のバージョンでは、;を使わずに複数の指定を同時に指定できるように考えます。

案) /ssh-L8081:localhost:8081,L8082:localhost:8082

2015-06-09 16:50 Updated by: None
댓글 올리기

スイッチ自体を複数記述する形式で動作OKでした。ありがとうございました。

/ssh-L8081:localhost:8081 /ssh-L8082:localhost:8082

なお teratermメニュー>設定>SSH転送 の設定を保存した場合、teraterm.iniに下記エントリが作成されます。

DefaultForwarding=L8081:localhost:8081;L8082:localhost:8082

もしかしたら影響ありそうなので報告しました。

2015-06-09 20:35 Updated by: doda
댓글 올리기

maya への返信

次のバージョンでは、;を使わずに複数の指定を同時に指定できるように考えます。

案) /ssh-L8081:localhost:8081,L8082:localhost:8082

自分の感覚としては上記は /ssh-L オプションに 8081:localhost:8081 と L8082:localhost:8082 の二つのパラメータが指定されていると感じるのでちょっと不自然に思います。

これを L8081:localhost:8081 と L8082:localhost:8082 の二つと解釈した場合、/ssh- に与えている事になるので /ssh-L8081:localhost:8081,A 等が許されそうなのでやはり不自然だと思います。

それよりはちょっと手間がかかりますが /ssh-L8081:localhost:8081,8082:localhost:8082 の方がいいと思います。

ttssh 2.72 まで使えてしまっていた /ssh-L8081:localhost:8081;X;R8082:localhost:8082 のような複数の種類の転送を指定出来なくなりますが、 /ssh-X;L8081~ 等は使えなく一貫性が無いのでサポートする必要は無いと思います。

2015-06-09 21:11 Updated by: (del#1144)
댓글 올리기

このコマンドライン引数はTERATERM.INIのDefaultForwardingを読み込んだ変数を上書きし、解析処理に行きます。

  • INIファイルに保存されている複数種類の同時指定は引き続きサポートする必要があります。
  • 互換性保持のため、INIファイルから読み込まれた ; で分割した複数種類の同時指定は、読み込みのみサポートしたいです。

シンプルに、読み込みは ; を待つところを ; or , にし、書き込みは ; のところを , に変更するつもりでいましたが、コマンドライン引数のみ?構文変更するとなるとやや手間に感じますが、いかがでしょうか。

2015-07-12 01:51 Updated by: (del#1144)
  • Resolution Update from None to Fixed
댓글 올리기

,区切りを受け付けるようにしました。

http://ttssh2.osdn.jp/snapshot/snapshot-20150712.zip

ところで、本件の記法はマニュアルに書いていないものですが、TERATERM.INI に保存された設定値をコマンドラインにも使えると思って持ってきたのでしょうか?

2015-07-23 12:38 Updated by: None
댓글 올리기

TERATERM.INI に保存された設定値をコマンドラインにも使えると思って持ってきたのでしょうか?

はい。

logmettマクロのconnect接続文字列で複数ポートを転送する設定方法を探していて、 TERATERM.INIに保存されている形式なら使えるかな?と思って、 試してみたら使えた、という感じです。

2015-08-25 18:17 Updated by: doda
댓글 올리기

* INIファイルに保存されている複数種類の同時指定は引き続きサポートする必要があります。 * 互換性保持のため、INIファイルから読み込まれた ; で分割した複数種類の同時指定は、読み込みのみサポートしたいです。

INIファイルの読み書きに対する変更は考えていませんでした。変更を考えていたのはコマンドラインパラメータの解釈部分だけです。

シンプルに、読み込みは ; を待つところを ; or , にし、書き込みは ; のところを , に変更するつもりでいましたが、コマンドライン引数のみ?構文変更するとなるとやや手間に感じますが、いかがでしょうか。

多少手間ではあるのですが、やはり一貫性の無さが気持ち悪いです。 試しに r5959 で実装してみましたがどうでしょうか?

2015-08-25 19:19 Updated by: (del#1144)
댓글 올리기

ありがとうございます。この変更があれば、 r5908 で入れた ;と,を入れ替える処理を取り除いても大丈夫になりますか?

INIへの保存の仕様が変わらないのであれば、そのほうがよいと思います。

2015-08-25 20:41 Updated by: doda
댓글 올리기

ありがとうございます。この変更があれば、 r5908 で入れた ;と,を入れ替える処理を取り除いても大丈夫になりますか?

修正はTTXParseParamだけで完結するようにしていますので、INIへの読み書き部分は元に戻しても大丈夫なはずです。

2015-08-26 06:20 Updated by: (del#1144)
댓글 올리기

修正はTTXParseParamだけで完結するようにしていますので、INIへの読み書き部分は元に戻しても大丈夫なはずです。

r5960 で戻しました。

2015-09-01 09:01 Updated by: None
2015-09-01 14:48 Updated by: doda
  • Milestone Update from Tera Term 4.88 (closed) to (None)
  • Ticket Close date is changed to 2015-09-01 14:48
  • Status Update from Open to Closed
2015-09-02 12:55 Updated by: None
댓글 올리기

teraterm4.88で試してみました。

/ssh-L8081:localhost:8081;L8082:localhost:8082

結局のところ、この形式はサポートしない、ということで完了済でしょうか?

2015-09-02 13:04 Updated by: (del#1144)
댓글 올리기

コマンドラインにおいて ; で区切る形式はサポートされません。また、Lを複数書くのもサポートされなくなりましたので、以下のようになります。

/ssh-L8081:localhost:8081,8082:localhost:8082

http://ttssh2.osdn.jp/manual/ja/commandline/ttssh.html#ssh-l

Attachment File List

No attachments

Edit

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Login