Lines Matching refs:R

185 # Hosts for which relaying is permitted ($=R)
218 # ($R has precedence for unqualified names if `FEATURE(stickyhost)' is used)
746 R$@ $@ <@>
749 R$* $: $1 <@> mark addresses
750 R$* < $* > $* <@> $: $1 < $2 > $3 unmark <addr>
751 R@ $* <@> $: @ $1 unmark @host:...
752 R$* [ IPv6 : $+ ] <@> $: $1 [ IPv6 : $2 ] unmark IPv6 addr
753 R$* :: $* <@> $: $1 :: $2 unmark node::addr
754 R:`include': $* <@> $: :`include': $1 unmark :`include':...
755 R$* : $* [ $* ] $: $1 : $2 [ $3 ] <@> remark if leading colon
756 R$* : $* <@> $: $2 strip colon if marked
757 R$* <@> $: $1 unmark
758 R$* ; $1 strip trailing semi
759 R$* < $+ :; > $* $@ $2 :; <@> catch <list:;>
760 R$* < $* ; > $1 < $2 > bogus bracketed semi
763 R$@ $@ :; <@>
766 R$* $: < $1 > housekeeping <>
767 R$+ < $* > < $2 > strip excess on left
768 R< $* > $+ < $1 > strip excess on right
769 R<> $@ < @ > MAIL FROM:<> case
770 R< $+ > $: $1 remove housekeeping <>
774 R@ $+ , $+ @ $1 : $2 change all "," to ":"
779 `R@ [$+] : $+ $@ $>Canonify2 < @ [$1] > : $2 handle <route-addr>')
780 R@ $+ : $+ $@ $>Canonify2 < @$1 > : $2 handle <route-addr>
783 R@ $+ , $+ $2
785 `R@ [ $* ] : $+ $2')
786 R@ $+ : $+ $2
790 R $+ : $* ; @ $+ $@ $>Canonify2 $1 : $2 ; < @ $3 > list syntax
791 R $+ : $* ; $@ $1 : $2; list syntax
794 R$+ @ $+ $: $1 < @ $2 > focus on domain
795 R$+ < $+ @ $+ > $1 $2 < @ $3 > move gaze right
796 R$+ < @ $+ > $@ $>Canonify2 $1 < @ $2 > already canonical
800 dnl R$* < @ $~[ $* : $* > $* $1 < @ $2 $3 > $4 nix colons in addrs
804 R$- ! $+ $@ $>Canonify2 $2 < @ $1 .UUCP > resolve uucp names
805 R$+ . $- ! $+ $@ $>Canonify2 $3 < @ $1 . $2 > domain uucps
806 R$+ ! $+ $@ $>Canonify2 $2 < @ $1 .UUCP > uucp subdomains
810 R$- :: $+ $@ $>Canonify2 $2 < @ $1 .DECNET > resolve DECnet names
811 R$- . $- :: $+ $@ $>Canonify2 $3 < @ $1.$2 .DECNET > numeric DECnet addr
815 R$* % $* $1 @ $2 First make them all @s.
816 R$* @ $* @ $* $1 % $2 @ $3 Undo all but the last.
817 R$* @ $* $@ $>Canonify2 $1 < @ $2 > Insert < > and finish
820 R$* $@ $>Canonify2 $1
830 R$* < @ localhost > $* $: $1 < @ $j . > $2 no domain at all
831 R$* < @ localhost . $m > $* $: $1 < @ $j . > $2 local domain
833 `R$* < @ localhost . UUCP > $* $: $1 < @ $j . > $2 .UUCP domain')
836 R$* < @ [ $+ ] > $* $: $1 < @@ [ $2 ] > $3 mark [addr]
837 R$* < @@ $=w > $* $: $1 < @ $j . > $3 self-literal
838 R$* < @@ $+ > $* $@ $1 < @ $2 > $3 canon IP addr
842 R$* < @ $+ > $* $: $1 < @ $(domaintable $2 $) > $3', `dnl')
848 R$* < @ $+ .BITNET > $* $: $1 < @ $(bitdomain $2 $: $2.BITNET $) > $3', `dnl')
852 R$* < @ $+ .UUCP > $* $: $1 < @ $(uudomain $2 $: $2.UUCP $) > $3', `dnl')
857 R$* < @ $+ . UUCP > $* $@ $1 < @ $2 . UUCP . > $3',
860 `R$* < @ $=U . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl')
862 `R$* < @ $=V . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl')
864 `R$* < @ $=W . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl')
866 `R$* < @ $=X . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl')
868 `R$* < @ $=Y . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl')
872 R$* < @ $+ . UUCP > $* $: $1 < @ $[ $2 $] . UUCP . > $3
873 R$* < @ $+ . . UUCP . > $* $@ $1 < @ $2 . > $3')
876 R$* < @ $* $=P > $* $: $1 < @ $2 $3 . > $4
880 R$* < @ $* $~P > $* $: $&{daemon_flags} $| $1 < @ $2 $3 > $4
890 R$* $| $* < @ $* $={Canonify} > $* $: $2 < @ $[ $3 $4 $] > $5
892 R$* c $* $| $* < @ $* > $* $: $3 < @ $[ $4 $] > $5
894 R$* $| $* < @ $+ . > $* $: $2 < @ $3 . > $4
896 R$* $| $* < @ $+.$+ > $* $: $2 < @ $3.$4 . > $5
902 R$* $| $* < @ $* > $* $: $2 < @ $[ $3 $] > $4', `dnl')', `dnl
907 R$* CC $* $| $* < @ $+.$+ > $* $: $3 < @ $4.$5 . > $6
908 R$* CC $* $| $* $: $3
911 R$* $| $* < @ $* $~P > $* $: $&{addr_type} $| $2 < @ $3 $4 > $5
912 R$* h $* $| $* < @ $+.$+ > $* $: $3 < @ $4.$5 . > $6
913 R$* h $* $| $* $: $3', `dnl')
915 R$* $| $* < @ $* > $* $: $2 < @ $[ $3 $] > $4')
917 R$* $| $* $: $2
920 R$* < @ $=w > $* $: $1 < @ $2 . > $3
922 `R$* < @ $* $=M > $* $: $1 < @ $2 $3 . > $4',
923 `R$* < @ $=M > $* $: $1 < @ $2 . > $3')
927 `R$* < @ $* $={VirtHost} > $* $: $1 < @ $2 $3 . > $4',
928 `R$* < @ $={VirtHost} > $* $: $1 < @ $2 . > $3')',
933 `R$* < @ $* $=G > $* $: $1 < @ $2 $3 . > $4',
934 `R$* < @ $=G > $* $: $1 < @ $2 . > $3')',
938 R$* < @ $* . . > $* $1 < @ $2 . > $3
946 R$+ :; <@> $@ $1 : handle <list:;>
947 R$* <@> $@ handle <> and list:;
950 R$* < @ $+ . > $* $1 < @ $2 > $3
953 R$* < @ *LOCAL* > $* $1 < @ $j > $2
956 R$* < $+ > $* $1 $2 $3 defocus
957 R@ $+ : @ $+ : $+ @ $1 , @ $2 : $3 <route-addr> canonical
958 R@ $* $@ @ $1 ... and exit
962 R$+ @ $- . UUCP $2!$1 u@h.UUCP => h!u')
966 R$+ @ $+ . DECNET $2 :: $1 u@h.DECNET => h::u',
969 R$+ % $=w @ $=w $1 @ $2 u%host@host => u@host
979 R$* $: $>canonify $1
980 R$* $@ $>parse $1
989 R$* $: $>Parse0 $1 initial parsing
990 R<@> $#_LOCAL_ $: <@> special case error msgs
991 R$* $: $>ParseLocal $1 handle local hacks
992 R$* $: $>Parse1 $1 final parsing
1002 R<@> $@ <@> special case error msgs
1003 R$* : $* ; <@> $#error $@ 5.1.3 $: "_CODE553 List:; syntax illegal for recipient addresses"
1004 R@ <@ $* > < @ $1 > catch "@@host" bogosity
1005 R<@ $+> $#error $@ 5.1.3 $: "_CODE553 User address required"
1006 R$+ <@> $#error $@ 5.1.3 $: "_CODE553 Hostname required"
1007 R$* $: <> $1
1009 R<> $* < @ [ $* ] : $+ > $* $1 < @ [ $2 ] : $3 > $4
1010 R<> $* < @ [ $* ] , $+ > $* $1 < @ [ $2 ] , $3 > $4
1012 R<> $* < @ [ $* ] $+ > $* $#error $@ 5.1.2 $: "_CODE553 Invalid address"
1013 R<> $* < @ [ $+ ] > $* $1 < @ [ $2 ] > $3
1014 R<> $* <$* : $* > $* $#error $@ 5.1.3 $: "_CODE553 Colon illegal in host name part"
1015 R<> $* $1
1016 R$* < @ . $* > $* $#error $@ 5.1.2 $: "_CODE553 Invalid host name"
1017 R$* < @ $* .. $* > $* $#error $@ 5.1.2 $: "_CODE553 Invalid host name"
1019 R$* < @ $* @ > $* $#error $@ 5.1.2 $: "_CODE553 Invalid route address"
1021 R$* @ $* < @ $* > $* $#error $@ 5.1.3 $: "_CODE553 Invalid route address"
1023 R$* , $~O $* $#error $@ 5.1.3 $: "_CODE553 Invalid route address"
1026 R$* . < @ $* > $* $#error $@ 5.1.2 $: "_CODE553 Local part must not end with a dot"
1027 R. $* < @ $* > $* $#error $@ 5.1.2 $: "_CODE553 Local part must not begin with a dot"
1031 R$* < @ > $* $@ $>Parse0 $>canonify $1 user@ => user
1032 R< @ $=w . > : $* $@ $>Parse0 $>canonify $2 @here:... -> ...
1033 R$- < @ $=w . > $: $(dequote $1 $) < @ $2 . > dequote "foo"@here
1034 R< @ $+ > $#error $@ 5.1.3 $: "_CODE553 User address required"
1035 R$* $=O $* < @ $=w . > $@ $>Parse0 $>canonify $1 $2 $3 ...@here -> ...
1036 R$- $: $(dequote $1 $) < @ *LOCAL* > dequote "foo"
1037 R< @ *LOCAL* > $#error $@ 5.1.3 $: "_CODE553 User address required"
1038 R$* $=O $* < @ *LOCAL* >
1040 R$* < @ *LOCAL* > $: $1
1049 R$+ < @ $={LDAPRoute} . > $: $>LDAPExpand <$1 < @ $2 . >> <$1 @ $2> <>
1050 R$+ < @ $={LDAPRouteEquiv} . > $: $>LDAPExpand <$1 < @ $2 . >> <$1 @ $M> <>',
1056 R$* < @ [ $+ ] > $* $: $>ParseLocal $1 < @ [ $2 ] > $3 numeric internet spec
1057 R$* < @ [ $+ ] > $* $: $1 < @ [ $2 ] : $S > $3 Add smart host to path
1058 R$* < @ [ $+ ] : > $* $#_SMTP_ $@ [$2] $: $1 < @ [$2] > $3 no smarthost: send
1059 R$* < @ [ $+ ] : $- : $*> $* $#$3 $@ $4 $: $1 < @ [$2] > $5 smarthost with mailer
1060 R$* < @ [ $+ ] : $+ > $* $#_SMTP_ $@ $3 $: $1 < @ [$2] > $4 smarthost without mailer',
1071 R$+ < @ $+ > $: $(macro {RecipientAddress} $) $1 < @ $2 >
1072 R$+ < @ $+ > $: <?> $1 < @ $2 > $| $>final $1 < @ $2 >
1073 R<?> $+ $| $+ $: $1 $(macro {RecipientAddress} $@ $2 $)
1074 R<?> $+ $| $* $: $1',
1076 R$+ $: <!> $1 Mark for lookup
1079 `R<!> $+ < @ $* $={VirtHost} . > $: < $(virtuser $1 @ $2 $3 $@ $1 $: @ $) > $1 < @ $2 $3 . >',
1080 `R<!> $+ < @ $={VirtHost} . > $: < $(virtuser $1 @ $2 $@ $1 $: @ $) > $1 < @ $2 . >')
1082 R<!> $+ < @ $=w . > $: < $(virtuser $1 @ $2 $@ $1 $: @ $) > $1 < @ $2 . >
1085 R<@> $+ + $+ < @ $* . >
1088 R<@> $+ + $* < @ $* . >
1091 R<@> $+ + $* < @ $* . >
1095 R<@> $+ + $+ < @ $+ . > $: < $(virtuser + + @ $3 $@ $1 $@ $2 $@ +$2 $: @ $) > $1 + $2 < @ $3 . >
1097 R<@> $+ + $* < @ $+ . > $: < $(virtuser + * @ $3 $@ $1 $@ $2 $@ +$2 $: @ $) > $1 + $2 < @ $3 . >
1100 R<@> $+ + $* < @ $+ . > $: < $(virtuser @ $3 $@ $1 $@ $2 $@ +$2 $: ! $) > $1 + $2 < @ $3 . >
1102 R<@> $+ < @ $+ . > $: < $(virtuser @ $2 $@ $1 $: @ $) > $1 < @ $2 . >
1104 R<@> $+ $: $1
1106 R<!> $+ $: $1
1107 R< error : $-.$-.$- : $+ > $* $#error $@ $1.$2.$3 $: $4
1108 R< error : $- $+ > $* $#error $@ $(dequote $1 $) $: $2
1111 R< $+ > $+ < @ $+ > $: < $1 > $2 < @ $3 > $| $1
1113 R< $+ > $+ < @ $+ > $| $&{RecipientAddress} $: $>ParseLocal $>Parse0 $>canonify $1
1114 R< $+ > $+ < @ $+ > $| $* $: < $1 > $2 < @ $3 >
1119 `R< $+ > $+ < @ $+ > $: $>ParseLocal $>Parse0 $>canonify $1',
1120 `R< $+ > $+ < @ $+ > $: $>Recurse $1')
1125 R$+ . USENET < @ $=w . > $#usenet $@ usenet $: $1 handle usenet specially', `dnl')
1129 `R$+ < @ $=w . > $: < $H > $1 < @ $2 . > first try hub
1130 R< $+ > $+ < $+ > $>MailerToTriple < $1 > $2 < $3 > yep ....
1132 R< > $+ + $* < $+ > $#_LOCAL_ $: $1 + $2 plussed name?
1133 R< > $+ < $+ > $#_LOCAL_ $: @ $1 nope, local address',
1134 `R$=L < @ $=w . > $#_LOCAL_ $: @ $1 special local names
1135 R$+ < @ $=w . > $#_LOCAL_ $: $1 regular local name')
1139 R$* <@ $+ > $* $: < $2 > $1 < @ $2 > $3 extract host name
1140 R< $+ . > $* $: < $1 > $2 strip trailing dot
1141 R< $+ > $* $: < $(mailertable $1 $) > $2 lookup
1143 R< $~[ : $* > $* $>MailerToTriple < $1 : $2 > $3 check -- resolved?
1144 R< $+ > $* $: $>Mailertable <$1> $2 try domain',
1151 `R$* < @ $=V . UUCP . > $* $: $>MailerToTriple < $V > $1 <@$2.UUCP.> $3',
1154 `R$* < @ $=W . UUCP . > $* $: $>MailerToTriple < $W > $1 <@$2.UUCP.> $3',
1157 `R$* < @ $=X . UUCP . > $* $: $>MailerToTriple < $X > $1 <@$2.UUCP.> $3',
1162 `R$*<@$+.BITNET.>$* $: $>MailerToTriple < $B > $1 <@$2.BITNET.> $3 user@host.BITNET',
1165 `R$*<@$+.DECNET.>$* $: $>MailerToTriple < $C > $1 <@$2.DECNET.> $3 user@host.DECNET',
1168 `R$+ < @ POP. > $#pop $: $1 user@POP',
1171 `R$+ < @ $+ .FAX. > $#fax $@ $2 $: $1 user@host.FAX',
1173 `R$*<@$+.FAX.>$* $: $>MailerToTriple < $F > $1 <@$2.FAX.> $3 user@host.FAX',
1178 R$*<@$*.UUCP.>$* $: $>MailerToTriple < $Y > $1 <@$2.UUCP.> $3 uucp mail',
1181 R$* < @ $+ .UUCP. > $* $#_UUCP_ $@ $2 $: $1 < @ $2 .UUCP. > $3 user@host.UUCP',
1185 R$+ . USENET $#usenet $@ usenet $: $1',
1193 R$* < @ $* > $* $: $>MailerToTriple < $S > $1 < @ $2 > $3 glue on smarthost name
1197 `R$* < @$* > $* $#_SMTP_ $@ $2 $: $1 < @ $2 > $3 user@host.domain',
1198 `R$* < @$* > $* $#error $@ 5.1.2 $: "_CODE553 Unrecognized host name " $2')
1201 R$=L $#_LOCAL_ $: @ $1 special local names
1202 R$+ $#_LOCAL_ $: $1 regular local names
1210 R$+ $: $1 $| $>"Local_localaddr" $1
1211 R$+ $| $#ok $@ $1 no change
1212 R$+ $| $#$* $#$2
1213 R$+ $| $* $: $1
1217 R$+ $: $1 $| $&h $| $&{Host} check h and {Host}
1218 R$+ $| $| $: $(macro {Host} $@ $) $1 no h or {Host}
1219 R$+ $| $| $+ $: $1 h not set, {Host} set
1220 R$+ $| +$* $| $* $: $1 h is +detail, {Host} set
1221 R$+ $| $* @ $+ $| $* $: $(macro {Host} $@ @$3 $) $1 set {Host} to host in h
1222 R$+ $| $+ $| $* $: $(macro {Host} $@ @$2 $) $1 set {Host} to h
1227 R$+ $: $(macro {LocalAddrHost} $) $1
1228 R$+ @ $+ $: $(macro {LocalAddrHost} $@ @ $2 $) $1')
1232 R$+ + * $#_LOCAL_ $@ $&h $: $1`'ifdef(`_FFR_5_', ` $&{LocalAddrHost}')
1233 R$+ + $* $#_LOCAL_ $@ + $2 $: $1 + *`'ifdef(`_FFR_5_', ` $&{LocalAddrHost}')
1236 R$+ $: <> $1
1241 R< > $+ + $* $: < ? $L > <+ $2> $(user $1 $) look up user+
1242 R< > $+ $: < ? $L > < > $(user $1 $) look up user
1243 R< ? $* > < $* > $+ <> $: < > $3 $2 found; strip $L
1244 R< ? $* > < $* > $+ $: < $1 > $3 $2 not found', `
1245 R< > $+ $: < $L > $(user $1 $) look up user
1246 R< $* > $+ <> $: < > $2 found; strip $L')
1248 R< $+ > $+ $: < $1 > $2 $&{Host}')
1252 R< > $+ $: < $H > $1 try hub', `dnl')
1254 R< > $+ $: < $R > $1 try relay', `dnl')
1256 R< > $+ $@ $1', `dnl
1257 R< > $+ $: < > < $1 <> $&h > nope, restore +detail
1259 R< > < $+ @ $+ <> + $* > $: < > < $1 + $3 @ $2 > check whether +detail')
1260 R< > < $+ <> + $* > $: < > < $1 + $2 > check whether +detail
1261 R< > < $+ <> $* > $: < > < $1 > else discard
1262 R< > < $+ + $* > $* < > < $1 > + $2 $3 find the user part
1263 R< > < $+ > + $* $#_LOCAL_ $@ $2 $: @ $1`'ifdef(`_FFR_5_', ` $&{LocalAddrHost}') strip the extra +
1264 R< > < $+ > $@ $1 no +detail
1265 R$+ $: $1 <> $&h add +detail back in
1267 R$+ @ $+ <> + $* $: $1 + $3 @ $2 check whether +detail')
1268 R$+ <> + $* $: $1 + $2 check whether +detail
1269 R$+ <> $* $: $1 else discard')
1270 R< local : $* > $* $: $>MailerToTriple < local : $1 > $2 no host extension
1271 R< error : $* > $* $: $>MailerToTriple < error : $1 > $2 no host extension
1274 R< $~[ : $+ > $+ @ $+ $: $>MailerToTriple < $1 : $2 > $3 < @ $4 >')
1275 R< $~[ : $+ > $+ $: $>MailerToTriple < $1 : $2 > $3 < @ $2 >
1277 R< $+ > $+ @ $+ $@ $>MailerToTriple < $1 > $2 < @ $3 >')
1278 R< $+ > $+ $@ $>MailerToTriple < $1 > $2 < @ $1 >
1288 R< $+ > $* $: < $(mailertable $1 $) > $2 lookup
1289 R< $~[ : $* > $* $>MailerToTriple < $1 : $2 > $3 check resolved?
1290 R< $+ > $* $: < $1 > $>Mailertable <$1> $2 try domain
1291 R< $+ > $#$* $#$2 found
1292 R< $+ > $* $#_RELAY_ $@ $1 $: $2 not found, direct relay',
1303 R$* <$- . $+ > $* $: $1$2 < $(mailertable .$3 $@ $1$2 $@ $2 $) > $4
1305 R$* <$~[ : $* > $* $>MailerToTriple < $2 : $3 > $4 check -- resolved?
1306 R$* < . $+ > $* $@ $>Mailertable $1 . <$2> $3 no -- strip & try again
1308 R$* < $* > $* $: < $(mailertable . $@ $1$2 $) > $3 try "."
1309 R< $~[ : $* > $* $>MailerToTriple < $1 : $2 > $3 "." found?
1311 R< $* > $* $@ $2 no mailertable match',
1328 R< > $* $@ $1 strip off null relay
1329 R< error : $-.$-.$- : $+ > $* $#error $@ $1.$2.$3 $: $4
1330 R< error : $- : $+ > $* $#error $@ $(dequote $1 $) $: $2
1331 R< error : $+ > $* $#error $: $1
1332 R< local : $* > $* $>CanonLocal < $1 > $2
1334 R< $~[ : $+ @ $+ > $*<$*>$* $# $1 $@ $3 $: $2<@$3> use literal user
1335 R< $~[ : $+ > $* $# $1 $@ $2 $: $3 try qualified mailer
1336 R< $=w > $* $@ $2 delete local host
1337 R< $+ > $* $#_RELAY_ $@ $1 $: $2 use unqualified mailer
1353 R< $* > < @ $+ > : $+ $@ $>Recurse $3
1354 R< $* > $+ $=O $+ < @ $+ > $@ $>Recurse $2 $3 $4
1357 R< $* > $* < @ $* . > $: < $1 > $2 < @ $3 >
1360 R< > $* < @ $* > $* $#_LOCAL_ $@ $1@$2 $: $1
1361 R< > $+ $#_LOCAL_ $@ $1 $: $1
1364 R< $+ @ $+ > $* < @ $* > $: < $1 > $3 < @ $4 >
1367 R< $+ > $* <@ $* > $* $#_LOCAL_ $@ $2@$3 $: $1
1368 R< $+ > $* $#_LOCAL_ $@ $2 $: $1
1380 `R$+ < @ $* $=G . > $: < $1@$2$3 > $1 < @ $2$3 . > @ mark',
1381 `R$+ < @ $=G . > $: < $1@$2 > $1 < @ $2 . > @ mark')
1382 R$+ < @ *LOCAL* > $: < $1@$j > $1 < @ *LOCAL* > @ mark
1387 R< $+ > $+ < $* > @ $: < $(generics $1 $: @ $1 $) > $2 < $3 >
1390 R<@$+ + $* @ $+> $+ < @ $+ >
1392 R<@$+ + $* @ $+> $+ < @ $+ >
1395 R<@$+ > $+ < @ $+ > $: < > $2 < @ $3 >
1397 R< > $+ < @ $+ . > $: < $(generics @$2 $@ $1 $: $) > $1 < @ $2 . >
1400 R< > $+ < @ $+ > $: < $(generics $1 $: $) > $1 < @ $2 >
1401 R< > $+ + $* < @ $+ > $: < $(generics $1+* $@ $2 $: $) > $1 + $2 < @ $3 >
1402 R< > $+ + $* < @ $+ > $: < $(generics $1 $: $) > $1 + $2 < @ $3 >
1403 R< $* @ $* > $* < $* > $@ $>canonify $1 @ $2 found qualified
1404 R< $+ > $* < $* > $: $>canonify $1 @ *LOCAL* found unqualified
1405 R< > $* $: $1 not found',
1409 R$* < @ $* $=N . > $@ $1 < @ $2 $3 . >
1413 R$=E < @ *LOCAL* > $@ $1 < @ $j . > leave exposed
1415 `R$=E < @ $* $=M . > $@ $1 < @ $2 $3 . >',
1416 `R$=E < @ $=M . > $@ $1 < @ $2 . >')
1418 `R$=E < @ $=w . > $@ $1 < @ $2 . >')
1422 `R$* < @ $* $=M . > $* $: $1 < @ $2 $3 . @ $M > $4 convert masqueraded doms',
1423 `R$* < @ $=M . > $* $: $1 < @ $2 . @ $M > $3 convert masqueraded doms')
1425 `R$* < @ $=w . > $* $: $1 < @ $2 . @ $M > $3')
1426 R$* < @ *LOCAL* > $* $: $1 < @ $j . @ $M > $2
1427 R$* < @ $+ @ > $* $: $1 < @ $2 > $3 $M is null
1428 R$* < @ $+ @ $+ > $* $: $1 < @ $3 . > $4 $M is not null
1431 R$* < @ *LOCAL* > $@ $1 < @ $j . >')
1439 `R$+ $@ $>MasqHdr $1',
1440 `R$* < @ *LOCAL* > $* $: $1 < @ $j . > $2')
1468 R<$+><$+><$*> $: <$(ldapmra $2 $: $)> <$(ldapmh $2 $: $)> <$1> <$2> <$3>
1471 R<$* <TMPF>> <$*> <$+> <$+> <$*> $: $&{opMode} $| TMPF <$&{addr_type}> $| $3
1472 R<$*> <$* <TMPF>> <$+> <$+> <$*> $: $&{opMode} $| TMPF <$&{addr_type}> $| $3
1475 R$={SMTPOpModes} $| TMPF <e r> $| $+ $#error $@ 4.3.0 $: "451 Temporary system failure. Please try …
1477 R$* $| TMPF <$*> $| $+ $@ $3
1482 R<$+@$+> <$=w> <$+> <$+> <$*> $@ $>Parse0 $>canonify $1 $6 @ $2
1483 R<$+@$+> <> <$+> <$+> <$*> $@ $>Parse0 $>canonify $1 $5 @ $2')
1484 R<$+> <$=w> <$+> <$+> <$*> $@ $>Parse0 $>canonify $1
1485 R<$+> <> <$+> <$+> <$*> $@ $>Parse0 $>canonify $1
1493 R<$+@$+> <$+> <$+> <$+> <$*> $>LDAPMailertable <$3> $>canonify $1 $6 @ $2',
1494 `R<$+@$+> <$+> <$+> <$+> <$*> $#_RELAY_ $@ $3 $: $>canonify $1 $6 @ $2')')
1497 R<$+> <$+> <$+> <$+> <$*> $>LDAPMailertable <$2> $>canonify $1',
1498 `R<$+> <$+> <$+> <$+> <$*> $#_RELAY_ $@ $2 $: $>canonify $1')
1502 R<> <$=w> <$+> <$+> <$*> $@ $2
1509 R<> <$+> <$+> <$+> <$*> $>LDAPMailertable <$1> $2',
1510 `R<> <$+> <$+> <$+> <$*> $#_RELAY_ $@ $1 $: $2')
1515 R<> <> <$+> <$+ + $* @ $+> <> $@ $>LDAPExpand <$1> <$2 @ $4> <+$3>')dnl
1519 R<> <> <$+> <$+ @ $+> <$*> $: <> <> <$1> <@ $3> <$4>', `
1523 R<> <> <$+> <$+ + $* @ $+> <> $@ $>LDAPExpand <$1> <@ $4> <+$3>')
1524 R<> <> <$+> <$+ @ $+> <$*> $@ $>LDAPExpand <$1> <@ $3> <$4>')
1529 R<> <> <$+> <@ $+> <$*> $: <?> < $&{addr_type} > < $1 >
1531 R<?> <e r> <$+> $#error $@ nouser $: "550 User unknown"
1534 R<?> <e s> <$+> $#error $@ nouser $: "550 User unknown"')
1535 R<?> <$*> <$+> $@ $2',
1538 R<> <> <$+> <@ $+> <$*> $@ $1')',
1563 R<$*> <$+> <$- $-> <$*> $: < $(access $4`'_TAG_DELIM_`'$1 $: ? $) > <$1> <$2> <$3 $4> <$5>
1567 R<?> <$+> <$+> <+ $-> <$*> $: < $(access $1 $: ? $) > <$1> <$2> <+ $3> <$4>
1572 R<?> <$+.$+> <$+> <$- $-> <$*> $: < $(access $5`'_TAG_DELIM_`'.$2 $: ? $) > <$1.$2> <$3> <$4 $5> <$…
1574 R<?> <$+.$+> <$+> <+ $-> <$*> $: < $(access .$2 $: ? $) > <$1.$2> <$3> <+ $4> <$5>', `dnl')
1578 R<SKIP> <$+> <$+> <$- $-> <$*> $@ <$2> <$5>', `dnl')
1581 R<?> <[$+.$-]> <$+> <$- $-> <$*> $@ $>D <[$1]> <$3> <$4 $5> <$6>
1586 R<?> <[$+::$-]> <$+> <$- $-> <$*> $: $>D <[$1]> <$3> <$4 $5> <$6>
1587 R<?> <[$+:$-]> <$+> <$- $-> <$*> $: $>D <[$1]> <$3> <$4 $5> <$6>')
1590 R<?> <$+.$+> <$+> <$- $-> <$*> $@ $>D <$2> <$3> <$4 $5> <$6>
1593 R<?> <$+> <$+> <! $-> <$*> $: < $(access $3`'_TAG_DELIM_ $: ? $) > <$1> <$2> <! $3> <$4>', `dnl')
1596 R<?> <$+> <$+> <$- $-> <$*> $@ <$2> <$5>
1599 R<$* _ATMPF_> <$+> <$+> <$- $-> <$*> $@ <_ATMPF_> <$6>', `dnl')
1602 R<$*> <$+> <$+> <$- $-> <$*> $@ <$1> <$6>
1622 R<$+> <$+> <$- $-> <$*> $: < $(access $4`'_TAG_DELIM_`'$1 $: ? $) > <$1> <$2> <$3 $4> <$5>
1625 R<?> <$+> <$+> <+ $-> <$*> $: < $(access $1 $: ? $) > <$1> <$2> <+ $3> <$4>
1630 R<SKIP> <$+> <$+> <$- $-> <$*> $@ <$2> <$5>', `dnl')
1634 R<?> <$+::$-> <$+> <$- $-> <$*> $@ $>A <$1> <$3> <$4 $5> <$6>
1635 R<?> <$+:$-> <$+> <$- $-> <$*> $@ $>A <$1> <$3> <$4 $5> <$6>')
1638 R<?> <$+.$-> <$+> <$- $-> <$*> $@ $>A <$1> <$3> <$4 $5> <$6>
1641 R<?> <$+> <$+> <$- $-> <$*> $@ <$2> <$5>
1644 R<$* _ATMPF_> <$+> <$+> <$- $-> <$*> $@ <_ATMPF_> <$6>', `dnl')
1647 R<$*> <$+> <$+> <$- $-> <$*> $@ <$1> <$6>
1665 R$* $: $>Parse0 $>canonify $1 make domain canonical
1667 R< @ $+ > : $* @ $* < @ $1 > : $2 % $3 change @ to % in src route
1668 R$* < @ $+ > : $* : $* $3 $1 < @ $2 > : $4 change to % hack.
1669 R$* < @ $+ > : $* $3 $1 < @ $2 >
1673 ### ParseRecipient -- Strip off hosts in $=R as well as possibly
1686 R$* $: <?> $>CanonAddr $1
1688 R<?> $* < @ $* . > <?> $1 < @ $2 > strip trailing dots
1690 R<?> $- < @ $* > $: <?> $(dequote $1 $) < @ $2 > dequote local part
1693 R<?> $* $=O $* < @ $* > $: <NO> $1 $2 $3 < @ $4>
1695 R<?> $* $@ $1
1701 R<NO> $* < @ $* $=m > $: <RELAY> $1 < @ $2 $3 >', `dnl')
1710 `R<NO> $* < @ $=R > $: <RELAY> $1 < @ $2 >
1712 R<NO> $* < @ $+ > $: <$(access To:$2 $: NO $)> $1 < @ $2 >
1713 R<NO> $* < @ $+ > $: <$(access $2 $: NO $)> $1 < @ $2 >',`dnl')',
1714 `R<NO> $* < @ $* $=R > $: <RELAY> $1 < @ $2 $3 >
1716 R<NO> $* < @ $+ > $: $>D <$2> <NO> <+ To> <$1 < @ $2 >>
1717 R<$+> <$+> $: <$1> $2',`dnl')')
1722 R<NO> $* < @ $+ > $: <MX> < : $(mxserved $2 $) : > < $1 < @$2 > >
1723 R<MX> < : $* <TEMP> : > $* $#TEMP $@ 4.4.0 $: "450 Can not check MX records for recipient host " $1
1725 R<MX> < $* : $=w. : $* > < $+ > $: <RELAY> $4
1727 R<MX> < : $* : > < $+ > $: <NO> $2', `dnl')
1730 R<RELAY> $* < @ $* > $@ $>ParseRecipient $1
1732 R<$+> $* $@ $2
1743 R$* $: $>"RateControl" dummy', `dnl')
1746 R$* $: $>"ConnControl" dummy', `dnl')
1752 R$* $| $* $: $&{client_ptr} $| $2', `dnl')
1753 R$* $: $1 $| $>"Local_check_relay" $1
1754 R$* $| $* $| $#$* $#$3
1755 R$* $| $* $| $* $@ $>"Basic_check_relay" $1 $| $2
1759 R$* $: < $&{deliveryMode} > $1
1760 R< d > $* $@ deferred
1761 R< $* > $* $: $2
1765 R$+ $| $+ $: $>D < $1 > <?> <+ Connect> < $2 >
1768 R $| $+ $: $>A < $1 > <?> <+ Connect> <> empty client_name
1770 R<?> <$+> $: $>A < $1 > <?> <+ Connect> <> no: another lookup
1772 R<?> <$*> $: OK found nothing
1774 R<$={Accept}> <$*> $@ $1 return value of lookup
1775 R<REJECT> <$*> $#error ifdef(`confREJECT_MSG', `$: confREJECT_MSG', `$@ 5.7.1 $: "550 Access denie…
1776 R<DISCARD> <$*> $#discard $: discard
1777 R<QUARANTINE:$+> <$*> $#error $@ quarantine $: $1
1779 R<ERROR:$-.$-.$-:$+> <$*> $#error $@ $1.$2.$3 $: $4
1780 R<ERROR:$+> <$*> $#error $: $1
1781 ifdef(`_ATMPF_', `R<$* _ATMPF_> <$*> $#error $@ 4.3.0 $: "451 Temporary system failure. Please try…
1783 R<$+> <$*> $#error $: $1', `dnl')
1788 R$* $: $&{client_addr}
1789 R$-.$-.$-.$- $: <?> $(host $4.$3.$2.$1._RBL_. $: OK $)
1790 R<?>OK $: OKSOFAR
1791 R<?>$+ $#error $@ 5.7.1 $: "550 Rejected: " $&{client_addr} " listed at _RBL_"',
1796 R$* $: $>"RateControl" dummy')', `dnl')
1800 R$* $: $>"ConnControl" dummy')', `dnl')
1803 R$* $: $&{client_addr} $| $&{client_resolve}
1804 R$=R $* $@ RELAY We relay for these
1805 R$* $| OK $@ OK Resolves.
1806 R$* $| FAIL $#error $@ 5.7.1 $: 550 Fix reverse DNS for $1
1807 R$* $| TEMP $#error $@ 4.1.8 $: 451 Client IP address $1 does not resolve
1808 R$* $| FORGED $#error $@ 4.1.8 $: 451 Possibly forged hostname for $1
1817 R$* $: $1 $| $>"Local_check_mail" $1
1818 R$* $| $#$* $#$2
1819 R$* $| $* $@ $>"Basic_check_mail" $1
1823 R$* $: < $&{deliveryMode} > $1
1824 R< d > $* $@ deferred
1825 R< $* > $* $: $2
1830 R$* $: $1 $| $>"tls_client" $&{verify} $| MAIL
1831 R$* $| $#$+ $#$2
1833 R$* $| $* $: $1
1836 R<> $@ <OK> we MUST accept <> (RFC 1123)
1846 R$+ $: <?> $1
1847 R<?><$+> $: <@> <$1>
1848 R<?>$+ $: <@> <$1>
1851 R$* $: $&{daemon_flags} $| $1
1854 R$* f $* $| <@> < $* @ $- > $: < ? $&{client_name} > < $3 @ $4 >
1856 R$* u $* $| <@> < $* > $: <?> < $3 >
1861 R$* $| $* $: $2
1863 R<@> < $* @ localhost > $: < ? $&{client_name} > < $1 @ localhost >
1864 R<@> < $* @ [127.0.0.1] >
1866 R<@> < $* @ localhost.$m >
1869 `R<@> < $* @ localhost.UUCP >
1874 R<@> $* $: $1 no localhost as domain
1878 R<? $=w> $* $: $2 local client: ok
1879 R<? $+> <$+> $#error $@ 5.5.4 $: "_CODE553 Real domain name required for sender address"
1881 R<?> $* $: $1')
1883 R$* $: <?> $>CanonAddr $1 canonify sender address and mark it
1886 R<?> $* < @ $+ . > <?> $1 < @ $2 > strip trailing dots
1888 R<?> $* < @ $* $=P > $: <_RES_OK_> $1 < @ $2 $3 >
1891 R<?> $* < @ $j > $: <_RES_OK_> $1 < @ $j >
1893 `R<?> $* < @ $+ > $: <_RES_OK_> $1 < @ $2 > ... unresolvable OK',
1894 `R<?> $* < @ $+ > $: <? $(resolve $2 $: $2 <PERM> $) > $1 < @ $2 >
1895 R<? $* <$->> $* < @ $+ >
1904 R<$+> $+ < @ $* > $: @<$1> <$2 < @ $3 >> $| <F:$2@$3> <U:$2@> <D:$3>
1905 R<$+> $+ $: @<$1> <$2> $| <U:$2@>
1909 R@ <$+> <$*> $| <$+> $: <@> <$1> <$2> $| $>SearchList <+ From> $| <$3> <>
1911 R<@> <$+> <$*> $| <$*> $: <$3> <$1> <$2> reverse result
1916 R<?> <$+> <$*> $: <$1> $2 no match
1917 R<$+> <$+> <$*> $: <$1> $3 relevant result, keep it', `dnl')
1924 R<?> $* $: $&{daemon_flags} $| <?> $1
1926 R$* u $* $| <?> $* $: <_RES_OK_> $3
1928 R$* $| $* $: $2
1929 R<?> $* $: < ? $&{client_addr} > $1
1930 R<?> $* $@ <_RES_OK_> ...local unqualed ok
1931 R<? $+> $* $#error $@ 5.5.4 $: "_CODE553 Domain name required for sender address " $&f
1934 R<?> $* $: @ $1 mark address: nothing known about it
1935 R<$={ResOk}> $* $: @ $2 domain ok
1936 R<TEMP> $* $#error $@ 4.1.8 $: "451 Domain of sender address " $&f " does not resolve"
1937 R<PERM> $* $#error $@ 5.1.8 $: "_CODE553 Domain of sender address " $&f " does not exist"
1939 R<$={Accept}> $* $# $1 accept from access map
1940 R<DISCARD> $* $#discard $: discard
1941 R<QUARANTINE:$+> $* $#error $@ quarantine $: $1
1942 R<REJECT> $* $#error ifdef(`confREJECT_MSG', `$: confREJECT_MSG', `$@ 5.7.1 $: "550 Access denied"…
1944 R<ERROR:$-.$-.$-:$+> $* $#error $@ $1.$2.$3 $: $4
1945 R<ERROR:$+> $* $#error $: $1
1946 ifdef(`_ATMPF_', `R<_ATMPF_> $* $#error $@ 4.3.0 $: "451 Temporary system failure. Please try agai…
1948 R<$+> $* $#error $: $1 error from access db',
1953 R@ $*<@$+>$* $: $1<@$2>$3 $| $>BadMX $2
1954 R$* $| $#$* $#$2
1959 R$+ $:<MX><$1><:$(mxlist $1$):><:>
1961 R<MX><$+><:$*<TEMP>:><$*> $#error $@ 4.1.2 $: "450 MX lookup failure for "$1
1964 R<MX><$*><:$+:$*><:$*> <MX><$1><:$3><: $4 $(badmx $2 $):>
1966 R<MX><$*><$*><$*<BADMX>:$*> $#error $@ 5.1.2 $:"550 Illegal MX record for host "$1
1968 R<MX><$*><$*><$*> $:<MX><$1><$3><$2>
1969 R<MX><$*><:$+:$*><:$*> <MX><$1><:$3><:$4 $(dnsA $2 $) :>
1972 R<MX><$*><$*><$*> $:<MX><$1><$3><$2>
1973 R<MX><$*><:$+:$*><:$*> <MX><$1><:$3><:$4 $(BadMXIP $2 $) :>
1975 R<MX><$*><$*><$*<BADMXIP>:$*> $#error $@ 5.1.2 $:"550 Invalid MX record for host "$1',
1985 R$* $: $1 $| $>"Local_check_rcpt" $1
1986 R$* $| $#$* $#$2
1987 R$* $| $* $@ $>"Basic_check_rcpt" $1
1991 R<> $#error $@ nouser $: "553 User address required"
1992 R$@ $#error $@ nouser $: "553 User address required"
1994 R$* $: < $&{deliveryMode} > $1
1995 R< d > $* $@ deferred
1996 R< $* > $* $: $2
2007 R$+ $: <?> $1
2008 R<?> <$+> $: <@> <$1>
2009 R<?> $+ $: <@> <$1>
2010 R<@> < postmaster > $: postmaster
2011 R<@> < $* @ $+ . $+ > $: < $1 @ $2 . $3 >
2013 R<@> $* $: $&{daemon_flags} $| <@> $1
2016 R$* r $* $| <@> < $+ @ $+ > $: < $3 @ $4 >
2018 R$* r $* $| <@> < $* > $: < ? $&{client_name} > < $3 >
2019 R<?> < $* > $: <$1>
2020 R<? $=w> < $* > $: <$1>
2021 R<? $+> <$+> $#error $@ 5.5.4 $: "553 Fully qualified domain name required"
2023 R$* $| <@> $* $: $2', `dnl')
2034 R$* $: $1 $| @ $>"Rcpt_ok" $1
2036 R$* $| @ $#TEMP $+ $: $1 $| T $2
2038 R$* $| @ $#$* $#$2
2040 R$* $| @ RELAY $@ RELAY
2042 R$* $| @ $* $: O $| $>"Relay_ok" $1
2044 R$* $| T $+ $: T $2 $| $>"Relay_ok" $1
2046 R$* $| $#TEMP $+ $#error $2
2048 R$* $| $#$* $#$2
2049 R$* $| RELAY $@ RELAY
2051 R T $+ $| $* $#error $1
2053 R$* $#error $@ 5.7.1 $: confRELAY_MSG
2063 R$* $: $>CanonAddr $1
2064 R$* < @ $* . > $1 < @ $2 > strip trailing dots',
2065 `R$* $: $>ParseRecipient $1 strip relayable hosts')
2070 R$* < @ $* > $* $: $1 < @ $2 @@ $(bestmx $2 $) > $3',
2073 R$* < @ $* $=B > $* $: $1 < @ $2 $3 @@ $(bestmx $2 $3 $) > $4')
2074 R$* $=O $* < @ $* @@ $=w . > $* $@ $>"Rcpt_ok" $1 $2 $3
2075 R$* < @ $* @@ $=w . > $* $: $1 < @ $3 > $4
2076 R$* < @ $* @@ $* > $* $: $1 < @ $2 > $4')
2081 R$* $: <?> $1
2084 R<?> $+ < @ $=w > $: <> <$1 < @ $2 >> $| <F:$1@$2> <U:$1@> <D:$2>
2085 R<?> $+ < @ $* > $: <> <$1 < @ $2 >> $| <F:$1@$2> <D:$2>
2086 R<?> $+ $: <> <$1> $| <U:$1@>
2089 R<> <$*> $| <$+> $: <@> <$1> $| $>SearchList <+ To> $| <$2> <>
2090 R<@> <$*> $| <$*> $: <$2> <$1> reverse result
2091 R<?> <$*> $: @ $1 mark address as no match
2096 R<$={Accept}> <$*> $: @ $2 mark address as no match
2098 R<SKIP> <$*> $: @ $1 mark address as no match', `dnl')
2106 R<$={SpamTag}> <$*> $: @ $2 mark address as no match')
2107 R<REJECT> $* $#error $@ 5.2.1 $: confRCPTREJ_MSG
2108 R<DISCARD> $* $#discard $: discard
2109 R<QUARANTINE:$+> $* $#error $@ quarantine $: $1
2111 R<ERROR:$-.$-.$-:$+> $* $#error $@ $1.$2.$3 $: $4
2112 R<ERROR:$+> $* $#error $: $1
2113 ifdef(`_ATMPF_', `R<_ATMPF_> $* $#error $@ 4.3.0 $: "451 Temporary system failure. Please try agai…
2115 R<$+> $* $#error $: $1 error from access db
2116 R@ $* $1 remove mark', `dnl')', `dnl')
2120 R$* $: $1 $| $>RelayTLS client authenticated?
2121 R$* $| $# $+ $# $2 error/ok?
2122 R$* $| $* $: $1 no
2124 R$* $: $1 $| $>"Local_Relay_Auth" $&{auth_type}
2126 R$* $| $# $* $# $2
2128 R$* $| NO $: $1
2129 R$* $| $* $: $1 $| $&{auth_type}
2132 R$* $| $: $1
2135 R$* $| $={TrustAuthMech} $# RELAY
2137 R$* $| $* $: $1
2140 `R$* ! $* < @ $* > $: <REMOTE> $2 < @ BANG_PATH >
2141 R$* ! $* $: <REMOTE> $2 < @ BANG_PATH >', `dnl')
2144 R$+ < @ $* $=m > $@ RELAY', `dnl')
2145 R$+ < @ $=w > $@ RELAY
2147 `R$+ < @ $=R > $@ RELAY
2150 R$+ < @ $+ > $: <$(access To:$1@$2 $: ? $)> <$1 < @ $2 >>
2151 R<?> <$+ < @ $+ >> $: <$(access To:$2 $: ? $)> <$1 < @ $2 >>',`
2152 R$+ < @ $+ > $: <$(access To:$2 $: ? $)> <$1 < @ $2 >>')
2154 R<?> <$+ < @ $+ >> $: <$(access $2 $: ? $)> <$1 < @ $2 >>',`dnl')',
2155 `R$+ < @ $* $=R > $@ RELAY
2158 R$+ < @ $+ > $: $1 < @ $2 > $| $>SearchList <+ To> $| <F:$1@$2> <D:$2> <F:$1@> <>
2159 R$+ < @ $+ > $| <$*> $: <$3> <$1 <@ $2>>
2160 R$+ < @ $+ > $| $* $: <$3> <$1 <@ $2>>',
2161 `R$+ < @ $+ > $: $>D <$2> <?> <+ To> <$1 < @ $2 >>')')')
2164 R<RELAY> $* $@ RELAY
2165 ifdef(`_ATMPF_', `R<$* _ATMPF_> $* $#TEMP $@ 4.3.0 $: "451 Temporary system failure. Please try ag…
2166 R<$*> <$*> $: $2',`dnl')
2171 R$+ < @ $+ > $: < : $(mxserved $2 $) : > $1 < @ $2 >
2173 R< : $* <TEMP> : > $* $#TEMP $@ 4.4.0 $: "450 Can not check MX records for recipient host " $1
2174 R<$* : $=w . : $*> $* $@ RELAY
2175 R< : $* : > $* $: $2',
2179 R$* $: <?> $1
2180 R<?> $* < @ $+ > $: <REMOTE> $1 < @ $2 >
2187 R<?> postmaster $@ OK
2190 R<?> $+ $: $&{daemon_flags} $| <?> $1
2194 R$* r $* $| <?> $+ $: < ? $&{client_name} > <?> $3
2197 R$* $| <?> $+ $@ RELAY
2199 R<?> <?> $+ $@ RELAY
2201 R<? $=w> <?> $+ $@ RELAY
2203 R<? $+> $+ $#error $@ 5.5.4 $: "553 Domain name required"', `dnl
2205 R<?> $+ $@ RELAY')
2207 R<$+> $* $: $2
2218 R$* $: $&{client_addr}
2219 R$@ $@ RELAY originated locally
2223 R$=R $* $@ RELAY relayable IP address
2225 R$* $: $>A <$1> <?> <+ Connect> <$1>
2226 R<RELAY> $* $@ RELAY relayable IP address
2232 R<REJECT> $* $@ REJECT rejected IP address')
2233 ifdef(`_ATMPF_', `R<_ATMPF_> $* $#TEMP $@ 4.3.0 $: "451 Temporary system failure. Please try again…
2234 R<$*> <$*> $: $2', `dnl')
2235 R$* $: [ $1 ] put brackets around it...
2236 R$=w $@ RELAY ... and see if it is local
2244 R$* $: <?> $>CanonAddr $&f
2245 R<?> $+ < @ $+ . > <?> $1 < @ $2 > remove trailing dot
2248 R<?> $+ < @ $=w > $@ RELAY FROM local', `dnl')
2250 R<?> $+ < @ $+ > $: <@> $>SearchList <! From> $| <F:$1@$2> ifdef(`_RELAY_DB_FROM_DOMAIN_', ifdef(`_…
2251 R<@> <RELAY> $@ RELAY RELAY FROM sender ok
2252 ifdef(`_ATMPF_', `R<@> <_ATMPF_> $#TEMP $@ 4.3.0 $: "451 Temporary system failure. Please try agai…
2265 R$* $: < $&{client_resolve} >
2266 R<TEMP> $#TEMP $@ 4.4.0 $: "450 Relaying temporarily denied. Cannot resolve PTR record for " $&{c…
2267 R<FORGED> $#error $@ 5.7.1 $: "550 Relaying denied. IP name possibly forged " $&{client_name}
2268 R<FAIL> $#error $@ 5.7.1 $: "550 Relaying denied. IP name lookup failed " $&{client_name}
2270 R$* $: <@> $&{client_name}
2276 dnl R<@> $@ RELAY
2279 R<@> $* $=P $:<?> $1 $2
2280 R<@> $+ $:<?> $[ $1 $]
2282 R$* . $1 strip trailing dots
2284 R<?> $* $=m $@ RELAY', `dnl')
2285 R<?> $=w $@ RELAY
2287 `R<?> $=R $@ RELAY
2289 R<?> $* $: <$(access Connect:$1 $: ? $)> <$1>
2290 R<?> <$*> $: <$(access $1 $: ? $)> <$1>',`dnl')',
2291 `R<?> $* $=R $@ RELAY
2293 R<?> $* $: $>D <$1> <?> <+ Connect> <$1>',`dnl')')
2295 R<RELAY> $* $@ RELAY
2296 ifdef(`_ATMPF_', `R<$* _ATMPF_> $* $#TEMP $@ 4.3.0 $: "451 Temporary system failure. Please try ag…
2297 R<$*> <$*> $: $2',`dnl')
2305 R$* <@ $+ . > $1 <@ $2 >
2306 R$* <@ $* > $@ $1 <@ $2 >
2307 R$+ $@ $1 <@ $j >
2313 R$* $: $1 $| $>"tls_client" $&{verify} $| MAIL
2314 R$* $| $#$+ $#$2
2316 R$* $| $* $# $1
2317 R$* $# $1
2323 R$* $: $1 $| $>"tls_client" $&{verify} $| MAIL
2324 R$* $| $#$+ $#$2
2326 R$* $| $* $@ $1
2327 R$* $@ $1
2333 # R$@ $#error $@ 5.1.3 $: "553 Recipient address required"
2335 R$+ $: $1 $| $>checkrcpt $1
2338 R$+ $| $#error $* $#error $2
2339 R$+ $| $#discard $* $#discard $2
2341 R$+ $| $#$* $@ $>"Delay_TLS_Clt" $2
2342 R$+ $| $* $: <?> $>FullAddr $>CanonAddr $1
2351 R<?> $+ < @ $=w > $: <> $1 < @ $2 > $| <F: $1@$2 > <D: $2 > <U: $1@>
2352 R<?> $+ < @ $* > $: <> $1 < @ $2 > $| <F: $1@$2 > <D: $2 >
2353 dnl R<?> $@ something_is_very_wrong_here
2355 R<> $* $| <$+> $: <@> $1 $| $>SearchList <! Spam> $| <$2> <>
2356 R<@> $* $| $* $: $2 $1 reverse result
2363 R<FRIEND> $+ $@ $>"Delay_TLS_Clt2" SPAMFRIEND
2364 R<$*> $+ $: $2',
2368 R<HATER> $+ $: $1 spam hater: continue checks
2369 R<$*> $+ $@ $>"Delay_TLS_Clt2" NOSPAMHATER everyone else: stop
2375 `R$* $: $1 $| $>checkmail $&{mail_from}',
2376 `R$* $: $1 $| $>checkmail <$&f>')
2378 R$* $| $#$* $#$2
2380 R$* $| $* $: $1 $| $>checkrelay $&{client_name} $| $&{client_addr}
2381 R$* $| $#$* $#$2
2382 R$* $| $* $: $1
2386 R$* $: $1 $| <$&{auth_authen}> Get auth info
2388 R$* $| <$+> $: $1 skip if auth
2389 R$* $| <$*> $: $1 $| <$&{client_addr}> [$&s] Get connection info
2390 dnl Bypass for local clients -- IP address starts with $=R
2391 R$* $| <$=R $*> [$*] $: $1 skip if local client
2393 R$* $| <0> [$*] $: $1 skip if sendmail -bs
2395 R$* $| <$*> $=w $#error $@ 5.7.1 $:"550 bogus HELO name used: " $&s
2397 R$* $| <$*> [$=w] $#error $@ 5.7.1 $:"550 bogus HELO name used: " $&s
2399 R$* $| <$*> [$+.$+] $: $1 qualified domain ok
2401 R$* $| <$*> [$*] $#error $@ 5.7.1 $:"550 bogus HELO name used: " $&s
2403 R$* $| $* $: $1
2429 R<$+> <$*> <$- $-> <$*> $: <$(access $4`'_TAG_DELIM_`'$1 $: ? $)> <$1> <$2> <$3 $4> <$5>
2432 R<?> <$+> <$*> <+ $-> <$*> $: <$(access $1 $: ? $)> <$1> <$2> <+ $3> <$4>
2435 R<?> <$+ + $* @ $+> <$*> <$- $-> <$*>
2439 R<?> <$+ + $* @ $+> <$*> <+ $-> <$*>
2443 R<?> <$+ + $* @ $+> <$*> <$- $-> <$*>
2447 R<?> <$+ + $* @ $+> <$*> <+ $-> <$*>
2451 R<?> <$+> <$*> <$- $-> <$*> $@ <$2> <$5>
2454 R<$+ _ATMPF_> <$*> <$- $-> <$*> $@ <_ATMPF_> <$5>', `dnl')
2457 R<$+> <$*> <$- $-> <$*> $@ <$1> <$5>
2476 R<$*> <$*> <$- $-> <$*> $: <$(access $4`'_TAG_DELIM_`'$1 $: ? $)> <$1> <$2> <$3 $4> <$5>
2479 R<?> <$+> <$*> <+ $-> <$*> $: <$(access $1 $: ? $)> <$1> <$2> <+ $3> <$4>
2482 R<?> <$+> <$*> <$- $-> <$*> $@ <$2> <$5>
2485 R<$+ _ATMPF_> <$*> <$- $-> <$*> $@ <_ATMPF_> <$5>', `dnl')
2488 R<$+> <$*> <$- $-> <$*> $@ <$1> <$5>
2511 R<$+> <$*> <$- $-> <$*> $: <$(access $4`'_TAG_DELIM_`'$1 $: ? $)> <$1> <$2> <$3 $4> <$5>
2514 R<?> <$+> <$*> <+ $-> <$*> $: <$(access $1 $: ? $)> <$1> <$2> <+ $3> <$4>
2519 R<?> <$+ + $* @> <$*> <$- $-> <$*>
2523 R<?> <$+ + $* @> <$*> <+ $-> <$*>
2527 R<?> <$+ + $* @> <$*> <$- $-> <$*>
2531 R<?> <$+ + $* @> <$*> <+ $-> <$*>
2535 R<?> <$+> <$*> <$- $-> <$*> $@ <$2> <$5>
2538 R<$+ _ATMPF_> <$*> <$- $-> <$*> $@ <_ATMPF_> <$5>', `dnl')
2541 R<$+> <$*> <$- $-> <$*> $@ <$1> <$5>
2575 R<$+> $| <$={Src}:$*> <$*> $: <$1> $| <$4> $| $>$2 <$3> <?> <$1> <>
2578 R<$+> $| <> $| <?> <> $@ <?>
2580 R<$+> $| <$+> $| <?> <> $@ $>SearchList <$1> $| <$2>
2582 R<$+> $| <$*> $| <$+> <> $@ <$3>
2584 R<$+> $| <$+> $@ <$2>
2598 R$* $: $&{auth_type} $| $1
2600 R$@ $| $* $#error $@ 5.7.1 $: "550 not authenticated"
2602 R$* $| $&{auth_authen} $@ identical
2603 R$* $| <$&{auth_authen}> $@ identical
2605 R$* $| $* $: $1 $| $>"Local_trust_auth" $2
2606 R$* $| $#$* $#$2
2608 R$* $#error $@ 5.7.1 $: "550 " $&{auth_authen} " not allowed to act as " $&{auth_author}
2624 R$* $: $1 $| $>"Local_srv_features" $1
2625 R$* $| $#$* $#$2
2626 R$* $| $* $: $1', `dnl')
2628 R$* $: $>D <$&{client_name}> <?> <! SRV_FEAT_TAG> <>
2629 R<?>$* $: $>A <$&{client_addr}> <?> <! SRV_FEAT_TAG> <>
2630 R<?>$* $: <$(access SRV_FEAT_TAG`'_TAG_DELIM_ $: ? $)>
2631 R<?>$* $@ OK
2633 R<$* _ATMPF_>$* $#temp', `dnl')
2634 R<$+>$* $# $1')
2642 R$* $: $1 $| $>"Local_try_tls" $1
2643 R$* $| $#$* $#$2
2644 R$* $| $* $: $1', `dnl')
2646 R$* $: $>D <$&{server_name}> <?> <! TLS_TRY_TAG> <>
2647 R<?>$* $: $>A <$&{server_addr}> <?> <! TLS_TRY_TAG> <>
2648 R<?>$* $: <$(access TLS_TRY_TAG`'_TAG_DELIM_ $: ? $)>
2649 R<?>$* $@ OK
2651 R<$* _ATMPF_>$* $#error $@ 4.3.0 $: "451 Temporary system failure. Please try again later."', `dnl')
2652 R<NO>$* $#error $@ 5.7.1 $: "550 do not try TLS with " $&{server_name} " ["$&{server_addr}"]"')
2664 R$* $: $1 $| $>"Local_tls_rcpt" $1
2665 R$* $| $#$* $#$2
2666 R$* $| $* $: $1', `dnl')
2669 R$* $: $(macro {TLS_Name} $@ $&{server_name} $) $1
2671 R$+ $: <?> $>CanonAddr $1
2673 R<?> $+ < @ $+ . > <?> $1 <@ $2 >
2675 R<?> $+ < @ $+ > $: $1 <@ $2 > $| <F:$1@$2> <U:$1@> <D:$2> <E:>
2677 R<?> $+ $: $1 $| <U:$1@> <E:>
2680 R$* $| $+ $: $1 $| $>SearchList <! TLS_RCPT_TAG> $| $2 <>
2682 R$* $| <?> $@ OK
2684 R$* $| <$* _ATMPF_> $#error $@ 4.3.0 $: "451 Temporary system failure. Please try again later."', `…
2686 R$* $| <$+> $@ $>"TLS_connection" $&{verify} $| <$2>')
2699 R$* $: $1 <?> $>"Local_tls_client" $1
2700 R$* <?> $#$* $#$2
2701 R$* <?> $* $: $1', `dnl')
2704 R$* $: $(macro {TLS_Name} $@ $&{client_name} $) $1
2709 R$* $| $* $: $1 $| $>D <$&{client_name}> <?> <! TLS_CLT_TAG> <>
2710 R$* $| <?>$* $: $1 $| $>A <$&{client_addr}> <?> <! TLS_CLT_TAG> <>
2712 R$* $| <?>$* $: $1 $| <$(access TLS_CLT_TAG`'_TAG_DELIM_ $: ? $)>
2714 R$* $| <$* _ATMPF_> $#error $@ 4.3.0 $: "451 Temporary system failure. Please try again later."', `…
2715 R$* $@ $>"TLS_connection" $1', `dnl
2716 R$* $| $* $@ $>"TLS_connection" $1')
2729 R$* $: $1 $| $>"Local_tls_server" $1
2730 R$* $| $#$* $#$2
2731 R$* $| $* $: $1', `dnl')
2734 R$* $: $(macro {TLS_Name} $@ $&{server_name} $) $1
2735 R$* $: $1 $| $>D <$&{server_name}> <?> <! TLS_SRV_TAG> <>
2736 R$* $| <?>$* $: $1 $| $>A <$&{server_addr}> <?> <! TLS_SRV_TAG> <>
2738 R$* $| <?>$* $: $1 $| <$(access TLS_SRV_TAG`'_TAG_DELIM_ $: ? $)>
2740 R$* $| <$* _ATMPF_> $#error $@ 4.3.0 $: "451 Temporary system failure. Please try again later."', `…
2741 R$* $@ $>"TLS_connection" $1', `dnl
2742 R$* $@ $>"TLS_connection" $1')
2765 R$* $| <$*>$* $: $1 $| <$2>
2769 R$* $| <PERM + $={Tls} $*> $: $1 $| <503:5.7.0> <$2 $3>
2770 R$* $| <TEMP + $={Tls} $*> $: $1 $| <403:4.7.0> <$2 $3>
2772 R$* $| <$={Tls} $*> $: $1 $| <ifdef(`TLS_PERM_ERR', `503:5.7.0', `403:4.7.0')> <$2 $3>
2784 R$* $| <$*> <VERIFY> $: <$2> <VERIFY> <> $1
2786 R$* $| <$*> <VERIFY + $+> $: <$2> <VERIFY> <$3> $1
2787 R$* $| <$*> <$={Tls}:$->$* $: <$2> <$3:$4> <> $1
2789 R$* $| <$*> <$={Tls}:$- + $+>$* $: <$2> <$3:$4> <$5> $1
2792 R$* $| $* $@ OK
2797 R<$*><VERIFY> <> OK $@ OK
2800 R<$*><VERIFY> <$+> OK $: <$1> <REQ:0> <$2>
2802 R<$*><VERIFY:$-> <$*> OK $: <$1> <REQ:$2> <$3>
2804 R<$*><ENCR:$-> <$*> $* $: <$1> <REQ:$2> <$3>
2809 R<$-:$+><VERIFY $*> <$*> $#error $@ $2 $: $1 " authentication required"
2810 R<$-:$+><VERIFY $*> <$*> FAIL $#error $@ $2 $: $1 " authentication failed"
2811 R<$-:$+><VERIFY $*> <$*> NO $#error $@ $2 $: $1 " not authenticated"
2812 R<$-:$+><VERIFY $*> <$*> NOT $#error $@ $2 $: $1 " no authentication requested"
2813 R<$-:$+><VERIFY $*> <$*> NONE $#error $@ $2 $: $1 " other side does not support STARTTLS"
2815 R<$-:$+><VERIFY $*> <$*> $+ $#error $@ $2 $: $1 " authentication failure " $4
2817 R<$*><REQ:$-> <$*> $: <$1> <REQ:$2> <$3> $>max $&{cipher_bits} : $&{auth_ssf}
2819 R<$*><REQ:$-> <$*> $- $: <$1> <$2:$4> <$3> $(arith l $@ $4 $@ $2 $)
2820 R<$-:$+><$-:$-> <$*> TRUE $#error $@ $2 $: $1 " encryption too weak " $4 " less than " $3
2829 R<$-:$+><$-:$-> <$*> $* $: <$1:$2 _TLS_ARS_ $5>
2832 R<$-:$+ _TLS_ARS_ > $@ OK
2834 R<$-:$+ _TLS_ARS_ $+ > $: <$1:$2> <$3>
2835 R<$-:$+> < $+ _TLS_ARS_ $+ > <$1:$2> <$3> <$4>
2836 R<$-:$+> $+ $@ $>"TLS_req" $3 $| <$1:$2>
2856 R $| $+ $@ OK
2858 R<CN> $* $| <$+> $: <CN:$&{TLS_Name}> $1 $| <$2>
2860 R<CN:$&{cn_subject}> $* $| <$+> $@ $>"TLS_req" $1 $| <$2>
2863 R<CN:$+> $* $| <$-:$+> $#error $@ $4 $: $3 " CN " $&{cn_subject} " does not match " $1
2865 R<CS:$&{cert_subject}> $* $| <$+> $@ $>"TLS_req" $1 $| <$2>
2868 R<CS:$+> $* $| <$-:$+> $#error $@ $4 $: $3 " Cert Subject " $&{cert_subject} " does not match " $1
2870 R<CI:$&{cert_issuer}> $* $| <$+> $@ $>"TLS_req" $1 $| <$2>
2873 R<CI:$+> $* $| <$-:$+> $#error $@ $4 $: $3 " Cert Issuer " $&{cert_issuer} " does not match " $1
2883 R: $: 0
2884 R:$- $: $1
2885 R$-: $: $1
2886 R$-:$- $: $(arith l $@ $1 $@ $2 $) : $1 : $2
2888 R$-:$-:$- $: $2
2912 R$* $: <?> $&{verify}
2913 R<?> OK $: OK authenticated: continue
2914 R<?> $* $@ NO not authenticated
2916 R$* $: $(CERTIssuer $&{cert_issuer} $)',
2917 `R$* $: $&{cert_issuer}')
2918 R$+ $: $(access CERTISSUER`'_TAG_DELIM_`'$1 $)
2924 R<@> $+ $: <@> $(access CERTSUBJECT`'_TAG_DELIM_`'$1 $)
2925 R<@> RELAY $# RELAY
2926 R$* $: NO', `dnl')
2944 R$* $: <$(authinfo AuthInfo:$&{server_name} $: ? $)>
2945 R<?> $: <$(authinfo AuthInfo:$&{server_addr} $: ? $)>
2946 R<?> $: <$(authinfo AuthInfo: $: ? $)>
2947 R<?> $@ no no authinfo available
2948 R<$*> $# $1
2951 R$* $: $1 $| $>D <$&{server_name}> <?> <! AuthInfo> <>
2952 R$* $| <?>$* $: $1 $| $>A <$&{server_addr}> <?> <! AuthInfo> <>
2953 R$* $| <?>$* $: $1 $| <$(access AuthInfo`'_TAG_DELIM_ $: ? $)> <>
2954 R$* $| <?>$* $@ no no authinfo available
2955 R$* $| <$*> <> $# $2
2966 R$* $: <A:$&{client_addr}> <E:>
2968 R$+ $: $>SearchList <! ClientRate> $| $1 <>
2970 R<?> $@ OK
2972 R<$* _ATMPF_> $#error $@ 4.3.0 $: "451 Temporary system failure. Please try again later."', `dnl')
2974 R<0> $@ OK no limit
2975 R<$+> $: <$1> $| $(arith l $@ $1 $@ $&{client_rate} $)
2977 R<$+> $| TRUE $#error $@ 4.3.2 $: _RATE_CONTROL_REPLY Connection rate limit exceeded.
2988 R$* $: <A:$&{client_addr}> <E:>
2990 R$+ $: $>SearchList <! ClientConn> $| $1 <>
2992 R<?> $@ OK
2994 R<$* _ATMPF_> $#error $@ 4.3.0 $: "451 Temporary system failure. Please try again later."', `dnl')
2996 R<0> $@ OK no limit
2997 R<$+> $: <$1> $| $(arith l $@ $1 $@ $&{client_connections} $)
2999 R<$+> $| TRUE $#error $@ 4.3.2 $: _CONN_CONTROL_REPLY Too many open connections.