758 への返信

DCCの仕様についてXaicoro - No.758
こんにちは、とあるIRCクライアントの開発をしております。
貴殿のDCCにおける「ファイル名を正確に送るためのプロトコル拡張」にて質問があります。
クライアント同士のDCCの整合性をとるためにもお答えいただきたいです。

DCC SENDの主な仕様は以下ですが
DCC SEND filename address port size
Limeでファイル名を正確に送る場合の拡張は以下ですよね
DCC SEND finename address port size 2 :truefilename

この後者の場合、後続につながる「2」の意味を教えていただきたいのです。
また、この拡張は何を元に準拠しているのか、独自なのか、それも教えていただきたいです。
それではよろしくおねがいします。
Psychs - No.761
> DCC SEND finename address port size 2 :truefilename

「2」は、内部的なDCCの拡張バージョン番号です。
いまのところ、「2」以外は無視するように実装してあります。
なお、バージョン「2」の接続については、ファイルの受信側から
送信側への無意味な受信サイズの返送をしない仕様です。
Xaicoro - No.763
>「2」は、内部的なDCCの拡張バージョン番号です。
内部的ということは独自仕様、ととってよろしいでしょうか。
このバージョンが2のとき、ACKを送信しないということであれば
こちらもそのように実装したいと思います。

しかしながら、設定では互換性があるとの表記ですが、
内部バージョン2として動作するときACKを送信しないのであれば
他クライアントとの互換性は仕様上とれてはいないのではないでしょうか。(実測除く)
Psychs - No.764
> 他クライアントとの互換性は仕様上とれてはいないのでは
> ないでしょうか。(実測除く)

もし受信する側が、バージョン2のDCC SENDメッセージであると
認識できた場合には、受信サイズの返送をしないという仕様です。
バージョン2に対応していないIRCクライアントは、拡張部分を
読み捨て、通常のDCC SENDメッセージと認識して普通に動作するので、
仕様上の問題はありません。
国内外問わず、多くのIRCクライアントで動作することを確認済みです。

以下の項目を必ず守ってください。守っていない書き込みは無視されるかも知れません。

あなたにとっては1回の質問でも、答える側は1回ではないことを理解してください。

  • 文章はきちんと状況が伝わるように丁寧に書いてください。
  • 話し言葉での書き込みは禁止します。
  • 過去ログを検索して確認してから書き込んでください。
  • 内容がわかるタイトルをつけること。要望する場合は[要望]を先頭につけること。
  • 動作確認はかならず最新版で行ってください。
  • 不適切な文章は、管理人が削除、編集することがあります。
名前*
メッセージ*
パスワード (編集・削除に使用。16文字以内)