[#40551] Net::IMAPで既に存在するディレクトリが削除できない — 内木場 美次 <uchikoba@...>

お疲れ様です。内木場です。

13 messages 2005/01/21

[#40580] enum 定数する場合のイディオム — Hiroshi Takagi <gollum@...>

高木@関西のネットワーク屋%Ruby novice monk です。

12 messages 2005/01/27

[ruby-list:40554] Re: Net::IMAPで既に存在するディレクトリが削除できない

From: 内木場 美次 <uchikoba@...>
Date: 2005-01-21 05:12:21 UTC
List: ruby-list #40554
いつもお世話になってます。内木場です。

| CREATEが全角ABCで実行して成功しているなら、DELETEも全角ABCで実
| 行すれば成功するのではないでしょうか。

前回(inlen云々)の対応で作れたので私も成功するものだと思ってました。

| クライアントは8-bitメールボックス名の作成を行ってはならない。
| LIST,LSUBで8-bitメールボックス名が返されたらUTF-8として処理すべきである。
| 「5.1.3 Mailbox International Naming Convention」
| 多言語のメールボックス名はUTF-7を使って指名される。

現状の処理の流れを書きます。
1.ブラウザから消したいディレクトリ名を受取りEUC-JPに変換。
2.それを更にUTF-8に変換して、Net::IMAP#encode_utf7へ渡す。
3.その結果をNet::IMAP#deleteに渡す
この流れだと、7-bit 文字として処理されてると思ったんですが。

| ということで、もしNet::IMAPのLIST、LSUBの結果が正常にUTF-7としてデコード
| 処理されないのであればバグだと思いますが、そうでないのなら書いたとおりで
す。

| あとマルチバイトメールボックス名の処理された結果が正しければ、エンコード
| はUTF-8なのでその扱いも考えた方がいいと思います。

$ruby /usr/lib/ruby/1.8/net/imap.rb --user=foo --auth=login example.com
foo@example.com> list
 INBOX.&,yH,Iv8j-

と表示されてるので、正常に処理されてると考えています。
この結果が INBOX.ABC って出るのが正解ですか?



In This Thread