[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[postfix-jp: 611] Re: postfix を tcpserverで起動する方法



「[postfix-jp: 600] Re: postfix を tcpserverで起動する方法」にてIKEDA Nozomuさんがおっしゃるには、
>kaku@xxxxxxxxxx さんは書きました:
>>つまり条件は
>>・POPサーバのvpopmailの「pop bere smtp」で作られたIPアドレスDBを使用しなけ
>>ればならない=DRACは無理
>>です。
>
>cdb が読めればよいということであれば、cdb のパッチを試して
>みてはいかがでしょうか?

vpopmail の POP before SMTP はよく知りませんが、qmail で使うことが
前提となっているのならば、IP アドレスをひくと allow,RELAYCLIENT="" という
値が入ってて、tcpserver が環境変数 RELAYCLIENT を設定する、という実装に
なってるんじゃないかと思うのですがどうでしょう。

これが合ってるとすれば、postfix が直接 cdb 形式のデータベースを
読むパッチを当てたとしても、DRAC のようにタイムスタンプが返ってくるのではなく、
allow,RELAYCLIENT="" という文字列になるでしょう。これは postfix では
扱えないのではないかと。

また、tcpserver 経由で smtpd を起動したとしても、smtpd の方で
$RELAYCLIENT が設定されてるかどうかを判別できないと POP before SMTP には
使えないと思います。
environ: もそうかどうかは確かめてませんが、postfix はキーを小文字に
変換してからテーブルを検索するので、大文字の環境変数は参照できないんじゃ
ないでしょうか。smtpd に大文字のまま検索させることってできましたっけ?
postmap で検索させるときには小文字に変換させないオプションがありますが。

% env HOGE=fuga postmap -q HOGE -f environ:
fuga

仮に大文字の環境変数を参照できたとしても、

% env HOGE="" postmap -q HOGE -f environ:
postmap: warning: table environ:: key HOGE: empty string result is not allowed
postmap: warning: table environ: should return NO RESULT in case of NOT FOUND

値が空だと無理っぽいですね。qmail の $RELAYCLIENT はたいていからっぽです。

ということで、vpopmail が現在 cdb で出力しているデータベースを
使うのは諦めて、DRAC に対応させるしかないのではないでしょうか。

_______________________________________________
Postfix-jp-list mailing list
Postfix-jp-list@xxxxxxxxxxxxxxxxxxxx
http://lists.sourceforge.jp/mailman/listinfo/postfix-jp-list

Follow-Ups
[postfix-jp: 613] Re: postfix を tcpserverで起動する方法, kaku
References
[postfix-jp: 596] postfix を tcpserverで起動する方法, kaku
[postfix-jp: 600] Re: postfix を tcpserverで起動する方法, IKEDA Nozomu

[検索ページ] [Postfix-JP ML Home]