1

現在、メール サーバーに IMAP プロトコルを実装する作業を行っています。このような大規模なプロジェクトを実装するのは初めてで、これまでに Search コマンドを除く IMAP コマンドの大部分を RFC でコーディングしました。私はインターネットで検索を行っており、何週間も後置アルゴリズムを研究して、検索コマンドを正しく記述する方法を確認してきました。OR OR ABCD ==> (OR (OR AB) C) D 複数の OR がある場合に Search コマンドを実装する方法について誰か教えてくれませんか?

ご協力いただきありがとうございました。

4

1 に答える 1

0

これはあなたが好む答えにはなりませんが、とにかくこれをお勧めします - これをしないでください. IMAP は非常に複雑なプロトコルであり、自明ではないコーナー ケースが数多くあります。また、ベースライン バージョン (RFC3501) では、多くの高度な機能が欠落しています。特にモバイル クライアントで適切なパフォーマンスを得るには、かなりの数の拡張機能を実装する必要があります。

もし私があなたなら、既存のオープンソース IMAP サーバー実装と統合することをお勧めします。ファンシーなストレージ バックエンドがある場合は、おそらく Dovecot や Cyrus 用のプラグインを作成できます。

これを自分で実際に再実装することを決定し、これが最初の複雑なプロジェクトである場合、多くの点で微妙に壊れた製品になる可能性が非常に高くなります。あなたの目標が「Speaks IMAP」というフレーズを販売パンフレットに追加できるようにすることである場合、それはうまくいきますが、実際には、少なくとも今後 5 年間で相互運用性の問題を解決することになります。

于 2013-05-03T09:57:05.563 に答える