2007年1月24日水曜日

Postfixを改造する(main.cfへのパラメータの追加)

Postfixに機能を追加する場合に、やはりmain.cfなどの設定ファイルでコントロールしたいじゃない?
まずは、main.cfへのパラメータ追加方法を教えましょう。

サンプルに、今回はdomainkeysとsmtpd_smime_signのふたつの値(デフォルトはyes)を追加してみましょう。

1. "src/global/mail_params.h"への追加
適当なところ(ifdefで囲まれていないことに注意)、下記の記述を追記。

------------------------------------------------------------------
/*
* Additional Custom Parameter
*/
#define VAR_DOMAINKEYS "domainkeys"
#define DEF_DOMAINKEYS "yes"
extern char *var_domainkeys;

#define VAR_SMTPD_SMIME_SIGN "smtpd_smime_sign"
#define DEF_SMTPD_SMIME_SIGN "yes"
extern char *var_smtpd_smime_sign;
------------------------------------------------------------------

2. "src/global/mail_params.c"の"mail_params_init関数へ下記の記述を追加

頭の方の変数を宣言している辺りに。
----------------------------------------
char *var_domainkeys;
char *var_smtpd_smime_sign;
----------------------------------------

・追加した項目の値が文字列の場合、配列other_str_defaultsへ追加
(配列要素の"0,"のみの列の前に挿入)
-----------------------------------------------------------------------------------------------
VAR_DOMAINKEYS, DEF_DOMAINKEYS, &var_domainkeys, 1, 0,
VAR_SMTPD_SMIME_SIGN, DEF_SMTPD_SMIME_SIGN, &var_smtpd_smime_sign, 1, 0,
-----------------------------------------------------------------------------------------------

3. コンパイルしてpostconfコマンドを実行します。
追加した項目と値が表示されたらOKです。

続きはそのうち。