2010-01-30T05:19:36の更新内容

works/tools/junk/TundereBird/index.wiki.txt

current previous
1,5 1,4
 
${smdncms:title,TundereBird}
${smdncms:title,TundereBird}
+
${smdncms:parser_options,non-limited-list}
 
*概要
*概要
 
IMAP4・POP3対応のメールクライアントです。 実用を目的としたものではなく、下記ライブラリのサンプル兼デモ用アプリケーションです。
IMAP4・POP3対応のメールクライアントです。 実用を目的としたものではなく、下記ライブラリのサンプル兼デモ用アプリケーションです。
 
-[[works/libs/Smdn.Net.Imap4]]
-[[works/libs/Smdn.Net.Imap4]]
16,55 15,48
 
-開発版
-開発版
 
--[[anonsvn]]よりチェックアウトできます
--[[anonsvn]]よりチェックアウトできます
 
-0.2x
-0.2x
+
--${smdncms:distfilelink,TundereBird-0.23.tar.bz2}
+
---下記ライブラリのソースを同梱しています
+
----[[works/libs/Smdn.Net.Imap4]] 0.23
+
----[[works/libs/Smdn.Net.Pop3]] 0.23
+
----[[works/libs/Smdn.Security.Authentication.Sasl]] 0.23
+
----[[works/libs/Smdn.Formats.Mime]] 0.16
+
----[[works/libs/Smdn.Formats.Ini]] 0.16
 
--${smdncms:distfilelink,TundereBird-0.22.tar.bz2}
--${smdncms:distfilelink,TundereBird-0.22.tar.bz2}
 
---下記ライブラリのソースを同梱しています
---下記ライブラリのソースを同梱しています
~
----[[works/libs/Smdn.Net.Imap4]] 0.22
---[[works/libs/Smdn.Net.Imap4]] 0.22
~
----[[works/libs/Smdn.Net.Pop3]] 0.22
---[[works/libs/Smdn.Net.Pop3]] 0.22
~
----[[works/libs/Smdn.Security.Authentication.Sasl]] 0.22
---[[works/libs/Smdn.Security.Authentication.Sasl]] 0.22
~
----[[works/libs/Smdn.Formats.Mime]] 0.16
---[[works/libs/Smdn.Formats.Mime]] 0.16
~
----[[works/libs/Smdn.Formats.Ini]] 0.16
---[[works/libs/Smdn.Formats.Ini]] 0.16
 
--${smdncms:distfilelink,TundereBird-0.21.tar.bz2}
--${smdncms:distfilelink,TundereBird-0.21.tar.bz2}
 
---下記ライブラリのソースを同梱しています
---下記ライブラリのソースを同梱しています
~
----[[works/libs/Smdn.Net.Imap4]] 0.21
---[[works/libs/Smdn.Net.Imap4]] 0.21
~
----[[works/libs/Smdn.Security.Authentication.Sasl]] 0.21
---[[works/libs/Smdn.Security.Authentication.Sasl]] 0.21
~
----[[works/libs/Smdn.Formats.Mime]] 0.15
---[[works/libs/Smdn.Formats.Mime]] 0.15
~
----[[works/libs/Smdn.Formats.Ini]] 0.15
---[[works/libs/Smdn.Formats.Ini]] 0.15
 
--${smdncms:distfilelink,TundereBird-0.20.tar.bz2}
--${smdncms:distfilelink,TundereBird-0.20.tar.bz2}
 
---下記ライブラリのソースを同梱しています
---下記ライブラリのソースを同梱しています
~
----[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.20
---[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.20
~
----[[works/libs/Smdn.Formats.Mime]] 0.14
---[[works/libs/Smdn.Formats.Mime]] 0.14
~
----[[works/libs/Smdn.Formats.Ini]] 0.14
---[[works/libs/Smdn.Formats.Ini]] 0.14
 
-0.1x
-0.1x
 
--${smdncms:distfilelink,TundereBird-0.13.zip}
--${smdncms:distfilelink,TundereBird-0.13.zip}
 
---下記ライブラリのソースを同梱しています
---下記ライブラリのソースを同梱しています
~
----[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.13
---[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.13
~
----[[Smdn.Protocols.Pop3>works/libs/Smdn.Net.Pop3]] 0.13
---[[Smdn.Protocols.Pop3>works/libs/Smdn.Net.Pop3]] 0.13
~
----[[works/libs/Smdn.Formats.Mime]] 0.13
---[[works/libs/Smdn.Formats.Mime]] 0.13
~
----[[works/libs/Smdn.Formats.Ini]] 0.13
---[[works/libs/Smdn.Formats.Ini]] 0.13
 
--${smdncms:distfilelink,TundereBird-0.12.zip}
--${smdncms:distfilelink,TundereBird-0.12.zip}
 
---下記ライブラリのソースを同梱しています
---下記ライブラリのソースを同梱しています
~
----[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.12
---[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.12
~
----[[Smdn.Protocols.Pop3>works/libs/Smdn.Net.Pop3]] 0.12
---[[Smdn.Protocols.Pop3>works/libs/Smdn.Net.Pop3]] 0.12
~
----[[works/libs/Smdn.Formats.Mime]] 0.12
---[[works/libs/Smdn.Formats.Mime]] 0.12
~
----[[works/libs/Smdn.Formats.Ini]] 0.12
---[[works/libs/Smdn.Formats.Ini]] 0.12
 
--${smdncms:distfilelink,TundereBird-0.11.zip}
--${smdncms:distfilelink,TundereBird-0.11.zip}
 
---下記ライブラリのソースを同梱しています
---下記ライブラリのソースを同梱しています
~
----[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.11
---[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.11
~
----[[Smdn.Protocols.Pop3>works/libs/Smdn.Net.Pop3]] 0.11
---[[Smdn.Protocols.Pop3>works/libs/Smdn.Net.Pop3]] 0.11
~
----[[works/libs/Smdn.Formats.Mime]] 0.11
---[[works/libs/Smdn.Formats.Mime]] 0.11
~
----[[works/libs/Smdn.Formats.Ini]] 0.11
---[[works/libs/Smdn.Formats.Ini]] 0.11
 
--${smdncms:distfilelink,TundereBird-0.10.zip}
--${smdncms:distfilelink,TundereBird-0.10.zip}
 
---下記ライブラリのソースを同梱しています
---下記ライブラリのソースを同梱しています
~
----[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.10
---[[Smdn.Protocols.Imap4>works/libs/Smdn.Net.Imap4]] 0.10
~
----[[works/libs/Smdn.Formats.Mime]] 0.10
---[[works/libs/Smdn.Formats.Mime]] 0.10
~
----[[works/libs/Smdn.Formats.Ini]] 0.10
---[[works/libs/Smdn.Formats.Ini]] 0.10
 

        

        
 
*使い方
*使い方
 
+tunderebird.iniを開いてアカウント情報を記入してから起動してください。
+tunderebird.iniを開いてアカウント情報を記入してから起動してください。
74,15 66,6
 
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
 

        

        
 
*変更履歴
*変更履歴
+
**0.23
+
-機能追加
+
--IMAP
+
---階層中に存在しないメールボックスがあっても正しく表示できるようにした
+
---Gimap XLISTに対応している場合、'Trash'の代わりに\Trashフラグを持つメールボックスをゴミ箱として使用するようにした
+
-修正・改善
+
--IMAP
+
---メールボックス名を変更する際に、階層も変えられるように修正
+

          
 
**0.22
**0.22
 
-機能追加
-機能追加
 
--POP3のサポートを再追加
--POP3のサポートを再追加

works/libs/Smdn.Net.Imap4/doc/index.wiki.txt

current previous
192,8 192,8
 
|ImapWebRequestMethods.Delete, "DELETE"|DELETEコマンドを送信してメールボックスを削除します。|削除しようとするメールボックスに対してUNSUBSCRIBEコマンドを送信してから削除します。&br;削除しようとするメールボックスにメッセージがある場合は削除に失敗するので、STOREやEXPUNGEでメッセージを削除してからメールボックスを削除する必要があります。|-|
|ImapWebRequestMethods.Delete, "DELETE"|DELETEコマンドを送信してメールボックスを削除します。|削除しようとするメールボックスに対してUNSUBSCRIBEコマンドを送信してから削除します。&br;削除しようとするメールボックスにメッセージがある場合は削除に失敗するので、STOREやEXPUNGEでメッセージを削除してからメールボックスを削除する必要があります。|-|
 
|ImapWebRequestMethods.Rename, "RENAME"|RENAMEコマンドを送信してメールボックスの名前を変更します。|変更後のメールボックス名はImapWebRequest.DestinationUriプロパティで指定します。|名前を変更した後のメールボックスは、ImapWebResponse.Mailboxesプロパティに設定されます。 また、名前を変更した後のメールボックスのURLがWebResponse.ResponseUriに設定されます。|
|ImapWebRequestMethods.Rename, "RENAME"|RENAMEコマンドを送信してメールボックスの名前を変更します。|変更後のメールボックス名はImapWebRequest.DestinationUriプロパティで指定します。|名前を変更した後のメールボックスは、ImapWebResponse.Mailboxesプロパティに設定されます。 また、名前を変更した後のメールボックスのURLがWebResponse.ResponseUriに設定されます。|
 
|ImapWebRequestMethods.Check, "CHECK"|CHECKコマンドを送信します。|このコマンドは何もしません。 CHECKコマンドの動作、レスポンスの内容はサーバの実装によります。|-|
|ImapWebRequestMethods.Check, "CHECK"|CHECKコマンドを送信します。|このコマンドは何もしません。 CHECKコマンドの動作、レスポンスの内容はサーバの実装によります。|-|
~
|ImapWebRequestMethods.Select, "SELECT"|SELECTコマンドを送信してメールボックスを選択します。|このコマンドは選択するだけで何もしません。 メールボックスの状態を取得する場合などに使います。|選択したメールボックスは、ImapWebResponse.Mailboxesプロパティに設定されます。 また、選択したメールボックスのURLがWebResponse.ResponseUriに設定されます。|
|ImapWebRequestMethods.Select, "SELECT"|SELECTコマンドを送信してメールボックスを選択します。|このコマンドは選択するだけで何もしません。 メールボックスの状態を取得する場合などに使います。|選択したメールボックスは、ImapWebResponse.Mailboxesプロパティに設定されます。|
~
|ImapWebRequestMethods.Examine, "EXAMINE"|EXAMINEコマンドを送信して読み取り専用でメールボックスを選択します。|このコマンドは選択するだけで何もしません。 メールボックスの状態を取得する場合などに使います。|選択したメールボックスは、ImapWebResponse.Mailboxesプロパティに設定されます。 また、選択したメールボックスのURLがWebResponse.ResponseUriに設定されます。|
|ImapWebRequestMethods.Examine, "EXAMINE"|EXAMINEコマンドを送信して読み取り専用でメールボックスを選択します。|このコマンドは選択するだけで何もしません。 メールボックスの状態を取得する場合などに使います。|選択したメールボックスは、ImapWebResponse.Mailboxesプロパティに設定されます。|
 
|ImapWebRequestMethods.Subscribe, "SUBSCRIBE"|SUBSCRIBEコマンドを送信してメールボックスの購読を開始します。|-|-|
|ImapWebRequestMethods.Subscribe, "SUBSCRIBE"|SUBSCRIBEコマンドを送信してメールボックスの購読を開始します。|-|-|
 
|ImapWebRequestMethods.Unsubscribe, "UNSUBSCRIBE"|UNSUBSCRIBEコマンドを送信してメールボックスの購読を解除します。|-|-|
|ImapWebRequestMethods.Unsubscribe, "UNSUBSCRIBE"|UNSUBSCRIBEコマンドを送信してメールボックスの購読を解除します。|-|-|
 
|Methodプロパティ|リクエスト|解説|レスポンス|f
|Methodプロパティ|リクエスト|解説|レスポンス|f

works/libs/Smdn.Net.Imap4/index.wiki.txt

current previous
16,13 16,13
 
SASLの実装は[[works/libs/Smdn.Security.Authentication.Sasl]]に含まれています
SASLの実装は[[works/libs/Smdn.Security.Authentication.Sasl]]に含まれています
 
:メールボックス操作系コマンド|
:メールボックス操作系コマンド|
 
::標準コマンド|CREATE, RENAME, DELETE, CLOSE, SELECT, EXAMINE, LIST, LSUB, STATUS, SUBSCRIBE, UNSUBSCRIBE
::標準コマンド|CREATE, RENAME, DELETE, CLOSE, SELECT, EXAMINE, LIST, LSUB, STATUS, SUBSCRIBE, UNSUBSCRIBE
~
::拡張コマンド|RLIST, RLSUB, LIST(LIST-EXTENDED), XLIST(Gimap), UNSELECT, NAMESPACE
::拡張コマンド|RLIST, RLSUB, UNSELECT, NAMESPACE
 
:メッセージ操作系コマンド|
:メッセージ操作系コマンド|
 
::標準コマンド|APPEND,SEARCH, EXPUNGE
::標準コマンド|APPEND,SEARCH, EXPUNGE
 
::拡張コマンド|(UID)SORT,, UID EXPUNGE
::拡張コマンド|(UID)SORT,, UID EXPUNGE
 
:その他のコマンド|
:その他のコマンド|
 
::標準コマンド|NOOP, CHECK, CAPABILITY
::標準コマンド|NOOP, CHECK, CAPABILITY
~
::拡張コマンド|ENABLE, COMPRESS, IDLE, ID, COMPARATOR, LANGUAGE
::拡張コマンド|ENABLE, COMPRESS, IDLE, ID
 

        

        
 
実装しているクライアントは次の二種類です。
実装しているクライアントは次の二種類です。
 
:ImapSessionクラス|IMAPコマンドと1対1に対応するメソッドを持つクライアント
:ImapSessionクラス|IMAPコマンドと1対1に対応するメソッドを持つクライアント
63,7 63,6
 
-開発版
-開発版
 
--[[anonsvn]]よりチェックアウトできます
--[[anonsvn]]よりチェックアウトできます
 
-0.2x
-0.2x
+
--${smdncms:distfilelink,Smdn.Net.Imap4.Client-0.23.tar.bz2}
 
--${smdncms:distfilelink,Smdn.Net.Imap4.Client-0.22.tar.bz2}
--${smdncms:distfilelink,Smdn.Net.Imap4.Client-0.22.tar.bz2}
 
--${smdncms:distfilelink,Smdn.Net.Imap4.Client-0.21.tar.bz2}
--${smdncms:distfilelink,Smdn.Net.Imap4.Client-0.21.tar.bz2}
 
--${smdncms:distfilelink,Smdn.Protocols.Imap4-0.20.tar.bz2}
--${smdncms:distfilelink,Smdn.Protocols.Imap4-0.20.tar.bz2}
73,55 72,7
 
*不具合・要望・質問等
*不具合・要望・質問等
 
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
 

        

        
+
-既知の不具合
+
--IDLEして5分程度経過すると、Mono.Security.Protocol.Tls.SslStreamBase.EndReadでMono.Security.Protocol.Tls.TlsExceptionがスローされる
+

          
 
*変更履歴
*変更履歴
+
**0.23
+
主に未サポートだった拡張の実装、メールボックス操作系コマンドの実装不備の修正。
+

          
+
-機能追加
+
--&urn2url(urn:ietf:rfc:4959){SASL-IR};に対応
+
--&urn2url(urn:ietf:rfc:5255){COMPARATOR};に対応(実機での動作は未確認)
+
--&urn2url(urn:ietf:rfc:5255){LANGUAGE};に対応(実機での動作は未確認)
+
--Gimap XLISTコマンドに対応
+
--&urn2url(urn:ietf:id:ietf-morg-list-specialuse-00){Extension to IMAP CREATE command to set special-use flags};に対応
+
--&urn2url(urn:ietf:id:ietf-morg-status-in-list-01,short);に対応
+
--ImapMailbox.Url, ImapMessage.UrlにUIDVALIDTYを含めるようにした
+
--コマンドを発行する際に引数のチェックを行い、ArgumentExceptionをスローするようにした(未完了につき不完全)
+
--プロトコル上不正な以下の操作を行おうとした場合、ImapProtocolViolationException(SystemExceptionから派生)をスローするようにした
+
---選択済みメールボックスに対してSTATUSしようとした場合
+
---\NoSelectフラグが設定されているメールボックスに対してSTATUSしようとした場合
+
---\NoSelectフラグが設定されていて、下位のメールボックスを持つ既知のメールボックスをDELETEしようとした場合
+
---既知のメールボックス名にRENAMEしようとした場合
+
---既知のメールボックス名でCREATEしようとした場合
+
---INBOXをCREATEしようとした場合
+
---上記以外でInvalidOperationExceptionをスローしていた箇所はImapProtocolViolationExceptionに変更
+
--コマンド処理中にタイムアウト値を変更しようとした場合、InvalidOperationExceptionをスローするようにした
+
--ImapSession.ServerID, ImapSession.ServerCapabilitiesに対してコレクションの変更を行おうとした場合、NotSupportedExceptionをスローするようにした
+
--WebClients名前空間
+
---XLISTコマンドを発行できるようにした
+
---RENAMEに成功した後、変更前のメールボックスをUNSUBSCRIBEするようにした
+
---RENAMEに成功した後、下位のメールボックスに対してSUBSCRIBE/UNSUBSCRIBEするようにした
+
---DELETEに成功した後、削除したメールボックスをUNSUBSCRIBEするようにした
+
---COPYで自動的にメールボックスを作成した後、作成したメールボックスをSUBSCRIBEするようにした
+
---単一のメッセージを表すURL形式でもCOPYできるようにした
+
---サーバがサポートしない機能を使用しようとした場合、およびプロトコル上不正な操作を行おうとした場合、System.Net.ProtocolViolationExceptionをスローするようにした
+
-修正・改善
+
--受信したレスポンスをstringで保持する機能を削除
+
--コマンド[LIST "" ""]を送信できない、レスポンスを受信できない不具合を修正
+
--同一メッセージのFETCHレスポンスが複数に分割して返された場合、複数のメッセージとして解釈してしまう不具合を修正
+
--RLSUB/RLISTのレスポンスを正しく取得していない不具合を修正
+
--ImapSession.HandlesIncapableAsExceptionがtrueの場合かつ、サーバがIMAP4rev1に対応していないかCAPABILITYコマンド未発行の場合、CAPABILITYコマンドが発行できない不具合を修正
+
--RENAMEで下位のメールボックスをもつメールボックスの名前を変更した場合、内部で管理している下位のメールボックス名も変更するようにした
+
--切断状態になった時点でImapSession.SelectedMailboxをnullにするように修正
+
--選択済みメールボックスに対してRENAMEしても例外を送出しないように変更
+
--選択済みメールボックスに対してDELETEしても例外を送出しないように変更
+
--ImapSession.BeginIdleメソッドでIDLEを開始した後、継続要求応答もしくはエラー応答が返されるまではIAsyncResultを返さないように変更
+
--ImapSession.Idleメソッドでタイムアウト時間を指定してIDLEを開始した場合、エラー応答が返された場合は即座に結果を返すように変更
+
--ImapSession.StatusChangedイベントを廃止し、ImapSession.Idleメソッドへコールバック用のデリゲートを指定できるように変更
+
--ImapSession.(Begin)IdleメソッドでIDLEを開始した後TraceSourceにアイドル中であることを出力する間隔を、ImapSession.ReceiveTimeoutから30秒の固定値に変更
+

          
 
**0.22
**0.22
 
主にWebClients名前空間のクラスの改善。
主にWebClients名前空間のクラスの改善。
 

        

        
210,7 161,7
 
*動作状況
*動作状況
 
以下のIMAPサーバに対して概ね問題なく動作することを確認済みです。
以下のIMAPサーバに対して概ね問題なく動作することを確認済みです。
 
-GMail
-GMail
~
-Dovecot
-Dovecot
 

        

        
 
以下の環境で動作することを確認済みです。
以下の環境で動作することを確認済みです。
 
-.NET Framework 3.5
-.NET Framework 3.5
226,4 177,3
 
-[[IMAPプロトコルの流れを学ぶ:http://www.atmarkit.co.jp/fmobile/rensai/imap04/imap04.html]]
-[[IMAPプロトコルの流れを学ぶ:http://www.atmarkit.co.jp/fmobile/rensai/imap04/imap04.html]]
 
-[[IMAP4 and CRAM-MD5 Authentication:http://vision.kuee.kyoto-u.ac.jp/~nob/doc/cram-md5/cram-md5.html]]
-[[IMAP4 and CRAM-MD5 Authentication:http://vision.kuee.kyoto-u.ac.jp/~nob/doc/cram-md5/cram-md5.html]]
 
-[[APOPとIMAP(CRAM-MD5)をC#で使おう:http://mobiquitous.com/programming/apop-imap.html]]
-[[APOPとIMAP(CRAM-MD5)をC#で使おう:http://mobiquitous.com/programming/apop-imap.html]]
+
-[[The IMAP Conneco-chan:http://www.lins.jp/~obata/imap/]]

works/libs/Smdn.Net.Imap4/feature/index.wiki.txt

current previous
22,7 22,6
 
|&urn2url(urn:ietf:rfc:2342,anchor-text);|NAMESPACE|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:2342,anchor-text);|NAMESPACE|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:2595,anchor-text);|STARTTLS|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:2595,anchor-text);|STARTTLS|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:2595,anchor-text);|LOGINDISABLED|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:2595,anchor-text);|LOGINDISABLED|&color(green){implemented};||
+
|&urn2url(urn:ietf:rfc:2683,anchor-text);|-|&color(orange){partially implemented};||
 
|&urn2url(urn:ietf:rfc:2971,anchor-text);|ID|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:2971,anchor-text);|ID|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:3348,anchor-text);|CHILDREN|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:3348,anchor-text);|CHILDREN|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:3501,anchor-text);|IMAP4rev1|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:3501,anchor-text);|IMAP4rev1|&color(green){implemented};||
35,24 34,23
 
|&urn2url(urn:ietf:rfc:4466,anchor-text);|-|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:4466,anchor-text);|-|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:4467,anchor-text);|URLAUTH|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:4467,anchor-text);|URLAUTH|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:4469,anchor-text);|CATENATE|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:4469,anchor-text);|CATENATE|&color(gray){not implemented};||
+
|&urn2url(urn:ietf:rfc:4549,anchor-text);|-|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:4551,anchor-text);|CONDSTORE|&color(orange){partially implemented};||
|&urn2url(urn:ietf:rfc:4551,anchor-text);|CONDSTORE|&color(orange){partially implemented};||
 
|&urn2url(urn:ietf:rfc:4731,anchor-text);|ESEARCH|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:4731,anchor-text);|ESEARCH|&color(green){implemented};||
~
|&urn2url(urn:ietf:rfc:4959,anchor-text);|SASL-IR|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:4959,anchor-text);|SASL-IR|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:4978,anchor-text);|COMPRESS=DEFLATE|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:4978,anchor-text);|COMPRESS=DEFLATE|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:5032,anchor-text);|WITHIN|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5032,anchor-text);|WITHIN|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:5092,anchor-text);|-|&color(orange){partially implemented};|URLAUTHは未実装です。 URLにUIDVALIDITYが指定されていてもUIDの検証は行いません。 [独自拡張]URLのスキームがimapsの場合、デフォルトポートとして993を使用し、SSLによる接続を試みます。|
|&urn2url(urn:ietf:rfc:5092,anchor-text);|-|&color(orange){partially implemented};|URLAUTHは未実装です。 URLにUIDVALIDITYが指定されていてもUIDの検証は行いません。 [独自拡張]URLのスキームがimapsの場合、デフォルトポートとして993を使用し、SSLによる接続を試みます。|
 
|&urn2url(urn:ietf:rfc:5161,anchor-text);|ENABLE|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5161,anchor-text);|ENABLE|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:5162,anchor-text);|QRESYNC|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:5162,anchor-text);|QRESYNC|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:5182,anchor-text);|SEARCHRES|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5182,anchor-text);|SEARCHRES|&color(green){implemented};||
~
|&urn2url(urn:ietf:rfc:5255,anchor-text);|I18NLEVEL=1|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5255,anchor-text);|I18NLEVEL=1|&color(gray){not implemented};||
~
|&urn2url(urn:ietf:rfc:5255,anchor-text);|I18NLEVEL=2|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5255,anchor-text);|I18NLEVEL=2|&color(gray){not implemented};||
~
|&urn2url(urn:ietf:rfc:5255,anchor-text);|LANGUAGE|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5255,anchor-text);|LANGUAGE|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:5256,anchor-text);|SORT|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5256,anchor-text);|SORT|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:5256,anchor-text);|THREAD=ORDEREDSUBJECT|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5256,anchor-text);|THREAD=ORDEREDSUBJECT|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:5256,anchor-text);|THREAD=REFERENCES|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5256,anchor-text);|THREAD=REFERENCES|&color(green){implemented};||
 
|&urn2url(urn:ietf:rfc:5257,anchor-text);|ANNOTATE-EXPERIMENT-1|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:5257,anchor-text);|ANNOTATE-EXPERIMENT-1|&color(gray){not implemented};||
~
|&urn2url(urn:ietf:rfc:5258,anchor-text);|LIST-EXTENDED|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5258,anchor-text);|LIST-EXTENDED|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:5259,anchor-text);|CONVERT|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:5259,anchor-text);|CONVERT|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:5267,anchor-text);|CONTEXT=SEARCH|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:5267,anchor-text);|CONTEXT=SEARCH|&color(gray){not implemented};||
 
|&urn2url(urn:ietf:rfc:5267,anchor-text);|CONTEXT=SORT|&color(gray){not implemented};||
|&urn2url(urn:ietf:rfc:5267,anchor-text);|CONTEXT=SORT|&color(gray){not implemented};||
65,9 63,6
 
|&urn2url(urn:ietf:rfc:5530,anchor-text);|-|&color(green){implemented};||
|&urn2url(urn:ietf:rfc:5530,anchor-text);|-|&color(green){implemented};||
 
|&urn2url(urn:ietf:id:ietf-morg-inthread-00,anchor-text);|SEARCH=INTHREAD|&color(green){implemented};||
|&urn2url(urn:ietf:id:ietf-morg-inthread-00,anchor-text);|SEARCH=INTHREAD|&color(green){implemented};||
 
|&urn2url(urn:ietf:id:ietf-morg-inthread-00,anchor-text);|THREAD=REFS|&color(green){implemented};||
|&urn2url(urn:ietf:id:ietf-morg-inthread-00,anchor-text);|THREAD=REFS|&color(green){implemented};||
+
|&urn2url(urn:ietf:id:ietf-morg-list-specialuse-00,anchor-text);|CREATE-SPECIAL-USE|&color(gray){not implemented};||
+
|&urn2url(urn:ietf:id:ietf-morg-status-in-list-01,anchor-text);|LIST-STATUS|&color(green){implemented};||
+
|Gimap|XLIST|&color(green){implemented};||
 
|RFC|capability name|status|note|f
|RFC|capability name|status|note|f
 

        

        
 
**commands
**commands
129,8 124,8
 
|SORT with RETURN result specifier|&urn2url(urn:ietf:rfc:4731,#3.1,short); &urn2url(urn:ietf:rfc:5182,#2.1,short); &urn2url(urn:ietf:id:ietf-morg-inthread-00,#3.5,short);|&color(green){implemented};||
|SORT with RETURN result specifier|&urn2url(urn:ietf:rfc:4731,#3.1,short); &urn2url(urn:ietf:rfc:5182,#2.1,short); &urn2url(urn:ietf:id:ietf-morg-inthread-00,#3.5,short);|&color(green){implemented};||
 
|COMPRESS|&urn2url(urn:ietf:rfc:4978,#3,short);|&color(gray){not implemented};||
|COMPRESS|&urn2url(urn:ietf:rfc:4978,#3,short);|&color(gray){not implemented};||
 
|ENABLE|&urn2url(urn:ietf:rfc:5161,#3.1,short);|&color(green){implemented};||
|ENABLE|&urn2url(urn:ietf:rfc:5161,#3.1,short);|&color(green){implemented};||
~
|LANGUAGE|&urn2url(urn:ietf:rfc:5255,#3.2,short);|&color(red){not tested};||
|LANGUAGE|&urn2url(urn:ietf:rfc:5255,#3.2,short);|&color(gray){not implemented};||
~
|COMPARATOR|&urn2url(urn:ietf:rfc:5255,#4.7,short);|&color(red){not tested};||
|COMPARATOR|&urn2url(urn:ietf:rfc:5255,#4.7,short);|&color(gray){not implemented};||
 
|SORT, UID SORT|&urn2url(urn:ietf:rfc:5256,#3,short);|&color(green){implemented};|非ASCII文字での検索に対応&sub{*2};|
|SORT, UID SORT|&urn2url(urn:ietf:rfc:5256,#3,short);|&color(green){implemented};|非ASCII文字での検索に対応&sub{*2};|
 
|THREAD, UID THREAD|&urn2url(urn:ietf:rfc:5256,#3,short);|&color(green){implemented};|非ASCII文字での検索に対応&sub{*2};|
|THREAD, UID THREAD|&urn2url(urn:ietf:rfc:5256,#3,short);|&color(green){implemented};|非ASCII文字での検索に対応&sub{*2};|
 
|CONVERSIONS|&urn2url(urn:ietf:rfc:5259,#5.1,short);|&color(gray){not implemented};||
|CONVERSIONS|&urn2url(urn:ietf:rfc:5259,#5.1,short);|&color(gray){not implemented};||
138,9 133,6
 
|GETMETADATA|&urn2url(urn:ietf:rfc:5464,#4.2,short);|&color(gray){not implemented};||
|GETMETADATA|&urn2url(urn:ietf:rfc:5464,#4.2,short);|&color(gray){not implemented};||
 
|SETMETADATA|&urn2url(urn:ietf:rfc:5464,#4.3,short);|&color(gray){not implemented};||
|SETMETADATA|&urn2url(urn:ietf:rfc:5464,#4.3,short);|&color(gray){not implemented};||
 
|NOTIFY|&urn2url(urn:ietf:rfc:5465,#3.1,short);|&color(gray){not implemented};||
|NOTIFY|&urn2url(urn:ietf:rfc:5465,#3.1,short);|&color(gray){not implemented};||
+
|CREATE with special-use flags|&urn2url(urn:ietf:id:ietf-morg-list-specialuse-00,anchor-text);|&color(gray){not implemented};||
+
|LIST with STATUS return option|&urn2url(urn:ietf:id:ietf-morg-status-in-list-01,anchor-text);|&color(green){implemented};||
+
|XLIST{implemented};||
 
|command|RFC|status|note|f
|command|RFC|status|note|f
 

        

        
 
:Modified UTF-7対応&sub{*1};|メールボックス名に非ASCII文字を含む場合、自動的にModified UTF-7に変換します。
:Modified UTF-7対応&sub{*1};|メールボックス名に非ASCII文字を含む場合、自動的にModified UTF-7に変換します。
176,7 168,7
 
|COMPRESSIONACTIVE|&urn2url(urn:ietf:rfc:4978,short);|&color(orange){partially implemented};|通常のNOレスポンスと同様&sub{*1};に扱います。|
|COMPRESSIONACTIVE|&urn2url(urn:ietf:rfc:4978,short);|&color(orange){partially implemented};|通常のNOレスポンスと同様&sub{*1};に扱います。|
 
|CLOSED|&urn2url(urn:ietf:rfc:5162,short);|&color(gray){not implemented};||
|CLOSED|&urn2url(urn:ietf:rfc:5162,short);|&color(gray){not implemented};||
 
|NOTSAVED|&urn2url(urn:ietf:rfc:5182,short);|&color(green){implemented};||
|NOTSAVED|&urn2url(urn:ietf:rfc:5182,short);|&color(green){implemented};||
~
|BADCOMPARATOR|&urn2url(urn:ietf:rfc:5255,short);|&color(orange){partially implemented};|通常のNOレスポンスと同様&sub{*1};に扱います。|
|BADCOMPARATOR|&urn2url(urn:ietf:rfc:5255,short);|&color(gray){not implemented};||
 
|ANNOTATE|&urn2url(urn:ietf:rfc:5257,short);|&color(gray){not implemented};||
|ANNOTATE|&urn2url(urn:ietf:rfc:5257,short);|&color(gray){not implemented};||
 
|ANNOTATIONS|&urn2url(urn:ietf:rfc:5257,short);|&color(gray){not implemented};||
|ANNOTATIONS|&urn2url(urn:ietf:rfc:5257,short);|&color(gray){not implemented};||
 
|TEMPFAIL|&urn2url(urn:ietf:rfc:5259,short);|&color(gray){not implemented};||
|TEMPFAIL|&urn2url(urn:ietf:rfc:5259,short);|&color(gray){not implemented};||
209,9 201,6
 
:通常のレスポンスと同様&sub{*1};|そのレスポンスを受信したということだけを検知します。 レスポンスに応じた処理を行うといったことはしません。
:通常のレスポンスと同様&sub{*1};|そのレスポンスを受信したということだけを検知します。 レスポンスに応じた処理を行うといったことはしません。
 

        

        
 
**関連リンク
**関連リンク
+
-[[Wg Status Pages:http://tools.ietf.org/wg/]]
+
--[[Eai Status Pages:http://tools.ietf.org/wg/eai/]]
+
--[[Morg Status Pages:http://tools.ietf.org/wg/morg/]]
 
-[[IANA — Protocol Registries:http://www.iana.org/protocols/]]
-[[IANA — Protocol Registries:http://www.iana.org/protocols/]]
 
--[[Internet Message Access Protocol 4 Capabilities Registry:http://www.iana.org/assignments/imap4-capabilities]]
--[[Internet Message Access Protocol 4 Capabilities Registry:http://www.iana.org/assignments/imap4-capabilities]]
 
--[[IMAP Response Codes:http://www.iana.org/assignments/imap-response-codes/imap-response-codes.xhtml]]
--[[IMAP Response Codes:http://www.iana.org/assignments/imap-response-codes/imap-response-codes.xhtml]]

works/libs/Smdn.Net.Pop3/doc/index.wiki.txt

current previous
177,7 177,7
 
|KeepAlive|true|全て|リクエストが終了した後もセッションを維持するかどうかを指定します。 trueの場合はリクエストが終了してもセッションは維持し、falseの場合はリクエストの度にセッションを開きリクエスト終了と同時にセッションを閉じます|
|KeepAlive|true|全て|リクエストが終了した後もセッションを維持するかどうかを指定します。 trueの場合はリクエストが終了してもセッションは維持し、falseの場合はリクエストの度にセッションを開きリクエスト終了と同時にセッションを閉じます|
 
|UseTlsIfAvailable|true|全て(認証時)|サーバがサポートしている場合、認証を行う前にTLSを使用した接続にアップグレードします。|
|UseTlsIfAvailable|true|全て(認証時)|サーバがサポートしている場合、認証を行う前にTLSを使用した接続にアップグレードします。|
 
|UsingSaslMechanisms|{"DIGEST-MD5", "CRAM-MD5", "NTLM"}|全て(認証時)|認証メカニズムが指定されていない場合に、試行する認証メカニズムとその順番を配列で指定します。 サーバ・クライアントの両方がサポートするメカニズム以外が指定されている場合は無視します。|
|UsingSaslMechanisms|{"DIGEST-MD5", "CRAM-MD5", "NTLM"}|全て(認証時)|認証メカニズムが指定されていない場合に、試行する認証メカニズムとその順番を配列で指定します。 サーバ・クライアントの両方がサポートするメカニズム以外が指定されている場合は無視します。|
~
|ExpectedErrorResponseCodes|null|全て|サーバから返されることが予期されるエラーレスポンスコードの配列を指定します。 サーバからこれらのレスポンスコードが返された場合は、エラーレスポンスでもWebExceptionがスローされません。|
//|ExpectedErrorResponseCodes|null|全て|サーバから返されることが予期されるエラーレスポンスコードの配列を指定します。 サーバからこれらのレスポンスコードが返された場合は、エラーレスポンスでもWebExceptionがスローされません。|
 

        

        
 
WebRequestクラスから継承されるプロパティのうち、以下のプロパティは使用することができます。
WebRequestクラスから継承されるプロパティのうち、以下のプロパティは使用することができます。
 

        

        

works/libs/Smdn.Net.Pop3/index.wiki.txt

current previous
54,7 54,6
 
-開発版
-開発版
 
--[[anonsvn]]よりチェックアウトできます
--[[anonsvn]]よりチェックアウトできます
 
-0.2x
-0.2x
+
--${smdncms:distfilelink,Smdn.Net.Pop3.Client-0.23.tar.bz2}
 
--${smdncms:distfilelink,Smdn.Net.Pop3.Client-0.22.tar.bz2}
--${smdncms:distfilelink,Smdn.Net.Pop3.Client-0.22.tar.bz2}
 
-0.1x
-0.1x
 
--[[works/tools/junk/TundereBird]]に含まれているものを使ってください
--[[works/tools/junk/TundereBird]]に含まれているものを使ってください
62,48 61,7
 
*不具合・要望・質問等
*不具合・要望・質問等
 
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
 

        

        
+
*実装済み機能一覧
+
サポートするPOP標準仕様・拡張仕様の一覧です。
+
:&color(green){implemented};|実装済みの機能
+
一部不完全な箇所があったり、仕様と異なる実装になっているかもしれません
+
:&color(orange){partially implemented};|部分的に実装済みの機能
+
コマンドの送受信のみサポートする、仕様の一部のみをサポートする、などの状態です
+
:&color(red){not tested};|実装済みだが動作確認できていない機能
+
:&color(gray){not implemented};|実装されていない機能
+

          
+
|RFC|status|note|h
+
|&urn2url(urn:ietf:rfc:1939,anchor-text);|&color(green){implemented};||
+
|&urn2url(urn:ietf:rfc:2384,anchor-text);|&color(green){implemented};|[独自拡張]URLのスキームがpopsの場合、デフォルトポートとして995を使用し、SSLによる接続を試みます。 また、修飾子;MSG=が含まれている場合、メールボックス内の特定のメッセージを表すURLとして解釈します。|
+
|&urn2url(urn:ietf:rfc:2449,anchor-text);|&color(orange){partially implemented};|LOGIN-DELAY, PIPELINING, EXPIREに関連する機能は未実装です。 また、レスポンスコードが含まれていても通常のレスポンスと同様&sub{*1};に扱います。|
+
|&urn2url(urn:ietf:rfc:2595,anchor-text);|&color(green){implemented};||
+
|&urn2url(urn:ietf:rfc:3206,anchor-text);|&color(orange){partially implemented};|レスポンスコードが含まれていても通常のレスポンスと同様&sub{*1};に扱います。|
+
|&urn2url(urn:ietf:rfc:5034,anchor-text);|&color(green){implemented};||
+
|&urn2url(urn:ietf:id:ietf-eai-pop-09,anchor-text);|&color(gray){not implemented};||
+
|RFC|status|note|f
+

          
+
:通常のレスポンスと同様&sub{*1};|そのレスポンスを受信したということだけを検知します。 レスポンスに応じた処理を行うといったことはしません。
+

          
+
**関連リンク
+
-[[Wg Status Pages:http://tools.ietf.org/wg/]]
+
--[[Eai Status Pages:http://tools.ietf.org/wg/eai/]]
+
--[[Morg Status Pages:http://tools.ietf.org/wg/morg/]]
+
-[[IANA — Protocol Registries:http://www.iana.org/protocols/]]
+
--[[POP3 Extension Mechanism:http://www.iana.org/assignments/pop3-extension-mechanism]]
+

          
 
*変更履歴
*変更履歴
+
**0.23
+
-機能追加
+
--&urn2url(urn:ietf:rfc:2449,#8){Extended POP3 Response Codes};に対応
+
--AUTHコマンドを発行する場合、可能なら応答を待たずにinitial-responseを送信するようにした
+
--プロトコル上不正な以下の操作を行おうとした場合、PopProtocolViolationException(SystemExceptionから派生)をスローするようにした
+
---InvalidOperationExceptionをスローしていた箇所はImapProtocolViolationExceptionに変更
+
--PopSession.ServerCapabilitiesに対してコレクションの変更を行おうとした場合、NotSupportedExceptionをスローするようにした
+
--WebClients名前空間
+
---PopWebRequest.ExpectedErrorResponseCodesプロパティを追加
+
---サーバがサポートしない機能を使用しようとした場合、およびプロトコル上不正な操作を行おうとした場合、System.Net.ProtocolViolationExceptionをスローするようにした
+
-修正・改善
+
--受信したレスポンスをstringで保持する機能を削除
+

          
 
**0.22
**0.22
 
-[[works/libs/Smdn.Net.Imap4]]をベースに再実装
-[[works/libs/Smdn.Net.Imap4]]をベースに再実装
 
-PopWebRequest/PopWebResponseクラスの実装を追加
-PopWebRequest/PopWebResponseクラスの実装を追加
125,7 83,7
 
*動作状況
*動作状況
 
以下のPOPサーバに対して概ね問題なく動作することを確認済みです。
以下のPOPサーバに対して概ね問題なく動作することを確認済みです。
 
-GMail
-GMail
~
-Dovecot
-Dovecot
 

        

        
 
以下の環境で動作することを確認済みです。
以下の環境で動作することを確認済みです。
 
-.NET Framework 3.5
-.NET Framework 3.5

works/libs/Smdn.Security.Authentication.Sasl/index.wiki.txt

current previous
3,7 3,7
 
${smdncms:keywords,Smdn.Security.Authentication.Sasl,SASL,DIGEST-MD5,CRAM-MD5,C#,.NET,ライブラリ}
${smdncms:keywords,Smdn.Security.Authentication.Sasl,SASL,DIGEST-MD5,CRAM-MD5,C#,.NET,ライブラリ}
 
C#で書いた.NET Framework/Mono用SASLクライアントライブラリです。 IMAP4クライアントライブラリ[[works/libs/Smdn.Net.Imap4]]およびPOP3クライアントライブラリ[[works/libs/Smdn.Net.Pop3]]にてSASLによる認証処理で使用しています。
C#で書いた.NET Framework/Mono用SASLクライアントライブラリです。 IMAP4クライアントライブラリ[[works/libs/Smdn.Net.Imap4]]およびPOP3クライアントライブラリ[[works/libs/Smdn.Net.Pop3]]にてSASLによる認証処理で使用しています。
 

        

        
~
*実装済み機能一覧
*機能概要
 
サポートするSASLメカニズムの一覧です。
サポートするSASLメカニズムの一覧です。
 

        

        
 
|RFC|mechanism name|status|note|h
|RFC|mechanism name|status|note|h
29,7 29,7
 
|&urn2url(urn:ietf:id:ietf-sasl-scram-10,anchor-text);|SCRAM-SHA-1-PLUS|&color(gray){not implemented};||
|&urn2url(urn:ietf:id:ietf-sasl-scram-10,anchor-text);|SCRAM-SHA-1-PLUS|&color(gray){not implemented};||
 
|RFC|mechanism name|status|note|f
|RFC|mechanism name|status|note|f
 

        

        
~
使い方・認証処理の実装は[[works/libs/Smdn.Net.Imap4]]および[[works/libs/Smdn.Net.Pop3]]をご覧ください。 またデモ用アプリケーション[[works/tools/junk/TundereBird]]もあわせてご覧ください。
使い方・実装は[[works/libs/Smdn.Net.Imap4]]および[[works/libs/Smdn.Net.Pop3]]をご覧ください。 またデモ用アプリケーション[[works/tools/junk/TundereBird]]もあわせてご覧ください。
 

        

        
 
*ダウンロード
*ダウンロード
 
#googleadunit
#googleadunit
38,27 38,22
 
-開発版
-開発版
 
--[[anonsvn]]よりチェックアウトできます
--[[anonsvn]]よりチェックアウトできます
 
-0.2x
-0.2x
+
--${smdncms:distfilelink,Smdn.Security.Authentication.Sasl-0.23.tar.bz2}
 
--${smdncms:distfilelink,Smdn.Security.Authentication.Sasl-0.22.tar.bz2}
--${smdncms:distfilelink,Smdn.Security.Authentication.Sasl-0.22.tar.bz2}
 

        

        
 
*不具合・要望・質問等
*不具合・要望・質問等
 
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
不具合の報告、ライブラリに対する要望や提案、使い方の質問などは[[掲示板>misc/forum/libs]]へどうぞ。
 

        

        
+
*変更履歴
+
**0.23
+
-initial client responseを取得するメソッドを追加
+

          
 
**0.22
**0.22
 
-[[works/libs/Smdn.Net.Imap4]], [[works/libs/Smdn.Net.Pop3]]バージョンアップに伴うリリース
-[[works/libs/Smdn.Net.Imap4]], [[works/libs/Smdn.Net.Pop3]]バージョンアップに伴うリリース
 

        

        
 
**0.21
**0.21
 
-[[works/libs/Smdn.Net.Imap4]]より分離
-[[works/libs/Smdn.Net.Imap4]]より分離
 

        

        
~
*関連するページ
**関連するページ
 
-[[programming/mono/Mono.Security.Protocol.Ntlm]]
-[[programming/mono/Mono.Security.Protocol.Ntlm]]
 
-[[programming/tips/cram_md5]]
-[[programming/tips/cram_md5]]
 

        

        
~
*関連リンク
**関連リンク
 
-[[IANA — Protocol Registries:http://www.iana.org/protocols/]]
-[[IANA — Protocol Registries:http://www.iana.org/protocols/]]
 
--[[SIMPLE AUTHENTICATION AND SECURITY LAYER MECHANISMS:http://www.iana.org/assignments/sasl-mechanisms]]
--[[SIMPLE AUTHENTICATION AND SECURITY LAYER MECHANISMS:http://www.iana.org/assignments/sasl-mechanisms]]