.translate value: string 文字列 .translate value: number 数字 .translate value: regexp 正規表現 .translate value: value: 変数がとりうる値: INFO: # FML Configurable Variable Definitions # # Copyright (C) 1993-2000 Ken'ichi Fukamachi # All rights reserved. # 1993-1996 fukachan@phys.titech.ac.jp # 1996-2000 fukachan@sapporo.iij.ad.jp # # FML is free software; you can redistribute it and/or modify # it under the terms of GNU General Public License. # See the file COPYING for more details. # # $Id: MANIFEST.Japanese,v 1.11 2003/12/06 04:06:30 fukachan Exp $ # ##################################################################### # ### Section: DNS and Other Fundamental (CF Version, debug, Language) ### # config.ph configuration version .j Section::Fundamental 基本的な設定 .j config.phのバージョン CFVersion: 5.0 # global debug option. if non-nil, debug mode. # In debug mode, NOT do distribution .j デバッグフラッグ: 0 以外にするとデバッグモードになる。 # value: 1/0 debug: 0 # for further extension: FML 2.1 DOES NOT use this # except for files (e.g. help, welcome, ...) created in "makefml newml" .j テンプレートファイル(helpなど)の言語指定 # value: Japanese/English LANGUAGE: Japanese # &Mesg() tries to translate thie language. .j エラーメッセージの言語指定 # value: Japanese/English MESSAGE_LANGUAGE: # ## Sub Section: DNS ## .j Section::Fundamental::DNS 基本的な設定(DNS) # DNS setting s automatically checked by makefml but check them, please # # DOMAINNAME the domain name e.g. fml.org # FQDN Fully Qualified Domain Name e.g. beth.fml.org # .j fml の動いているマシンの名前 .j DOMAINNAME ドメイン名 例: fml.org .j FQDN 完全なマシン名(Fully Qualified Domain Name) 例: beth.fml.org .j 注: virtual domainの場合は virtual の名前になるだろう # value: string DOMAINNAME: &fix:dn phys.titech.ac.jp FQDN: &fix:fqdn axion.phys.titech.ac.jp ##################################################################### # ### Section: Mailing List Policy (for Post, Commands), Maintainer ### # # $MAIL_LIST is THE ADDRESS FOR POST. # $PERMIT_POST_FROM is "anyone", "members_only" or "moderator", # which permit post from who? If not-member posts is rejected, # THE FUNCTION $REJECT_POST_HANDLER is applied. # $REJECT_POST_HANDLER is "reject", "auto_subscribe" or "ignore" # you can use "auto_regist" used in fml 2.x. # # **ATTENTION**: "reject" implies just "NOT REGISTERED IN $MEMBER_LIST". # See "Section: Security" for positive reject against e.g. spammers. # .j $MAIL_LIST はメーリングリストのアドレスであり、投稿するアドレスでもある .j .j $PERMIT_POST_FROM は投稿できる人の種類を指定する。取り得る値は .j .j anyone 誰でも投稿可能 .j members_only MLのメンバーとして登録してある人 (デフォールト) .j moderator モデレータとして登録されている人 .j .j もしメンバー以外が投稿しようとすると$REJECT_POST_HANDLERが適用される。 .j デフォールトは reject で投稿を拒否する。 .j .j reject 投稿を拒否する。$DIR/deny ファイルを送り返す .j auto_subscribe 自動登録モードに入る .j ignore 単にそのメールを無視する。何も起こらない。 .j # value: string MAIL_LIST: Elena@$FQDN PERMIT_POST_FROM: members_only REJECT_POST_HANDLER: reject # $CONTROL_ADDRESS is THE ADDRESS FOR COMMANDS. # $PERMIT_COMMAND_FROM is "anyone", "members_only" or "moderator", # which permit command from who? If not-member commands is rejected, # THE FUNCTION $REJECT_COMMAND_HANDLER is applied. # $REJECT_COMMAND_HANDLER is "reject", "auto_subscribe" or "ignore" # you can use "auto_regist" used in fml 2.x. # .j $CONTROL_ADDRESS はメーリングリストのコマンド用のアドレス .j .j $PERMIT_COMMAND_FROM はコマンドが使える人の種類を指定する。取り得る値は .j .j anyone 誰でも投稿可能 .j members_only MLのメンバーとして登録してある人 (デフォールト) .j moderator モデレータとして登録されている人 .j .j もしメンバー以外が投稿しようとすると$REJECT_COMMAND_HANDLERが適用される。 .j デフォールトは reject でコマンドを拒否する。 .j .j reject 投稿を拒否する。$DIR/deny ファイルを送り返す .j auto_subscribe 自動登録モードに入る .j ignore 単にそのメールを無視する。何も起こらない。 .j .j 注意: いわゆる"自動登録"は通常 $REJECT_COMMAND_HANDLER の値をを .j auto_subscribe にすることを意味する。 .j # value: string CONTROL_ADDRESS: Elena-ctl@$FQDN PERMIT_COMMAND_FROM: members_only REJECT_COMMAND_HANDLER: reject # When $MAIL_LIST_ACCEPT_COMMAND = 1, # both $MAIL_LIST and $CONTROL_ADDRESS accept commands # which format is "# command". .j hml互換モード # value: 1/0 MAIL_LIST_ACCEPT_COMMAND: # ## Sub Section: Maintainer ## # $MAINTAINER != $MAIL_LIST IS REQUIRED AGAINST MAIL LOOP .j $MAINTAINER はMLの管理者のアドレス .j $MAINTAINER_SIGNATURE はそのアドレスの名前に相当する部分になる .j デフォールトでは$MAINTAINER_SIGNATURE はなし # value: string MAINTAINER: Elena-admin@$FQDN MAINTAINER_SIGNATURE: # ## Sub Section: ML_FN ## # We expand # To: $MAIL_LIST $ML_FN # => # To: Elena@fml.org (Elena Lolabrigita ML) .j ヘッダに現れるMLの名前 .j fml 3.0 ではコマンドの結果などでお目にかかることになる .j .j 歴史: fml 2.1 以前では投稿メールのヘッダは強制的に .j To: $MAIL_LIST $ML_FN .j にされていた。これは常に同じ場所に同じ情報が来るようにという .j 配慮のものだった。3.0 のデフォールトではその書き換えはない .j (=> $REWRITE_TO) # value: string ML_FN: (Elena Lolabrigita ML) ##################################################################### # ### Section: Directory ### # We use fully pathed directory name => $FP_SPOOL_DIR(= $DIR/$SPOOL_DIR) # and relative path $SPOOL_DIR (e.g. spool) .j Section::Directory ディレクトリ構成 .j .j $FP_ で始まるものは full path .j そうでないものは $DIR 以下の相対 path である。 .j .j 注: $FP_変数は初期化仮定で自動的に補間され生成されるので .j config.ph では相対パスのみを指定する。 .j .j 注: tar など相対パスを必要とするものがあるから相対パスも必要である # article spool directory .j 記事を保管する場所。一通一ファイル # value: directory string SPOOL_DIR: spool # tmp, after chdir, under DIR .j temporary # value: directory string TMP_DIR: tmp # LOG is /var/log (4.4BSD style) .j var/ は"multi-purpose log, temporary, transient, and spool files"である .j var/log/ ログファイル .j var/run/ pid ファイルなどのシステム情報 .j var/db/ データベース .j # value: directory string VAR_DIR: var VARLOG_DIR: var/log VARRUN_DIR: var/run VARDB_DIR: var/db ##################################################################### # ### Section: Manual Registration ### .j Section::ManualRegistration 手動登録 .j .j ManualRegistration という名前は紛らわしいが .j 管理者が明示的に登録作業をする場合を指す。自動登録の反対 .j (自動登録はfmlが自動的に登録作業を行なう)。 .j .j fmlに送られた「登録依頼のメール」は .j forward_to_admin ML管理者へ登録の依頼があったことを伝える .j confirmation その送り主に登録して良いか確認し .j 確認後にML管理者へ登録の依頼があったことを伝える .j その後MLの管理者は .j fmlの走るホスト上で makefml add .j adminコマンド .j などの作業をする .j # only support 'confirmation' or 'forward_to_admin' # I call this "5 way hand shake". # value: confirmation/forward_to_admin MANUAL_REGISTRATION_TYPE: confirmation .j 送り主に確認メールを送る際のメールのテンプレート # value: directory string MANUAL_REGISTRATION_CONFIRMATION_FILE: $DIR/confirm.msub ##################################################################### # ### Section: Automatic Registration ### .j .j Section::AutomaticRegistration 自動登録 .j # If at least either REJECT_{POST,COMMAND}_HANDLER is "auto_subscribe" # or "auto_regist", # PLEASE SELECT THE TYPE OF AUTOMATIC REGISTRATION .j 自動登録の種類 .j confirmation 送り主に登録意思の確認を求める。デフォールト .j subject 確認を求めない。subject: にコマンドを書く .j body 確認を求めない。メール本文にコマンドを書く .j no-keyword 確認を求めない。キーワードは不必要 .j .j 注: no-keywordは宴会のMLくらいしか使い道がないので使わないように .j # value: confirmation/subject/body/no-keywrod AUTO_REGISTRATION_TYPE: confirmation # $REQUIRE_SUBSCRIBE (CFVersion 2) => $AUTO_REGISTRATION_KEYWORD .j 登録依頼メールに書くキーワード # value: string AUTO_REGISTRATION_KEYWORD: subscribe # when auto-registered, # we apply $AUTO_REGISTRATION_DEFAULT_MODE e.g. "m=3mp s=1" to the address. .j 登録する際に強制するパラメータ。使えるパラメータはactivesに使えるもの .j 詳しくは doc/Japanese/ 以下のファイルなどを参照 .j 例: デフォールトはまとめ送りにする .j # value: string AUTO_REGISTRATION_DEFAULT_MODE: # "confirmation" (default) mode configurations # please see doc/tutorial for the detail of "confirmation" .j 登録の意思を確認するモードで使うパラメータ .j $CONFIRMATION_SUBSCRIBE 登録依頼メールのキーワード .j $CONFIRMATION_KEYWORD 登録意思確認メールで使うキーワード .j $CONFIRMATION_ADDRESS .j $CONFIRMATION_WELCOME_STATEMENT # value: string CONFIRMATION_ADDRESS: CONFIRMATION_SUBSCRIBE: subscribe CONFIRMATION_KEYWORD: confirm CONFIRMATION_WELCOME_STATEMENT: # explanation of confirmation .j 登録の意思を確認する際に送り返すメールのテンプレート # value: filename string CONFIRMATION_FILE: $DIR/confirm # Expire of request queue. The unit is "hour". (default, 168 == 7*24) # value: number .j 意思確認のメールの返事を待つ時間。単位は時間(hour) .j デフォールトでは一週間 CONFIRMATION_EXPIRE: 168 # confirmation request queue (you should not manually edit it) .j 確認するモードのデータベース(依頼queueのデータ) # value: filename string CONFIRMATION_LIST: # default keyword for trap .j デフォールトの登録依頼のキーワード(上ですでに定義済みだが、互換性のため) # value: string DEFAULT_SUBSCRIBE: subscribe # WHEN either $REJECT_{POST,COMMAND}_HANDLER has "auto_subscribe" # (or "auto_regist"), # we do automatic registration. After we register an address to # $MEMBER_LIST ($FILE_TO_REGIST if $FILE_TO_REGIST is set), # we send $WELCOME_FILE to him/her with the subject $WELCOME_STATEMENT .j 自動登録が成功した際に登録したアドレスへ送るメールのテンプレート .j ガイドの取り方や抜け方について書いておくと良い。 # value: filename string WELCOME_FILE: $DIR/welcome .j 自動登録が成功した際に登録したアドレスへ送るメールのSubject:のテンプレート # value: string WELCOME_STATEMENT:Welcome to our $ML_FN\n You are added automatically .j 自動登録の際に書き込むファイルをデフォールトから変更する際に使う # e.g. $DIR/members (default) # value: filename string FILE_TO_REGIST: # In default if body lines > $AUTO_REGISTRATION_LINES_LIMIT, # we forward this mail to $MAIL_LIST. If $AUTO_REGISTERED_UNDELIVER_P is set, # we ALWAYS DO NOT Forward it to $MAIL_LIST. .j .j $AUTO_REGISTERED_UNDELIVER_P 登録したことをMLにアナウンスするか? .j $AUTO_REGISTRATION_LINES_LIMIT 何行以上のメールならアナウンスするか? .j .j 注: confirmation では無意味な変数といえる。実際この機能は使われていない .j confirmation以前の時代のためのものと考えて欲しい .j # value: 1/0 AUTO_REGISTERED_UNDELIVER_P: 1 AUTO_REGISTRATION_LINES_LIMIT: 0 ##################################################################### # ### Section: Confirmd ### .j Section::Confirmd confirmd .j .j 定期的に「これからもMLに入り続けるか?」の確認をとるデーモン .j .j $CONFIRMD_ACK_REQ_FILE 送るメールのテンプレート .j $CONFIRMD_ACK_LOGFILE 確認のqueueのログ # confirmd # value: filename string CONFIRMD_ACK_REQ_FILE: $DIR/confirmd.ackreq CONFIRMD_ACK_LOGFILE: $VARLOG_DIR/confirmd.ack .j $CONFIRMD_ACK_EXPIRE_UNIT (デフォールトでは一カ月)に一度 .j 「これからもMLに入り続けるか?」を尋ねる。 .j 返事を$CONFIRMD_ACK_WAIT_UNIT (2週間)待つ。 .j 返事がない時はそのアドレスを削除する。 .j # value: number / ( number + month/week/day ) CONFIRMD_ACK_EXPIRE_UNIT: 1month CONFIRMD_ACK_WAIT_UNIT: 2weeks ##################################################################### # ### Section: Remote Administration ### .j Section::RemoteAdministration リモート管理 .j .j メールでコマンドを送ってMLの管理をすること .j # For security, YOU CANNOT CONTROL FML IN REMOTE (DEFAULT). # IF $REMOTE_ADMINISTRATION is set, You can control FML in remote. # The remote control require some kind of authentication. # The choice of authentication is $REMOTE_ADMINISTRATION_AUTH_TYPE, # which is one of # address From: field # crypt From: field + password (e.g. "#admin pass PASSWORD") # md5 From: field + password (e.g. "#admin pass PASSWORD") # pgp PGP(Pretty Good Privacy) signature # # The difference of "crypt" and "md5" is $PASSWD_FILE format. # .j リモート管理を使うか?否か? デフォールトは0(しない) # value: 1/0 REMOTE_ADMINISTRATION: 0 # TYPE is address, crypt, md5 or pgp. # FYI: $REMOTE_ADMINISTRATION_REQUIRE_PASSWORD <=> "crypt" .j 認証のタイプ .j .j crypt アドレスとパスワード認証 .j md5 アドレスとパスワードで認証 .j (パスワードの暗号化にmd5を使う以外はcryptと同じ) .j address アドレスだけで認証 .j pgp 認証はPGP 2.x のclear sign で行なう .j # value: crypt/address/md5/pgp REMOTE_ADMINISTRATION_AUTH_TYPE: crypt .j リモート管理を認めるメンバーのアドレスリスト .j .j 認証: pgp認証の場合は無意味に近いが… .j # members who can use admin commands for the type "address" # value: filename string ADMIN_MEMBER_LIST: $DIR/members-admin .j リモート管理で使えるリモートコマンドのヘルプファイル # help file of admin commands # value: filename string ADMIN_HELP_FILE: $DIR/help-admin .j パスワードファイル .j ファイルフォーマットは .j アドレス 空白 暗号化されたパスワード .j # password file to authenticate members # value: filename string PASSWD_FILE: $DIR/etc/passwd .j .j リモートコマンドでユーザを登録したさいに .j (コマンドは "admin add" ないし "approve パスワード add") .j $WELCOME_FILE を送り返すか?デフォールトはしない .j # "admin add" to add an address to a member list. If succeeds, FML # sends back WELCOME_FILE if this variable is defined. Default is 0, # so the maintainer which adds it notifies 'work is done' to the subscriber. # value: 1/0 ADMIN_ADD_SEND_WELCOME_FILE: 0 .j "admin log" コマンドはログファイルを管理者に送り返す .j そのままではとても長いメールになるので最期の100行だけを送り返す .j その行数が $ADMIN_LOG_DEFAULT_LINE_LIMIT .j # "admin log" is "tail -100 log" in default # value: number ADMIN_LOG_DEFAULT_LINE_LIMIT: 100 .j pgp のデータを置くディレクトリ # PGP PATH # value: filename string PGP_PATH: $DIR/etc/pgp ##################################################################### # ### Section: Moderations; moderators check posted articles ### .j Section::Moderator モデレータ .j # If you select "moderator", you can select forwarding type to 1 or 2. .j モデレータタイプ .j .j 1 モデレータだけがしっているパスワードで認証 .j 2 モデレータにはone time passwordつきの査読依頼がくる .j 3 1 + 2 。モデレータだけは査読なしで投稿できるが一般ユーザは査読を受ける .j .j 注: 数字はわかりにくい。将来は何か名前をつけるべきである # value: 1/2/3 MODERATOR_FORWARD_TYPE: 2 # This is a list to send posted articles for the certification. # If this file does not exist, moderator == $MAINTAINER. # # Moderators who certificate articles posted to this mailing list # They receive articles posted here. We do not check moderators's # addresses. We check only "moderators knows passwords or identifiers". .j モデレータの人の(アドレス)リスト .j つまり査読依頼メールがフォワードされる人の一覧表 .j このファイルがない場合は $MAINTAINER の人に送られる # value: filename string MODERATOR_MEMBER_LIST: $DIR/moderators # expire not certifield submission to moderated ML # default: 2 weeks .j 査読依頼はどのくらいの期間有効か? .j つまり、だれも査読してOKを出さない場合は闇に葬られることになる。 .j $MODERATOR_EXPIRE_LIMIT 日後、候補から外される。 # value: number MODERATOR_EXPIRE_LIMIT: 14 ##################################################################### # ### Section: Security ### .j Section::Security セキュリティ .j From:が特殊なアカウントの場合拒否する .j 個人を特定できないようなアドレスを使うべきではない .j またループを防ぐためにも有効である。 .j これは .j $PERMIT_POST_FROM = "anyone"; (誰でも投稿可能) .j であっても適用される厳しい制限である。 .j # We reject $REJECT_ADDR@ARBITRARY.DOMAINS, # since these are clearly NOT individuals. # value: regexp string REJECT_ADDR: root|postmaster|MAILER-DAEMON|msgs|nobody|news|majordomo|listserv|listproc|\S+\-help|\S+\-subscribe|\S+\-unsubscribe .j このリストにFrom: が含まれていたら拒否する # list of spammers to be rejected, which corresponds /etc/sendmail.spamlist # value: filename string REJECT_ADDR_LIST: $DIR/spamlist .j unix fromをloop checkのデータとしてつかうか?使わないか? .j デフォールトは使う(0)。 # DO CHECK UNIX From Loop or not # value: 1/0 NOT_USE_UNIX_FROM_LOOP_CHECK: 0 .j Message-ID: の重複チェックを行なう(デフォールト)。 .j Message-ID: はメールごとに違うので同じMessage-ID:のメールが来ることは .j ループを意味する。 # DO Message-Id: cache and check loops # value: 1/0 CHECK_MESSAGE_ID: 1 .j メール本文のMD5 checksumをとって重複チェックを行なう。 .j MD5的にメール本文の同じメールが来ることはまず間違いなくループを意味する .j デフォールトは"チェックしない"。 .j # loop check based on mailbody md5 cksum cache # value: 1/0 CHECK_MAILBODY_CKSUM: 0 .j getpeername()の値をログにとる(デフォールトは取らない) .j 注: 現代のMTAでは分散型なのでそもそもとりようがないので意味なし # Logs the getpeername() # value: 1/0 LOG_CONNECTION: 0 .j アドレスのチェックの度合 .j 大雑把にいえばサブドメイン/マシン名がついていても同じものとみなすか? .j 例えば .j fukachan@axion.phys.titech.ac.jp .j fukachan@phys.titech.ac.jp .j は同じアドレスとみなすべきか?否か? .j 右から $ADDR_CHECK_MAX 個分である。この例では .j $ADDR_CHECK_MAX が4以下なら同じものとみなす。 .j 5なら別のアドレスとみなすことになる。 # address check levels, which level is the tree depth from the root. # value: number ADDR_CHECK_MAX: 3 .j メールサイズの制限。デフォールトは制限なし # In-coming mail size > $INCOMING_MAIL_SIZE_LIMIT, fml discards it # and send a warning only to the maintainer. # 0 (default) implies infinite (no limit) # If $NOTIFY_MAIL_SIZE_OVERFLOW is set, notify the rejection to the sender. # If $ANNOUNCE_MAIL_SIZE_OVERFLOW is set, announce received the over # size mail to the ML (SARASHIMONO:-). # value: number INCOMING_MAIL_SIZE_LIMIT: .j メールサイズが $INCOMING_MAIL_SIZE_LIMIT を越えた時に .j そのメールを出した人に本人に「大きいメールだから拒否」と通知するか? .j デフォールトは通知する。 .j アタックの可能性もあるのでしてはいけないという判断をする人もあるだろう # value: 1/0 NOTIFY_MAIL_SIZE_OVERFLOW: 1 .j 投稿メールのサイズが $INCOMING_MAIL_SIZE_LIMIT を越えた時に .j MLに「大きいメールだから拒否した」とアナウンスするか? .j デフォールトは"しない" .j アタックの可能性もあるのでしてはいけないという判断をする人もあるだろう # value: 1/0 ANNOUNCE_MAIL_SIZE_OVERFLOW: 0 .j MLのメンバーの上限。主に自動登録用 .j デフォールトは無制限 # Resource Limit (for ISP ?): (default 0 == not check this limit) # the maximum of ML delivery members when auto registration routine works. # If member > $MAX_MEMBER_LIMIT, auto registration rejects the request. # We check actives to permit aliases of post-able addresses. # We check @ACTIVE_LIST effective members, not @MEMBER_LIST. # value: number MAX_MEMBER_LIMIT: .j フィルタリング機構を有効にするか? デフォールトではNO .j XXX: フィルタリングは推奨 # Envelope Filtering for distribution mails # &EnvelopeFilter is called in the top of &Distribute if you set # $USE_DISTRIBUTE_FILTER = 1; # You can use $DISTRIBUTE_FILTER_HOOK for advanced customizes. # value: 1/0 USE_DISTRIBUTE_FILTER: .j フィルタリングのフック。 .j perlで複雑な条件文を各ために用いる .j 詳細は doc/Japanese/ 以下のファイルなどを参照 参照 # value: string DISTRIBUTE_FILTER_HOOK: .j フィルタが弾いたと本人に知らせるか?(デフォールトではしない) .j アタックの可能性もあるのでしてはいけないという判断をする人もあるだろう # $FILTER_NOTIFY_REJECTION enables fml.pl notifies the rejection to # the sender. # value: 1/0 FILTER_NOTIFY_REJECTION: .j "# command"のようなメールは拒否する .j 注: hml互換モードはobsolete # Attributes # When $FILTER_ATTR_REJECT_COMMAND is 1 under distribution mode, # rejects "# command" syntax just before distribution (&Distribute;) # value: 1/0 FILTER_ATTR_REJECT_COMMAND: .j UNSUBSCRIBEのような2バイト英語だけのメールを拒否する # reject Japanese "2byes English words" # value: 1/0 FILTER_ATTR_REJECT_2BYTES_COMMAND: .j Microsoft GUIDのような文字列を含む添付ファイルがついた .j MIME/Multipart のメールは拒否する。 .j (ウィルスつきのマクロかもしれないから) # reject MIME/multipart mails wich Microsoft GUID within it, # We intend to reject "Melissa virus" family by it. # value: 1/0 FILTER_ATTR_REJECT_MS_GUID: 1 .j HTMLとplaintextで同じものが入った腐っているメールは拒否する .j デフォールトは拒否しない .j .j fml 3.0 では拡張され ContentHandler という機構がおこなう .j 互換性のためこの変数は現在も使うことが出来る。 .j # reject HTML mails that the same content exist in the form of both # plain and html. e.g. some versions of M$ outlook, netscape mail # "AGAINST_HTML_MAIL: 1/0" is old style, which works for compatibility though. # NULL (default) is "pass through a html mail". # value: "strip" / "reject" / "" HTML_MAIL_DEFAULT_HANDLER: .j トラフィックモニタ .j 対メール爆弾機構 .j 推奨 # Mail Traffic Information: internal traffic monitor # value: 1/0 USE_MTI: .j トラフィックの異常増大を一度警告したら .j $MTI_WARN_INTERVAL (default 3600秒) 間は警告を控える .j .j 注: 警告を頻繁にだすとそれ自体がメール爆弾になってしまう # MIT warning (mail bomb report) negative cache interval # to avoid mail bomb of "mail bomb attack report" itself. # value: number MTI_WARN_INTERVAL: 3600 .j $MTI_WARN_INTERVALの使うキャッシュファイル # value: filename string MTI_WARN_LASTLOG: .j "MLを辞めるコマンド" にも confirmation を用いるか? .j defualt は使わない # Optional. If UNSUBSCRIBE_AUTH_TYPE is 'confirmation', FML sends back # confirmation against a fake. In default, FML does not do confirmation. # available type is "confirmation" only. # value: confirmation UNSUBSCRIBE_AUTH_TYPE: .j "chaddr アドレスを変更するコマンド" にも confirmation を用いるか? .j defualt は使わない # chaddr checks confirmation # value: confirmation / "" CHADDR_AUTH_TYPE: .j fmlに突っ込まれた生メールを一定期間保存しておく(default では保存しない) .j 保存期間はトラフィックによって変わる .j .j 注: ある程度DISKが必要 # LOGGING THE LATEST IN-COMING MAILS # Logs an in-coming mail to $LOG_MAIL_DIR/$id # where ($id = `cat $LOG_MAIL_SEQ`; $id = $id % $NUM_LOG_MAIL; $id++). # Latest $NUM_LOG_MAIL files are stored in $LOG_MAIL_DIR and each file size # is limited up to $LOG_MAIL_FILE_SIZE_MAX bytes to save disk. # value: 1/0 USE_LOG_MAIL: 0 .j $USE_LOG_MAIL が生メールの保存に使うディレクトリとファイル名のカウンタ # value: filename string LOG_MAIL_DIR: $VAR_DIR/Mail LOG_MAIL_SEQ: $LOG_MAIL_DIR/.seq .j 保存するファイル数(default 100) .j 101 通めは 1 になる。つまり modulus により円管バッファになっている .j 大きいメールは本文先頭の $LOG_MAIL_FILE_SIZE_MAX (2048) bytes分だけ .j 保存する(ヘッダ等の方が重要なので大きいメール本文は途中まででも構わない) # value: number NUM_LOG_MAIL: 100 LOG_MAIL_FILE_SIZE_MAX: 2048 .j 投稿されたメールを暗号化する # PGP Encrpyted ML # value: 1/0 USE_ENCRYPTED_DISTRIBUTION: .j 暗号化の仕方。現在はPGPのみ # value: pgp ENCRYPTED_DISTRIBUTION_TYPE: pgp ##################################################################### # ### Section: Header Customization ### .j Section::Header ヘッダのカスタマイズ # In general, you can control fields in header in the following: # # @HdrFieldsOrder Fields Order In Header # # &DEFINE_FIELD_ORIGINAL('field'); Conserve Original # &DEFINE_FIELD_FORCED('field', "contents"); Overwrite # # In default, we discard fields not shown in @HdrFieldsOrder. # Date: definition ("makefml config" can control this) # 1 original-date Date: # * Date: == when distribute() works # 2 distribute-date+posted Date: + Posted: # 3 distribute-date+x-posted Date: + X-Posted: # 4 distribute-date+x-original-date Date: + X-Original-Date: # * Date: == when fml.pl receives or is kicked off. # 5 received-date+posted Date: + Posted: # 6 received-date+x-posted Date: + X-Posted: # 7 received-date+x-original-date Date: + X-Original-Date: # value: original-date/distribute-date+posted/distribute-date+x-posted # /distribute-date+x-original-date/received-date+posted # /received-date+x-posted/received-date+x-original-date .j Date: の値 .j 1 original-date Date: .j * Date: == when distribute() works .j 2 distribute-date+posted Date: + Posted: .j 3 distribute-date+x-posted Date: + X-Posted: .j 4 distribute-date+x-original-date Date: + X-Original-Date: .j * Date: == when fml.pl receives or is kicked off. .j 5 received-date+posted Date: + Posted: .j 6 received-date+x-posted Date: + X-Posted: .j 7 received-date+x-original-date Date: + X-Original-Date: .j などいろいろ DATE_TYPE: original # In Header, we expand these values to # # $XMLNAME # $XMLCOUNT: sequence-number # # e.g. # X-ML-Name: Elena # X-Mail-Count: 00007 # .j ヘッダにつけるMLの識別子とカウント .j X-ML-Name: Elena .j X-Mail-Count: 00007 .j # value: string XMLNAME: X-ML-Name: Elena XMLCOUNT: X-Mail-Count # In default subject tag does not exist to show more and more effective # subject and body. Client Interface SHOULD CONTROL subject descriptions. # The available type is [:] [,] [ ] (:) (,) ( ). # e.g. [:] => [Elena:00100] format (here $BRACKET is "Elena"). # But you can customize SUBJECT_FREE_* series variables. # Please see doc/tutorial for the detail .j Subject:のタグの種類。デフォールトは何もつけない .j .j 重要な情報が減るだけなので本来こんなTAGはつけるべきではない。 .j だめなMUA対策としてそういうものだと歴史的に使われているとおもわれる .j # value: (:) / [:] / () / [] / (,) / [,] / () / [] / (ID) / [ID] / "" SUBJECT_TAG_TYPE: .j Subject:のタグにつくMLの識別子 # BRACKET of "Subject: [BRACKET:ID] ..." form # value: string BRACKET: Elena .j fml 3.0 ではどうでもいい変数 .j 歴史: 昔はある目的のためにあったが現在では使わない # Obsoletes? We strip off e.g. [ML:fukachan] form in Subject # but this operations depends on special forms, so not functional. # You do not expect a lot on this option. STRIP_BRACKETS: 0 .j Subject:タグの内部表現 .j $SUBJECT_TAG_TYPE はこれの簡易版である。 .j $SUBJECT_TAG_TYPE を使わずにこれらの変数を使って .j 自分でタグを定義することも出来る。 # "Free Subject Tag" settings (see doc/tutorial and libtagdef.pl on examples) # value: regexp string BRACKET_SEPARATOR: SUBJECT_FREE_FORM: SUBJECT_FREE_FORM_REGEXP: SUBJECT_FORM_LONG_ID: .j Errors-To: を使うか?(デフォールトは使わない) .j 注: RFC1123 によりErrors-To: は今日では使わない # Errors-To: field # Errors-To is not referred in RFC822. Sendmail 8.x do not see this # field in default. However in error may be effective for e.g. Pasokon # Tuusin, BITNET.. # value: 1/0 USE_ERRORS_TO: .j Errors-To: に使う値を強制する時に使う # value: string ERRORS_TO: .j Original の Message-ID: を使うか?使う(1)がデフォールト .j 0にするとfmlが適当な Message-ID: をつける。生成関数はGenMessageID .j そのフォーマットは 日づけ.FMLAAA.数字(pid).$MAIL_LIST のようなもの # Message-Id: use original Message-Id or Server Defined Message-Id ? # value: 1/0 USE_ORIGINAL_MESSAGE_ID: 1 .j Precedence: フィールド # Precedence: field; # why "list" is not used ;_; but netbsd.org is "list" # value: string PRECEDENCE: bulk .j 投稿メールにスタートレック宇宙歴をヘッダにつける(笑) .j 注: 宇宙歴の方程式は複数あるがそのうちの一つを使っている .j 正しい方程式かどうかはまた別だ:-) .j 詳細はスタートレックエンサイクロペディアなどを参照されたい # X-Stardate: field # value: 1/0 APPEND_STARDATE: # We should force "To: $MAIL_LIST" form "For Eye" or NOT? # # 0 Pass the original field To: # 1 We rewrite "To: $MAIL_LIST, original-to-fields". # 2 Force "To: $MAIL_LIST". # # REWRITE_TO = 1 if NOT_REWRITE_TO == 0 (2.1 Release) .j To: の値。3.0のデフォールトはす通し。 # value: 0/1/2 REWRITE_TO: .j 未定義の時のデフォールト値 .j 通常はログファイルに現れるくらい # Default values if no value (no field) is given. # value: string Subject: From_address: not.found User: not.found Date: not.found .j タイムゾーン .j 通常はインストール時に指定するもの # TIME ZONE; +0900 is RFC822 syntax (I like JST but ... ;-) # value: +\d{4} / -\d{4} TZone: +0900 .j $SKIP_FIELDS (次)以外のヘッダフィールドをすべて通す # ## Sub Section: Pass All Header ? ## # In default we pass only defined fields of the header # which is defined in @HdrFieldsOrder (see "sub SetDefaults" in fml.pl). # All files except $SKIP_FIELDS is passed through # when $PASS_ALL_FIELDS_IN_HEADER is set. # The old variable name is $SUPERFLUOUS_HEADERS. # value: 1/0 PASS_ALL_FIELDS_IN_HEADER: 1 .j $SKIP_FIELDS のヘッダフィールドは落す。 .j 少なくとも Return-Receipt-To: は最低限はじくべきである .j ループの原因になり得るためである # value: regexp string SKIP_FIELDS: Return-Receipt-To ##################################################################### # ### Section: Commands, Command Traps, File Operations (e.g. mget) ### .j Section::Command コマンドまわり .j # help と #helpは一緒 .j 歴史: 旧時代の産物 # COMMAND format is "#help" == "# help" if $COMMAND_SYNTAX_EXTENSION is set. # value: 1/0 COMMAND_SYNTAX_EXTENSION: 1 .j Subject:にコマンド("# command")を使う場合(デフォールトは使わない) .j 歴史: 旧時代の産物 # "Subject: # commands" is available? # value: 1/0 USE_SUBJECT_AS_COMMANDS: 0 .j コマンドのシンタックスエラーを常に警告を出す(デフォールトは出さない) .j 歴史: 旧時代の産物 # If NOT "# command" syntax commands is given, ignore or warn to the user? # Our default is not, since most such cases are "signature". # value: 1/0 USE_WARNING: 0 .j 3.0 ではコマンドラインの --ctladdr で指定するもの .j 歴史: 旧時代の産物 # obsolete: since this is the same as --ctladdr. # value: 1/0 COMMAND_ONLY_SERVER: 0 # **ATTENTION** # $PROHIBIT_COMMAND_FOR_STRANGER is obsoletes since # $PROHIBIT_COMMAND_FOR_STRANGER equals $PERMIT_COMMAND_FROM = "anyone"; .j 最初の $COMMAND_CHECK_LIMIT 行をチェックする .j 歴史: 旧時代の産物 # ## Sub Section: traps ## # when $MAIL_LIST == $CONTROL_ADDRESS, # the first $COMMAND_CHECK_LIMIT lines is checked for commands mail or not? # $GUIDE_CHECK_LIMIT is the same kind of variable but for "# guide" trap. # $GUIDE_KEYWORD determines "guide" of "$ guide" trap. # value: number COMMAND_CHECK_LIMIT: 3 .j ガイド要求かどうかメール本文の最初の $GUIDE_CHECK_LIMIT 行をチェックする .j 歴史: 旧時代の産物 # value: number GUIDE_CHECK_LIMIT: 3 .j ガイド要求かどうかのキーワード .j 歴史: 旧時代の産物 # value: string GUIDE_KEYWORD: guide .j 一つのメールにかけるコマンド数の上限 .j デフォールトは無制限 # The maximum number of commands in one command mail. # The variable \$MAXNUM_COMMAND_INPUT controls this. # If the value is 3, fml permits 3 commands in one command mail. # 0 or NULL implies infinite (default). # value: number MAXNUM_COMMAND_INPUT: .j chaddr コマンドのエイリアス # "# chaddr" commands is required for special exception # value: regexp string CHADDR_KEYWORD: chaddr|change\-address|change .j mgetコマンドのデフォールトのフォーマット .j UNIX上では最も効率の良い tar.gz がデフォールト .j Windows NT4では MIME/Multipart がデフォールト # ## Sub Section: mget ## # The default mode of "mget" without mode (default is "tar.gz" form). # $MGET_TEXT_MODE_DEFAULT is used by &SendFileBySplit # value: mode string MGET_MODE_DEFAULT: MGET_TEXT_MODE_DEFAULT: .j mget コマンドの結果が大きいメールの場合いくつかのファイルに分割する .j 各メールはおおよそ $MAIL_LENGTH_LIMIT 行で .j $SLEEPTIME 秒間隔で送り返す # The reply for "mget" commands sends long reply mails as splitten mails # by the unit $MAIL_LENGTH_LIMIT lines once at $SLEEPTIME secs.. # value: number MAIL_LENGTH_LIMIT: 1000 SLEEPTIME: 60 .j mget で使うMIMEパラメータ。未定義 .j mgetのファイルモードが初期化される時に必要なら初期化される # See doc/tutorial and libfop.pl for the detail. You change MIME/Multipart default. # value: string MIME_VERSION: MIME_CONTENT_TYPE: MIME_MULTIPART_BOUNDARY: MIME_MULTIPART_CLOSE_DELIMITER: MIME_MULTIPART_DELIMITER: MIME_MULTIPART_PREAMBLE: MIME_MULTIPART_TRAILER: .j mget で ish モードを指定したら sjis にするようにするか?(defaultはしない) .j sjis なのは ish を使うユーザはM$な環境だろうからである # sjis conversion in "mget ish" mode. # value: 1/0 USE_SJIS_IN_ISH: .j mget のRFC1153 formatのパラメータ # RFC1153 configurations; see doc/tutorial for the detail # value: number RFC1153_ISSUE: .j mget のRFC1153 formatのパラメータ # value: number / string RFC1153_VOL: .j mget のRFC1153 formatのパラメータ # value: filename string RFC1153_SEQUENCE_FILE: # ## Sub Section: MTA specific ## # qmail 依存拡張 # メール本文に "get 1" を書いて ml-ctl@domain に送ることは # ml-get-1@domain に何かを送ることに等しい。つまり # ml-command-引数@domain == "command 引数"を ml-ctl@domain に送ること # value: 1/0 USE_DOT_QMAIL_EXT: 0 .j obsolete .j Reply-To: の値を強制する。 .j fml 3.0 では&DEFINE_FIELD_FORCED() を使う #C beth # ## Sub Section: Headers of reply from FML ## # For the reply for commands from FML, # we force Reply-To: $FORCE_COMMAND_REPLY_TO ?(default is $CONTROL_ADDRESS) # value: string FORCE_COMMAND_REPLY_TO: .j mget のファイルを送り返すメールのSubject: テンプレート # Subject template in "mget" reply. # automatic substitute is done before send the reply; For example, # Subject: result for mget [last:3 tar + gzip] (1/1) (Elena Lolabrigita ML) # # _DOC_MODE_ <=> [last:10 tar + gzip] # _PART_ <=> (1/4) # _ML_FN_ <=> $ML_FN (here is "(Elena Lolabrigita ML)") # # $NOT_SHOW_DOCMODE is obsolete, it equals you discard _PART_. # # value: string MGET_SUBJECT_TEMPLATE: result for mget _DOC_MODE_ _PART_ _ML_FN_ ##################################################################### # ### Section: Digest/Matome Okuri Configurations ### .j Section::Digest まとめおくり # # $MSEND_MODE_DEFAULT is the default of msend (when e.g. m=3) # and the format is the same as $MGET_MODE_DEFAULT. # which is "tar.gz" format. # Subject template in Digest/matome okuri. # automatic substitute is done before send the reply; For example, # Digest -Matome Okuri- Article 768 [last:10 tar + gzip] (1/1) (Elena ML) # # _ARTICLE_RANGE_ <=> Article 768 # _DOC_MODE_ <=> [last:10 tar + gzip] # _PART_ <=> (1/4) # _ML_FN_ <=> $ML_FN (here is "(Elena ML)") # # $NOT_SHOW_DOCMODE is obsolete, it equals you discard _PART_. # .j まとめ送りメールのSubject: テンプレート # value: string MSEND_SUBJECT_TEMPLATE: Digest _ARTICLE_RANGE_ _PART_ _ML_FN_ .j まとめ送りの「誰にどこまで送ったか」の記録をするファイル # Digest/Matome Okuri rc file # value: filename string MSEND_RC: $VARLOG_DIR/msendrc .j まとめ送りのデフォールト # rfc1153 or rfc934 # obsoletes $USE_RFC1153, $USE_RFC1153_DIGEST, $USE_RFC934 # value: mode string MSEND_MODE_DEFAULT: .j まとめ送りメールのSubject: のデフォールト .j 歴史: 互換性のため。現在では意味なし # Subject: # value: string MSEND_DEFAULT_SUBJECT: .j トラフィックのない日は .j 「今日はまとめおくりするべきものがない」と .j MLにアナウンスをだすか?(デフォールトは"ださない") # If no articles to send, we send "no traffic" to the member of $MAIL_LIST # with the subject $MSEND_NOTIFICATION_SUBJECT if $MSEND_NOTIFICATION is set. # value: 1/0 MSEND_NOTIFICATION: .j その subject: # value: string MSEND_NOTIFICATION_SUBJECT: .j まとめおくりでは X-ML-Info: は不必要か?(デフォールトは X-ML-Info:つき) # not require X-ML-Info: in the "mget"; # value: 1/0 MSEND_NOT_USE_X_ML_INFO: .j まとめおくりのついでに newsyslog を行なうか?(デフォールトはする) # not do newsyslog in the sunday morning. $NOT_USE_NEWSYSLOG (CFVersion 2) # value: 1/0 MSEND_NOT_USE_NEWSYSLOG: ##################################################################### # ### Section: Other Files for Configurations and Logs ### .j Section::Files ファイル等 .j Message-ID: ループチェックで使うキャッシュファイル # cache of loop check # value: filename string LOG_MESSAGE_ID: $VARRUN_DIR/msgidcache .j メール本文のチェックサムでループチェックをする時使うキャッシュファイル # cache of mailbody cksum # value: filename string LOG_MAILBODY_CKSUM: $VARRUN_DIR/bodycksumcache # $MEMBER_LIST sent by "# member" command # $ACTIVE_LIST sent by "# active" command # == delivery list (active member list) .j $MEMBER_LIST MLのメンバーか認証する時のメンバーリスト .j $ACTIVE_LIST 配送先リスト # value: filename string MEMBER_LIST: $DIR/members ACTIVE_LIST: $DIR/actives .j 名前の通り .j guide ガイド .j objective 目的 .j help ヘルプファイル .j .j XXX guide と objective ってどうちがうんだろうね? .j XXX しいていえばMLに入っている人にだけこっそり教える情報が .j XXX 含まれているのが objective なのだろう # ATTENTION: only "guide" is also send to strangers # # $GUIDE_FILE sent by "# guide" command, # $OBJECTIVE_FILE sent by "# objective" command # $HELP_FILE sent by "# help" command # value: filename string GUIDE_FILE: $DIR/guide OBJECTIVE_FILE: $DIR/objective HELP_FILE: $DIR/help .j メールの投稿を拒否する際に使うテンプレート # WHEN REJECT_*_HANDLER is "reject", we return this file to the poster # value: filename string DENY_FILE: $DIR/deny .j ログファイル .j XXX mgetのログだけ別のものにするという機能もあることはあるが… # $LOGFILE log file # $MGET_LOGFILE log file for mget routine, the same file in default. # value: filename string LOGFILE: $DIR/log MGET_LOGFILE: $DIR/log .j デバッグレベルをあげた時にデバッグ情報を吐くファイル .j $LOGFILE とは変えておくとなにかと便利かもしれない # when -d2 ($debug = 2), logs this file. # value: filename string DEBUG_LOGFILE: $DIR/log.debug .j 投稿メールのサマリ # article summary file # value: filename string SUMMARY_FILE: $DIR/summary .j 投稿メールの X-Mail-Count: の数字を保存しているファイル # sequence number file # value: filename string SEQUENCE_FILE: $DIR/seq .j flock(2)が使えないOS上で使うロックファイルの名前 .j $USE_FLOCK = 0 (flockを使わない)時は rename(2)を使っている # rename(2) lock (liblock.pl) # value: filename string LOCK_FILE: $VARRUN_DIR/lockfile.v7 ##################################################################### # ### Section: SMTP and Delivery ### .j Section::SMTP メールの配送系について(SMTP) # # [IPC] to speak to Sendmail via Simple Mail Transfer Protocol($PORT/tcp). # $HOST is an arbitrary host(if you can access it) which runs MTA # (e.g. sendmail). If the Mailing List Server machine is week, # you can use the sendmail of another powerful host(host). .j メールの配送に使うホスト。デフォールトはfmlが走っているホスト自身 .j .j 注: ISPによってはfmlが走るホストとメール配送に使うホストが異なる .j よく調査されたい # value: string HOST: localhost .j smtp port の番号。デフォールトは 25/tcp # value: number PORT: 25 .j メール配送の様子のログをとるファイル .j デバッグ用途 # IF $NOT_TRACE_SMTP IS 1 (default 0), we log the SMTP session to $SMTP_LOG # IF $TRACE_SMTP_DELAY IS 1, we logs the delay of response between SMTP server. # value: filename string SMTP_LOG: $VARLOG_DIR/_smtplog .j メール配送のログをとるか?(デフォールトはとる) # value: 1/0 NOT_TRACE_SMTP: 0 TRACE_SMTP_DELAY: .j 複数のホストのMTAを使って並列配送をする際に何台使うのか?を指定する .j @HOSTS という配列に定義されたホストを使う # IF YOU USE PLURAL SMTP SERVER FOR DELIVERY, Please set the number to # $MCI_SMTP_HOSTS and define them to @HOSTS as the array components. MCI_SMTP_HOSTS: .j リレーサーバ .j XXX メールリレーは現代ではあまり意味がない .j XXX SPAMなどで悪いことにばかり使われそもそも禁止されているのが普通 # ## Relay server ## # each user relay is defined in delivery list as "m=relay-host". # If $DEFAULT_RELAY_SERVER is set, we apply it for all members. # value: string DEFAULT_RELAY_SERVER: .j CFの static routing .j XXX メールリレーは現代ではあまり意味がない .j XXX SPAMなどで悪いことにばかり使われそもそも禁止されているのが普通 # CF (by motonori@wide.ad.jp) base relay control if $RELEY_HACK is on. # with %RELAY_GW, %RELAY_NGW, %RELAY_NGW_DOM (set in librelayhack.pl) # $CF_DEF is CF's configuration files; # **ATTENTION**; we do not use sendmail.cf but CF's configuration. # value: 1/0 RELAY_HACK: .j CFの設定ファイル # value: filename string CF_DEF: .j fmlが配送リストをメールサーバに渡すのではなく .j 架空のアドレスに渡してメールサーバでリストを展開する .j メモリが少ない場合(例: 16M 486 machine)などに特に有効 .j .j fml.pl は一つのアドレス へ .j list-outgoing@$DOMAIN が展開 .j # list-going@domain is a real distribution address. Fml does not # pass rcpt list to MTA but only this address. # XXX: dedicated to minmin sama:D # value: 1/0 USE_OUTGOING_ADDRESS: .j 架空のアドレス # value: string OUTGOING_ADDRESS: .j VERPs (Variable Envelope Return Paths) を使う .j qmailのマニュアルなどを読まれたい .j もちろん受けとれるように設定が別途MTAに必要である # VERPs: Variable Envelope Return Paths. See qmail documents for more details. USE_VERP: ##################################################################### # ### Section: MISC ### .j Section::Misc その他 .j MIME decode をするか?"する"がデフォールト # ## Sub Section: MIME ## # Mime Decode On if $USE_MIME; # e.g. Decode $SUMMARY_FILE subject and so on. # default 1 from 2.1C#13 # value: 1/0 USE_MIME: 1 .j obsolete .j $SPOOL_DIR に記事を保存する時に記事をMIME decodeしてしまう .j 歴史: 腐ったMUAのためにある。今時使ってはいけない # NOT RECOMMENDED OPTION: # articles in the spool are MIME-DECODED for poor environment users. # These articles may be insane in strict MIME oriented mail interfaces. # value: 1/0 MIME_DECODED_ARTICLE: # ## Sub Section: Preamble and Trailer for Mail Body ## .j Section::Misc::CommandReportMail コマンドの結果などのメール # If you always append some message in the command reply mail body, # you can use these variables. For example, the mail body becomes # # $PREAMBLE_MAILBODY # original body # $TRAILER_MAILBODY # # If you use the article distributed in ML, you must use some hooks. # For example, append this in the last of config.ph (but before 1;) # $SMTP_OPEN_HOOK = q# # $e{'Body'} = $PREAMBLE_MAILBODY. $e{'Body'} .$TRAILER_MAILBODY; # #; # Please see doc/tutorial for our policy behind this. # .j コマンドの結果などを返す時にメール本文の .j $PREAMBLE_MAILBODY 本文の前 .j $TRAILER_MAILBODY 本文の後 .j に何かをつける。 .j .j 注: 投稿用のメールのためではないので注意 .j # value: string PREAMBLE_MAILBODY: TRAILER_MAILBODY: # ## Sub Section: Reply Configurations ## .j Section::Misc::ReplyMail その他 # In the last of e.g. "command status report", we add # "$GOOD_BYE_PHRASE $FACE_MARK" :-) in the last of the reply. # So the standard form is # # message # FYI message generated by the function $PROC_GEN_INFO. # $GOOD_BYE_PHRASE $FACE_MARK # .j コマンドの結果などを返す時のメール本文の最後につけるご挨拶:) # value: string GOOD_BYE_PHRASE: --$MAIL_LIST, Be Seeing You! FACE_MARK: .j X-ML-Info: の内容を生成する関数名 .j 独自の関数を作って呼び出せば独自の X-ML-Info: が作れる # value: function name string PROC_GEN_INFO: GenInfo # ## Sub Section: Lock Algorithm ## .j Section::Misc::Lock ロック # use flock for lock algorithm if $USE_FLOCK is on. # see flock(2), alarm(3). If not, we rename(2) base lock. # The timeout of rename(2) lock is rand(3) * $MAX_TIMEOUT secs. .j flock(2)を使うか?デフォールトは"使う" # value: 1/0 USE_FLOCK: 1 .j flockでないrename(2)の時のタイムアウト(retry回数) .j 大雑把には十数分程度 # value: number MAX_TIMEOUT: 200 # ## Sub Section: misc ## .j Section::Misc::Misc その他いろいろ # Not spooling (default is "spooling") .j $SPOOL_DIRに記事を保存しない(デフォールトは"保存する") # value: 1/0 NOT_USE_SPOOL: .j fml 1.5 以前との互換モード # "$CFVersion < 2" equals "$COMPAT_FML15 = 1;" # value: 1/0 COMPAT_FML15: 0 .j 古いファイルは .0 .1 などのようにsuffixを変えて保存する .j $NEWSYSLOG_MAX 回は残る .j 例: .j log.3 -> log.4, log.2 -> log.3, log.1 -> log.2, log.0 -> log.1, log -> log.0 .j log.4 -> log.5 はなく、消去されるだけ .j XXX OSによっては newsyslog(8)をみられたい。 # newsyslog library maximum number. default is 4. So # log.3 -> log.4, log.2 -> log.3, log.1 -> log.2, log.0 -> log.1, log -> log.0 # value: number NEWSYSLOG_MAX: 4 .j fml附属のcronのためのcrontabの場所とpidファイル .j XXX Vixie cron のないOSでの話なので普通は使わない # cron configurations for bin/cron.pl NOT system Vixie cron(8) # value: filename string CRONTAB: etc/crontab CRON_PIDFILE: var/run/cron.pid .j cronが実行した内容を$MAINTAINERに知らせる(default する) .j XXX Vixie cronと一緒 # value: 1/0 CRON_NOTIFY: 1 .j クロスポストを考慮する。 .j 考慮するML群について定義ファイルが必要 # cross operations # value: 1/0 USE_CROSSPOST: .j アドレスと本名の対応リストを使う .j .j -- doc/Japanese/ 以下のファイルなどを参照 .j .j これまでの fml では、メンバー一覧を 'members' コマンドで取り寄せると .j メンバー全員のアドレスが返送されてきますが、アドレスだけでは誰が誰なのか .j わかりにくい場合がありました。 .j このモジュール libmember_name.pl は、その問題を解決するために、各メンバー .j の名前 (基本的には、mail の From: ヘッダに書かれている名前(gecos)) を管理 .j する機能を付加します。 .j このモジュールを有効にすることにより、機能が追加・変更される項目を以下 .j に記述します。 .j ● 自動登録モードでFrom:からデータベースを生成する .j ● 'members', 'member' コマンドで名前を付加する .j ● 'name' コマンド (新規) .j ● 'admin name' コマンド (新規) .j # Under $USE_MEMBER_NAME is set, commands on member lists # are with Gecos Fields which are extracted from From: field # in the time of auto registration. # Author: Masayuki FUKUI # value: 1/0 USE_MEMBER_NAME: ##################################################################### # ### Section: Expire and Archive ### .j Section::Archive 記事のExpireとアーカイブの自動作成 # If $USE_EXPIRE is set, we do expiration function built-in (2.1 release) # default is "NOT Expiration" or "Manual Expiration". # Expiration limit is $EXPIRE_LIMIT, which syntax is # e.g. 7days(days) or 100 (articles left in spool) # If you re-generate $SUMMARY_FILE, set $EXPIRE_SUMMARY # .j 自動的に古い記事を消すか?(しない) .j $EXPIRE_SUMMARY が0でないなら $SUMMARY_FILE も生成し直す # value: 1/0 USE_EXPIRE: 0 EXPIRE_SUMMARY: .j どのくらい古くなったら消すのか? .j デフォールトは7日間 # value: number / ( number + day/week/month ) EXPIRE_LIMIT: 7days # If $USE_ARCHIVE is on, we do automatically archive, which is # spool/articles is aggregated to e.g. "$ARCHIVE_DIR/100.tar.gz" # by the unit $ARCHIVE_UNIT. # # the location of store (when $USE_ARCHIVE on): $ARCHIVE_DIR # the search path order : $ARCHIVE_DIR @ARCHIVE_DIR # # If @ARCHIVE_DIR is set and $ARCHIVE_DIR is not set, # we use $ARCHIVE_DIR[0] as the $ARCHIVE_DIR. # .j 自動的にアーカイブを作るか? .j $SPOOL_DIR から $ARCHIVE_DIR/100.tar.gz (X-Mail-Count:が1 〜 100) .j を生成する。 .j 注: 矛盾しないように expire は十分ゆっくり行なわなければならない。 .j # value: 1/0 USE_ARCHIVE: 0 .j tar.gz を作る際の一つのtar.gzあたり何個の記事を入れるか .j 注: 意味は同じだが $DEFAULT_ARCHIVE_UNIT は互換性のためのもの .j 気にしなくて良い # value: number ARCHIVE_UNIT: 100 DEFAULT_ARCHIVE_UNIT: 100 .j tar.gz を作るディレクトリ # value: directory string ARCHIVE_DIR: var/archive .j "index"コマンドは .j $SPOOL_DIR の内容や tar.gz などの状況を教えてくれる .j $INDEX_FILE があるならそれをメールで返す .j ないならfmlが $SPOOL_DIR $ARCHIVE_DIR の中身を調べて返す # "index" command; in default we scan spool and archives and reports. But # "# index" send $INDEX_FILE if $INDEX_FILE exists; # value: filename string INDEX_FILE: $DIR/index .j fmlが $SPOOL_DIR $ARCHIVE_DIR の中身を調べて返す時に .j ディレクトリの名前を出すか?デフォールトでは教えない # value: 1/0 INDEX_SHOW_DIRNAME: 0 # ### Section: Library Commands ### .j Section::Library ライブラリコマンド .j .j ML中にあるミニMLのようなもの .j アーカイブに置いたり消したりする .j 例: 作業用のドキュメントなどの受渡しに使う .j # You can put and get files by "library" commands. # In default, @DenyProcedure = ('library'); So 'library' command is disabled; # Set @DenyProcedure = ('') in LOCAL CONFIG part (the last of config.ph). # .j $LIBRARY_DIR ライブラリコマンドのHOME .j $LIBRARY_ARCHIVE_DIR アーカイブの置き場所 # value: directory string LIBRARY_DIR: var/library LIBRARY_ARCHIVE_DIR: archive # ## Sub Section: newsyslog(8) ## .j Section::NewSysLog newsyslog(8) # to turn over \$DIR/log .j $LOGFILE の turn over の時だけbackupの数を増やす .j デフォールトでは $NEWSYSLOG_MAX 回 # value: number LOGFILE_NEWSYSLOG_LIMIT: .j $MEMBER_LIST $ACTIVE_LIST の変更の際バックアップをする .j そのバックアップファイルがある程度大きいなら newsyslog(8)を適用する # to turn over \$DIR/actives.bak and \$DIR/members.bak, # 150K = 30*5000 # value: number / (number + K/M) AMLIST_NEWSYSLOG_LIMIT: 150K # ### Section: Html Configurations ### .j Section::HTML 記事をHTMLに自動変換する # HTML Mode Configurations (libsynchtml.pl) # Please see doc/tutorial for the details. # AUTO_HTML_GEN == AUTOmatic HTML GENeration # if $AUTO_HTML_GEN, we generte html'ed articles in $DIR/$HTML_DIR .j 記事をHTMLに自動変換する ($AUTO_HTML_GEN) .j スレッド化する ($HTML_THREAD) .j 番号順の場合は、新しい記事が最初の方になるようにする .j ($HTML_INDEX_REVERSE_ORDER) # value: 1/0 AUTO_HTML_GEN: HTML_THREAD: 1 HTML_INDEX_REVERSE_ORDER: 1 .j HTML化された記事をつくる場所 .j WWWで公開する時はこのディレクトリにリンクをはる # value: directory string HTML_DIR: htdocs .j 古いHTML化された記事を消すか? (消さないのがデフォールト) # options: Please see doc/tutorial for the details. # value: number HTML_EXPIRE_LIMIT: .j # value: string HTML_INDEX_TITLE: .j キャッシュ # value: filename string HTML_DATA_CACHE: HTML_DATA_THREAD: .j *.html の際のフィルタ HTML_OUTPUT_FILTER: .j スタイルシートの名前 # HTML 4.0; example: "fml.css" # value: filename string HTML_STYLESHEET_BASENAME: .j スレッド生成のアルゴリズム指定 # value: default / prefer-in-reply-to HTML_THREAD_REF_TYPE: prefer-in-reply-to .j スレッドの順番。デフォールトは記事の順番通り(上の方が過去) .j reverse-number にすると上の方が一番最近のもの # value: "" / reverse-number HTML_THREAD_SORT_TYPE: .j htdocs/サブディレクトリ/htmlファイル のような構造になる .j サブディレクトリの単位 .j 例: .j 100通で1ディレクトリ .j 一日ごと # value: number / day / week / month / infinite HTML_INDEX_UNIT: day .j スレッドのインデントのスタイル # value: "" / UL HTML_INDENT_STYLE: UL .j 画像の処理 .j .j # image file embedding style # value: A / IMAGE HTML_MULTIPART_IMAGE_REF_TYPE: .j HTMLファイルへのumask # html file umask # value: "" / umask HTML_DEFAULT_UMASK: HTML_WRITE_UMASK: # ### Section: Interface to other Services (http,ftp,gopher,www) ### .j Section::Services 他のサービスへのインターフェイス .j .j 名前の通り:-) .j # Please see doc/tutorial for the details. # *_DIR value: directory string # *_FILE value: filename string # *_SERVER value: string # *_PORT value: number FTPMAIL_SERVER: FTP_DIR: FTP_HELP_FILE: DEFAULT_GOPHER_PORT: DEFAULT_GOPHER_SERVER: DEFAULT_HTML_FIELD: DEFAULT_HTTP_PORT: DEFAULT_HTTP_SERVER: .j whois データベース .j デフォールトはローカルDISK上にある .j -h host オプションをつけると他のwhoisへ聞きにいく .j .j XXX たぶん今時whoisサーバなんて使ってないと思う;-) .j # "whois": default is search of local database file # If "whois -h host" syntax is given, we connects "host" whois server. # If $USE_WHOIS set, you can use local database $WHOIS_DB. # If you have local whois server (inetd), you can also use it. # If "whois help" is given, send back $WHOIS_HELP_FILE if it exists. # .j whois データベースを使う(default 使わない) # value: 1/0 USE_WHOIS: .j whois serverへのリレーするがデフォールトならそのサーバのホスト名 # value: string DEFAULT_WHOIS_SERVER: .j ローカルディスク上のデータベースファイル名 # value: filename string WHOIS_DB: $VARDB_DIR/whoisdb .j ヘルプ WHOIS_HELP_FILE: .j whois databaseは日本語変換してみるか?するがデフォールト # do Japanese conversion or not? for the result from whois server # value: 1/0 WHOIS_JCODE_P: 1 ##################################################################### # ### Section: Architecture Dependence ### .j Section::OS オペレーティングシステム .j ホストのタイプ "CPUとメーカー名とOS" .j GNU autoconf の config.guess が推測した値 # cpu-type manufacturer operating-system by GNU config.guess ("makefml") # value: string CPU_TYPE_MANUFACTURER_OS: .j struct sockaddr .j 本来OS依存。 makefmlが推測してくれる # struct sockaddr # value: string STRUCT_SOCKADDR: S n a4 x8 .j flock(2) パラメータ .j 本来OS依存 # flock system call; please see "/usr/include/sys/file.h" # value: number LOCK_SH: 1 LOCK_EX: 2 LOCK_NB: 4 LOCK_UN: 8 .j ホストはSYSV系のOSだと思えとfmlに教え込む .j makefmlが推測に失敗したときに使うだろう # solaris 2 compatible (for not-automatic-checked OS's ;-) # value: 1/0 COMPAT_SOLARIS2: .j ioctl(2) .j fml附属のcronが使うくらいなので普通は関係ない # we can emulate daemon(3) ? # value: 1/0 NOT_USE_TIOCNOTTY: .j $CPU_TYPE_MANUFACTURER_OS に依存する .j UNIX なら1それ以外は0 # In Unix, always yes set 1 in &SetDefaults; # value: 1/0 HAS_GETPWUID: HAS_GETPWGID: HAS_ALARM: .j プログラムのパス名 .j &pathは cf/config が自動的に補間する # programs which may be used in the fml library # these are automatically set by "makefml" # value: filename string SENDMAIL: &path(sendmail) TAR: &path(tar) cf - UUENCODE: &path(uuencode) COMPRESS: &path(gzip) -c ZCAT: &path(gzcat:zcat:gzip\s-cd) LHA: &path(lha) ISH: &path(ish) ZIP: &path(zip) PGP: &path(pgp) RCS: &path(rcs) CI: &path(ci) BASE64_DECODE: BASE64_ENCODE: MD5: &path(md5:md5sum) LOCAL_CONFIG: # ## Sub Section: Available Hooks ## # You can set customized hooks here. See doc/tutorial's chapter "HOOKS". # For example available hooks are # $START_HOOK, $DISTRIBUTE_START_HOOK, $SMTP_OPEN_HOOK # $HEADER_ADD_HOOK, $DISTRIBUTE_CLOSE_HOOK, $COMMAND_HOOK # $ADMIN_COMMAND_HOOK, $RFC1153_CUSTOM_HOOK, $MSEND_OPT_HOOK # $FML_EXIT_HOOK, $FML_EXIT_PROG, $MSEND_START_HOOK # $REPORT_HEADER_CONFIG_HOOK, $AUTO_REGISTRATION_HOOK, $MSEND_HEADER_HOOK # $SMTP_CLOSE_HOOK, $MODE_BIFURCATE_HOOK. $HTML_TITLE_HOOK # # ## Sub Section: Available Arrays and Assoc-Arrays ## # Also you can set here arrays and association arrays: # # @MEMBER_LIST, @ACTIVE_LIST, @CROSSPOST_CF # @HOST, @HOSTS, @MAIL_LIST_ALIASES, @HdrFieldsOrder # # value: perl statement