[sendmail-conf] Sendmail 8.13 + hacks for version 8.12

Alexander Sheiko adsh на i.com.ua
Ср Дек 7 19:27:49 EET 2005


> > ----- rule fails
> > verify_sender    returns: adsh @ univ . kiev . ua
>
> сравните имеющийся у вас хак с этим:
> http://corvax.falbi.kiev.ua/sendmail-cf/hack/verify_sender.m4

md5 не совпадала, я его перезаписал.

Теперь выглядит так:

echo 'verify_sender adsh на univ.kiev.ua' | sendmail -bt -d21.12
WARNING: Ruleset Local_check_mail has multiple definitions
WARNING: Ruleset verify_sender_check_host has multiple definitions
WARNING: Ruleset verify_sender_check_host has multiple definitions
WARNING: Ruleset Local_check_relay has multiple definitions
WARNING: Ruleset Local_check_relay has multiple definitions
WARNING: Ruleset Local_check_dialup_relay has multiple definitions
WARNING: Ruleset Local_check_dialup_relay has multiple definitions
WARNING: Ruleset Local_check_dialup_relay has multiple definitions
WARNING: Ruleset Local_check_dialup_relay has multiple definitions
WARNING: Ruleset Local_check_rcpt has multiple definitions
WARNING: Ruleset Local_check_dialup_helo has multiple definitions
WARNING: Ruleset Local_check_dialup_helo has multiple definitions
WARNING: Ruleset Local_check_dialup_helo has multiple definitions
WARNING: Ruleset Local_check_dialup_helo has multiple definitions
WARNING: Ruleset Local_check_rcpt has multiple definitions
WARNING: Ruleset Local_check_rcpt has multiple definitions
WARNING: Ruleset Check_Received has multiple definitions
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> verify_sender      input: adsh @ univ . kiev . ua
-----trying rule: $*
-----rule matches: $: $&{auth_type} $| $1
rewrite: RHS $&{auth_type} => "(NULL)"
rewritten as: $| adsh @ univ . kiev . ua
-----trying rule: $+ $| $*
----- rule fails
-----trying rule: $* $| $*
-----rule matches: $: $2
rewritten as: adsh @ univ . kiev . ua
-----trying rule: $*
-----rule matches: $: $1 $| $> verify_sender_check_host $&{client_name} $|
$&{client_addr}
rewrite: RHS $&{client_name} => "(NULL)"
rewrite: RHS $&{client_addr} => "(NULL)"
verify_sender_ch   input: $|
-----trying rule: $*
-----rule matches: $: < ? > $1
rewritten as: < ? > $|
-----trying rule: < ? > $+ $| $*
----- rule fails
-----trying rule: < $* > < $+ $| $* >
----- rule fails
-----trying rule: < ? > $* $| $+
----- rule fails
-----trying rule: < $* > < $* $| $+ >
----- rule fails
-----trying rule: < VERIFY $* > $* $| $*
----- rule fails
-----trying rule: < $* > $* $| $*
-----rule matches: $: $2 $| $3
rewritten as: $|
-----trying rule: $*
-----rule matches: $: < ? > $1
rewritten as: < ? > $|
-----trying rule: < ? > $+ $| $*
----- rule fails
-----trying rule: < $* > < $+ $| $* >
----- rule fails
-----trying rule: < ? > $* $| $+
----- rule fails
-----trying rule: < $* > < $* $| $+ >
----- rule fails
-----trying rule: < OK $* > $* $| $*
----- rule fails
-----trying rule: < $* > $* $| $*
-----rule matches: $: $2 $| $3
rewritten as: $|
-----trying rule: $*
-----rule matches: $: < ? > $1
rewritten as: < ? > $|
-----trying rule: < ? > $+ $| $*
----- rule fails
-----trying rule: < $* > < $+ $| $* >
----- rule fails
-----trying rule: < ? > $* $| $+
----- rule fails
-----trying rule: < $* > < $* $| $+ >
----- rule fails
-----trying rule: < 550 $* > $* $| $*
----- rule fails
-----trying rule: < $* > $* $| $*
-----rule matches: $: $2 $| $3
rewritten as: $|
verify_sender_ch returns: $|
rewritten as: adsh @ univ . kiev . ua $| $|
-----trying rule: $* $| SKIP
----- rule fails
-----trying rule: $* $| $# $*
----- rule fails
-----trying rule: $* $| $*
-----rule matches: $: $1
rewritten as: adsh @ univ . kiev . ua
-----trying rule: $*
-----rule matches: $: $&{IsOutgoing} $| $1
rewrite: RHS $&{IsOutgoing} => "(NULL)"
rewritten as: $| adsh @ univ . kiev . ua
-----trying rule: YES $| $*
----- rule fails
-----trying rule: $* $| $*
-----rule matches: $: $2
rewritten as: adsh @ univ . kiev . ua
-----trying rule: $+ < @ $+ > $*
----- rule fails
-----trying rule: $+ .
----- rule fails
-----trying rule: $*
-----rule matches: $: < ? > $1
rewritten as: < ? > adsh @ univ . kiev . ua
-----trying rule: < ? > $+ @ $+
-----rule matches: $: < $( access VerifySender : $1 @ $2 $: ? $) > $1 @ $2
rewritten as: < ? > adsh @ univ . kiev . ua
-----trying rule: < ? > $+ @ $+
-----rule matches: $: < $( access VerifySender : @ $2 $: ? $) > $1 @ $2
rewritten as: < ? > adsh @ univ . kiev . ua
-----trying rule: < ? > $+ @ $+
-----rule matches: $: $> D < $2 > < ? > < ! VerifySender > < addr : $1 @ $2
>
D                  input: < univ . kiev . ua > < ? > < ! VerifySender > <
addr : adsh @ univ . kiev . ua >
-----trying rule: < $* > < $+ > < $- $- > < $* >
-----rule matches: $: < $( access $4 : $1 $: ? $) > < $1 > < $2 > < $3 $4 >
< $5 >
rewritten as: < ? > < univ . kiev . ua > < ? > < ! VerifySender > < addr :
adsh @ univ . kiev . ua >
-----trying rule: < ? > < $+ > < $+ > < + $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ . $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ : : $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ : $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < $+ . $+ > < $+ > < $- $- > < $* >
-----rule matches: $@ $> D < $2 > < $3 > < $4 $5 > < $6 >
D                  input: < kiev . ua > < ? > < ! VerifySender > < addr :
adsh @ univ . kiev . ua >
-----trying rule: < $* > < $+ > < $- $- > < $* >
-----rule matches: $: < $( access $4 : $1 $: ? $) > < $1 > < $2 > < $3 $4 >
< $5 >
rewritten as: < ? > < kiev . ua > < ? > < ! VerifySender > < addr : adsh @
univ . kiev . ua >
-----trying rule: < ? > < $+ > < $+ > < + $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ . $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ : : $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ : $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < $+ . $+ > < $+ > < $- $- > < $* >
-----rule matches: $@ $> D < $2 > < $3 > < $4 $5 > < $6 >
D                  input: < ua > < ? > < ! VerifySender > < addr : adsh @
univ . kiev . ua >
-----trying rule: < $* > < $+ > < $- $- > < $* >
-----rule matches: $: < $( access $4 : $1 $: ? $) > < $1 > < $2 > < $3 $4 >
< $5 >
rewritten as: < ? > < ua > < ? > < ! VerifySender > < addr : adsh @ univ .
kiev . ua >
-----trying rule: < ? > < $+ > < $+ > < + $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ . $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ : : $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < [ $+ : $- ] > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < $+ . $+ > < $+ > < $- $- > < $* >
----- rule fails
-----trying rule: < ? > < $+ > < $+ > < $- $- > < $* >
-----rule matches: $@ < $2 > < $5 >
rewritten as: < ? > < addr : adsh @ univ . kiev . ua >
D                returns: < ? > < addr : adsh @ univ . kiev . ua >
rewritten as: < ? > < addr : adsh @ univ . kiev . ua >
D                returns: < ? > < addr : adsh @ univ . kiev . ua >
rewritten as: < ? > < addr : adsh @ univ . kiev . ua >
D                returns: < ? > < addr : adsh @ univ . kiev . ua >
rewritten as: < ? > < addr : adsh @ univ . kiev . ua >
-----trying rule: < $* > < addr : $* >
-----rule matches: $: < $1 > $2
rewritten as: < ? > adsh @ univ . kiev . ua
-----trying rule: < ? > $+ @ $+
-----rule matches: $: < $( access VerifySender : $: ? $) > $1 @ $2
rewritten as: < VERIFY > adsh @ univ . kiev . ua
-----trying rule: < OK > $*
----- rule fails
-----trying rule: < SKIP > $*
----- rule fails
-----trying rule: < $* > $*
-----rule matches: $: $2
rewritten as: adsh @ univ . kiev . ua
-----trying rule: $+ @ $+
-----rule matches: $: < $( mail_from_check $1 @ $2 $) >
Cannot get host name of local machine at
/usr/libdata/perl/5.00503/Sys/Syslog.pm line 248
rewritten as: < adsh @ univ . kiev . ua >
verify_sender    returns: < adsh @ univ . kiev . ua >

Но с консоли ведь проходит.

--
WBR, Alexander Sheiko.






Подробная информация о списке рассылки sendmail-conf