*SSTPサーバのできることを取得 [#jcd13031]

SSTPサーバもいくつか種類があります。~
中には簡易実装的なもの(([[SSTPViewer>http://sakura.nanika.jp/sstpviewer/]]とか))もあり、COMMUNICATEが全サーバに通じる、などという前提が難しくなってきました。

で、SSTPサーバの「できること」をきちんと取得できるようにしようというのがこのメモの目的です。

''追記:''案1と2か3併用かなぁと。全部FMOに突っ込むとえらいことになりますし。

**案1''(改)''/EXECUTE GetProperty sstp [#h1befa0f]

SSTP EXECUTEはまぁだいたい実装できるだろうという前提のもと、CROWの[[プロパティシステム>http://crow.aqrs.jp/devtest.html]]互換でsstpを追加して、SSTPサーバでできること、SSTPサーバのクセ等を取ろうという案です。

 EXECUTE SSTP/1.4
 Charset: Shift_JIS
 Command: GetProperty[sstp.commands]
 Sender: SSP

 SSTP/1.4 200 OK
 
 EXECUTE,SEND,NOTIFY,COMMUNICATE,GIVE,INSTALL

 EXECUTE SSTP/1.4
 Charset: Shift_JIS
 Command: GetProperty[sstp.option]
 Sender: SSP

 SSTP/1.4 200 OK
 
 SecurityLevel,Marker

-利点
--情報を追加し放題
--(拡張の仕方によってはGetの代替も含めて)一挙に必要な情報が取れる
-欠点
--取得にコストが多少かかる

**案2/FMOにエントリ追加 [#n573f153]

 sspfmo_83908390_76607660.info[1]
 CMD=EXECUTE,SEND,NOTIFY,COMMUNICATE,GIVE,INSTALL&OPTION=SecurityLevel,Marker
 (上記すべて1行)

これが長ければ、利用可能コマンドだけ列挙、しかも略記して

 sspfmo_83908390_76607660.cmd[1]E,S,N,C,G,I

-利点
--ローコスト
-欠点
--ただでさえ不足気味のFMOが埋まる~
(サイズ拡張すれば非互換な処理系が出てくる)
---解決策:Sakura2 FMOとか作る?


**案2.5/FMOエントリ追加+FINE [#n573f153]

本当にゴーストの数分だけバリエーションがあるかというと
そうでもない気がしますので、

 [Sakura FMO]
 sspfmo_83908390_76607660.infoclass[1]NORMAL
 sspfmo_83908390_98019801.infoclass[1]TEMPORARY

 [FINE FMO]
 SSP@37564000:infoclass:
 NORMAL=EXECUTE,SEND,NOTIFY,COMMUNICATE,GIVE,INSTALL&OPTION=SecurityLevel,Marker
 SSP@37564000:infoclass:
 TEMPORARY=SEND,NOTIFY,GIVE

のように「情報のクラス」を規定するとか。

-利点
--SakuraFMOのサイズをそれほど圧迫せずに必要なだけの情報を展開できる
-欠点
--読むほうも書くほうもとってもめんどい。

**案3/[[FINE>殊海夕音/FINE]]の大拡張祭 [#u6eaa6cd]

……。~
※注:半分本気です。

-利点
--ネタが増える
--今のうちなら影響範囲は小さい(笑)
-欠点
--バグが増える

 #SAKURAFMO@sspfmo_83908390_76607660:GhostInfo:
 EXECUTE,SEND,NOTIFY,COMMUNICATE,GIVE,INSTALL&OPTION=SecurityLevel,Marker

だとどうか。。。

FINE規格上で、「情報の提供のみを目的とした(つまり、FINEリクエストを受けることを想定しない)FINEサーバエントリはアプリケーション名の先頭に#を付ける。~
その場合Hwnd,Capability,ServerVersionの各プロパティを必須としない」とか変更が必要ですが。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS