=head1	記事の処理


=head2	記事の配送


# Descriptions: 記事を配送する機能を使うか否か？
#      History:
#        Value: YES_OR_NO
#     Examples:
use_article_delivery	=	yes


# Descriptions: トランスポート(配送システム)の指定。
#		smtpのばあい、$smtp_serversで指定されたMTAを順番に試す。
#      History: NONE
#        Value: SELECT ( smtp lmtp )
#     Examples: smtp
article_delivery_transport	=	smtp


=head2	記事番号


# Descriptions: 記事番号を保存するファイル (ダミー？)
#      History: $SEQ_FILE
#        Value: FILE
#     Examples:
article_sequence_file	= $sequence_file


=head2 ACL


# Descriptions: 弾いたメールをどのようにフォワードするか？
#               ウィルスなどを考慮すると、文字列がいいとおもう
#      History: 4.0 では文字列で、これはハードコーディングされていた。
#        Value: SELECT ( multipart string )
#     Examples: string
article_post_restrictions_reject_notice_data_type	=	string


=head2 ACL とスレッド


# Descriptions: 記事の投稿時に、スレッドの続きであるなら、短時間の間、 
#		From: に関わらず投稿を許す。
#		たとえば転送先からでも投稿を許すといった場合には便利。
#      History: none
#        Value: NUM
#     Examples: 86400
article_post_article_thread_lifetime = 86400


=head2	サイズ制限


# Descriptions: 投稿された記事のヘッダの上限値
#               (MTA から fml が受けとる際の記事のヘッダサイズの上限値)
#      History:
#        Value: NUM
#     Examples: 102400
incoming_article_header_size_limit	= $default_mail_header_size_limit


# Descriptions: 投稿された記事の本文の上限値
#               (MTA から fml が受けとる際の記事の本文サイズの上限値)
#      History:
#        Value: NUM
#     Examples: 10240000
incoming_article_body_size_limit	= $default_mail_body_size_limit


# Descriptions: 投稿された記事の(配送時の)ヘッダの上限値
#               (fml から MTA へ渡す際の記事のヘッダサイズの上限値)
#		(ごめん、この機能は未実装;-)
#      History:
#        Value: NUM
#     Examples: 102400
outgoing_article_header_size_limit	= $default_mail_header_size_limit


# Descriptions: 投稿された記事の(配送時の)本文の上限値
#               (fml から MTA へ渡す際の記事の本文サイズの上限値)
#		(ごめん、この機能は未実装;-)
#        Value: NUM
#     Examples: 10240000
outgoing_article_body_size_limit	= $default_mail_body_size_limit


=head2	フィルタ


# Descriptions:
#      History: fml8 では、いくつかのフィルタや制限が整理統合された。
#		fml4 では、おおむね次の３つの機能に相当している。
#		$USE_DISTRIBUTE_FILTER
#		$INCOMING_MAIL_SIZE_LIMIT
#		ADD_CONTENT_HANDLER()
#        Value: YES_OR_NO
#     Examples: yes
use_article_filter	= 	yes
 

# Descriptions:
#      History:
#        Value: MIX (
#			article_size_filter
#			article_header_filter
#			article_non_mime_filter
#			article_mime_component_filter
#			article_text_plain_filter
#			article_spam_filter
#			article_virus_filter
#		)
#     Examples:
article_filter_functions	=	article_size_filter
					article_header_filter
					article_non_mime_filter
					article_mime_component_filter
					article_text_plain_filter
					article_spam_filter
					article_virus_filter


=head2	サイズ制限ベースのフィルタ


# Descriptions: サイズ情報を根拠にしたフィルタリングをするか？
#      History: no
#        Value: YES_OR_NO
#     Examples:
use_article_size_filter	=	yes


# Descriptions: フィルタリングのルール。
#               どのルールにもマッチしないなら、記事の投稿は認められる。
#      History:
#        Value: MIX (	check_header_size
#			check_body_size
#			permit
#		)
#     Examples:
article_size_filter_rules	=	check_header_size
					check_body_size
					permit


=head2	ヘッダ情報ベースのフィルタ


# Descriptions: ヘッダ情報を根拠にしたフィルタリングをするか？
#      History: disabled by default.
#               "yes" always if $USE_DISTRIBUTE_FILTER is yes.
#        Value: YES_OR_NO
#     Examples:
use_article_header_filter		=	yes


# Descriptions: フィルタリングのルール。
#               どのルールにもマッチしないなら、記事の投稿は認められる。
#      History: check_date に該当するものはない。
#        Value: MIX (
#			check_message_id
#			check_date
#			permit
#		)
#     Examples:
article_header_filter_rules		=	check_message_id
						check_date
						permit


=head2	MIME 情報ベースのフィルタ


# Descriptions: とりあえず、だみ〜
#      History: 4.0 の content filter で、!MIME にあたる部分。
#		よって、デフォルトでは no ということになる。
#        Value: YES_OR_NO
#     Examples:
use_article_non_mime_filter		=	yes


# Descriptions: とりあえず、だみ〜
#      History: なし
#        Value: MIX ( permit reject_empty_content_type )
#     Examples: permit
article_non_mime_filter_rules		=	reject_empty_content_type
						permit


# Descriptions: MIME の構造に基づいたフィルタを行なう
#      History: 4.0 の content filter 相当。デフォルトでは no だ。
#        Value: YES_OR_NO
#     Examples:
use_article_mime_component_filter	=	yes


# Descriptions: ファイル名
#      History: 4.0 の @CONTENT_HANDLER 相当
#        Value: FILE
#     Examples:
article_mime_component_filter_rules	= $fml_config_dir/mime_component_filter



=head2	テキスト部分に対するフィルタ


# Descriptions: 先頭の text/plain 部分に対するフィルタ。
#		簡単なシンタックスチェック
#      History: 4.0 の EnvelopeFilter 相当。
#		$USE_DISTRIBUTE_FILTER が yes の場合、
#		以下のルールの半分くらいが自動的に適用されていた。
#        Value: YES_OR_NO
#     Examples:
use_article_text_plain_filter		=	yes


# Descriptions: テキスト部分へのフィルタリングのルール。
#               正確には弾くべき特別なもののルール(マッチしないなら通す)
#      History: See kern/libenvf.pl for more detail.
#		[DISABLED BY DEFAULT]
#
#			reject_not_iso2022jp_japanese_string
#				<=> FILTER_ATTR_REJECT_INVALID_JAPANESE
#			reject_old_fml_command_syntax
#				<=> FILTER_ATTR_REJECT_COMMAND
#			reject_japanese_command_syntax
#				<=> FILTER_ATTR_REJECT_2BYTES_COMMAND
#
#		[ENABLED BY DEFAULT]
#
#			reject_null_mail_body
#				<=> FILTER_ATTR_REJECT_NULL_BODY
#			reject_invalid_fml_command_syntax
#				<=> FILTER_ATTR_REJECT_INVALID_COMMAND
#			reject_one_line_message
#				<=> FILTER_ATTR_REJECT_ONE_LINE_BODY
#			reject_ms_guid
#				<=> FILTER_ATTR_REJECT_MS_GUID
#
#         Note: permit by default 
#        Value: MIX (
#			reject_not_iso2022jp_japanese_string
#			reject_null_mail_body
#			reject_one_line_message
#			reject_old_fml_command_syntax
#			reject_invalid_fml_command_syntax
#			reject_japanese_command_syntax
#			reject_ms_guid
#			permit
#		)
#     Examples:
article_text_plain_filter_rules	=	reject_not_iso2022jp_japanese_string
					reject_null_mail_body
					reject_one_line_message
					reject_old_fml_command_syntax
					reject_invalid_fml_command_syntax
					reject_japanese_command_syntax
					reject_ms_guid
					permit


=head2	SPAM メールに対するフィルタ


# Descriptions: 外部のSPAMチェッカを使った検査、デフォルトでは無効。
#		また有効にした場合、ヘッダにSPAMであることを知らせる
#		フラッグをつけ通過させる動作がデフォルト。
#      History: none
#        Value: YES_OR_NO
#     Examples: no
use_article_spam_filter		=	no


# Descriptions: SPAMだと判定された場合、どうするか？
#      History: none
#        Value: MIX ( reject ignore header_rewrite )
#     Examples: header_rewrite
article_spam_filter_rules	=	header_rewrite


# Descriptions: SPAMチェッカとして使う外部プログラム。
#		複数指定すると、複数のプログラムを順に試す。
#      History: none
#        Value: MIX ( spamassasin spamc bogofilter )
#     Examples: bogofilter
article_spam_filter_drivers	=	bogofilter


=head2	Virus メールに対するフィルタ


# Descriptions: 外部のVirusチェッカを使った検査、デフォルトでは無効。
#      History: none
#        Value: YES_OR_NO
#     Examples: no
use_article_virus_filter	=	no


# Descriptions: ウィルスだと判定された場合、どうするか？
#      History: none
#        Value: MIX ( reject ignore header_rewrite )
#     Examples: reject
article_virus_filter_rules	=	reject


# Descriptions: ウィルスチェッカとして使う外部プログラム
#		複数指定すると、複数のプログラムを順に試す。
#      History: none
#        Value: MIX ( clamscan )
#     Examples: clamscan
article_virus_filter_drivers	=	clamscan



=head2	フィルタで弾かれたことを教える


# Descriptions: フィルタで弾かれたことを教える
#      History: maintainer には常に弾かれたことを知らせるが、
#		sender に対しては $FILTER_NOTIFY_REJECTION (= 0 by default)。
#		デフォルトでは、管理者にのみ知らせる。
#        Value: YES_OR_NO
#     Examples: yes
use_article_filter_reject_notice	=	yes


# Descriptions: エラーのお知らせの受信者
#      History: 4.0 では maintainer あてはハードコーデイングで常に知らせる。
#		sender 宛ては $FILTER_NOTIFY_REJECTION で制御されていて
#		デフォルトでは知らせない。
#        Value: MIX ( maintainer sender )
#     Examples: maintainer sender
article_filter_reject_notice_recipients	=	maintainer
						sender


# Descriptions: 弾いたメールをどのようにフォワードするか？
#               ウィルスなどを考慮すると、文字列がいいとおもう
#      History: 4.0 では文字列で、これはハードコーディングされていた。
#        Value: SELECT ( multipart string )
#     Examples: string
article_filter_reject_notice_data_type	=	string


=head2 スレッドの概要


# Descriptions: 自動的にスレッドの概要を記事に追加するか否か
#      History: none
#        Value: YES_OR_NO
#     Examples: no
use_article_thread_outline		=	no

# Descriptions: スレッドの概要を記事に追加する際にどこに追加するのか
#      History: none
#        Value: SELECT ( add_outline_to_header | append_outline_to_body )
#     Examples: add_header append_body
article_thread_outline_rules		=	add_outline_to_header
						append_outline_to_body

# Descriptions: スレッドの概要が始まる部分につける挨拶
#      History: none
#        Value: STR
#     Examples: [本スレッドのあらすじ]
article_thread_outline_greeting_ja	=	[本スレッドのあらすじ]

# Descriptions: スレッドの概要が始まる部分につける挨拶
#      History: none
#        Value: STR
#     Examples: [outline of this thread]
article_thread_outline_greeting_en	=	[outline of this thread]


=head2 古い記事の自動消去


# Descriptions: 古い記事を自動消去するか否か？
#      History: $USE_EXPIRE
#        Value: YES_OR_NO
#     Examples: no
use_article_expire			=	no


# Descriptions: どのくらい古い記事を消すか？
#      History: $EXPIRE_LIMIT
#        Value: TIME
#     Examples: 90d
article_expire_limit			=	90d


