All pastes #67892 Raw Edit

Something

public text v1 · immutable
#67892 ·published 2006-06-20 19:13 UTC
rendered paste body
### Relay_ok: is the relay/sender ok?
######################################################################
SRelay_ok
# anything originating locally is ok
# check IP address
R$*                     $: $&{client_addr}
R$@                     $@ RELAY                originated locally
R0                      $@ RELAY                originated locally
R127.0.0.1              $@ RELAY                originated locally
RIPv6:::1               $@ RELAY                originated locally
R$=R $*                 $@ RELAY                relayable IP address
R$*                     $: [ $1 ]               put brackets around it...
R$=w                    $@ RELAY                ... and see if it is local


# check client name: first: did it resolve?
R$*                     $: < $&{client_resolve} >
R<TEMP>                 $#TEMP $@ 4.4.0 $: "450 Relaying temporarily denied. Cannot resolve PTR record for " $&{client_addr}
R<FORGED>               $#error $@ 5.7.1 $: "550 Relaying denied. IP name possibly forged " $&{client_name}
R<FAIL>                 $#error $@ 5.7.1 $: "550 Relaying denied. IP name lookup failed " $&{client_name}
R$*                     $: <@> $&{client_name}
# pass to name server to make hostname canonical
R<@> $* $=P             $:<?>  $1 $2
R<@> $+                 $:<?>  $[ $1 $]
R$* .                   $1                      strip trailing dots
R<?> $* $=m             $@ RELAY
R<?> $=w                $@ RELAY
R<?> $* $=R                     $@ RELAY