From 30e5ecc749b0dfb6f042838693feb42341c30413 Mon Sep 17 00:00:00 2001 From: peter Date: Fri, 27 Jun 1997 14:53:01 +0000 Subject: Import sendmail-8.8.6 Obtained from: ftp.sendmail.org --- usr.sbin/sendmail/cf/README | 91 ++++++++++++++++--------- usr.sbin/sendmail/cf/cf/cs-hpux10.mc | 4 +- usr.sbin/sendmail/cf/cf/cs-hpux9.mc | 4 +- usr.sbin/sendmail/cf/cf/cs-osf1.mc | 4 +- usr.sbin/sendmail/cf/cf/cs-solaris2.mc | 4 +- usr.sbin/sendmail/cf/cf/cs-sunos4.1.mc | 4 +- usr.sbin/sendmail/cf/cf/cs-ultrix4.mc | 4 +- usr.sbin/sendmail/cf/cf/knecht.mc | 45 +++++++++++- usr.sbin/sendmail/cf/cf/s2k-osf1.mc | 4 +- usr.sbin/sendmail/cf/cf/s2k-ultrix4.mc | 4 +- usr.sbin/sendmail/cf/feature/bestmx_is_local.m4 | 4 +- usr.sbin/sendmail/cf/m4/nullrelay.m4 | 5 +- usr.sbin/sendmail/cf/m4/proto.m4 | 61 ++++++++++------- usr.sbin/sendmail/cf/m4/version.m4 | 4 +- usr.sbin/sendmail/cf/mailer/mail11.m4 | 5 +- usr.sbin/sendmail/cf/mailer/procmail.m4 | 8 +-- usr.sbin/sendmail/cf/mailer/uucp.m4 | 6 +- usr.sbin/sendmail/cf/ostype/gnuhurd.m4 | 41 +++++++++++ usr.sbin/sendmail/cf/ostype/irix6.m4 | 61 +++++++++++++++++ 19 files changed, 273 insertions(+), 90 deletions(-) create mode 100644 usr.sbin/sendmail/cf/ostype/gnuhurd.m4 create mode 100644 usr.sbin/sendmail/cf/ostype/irix6.m4 (limited to 'usr.sbin/sendmail/cf') diff --git a/usr.sbin/sendmail/cf/README b/usr.sbin/sendmail/cf/README index 6ea2998..a41ea37 100644 --- a/usr.sbin/sendmail/cf/README +++ b/usr.sbin/sendmail/cf/README @@ -4,7 +4,7 @@ Eric Allman - @(#)README 8.111 (Berkeley) 1/16/97 + @(#)README 8.120 (Berkeley) 6/14/97 This document describes the sendmail configuration files being used @@ -34,7 +34,8 @@ SunOS's /usr/5bin/m4 or BSD-Net/2's m4 both work. GNU m4 version 1.1 or later also works. Unfortunately, I'm told that the M4 on BSDI 1.0 doesn't work -- you'll have to use a Net/2 or GNU version. GNU m4 is available from ftp://prep.ai.mit.edu/pub/gnu/m4-1.4.tar.gz (check for -the latest version). +the latest version). EXCEPTIONS: DEC's m4 on Digital UNIX 4.x is broken +(3.x is fine). Use GNU m4 on this platform. IF YOU DON'T HAVE A BERKELEY MAKE, don't despair! Just run "m4 ../m4/cf.m4 foo.mc > foo.cf" -- that should be all you need. @@ -120,7 +121,7 @@ Let's examine a typical .mc file: # # This is a Berkeley-specific configuration file for HP-UX 9.x. - # It applies only the the Computer Science Division at Berkeley, + # It applies only to the Computer Science Division at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -306,11 +307,11 @@ POP_MAILER_FLAGS [Penu] Flags added to POP mailer. Flags "lsDFM" POP_MAILER_ARGS [pop $u] The arguments passed to the POP mailer. PROCMAIL_MAILER_PATH [/usr/local/bin/procmail] The path to the procmail program. This is also used by FEATURE(local_procmail). -PROCMAIL_MAILER_FLAGS [Shu] Flags added to Procmail mailer. Flags - ``DFMmn'' are always set. This is NOT used by +PROCMAIL_MAILER_FLAGS [SPhnu9] Flags added to Procmail mailer. Flags + ``DFM'' are always set. This is NOT used by FEATURE(local_procmail); tweak LOCAL_MAILER_FLAGS instead. -PROCMAIL_MAILER_ARGS [procmail -m $h $f $u] The arguments passed to +PROCMAIL_MAILER_ARGS [procmail -Y -m $h $f $u] The arguments passed to the Procmail mailer. This is NOT used by FEATURE(local_procmail); tweak LOCAL_MAILER_ARGS instead. @@ -656,7 +657,10 @@ genericstable This feature will cause certain addresses originating in the The key for this table is either the full address or the unqualified username (the former is tried first); the value is the new user address. If the new user address does - not include a domain, $j is used. + not include a domain, $j is used. Note that the address must + being looked up must be fully qualified. For local mail, it + is necessary to use FEATURE(always_add_domain) for the + addresses to be qualified. virtusertable A domain-specific form of aliasing, allowing multiple virtual domains to be hosted on one machine. For example, @@ -669,18 +673,28 @@ virtusertable A domain-specific form of aliasing, allowing multiple then mail addressed to info@foo.com will be sent to the address foo-info, mail addressed to info@bar.com will be delivered to bar-info, and mail addressed to anyone at - baz.org will be sent to jane@elsewhere.net. All the host - names on the left hand side (foo.com, bar.com, and baz.org) - must be in $=w. The default map definition is: + baz.org will be sent to jane@elsewhere.net. The username + from the original address is passed as %1 allowing: + + @foo.org %1@elsewhere.com + + meaning someone@foo.org will be sent to someone@elsewhere.com. + + All the host names on the left hand side (foo.com, bar.com, + and baz.org) must be in $=w. The default map definition is: hash -o /etc/virtusertable A new definition can be specified as the second argument of - the FEATURE macro. + the FEATURE macro, such as + + FEATURE(virtusertable, dbm -o /etc/mail/virtusers) nodns We aren't running DNS at our site (for example, we are UUCP-only connected). It's hard to consider this a "feature", but hey, it had to go somewhere. + Actually, as of 8.7 this is a no-op -- remove "dns" from + the hosts service switch entry instead. nullclient This is a special case -- it creates a stripped down configuration file containing nothing but support for @@ -1062,6 +1076,23 @@ specified with a terminal dot: note the trailing dot ---^ ++--------------------------------+ +| ADDING NEW MAILERS OR RULESETS | ++--------------------------------+ + +Sometimes you may need to add entirely new mailers or rulesets. They +should be introduced with the constructs MAILER_DEFINITIONS and +LOCAL_RULESETS respectively. For example: + + MAILER_DEFINITIONS + Mmymailer, ... + ... + + LOCAL_RULESETS + Scheck_relay + ... + + +-------------------------------+ | NON-SMTP BASED CONFIGURATIONS | +-------------------------------+ @@ -1102,10 +1133,6 @@ use: That is, send directly only to things you found in your DNS lookup; anything else goes through SMART_HOST. -If you are not running DNS at all, it is important to use -FEATURE(nodns) to avoid having sendmail queue everything waiting -for the name server to come up. - +-----------+ | WHO AM I? | @@ -1522,11 +1549,19 @@ confHOST_STATUS_DIRECTORY HostStatusDirectory named directory tree. This need not be a full pathname, in which case it is interpreted relative to the queue - directory. This option also - single-threads connections to each - host, i.e., prevents multiple - connections to a single server from - this client. + directory. +confSINGLE_THREAD_DELIVERY SingleThreadDelivery + [False] If this option and the + HostStatusDirectory option are both + set, single thread deliveries to other + hosts. That is, don't allow any two + sendmails on this host to connect + simultaneously to any other single + host. This can slow down delivery in + some cases, in particular since a + cached but otherwise idle connection + to a host will prevent other sendmails + from connecting to the other host. confUSE_ERRORS_TO* UserErrorsTo [False] Use the Errors-To: header to deliver error messages. This should not be necessary because of general @@ -1669,7 +1704,7 @@ confSEPARATE_PROC ForkEachJob [False] Run all deliveries in a separate confWORK_CLASS_FACTOR ClassFactor [1800] Priority multiplier for class. confWORK_TIME_FACTOR RetryFactor [90000] Cost of each delivery attempt. confQUEUE_SORT_ORDER QueueSortOrder [Priority] Queue sort algorithm: - Priority or Host. + Priority, Host, or Time. confMIN_QUEUE_AGE MinQueueAge [0] The minimum amount of time a job must sit in the queue between queue runs. This allows you to set the @@ -1782,18 +1817,6 @@ confRUN_AS_USER RunAsUser [undefined] If set, become this user files will be written as this user. Intended for use only on firewalls where users do not have accounts. -confSINGLE_THREAD_DELIVERY SingleThreadDelivery - [False] If this option and the - HostStatusDirectory option are both - set, single thread deliveries to other - hosts. That is, don't allow any two - sendmails on this host to connect - simultaneously to any other single - host. This can slow down delivery in - some cases, in particular since a - cached but otherwise idle connection - to a host will prevent other sendmails - from connecting to the other host. See also the description of OSTYPE for some parameters that can be tweaked (generally pathnames to mailers). @@ -1935,7 +1958,7 @@ CLASSES O operators that indicate network operations (cannot be in local names) P top level pseudo-domains: BITNET, DECNET, FAX, UUCP, etc. Q - R + R domains we are willing to relay (pass anti-spam filters) S T U locally connected UUCP hosts diff --git a/usr.sbin/sendmail/cf/cf/cs-hpux10.mc b/usr.sbin/sendmail/cf/cf/cs-hpux10.mc index 61155d3..898f360 100644 --- a/usr.sbin/sendmail/cf/cf/cs-hpux10.mc +++ b/usr.sbin/sendmail/cf/cf/cs-hpux10.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for HP-UX 9.x. -# It applies only the the Computer Science Division at Berkeley, +# It applies only to the Computer Science Division at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)cs-hpux10.mc 8.4 (Berkeley) 3/23/96') +VERSIONID(`@(#)cs-hpux10.mc 8.5 (Berkeley) 6/3/97') OSTYPE(hpux10)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl diff --git a/usr.sbin/sendmail/cf/cf/cs-hpux9.mc b/usr.sbin/sendmail/cf/cf/cs-hpux9.mc index e9e0af8..96ff7c8 100644 --- a/usr.sbin/sendmail/cf/cf/cs-hpux9.mc +++ b/usr.sbin/sendmail/cf/cf/cs-hpux9.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for HP-UX 9.x. -# It applies only the the Computer Science Division at Berkeley, +# It applies only to the Computer Science Division at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)cs-hpux9.mc 8.5 (Berkeley) 3/23/96') +VERSIONID(`@(#)cs-hpux9.mc 8.6 (Berkeley) 6/3/97') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl diff --git a/usr.sbin/sendmail/cf/cf/cs-osf1.mc b/usr.sbin/sendmail/cf/cf/cs-osf1.mc index f61b656..95bb7f2 100644 --- a/usr.sbin/sendmail/cf/cf/cs-osf1.mc +++ b/usr.sbin/sendmail/cf/cf/cs-osf1.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for OSF/1. -# It applies only the the Computer Science Division at Berkeley, +# It applies only to the Computer Science Division at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)cs-osf1.mc 8.4 (Berkeley) 3/23/96') +VERSIONID(`@(#)cs-osf1.mc 8.5 (Berkeley) 6/3/97') OSTYPE(osf1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/usr.sbin/sendmail/cf/cf/cs-solaris2.mc b/usr.sbin/sendmail/cf/cf/cs-solaris2.mc index ae8f420..515dd12 100644 --- a/usr.sbin/sendmail/cf/cf/cs-solaris2.mc +++ b/usr.sbin/sendmail/cf/cf/cs-solaris2.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for Solaris 2.x. -# It applies only the the Computer Science Division at Berkeley, +# It applies only to the Computer Science Division at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)cs-solaris2.mc 8.3 (Berkeley) 3/23/96') +VERSIONID(`@(#)cs-solaris2.mc 8.4 (Berkeley) 6/3/97') OSTYPE(solaris2)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/usr.sbin/sendmail/cf/cf/cs-sunos4.1.mc b/usr.sbin/sendmail/cf/cf/cs-sunos4.1.mc index 754de46..70f134f 100644 --- a/usr.sbin/sendmail/cf/cf/cs-sunos4.1.mc +++ b/usr.sbin/sendmail/cf/cf/cs-sunos4.1.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for SunOS 4.1.x. -# It applies only the the Computer Science Division at Berkeley, +# It applies only to the Computer Science Division at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)cs-sunos4.1.mc 8.4 (Berkeley) 3/23/96') +VERSIONID(`@(#)cs-sunos4.1.mc 8.5 (Berkeley) 6/3/97') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/usr.sbin/sendmail/cf/cf/cs-ultrix4.mc b/usr.sbin/sendmail/cf/cf/cs-ultrix4.mc index 72735fc..8888be7 100644 --- a/usr.sbin/sendmail/cf/cf/cs-ultrix4.mc +++ b/usr.sbin/sendmail/cf/cf/cs-ultrix4.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for Ultrix 4.x. -# It applies only the the Computer Science Division at Berkeley, +# It applies only to the Computer Science Division at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)cs-ultrix4.mc 8.4 (Berkeley) 3/23/96') +VERSIONID(`@(#)cs-ultrix4.mc 8.5 (Berkeley) 6/3/97') OSTYPE(ultrix4)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/usr.sbin/sendmail/cf/cf/knecht.mc b/usr.sbin/sendmail/cf/cf/knecht.mc index f7d57e3..648b970 100644 --- a/usr.sbin/sendmail/cf/cf/knecht.mc +++ b/usr.sbin/sendmail/cf/cf/knecht.mc @@ -38,7 +38,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)knecht.mc 8.4 (Berkeley) 11/24/96') +VERSIONID(`@(#)knecht.mc 8.11 (Berkeley) 6/12/97') OSTYPE(bsd4.4)dnl DOMAIN(generic)dnl define(`confDEF_USER_ID', `mailnull')dnl @@ -46,6 +46,49 @@ define(`confHOST_STATUS_DIRECTORY', `.hoststat')dnl define(`confTO_ICONNECT', `10s')dnl define(`confCOPY_ERRORS_TO', `Postmaster')dnl define(`confTO_QUEUEWARN', `8h')dnl +define(`confPRIVACY_FLAGS', ``authwarnings,noexpn,novrfy'')dnl FEATURE(virtusertable)dnl MAILER(local)dnl MAILER(smtp)dnl + +LOCAL_CONFIG +# domains that are not us but which we will relay +FR-o /etc/sendmail.cR + +# domain override table to accept unresolvable/reject resolvable domains +Kdomaincheck hash -o /etc/domaincheck + + +LOCAL_RULESETS + +# reject bogus return addresses +Scheck_mail +R<> $@ +R$* $: $>Parse0 $>3 $1 make domain canonical +R $* < @ $+ . > $* $: < $( domaincheck $2 $: OK $) > $1 < @ $2 . > $3 + tag resolved names +R $* < @ $+ > $* $: < $( domaincheck $2 $: ? $) > $1 < @ $2 > $3 + check for overrides +R $* $@ +R $* < @ $+ > $* $#error $: 451 Sender domain must resolve +R $* $: < ? $&{client_name} > $1 no @domain on address... +R $* $@ ...local unqualed ok +R $* $#error $: 551 Domain name required + ...remote is not +R<$+> $* $#error $: $1 error from domaincheck + +# disallow relaying +Scheck_rcpt +# anything terminating locally is ok +R$* $: $>Parse0 $>3 $1 strip local crud +R$+ < @ $=w . > $@ OK +R$+ < @ $* $=R . > $@ OK + +# anything originating locally is ok +R$* $: $(dequote "" $&{client_name} $) +R$=w $@ OK +R$=R $@ OK +R$@ $@ OK + +# anything else is bogus +R$* $#error $: "550 Relaying Denied" diff --git a/usr.sbin/sendmail/cf/cf/s2k-osf1.mc b/usr.sbin/sendmail/cf/cf/s2k-osf1.mc index eb195cc..ed2d488 100644 --- a/usr.sbin/sendmail/cf/cf/s2k-osf1.mc +++ b/usr.sbin/sendmail/cf/cf/s2k-osf1.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for OSF/1. -# It applies only the the Sequoia 2000 Project at Berkeley, +# It applies only to the Sequoia 2000 Project at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)s2k-osf1.mc 8.4 (Berkeley) 3/23/96') +VERSIONID(`@(#)s2k-osf1.mc 8.5 (Berkeley) 6/3/97') OSTYPE(osf1)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/usr.sbin/sendmail/cf/cf/s2k-ultrix4.mc b/usr.sbin/sendmail/cf/cf/s2k-ultrix4.mc index 37df422..12fb960 100644 --- a/usr.sbin/sendmail/cf/cf/s2k-ultrix4.mc +++ b/usr.sbin/sendmail/cf/cf/s2k-ultrix4.mc @@ -35,7 +35,7 @@ divert(-1) # # This is a Berkeley-specific configuration file for Ultrix 4.x. -# It applies only the the Sequoia 2000 Project at Berkeley, +# It applies only to the Sequoia 2000 Project at Berkeley, # and should not be used elsewhere. It is provided on the sendmail # distribution as a sample only. To create your own configuration # file, create an appropriate domain file in ../domain, change the @@ -44,7 +44,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`@(#)s2k-ultrix4.mc 8.4 (Berkeley) 3/23/96') +VERSIONID(`@(#)s2k-ultrix4.mc 8.5 (Berkeley) 6/3/97') OSTYPE(ultrix4)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/usr.sbin/sendmail/cf/feature/bestmx_is_local.m4 b/usr.sbin/sendmail/cf/feature/bestmx_is_local.m4 index 1b96aa1..3849623 100644 --- a/usr.sbin/sendmail/cf/feature/bestmx_is_local.m4 +++ b/usr.sbin/sendmail/cf/feature/bestmx_is_local.m4 @@ -34,7 +34,7 @@ divert(-1) # divert(0) -VERSIONID(`@(#)bestmx_is_local.m4 8.4 (Berkeley) 10/23/96') +VERSIONID(`@(#)bestmx_is_local.m4 8.5 (Berkeley) 3/28/97') divert(-1) LOCAL_CONFIG @@ -60,7 +60,7 @@ LOCAL_NET_CONFIG ifelse(_ARG_, `', `', `#')dnl unlimited bestmx R$* < @ $* > $* $: $1 < @ $2 @@ $(bestmx $2 $) > $3 ifelse(_ARG_, `', `#', `')dnl limit bestmx to $=B -R$* < @ $* $=B > $* $: $1 < @ $2 $3 @@ $(bestmx $2 $3 $) > $4 +R$* < @ $* $=B . > $* $: $1 < @ $2 $3 . @@ $(bestmx $2 $3 . $) > $4 R$* $=O $* < @ $* @@ $=w . > $* $@ $>97 $1 $2 $3 R$* < @ $* @@ $=w . > $* $#local $: $1 R$* < @ $* @@ $* > $* $: $1 < @ $2 > $4 diff --git a/usr.sbin/sendmail/cf/m4/nullrelay.m4 b/usr.sbin/sendmail/cf/m4/nullrelay.m4 index 86c0356..e8f9677 100644 --- a/usr.sbin/sendmail/cf/m4/nullrelay.m4 +++ b/usr.sbin/sendmail/cf/m4/nullrelay.m4 @@ -34,7 +34,7 @@ divert(-1) # divert(0) -VERSIONID(`@(#)nullrelay.m4 8.12 (Berkeley) 10/12/96') +VERSIONID(`@(#)nullrelay.m4 8.13 (Berkeley) 4/30/97') # # This configuration applies only to relay-only hosts. They send @@ -68,7 +68,8 @@ R$* :: $* <@> $: $1 :: $2 unmark node::addr R:`include': $* <@> $: :`include': $1 unmark :`include':... R$* : $* <@> $: $2 strip colon if marked R$* <@> $: $1 unmark -R$* ; $: $1 strip trailing semi +R$* ; $1 strip trailing semi +R$* < $* ; > $1 < $2 > bogus bracketed semi # null input now results from list:; syntax R$@ $@ :; <@> diff --git a/usr.sbin/sendmail/cf/m4/proto.m4 b/usr.sbin/sendmail/cf/m4/proto.m4 index fc09fe0..dd085b5 100644 --- a/usr.sbin/sendmail/cf/m4/proto.m4 +++ b/usr.sbin/sendmail/cf/m4/proto.m4 @@ -34,7 +34,7 @@ divert(-1) # divert(0) -VERSIONID(`@(#)proto.m4 8.139 (Berkeley) 12/31/96') +VERSIONID(`@(#)proto.m4 8.149 (Berkeley) 4/30/97') MAILER(local)dnl @@ -505,7 +505,8 @@ R$* [ $* : $* ] <@> $: $1 [ $2 : $3 ] unmark IPv6 addrs R$* : $* [ $* ] $: $1 : $2 [ $3 ] <@> remark if leading colon R$* : $* <@> $: $2 strip colon if marked R$* <@> $: $1 unmark -R$* ; $: $1 strip trailing semi +R$* ; $1 strip trailing semi +R$* < $* ; > $1 < $2 > bogus bracketed semi # null input now results from list:; syntax R$@ $@ :; <@> @@ -593,9 +594,11 @@ ifdef(`_CLASS_X_', ifdef(`_CLASS_Y_', `R$* < @ $=Y . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl') +define(`X', ifdef(`_NO_CANONIFY_', `#', `'))dnl # try UUCP traffic as a local address -R$* < @ $+ . UUCP > $* $: $1 < @ $[ $2 $] . UUCP . > $3 -R$* < @ $+ . . UUCP . > $* $@ $1 < @ $2 . > $3') +X`'R$* < @ $+ . UUCP > $* $: $1 < @ $[ $2 $] . UUCP . > $3 +X`'R$* < @ $+ . . UUCP . > $* $@ $1 < @ $2 . > $3') +undefine(`X')dnl ') # pass to name server to make hostname canonical ifdef(`_NO_CANONIFY_', `#')dnl @@ -604,7 +607,9 @@ R$* < @ $* $~P > $* $: $1 < @ $[ $2 $3 $] > $4 # local host aliases and pseudo-domains are always canonical R$* < @ $=w > $* $: $1 < @ $2 . > $3 R$* < @ $j > $* $: $1 < @ $j . > $2 -R$* < @ $* $=M > $* $: $1 < @ $2 $3 . > $4 +ifdef(`_MASQUERADE_ENTIRE_DOMAIN_', +`R$* < @ $* $=M > $* $: $1 < @ $2 $3 . > $4', +`R$* < @ $=M > $* $: $1 < @ $2 . > $3') R$* < @ $* $=P > $* $: $1 < @ $2 $3 . > $4 R$* < @ $* . . > $* $1 < @ $2 . > $3 @@ -656,6 +661,11 @@ R$* $@ $>0 $1 S0 +R$* $: $>Parse0 $1 initial parsing +R$* $: $>98 $1 handle local hacks +R$* $: $>Parse1 $1 final parsing + +SParse0 R<@> $#_LOCAL_ $: <@> special case error msgs R$* : $* ; <@> $#error $@ 5.1.3 $: "list:; syntax illegal for recipient addresses" R<@ $+> $#error $@ 5.1.1 $: "user address required" @@ -664,6 +674,7 @@ R<> $* < @ [ $+ ] > $* $1 < @ [ $2 ] > $3 R<> $* <$* : $* > $* $#error $@ 5.1.1 $: "colon illegal in host name part" R<> $* $1 R$* < @ . $* > $* $#error $@ 5.1.2 $: "invalid host name" +R$* < @ $* .. $* > $* $#error $@ 5.1.2 $: "invalid host name" ifdef(`_MAILER_smtp_', `# handle numeric address spec @@ -672,20 +683,22 @@ R$* < @ [ $+ ] > $* $#_SMTP_ $@ [$2] $: $1 < @ [$2] > $3 still numeric: send', `dnl') # now delete the local info -- note $=O to find characters that cause forwarding -R$* < @ > $* $@ $>97 $1 user@ => user -R< @ $=w . > : $* $@ $>97 $2 @here:... -> ... +R$* < @ > $* $@ $>Parse0 $>3 $1 user@ => user +R< @ $=w . > : $* $@ $>Parse0 $>3 $2 @here:... -> ... R$- < @ $=w . > $: $(dequote $1 $) < @ $2 . > dequote "foo"@here R< @ $+ > $#error $@ 5.1.1 $: "user address required" -R$* $=O $* < @ $=w . > $@ $>97 $1 $2 $3 ...@here -> ... - -# handle local hacks -R$* $: $>98 $1 +R$* $=O $* < @ $=w . > $@ $>Parse0 $>3 $1 $2 $3 ...@here -> ... +SParse1 # handle virtual users define(`X', ifdef(`VIRTUSER_TABLE', `', `#'))dnl X`'R$+ < @ $=w . > $: < $(virtuser $1 @ $2 $@ $1 $: @ $) > $1 < @ $2 . > -X`'R< @ > $+ < @ $+ . > $: < $(virtuser @ $2 $@ $1 $: @ $) > $1 < @ $2 . > -X`'R< @ > $+ $: $1 +X`'R<@> $+ + $* < @ $* . > + $: < $(virtuser $1 + * @ $3 $@ $1 $: @ $) > $1 + $2 < @ $3 . > +X`'R<@> $+ + $* < @ $* . > + $: < $(virtuser $1 @ $3 $@ $1 $: @ $) > $1 + $2 < @ $3 . > +X`'R<@> $+ < @ $+ . > $: < $(virtuser @ $2 $@ $1 $: @ $) > $1 < @ $2 . > +X`'R<@> $+ $: $1 X`'R< error : $- $+ > $* $#error $@ $( dequote $1 $) $: $2 X`'R< $+ > $+ < @ $+ > $: $>97 $1 undefine(`X')dnl @@ -779,26 +792,26 @@ S5 # deal with plussed users so aliases work nicely R$+ + * $#_LOCAL_ $@ $&h $: $1 -R$+ + $* $#_LOCAL_ $@ $2 $: $1 + * +R$+ + $* $#_LOCAL_ $@ + $2 $: $1 + * # prepend an empty "forward host" on the front R$+ $: <> $1 define(`X', ifdef(`LUSER_RELAY', `', `#'))dnl # send unrecognized local users to a relay host -X`'R< > $+ + $* $: < $L . > $( user $1 $) + $2 X`'R< > $+ $: < $L . > $( user $1 $) look up user X`'R< $* > $+ <> $* $: < > $2 $3 found; strip $L X`'R< $* . > $+ $: < $1 > $2 strip extra dot undefine(`X')dnl -# handle plussed local names -R< > $+ + $* $#_LOCAL_ $@ $2 $: $1 - # see if we have a relay or a hub R< > $+ $: < $H > $1 try hub R< > $+ $: < $R > $1 try relay -R< > $+ $@ $1 nope, give up +R< > $+ $: < > < $1 $(dequote "" $&h $) > nope, restore +detail +R< > < $+ + $* > $* < > < $1 > + $2 $3 find the user part +R< > < $+ > + $* $#_LOCAL_ $@ $2 $: @ $1 strip the extra + +R< > < $+ > $@ $1 no +detail +R$+ $: $1 $(dequote "" $&h $) add +detail back in R< local : $* > $* $: $>95 < local : $1 > $2 no host extension R< error : $* > $* $: $>95 < error : $1 > $2 no host extension R< $- : $+ > $+ $: $>95 < $1 : $2 > $3 < @ $2 > @@ -840,15 +853,15 @@ SCanonLocal R< $* > $* < @ $* . > $: < $1 > $2 < @ $3 > # handle local: syntax -- use old user, either with or without host -R< > $* < @ $* > $* $#local $@ $1@$2 $: $1 -R< > $+ $#local $@ $1 $: $1 +R< > $* < @ $* > $* $#_LOCAL_ $@ $1@$2 $: $1 +R< > $+ $#_LOCAL_ $@ $1 $: $1 # handle local:user@host syntax -- ignore host part -R< $+ @ $+ > $* $: < $1 > $3 +R< $+ @ $+ > $* < @ $* > $: < $1 > $3 < @ $4 > # handle local:user syntax -R< $+ > $* <@ $* > $* $#local $@ $2@$3 $: $1 -R< $+ > $* $#local $@ $2 $: $1 +R< $+ > $* <@ $* > $* $#_LOCAL_ $@ $2@$3 $: $1 +R< $+ > $* $#_LOCAL_ $@ $2 $: $1 ################################################################### ### Ruleset 93 -- convert header names to masqueraded form ### diff --git a/usr.sbin/sendmail/cf/m4/version.m4 b/usr.sbin/sendmail/cf/m4/version.m4 index 1837c22..c9b3228 100644 --- a/usr.sbin/sendmail/cf/m4/version.m4 +++ b/usr.sbin/sendmail/cf/m4/version.m4 @@ -32,8 +32,8 @@ divert(-1) # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -VERSIONID(`@(#)version.m4 8.8.5.3 (Berkeley) 1/21/97') +VERSIONID(`@(#)version.m4 8.8.6.1 (Berkeley) 6/14/97') # divert(0) # Configuration version number -DZ8.8.5`'ifdef(`confCF_VERSION', `/confCF_VERSION') +DZ8.8.6`'ifdef(`confCF_VERSION', `/confCF_VERSION') diff --git a/usr.sbin/sendmail/cf/mailer/mail11.m4 b/usr.sbin/sendmail/cf/mailer/mail11.m4 index 21e05dd..a8781cf 100644 --- a/usr.sbin/sendmail/cf/mailer/mail11.m4 +++ b/usr.sbin/sendmail/cf/mailer/mail11.m4 @@ -15,12 +15,13 @@ ifdef(`MAIL11_MAILER_PATH',, `define(`MAIL11_MAILER_PATH', /usr/etc/mail11)') ifdef(`MAIL11_MAILER_FLAGS',, `define(`MAIL11_MAILER_FLAGS', nsFx)') ifdef(`MAIL11_MAILER_ARGS',, `define(`MAIL11_MAILER_ARGS', mail11 $g $x $h $u)') define(`_USE_DECNET_SYNTAX_') +define(`_LOCAL_', ifdef(`confLOCAL_MAILER', confLOCAL_MAILER, `local')) POPDIVERT PUSHDIVERT(3) # DECNET delivery -R$* < @ $=w .DECNET. > $#local $: $1 local DECnet +R$* < @ $=w .DECNET. > $#_LOCAL_ $: $1 local DECnet R$+ < @ $+ .DECNET. > $#mail11 $@ $2 $: $1 DECnet user POPDIVERT @@ -32,7 +33,7 @@ POPDIVERT ### UTK-MAIL11 Mailer specification ### ########################################### -VERSIONID(`@(#)mail11.m4 8.1 (Berkeley) 5/23/95') +VERSIONID(`@(#)mail11.m4 8.4 (Berkeley) 3/18/97') Mmail11, P=MAIL11_MAILER_PATH, F=MAIL11_MAILER_FLAGS, S=15, R=25, A=MAIL11_MAILER_ARGS diff --git a/usr.sbin/sendmail/cf/mailer/procmail.m4 b/usr.sbin/sendmail/cf/mailer/procmail.m4 index a170e58..0ea0717 100644 --- a/usr.sbin/sendmail/cf/mailer/procmail.m4 +++ b/usr.sbin/sendmail/cf/mailer/procmail.m4 @@ -38,9 +38,9 @@ ifdef(`PROCMAIL_MAILER_PATH',, `define(`PROCMAIL_MAILER_PATH', PROCMAIL_PATH)', `define(`PROCMAIL_MAILER_PATH', /usr/local/bin/procmail)')') ifdef(`PROCMAIL_MAILER_FLAGS',, - `define(`PROCMAIL_MAILER_FLAGS', `Shu')') + `define(`PROCMAIL_MAILER_FLAGS', `SPhnu9')') ifdef(`PROCMAIL_MAILER_ARGS',, - `define(`PROCMAIL_MAILER_ARGS', `procmail -m $h $f $u')') + `define(`PROCMAIL_MAILER_ARGS', `procmail -Y -m $h $f $u')') POPDIVERT @@ -48,7 +48,7 @@ POPDIVERT ### PROCMAIL Mailer specification ### ##################*****################## -VERSIONID(`@(#)procmail.m4 8.5 (Berkeley) 12/28/95') +VERSIONID(`@(#)procmail.m4 8.6 (Berkeley) 4/30/97') -Mprocmail, P=PROCMAIL_MAILER_PATH, F=CONCAT(`DFMm', PROCMAIL_MAILER_FLAGS), S=11/31, R=21/31, T=DNS/RFC822/X-Unix, +Mprocmail, P=PROCMAIL_MAILER_PATH, F=CONCAT(`DFM', PROCMAIL_MAILER_FLAGS), S=11/31, R=21/31, T=DNS/RFC822/X-Unix, ifdef(`PROCMAIL_MAILER_MAX', `M=PROCMAIL_MAILER_MAX, ')A=PROCMAIL_MAILER_ARGS diff --git a/usr.sbin/sendmail/cf/mailer/uucp.m4 b/usr.sbin/sendmail/cf/mailer/uucp.m4 index 0b65949..023982f 100644 --- a/usr.sbin/sendmail/cf/mailer/uucp.m4 +++ b/usr.sbin/sendmail/cf/mailer/uucp.m4 @@ -44,7 +44,7 @@ POPDIVERT ### UUCP Mailer specification ### ##################################### -VERSIONID(`@(#)uucp.m4 8.24 (Berkeley) 9/5/95') +VERSIONID(`@(#)uucp.m4 8.25 (Berkeley) 3/16/97') # # There are innumerable variations on the UUCP mailer. It really @@ -110,7 +110,7 @@ S22 R:; <@> $@ R$* < @ $* . > $* $1 < @ $2 > $3 strip trailing dots -R$* < @ $j > $1 strip local name +R$* < @ $=w > $1 strip local name R<@ $- . UUCP > : $+ $1 ! $2 convert to UUCP format R<@ $+ > : $+ $1 ! $2 convert to UUCP format R$* < @ $- . UUCP > $2 ! $1 convert to UUCP format @@ -125,7 +125,7 @@ S42 R:; <@> $@ R$* < @ $* . > $* $1 < @ $2 > $3 strip trailing dots -R$* < @ $j > $1 strip local name +R$* < @ $=w > $1 strip local name R<@ $- . UUCP > : $+ $1 ! $2 convert to UUCP format R<@ $+ > : $+ $1 ! $2 convert to UUCP format R$* < @ $- . UUCP > $2 ! $1 convert to UUCP format diff --git a/usr.sbin/sendmail/cf/ostype/gnuhurd.m4 b/usr.sbin/sendmail/cf/ostype/gnuhurd.m4 new file mode 100644 index 0000000..3676679 --- /dev/null +++ b/usr.sbin/sendmail/cf/ostype/gnuhurd.m4 @@ -0,0 +1,41 @@ +divert(-1) +# +# Copyright (c) 1983 Eric P. Allman +# Copyright (c) 1988, 1993 +# The Regents of the University of California. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by the University of +# California, Berkeley and its contributors. +# 4. Neither the name of the University nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# + +divert(0) +VERSIONID(`@(#)gnuhurd.m4 8.1 (Berkeley) 3/8/97') +ifdef(`HELP_FILE',, `define(`HELP_FILE', /share/misc/sendmail.hf)')dnl +ifdef(`STATUS_FILE',, `define(`STATUS_FILE', /var/log/sendmail.st)')dnl +ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /libexec/mail.local)')dnl diff --git a/usr.sbin/sendmail/cf/ostype/irix6.m4 b/usr.sbin/sendmail/cf/ostype/irix6.m4 new file mode 100644 index 0000000..2304c1c --- /dev/null +++ b/usr.sbin/sendmail/cf/ostype/irix6.m4 @@ -0,0 +1,61 @@ +divert(-1) +# +# Copyright (c) 1995 Eric P. Allman +# Copyright (c) 1988, 1993 +# The Regents of the University of California. All rights reserved. +# +# Contributed by Kari E. Hurtta +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by the University of +# California, Berkeley and its contributors. +# 4. Neither the name of the University nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# + +# +# Notes: +# - SGI's /etc/sendmail.cf defines also 'u' for local mailer flags -- you +# perhaps don't want it. +# - Perhaps is should also add define(`LOCAL_MAILER_CHARSET', iso-8859-1) +# put some Asian sites may prefer otherwise -- or perhaps not. +# - SGI's /etc/sendmail.cf seems use: A=mail -s -d $u +# It seems work without that -s however. +# - SGI's /etc/sendmail.cf set's default uid and gid to 998 (guest) +# - In SGI seems that TZ variable is needed that correct time is marked to +# syslog +# - helpfile is in /etc/sendmail.hf in SGI's /etc/sendmail.cf +# + +divert(0) +VERSIONID(`@(#)irix6.m4 8.1 (Berkeley) 4/11/97') +ifdef(`LOCAL_MAILER_FLAGS',, `define(`LOCAL_MAILER_FLAGS', Ehmu9)')dnl +ifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', `mail -s -d $u')')dnl +ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /var/spool/mqueue)')dnl +define(`ALIAS_FILE', /etc/aliases)dnl +ifdef(`STATUS_FILE',, `define(`STATUS_FILE', /var/sendmail.st)')dnl +ifdef(`HELP_FILE',, `define(`HELP_FILE', /etc/sendmail.hf)')dnl +define(`confDEF_USER_ID', `998:998')dnl +define(`confTIME_ZONE', USE_TZ)dnl -- cgit v1.1