       ---------------------------------------------------------------
       基本的な設計方針は以下のように表現できるでしょう。
          1. 可能な限りユーザおよび  ML 管理者 にとっての自由度をあげる
          2. 「明示的な指定があって初めて機能は増やすべきである」
              および
             「管理者のルーチンワークを少しでも減らす」間の妥協をさがす
       ---------------------------------------------------------------

    [ドキュメント]

    [インストール]

    ○ makefml 対話設定プログラム (CUI)

    ○ CGI を使った対話設定プログラム (4.0 new)

    [一般]

    ◯ データベースアクセス機能 (4.0 new)
    	メンバーリストをデータベースで管理する
    	記事をデータベースに格納する
       など…

    	PostgreSQL
    	MySQL
    	LDAP (Leightweight Directory Access Protocol)

    ○ メッセージの多国語化 (3.0 new)

    ○ メモリ仕様効率の改善 (3.0 new)

    [セキュリティ]

    ○ 投稿メールのフィルタリング (2.2 new function)
       例: 中身のないメールや'unsubscribe'一行だけのメールをはじく

    ○ フィルタ: Melissaウィルスチェック(2.2.1 new)

    ○ Message-ID Cache, system account rejection, ... against loop

    ○ トラフィックモニタ (2.2 new function)
       トラフィックを監視してバースト的に送ってくる奴は reject する
       e.g. 複雑でない mail bomb 対策

    ○ MD5 checksum によるループ検出 (3.0 new, optional)

    ○ FML Advisory
       最近の諸問題とそれに関するfmlの設定などについてのアドバイザリィ
    	e.g. Melissa virus, happy99

    [配送関係]

    ○ 配送用アドレス、コマンド用アドレスごとのアクセス制御
    	アクセス制御(anyone/members_only/moderator)

       [moderator タイプ(I, II, III; II is the default)について]
       デフォルトのモデレータはfmlがスプールして配送していいかどうかを
       one time password と共にモデレータに判断をゆだねる。

    ○ まとめ送り (ユーザごとに細かく送り方/時間を設定可能)

    ○ PGP暗号化 ML
    	PGP 2
    	PGP 5 (4.0 new)

    ○ 配送メールのヘッダフィールドのきめこまかい設定

    ○ スプールする/しない
       標準の ML の記事スプール以外にもアーカイブは設定できます。
    ○ 自動圧縮(spool -> tar.gz style)
    ○ 記事の自動 expiration (DISKがない場合)
    ○ HTML記事作成 (HTML 4.0 FORMAT)
    	new thread format (2.2.1 new)

    ○ メール配送は直接SMTPを張る(デフォルト)/sendmailを起動する
       応用として配送専用マシンを別にするなどができる。

       SMTPを直接張るため自分のマシンで sendmail が走っている必要はありません。
       そして SMTP を理解してくれるなら sendmail である必要もないです。
       そのためメール配送系のシステムは入れ換えても問題はありません。

    ○ スタートレック宇宙歴サポート:D
       宇宙歴をつけるmh, mh-e user interface つき:-)

    ○ mead.pl (2.2 new)
       エラーメールを解析して自動的にユーザを削除する

    ○ 様々なMLへの制限 (2.2 new)
       fml が受けるメールのサイズの上限
       MLのメンバー数の制限
       メール一通あたりにかけるコマンド数の上限
       メール一通あたりの特定のコマンド数の上限 (例: get コマンド数の上限)

    ○ $OUTGOING_ADDRESS (2.2.1 new)
       fmlが直接SMTPでMTAに投げるのではなく、特定のアドレスに投げる
       perlの生存時間を短くする HACK
       i486 (メモリ 16M )のような非力なマシンで有効

    ○ POP3によるML  (optional)
       例えば 一定時間間隔で POP をかけてMLを動かし
       配送はサイトのSMTPサーバにやらせることでMLを実行する裏技。

    ○ (後ろ向き)In-Reply-To: emulation (2.2.1 new, optional)

    ○ HTML mail 対策: HTML部分を切落とす (2.2.1 new, optional)
        ContentHandler

    [コマンド関係]

    ○ リモート管理
       認証方式はアドレス認証/パスワード保存(crypt or MD5)/PGPベースの認証
    	PGP 2
    	PGP 5 (4.0 new)

    ○ 豊富なファイル操作 (まとめ送りや mget, get コマンド等で使われる)

    	mget と まとめ送りでの User interface は次のようなものが取り
    	揃えられています。ユーザーごとに設定できます
    	＃ lha 系のものはSJISに変換するオプションもあります

    	PLAINTEXT
    		UNIX FROM
    		RFC934
    		RFC1153
    		MIME/Multipart

    	COMPRESSED FORMAT
    		gzip UNIX FROM file
    		Lha + Ish
    		Lha + uuencode
    		tar + gzip
    		zip + base64  (2.2 new)
    		uuencode

    ○ newsyslog(8); log ファイルのrotation (log -> log.0, log.0 -> log.1 ...)
       e.g. $DIR/log, $DIR/members, $DIR/actives

    ○ コマンドサーバの Listserv(Majordomo) 互換インターフェイス

    [登録関係]

    ○ 自動登録のメンバーリストの扱い方を変更 (3.0 new)

    ○ 自動的にメンバー登録をする機能 (default: confirmation)
       登録への確認/Subject: subscribe/本文に Subscribe/キーワードなし

    ○ 自動でない場合のsubscribeリクエストに対し confirmation を行う (2.2.1 new)

       $MANUAL_REGISTRATION_TYPE = 'confirmation' or 'forward_to_admin'

    ○  ML を抜ける時の confirmation (2.2 new); optional

    ○ CHADDR コマンドの confirmation (2.2.1 new); optional

    ○ confirmd (2.2 new)
       一定期間ごとに参加し続けるか？をユーザに尋ねる。返事がないと削除する。

    ○ USE_MEMBER_NAME (2.2 new)
       メンバーのアドレスと名前をセットにして管理する

    他

    これからMLをはじめる方にはそのまま、MLサーバをカスタマイズして使いたい
    とおもっている方には改造のプラットホームとして利用できるかと思います。
    ＃現状のMLサーバに求められる基本機能のコード(の“一例")は一通り揃って
    ＃いると思います。最適解ってわけじゃないけど :-)

    また、この類いの「外部のサイトとの通信を行うプログラム」はすべてそうで
    すが最新版のソースコードを手に入れて使うべきです。また改造も最新版につ
    いてした方がよいとおもいます。