diff --git a/contrib/sendmail/FAQ b/contrib/sendmail/FAQ index deb0798010d..f8c2e8409ce 100644 --- a/contrib/sendmail/FAQ +++ b/contrib/sendmail/FAQ @@ -5,4 +5,4 @@ A plain-text version of the questions only, with URLs referring to the answers, is posted to comp.mail.sendmail on the 10th and 25th of each month. -$Revision: 1.1.1.2 $, Last updated $Date: 2000/08/12 21:54:21 $ +$Revision: 8.24 $, Last updated $Date: 1999/02/07 03:21:03 $ diff --git a/contrib/sendmail/INSTALL b/contrib/sendmail/INSTALL index 8bacacaa4be..19a60c69d17 100644 --- a/contrib/sendmail/INSTALL +++ b/contrib/sendmail/INSTALL @@ -33,13 +33,14 @@ sendmail/SECURITY for more installation information. Then install the sendmail binary built in step 3 by cd-ing back to sendmail/ and running "sh Build install". -7. For each of the associated sendmail utilities (makemap, mailstats, etc.), - read the README in the utility's directory. When you are ready to install - it, back up your installed version and type "sh Build install". +7. For each of the associated sendmail utilities (makemap, mailstats, + etc.), read the README in the utility's directory if it exists. When + you are ready to install it, back up your installed version and type "sh + Build install". 8. If you are upgrading from an older version of sendmail and are using any database maps, be sure to rebuild them with the new version of makemap, in case you are now using a different (and thereby incompatible) version of Berkeley DB. -$Revision: 1.1.1.3 $, Last updated $Date: 2002/02/17 21:56:38 $ +$Revision: 8.15 $, Last updated $Date: 2002/05/28 18:09:25 $ diff --git a/contrib/sendmail/KNOWNBUGS b/contrib/sendmail/KNOWNBUGS index f8da3ddf74c..81ea244d2a2 100644 --- a/contrib/sendmail/KNOWNBUGS +++ b/contrib/sendmail/KNOWNBUGS @@ -235,4 +235,4 @@ Kresolve sequence dnsmx canon the file. This is unavoidable as sendmail must verify the file is safe to open before opening it. A file can not be locked until it is open. -$Revision: 1.1.1.8 $, Last updated $Date: 2002/04/10 03:04:47 $ +$Revision: 8.55 $, Last updated $Date: 2002/03/05 00:45:54 $ diff --git a/contrib/sendmail/LICENSE b/contrib/sendmail/LICENSE index d48fc30e1c0..e466568a220 100644 --- a/contrib/sendmail/LICENSE +++ b/contrib/sendmail/LICENSE @@ -33,7 +33,7 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2001 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2002 Sendmail, Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote @@ -76,4 +76,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 1.1.1.5 $, Last updated $Date: 2002/02/17 21:56:38 $ +$Revision: 8.11 $, Last updated $Date: 2002/04/24 22:26:56 $ diff --git a/contrib/sendmail/Makefile b/contrib/sendmail/Makefile index 217e59b72ba..97b2afc54c5 100644 --- a/contrib/sendmail/Makefile +++ b/contrib/sendmail/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.4 2002/02/17 21:56:38 gshapiro Exp $ +# $Id: Makefile.dist,v 8.15 2001/08/23 20:44:39 ca Exp $ SHELL= /bin/sh SUBDIRS= libsm libsmutil libsmdb sendmail editmap mail.local \ diff --git a/contrib/sendmail/PGPKEYS b/contrib/sendmail/PGPKEYS index 10fcb1ab764..11654e96786 100644 --- a/contrib/sendmail/PGPKEYS +++ b/contrib/sendmail/PGPKEYS @@ -904,4 +904,4 @@ SIXqPke2iCW6+zdG1T/gS5T9T9/Lf2c9FQf0FjURAi3ynDA2RBLA5FDsI8v3 =dbDm -----END PGP PUBLIC KEY BLOCK----- -$Revision: 1.1.1.4 $, Last updated $Date: 2002/02/17 21:56:38 $ +$Revision: 8.13 $, Last updated $Date: 2001/12/19 19:10:01 $ diff --git a/contrib/sendmail/README b/contrib/sendmail/README index a7c47e3a181..8fb91a02055 100644 --- a/contrib/sendmail/README +++ b/contrib/sendmail/README @@ -106,6 +106,54 @@ a "chmod go-w $FILE" on each. Also, do a "chmod go-w $DIR" for each directory in the file's path. ++--------------------------+ +| FILE AND MAP PERMISSIONS | ++--------------------------+ + +Any application which uses either flock() or fcntl() style locking or +other APIs that use one of these locking methods (such as open() with +O_EXLOCK and O_SHLOCK) on files readable by other local untrusted users +may be susceptible to local denial of service attacks. + +File locking is used throughout sendmail for a variety of files +including aliases, maps, statistics, and the pid file. Any user who +can open one of these files can prevent sendmail or it's associated +utilities, e.g., makemap or newaliases, from operating properly. This +can also affect sendmail's ability to update status files such as +statistics files. For system which use flock() for file locking, a +user's ability to obtain an exclusive lock prevents other sendmail +processes from reading certain files such as alias or map databases. + +A workaround for this problem is to protect all sendmail files such +that they can't be opened by untrusted users. As long as users can +not open a file, they can not lock it. Since queue files should +already have restricted permissions, the only files that need +adjustment are alias, map, statistics, and pid files. These files +should be owned by root or the trusted user specified in the +TrustedUser option. Changing the permissions to be only readable and +writable by that user is sufficient to avoid the denial of service. +For example, depending on the paths you use, these commands would be +used: + + chmod 0640 /etc/mail/aliases /etc/mail/aliases.{db,pag,dir} + chmod 0640 /etc/mail/*.{db,pag,dir} + chmod 0640 /etc/mail/statistics /var/log/sendmail.st + chmod 0600 /var/run/sendmail.pid /etc/mail/sendmail.pid + +If the permissions 0640 are used, be sure that only trusted users belong +to the group assigned to those files. Otherwise, files should not even +be group readable. As of sendmail 8.12.4, the permissions shown above +are the default permissions for newly created files. + +Note that the denial of service on the plain text aliases file +(/etc/mail/aliases) only prevents newaliases from rebuilding the +aliases file. The same is true for the database files on systems which +use fcntl() style locking. Since it does not interfere with normal +operations, sites may chose to leave these files readable. Also, it is +not necessary to protect the text files associated with map databases +as makemap does not lock those files. + + +-----------------------+ | RELATED DOCUMENTATION | +-----------------------+ @@ -400,4 +448,4 @@ sendmail Source for the sendmail program itself. test Some test scripts (currently only for compilation aids). vacation Source for the vacation program. NOT PART OF SENDMAIL! -$Revision: 1.1.1.6 $, Last updated $Date: 2002/02/17 21:56:38 $ +$Revision: 8.90 $, Last updated $Date: 2002/05/25 02:55:59 $ diff --git a/contrib/sendmail/RELEASE_NOTES b/contrib/sendmail/RELEASE_NOTES index 8b338231477..cf6855aecc2 100644 --- a/contrib/sendmail/RELEASE_NOTES +++ b/contrib/sendmail/RELEASE_NOTES @@ -1,11 +1,104 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 1.1.1.12 2002/04/10 03:04:47 gshapiro Exp $ + $Id: RELEASE_NOTES,v 8.1336 2002/06/03 13:21:25 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.12.4/8.12.4 2002/06/03 + SECURITY: Inherent limitations in the UNIX file locking model + can leave systems open to a local denial of service + attack. Be sure to read the "FILE AND MAP PERMISSIONS" + section of the top level README for more information. + Problem noted by lumpy. + Use TempFileMode (defaults to 0600) for the permissions of PidFile + instead of 0644. + Change the default file permissions for new alias database files + from 0644 to 0640. This can be overridden at compile time + by setting the DBMMODE macro. + Fix a potential core dump problem if the environment variable + NAME is set. Problem noted by Beth A. Chaney of + Purdue University. + Expand macros before passing them to libmilter. Problem noted + by Jose Marcio Martins da Cruz of Ecole Nationale + Superieure des Mines de Paris. + Rewind the df (message body) before truncating it when libmilter + replaces the body of a message. Problem noted by Gisle Aas + of Active State. + Change SMTP reply code for AUTH failure from 500 to 535 and the + initial zero-length response to "=" per RFC 2554. Patches + from Kenneth Murchison of Oceana Matrix Ltd. + Do not try to fix broken message/rfc822 MIME attachments by + inserting a MIME-Version: header when MaxMimeHeaderLength + is set and no 8 to 7 bit conversion is needed. Based on + patch from Rehor Petr of ICZ (Czech Republic). + Do not log "did not issue MAIL/EXPN/VRFY/ETRN" if the connection + is rejected anyway. Noted by Chris Loelke. + Mention the submission mail queue in the mailq man page. Requested + by Bill Fenner of AT&T. + Set ${msg_size} macro when reading a message from the command line + or the queue. + Detach from shared memory before dropping privileges back to + user who started sendmail. + If AllowBogusHELO is set to false (default) then also complain if + the argument to HELO/EHLO contains white space. Suggested + by Seva Gluschenko of Cronyx Plus. + Allow symbolicly linked forward files in writable directory paths + if both ForwardFileInUnsafeDirPath and + LinkedForwardFileInWritableDir DontBlameSendmail options + are set. Problem noted by Werner Spirk of + Leibniz-Rechenzentrum Munich. + Portability: + Operating systems that lack the ftruncate() call will not + be able to use Milter's body replacement feature. + This only affects Altos, Maxion, and MPE/iX. + Digital UNIX 5.0 has changed flock() semantics to be + non-compliant. Problem noted by Martin Mokrejs of + Charles University in Prague. + The sparc64 port of FreeBSD 5.0 now supports shared + memory. + CONFIG: FEATURE(`preserve_luser_host') needs the macro map. + Problem noted by Andrzej Filip. + CONFIG: Using 'local:' as a mailertable value with + FEATURE(`preserve_luser_host') and LUSER_RELAY caused mail + to be misaddressed. Problem noted by Andrzej Filip. + CONFIG: Provide a workaround for DNS based rejection lists that + fail for AAAA queries. Problem noted by Chris Boyd. + CONFIG: Accept the machine's hostname as resolvable when checking + the sender address. This allows locally submitted mail to + be accepted if the machine isn't connected to a nameserver + and doesn't have an /etc/hosts entry for itself. Problem + noted by Robert Watson of the TrustedBSD Project. + CONFIG: Use deferred expansion for checking the ${deliveryMode} + macro in case the SMTP VERB command is used. Problem + noted by Bryan Costales. + CONFIG: Avoid a duplicate '@domain' virtusertable lookup if no + matches are found. Fix from Andrzej Filip. + CONFIG: Fix wording in default dnsbl rejection message. Suggested + by Lou Katz of Metron Computerware, Ltd. + CONFIG: Add mailer cyrusv2 for Cyrus V2. Contributed by + Kenneth Murchison of Oceana Matrix Ltd. + CONTRIB: Fix wording in default dnsblaccess rejection message to + match dnsbl change. + DEVTOOLS: Add new option for access mode of statistics file, + confSTMODE, which specifies the permissions when initially + installing the sendmail statistics file. + LIBMILTER: Mark the listening socket as close-on-exec in case + a user's filter starts other applications. + LIBSM: Allow the MBDB initialize, lookup, and/or terminate + functions in SmMbdbTypes to be set to NULL. + MAKEMAP: Change the default file permissions for new databases from + 0644 to 0640. This can be overridden at compile time + by setting the DBMMODE macro. + SMRSH: Fix man page bug: replace SMRSH_CMDBIN with SMRSH_CMDDIR. + Problem noted by Dave Alden of Ohio State University. + VACATION: When listing the vacation database (-l), don't show + bogus timestamps for excluded (-x) addresses. Problem + noted by Bryan Costales. + New Files: + cf/mailer/cyrusv2.m4 + 8.12.3/8.12.3 2002/04/05 NOTICE: In general queue files should not be moved if queue groups are used. In previous versions this could cause mail @@ -110,7 +203,7 @@ summary of the changes in that release. command). Portability: Check LDAP_API_VERSION to determine if ldap_memfree() is - availble. + available. Define HPUX10 when building on HP-UX 10.X. That platform now gets the proper _PATH_SENDMAIL and SMRSH_CMDDIR settings. Patch from Elias Halldor Agustsson of @@ -159,8 +252,8 @@ summary of the changes in that release. DEVTOOLS: Add dependency generation for test programs. LIBMILTER: Remove conversion of port number for the socket structure that is passed to xxfi_connect(). Notice: - this fix requires that sendmail and libmilter have both - this change, mixing versions may lead to wrong port + this fix requires that sendmail and libmilter both have + this change; mixing versions may lead to wrong port values depending on the endianness of the involved systems. Problem noted by Gisle Aas of ActiveState. LIBMILTER: If smfi_setreply() sets a custom reply code of '4XX' but diff --git a/contrib/sendmail/cf/README b/contrib/sendmail/cf/README index 7ee514bbd41..3c7b7d5a673 100644 --- a/contrib/sendmail/cf/README +++ b/contrib/sendmail/cf/README @@ -453,6 +453,19 @@ CYRUS_BB_MAILER_FLAGS [u] The flags used by the cyrusbb mailer. The flags lsDFMnP are always included. CYRUS_BB_MAILER_ARGS [deliver -e -m $u] The arguments passed to deliver cyrusbb mail. +CYRUSV2_MAILER_FLAGS [A@/:|m] The flags used by the cyrusv2 mailer. The + flags lsDFMnqXz are always included. +CYRUSV2_MAILER_MAXMSGS [undefined] If defined, the maximum number of + messages to deliver in a single connection for the + cyrusv2 mailer. +CYRUSV2_MAILER_MAXRCPTS [undefined] If defined, the maximum number of + recipients to deliver in a single connection for the + cyrusv2 mailer. +CYRUSV2_MAILER_ARGS [FILE /var/imap/socket/lmtp] The arguments passed + to the cyrusv2 mailer. This can be used to + change the name of the Unix domain socket, or + to switch to delivery via TCP (e.g., `TCP $h lmtp') +CYRUSV2_MAILER_QGRP [undefined] The queue group for the cyrusv2 mailer. confEBINDIR [/usr/libexec] The directory for executables. Currently used for FEATURE(`local_lmtp') and FEATURE(`smrsh'). @@ -634,6 +647,14 @@ cyrus The cyrus and cyrusbb mailers. The cyrus mailer delivers to cyrus mailbox if the mailbox's ACL permits. The cyrus mailer must be defined after the local mailer. +cyrusv2 The mailer for Cyrus v2.x. The cyrusv2 mailer delivers to + local cyrus users via LMTP. This mailer can make use of the + "user+detail@local.host" syntax (see + FEATURE(`preserve_local_plus_detail')); it will deliver the + mail to the user's "detail" mailbox if the mailbox's ACL + permits. The cyrusv2 mailer must be defined after the + local mailer. + qpage A mailer for QuickPage, a pager interface. See http://www.qpage.org/ for further information. @@ -1084,16 +1105,15 @@ promiscuous_relay MASQUERADE_DOMAIN_FILE, see below). relay_entire_domain - By default, only hosts listed as RELAY in the access db - will be allowed to relay. This option also allows any - host in your domain as defined by class {m}. - Notice: make sure that your domain is not just a top level - domain, e.g., com. This can happen if you give your - host a name like example.com instead of host.example.com. + This option allows any host in your domain as defined by + class {m} to use your server for relaying. Notice: make + sure that your domain is not just a top level domain, + e.g., com. This can happen if you give your host a name + like example.com instead of host.example.com. relay_hosts_only By default, names that are listed as RELAY in the access - db and class {R} are domain names, not host names. + db and class {R} are treated as domain names, not host names. For example, if you specify ``foo.com'', then mail to or from foo.com, abc.foo.com, or a.very.deep.domain.foo.com will all be accepted for relaying. This feature changes @@ -1120,8 +1140,8 @@ relay_mail_from relaying can be allowed just based on the domain portion of the sender address. This feature should only be used if absolutely necessary as the sender address can be easily - forged. Use of this feature requires the "From:" tag be - prepended to the key in the access map; see the discussion + forged. Use of this feature requires the "From:" tag to + be used for the key in the access map; see the discussion of tags and FEATURE(`relay_mail_from') in the section on anti-spam configuration control. @@ -1203,6 +1223,16 @@ dnsbl Turns on rejection of hosts found in an DNS based rejection to query different DNS based rejection lists. See also enhdnsbl for an enhanced version. + Some DNS based rejection lists cause failures if asked + for AAAA records. If your sendmail version is compiled + with IPv6 support (NETINET6) and you experience this + problem, add + + define(`DNSBL_MAP', `dns -R A') + + before the first use of this feature. Alternatively you + can use enhdnsbl instead (see below). + NOTE: The default DNS blacklist, blackholes.mail-abuse.org, is a service offered by the Mail Abuse Prevention System (MAPS). As of July 31, 2001, MAPS is a subscription @@ -1293,6 +1323,15 @@ msp Defines config file for Message Submission Program. Some more hints about possible changes can be found below in the section MESSAGE SUBMISSION PROGRAM. + Note: if localhost doesn't resolve to the IP address + of your local system (127.0.0.1 or ::1 for IPv6), + then you either need to fix your hostname resolution + (localhost and localhost.YOUR.DOMAIN should resolve + to that address by convention) or you need to specify + the IP address as argument, e.g., + + FEATURE(`msp', `[127.0.0.1]') + queuegroup A simple example how to select a queue group based on the full e-mail address or the domain of the recipient. Selection is done via entries in the @@ -3212,7 +3251,7 @@ more careful about checking for security problems than previous versions, but there are some things that you still need to watch for. In particular: -* Make sure the aliases file isn't writable except by trusted +* Make sure the aliases file is not writable except by trusted system personnel. This includes both the text and database version. @@ -3517,18 +3556,18 @@ confTO_HOSTSTATUS Timeout.hoststatus information (see below). confTO_RESOLVER_RETRANS Timeout.resolver.retrans [varies] Sets the resolver's - retransmition time interval (in + retransmission time interval (in seconds). Sets both Timeout.resolver.retrans.first and Timeout.resolver.retrans.normal. confTO_RESOLVER_RETRANS_FIRST Timeout.resolver.retrans.first [varies] Sets the resolver's - retransmition time interval (in + retransmission time interval (in seconds) for the first attempt to deliver a message. confTO_RESOLVER_RETRANS_NORMAL Timeout.resolver.retrans.normal [varies] Sets the resolver's - retransmition time interval (in + retransmission time interval (in seconds) for all resolver lookups except the first delivery attempt. confTO_RESOLVER_RETRY Timeout.resolver.retry @@ -4018,10 +4057,24 @@ absolutely sure you need them. Options you may want to change include: - confTRUSTED_USERS, FEATURE(`use_ct_file'), and confCT_FILE for - avoiding X-Authorization warnings. + avoiding X-Authentication warnings. - confTIME_ZONE to change it from the default `USE_TZ'. - confDELIVERY_MODE is set to interactive in msp.m4 instead of the default background mode. +- FEATURE(stickyhost) and LOCAL_RELAY to send unqualified addresses + to the LOCAL_RELAY instead of the default relay. +- confRAND_FILE if you use STARTTLS and sendmail is not compiled with + the flag HASURANDOM. + +The MSP performs hostname canonicalization by default. As also +explained in sendmail/SECURITY, mail may end up for various DNS +related reasons in the MSP queue. This problem can be minimized by +using + + FEATURE(`nocanonify', `canonify_hosts') + define(`confDIRECT_SUBMISSION_MODIFIERS', `C') + +See the discussion about nocanonify for possible side effects. Some things are not intended to work with the MSP. These include features that influence the delivery process (e.g., mailertable, @@ -4258,4 +4311,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 1.1.1.12 $, Last updated $Date: 2002/04/10 03:04:56 $ +$Revision: 8.622 $, Last updated $Date: 2002/06/03 13:15:16 $ diff --git a/contrib/sendmail/cf/cf/Makefile b/contrib/sendmail/cf/cf/Makefile index 8502a647424..9a69a1805af 100644 --- a/contrib/sendmail/cf/cf/Makefile +++ b/contrib/sendmail/cf/cf/Makefile @@ -1,7 +1,7 @@ # # Makefile for configuration files. # -# $Id: Makefile,v 1.1.1.7 2002/02/17 21:56:43 gshapiro Exp $ +# $Id: Makefile,v 8.56 2001/12/13 23:56:37 gshapiro Exp $ # # diff --git a/contrib/sendmail/cf/cf/README b/contrib/sendmail/cf/cf/README index e61e21a91da..d0ac86559d6 100644 --- a/contrib/sendmail/cf/cf/README +++ b/contrib/sendmail/cf/cf/README @@ -31,4 +31,4 @@ The name of the source file for "submit.cf" can be overridden by For more details see Makefile. -$Revision: 1.1.1.2 $, Last updated $Date: 2002/04/10 03:04:57 $ +$Revision: 1.2 $, Last updated $Date: 2002/02/22 00:33:54 $ diff --git a/contrib/sendmail/cf/cf/chez.cs.mc b/contrib/sendmail/cf/cf/chez.cs.mc index 6c9de63004f..bb335a49096 100644 --- a/contrib/sendmail/cf/cf/chez.cs.mc +++ b/contrib/sendmail/cf/cf/chez.cs.mc @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: chez.cs.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: chez.cs.mc,v 8.14 1999/02/07 07:25:59 gshapiro Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/cf/clientproto.mc b/contrib/sendmail/cf/cf/clientproto.mc index d167272bf25..ecdbddf2a48 100644 --- a/contrib/sendmail/cf/cf/clientproto.mc +++ b/contrib/sendmail/cf/cf/clientproto.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: clientproto.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: clientproto.mc,v 8.16 2000/03/21 21:05:26 ca Exp $') OSTYPE(unknown) FEATURE(nullclient, mailhost.$m) diff --git a/contrib/sendmail/cf/cf/cs-hpux10.mc b/contrib/sendmail/cf/cf/cs-hpux10.mc index bcf2ee4918c..f384b5f7a0c 100644 --- a/contrib/sendmail/cf/cf/cs-hpux10.mc +++ b/contrib/sendmail/cf/cf/cs-hpux10.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux10.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux10.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') OSTYPE(hpux10)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/cf/cs-hpux9.mc b/contrib/sendmail/cf/cf/cs-hpux9.mc index a6e7bc956a1..664377e5eaf 100644 --- a/contrib/sendmail/cf/cf/cs-hpux9.mc +++ b/contrib/sendmail/cf/cf/cs-hpux9.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux9.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux9.mc,v 8.14 1999/02/07 07:26:00 gshapiro Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/cf/cs-osf1.mc b/contrib/sendmail/cf/cf/cs-osf1.mc index 547e47bfc90..09d6e49160b 100644 --- a/contrib/sendmail/cf/cf/cs-osf1.mc +++ b/contrib/sendmail/cf/cf/cs-osf1.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-osf1.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: cs-osf1.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') OSTYPE(osf1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/cs-solaris2.mc b/contrib/sendmail/cf/cf/cs-solaris2.mc index 9830ab9c876..c802b50f892 100644 --- a/contrib/sendmail/cf/cf/cs-solaris2.mc +++ b/contrib/sendmail/cf/cf/cs-solaris2.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-solaris2.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: cs-solaris2.mc,v 8.12 1999/02/07 07:26:00 gshapiro Exp $') OSTYPE(solaris2)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/cs-sunos4.1.mc b/contrib/sendmail/cf/cf/cs-sunos4.1.mc index 2edfde80e6c..6263e118e04 100644 --- a/contrib/sendmail/cf/cf/cs-sunos4.1.mc +++ b/contrib/sendmail/cf/cf/cs-sunos4.1.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-sunos4.1.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: cs-sunos4.1.mc,v 8.13 1999/02/07 07:26:01 gshapiro Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/cs-ultrix4.mc b/contrib/sendmail/cf/cf/cs-ultrix4.mc index 03cb5ff4707..7669823bf33 100644 --- a/contrib/sendmail/cf/cf/cs-ultrix4.mc +++ b/contrib/sendmail/cf/cf/cs-ultrix4.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-ultrix4.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: cs-ultrix4.mc,v 8.13 1999/02/07 07:26:02 gshapiro Exp $') OSTYPE(ultrix4)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/cyrusproto.mc b/contrib/sendmail/cf/cf/cyrusproto.mc index 9499c4439cf..8fa00ceee8f 100644 --- a/contrib/sendmail/cf/cf/cyrusproto.mc +++ b/contrib/sendmail/cf/cf/cyrusproto.mc @@ -27,7 +27,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cyrusproto.mc,v 1.1.1.2 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: cyrusproto.mc,v 8.7 1999/09/07 14:57:10 ca Exp $') define(`confBIND_OPTS',`-DNSRCH -DEFNAMES') define(`confLOCAL_MAILER', `cyrus') FEATURE(`nocanonify') diff --git a/contrib/sendmail/cf/cf/generic-bsd4.4.mc b/contrib/sendmail/cf/cf/generic-bsd4.4.mc index f1bf136d405..18ea8b3b876 100644 --- a/contrib/sendmail/cf/cf/generic-bsd4.4.mc +++ b/contrib/sendmail/cf/cf/generic-bsd4.4.mc @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-bsd4.4.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') OSTYPE(bsd4.4)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-hpux10.mc b/contrib/sendmail/cf/cf/generic-hpux10.mc index 2439ea8c724..deed5f14bcf 100644 --- a/contrib/sendmail/cf/cf/generic-hpux10.mc +++ b/contrib/sendmail/cf/cf/generic-hpux10.mc @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux10.mc,v 1.1.1.5 2002/02/17 21:56:43 gshapiro Exp $') +VERSIONID(`$Id: generic-hpux10.mc,v 8.13 2001/05/29 17:29:52 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-hpux9.mc b/contrib/sendmail/cf/cf/generic-hpux9.mc index 4514e1d2592..739207c7144 100644 --- a/contrib/sendmail/cf/cf/generic-hpux9.mc +++ b/contrib/sendmail/cf/cf/generic-hpux9.mc @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux9.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic-hpux9.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') OSTYPE(hpux9)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-linux.mc b/contrib/sendmail/cf/cf/generic-linux.mc index 69b850168d2..f86e2630823 100644 --- a/contrib/sendmail/cf/cf/generic-linux.mc +++ b/contrib/sendmail/cf/cf/generic-linux.mc @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-linux.mc,v 1.1.1.1 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $') OSTYPE(linux)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-mpeix.mc b/contrib/sendmail/cf/cf/generic-mpeix.mc index 3af4a76b466..fa5c57456af 100644 --- a/contrib/sendmail/cf/cf/generic-mpeix.mc +++ b/contrib/sendmail/cf/cf/generic-mpeix.mc @@ -17,7 +17,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-mpeix.mc,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $') +VERSIONID(`$Id: generic-mpeix.mc,v 8.1 2001/12/13 23:56:37 gshapiro Exp $') OSTYPE(mpeix)dnl DOMAIN(generic)dnl define(`confFORWARD_PATH', `$z/.forward')dnl diff --git a/contrib/sendmail/cf/cf/generic-nextstep3.3.mc b/contrib/sendmail/cf/cf/generic-nextstep3.3.mc index 3f85c35c2ff..14b46d387df 100644 --- a/contrib/sendmail/cf/cf/generic-nextstep3.3.mc +++ b/contrib/sendmail/cf/cf/generic-nextstep3.3.mc @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-nextstep3.3.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic-nextstep3.3.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') OSTYPE(nextstep)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-osf1.mc b/contrib/sendmail/cf/cf/generic-osf1.mc index f841cc04c7b..9cd4e77b6a2 100644 --- a/contrib/sendmail/cf/cf/generic-osf1.mc +++ b/contrib/sendmail/cf/cf/generic-osf1.mc @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-osf1.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic-osf1.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') OSTYPE(osf1)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-solaris.mc b/contrib/sendmail/cf/cf/generic-solaris.mc index ea78bc39dc7..5f82340e912 100644 --- a/contrib/sendmail/cf/cf/generic-solaris.mc +++ b/contrib/sendmail/cf/cf/generic-solaris.mc @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-solaris.mc,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $') +VERSIONID(`$Id: generic-solaris.mc,v 8.13 2001/06/27 21:46:30 gshapiro Exp $') OSTYPE(solaris2)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-sunos4.1.mc b/contrib/sendmail/cf/cf/generic-sunos4.1.mc index fa244a118ff..a27d099e044 100644 --- a/contrib/sendmail/cf/cf/generic-sunos4.1.mc +++ b/contrib/sendmail/cf/cf/generic-sunos4.1.mc @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-sunos4.1.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic-sunos4.1.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') OSTYPE(sunos4.1)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/generic-ultrix4.mc b/contrib/sendmail/cf/cf/generic-ultrix4.mc index 3c1bccedb0b..913edb58603 100644 --- a/contrib/sendmail/cf/cf/generic-ultrix4.mc +++ b/contrib/sendmail/cf/cf/generic-ultrix4.mc @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-ultrix4.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic-ultrix4.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') OSTYPE(ultrix4)dnl DOMAIN(generic)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/huginn.cs.mc b/contrib/sendmail/cf/cf/huginn.cs.mc index 98ec2157285..117a236af0f 100644 --- a/contrib/sendmail/cf/cf/huginn.cs.mc +++ b/contrib/sendmail/cf/cf/huginn.cs.mc @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: huginn.cs.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: huginn.cs.mc,v 8.15 1999/02/07 07:26:03 gshapiro Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/cf/knecht.mc b/contrib/sendmail/cf/cf/knecht.mc index 33bf1f1d58f..6c370fdc7fa 100644 --- a/contrib/sendmail/cf/cf/knecht.mc +++ b/contrib/sendmail/cf/cf/knecht.mc @@ -19,7 +19,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: knecht.mc,v 1.1.1.6 2002/02/17 21:56:43 gshapiro Exp $') +VERSIONID(`$Id: knecht.mc,v 8.55 2001/08/01 22:20:40 eric Exp $') OSTYPE(bsd4.4) DOMAIN(generic) diff --git a/contrib/sendmail/cf/cf/mail.cs.mc b/contrib/sendmail/cf/cf/mail.cs.mc index 94f73151b5e..6bd778258c1 100644 --- a/contrib/sendmail/cf/cf/mail.cs.mc +++ b/contrib/sendmail/cf/cf/mail.cs.mc @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.cs.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: mail.cs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') OSTYPE(ultrix4)dnl DOMAIN(Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/cf/mail.eecs.mc b/contrib/sendmail/cf/cf/mail.eecs.mc index b7688e7d061..bf7d4081ccf 100644 --- a/contrib/sendmail/cf/cf/mail.eecs.mc +++ b/contrib/sendmail/cf/cf/mail.eecs.mc @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.eecs.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: mail.eecs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') OSTYPE(ultrix4)dnl DOMAIN(EECS.Berkeley.EDU)dnl MASQUERADE_AS(EECS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/cf/mailspool.cs.mc b/contrib/sendmail/cf/cf/mailspool.cs.mc index 805fc82dcbe..0414e4c3fa8 100644 --- a/contrib/sendmail/cf/cf/mailspool.cs.mc +++ b/contrib/sendmail/cf/cf/mailspool.cs.mc @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mailspool.cs.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: mailspool.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/python.cs.mc b/contrib/sendmail/cf/cf/python.cs.mc index 9e5c31b502d..c3b3e0da0eb 100644 --- a/contrib/sendmail/cf/cf/python.cs.mc +++ b/contrib/sendmail/cf/cf/python.cs.mc @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: python.cs.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: python.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/cf/s2k-osf1.mc b/contrib/sendmail/cf/cf/s2k-osf1.mc index 10f5efb2c35..6ec08feae87 100644 --- a/contrib/sendmail/cf/cf/s2k-osf1.mc +++ b/contrib/sendmail/cf/cf/s2k-osf1.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-osf1.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: s2k-osf1.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') OSTYPE(osf1)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/s2k-ultrix4.mc b/contrib/sendmail/cf/cf/s2k-ultrix4.mc index 8fea7124c0d..4bf49397958 100644 --- a/contrib/sendmail/cf/cf/s2k-ultrix4.mc +++ b/contrib/sendmail/cf/cf/s2k-ultrix4.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-ultrix4.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: s2k-ultrix4.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') OSTYPE(ultrix4)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/submit.cf b/contrib/sendmail/cf/cf/submit.cf index 02acf4203d8..fe909626b4f 100644 --- a/contrib/sendmail/cf/cf/submit.cf +++ b/contrib/sendmail/cf/cf/submit.cf @@ -24,15 +24,15 @@ ###################################################################### ###################################################################### -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### +##### $Id: cfhead.m4,v 8.107 2001/07/22 03:25:37 ca Exp $ ##### +##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### +##### $Id: submit.mc,v 8.6 2002/03/26 03:30:58 ca Exp $ ##### +##### $Id: msp.m4,v 1.32 2002/03/26 22:02:03 ca Exp $ ##### -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### +##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ ##### -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### +##### $Id: proto.m4,v 8.646 2002/05/19 21:22:40 gshapiro Exp $ ##### # level 10 config file format V10/Berkeley @@ -110,7 +110,7 @@ D{MTAHost}[localhost] # Configuration version number -DZ8.12.3/Submit +DZ8.12.4/Submit ############### @@ -949,7 +949,7 @@ R$* $| $* $| $* $@ $>"Basic_check_relay" $1 $| $2 SBasic_check_relay # check for deferred delivery mode -R$* $: < ${deliveryMode} > $1 +R$* $: < $&{deliveryMode} > $1 R< d > $* $@ deferred R< $* > $* $: $2 @@ -968,7 +968,7 @@ R$* $| $* $@ $>"Basic_check_mail" $1 SBasic_check_mail # check for deferred delivery mode -R$* $: < ${deliveryMode} > $1 +R$* $: < $&{deliveryMode} > $1 R< d > $* $@ deferred R< $* > $* $: $2 @@ -1001,6 +1001,7 @@ R$* $: $>CanonAddr $1 canonify sender address and mark it R $* < @ $+ . > $1 < @ $2 > strip trailing dots # handle non-DNS hostnames (*.bitnet, *.decnet, *.uucp, etc) R $* < @ $* $=P > $: $1 < @ $2 $3 > +R $* < @ $j > $: $1 < @ $j > R $* < @ $+ > $: $) > $1 < @ $2 > R> $* < @ $+ > $: <$2> $3 < @ $4 > @@ -1035,7 +1036,7 @@ SBasic_check_rcpt R<> $#error $@ nouser $: "553 User address required" R$@ $#error $@ nouser $: "553 User address required" # check for deferred delivery mode -R$* $: < ${deliveryMode} > $1 +R$* $: < $&{deliveryMode} > $1 R< d > $* $@ deferred R< $* > $* $: $2 @@ -1229,7 +1230,7 @@ R$* $#relay $@ ${MTAHost} $: $1 < @ $j > ### Local and Program Mailer specification ### ################################################## -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### +##### $Id: local.m4,v 8.58 2000/10/26 01:58:29 ca Exp $ ##### # # Envelope sender rewriting @@ -1281,7 +1282,7 @@ Mprog, P=[IPC], F=lmDFMuXk5, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL, D=$z:/, ### SMTP Mailer specification ### ##################################### -##### $Id: submit.cf,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $ ##### +##### $Id: smtp.m4,v 8.64 2001/04/03 01:52:54 gshapiro Exp $ ##### # # common sender and masquerading recipient rewriting diff --git a/contrib/sendmail/cf/cf/submit.mc b/contrib/sendmail/cf/cf/submit.mc index 0ca0128068f..2ab5972eb7a 100644 --- a/contrib/sendmail/cf/cf/submit.mc +++ b/contrib/sendmail/cf/cf/submit.mc @@ -15,7 +15,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: submit.mc,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $') +VERSIONID(`$Id: submit.mc,v 8.6 2002/03/26 03:30:58 ca Exp $') define(`confCF_VERSION', `Submit')dnl define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet diff --git a/contrib/sendmail/cf/cf/tcpproto.mc b/contrib/sendmail/cf/cf/tcpproto.mc index 30495108f2a..969cb71f2ec 100644 --- a/contrib/sendmail/cf/cf/tcpproto.mc +++ b/contrib/sendmail/cf/cf/tcpproto.mc @@ -26,7 +26,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: tcpproto.mc,v 1.1.1.5 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: tcpproto.mc,v 8.14 2000/08/03 15:26:50 ca Exp $') OSTYPE(`unknown') FEATURE(`nouucp', `reject') MAILER(`local') diff --git a/contrib/sendmail/cf/cf/ucbarpa.mc b/contrib/sendmail/cf/cf/ucbarpa.mc index e6a2a64e260..26b2ce095d7 100644 --- a/contrib/sendmail/cf/cf/ucbarpa.mc +++ b/contrib/sendmail/cf/cf/ucbarpa.mc @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: ucbarpa.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: ucbarpa.mc,v 8.12 1999/02/07 07:26:05 gshapiro Exp $') DOMAIN(CS.Berkeley.EDU)dnl OSTYPE(bsd4.4)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/cf/ucbvax.mc b/contrib/sendmail/cf/cf/ucbvax.mc index cdcd2dd8feb..235d9aa25bc 100644 --- a/contrib/sendmail/cf/cf/ucbvax.mc +++ b/contrib/sendmail/cf/cf/ucbvax.mc @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: ucbvax.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: ucbvax.mc,v 8.14 1999/02/07 07:26:05 gshapiro Exp $') OSTYPE(bsd4.3) DOMAIN(CS.Berkeley.EDU) MASQUERADE_AS(CS.Berkeley.EDU) diff --git a/contrib/sendmail/cf/cf/uucpproto.mc b/contrib/sendmail/cf/cf/uucpproto.mc index 9800567c852..134c8f41b9e 100644 --- a/contrib/sendmail/cf/cf/uucpproto.mc +++ b/contrib/sendmail/cf/cf/uucpproto.mc @@ -26,7 +26,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: uucpproto.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: uucpproto.mc,v 8.15 1999/02/07 07:26:05 gshapiro Exp $') OSTYPE(unknown) FEATURE(promiscuous_relay)dnl FEATURE(accept_unresolvable_domains)dnl diff --git a/contrib/sendmail/cf/cf/vangogh.cs.mc b/contrib/sendmail/cf/cf/vangogh.cs.mc index ea6977bdc25..3fb48e131e7 100644 --- a/contrib/sendmail/cf/cf/vangogh.cs.mc +++ b/contrib/sendmail/cf/cf/vangogh.cs.mc @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: vangogh.cs.mc,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: vangogh.cs.mc,v 8.13 1999/02/07 07:26:05 gshapiro Exp $') DOMAIN(CS.Berkeley.EDU)dnl OSTYPE(bsd4.4)dnl MAILER(local)dnl diff --git a/contrib/sendmail/cf/domain/Berkeley.EDU.m4 b/contrib/sendmail/cf/domain/Berkeley.EDU.m4 index 891228f4e67..d0fee24763e 100644 --- a/contrib/sendmail/cf/domain/Berkeley.EDU.m4 +++ b/contrib/sendmail/cf/domain/Berkeley.EDU.m4 @@ -12,7 +12,7 @@ divert(-1) # # divert(0) -VERSIONID(`$Id: Berkeley.EDU.m4,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: Berkeley.EDU.m4,v 8.17 1999/02/07 07:26:06 gshapiro Exp $') DOMAIN(berkeley-only)dnl define(`BITNET_RELAY', `bitnet-relay.Berkeley.EDU')dnl define(`UUCP_RELAY', `uucp-relay.Berkeley.EDU')dnl diff --git a/contrib/sendmail/cf/domain/CS.Berkeley.EDU.m4 b/contrib/sendmail/cf/domain/CS.Berkeley.EDU.m4 index 876f111e20d..181ced1451c 100644 --- a/contrib/sendmail/cf/domain/CS.Berkeley.EDU.m4 +++ b/contrib/sendmail/cf/domain/CS.Berkeley.EDU.m4 @@ -12,7 +12,7 @@ divert(-1) # # divert(0) -VERSIONID(`$Id: CS.Berkeley.EDU.m4,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: CS.Berkeley.EDU.m4,v 8.10 1999/02/07 07:26:06 gshapiro Exp $') DOMAIN(Berkeley.EDU)dnl HACK(cssubdomain)dnl define(`confUSERDB_SPEC', diff --git a/contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m4 b/contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m4 index c2ff476d613..41a21ade2e1 100644 --- a/contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m4 +++ b/contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m4 @@ -12,6 +12,6 @@ divert(-1) # # divert(0) -VERSIONID(`$Id: EECS.Berkeley.EDU.m4,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: EECS.Berkeley.EDU.m4,v 8.10 1999/02/07 07:26:06 gshapiro Exp $') DOMAIN(Berkeley.EDU)dnl MASQUERADE_AS(EECS.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m4 b/contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m4 index 6de394e4029..9a019ce8b4d 100644 --- a/contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m4 +++ b/contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m4 @@ -12,6 +12,6 @@ divert(-1) # # divert(0) -VERSIONID(`$Id: S2K.Berkeley.EDU.m4,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: S2K.Berkeley.EDU.m4,v 8.10 1999/02/07 07:26:06 gshapiro Exp $') DOMAIN(CS.Berkeley.EDU)dnl MASQUERADE_AS(postgres.Berkeley.EDU)dnl diff --git a/contrib/sendmail/cf/domain/berkeley-only.m4 b/contrib/sendmail/cf/domain/berkeley-only.m4 index 8fbe90a946f..b9a73b9b042 100644 --- a/contrib/sendmail/cf/domain/berkeley-only.m4 +++ b/contrib/sendmail/cf/domain/berkeley-only.m4 @@ -12,7 +12,7 @@ divert(-1) # # divert(0) -VERSIONID(`$Id: berkeley-only.m4,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: unspecified-domain.m4,v 8.10 1999/02/07 07:26:07 gshapiro Exp $') errprint(`*** ERROR: You are trying to use the Berkeley sample configuration') errprint(` files outside of the Computer Science Division at Berkeley.') errprint(` The configuration (.mc) files must be customized to reference') diff --git a/contrib/sendmail/cf/domain/generic.m4 b/contrib/sendmail/cf/domain/generic.m4 index 63176364e3f..caa5a8845fa 100644 --- a/contrib/sendmail/cf/domain/generic.m4 +++ b/contrib/sendmail/cf/domain/generic.m4 @@ -20,7 +20,7 @@ divert(-1) # files. # divert(0) -VERSIONID(`$Id: generic.m4,v 1.1.1.3 2000/08/12 21:55:36 gshapiro Exp $') +VERSIONID(`$Id: generic.m4,v 8.15 1999/04/04 00:51:09 ca Exp $') define(`confFORWARD_PATH', `$z/.forward.$w+$h:$z/.forward+$h:$z/.forward.$w:$z/.forward')dnl define(`confMAX_HEADERS_LENGTH', `32768')dnl FEATURE(`redirect')dnl diff --git a/contrib/sendmail/cf/feature/accept_unqualified_senders.m4 b/contrib/sendmail/cf/feature/accept_unqualified_senders.m4 index df05af77263..4c39884935b 100644 --- a/contrib/sendmail/cf/feature/accept_unqualified_senders.m4 +++ b/contrib/sendmail/cf/feature/accept_unqualified_senders.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: accept_unqualified_senders.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: accept_unqualified_senders.m4,v 8.6 1999/02/07 07:26:07 gshapiro Exp $') divert(-1) define(`_ACCEPT_UNQUALIFIED_SENDERS_', 1) diff --git a/contrib/sendmail/cf/feature/accept_unresolvable_domains.m4 b/contrib/sendmail/cf/feature/accept_unresolvable_domains.m4 index 6b1a65d753a..a54507c7549 100644 --- a/contrib/sendmail/cf/feature/accept_unresolvable_domains.m4 +++ b/contrib/sendmail/cf/feature/accept_unresolvable_domains.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: accept_unresolvable_domains.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: accept_unresolvable_domains.m4,v 8.10 1999/02/07 07:26:07 gshapiro Exp $') divert(-1) define(`_ACCEPT_UNRESOLVABLE_DOMAINS_', 1) diff --git a/contrib/sendmail/cf/feature/access_db.m4 b/contrib/sendmail/cf/feature/access_db.m4 index 9745b1da1c2..796cc13219d 100644 --- a/contrib/sendmail/cf/feature/access_db.m4 +++ b/contrib/sendmail/cf/feature/access_db.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: access_db.m4,v 1.1.1.5 2002/04/10 03:04:57 gshapiro Exp $') +VERSIONID(`$Id: access_db.m4,v 8.24 2002/03/06 21:50:25 ca Exp $') divert(-1) define(`_ACCESS_TABLE_', `') diff --git a/contrib/sendmail/cf/feature/allmasquerade.m4 b/contrib/sendmail/cf/feature/allmasquerade.m4 index 6630d079187..aa264f961d2 100644 --- a/contrib/sendmail/cf/feature/allmasquerade.m4 +++ b/contrib/sendmail/cf/feature/allmasquerade.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: allmasquerade.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: allmasquerade.m4,v 8.13 2000/09/12 22:00:53 ca Exp $') divert(-1) ifdef(`_MAILER_local_', diff --git a/contrib/sendmail/cf/feature/always_add_domain.m4 b/contrib/sendmail/cf/feature/always_add_domain.m4 index 9c8dc1d1537..a29956a635b 100644 --- a/contrib/sendmail/cf/feature/always_add_domain.m4 +++ b/contrib/sendmail/cf/feature/always_add_domain.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: always_add_domain.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: always_add_domain.m4,v 8.11 2000/09/12 22:00:53 ca Exp $') divert(-1) ifdef(`_MAILER_local_', diff --git a/contrib/sendmail/cf/feature/authinfo.m4 b/contrib/sendmail/cf/feature/authinfo.m4 index ec2e67a243f..3533d306794 100644 --- a/contrib/sendmail/cf/feature/authinfo.m4 +++ b/contrib/sendmail/cf/feature/authinfo.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: authinfo.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: authinfo.m4,v 1.7 2001/03/16 00:51:25 gshapiro Exp $') divert(-1) define(`_AUTHINFO_TABLE_', `') diff --git a/contrib/sendmail/cf/feature/bestmx_is_local.m4 b/contrib/sendmail/cf/feature/bestmx_is_local.m4 index 7b07b3fd8db..911d2b54219 100644 --- a/contrib/sendmail/cf/feature/bestmx_is_local.m4 +++ b/contrib/sendmail/cf/feature/bestmx_is_local.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: bestmx_is_local.m4,v 1.1.1.5 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: bestmx_is_local.m4,v 8.26 2000/09/17 17:30:00 gshapiro Exp $') divert(-1) define(`_BESTMX_IS_LOCAL_', _ARG_) diff --git a/contrib/sendmail/cf/feature/bitdomain.m4 b/contrib/sendmail/cf/feature/bitdomain.m4 index ba5adb2e072..3232be80d31 100644 --- a/contrib/sendmail/cf/feature/bitdomain.m4 +++ b/contrib/sendmail/cf/feature/bitdomain.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: bitdomain.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: bitdomain.m4,v 8.28 2001/03/16 00:51:25 gshapiro Exp $') divert(-1) define(`_BITDOMAIN_TABLE_', `') diff --git a/contrib/sendmail/cf/feature/blacklist_recipients.m4 b/contrib/sendmail/cf/feature/blacklist_recipients.m4 index 8480fb28fbf..d6218d11940 100644 --- a/contrib/sendmail/cf/feature/blacklist_recipients.m4 +++ b/contrib/sendmail/cf/feature/blacklist_recipients.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: blacklist_recipients.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: blacklist_recipients.m4,v 8.13 1999/04/02 02:25:13 gshapiro Exp $') divert(-1) ifdef(`_ACCESS_TABLE_', diff --git a/contrib/sendmail/cf/feature/compat_check.m4 b/contrib/sendmail/cf/feature/compat_check.m4 index 3aa4873cfe9..a6125edf251 100644 --- a/contrib/sendmail/cf/feature/compat_check.m4 +++ b/contrib/sendmail/cf/feature/compat_check.m4 @@ -9,7 +9,7 @@ divert(-1) # # divert(0) -VERSIONID(`$Id: compat_check.m4,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $') +VERSIONID(`$Id: compat_check.m4,v 1.4 2002/02/26 22:15:31 gshapiro Exp $') divert(-1) ifdef(`_ACCESS_TABLE_', `', `errprint(`FEATURE(`compat_check') requires FEATURE(`access_db') diff --git a/contrib/sendmail/cf/feature/delay_checks.m4 b/contrib/sendmail/cf/feature/delay_checks.m4 index ec95868399b..151df956668 100644 --- a/contrib/sendmail/cf/feature/delay_checks.m4 +++ b/contrib/sendmail/cf/feature/delay_checks.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: delay_checks.m4,v 1.1.1.2 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: delay_checks.m4,v 8.8 2000/12/05 18:50:45 ca Exp $') divert(-1) define(`_DELAY_CHECKS_', 1) diff --git a/contrib/sendmail/cf/feature/dnsbl.m4 b/contrib/sendmail/cf/feature/dnsbl.m4 index 5ffc6a36dac..7389646bec1 100644 --- a/contrib/sendmail/cf/feature/dnsbl.m4 +++ b/contrib/sendmail/cf/feature/dnsbl.m4 @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -9,16 +9,18 @@ divert(-1) # # +dnl 8.13: ifdef(`DNSBL_MAP', `', `define(`DNSBL_MAP', `dns -R A')') +ifdef(`DNSBL_MAP', `', `define(`DNSBL_MAP', `host')') divert(0) ifdef(`_DNSBL_R_',`dnl',`dnl -VERSIONID(`$Id: dnsbl.m4,v 1.1.1.3 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: dnsbl.m4,v 8.28 2002/05/19 21:22:40 gshapiro Exp $') define(`_DNSBL_R_',`') LOCAL_CONFIG # map for DNS based blacklist lookups -Kdnsbl host -Tifdef(`DNSBL_MAP_OPT',` DNSBL_MAP_OPT')') +Kdnsbl DNSBL_MAP -Tifdef(`DNSBL_MAP_OPT',` DNSBL_MAP_OPT')') divert(-1) define(`_DNSBL_SRV_', `ifelse(len(X`'_ARG_),`1',`blackholes.mail-abuse.org',_ARG_)')dnl -define(`_DNSBL_MSG_', `ifelse(len(X`'_ARG2_),`1',`"550 Mail from " $`'&{client_addr} " refused by blackhole site '_DNSBL_SRV_`"',`_ARG2_')')dnl +define(`_DNSBL_MSG_', `ifelse(len(X`'_ARG2_),`1',`"550 Rejected: " $`'&{client_addr} " listed at '_DNSBL_SRV_`"',`_ARG2_')')dnl define(`_DNSBL_MSG_TMP_', `ifelse(_ARG3_,`t',`"451 Temporary lookup failure of " $`'&{client_addr} " at '_DNSBL_SRV_`"',`_ARG3_')')dnl divert(8) # DNS based IP address spam list _DNSBL_SRV_ diff --git a/contrib/sendmail/cf/feature/domaintable.m4 b/contrib/sendmail/cf/feature/domaintable.m4 index 2f589f06225..b04b4971b86 100644 --- a/contrib/sendmail/cf/feature/domaintable.m4 +++ b/contrib/sendmail/cf/feature/domaintable.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: domaintable.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: domaintable.m4,v 8.22 2001/03/16 00:51:25 gshapiro Exp $') divert(-1) define(`_DOMAIN_TABLE_', `') diff --git a/contrib/sendmail/cf/feature/enhdnsbl.m4 b/contrib/sendmail/cf/feature/enhdnsbl.m4 index 64f27aeeb72..c713153b637 100644 --- a/contrib/sendmail/cf/feature/enhdnsbl.m4 +++ b/contrib/sendmail/cf/feature/enhdnsbl.m4 @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -11,7 +11,7 @@ divert(-1) divert(0) ifdef(`_EDNSBL_R_',`dnl',`dnl -VERSIONID(`$Id: enhdnsbl.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: enhdnsbl.m4,v 1.9 2002/05/19 21:27:29 gshapiro Exp $') LOCAL_CONFIG define(`_EDNSBL_R_',`')dnl # map for enhanced DNS based blacklist lookups @@ -19,7 +19,7 @@ Kednsbl dns -R A -a. -T -r`'ifdef(`EDNSBL_TO',`EDNSBL_TO',`5') ') divert(-1) define(`_EDNSBL_SRV_', `ifelse(len(X`'_ARG_),`1',`blackholes.mail-abuse.org',_ARG_)')dnl -define(`_EDNSBL_MSG_', `ifelse(len(X`'_ARG2_),`1',`"550 Mail from " $`'&{client_addr} " refused by blackhole site '_EDNSBL_SRV_`"',`_ARG2_')')dnl +define(`_EDNSBL_MSG_', `ifelse(len(X`'_ARG2_),`1',`"550 Rejected: " $`'&{client_addr} " listed at '_EDNSBL_SRV_`"',`_ARG2_')')dnl define(`_EDNSBL_MSG_TMP_', `ifelse(_ARG3_,`t',`"451 Temporary lookup failure of " $`'&{client_addr} " at '_EDNSBL_SRV_`"',`_ARG3_')')dnl define(`_EDNSBL_MATCH_', `ifelse(len(X`'_ARG4_),`1',`$`'+',_ARG4_)')dnl divert(8) diff --git a/contrib/sendmail/cf/feature/generics_entire_domain.m4 b/contrib/sendmail/cf/feature/generics_entire_domain.m4 index 6fdae52d5b4..fab586af110 100644 --- a/contrib/sendmail/cf/feature/generics_entire_domain.m4 +++ b/contrib/sendmail/cf/feature/generics_entire_domain.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: generics_entire_domain.m4,v 1.1.1.1 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: generics_entire_domain.m4,v 8.1 1999/03/16 00:43:05 ca Exp $') divert(-1) define(`_GENERICS_ENTIRE_DOMAIN_', 1) diff --git a/contrib/sendmail/cf/feature/genericstable.m4 b/contrib/sendmail/cf/feature/genericstable.m4 index d553998aef4..c20022a9185 100644 --- a/contrib/sendmail/cf/feature/genericstable.m4 +++ b/contrib/sendmail/cf/feature/genericstable.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: genericstable.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: genericstable.m4,v 8.21 2001/03/16 00:51:26 gshapiro Exp $') divert(-1) define(`_GENERICS_TABLE_', `') diff --git a/contrib/sendmail/cf/feature/ldap_routing.m4 b/contrib/sendmail/cf/feature/ldap_routing.m4 index 7c0241d367c..72a6e2643da 100644 --- a/contrib/sendmail/cf/feature/ldap_routing.m4 +++ b/contrib/sendmail/cf/feature/ldap_routing.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: ldap_routing.m4,v 1.1.1.3 2002/04/10 03:04:57 gshapiro Exp $') +VERSIONID(`$Id: ldap_routing.m4,v 8.10 2002/03/27 22:17:43 ca Exp $') divert(-1) # Check first two arguments. If they aren't set, may need to warn in proto.m4 diff --git a/contrib/sendmail/cf/feature/limited_masquerade.m4 b/contrib/sendmail/cf/feature/limited_masquerade.m4 index 1e0fc0b32ff..f86ebd4567c 100644 --- a/contrib/sendmail/cf/feature/limited_masquerade.m4 +++ b/contrib/sendmail/cf/feature/limited_masquerade.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: limited_masquerade.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: limited_masquerade.m4,v 8.9 1999/02/07 07:26:09 gshapiro Exp $') divert(-1) define(`_LIMITED_MASQUERADE_', 1) diff --git a/contrib/sendmail/cf/feature/local_lmtp.m4 b/contrib/sendmail/cf/feature/local_lmtp.m4 index 1a636549684..f3c371b9384 100644 --- a/contrib/sendmail/cf/feature/local_lmtp.m4 +++ b/contrib/sendmail/cf/feature/local_lmtp.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: local_lmtp.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: local_lmtp.m4,v 8.16 2000/08/18 18:58:45 ca Exp $') divert(-1) ifdef(`_MAILER_local_', diff --git a/contrib/sendmail/cf/feature/local_no_masquerade.m4 b/contrib/sendmail/cf/feature/local_no_masquerade.m4 index 4d9d4cf5611..de2300f2f0e 100644 --- a/contrib/sendmail/cf/feature/local_no_masquerade.m4 +++ b/contrib/sendmail/cf/feature/local_no_masquerade.m4 @@ -9,7 +9,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: local_no_masquerade.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: local_no_masquerade.m4,v 1.2 2000/08/03 15:54:59 ca Exp $') divert(-1) ifdef(`_MAILER_local_', diff --git a/contrib/sendmail/cf/feature/local_procmail.m4 b/contrib/sendmail/cf/feature/local_procmail.m4 index c567df17745..29bb98023e9 100644 --- a/contrib/sendmail/cf/feature/local_procmail.m4 +++ b/contrib/sendmail/cf/feature/local_procmail.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: local_procmail.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: local_procmail.m4,v 8.21 1999/11/18 05:06:23 ca Exp $') divert(-1) ifdef(`_MAILER_local_', diff --git a/contrib/sendmail/cf/feature/lookupdotdomain.m4 b/contrib/sendmail/cf/feature/lookupdotdomain.m4 index 5de41fbbe33..f8c2a31f302 100644 --- a/contrib/sendmail/cf/feature/lookupdotdomain.m4 +++ b/contrib/sendmail/cf/feature/lookupdotdomain.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: lookupdotdomain.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: lookupdotdomain.m4,v 1.1 2000/04/13 22:32:49 ca Exp $') divert(-1) ifdef(`_ACCESS_TABLE_', diff --git a/contrib/sendmail/cf/feature/loose_relay_check.m4 b/contrib/sendmail/cf/feature/loose_relay_check.m4 index e6261c25956..abd1b9c9ff6 100644 --- a/contrib/sendmail/cf/feature/loose_relay_check.m4 +++ b/contrib/sendmail/cf/feature/loose_relay_check.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: loose_relay_check.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: loose_relay_check.m4,v 8.6 1999/02/07 07:26:10 gshapiro Exp $') divert(-1) define(`_LOOSE_RELAY_CHECK_', 1) diff --git a/contrib/sendmail/cf/feature/mailertable.m4 b/contrib/sendmail/cf/feature/mailertable.m4 index 12359883ade..e4dcd701cd4 100644 --- a/contrib/sendmail/cf/feature/mailertable.m4 +++ b/contrib/sendmail/cf/feature/mailertable.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: mailertable.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: mailertable.m4,v 8.23 2001/03/16 00:51:26 gshapiro Exp $') divert(-1) define(`_MAILER_TABLE_', `') diff --git a/contrib/sendmail/cf/feature/masquerade_entire_domain.m4 b/contrib/sendmail/cf/feature/masquerade_entire_domain.m4 index aaf5e3d8fdf..e2bcc650616 100644 --- a/contrib/sendmail/cf/feature/masquerade_entire_domain.m4 +++ b/contrib/sendmail/cf/feature/masquerade_entire_domain.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: masquerade_entire_domain.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: masquerade_entire_domain.m4,v 8.9 1999/02/07 07:26:10 gshapiro Exp $') divert(-1) define(`_MASQUERADE_ENTIRE_DOMAIN_', 1) diff --git a/contrib/sendmail/cf/feature/masquerade_envelope.m4 b/contrib/sendmail/cf/feature/masquerade_envelope.m4 index 488c5a068f2..74d3aa05609 100644 --- a/contrib/sendmail/cf/feature/masquerade_envelope.m4 +++ b/contrib/sendmail/cf/feature/masquerade_envelope.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: masquerade_envelope.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: masquerade_envelope.m4,v 8.9 1999/02/07 07:26:10 gshapiro Exp $') divert(-1) define(`_MASQUERADE_ENVELOPE_', 1) diff --git a/contrib/sendmail/cf/feature/msp.m4 b/contrib/sendmail/cf/feature/msp.m4 index eebaae64a30..f4bc64a9d73 100644 --- a/contrib/sendmail/cf/feature/msp.m4 +++ b/contrib/sendmail/cf/feature/msp.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: msp.m4,v 1.1.1.2 2002/04/10 03:04:57 gshapiro Exp $') +VERSIONID(`$Id: msp.m4,v 1.32 2002/03/26 22:02:03 ca Exp $') divert(-1) undefine(`ALIAS_FILE') define(`confDELIVERY_MODE', `i') diff --git a/contrib/sendmail/cf/feature/no_default_msa.m4 b/contrib/sendmail/cf/feature/no_default_msa.m4 index e9b1934b77a..5a053399fc3 100644 --- a/contrib/sendmail/cf/feature/no_default_msa.m4 +++ b/contrib/sendmail/cf/feature/no_default_msa.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: no_default_msa.m4,v 1.1.1.3 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $') divert(-1) define(`_NO_MSA_', `1') diff --git a/contrib/sendmail/cf/feature/nocanonify.m4 b/contrib/sendmail/cf/feature/nocanonify.m4 index fec06adcd88..05baa7a47b4 100644 --- a/contrib/sendmail/cf/feature/nocanonify.m4 +++ b/contrib/sendmail/cf/feature/nocanonify.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: nocanonify.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: nocanonify.m4,v 8.12 1999/08/28 00:42:01 ca Exp $') divert(-1) define(`_NO_CANONIFY_', 1) diff --git a/contrib/sendmail/cf/feature/nodns.m4 b/contrib/sendmail/cf/feature/nodns.m4 index e284ca340df..c5acadf7ece 100644 --- a/contrib/sendmail/cf/feature/nodns.m4 +++ b/contrib/sendmail/cf/feature/nodns.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: nodns.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: nodns.m4,v 8.14 1999/07/22 17:55:35 gshapiro Exp $') divert(-1) undefine(`confBIND_OPTS')dnl diff --git a/contrib/sendmail/cf/feature/notsticky.m4 b/contrib/sendmail/cf/feature/notsticky.m4 index b37153c42ec..1cecca5f13e 100644 --- a/contrib/sendmail/cf/feature/notsticky.m4 +++ b/contrib/sendmail/cf/feature/notsticky.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: notsticky.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: notsticky.m4,v 8.11 1999/02/07 07:26:11 gshapiro Exp $') # # This is now the default. Use ``FEATURE(stickyhost)'' if you want # the old default behaviour. diff --git a/contrib/sendmail/cf/feature/nouucp.m4 b/contrib/sendmail/cf/feature/nouucp.m4 index 6b28a823cce..a03104964dd 100644 --- a/contrib/sendmail/cf/feature/nouucp.m4 +++ b/contrib/sendmail/cf/feature/nouucp.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: nouucp.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: nouucp.m4,v 8.13 1999/11/24 18:37:07 ca Exp $') divert(-1) ifelse(defn(`_ARG_'), `', diff --git a/contrib/sendmail/cf/feature/nullclient.m4 b/contrib/sendmail/cf/feature/nullclient.m4 index a6364c1f5e1..8f35ca1c167 100644 --- a/contrib/sendmail/cf/feature/nullclient.m4 +++ b/contrib/sendmail/cf/feature/nullclient.m4 @@ -22,7 +22,7 @@ ifelse(defn(`_ARG_'), `', `errprint(`Feature "nullclient" requires argument')', # divert(0) -VERSIONID(`$Id: nullclient.m4,v 1.1.1.5 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: nullclient.m4,v 8.24 2000/09/17 17:30:00 gshapiro Exp $') divert(-1) undefine(`ALIAS_FILE') diff --git a/contrib/sendmail/cf/feature/preserve_local_plus_detail.m4 b/contrib/sendmail/cf/feature/preserve_local_plus_detail.m4 index 1e836877fb5..bb603a607ba 100644 --- a/contrib/sendmail/cf/feature/preserve_local_plus_detail.m4 +++ b/contrib/sendmail/cf/feature/preserve_local_plus_detail.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: preserve_local_plus_detail.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: preserve_local_plus_detail.m4,v 8.1 2000/04/10 05:48:05 gshapiro Exp $') divert(-1) define(`_PRESERVE_LOCAL_PLUS_DETAIL_', `1') diff --git a/contrib/sendmail/cf/feature/preserve_luser_host.m4 b/contrib/sendmail/cf/feature/preserve_luser_host.m4 index e301b51ab30..837da99febc 100644 --- a/contrib/sendmail/cf/feature/preserve_luser_host.m4 +++ b/contrib/sendmail/cf/feature/preserve_luser_host.m4 @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 2000, 2002 Sendmail, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -10,10 +10,11 @@ divert(-1) # divert(0) -VERSIONID(`$Id: preserve_luser_host.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: preserve_luser_host.m4,v 1.3 2002/04/14 13:22:58 ca Exp $') divert(-1) ifdef(`LUSER_RELAY', `', `errprint(`*** LUSER_RELAY should be defined before FEATURE(`preserve_luser_host') ')') define(`_PRESERVE_LUSER_HOST_', `1') +define(`_NEED_MACRO_MAP_', `1') diff --git a/contrib/sendmail/cf/feature/promiscuous_relay.m4 b/contrib/sendmail/cf/feature/promiscuous_relay.m4 index 575cbfb349a..17cb7d1d8b0 100644 --- a/contrib/sendmail/cf/feature/promiscuous_relay.m4 +++ b/contrib/sendmail/cf/feature/promiscuous_relay.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: promiscuous_relay.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: promiscuous_relay.m4,v 8.12 2001/02/06 17:14:35 ca Exp $') divert(-1) define(`_PROMISCUOUS_RELAY_', 1) diff --git a/contrib/sendmail/cf/feature/queuegroup.m4 b/contrib/sendmail/cf/feature/queuegroup.m4 index 82cdd5a87eb..06715a0f3f8 100644 --- a/contrib/sendmail/cf/feature/queuegroup.m4 +++ b/contrib/sendmail/cf/feature/queuegroup.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: queuegroup.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: queuegroup.m4,v 1.4 2001/03/28 00:39:39 ca Exp $') divert(-1) ifdef(`_ACCESS_TABLE_', `', diff --git a/contrib/sendmail/cf/feature/redirect.m4 b/contrib/sendmail/cf/feature/redirect.m4 index 9ed2e461e21..e167865efef 100644 --- a/contrib/sendmail/cf/feature/redirect.m4 +++ b/contrib/sendmail/cf/feature/redirect.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: redirect.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: redirect.m4,v 8.15 1999/08/06 01:47:36 gshapiro Exp $') divert(-1) LOCAL_RULE_0 diff --git a/contrib/sendmail/cf/feature/relay_based_on_MX.m4 b/contrib/sendmail/cf/feature/relay_based_on_MX.m4 index f2bc12bddb5..872680a480f 100644 --- a/contrib/sendmail/cf/feature/relay_based_on_MX.m4 +++ b/contrib/sendmail/cf/feature/relay_based_on_MX.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: relay_based_on_MX.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: relay_based_on_MX.m4,v 8.11 1999/04/02 02:25:13 gshapiro Exp $') divert(-1) define(`_RELAY_MX_SERVED_', 1) diff --git a/contrib/sendmail/cf/feature/relay_entire_domain.m4 b/contrib/sendmail/cf/feature/relay_entire_domain.m4 index 4c134c35f87..a720b167f27 100644 --- a/contrib/sendmail/cf/feature/relay_entire_domain.m4 +++ b/contrib/sendmail/cf/feature/relay_entire_domain.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: relay_entire_domain.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: relay_entire_domain.m4,v 8.10 1999/02/07 07:26:12 gshapiro Exp $') divert(-1) define(`_RELAY_ENTIRE_DOMAIN_', 1) diff --git a/contrib/sendmail/cf/feature/relay_hosts_only.m4 b/contrib/sendmail/cf/feature/relay_hosts_only.m4 index 73f744cb724..867d4eda640 100644 --- a/contrib/sendmail/cf/feature/relay_hosts_only.m4 +++ b/contrib/sendmail/cf/feature/relay_hosts_only.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: relay_hosts_only.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: relay_hosts_only.m4,v 8.10 1999/02/07 07:26:12 gshapiro Exp $') divert(-1) define(`_RELAY_HOSTS_ONLY_', 1) diff --git a/contrib/sendmail/cf/feature/relay_local_from.m4 b/contrib/sendmail/cf/feature/relay_local_from.m4 index 343712b250a..9858eb8e3b9 100644 --- a/contrib/sendmail/cf/feature/relay_local_from.m4 +++ b/contrib/sendmail/cf/feature/relay_local_from.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: relay_local_from.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: relay_local_from.m4,v 8.6 2001/02/06 15:55:21 ca Exp $') divert(-1) define(`_RELAY_LOCAL_FROM_', 1) diff --git a/contrib/sendmail/cf/feature/relay_mail_from.m4 b/contrib/sendmail/cf/feature/relay_mail_from.m4 index 13eb764352c..44bcbd670ec 100644 --- a/contrib/sendmail/cf/feature/relay_mail_from.m4 +++ b/contrib/sendmail/cf/feature/relay_mail_from.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: relay_mail_from.m4,v 1.1.1.2 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: relay_mail_from.m4,v 8.3 2001/02/06 16:07:12 ca Exp $') divert(-1) ifdef(`_ACCESS_TABLE_', diff --git a/contrib/sendmail/cf/feature/smrsh.m4 b/contrib/sendmail/cf/feature/smrsh.m4 index 7399fecce09..2159ff8580a 100644 --- a/contrib/sendmail/cf/feature/smrsh.m4 +++ b/contrib/sendmail/cf/feature/smrsh.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: smrsh.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: smrsh.m4,v 8.14 1999/11/18 05:06:23 ca Exp $') divert(-1) ifdef(`_MAILER_local_', diff --git a/contrib/sendmail/cf/feature/stickyhost.m4 b/contrib/sendmail/cf/feature/stickyhost.m4 index 754943db69c..1e95be44bcc 100644 --- a/contrib/sendmail/cf/feature/stickyhost.m4 +++ b/contrib/sendmail/cf/feature/stickyhost.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: stickyhost.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: stickyhost.m4,v 8.9 1999/02/07 07:26:13 gshapiro Exp $') divert(-1) define(`_STICKY_LOCAL_DOMAIN_', 1) diff --git a/contrib/sendmail/cf/feature/use_ct_file.m4 b/contrib/sendmail/cf/feature/use_ct_file.m4 index 2fc5c2cbcf4..9e372ec567c 100644 --- a/contrib/sendmail/cf/feature/use_ct_file.m4 +++ b/contrib/sendmail/cf/feature/use_ct_file.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: use_ct_file.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: use_ct_file.m4,v 8.11 2001/08/26 20:58:57 gshapiro Exp $') divert(-1) # if defined, the sendmail.cf will read the /etc/mail/trusted-users file to diff --git a/contrib/sendmail/cf/feature/use_cw_file.m4 b/contrib/sendmail/cf/feature/use_cw_file.m4 index a62c9d3c427..7058cab1417 100644 --- a/contrib/sendmail/cf/feature/use_cw_file.m4 +++ b/contrib/sendmail/cf/feature/use_cw_file.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: use_cw_file.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: use_cw_file.m4,v 8.11 2001/08/26 20:58:57 gshapiro Exp $') divert(-1) # if defined, the sendmail.cf will read the /etc/mail/local-host-names file diff --git a/contrib/sendmail/cf/feature/uucpdomain.m4 b/contrib/sendmail/cf/feature/uucpdomain.m4 index 1f77deaa25e..4d23229135f 100644 --- a/contrib/sendmail/cf/feature/uucpdomain.m4 +++ b/contrib/sendmail/cf/feature/uucpdomain.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: uucpdomain.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: uucpdomain.m4,v 8.27 2001/03/16 00:51:26 gshapiro Exp $') divert(-1) define(`_UUDOMAIN_TABLE_', `') diff --git a/contrib/sendmail/cf/feature/virtuser_entire_domain.m4 b/contrib/sendmail/cf/feature/virtuser_entire_domain.m4 index 00f8211781f..5a1d9f0e9fa 100644 --- a/contrib/sendmail/cf/feature/virtuser_entire_domain.m4 +++ b/contrib/sendmail/cf/feature/virtuser_entire_domain.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: virtuser_entire_domain.m4,v 1.1.1.1 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: virtuser_entire_domain.m4,v 8.2 1999/03/16 00:43:05 ca Exp $') divert(-1) define(`_VIRTUSER_ENTIRE_DOMAIN_', 1) diff --git a/contrib/sendmail/cf/feature/virtusertable.m4 b/contrib/sendmail/cf/feature/virtusertable.m4 index 981e5acdcc2..d9c628f5fba 100644 --- a/contrib/sendmail/cf/feature/virtusertable.m4 +++ b/contrib/sendmail/cf/feature/virtusertable.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: virtusertable.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: virtusertable.m4,v 8.21 2001/03/16 00:51:26 gshapiro Exp $') divert(-1) define(`_VIRTUSER_TABLE_', `') diff --git a/contrib/sendmail/cf/hack/cssubdomain.m4 b/contrib/sendmail/cf/hack/cssubdomain.m4 index b258b2e9f44..9b0e76a2eb4 100644 --- a/contrib/sendmail/cf/hack/cssubdomain.m4 +++ b/contrib/sendmail/cf/hack/cssubdomain.m4 @@ -12,7 +12,7 @@ divert(-1) # # divert(0) -VERSIONID(`$Id: cssubdomain.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $') +VERSIONID(`$Id: cssubdomain.m4,v 8.9 1999/02/07 07:26:14 gshapiro Exp $') divert(2) # find possible (old & new) versions of our name via short circuit hack diff --git a/contrib/sendmail/cf/m4/cf.m4 b/contrib/sendmail/cf/m4/cf.m4 index ba960594be3..4f5712b1df8 100644 --- a/contrib/sendmail/cf/m4/cf.m4 +++ b/contrib/sendmail/cf/m4/cf.m4 @@ -26,4 +26,4 @@ ifdef(`_CF_DIR_', `', divert(0)dnl ifdef(`OSTYPE', `dnl', `include(_CF_DIR_`'m4/cfhead.m4)dnl -VERSIONID(`$Id: cf.m4,v 1.1.1.3 2000/08/12 21:55:37 gshapiro Exp $')') +VERSIONID(`$Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $')') diff --git a/contrib/sendmail/cf/m4/cfhead.m4 b/contrib/sendmail/cf/m4/cfhead.m4 index c25680ca06d..708a095dcc7 100644 --- a/contrib/sendmail/cf/m4/cfhead.m4 +++ b/contrib/sendmail/cf/m4/cfhead.m4 @@ -301,4 +301,4 @@ define(`confMILTER_MACROS_ENVRCPT', ``{rcpt_mailer}, {rcpt_host}, {rcpt_addr}'') divert(0)dnl -VERSIONID(`$Id: cfhead.m4,v 1.1.1.7 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: cfhead.m4,v 8.107 2001/07/22 03:25:37 ca Exp $') diff --git a/contrib/sendmail/cf/m4/proto.m4 b/contrib/sendmail/cf/m4/proto.m4 index 51bf84e7775..ab8b457028f 100644 --- a/contrib/sendmail/cf/m4/proto.m4 +++ b/contrib/sendmail/cf/m4/proto.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: proto.m4,v 1.1.1.11 2002/04/10 03:04:58 gshapiro Exp $') +VERSIONID(`$Id: proto.m4,v 8.646 2002/05/19 21:22:40 gshapiro Exp $') # level CF_LEVEL config file format V`'CF_LEVEL/ifdef(`VENDOR_NAME', `VENDOR_NAME', `Berkeley') @@ -1057,8 +1057,9 @@ R<@> $+ + $+ < @ $+ . > $: < $(virtuser + + @ $3 $@ $1 $@ $2 $@ +$2 $: @ $) > $1 dnl +*@domain R<@> $+ + $* < @ $+ . > $: < $(virtuser + * @ $3 $@ $1 $@ $2 $@ +$2 $: @ $) > $1 + $2 < @ $3 . > dnl @domain if +detail exists -R<@> $+ + $* < @ $+ . > $: < $(virtuser @ $3 $@ $1 $@ $2 $@ +$2 $: @ $) > $1 + $2 < @ $3 . > -dnl without +detail (or no match) +dnl if no match, change marker to prevent a second @domain lookup +R<@> $+ + $* < @ $+ . > $: < $(virtuser @ $3 $@ $1 $@ $2 $@ +$2 $: ! $) > $1 + $2 < @ $3 . > +dnl without +detail R<@> $+ < @ $+ . > $: < $(virtuser @ $2 $@ $1 $: @ $) > $1 < @ $2 . > dnl no match R<@> $+ $: $1 @@ -1434,6 +1435,7 @@ R<$+@$+> <> <$+> <$+> <$*> $@ $>Parse0 $>canonify $1 $5 @ $2') R<$+> <$=w> <$+> <$+> <$*> $@ $>Parse0 $>canonify $1 R<$+> <> <$+> <$+> <$*> $@ $>Parse0 $>canonify $1 + # if mailRoutingAddress and non-local mailHost, # relay to mailHost with new mailRoutingAddress ifelse(_LDAP_ROUTE_DETAIL_, `_PRESERVE_', `dnl @@ -1450,6 +1452,7 @@ R<$+> <$+> <$+> <$+> <$*> $>LDAPMailertable <$2> $>canonify $1', # return original address R<> <$=w> <$+> <$+> <$*> $@ $2 + # if no mailRoutingAddress and non-local mailHost, # relay to mailHost with original address ifdef(`_MAILER_TABLE_', `dnl @@ -1686,7 +1689,7 @@ R$* $| $* $| $* $@ $>"Basic_check_relay" $1 $| $2 SBasic_check_relay # check for deferred delivery mode -R$* $: < ${deliveryMode} > $1 +R$* $: < $&{deliveryMode} > $1 R< d > $* $@ deferred R< $* > $* $: $2 @@ -1716,7 +1719,7 @@ dnl workspace: ignored... R$* $: $&{client_addr} R$-.$-.$-.$- $: $(host $4.$3.$2.$1._RBL_. $: OK $) ROK $: OKSOFAR -R$+ $#error $@ 5.7.1 $: "550 Mail from " $&{client_addr} " refused by blackhole site _RBL_"', +R$+ $#error $@ 5.7.1 $: "550 Rejected: " $&{client_addr} " listed at _RBL_"', `dnl') undivert(8) @@ -1732,7 +1735,7 @@ R$* $| $* $@ $>"Basic_check_mail" $1 SBasic_check_mail # check for deferred delivery mode -R$* $: < ${deliveryMode} > $1 +R$* $: < $&{deliveryMode} > $1 R< d > $* $@ deferred R< $* > $* $: $2 @@ -1799,6 +1802,8 @@ R $* < @ $+ . > $1 < @ $2 > strip trailing dots # handle non-DNS hostnames (*.bitnet, *.decnet, *.uucp, etc) R $* < @ $* $=P > $: $1 < @ $2 $3 > dnl workspace CanonicalAddress where mark is ? or OK +dnl A sender address with my local host name ($j) is safe +R $* < @ $j > $: $1 < @ $j > ifdef(`_ACCEPT_UNRESOLVABLE_DOMAINS_', `R $* < @ $+ > $: <_RES_OK_> $1 < @ $2 > ... unresolvable OK', `R $* < @ $+ > $: $) > $1 < @ $2 > @@ -1874,7 +1879,7 @@ SBasic_check_rcpt R<> $#error $@ nouser $: "553 User address required" R$@ $#error $@ nouser $: "553 User address required" # check for deferred delivery mode -R$* $: < ${deliveryMode} > $1 +R$* $: < $&{deliveryMode} > $1 R< d > $* $@ deferred R< $* > $* $: $2 @@ -2097,6 +2102,7 @@ R$=R $* $@ RELAY relayable IP address ifdef(`_ACCESS_TABLE_', `dnl R$* $: $>A <$1> <+ Connect> <$1> R $* $@ RELAY relayable IP address +R $* $@ REJECT rejected IP address ifdef(`_ATMPF_', `R<_ATMPF_> $* $#TEMP $@ 4.3.0 $: "451 Temporary system failure. Please try again later."', `dnl') R<$*> <$*> $: $2', `dnl') R$* $: [ $1 ] put brackets around it... diff --git a/contrib/sendmail/cf/m4/version.m4 b/contrib/sendmail/cf/m4/version.m4 index 1e9c6b2e693..99021202a0d 100644 --- a/contrib/sendmail/cf/m4/version.m4 +++ b/contrib/sendmail/cf/m4/version.m4 @@ -11,8 +11,8 @@ divert(-1) # the sendmail distribution. # # -VERSIONID(`$Id: version.m4,v 1.1.1.12 2002/04/10 03:04:58 gshapiro Exp $') +VERSIONID(`$Id: version.m4,v 8.92 2002/05/31 18:53:59 ca Exp $') # divert(0) # Configuration version number -DZ8.12.3`'ifdef(`confCF_VERSION', `/confCF_VERSION') +DZ8.12.4`'ifdef(`confCF_VERSION', `/confCF_VERSION') diff --git a/contrib/sendmail/cf/mailer/cyrus.m4 b/contrib/sendmail/cf/mailer/cyrus.m4 index bc588fb9cfc..cca7f8e6885 100644 --- a/contrib/sendmail/cf/mailer/cyrus.m4 +++ b/contrib/sendmail/cf/mailer/cyrus.m4 @@ -49,7 +49,7 @@ POPDIVERT ### Cyrus Mailer specification ### ################################################## -VERSIONID(`$Id: cyrus.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $ (Carnegie Mellon)') +VERSIONID(`$Id: cyrus.m4,v 8.23 2001/11/12 23:11:34 ca Exp $ (Carnegie Mellon)') Mcyrus, P=CYRUS_MAILER_PATH, F=_MODMF_(CONCAT(`lsDFMnPq', CYRUS_MAILER_FLAGS), `CYRUS'), S=EnvFromL, R=EnvToL/HdrToL, ifdef(`CYRUS_MAILER_MAX', `M=CYRUS_MAILER_MAX, ')U=CYRUS_MAILER_USER, T=DNS/RFC822/X-Unix,_CYRUS_QGRP diff --git a/contrib/sendmail/cf/mailer/cyrusv2.m4 b/contrib/sendmail/cf/mailer/cyrusv2.m4 new file mode 100644 index 00000000000..2a40a23d4e0 --- /dev/null +++ b/contrib/sendmail/cf/mailer/cyrusv2.m4 @@ -0,0 +1,29 @@ +PUSHDIVERT(-1) +# +# Copyright (c) 2002 Sendmail, Inc. and its suppliers. +# All rights reserved. +# +# By using this file, you agree to the terms and conditions set +# forth in the LICENSE file which can be found at the top level of +# the sendmail distribution. +# +# Contributed by Kenneth Murchison. +# + +_DEFIFNOT(`_DEF_CYRUSV2_MAILER_FLAGS', `lsDFMnqXz') +_DEFIFNOT(`CYRUSV2_MAILER_FLAGS', `A@/:|m') +ifdef(`CYRUSV2_MAILER_ARGS',, `define(`CYRUSV2_MAILER_ARGS', `FILE /var/imap/socket/lmtp')') +define(`_CYRUSV2_QGRP', `ifelse(defn(`CYRUSV2_MAILER_QGRP'),`',`', ` Q=CYRUSV2_MAILER_QGRP,')')dnl + +POPDIVERT + +######################################### +### Cyrus V2 Mailer specification ### +######################################### + +VERSIONID(`$Id: cyrusv2.m4,v 1.1 2002/06/01 21:14:57 ca Exp $') + +Mcyrusv2, P=[IPC], F=_MODMF_(CONCAT(_DEF_CYRUSV2_MAILER_FLAGS, CYRUSV2_MAILER_FLAGS), `CYRUSV2'), + S=EnvFromSMTP/HdrFromL, R=EnvToL/HdrToL, E=\r\n, + _OPTINS(`CYRUSV2_MAILER_MAXMSGS', `m=', `, ')_OPTINS(`CYRUSV2_MAILER_MAXRCPTS', `r=', `, ')_OPTINS(`CYRUSV2_MAILER_CHARSET', `C=', `, ')T=DNS/RFC822/SMTP,_CYRUSV2_QGRP + A=CYRUSV2_MAILER_ARGS diff --git a/contrib/sendmail/cf/mailer/fax.m4 b/contrib/sendmail/cf/mailer/fax.m4 index edb408c2eea..4e2116e6536 100644 --- a/contrib/sendmail/cf/mailer/fax.m4 +++ b/contrib/sendmail/cf/mailer/fax.m4 @@ -28,7 +28,7 @@ POPDIVERT ### FAX Mailer specification ### #################################### -VERSIONID(`$Id: fax.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: fax.m4,v 8.16 2001/11/12 23:11:34 ca Exp $') Mfax, P=FAX_MAILER_PATH, F=DFMhu, S=14, R=24, M=FAX_MAILER_MAX, T=X-Phone/X-FAX/X-Unix,_FAX_QGRP diff --git a/contrib/sendmail/cf/mailer/local.m4 b/contrib/sendmail/cf/mailer/local.m4 index 566dad812f9..c1946c97490 100644 --- a/contrib/sendmail/cf/mailer/local.m4 +++ b/contrib/sendmail/cf/mailer/local.m4 @@ -32,7 +32,7 @@ POPDIVERT ### Local and Program Mailer specification ### ################################################## -VERSIONID(`$Id: local.m4,v 1.1.1.5 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: local.m4,v 8.58 2000/10/26 01:58:29 ca Exp $') # # Envelope sender rewriting diff --git a/contrib/sendmail/cf/mailer/mail11.m4 b/contrib/sendmail/cf/mailer/mail11.m4 index 114d7bcc73b..14bc794584f 100644 --- a/contrib/sendmail/cf/mailer/mail11.m4 +++ b/contrib/sendmail/cf/mailer/mail11.m4 @@ -42,7 +42,7 @@ POPDIVERT ### UTK-MAIL11 Mailer specification ### ########################################### -VERSIONID(`$Id: mail11.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: mail11.m4,v 8.22 2001/11/12 23:11:34 ca Exp $') SMail11To R$+ < @ $- .UUCP > $: $2 ! $1 back to old style diff --git a/contrib/sendmail/cf/mailer/phquery.m4 b/contrib/sendmail/cf/mailer/phquery.m4 index 0b8894bd805..58b71b07a20 100644 --- a/contrib/sendmail/cf/mailer/phquery.m4 +++ b/contrib/sendmail/cf/mailer/phquery.m4 @@ -25,7 +25,7 @@ POPDIVERT ### PH Mailer specification ### #################################### -VERSIONID(`$Id: phquery.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: phquery.m4,v 8.17 2001/11/12 23:11:34 ca Exp $') Mph, P=PH_MAILER_PATH, F=_MODMF_(CONCAT(`nrDFM', PH_MAILER_FLAGS), `PH'), S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,_PH_QGRP diff --git a/contrib/sendmail/cf/mailer/pop.m4 b/contrib/sendmail/cf/mailer/pop.m4 index aaad8a597c8..d2680e1cae9 100644 --- a/contrib/sendmail/cf/mailer/pop.m4 +++ b/contrib/sendmail/cf/mailer/pop.m4 @@ -23,7 +23,7 @@ POPDIVERT ### POP Mailer specification ### #################################### -VERSIONID(`$Id: pop.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: pop.m4,v 8.22 2001/11/12 23:11:34 ca Exp $') Mpop, P=POP_MAILER_PATH, F=_MODMF_(CONCAT(`lsDFMq', POP_MAILER_FLAGS), `POP'), S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,_POP_QGRP diff --git a/contrib/sendmail/cf/mailer/procmail.m4 b/contrib/sendmail/cf/mailer/procmail.m4 index b40d914702f..103e042a7cc 100644 --- a/contrib/sendmail/cf/mailer/procmail.m4 +++ b/contrib/sendmail/cf/mailer/procmail.m4 @@ -27,7 +27,7 @@ POPDIVERT ### PROCMAIL Mailer specification ### ##################*****################## -VERSIONID(`$Id: procmail.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: procmail.m4,v 8.22 2001/11/12 23:11:34 ca Exp $') Mprocmail, P=PROCMAIL_MAILER_PATH, F=_MODMF_(CONCAT(`DFM', PROCMAIL_MAILER_FLAGS), `PROCMAIL'), S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP/HdrFromSMTP, ifdef(`PROCMAIL_MAILER_MAX', `M=PROCMAIL_MAILER_MAX, ')T=DNS/RFC822/X-Unix,_PROCMAIL_QGRP diff --git a/contrib/sendmail/cf/mailer/qpage.m4 b/contrib/sendmail/cf/mailer/qpage.m4 index 2af94ff47ea..b0d9d51eb0f 100644 --- a/contrib/sendmail/cf/mailer/qpage.m4 +++ b/contrib/sendmail/cf/mailer/qpage.m4 @@ -24,7 +24,7 @@ POPDIVERT ### QPAGE Mailer specification ### ###################################### -VERSIONID(`$Id: qpage.m4,v 1.1.1.2 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: qpage.m4,v 8.10 2001/11/12 23:11:34 ca Exp $') Mqpage, P=QPAGE_MAILER_PATH, F=_MODMF_(QPAGE_MAILER_FLAGS, `QPAGE'), M=QPAGE_MAILER_MAX, T=DNS/RFC822/X-Unix,_QPAGE_QGRP diff --git a/contrib/sendmail/cf/mailer/smtp.m4 b/contrib/sendmail/cf/mailer/smtp.m4 index 64e8eee5d66..2bf5a82e259 100644 --- a/contrib/sendmail/cf/mailer/smtp.m4 +++ b/contrib/sendmail/cf/mailer/smtp.m4 @@ -29,7 +29,7 @@ POPDIVERT ### SMTP Mailer specification ### ##################################### -VERSIONID(`$Id: smtp.m4,v 1.1.1.5 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: smtp.m4,v 8.64 2001/04/03 01:52:54 gshapiro Exp $') # # common sender and masquerading recipient rewriting diff --git a/contrib/sendmail/cf/mailer/usenet.m4 b/contrib/sendmail/cf/mailer/usenet.m4 index 1703cb1c34a..d3ae38b9429 100644 --- a/contrib/sendmail/cf/mailer/usenet.m4 +++ b/contrib/sendmail/cf/mailer/usenet.m4 @@ -21,7 +21,7 @@ POPDIVERT ### USENET Mailer specification ### #################################### -VERSIONID(`$Id: usenet.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: usenet.m4,v 8.21 2000/10/26 02:08:19 ca Exp $') Musenet, P=USENET_MAILER_PATH, F=_MODMF_(USENET_MAILER_FLAGS, `USENET'), S=EnvFromL, R=EnvToL, _OPTINS(`USENET_MAILER_MAX', `M=', `, ')T=X-Usenet/X-Usenet/X-Unix,USENET_MAILER_QGRP diff --git a/contrib/sendmail/cf/mailer/uucp.m4 b/contrib/sendmail/cf/mailer/uucp.m4 index 410ba4c6090..6513556079a 100644 --- a/contrib/sendmail/cf/mailer/uucp.m4 +++ b/contrib/sendmail/cf/mailer/uucp.m4 @@ -24,7 +24,7 @@ POPDIVERT ### UUCP Mailer specification ### ##################################### -VERSIONID(`$Id: uucp.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: uucp.m4,v 8.44 2001/08/24 19:49:08 ca Exp $') # # envelope and header sender rewriting diff --git a/contrib/sendmail/cf/ostype/a-ux.m4 b/contrib/sendmail/cf/ostype/a-ux.m4 index 5fa5b485427..c4d4321bc38 100644 --- a/contrib/sendmail/cf/ostype/a-ux.m4 +++ b/contrib/sendmail/cf/ostype/a-ux.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: a-ux.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: a-ux.m4,v 8.2 2001/07/23 16:19:36 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl ifdef(`UUCP_MAILER_PATH',, `define(`UUCP_MAILER_PATH', /usr/bin/uux)')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `mn9')dnl diff --git a/contrib/sendmail/cf/ostype/aix3.m4 b/contrib/sendmail/cf/ostype/aix3.m4 index 8d47f2914aa..4376f6770a0 100644 --- a/contrib/sendmail/cf/ostype/aix3.m4 +++ b/contrib/sendmail/cf/ostype/aix3.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: aix3.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: aix3.m4,v 8.16 1999/04/12 17:34:36 ca Exp $') ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /bin/bellmail)')dnl ifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', mail $u)')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `mn9')dnl diff --git a/contrib/sendmail/cf/ostype/aix4.m4 b/contrib/sendmail/cf/ostype/aix4.m4 index 32c7fa3b823..8e0b9d44ab8 100644 --- a/contrib/sendmail/cf/ostype/aix4.m4 +++ b/contrib/sendmail/cf/ostype/aix4.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: aix4.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: aix4.m4,v 8.11 1999/04/12 17:34:37 ca Exp $') ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /bin/bellmail)')dnl ifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', mail -F $g $u)')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `mn9')dnl diff --git a/contrib/sendmail/cf/ostype/aix5.m4 b/contrib/sendmail/cf/ostype/aix5.m4 index c865fbf6484..e8df77e30ac 100644 --- a/contrib/sendmail/cf/ostype/aix5.m4 +++ b/contrib/sendmail/cf/ostype/aix5.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: aix5.m4,v 1.1.1.2 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: aix5.m4,v 1.1 2000/12/08 21:53:36 ca Exp $') ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /bin/bellmail)')dnl ifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', mail -F $g $u)')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `mn9')dnl diff --git a/contrib/sendmail/cf/ostype/altos.m4 b/contrib/sendmail/cf/ostype/altos.m4 index 73419092a41..1cffe1e8d2d 100644 --- a/contrib/sendmail/cf/ostype/altos.m4 +++ b/contrib/sendmail/cf/ostype/altos.m4 @@ -15,7 +15,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: altos.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: altos.m4,v 8.15 1999/04/24 05:37:40 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl ifdef(`UUCP_MAILER_PATH',, `define(`UUCP_MAILER_PATH', /usr/bin/uux)')dnl diff --git a/contrib/sendmail/cf/ostype/amdahl-uts.m4 b/contrib/sendmail/cf/ostype/amdahl-uts.m4 index d32241a2090..edd3a5db86a 100644 --- a/contrib/sendmail/cf/ostype/amdahl-uts.m4 +++ b/contrib/sendmail/cf/ostype/amdahl-uts.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: amdahl-uts.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: amdahl-uts.m4,v 8.16 1999/04/24 05:37:40 gshapiro Exp $') divert(-1) _DEFIFNOT(`LOCAL_MAILER_FLAGS', `fSn9') diff --git a/contrib/sendmail/cf/ostype/bsd4.3.m4 b/contrib/sendmail/cf/ostype/bsd4.3.m4 index 43f87433fd5..044f205ff9e 100644 --- a/contrib/sendmail/cf/ostype/bsd4.3.m4 +++ b/contrib/sendmail/cf/ostype/bsd4.3.m4 @@ -13,6 +13,6 @@ divert(-1) # divert(0) -VERSIONID(`$Id: bsd4.3.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: bsd4.3.m4,v 8.12 1999/02/07 07:26:18 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl ifdef(`UUCP_MAILER_ARGS',, `define(`UUCP_MAILER_ARGS', `uux - -r -z -a$g $h!rmail ($u)')')dnl diff --git a/contrib/sendmail/cf/ostype/bsd4.4.m4 b/contrib/sendmail/cf/ostype/bsd4.4.m4 index 3fd91dfb1de..3f7b0891de2 100644 --- a/contrib/sendmail/cf/ostype/bsd4.4.m4 +++ b/contrib/sendmail/cf/ostype/bsd4.4.m4 @@ -14,7 +14,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: bsd4.4.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: bsd4.4.m4,v 8.14 1999/04/24 05:37:40 gshapiro Exp $') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/log/sendmail.st')')dnl ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /usr/libexec/mail.local)')dnl ifdef(`UUCP_MAILER_ARGS',, `define(`UUCP_MAILER_ARGS', `uux - -r -z -a$g $h!rmail ($u)')')dnl diff --git a/contrib/sendmail/cf/ostype/bsdi.m4 b/contrib/sendmail/cf/ostype/bsdi.m4 index 6857f85ef1b..35679bcf1c4 100644 --- a/contrib/sendmail/cf/ostype/bsdi.m4 +++ b/contrib/sendmail/cf/ostype/bsdi.m4 @@ -13,5 +13,5 @@ divert(-1) # divert(0) -VERSIONID(`$Id: bsdi.m4,v 1.1.1.1 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: bsdi.m4,v 8.1 1999/11/19 05:18:13 gshapiro Exp $') include(_CF_DIR_`'ostype/bsd4.4.m4)dnl diff --git a/contrib/sendmail/cf/ostype/bsdi1.0.m4 b/contrib/sendmail/cf/ostype/bsdi1.0.m4 index 607794cad81..b806a37a33a 100644 --- a/contrib/sendmail/cf/ostype/bsdi1.0.m4 +++ b/contrib/sendmail/cf/ostype/bsdi1.0.m4 @@ -13,6 +13,6 @@ divert(-1) # divert(0) -VERSIONID(`$Id: bsdi1.0.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: bsdi1.0.m4,v 8.11 1999/11/19 05:18:14 gshapiro Exp $') errprint(`NOTE: OSTYPE(bsdi1.0) is deprecated. Use OSTYPE(bsdi) instead.') include(_CF_DIR_`'ostype/bsdi.m4)dnl diff --git a/contrib/sendmail/cf/ostype/bsdi2.0.m4 b/contrib/sendmail/cf/ostype/bsdi2.0.m4 index fd0e154014a..493406fd37f 100644 --- a/contrib/sendmail/cf/ostype/bsdi2.0.m4 +++ b/contrib/sendmail/cf/ostype/bsdi2.0.m4 @@ -13,6 +13,6 @@ divert(-1) # divert(0) -VERSIONID(`$Id: bsdi2.0.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: bsdi2.0.m4,v 8.10 1999/11/19 05:18:14 gshapiro Exp $') errprint(`NOTE: OSTYPE(bsdi2.0) is deprecated. Use OSTYPE(bsdi) instead.') include(_CF_DIR_`'ostype/bsdi.m4)dnl diff --git a/contrib/sendmail/cf/ostype/darwin.m4 b/contrib/sendmail/cf/ostype/darwin.m4 index de64a4e49d7..09d58480a39 100644 --- a/contrib/sendmail/cf/ostype/darwin.m4 +++ b/contrib/sendmail/cf/ostype/darwin.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: darwin.m4,v 1.1.1.3 2002/04/10 03:04:58 gshapiro Exp $') +VERSIONID(`$Id: darwin.m4,v 8.3 2002/03/05 01:55:40 ca Exp $') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/log/sendmail.st')')dnl dnl turn on S flag for local mailer MODIFY_MAILER_FLAGS(`LOCAL', `+S')dnl diff --git a/contrib/sendmail/cf/ostype/dgux.m4 b/contrib/sendmail/cf/ostype/dgux.m4 index 4d5ada2049a..335aedac894 100644 --- a/contrib/sendmail/cf/ostype/dgux.m4 +++ b/contrib/sendmail/cf/ostype/dgux.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: dgux.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: dgux.m4,v 8.14 1999/04/12 17:34:37 ca Exp $') _DEFIFNOT(`LOCAL_MAILER_FLAGS', `m9')dnl define(`confTIME_ZONE', `USE_TZ')dnl define(`confEBINDIR', `/usr/lib')dnl diff --git a/contrib/sendmail/cf/ostype/domainos.m4 b/contrib/sendmail/cf/ostype/domainos.m4 index 27227bad60e..759459d3270 100644 --- a/contrib/sendmail/cf/ostype/domainos.m4 +++ b/contrib/sendmail/cf/ostype/domainos.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: domainos.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: domainos.m4,v 8.14 1999/04/24 05:37:40 gshapiro Exp $') divert(-1) ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)') diff --git a/contrib/sendmail/cf/ostype/dynix3.2.m4 b/contrib/sendmail/cf/ostype/dynix3.2.m4 index 4c8264c9000..e0729531e8e 100644 --- a/contrib/sendmail/cf/ostype/dynix3.2.m4 +++ b/contrib/sendmail/cf/ostype/dynix3.2.m4 @@ -13,6 +13,6 @@ divert(-1) # divert(0) -VERSIONID(`$Id: dynix3.2.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: dynix3.2.m4,v 8.14 1999/04/24 05:37:41 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl define(`confEBINDIR', `/usr/lib')dnl diff --git a/contrib/sendmail/cf/ostype/freebsd4.m4 b/contrib/sendmail/cf/ostype/freebsd4.m4 index 0a2ffecc57b..b84a1e2e545 100644 --- a/contrib/sendmail/cf/ostype/freebsd4.m4 +++ b/contrib/sendmail/cf/ostype/freebsd4.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: freebsd4.m4,v 1.1.1.1 2001/05/28 17:08:50 gshapiro Exp $') +VERSIONID(`$Id: freebsd4.m4,v 1.1 2001/03/21 22:44:58 ca Exp $') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/log/sendmail.st')')dnl dnl turn on S flag for local mailer MODIFY_MAILER_FLAGS(`LOCAL', `+S')dnl diff --git a/contrib/sendmail/cf/ostype/freebsd5.m4 b/contrib/sendmail/cf/ostype/freebsd5.m4 index e2046c036ae..eb7a73a0d5b 100644 --- a/contrib/sendmail/cf/ostype/freebsd5.m4 +++ b/contrib/sendmail/cf/ostype/freebsd5.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: freebsd5.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: freebsd5.m4,v 1.1 2001/10/08 22:25:34 gshapiro Exp $') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/log/sendmail.st')')dnl dnl turn on S flag for local mailer MODIFY_MAILER_FLAGS(`LOCAL', `+S')dnl diff --git a/contrib/sendmail/cf/ostype/gnu.m4 b/contrib/sendmail/cf/ostype/gnu.m4 index 52df14105ff..39e8171cac9 100644 --- a/contrib/sendmail/cf/ostype/gnu.m4 +++ b/contrib/sendmail/cf/ostype/gnu.m4 @@ -14,7 +14,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: gnu.m4,v 1.1.1.1 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: gnu.m4,v 8.13 1999/04/24 05:37:41 gshapiro Exp $') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/log/sendmail.st')')dnl ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /libexec/mail.local)')dnl ifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', `mail $u')')dnl diff --git a/contrib/sendmail/cf/ostype/hpux10.m4 b/contrib/sendmail/cf/ostype/hpux10.m4 index d1ac2cc8025..290c0c682d8 100644 --- a/contrib/sendmail/cf/ostype/hpux10.m4 +++ b/contrib/sendmail/cf/ostype/hpux10.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: hpux10.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: hpux10.m4,v 8.19 1999/04/24 05:37:41 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /var/spool/mqueue)')dnl ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /usr/bin/rmail)')dnl diff --git a/contrib/sendmail/cf/ostype/hpux11.m4 b/contrib/sendmail/cf/ostype/hpux11.m4 index 4cfa61bdeee..94e2e98f1d7 100644 --- a/contrib/sendmail/cf/ostype/hpux11.m4 +++ b/contrib/sendmail/cf/ostype/hpux11.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: hpux11.m4,v 1.1.1.1 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: hpux11.m4,v 8.1 1999/11/19 05:22:59 gshapiro Exp $') ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /usr/bin/rmail)')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `m9')dnl diff --git a/contrib/sendmail/cf/ostype/hpux9.m4 b/contrib/sendmail/cf/ostype/hpux9.m4 index 34f50dc9df5..902d39a655a 100644 --- a/contrib/sendmail/cf/ostype/hpux9.m4 +++ b/contrib/sendmail/cf/ostype/hpux9.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: hpux9.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: hpux9.m4,v 8.24 1999/04/24 05:37:41 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', `/bin/rmail')')dnl diff --git a/contrib/sendmail/cf/ostype/irix4.m4 b/contrib/sendmail/cf/ostype/irix4.m4 index 1784e723f69..f966458f9d1 100644 --- a/contrib/sendmail/cf/ostype/irix4.m4 +++ b/contrib/sendmail/cf/ostype/irix4.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: irix4.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: irix4.m4,v 8.19 1999/04/24 05:37:41 gshapiro Exp $') _DEFIFNOT(`LOCAL_MAILER_FLAGS', `Ehm9')dnl ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl define(`confEBINDIR', `/usr/lib')dnl diff --git a/contrib/sendmail/cf/ostype/irix5.m4 b/contrib/sendmail/cf/ostype/irix5.m4 index 4ff0f481bd9..dda4bf45c1a 100644 --- a/contrib/sendmail/cf/ostype/irix5.m4 +++ b/contrib/sendmail/cf/ostype/irix5.m4 @@ -29,7 +29,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: irix5.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: irix5.m4,v 8.16 1999/04/24 05:37:41 gshapiro Exp $') _DEFIFNOT(`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 diff --git a/contrib/sendmail/cf/ostype/irix6.m4 b/contrib/sendmail/cf/ostype/irix6.m4 index abb9ae679e3..839e3873ef8 100644 --- a/contrib/sendmail/cf/ostype/irix6.m4 +++ b/contrib/sendmail/cf/ostype/irix6.m4 @@ -29,7 +29,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: irix6.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: irix6.m4,v 8.14 1999/08/05 20:35:55 gshapiro Exp $') _DEFIFNOT(`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 diff --git a/contrib/sendmail/cf/ostype/isc4.1.m4 b/contrib/sendmail/cf/ostype/isc4.1.m4 index 483987f8368..a124643a5e5 100644 --- a/contrib/sendmail/cf/ostype/isc4.1.m4 +++ b/contrib/sendmail/cf/ostype/isc4.1.m4 @@ -14,7 +14,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: isc4.1.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: isc4.1.m4,v 8.16 1999/04/24 05:37:42 gshapiro Exp $') ifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', `lmail -s $u')')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `humS9')dnl ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /bin/lmail)')dnl diff --git a/contrib/sendmail/cf/ostype/linux.m4 b/contrib/sendmail/cf/ostype/linux.m4 index 96201e0c68f..b02ad29ee8e 100644 --- a/contrib/sendmail/cf/ostype/linux.m4 +++ b/contrib/sendmail/cf/ostype/linux.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: linux.m4,v 1.1.1.5 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: linux.m4,v 8.13 2000/09/17 17:30:00 gshapiro Exp $') define(`confEBINDIR', `/usr/sbin') ifdef(`PROCMAIL_MAILER_PATH',, define(`PROCMAIL_MAILER_PATH', `/usr/bin/procmail')) diff --git a/contrib/sendmail/cf/ostype/maxion.m4 b/contrib/sendmail/cf/ostype/maxion.m4 index 26b2fbdabda..6f9a48ecbcf 100644 --- a/contrib/sendmail/cf/ostype/maxion.m4 +++ b/contrib/sendmail/cf/ostype/maxion.m4 @@ -16,7 +16,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: maxion.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: maxion.m4,v 8.17 1999/10/21 00:31:39 gshapiro Exp $') define(`QUEUE_DIR', `/var/spool/mqueue')dnl define(`STATUS_FILE', `/var/adm/log/sendmail.st')dnl diff --git a/contrib/sendmail/cf/ostype/mklinux.m4 b/contrib/sendmail/cf/ostype/mklinux.m4 index a8d7885441d..90b7d2da309 100644 --- a/contrib/sendmail/cf/ostype/mklinux.m4 +++ b/contrib/sendmail/cf/ostype/mklinux.m4 @@ -15,7 +15,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: mklinux.m4,v 1.1.1.4 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: mklinux.m4,v 8.15 2000/05/09 18:48:56 gshapiro Exp $') define(`confEBINDIR', `/usr/sbin') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/log/sendmail.st')') diff --git a/contrib/sendmail/cf/ostype/mpeix.m4 b/contrib/sendmail/cf/ostype/mpeix.m4 index d464d56876f..9e760e94e5f 100644 --- a/contrib/sendmail/cf/ostype/mpeix.m4 +++ b/contrib/sendmail/cf/ostype/mpeix.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: mpeix.m4,v 1.1.1.1 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: mpeix.m4,v 1.1 2001/12/13 23:56:40 gshapiro Exp $') ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', `/bin/tsmail')')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `mu9')dnl diff --git a/contrib/sendmail/cf/ostype/nextstep.m4 b/contrib/sendmail/cf/ostype/nextstep.m4 index 342f3699311..0c528931233 100644 --- a/contrib/sendmail/cf/ostype/nextstep.m4 +++ b/contrib/sendmail/cf/ostype/nextstep.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: nextstep.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: nextstep.m4,v 8.21 1999/10/21 00:31:40 gshapiro Exp $') ifdef(`UUCP_MAILER_PATH',, `define(`UUCP_MAILER_PATH', /usr/bin/uux)')dnl ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl ifdef(`LOCAL_SHELL_FLAGS',, `define(`LOCAL_SHELL_FLAGS', `euP')')dnl diff --git a/contrib/sendmail/cf/ostype/openbsd.m4 b/contrib/sendmail/cf/ostype/openbsd.m4 index 3d733a66732..aaeb615e502 100644 --- a/contrib/sendmail/cf/ostype/openbsd.m4 +++ b/contrib/sendmail/cf/ostype/openbsd.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: openbsd.m4,v 1.1.1.1 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: openbsd.m4,v 8.3 1999/04/24 05:37:42 gshapiro Exp $') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/log/sendmail.st')')dnl ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /usr/libexec/mail.local)')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `rmn9S')dnl diff --git a/contrib/sendmail/cf/ostype/osf1.m4 b/contrib/sendmail/cf/ostype/osf1.m4 index 08e25da10c6..dd13963a298 100644 --- a/contrib/sendmail/cf/ostype/osf1.m4 +++ b/contrib/sendmail/cf/ostype/osf1.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: osf1.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: osf1.m4,v 8.16 1999/10/11 18:45:43 gshapiro Exp $') ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/usr/adm/sendmail/sendmail.st')')dnl define(`confDEF_USER_ID', `daemon') define(`confEBINDIR', `/usr/lbin')dnl diff --git a/contrib/sendmail/cf/ostype/powerux.m4 b/contrib/sendmail/cf/ostype/powerux.m4 index 8ce81ec06cf..4646fe3ee2e 100644 --- a/contrib/sendmail/cf/ostype/powerux.m4 +++ b/contrib/sendmail/cf/ostype/powerux.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: powerux.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: powerux.m4,v 8.13 1999/04/24 05:37:43 gshapiro Exp $') define(`LOCAL_MAILER_PATH', `/usr/bin/rmail')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `mn9')dnl diff --git a/contrib/sendmail/cf/ostype/ptx2.m4 b/contrib/sendmail/cf/ostype/ptx2.m4 index f9f92416ff4..84e83963f9a 100644 --- a/contrib/sendmail/cf/ostype/ptx2.m4 +++ b/contrib/sendmail/cf/ostype/ptx2.m4 @@ -15,7 +15,7 @@ divert(-1) # Support for DYNIX/ptx 2.x. divert(0) -VERSIONID(`$Id: ptx2.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: ptx2.m4,v 8.17 1999/04/24 05:37:43 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl define(`LOCAL_MAILER_PATH', `/bin/mail')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `fmn9')dnl diff --git a/contrib/sendmail/cf/ostype/qnx.m4 b/contrib/sendmail/cf/ostype/qnx.m4 index 7391d851f5f..5fb3b08e14c 100644 --- a/contrib/sendmail/cf/ostype/qnx.m4 +++ b/contrib/sendmail/cf/ostype/qnx.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: qnx.m4,v 1.1.1.3 2000/08/12 21:55:39 gshapiro Exp $') +VERSIONID(`$Id: qnx.m4,v 8.13 1999/04/24 05:37:43 gshapiro Exp $') define(`QUEUE_DIR', /usr/spool/mqueue)dnl define(`LOCAL_MAILER_ARGS', `mail $u')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `Sh')dnl diff --git a/contrib/sendmail/cf/ostype/riscos4.5.m4 b/contrib/sendmail/cf/ostype/riscos4.5.m4 index dbe0d303330..f8069383aaf 100644 --- a/contrib/sendmail/cf/ostype/riscos4.5.m4 +++ b/contrib/sendmail/cf/ostype/riscos4.5.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: riscos4.5.m4,v 1.1.1.3 2000/08/12 21:55:40 gshapiro Exp $') +VERSIONID(`$Id: riscos4.5.m4,v 8.15 1999/04/24 05:37:43 gshapiro Exp $') ifdef(`LOCAL_MAILER_ARGS',, `define(`LOCAL_MAILER_ARGS', `rmail -d $u')')dnl ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', `/usr/spool/mqueue')')dnl diff --git a/contrib/sendmail/cf/ostype/sco-uw-2.1.m4 b/contrib/sendmail/cf/ostype/sco-uw-2.1.m4 index 029ca0963a7..8fe1b84a791 100644 --- a/contrib/sendmail/cf/ostype/sco-uw-2.1.m4 +++ b/contrib/sendmail/cf/ostype/sco-uw-2.1.m4 @@ -13,7 +13,7 @@ divert(-1) # Contributed by Christopher Durham of SCO. # divert(0) -VERSIONID(`$Id: sco-uw-2.1.m4,v 1.1.1.4 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: sco-uw-2.1.m4,v 8.13 1999/04/24 05:37:43 gshapiro Exp $') define(`LOCAL_MAILER_PATH', `/usr/bin/rmail')dnl _DEFIFNOT(`LOCAL_MAILER_FLAGS', `fhCEn9')dnl diff --git a/contrib/sendmail/cf/ostype/sco3.2.m4 b/contrib/sendmail/cf/ostype/sco3.2.m4 index 1a18d90b2ae..89ac6376537 100644 --- a/contrib/sendmail/cf/ostype/sco3.2.m4 +++ b/contrib/sendmail/cf/ostype/sco3.2.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: sco3.2.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: sco3.2.m4,v 8.16 1999/04/24 05:37:43 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /usr/spool/mqueue)')dnl ifdef(`UUCP_MAILER_PATH',, `define(`UUCP_MAILER_PATH', /usr/bin/uux)')dnl ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', /usr/bin/lmail)')dnl diff --git a/contrib/sendmail/cf/ostype/sinix.m4 b/contrib/sendmail/cf/ostype/sinix.m4 index 146d2986bd8..bcd6b31826b 100644 --- a/contrib/sendmail/cf/ostype/sinix.m4 +++ b/contrib/sendmail/cf/ostype/sinix.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: sinix.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: sinix.m4,v 8.13 1999/04/24 05:37:43 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /var/spool/mqueue)')dnl define(`LOCAL_MAILER_PATH', `/bin/mail.local')dnl ifdef(`STATUS_FILE',, `define(`STATUS_FILE', `/var/sendmail.st')')dnl diff --git a/contrib/sendmail/cf/ostype/solaris2.m4 b/contrib/sendmail/cf/ostype/solaris2.m4 index 0b35ad263aa..6cf14846d93 100644 --- a/contrib/sendmail/cf/ostype/solaris2.m4 +++ b/contrib/sendmail/cf/ostype/solaris2.m4 @@ -17,7 +17,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: solaris2.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: solaris2.m4,v 8.22 1999/09/24 21:43:53 ca Exp $') divert(-1) ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', `/usr/lib/mail.local')') diff --git a/contrib/sendmail/cf/ostype/solaris2.ml.m4 b/contrib/sendmail/cf/ostype/solaris2.ml.m4 index 0702bfb4a0b..72cb72923e9 100644 --- a/contrib/sendmail/cf/ostype/solaris2.ml.m4 +++ b/contrib/sendmail/cf/ostype/solaris2.ml.m4 @@ -17,7 +17,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: solaris2.ml.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: solaris2.ml.m4,v 8.14 1999/04/24 05:37:44 gshapiro Exp $') divert(-1) ifdef(`LOCAL_MAILER_PATH',, `define(`LOCAL_MAILER_PATH', `/usr/lib/mail.local')') diff --git a/contrib/sendmail/cf/ostype/solaris2.pre5.m4 b/contrib/sendmail/cf/ostype/solaris2.pre5.m4 index 408f9d0ca0c..c30dda60df6 100644 --- a/contrib/sendmail/cf/ostype/solaris2.pre5.m4 +++ b/contrib/sendmail/cf/ostype/solaris2.pre5.m4 @@ -17,7 +17,7 @@ divert(-1) divert(0) -VERSIONID(`$Id: solaris2.pre5.m4,v 1.1.1.1 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: solaris2.pre5.m4,v 8.1 1999/09/25 08:17:44 ca Exp $') divert(-1) _DEFIFNOT(`LOCAL_MAILER_FLAGS', `SnE9') diff --git a/contrib/sendmail/cf/ostype/solaris8.m4 b/contrib/sendmail/cf/ostype/solaris8.m4 index aea4e83e9ce..10b9d37bd6e 100644 --- a/contrib/sendmail/cf/ostype/solaris8.m4 +++ b/contrib/sendmail/cf/ostype/solaris8.m4 @@ -15,7 +15,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: solaris8.m4,v 1.1.1.2 2002/02/17 21:56:44 gshapiro Exp $') +VERSIONID(`$Id: solaris8.m4,v 8.2 2000/08/23 16:10:49 gshapiro Exp $') divert(-1) ifdef(`UUCP_MAILER_ARGS',, `define(`UUCP_MAILER_ARGS', `uux - -r -a$g $h!rmail ($u)')') diff --git a/contrib/sendmail/cf/ostype/sunos3.5.m4 b/contrib/sendmail/cf/ostype/sunos3.5.m4 index 987eaf61e7b..d1d776ec348 100644 --- a/contrib/sendmail/cf/ostype/sunos3.5.m4 +++ b/contrib/sendmail/cf/ostype/sunos3.5.m4 @@ -13,6 +13,6 @@ divert(-1) # divert(0) -VERSIONID(`$Id: sunos3.5.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: sunos3.5.m4,v 8.10 1999/02/07 07:26:23 gshapiro Exp $') define(`confEBINDIR', `/usr/lib')dnl diff --git a/contrib/sendmail/cf/ostype/sunos4.1.m4 b/contrib/sendmail/cf/ostype/sunos4.1.m4 index 781eb8dbc41..1e821ffe2c7 100644 --- a/contrib/sendmail/cf/ostype/sunos4.1.m4 +++ b/contrib/sendmail/cf/ostype/sunos4.1.m4 @@ -13,6 +13,6 @@ divert(-1) # divert(0) -VERSIONID(`$Id: sunos4.1.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: sunos4.1.m4,v 8.10 1999/02/07 07:26:24 gshapiro Exp $') define(`confEBINDIR', `/usr/lib')dnl diff --git a/contrib/sendmail/cf/ostype/svr4.m4 b/contrib/sendmail/cf/ostype/svr4.m4 index eee72ccf30f..3f7706b4770 100644 --- a/contrib/sendmail/cf/ostype/svr4.m4 +++ b/contrib/sendmail/cf/ostype/svr4.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: svr4.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: svr4.m4,v 8.17 1999/10/21 00:31:41 gshapiro Exp $') define(`LOCAL_MAILER_PATH', `/usr/ucblib/binmail')dnl define(`LOCAL_SHELL_FLAGS', `ehuP')dnl diff --git a/contrib/sendmail/cf/ostype/ultrix4.m4 b/contrib/sendmail/cf/ostype/ultrix4.m4 index 5582dc7f0fb..128c61af3a7 100644 --- a/contrib/sendmail/cf/ostype/ultrix4.m4 +++ b/contrib/sendmail/cf/ostype/ultrix4.m4 @@ -13,6 +13,6 @@ divert(-1) # divert(0) -VERSIONID(`$Id: ultrix4.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: ultrix4.m4,v 8.11 1999/02/07 07:26:24 gshapiro Exp $') define(`confEBINDIR', `/usr/lib')dnl diff --git a/contrib/sendmail/cf/ostype/unixware7.m4 b/contrib/sendmail/cf/ostype/unixware7.m4 index fc9591ba2fa..d42f8aba9a0 100644 --- a/contrib/sendmail/cf/ostype/unixware7.m4 +++ b/contrib/sendmail/cf/ostype/unixware7.m4 @@ -10,7 +10,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: unixware7.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: unixware7.m4,v 8.8 2000/02/26 01:32:04 gshapiro Exp $') ifdef(`QUEUE_DIR',, `define(`QUEUE_DIR', /var/spool/mqueue)')dnl define(`confEBINDIR', `/usr/lib')dnl define(`confTIME_ZONE', `USE_TZ')dnl diff --git a/contrib/sendmail/cf/ostype/unknown.m4 b/contrib/sendmail/cf/ostype/unknown.m4 index 0483910b306..2d5734ca8e8 100644 --- a/contrib/sendmail/cf/ostype/unknown.m4 +++ b/contrib/sendmail/cf/ostype/unknown.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: unknown.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: unknown.m4,v 8.9 1999/02/07 07:26:24 gshapiro Exp $') errprint(`*** ERROR: You have not specified a valid operating system type.') errprint(` Use the OSTYPE macro to select a valid system type. This') errprint(` is necessary in order to get the proper pathnames and flags') diff --git a/contrib/sendmail/cf/ostype/uxpds.m4 b/contrib/sendmail/cf/ostype/uxpds.m4 index f89ee0ff7c4..1ba0346d394 100644 --- a/contrib/sendmail/cf/ostype/uxpds.m4 +++ b/contrib/sendmail/cf/ostype/uxpds.m4 @@ -16,7 +16,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: uxpds.m4,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`$Id: uxpds.m4,v 8.16 1999/10/21 00:31:42 gshapiro Exp $') define(`confDEF_GROUP_ID', `6') define(`LOCAL_MAILER_PATH', `/usr/ucblib/binmail')dnl diff --git a/contrib/sendmail/cf/sendmail.schema b/contrib/sendmail/cf/sendmail.schema index 98861abf881..bab47e8c65f 100644 --- a/contrib/sendmail/cf/sendmail.schema +++ b/contrib/sendmail/cf/sendmail.schema @@ -5,7 +5,7 @@ # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # -# $Id: sendmail.schema,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +# $Id: sendmail.schema,v 8.14 2001/08/31 17:18:18 gshapiro Exp $ # Note that this schema is experimental at this point as it has had little # public review. Therefore, it may change in future versions. Feedback diff --git a/contrib/sendmail/cf/sh/makeinfo.sh b/contrib/sendmail/cf/sh/makeinfo.sh index ef9dd735326..d38fd52ab8a 100644 --- a/contrib/sendmail/cf/sh/makeinfo.sh +++ b/contrib/sendmail/cf/sh/makeinfo.sh @@ -11,7 +11,7 @@ # the sendmail distribution. # # -# $Id: makeinfo.sh,v 1.1.1.3 2000/08/12 21:55:41 gshapiro Exp $ +# $Id: makeinfo.sh,v 8.14 1999/02/07 07:26:25 gshapiro Exp $ # usewhoami=0 diff --git a/contrib/sendmail/contrib/README b/contrib/sendmail/contrib/README index 7e7b9bd63d2..1098f48ea52 100644 --- a/contrib/sendmail/contrib/README +++ b/contrib/sendmail/contrib/README @@ -7,4 +7,4 @@ care -- some of the patches may be out of date with the latest release of sendmail. Also, the previous comment applies -- patches belong to the original author, not to us. -$Revision: 1.1.1.2 $, Last updated $Date: 2000/08/12 21:55:41 $ +$Revision: 8.2 $, Last updated $Date: 1999/09/24 05:46:47 $ diff --git a/contrib/sendmail/contrib/bsdi.mc b/contrib/sendmail/contrib/bsdi.mc index c096ce29ec4..5175a34a303 100644 --- a/contrib/sendmail/contrib/bsdi.mc +++ b/contrib/sendmail/contrib/bsdi.mc @@ -35,7 +35,7 @@ and examples describing most of the common things people need to setup. # See /usr/share/sendmail/README for help in building a configuration file. # include(`../m4/cf.m4') -VERSIONID(`@(#)$Id: bsdi.mc,v 1.1.1.2 2000/08/12 21:55:41 gshapiro Exp $') +VERSIONID(`@(#)$Id: bsdi.mc,v 8.1 1999/02/06 18:44:08 gshapiro Exp $') dnl # Specify your OS type below OSTYPE(`bsd4.4') diff --git a/contrib/sendmail/contrib/buildvirtuser b/contrib/sendmail/contrib/buildvirtuser index 11d9cefd137..dcf6d442445 100755 --- a/contrib/sendmail/contrib/buildvirtuser +++ b/contrib/sendmail/contrib/buildvirtuser @@ -27,7 +27,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. -# $Id: buildvirtuser,v 1.1.1.4 2002/04/10 03:04:59 gshapiro Exp $ +# $Id: buildvirtuser,v 1.5 2002/02/08 08:10:59 gshapiro Exp $ =head1 NAME diff --git a/contrib/sendmail/contrib/dnsblaccess.m4 b/contrib/sendmail/contrib/dnsblaccess.m4 index 0a08a3a1f96..c9a5f7e61ff 100644 --- a/contrib/sendmail/contrib/dnsblaccess.m4 +++ b/contrib/sendmail/contrib/dnsblaccess.m4 @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 2001-2002 Sendmail, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -37,7 +37,7 @@ dnl ## dnl ## and suppose that your access map contains the entries dnl ## dnl ## bogus.tag:127.0.0.2 REJECT -dnl ## bogus.tag:127.0.0.3 error:dialup mail from %1 rejected by %2 +dnl ## bogus.tag:127.0.0.3 error:dialup mail from %1: listed at %2 dnl ## bogus.tag:127.0.0.4 OK dnl ## bogus.tag:127 REJECT dnl ## bogus.tag: OK @@ -50,7 +50,7 @@ dnl ## A-record for this lookup, then the mail is treated as if the dnl ## HACK line were not present. If the lookup returns 127.0.0.2, dnl ## then a default message rejects the mail. If it returns dnl ## 127.0.0.3, then the message -dnl ## "dialup mail from 123.45.6.7 rejected by rbl.bogus.org" +dnl ## "dialup mail from 123.45.6.7: listed at rbl.bogus.org" dnl ## is used to reject the mail. If it returns 127.0.0.4, the dnl ## mail is processed as if there were no HACK line. If the dnl ## address returned is something else beginning with 127.*, the @@ -59,7 +59,7 @@ dnl ## address returned does not begin 127, then the mail is dnl ## processed as if the HACK line were not present. divert(0) -VERSIONID(`$Id: dnsblaccess.m4,v 1.1.1.1 2002/02/17 21:56:45 gshapiro Exp $') +VERSIONID(`$Id: dnsblaccess.m4,v 1.5 2002/05/19 21:30:06 gshapiro Exp $') ifdef(`_ACCESS_TABLE_', `dnl', `errprint(`*** ERROR: dnsblaccess requires FEATURE(`access_db') ')') @@ -71,7 +71,7 @@ Kednsbl dns -R A -a. -T -r`'ifdef(`EDNSBL_TO',`EDNSBL_TO',`5') ') divert(-1) define(`_EDNSBL_SRV_', `ifelse(len(X`'_ARG_),`1',`blackholes.mail-abuse.org',_ARG_)')dnl -define(`_EDNSBL_MSG_', `ifelse(len(X`'_ARG2_),`1',`"550 Mail from " $`'&{client_addr} " refused by blackhole site '_EDNSBL_SRV_`"',`_ARG2_')')dnl +define(`_EDNSBL_MSG_', `ifelse(len(X`'_ARG2_),`1',`"550 Rejected: " $`'&{client_addr} " listed at '_EDNSBL_SRV_`"',`_ARG2_')')dnl define(`_EDNSBL_MSG_TMP_', `ifelse(_ARG3_,`t',`"451 Temporary lookup failure of " $`'&{client_addr} " at '_EDNSBL_SRV_`"',`_ARG3_')')dnl define(`_EDNSBL_KEY_', `ifelse(len(X`'_ARG4_),`1',`dnsblaccess',_ARG4_)')dnl divert(8) diff --git a/contrib/sendmail/contrib/link_hash.sh b/contrib/sendmail/contrib/link_hash.sh index 056c01d0fce..843c920d62c 100644 --- a/contrib/sendmail/contrib/link_hash.sh +++ b/contrib/sendmail/contrib/link_hash.sh @@ -3,7 +3,7 @@ ## Copyright (c) 2000 Sendmail, Inc. and its suppliers. ## All rights reserved. ## -## $Id: link_hash.sh,v 1.1.1.2 2002/02/17 21:56:45 gshapiro Exp $ +## $Id: link_hash.sh,v 1.2 2000/04/25 00:12:28 ca Exp $ ## # # ln a certificate to its hash diff --git a/contrib/sendmail/contrib/qtool.8 b/contrib/sendmail/contrib/qtool.8 index cf4e5513174..fbc90fac466 100644 --- a/contrib/sendmail/contrib/qtool.8 +++ b/contrib/sendmail/contrib/qtool.8 @@ -6,9 +6,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: qtool.8,v 1.1.1.4 2002/04/10 03:04:59 gshapiro Exp $ +.\" $Id: qtool.8,v 8.17 2002/01/29 21:55:49 ca Exp $ .\" -.TH QTOOL 8 "$Date: 2002/04/10 03:04:59 $" +.TH QTOOL 8 "$Date: 2002/01/29 21:55:49 $" .SH NAME qtool \- manipulate sendmail queues diff --git a/contrib/sendmail/contrib/qtool.pl b/contrib/sendmail/contrib/qtool.pl index e5a5c901a08..08f808bb991 100755 --- a/contrib/sendmail/contrib/qtool.pl +++ b/contrib/sendmail/contrib/qtool.pl @@ -3,7 +3,7 @@ ## Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. ## All rights reserved. ## -## $Id: qtool.pl,v 1.1.1.5 2002/04/10 03:04:59 gshapiro Exp $ +## $Id: qtool.pl,v 8.27 2002/01/29 21:55:49 ca Exp $ ## use strict; use File::Basename; diff --git a/contrib/sendmail/contrib/smcontrol.pl b/contrib/sendmail/contrib/smcontrol.pl index a69fb278ea4..4987460e4d4 100755 --- a/contrib/sendmail/contrib/smcontrol.pl +++ b/contrib/sendmail/contrib/smcontrol.pl @@ -379,6 +379,22 @@ elsif (lc($command) eq "help") { $status = &help($control); } +elsif (lc($command) eq "mstat") +{ + $status = &do_command($control, "mstat"); + if (not defined $status) + { + # Not responding on control channel, query via SMTP + if (&sendmail_running) + { + $daemonStatus = "Sendmail is running but not answering status queries."; + } + else + { + $daemonStatus = "Sendmail does not appear to be running."; + } + } +} else { die "Unrecognized command $command\n"; diff --git a/contrib/sendmail/doc/op/Makefile b/contrib/sendmail/doc/op/Makefile index 457ef056362..09f459234a8 100644 --- a/contrib/sendmail/doc/op/Makefile +++ b/contrib/sendmail/doc/op/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.6 2002/02/17 21:56:42 gshapiro Exp $ +# $Id: Makefile,v 8.14 2002/01/07 22:24:36 gshapiro Exp $ DIR= smm/08.sendmailop SRCS= op.me diff --git a/contrib/sendmail/doc/op/op.me b/contrib/sendmail/doc/op/op.me index 2325994ddd6..8d14002f0b6 100644 --- a/contrib/sendmail/doc/op/op.me +++ b/contrib/sendmail/doc/op/op.me @@ -9,7 +9,7 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: op.me,v 1.1.1.12 2002/04/10 03:04:53 gshapiro Exp $ +.\" $Id: op.me,v 8.607 2002/05/22 19:58:33 gshapiro Exp $ .\" .\" eqn op.me | pic | troff -me .\" @@ -88,7 +88,7 @@ Sendmail, Inc. .de Ve Version \\$2 .. -.Ve $Revision: 1.1.1.12 $ +.Ve $Revision: 8.607 $ .rm Ve .sp For Sendmail Version 8.12 @@ -597,7 +597,7 @@ It should be set-group-ID smmsp as described in sendmail/SECURITY. For security reasons, /, /usr, and /usr/\*(SD -should be owned by root, mode 755\**. +should be owned by root, mode 0755\**. .(f \**Some vendors ship them owned by bin; this creates a security hole that is not actually related to @@ -707,7 +707,7 @@ tree. The directory .i /var/spool/mqueue should be created to hold the mail queue. -This directory should be mode 700 +This directory should be mode 0700 and owned by root. .pp The actual path of this directory @@ -758,7 +758,7 @@ or different queue group declarations. The directory .i /var/spool/clientmqueue should be created to hold the mail queue. -This directory should be mode 770 +This directory should be mode 0770 and owned by user smmsp, group smmsp. .pp The actual path of this directory @@ -807,6 +807,15 @@ is defined in the option of the .i sendmail.cf file. +.pp +The permissions of the alias file and the database versions +should be 0640 to prevent local denial of service attacks +as explained in the top level +.b README +in the sendmail distribution. +If the permissions 0640 are used, be sure that only trusted users belong +to the group assigned to those files. Otherwise, files should not even +be group readable. .sh 3 "/etc/rc or /etc/init.d/sendmail" .pp It will be necessary to start up the @@ -933,7 +942,7 @@ you should create the file .q /etc/mail/statistics : .(b cp /dev/null /etc/mail/statistics -chmod 644 /etc/mail/statistics +chmod 0600 /etc/mail/statistics .)b This file does not grow. It is printed with the program @@ -958,6 +967,43 @@ flag will print the contents of the mail queue; see below). This should be a link to /usr/\*(SD/sendmail. +.sh 3 "sendmail.pid" +.pp +.i sendmail +stores its current pid in the file specifed by the +.b PidFile +option (default is _PATH_SENDMAILPID). +.i sendmail +uses +.b TempFileMode +(which defaults to 0600) as +the permissions of that file +to prevent local denial of service attacks +as explained in the top level +.b README +in the sendmail distribution. +If the file already exists, then it might be necessary to +change the permissions accordingly, e.g., +.(b +chmod 0600 /var/run/sendmail.pid +.)b +.sh 3 "Map Files" +.pp +To prevent local denial of service attacks +as explained in the top level +.b README +in the sendmail distribution, +the permissions of map files created by +.i makemap +should be 0640. +The use of 0640 implies that only trusted users belong to the group +assigned to those files. +If those files already exist, then it might be necessary to +change the permissions accordingly, e.g., +.(b +cd /etc/mail +chmod 0640 *.db *.pag *.dir +.)b .sh 1 "NORMAL OPERATIONS" .sh 2 "The System Log" .pp @@ -1162,7 +1208,7 @@ recipients. Notice: if multiple queue groups are used, do .b not move queue files around, e.g., into a different queue directory. -This may have wierd effects and can cause mail not to be delivered. +This may have weird effects and can cause mail not to be delivered. Queue files and directories should be treated as opaque and should not be manipulated directly. .sh 3 "Queue Runs" @@ -1279,7 +1325,7 @@ To do this, it is acceptable to move the entire queue directory: .(b cd /var/spool -mv mqueue omqueue; mkdir mqueue; chmod 700 mqueue +mv mqueue omqueue; mkdir mqueue; chmod 0700 mqueue .)b You should then kill the existing daemon (since it will still be processing in the old queue directory) @@ -3325,7 +3371,7 @@ by using $r, $s, or $f. If you create a directory such as /var/forward, it should be mode 1777 (that is, the sticky bit should be set). -Users should create the files mode 644. +Users should create the files mode 0644. Note that you must use the ForwardFileInUnsafeDirPath and ForwardFileInUnsafeDirPathSafe @@ -3336,10 +3382,10 @@ This might also be used as a denial of service attack (users could create forward files for other users); a better approach might be to create /var/forward -mode 755 +mode 0755 and create empty files for each user, owned by that user, -mode 644. +mode 0644. If you do this, you don't have to set the DontBlameSendmail options indicated above. .sh 2 "Free Space" @@ -7580,8 +7626,10 @@ Currently there are no other flags available. [F] The file mode for transcript files, files to which .i sendmail -delivers directly, and files in the -.b HostStatusDirectory . +delivers directly, files in the +.b HostStatusDirectory , +and +.b StatusFile . It is interpreted in octal by default. Defaults to 0600. .ip Timeout.\fItype\fP=\|\fItimeout\fP @@ -10579,7 +10627,7 @@ replace it with a blank sheet for double-sided output. .\".sz 10 .\"Eric Allman .\".sp -.\"Version $Revision: 1.1.1.12 $ +.\"Version $Revision: 8.607 $ .\".ce 0 .bp 3 .ce diff --git a/contrib/sendmail/editmap/Makefile b/contrib/sendmail/editmap/Makefile index 85ba31f748f..965e0293bcd 100644 --- a/contrib/sendmail/editmap/Makefile +++ b/contrib/sendmail/editmap/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2002/02/17 21:56:45 gshapiro Exp $ +# $Id: Makefile,v 1.1 2000/08/31 16:19:25 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/editmap/editmap.8 b/contrib/sendmail/editmap/editmap.8 index 384cd1f0f74..9b450c5b242 100644 --- a/contrib/sendmail/editmap/editmap.8 +++ b/contrib/sendmail/editmap/editmap.8 @@ -6,9 +6,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: editmap.8,v 1.1.1.1 2002/02/17 21:56:45 gshapiro Exp $ +.\" $Id: editmap.8,v 1.8 2001/06/15 21:33:19 ca Exp $ .\" -.TH EDITMAP 8 "$Date: 2002/02/17 21:56:45 $" +.TH EDITMAP 8 "$Date: 2001/06/15 21:33:19 $" .SH NAME .B editmap \- query and edit single records in database maps for sendmail diff --git a/contrib/sendmail/editmap/editmap.c b/contrib/sendmail/editmap/editmap.c index 4d1a6e2f61e..fe7c2d98284 100644 --- a/contrib/sendmail/editmap/editmap.c +++ b/contrib/sendmail/editmap/editmap.c @@ -22,7 +22,7 @@ SM_UNUSED(static char copyright[]) = #endif /* ! lint */ #ifndef lint -SM_UNUSED(static char id[]) = "@(#)$Id: editmap.c,v 1.1.1.2 2002/04/10 03:04:59 gshapiro Exp $"; +SM_UNUSED(static char id[]) = "@(#)$Id: editmap.c,v 1.23 2002/03/28 17:49:33 gshapiro Exp $"; #endif /* ! lint */ diff --git a/contrib/sendmail/include/libmilter/mfapi.h b/contrib/sendmail/include/libmilter/mfapi.h index b3fede3b2ef..9cf07c753ad 100644 --- a/contrib/sendmail/include/libmilter/mfapi.h +++ b/contrib/sendmail/include/libmilter/mfapi.h @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Id: mfapi.h,v 1.1.1.4 2002/04/10 03:04:55 gshapiro Exp $ + * $Id: mfapi.h,v 8.42 2002/04/30 23:52:23 msk Exp $ */ /* @@ -106,6 +106,9 @@ struct smfiDesc sfsistat (*xxfi_close) SM__P((SMFICTX *)); }; +#if _FFR_SMFI_OPENSOCKET +LIBMILTER_API int smfi_opensocket __P((void)); +#endif /* _FFR_SMFI_OPENSOCKET */ LIBMILTER_API int smfi_register __P((struct smfiDesc)); LIBMILTER_API int smfi_main __P((void)); LIBMILTER_API int smfi_setbacklog __P((int)); diff --git a/contrib/sendmail/include/libmilter/mfdef.h b/contrib/sendmail/include/libmilter/mfdef.h index ad70013b2a9..649e98d4c69 100644 --- a/contrib/sendmail/include/libmilter/mfdef.h +++ b/contrib/sendmail/include/libmilter/mfdef.h @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Id: mfdef.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: mfdef.h,v 8.11 2001/09/12 18:02:19 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/libmilter/milter.h b/contrib/sendmail/include/libmilter/milter.h index 08afce69c26..d9378faf5c2 100644 --- a/contrib/sendmail/include/libmilter/milter.h +++ b/contrib/sendmail/include/libmilter/milter.h @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Id: milter.h,v 1.1.1.6 2002/04/10 03:04:55 gshapiro Exp $ + * $Id: milter.h,v 8.37 2002/03/22 19:32:48 ca Exp $ */ /* diff --git a/contrib/sendmail/include/libsmdb/smdb.h b/contrib/sendmail/include/libsmdb/smdb.h index c95c02eaf29..0c7f97dba72 100644 --- a/contrib/sendmail/include/libsmdb/smdb.h +++ b/contrib/sendmail/include/libsmdb/smdb.h @@ -1,12 +1,12 @@ /* - * Copyright (c) 1999-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1999-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: smdb.h,v 1.1.1.4 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: smdb.h,v 8.40 2002/05/24 23:20:14 gshapiro Exp $ * */ @@ -34,7 +34,6 @@ */ #define SMDB_MAX_USER_NAME_LEN 1024 -#define SMDB_MAX_NAME_LEN 1024 /* ** This file defines the abstraction for database lookups. It is pretty diff --git a/contrib/sendmail/include/sendmail/mailstats.h b/contrib/sendmail/include/sendmail/mailstats.h index ebee2c18c6a..9a8a6350cc3 100644 --- a/contrib/sendmail/include/sendmail/mailstats.h +++ b/contrib/sendmail/include/sendmail/mailstats.h @@ -10,7 +10,7 @@ * the sendmail distribution. * * - * $Id: mailstats.h,v 1.1.1.2 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: mailstats.h,v 8.18 2001/11/21 13:39:10 gshapiro Exp $ */ #if _FFR_QUARANTINE diff --git a/contrib/sendmail/include/sendmail/pathnames.h b/contrib/sendmail/include/sendmail/pathnames.h index fd38e616616..cbf5f4a6067 100644 --- a/contrib/sendmail/include/sendmail/pathnames.h +++ b/contrib/sendmail/include/sendmail/pathnames.h @@ -9,7 +9,7 @@ * the sendmail distribution. * * - * $Id: pathnames.h,v 1.1.1.4 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: pathnames.h,v 8.36 2002/04/09 22:40:26 gshapiro Exp $ */ #ifndef SM_PATHNAMES_H @@ -37,7 +37,7 @@ # endif /* ! _PATH_SENDMAIL */ # ifndef _PATH_MAILDIR -# define _PATH_MAILDIR "/var/spool/mail" +# define _PATH_MAILDIR "/var/spool/mail" # endif /* ! _PATH_MAILDIR */ # ifndef _PATH_LOCTMP diff --git a/contrib/sendmail/include/sendmail/sendmail.h b/contrib/sendmail/include/sendmail/sendmail.h index 16ff2a1e557..bbd3177a8a8 100644 --- a/contrib/sendmail/include/sendmail/sendmail.h +++ b/contrib/sendmail/include/sendmail/sendmail.h @@ -10,7 +10,7 @@ * the sendmail distribution. * * - * $Id: sendmail.h,v 1.1.1.5 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sendmail.h,v 8.67 2001/09/08 01:20:57 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/assert.h b/contrib/sendmail/include/sm/assert.h index 677d72caeec..6b8653620c6 100644 --- a/contrib/sendmail/include/sm/assert.h +++ b/contrib/sendmail/include/sm/assert.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: assert.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: assert.h,v 1.10 2001/06/07 20:04:53 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/bitops.h b/contrib/sendmail/include/sm/bitops.h index a011e665228..44778ba8b2b 100644 --- a/contrib/sendmail/include/sm/bitops.h +++ b/contrib/sendmail/include/sm/bitops.h @@ -10,7 +10,7 @@ * the sendmail distribution. * * - * $Id: bitops.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: bitops.h,v 1.2 2001/09/22 22:05:42 ca Exp $ */ #ifndef SM_BITOPS_H diff --git a/contrib/sendmail/include/sm/cdefs.h b/contrib/sendmail/include/sm/cdefs.h index 86a46f94573..bb5e4c1bb34 100644 --- a/contrib/sendmail/include/sm/cdefs.h +++ b/contrib/sendmail/include/sm/cdefs.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: cdefs.h,v 1.1.1.2 2002/04/10 03:04:54 gshapiro Exp $ + * $Id: cdefs.h,v 1.15 2002/01/16 18:30:11 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/cf.h b/contrib/sendmail/include/sm/cf.h index 1a052ae74fa..3869210f6bc 100644 --- a/contrib/sendmail/include/sm/cf.h +++ b/contrib/sendmail/include/sm/cf.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: cf.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: cf.h,v 1.2 2001/03/08 03:23:07 ca Exp $ */ #ifndef SM_CF_H diff --git a/contrib/sendmail/include/sm/clock.h b/contrib/sendmail/include/sm/clock.h index acc32101fb5..b0dfb4388a5 100644 --- a/contrib/sendmail/include/sm/clock.h +++ b/contrib/sendmail/include/sm/clock.h @@ -9,7 +9,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: clock.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: clock.h,v 1.11 2001/05/14 23:25:37 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/conf.h b/contrib/sendmail/include/sm/conf.h index 0cf376f74fc..12688eaad10 100644 --- a/contrib/sendmail/include/sm/conf.h +++ b/contrib/sendmail/include/sm/conf.h @@ -10,7 +10,7 @@ * the sendmail distribution. * * - * $Id: conf.h,v 1.1.1.2 2002/04/10 03:04:54 gshapiro Exp $ + * $Id: conf.h,v 1.88 2002/05/01 16:09:41 gshapiro Exp $ */ /* @@ -609,7 +609,12 @@ extern long dgux_inet_addr(); # define GIDSET_T gid_t # define SM_INT32 int /* 32bit integer */ # ifndef HASFLOCK -# define HASFLOCK 1 /* has flock(2) call */ +# include +# if _XOPEN_SOURCE+0 >= 400 +# define HASFLOCK 0 /* 5.0 and later has bad flock(2) call */ +# else /* _XOPEN_SOURCE+0 >= 400 */ +# define HASFLOCK 1 /* has flock(2) call */ +# endif /* _XOPEN_SOURCE+0 >= 400 */ # endif /* ! HASFLOCK */ # define LA_TYPE LA_ALPHAOSF # define SFS_TYPE SFS_STATVFS /* use statfs() impl */ diff --git a/contrib/sendmail/include/sm/config.h b/contrib/sendmail/include/sm/config.h index 6d503c09dcc..791a525326a 100644 --- a/contrib/sendmail/include/sm/config.h +++ b/contrib/sendmail/include/sm/config.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: config.h,v 1.1.1.2 2002/04/10 03:04:54 gshapiro Exp $ + * $Id: config.h,v 1.44 2002/01/23 17:47:15 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/debug.h b/contrib/sendmail/include/sm/debug.h index 52bec4338a7..eba29ad2501 100644 --- a/contrib/sendmail/include/sm/debug.h +++ b/contrib/sendmail/include/sm/debug.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: debug.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: debug.h,v 1.15 2001/03/08 03:23:07 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/errstring.h b/contrib/sendmail/include/sm/errstring.h index c62dfcf5bdc..c5447d119e3 100644 --- a/contrib/sendmail/include/sm/errstring.h +++ b/contrib/sendmail/include/sm/errstring.h @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Id: errstring.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: errstring.h,v 1.4 2001/06/07 20:04:53 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/exc.h b/contrib/sendmail/include/sm/exc.h index d2cf1ed3804..afcb1252b51 100644 --- a/contrib/sendmail/include/sm/exc.h +++ b/contrib/sendmail/include/sm/exc.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: exc.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: exc.h,v 1.23 2001/06/07 20:04:53 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/fdset.h b/contrib/sendmail/include/sm/fdset.h index a7b9e01da16..6f13411a234 100644 --- a/contrib/sendmail/include/sm/fdset.h +++ b/contrib/sendmail/include/sm/fdset.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: fdset.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: fdset.h,v 1.3 2001/03/30 23:45:31 geir Exp $ */ #ifndef SM_FDSET_H diff --git a/contrib/sendmail/include/sm/gen.h b/contrib/sendmail/include/sm/gen.h index 74aaf0729d6..61b6e1b8f34 100644 --- a/contrib/sendmail/include/sm/gen.h +++ b/contrib/sendmail/include/sm/gen.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: gen.h,v 1.1.1.2 2002/04/10 03:04:54 gshapiro Exp $ + * $Id: gen.h,v 1.22 2002/04/03 00:40:42 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/heap.h b/contrib/sendmail/include/sm/heap.h index ecd9039b71b..8b563701537 100644 --- a/contrib/sendmail/include/sm/heap.h +++ b/contrib/sendmail/include/sm/heap.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: heap.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: heap.h,v 1.22 2001/09/04 22:41:55 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/io.h b/contrib/sendmail/include/sm/io.h index a4f22672c9c..48b358df21a 100644 --- a/contrib/sendmail/include/sm/io.h +++ b/contrib/sendmail/include/sm/io.h @@ -11,7 +11,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: io.h,v 1.1.1.2 2002/04/10 03:04:54 gshapiro Exp $ + * $Id: io.h,v 1.23 2002/02/23 19:32:17 gshapiro Exp $ */ /*- diff --git a/contrib/sendmail/include/sm/ldap.h b/contrib/sendmail/include/sm/ldap.h index 8fc8bf5906e..dfa0463b626 100644 --- a/contrib/sendmail/include/sm/ldap.h +++ b/contrib/sendmail/include/sm/ldap.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: ldap.h,v 1.1.1.2 2002/04/10 03:04:54 gshapiro Exp $ + * $Id: ldap.h,v 1.22 2002/03/05 02:17:26 ca Exp $ */ #ifndef SM_LDAP_H diff --git a/contrib/sendmail/include/sm/limits.h b/contrib/sendmail/include/sm/limits.h index 183280581e4..5041db317f3 100644 --- a/contrib/sendmail/include/sm/limits.h +++ b/contrib/sendmail/include/sm/limits.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: limits.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: limits.h,v 1.6 2001/03/08 03:23:08 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/mbdb.h b/contrib/sendmail/include/sm/mbdb.h index ee26e5380b8..010e50c62ba 100644 --- a/contrib/sendmail/include/sm/mbdb.h +++ b/contrib/sendmail/include/sm/mbdb.h @@ -1,12 +1,12 @@ /* - * Copyright (c) 2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 2001-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: mbdb.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: mbdb.h,v 1.6 2002/05/24 20:50:14 gshapiro Exp $ */ #ifndef SM_MBDB_H @@ -30,8 +30,8 @@ typedef struct gid_t mbdb_gid; char mbdb_name[MBDB_MAXNAME]; char mbdb_fullname[MBDB_MAXNAME]; - char mbdb_homedir[PATH_MAX + 1]; - char mbdb_shell[PATH_MAX + 1]; + char mbdb_homedir[PATH_MAX]; + char mbdb_shell[PATH_MAX]; } SM_MBDB_T; extern int sm_mbdb_initialize __P((char *)); diff --git a/contrib/sendmail/include/sm/os/sm_os_aix.h b/contrib/sendmail/include/sm/os/sm_os_aix.h index 7ec44432da7..6dc4a5416ff 100644 --- a/contrib/sendmail/include/sm/os/sm_os_aix.h +++ b/contrib/sendmail/include/sm/os/sm_os_aix.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_aix.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_aix.h,v 1.9 2001/10/09 23:12:13 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_freebsd.h b/contrib/sendmail/include/sm/os/sm_os_freebsd.h index 386c099c90f..3ba61fd5460 100644 --- a/contrib/sendmail/include/sm/os/sm_os_freebsd.h +++ b/contrib/sendmail/include/sm/os/sm_os_freebsd.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_freebsd.h,v 1.1.1.2 2002/04/10 03:04:54 gshapiro Exp $ + * $Id: sm_os_freebsd.h,v 1.11 2002/04/15 17:17:05 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_hp.h b/contrib/sendmail/include/sm/os/sm_os_hp.h index 84efc0c6a85..2cbcb577908 100644 --- a/contrib/sendmail/include/sm/os/sm_os_hp.h +++ b/contrib/sendmail/include/sm/os/sm_os_hp.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_hp.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_hp.h,v 1.8 2001/10/31 15:36:56 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_irix.h b/contrib/sendmail/include/sm/os/sm_os_irix.h index de0a94320e7..185485a9e14 100644 --- a/contrib/sendmail/include/sm/os/sm_os_irix.h +++ b/contrib/sendmail/include/sm/os/sm_os_irix.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_irix.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_irix.h,v 1.7 2001/10/09 23:12:13 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_linux.h b/contrib/sendmail/include/sm/os/sm_os_linux.h index a32a17c56b0..f232c497b1e 100644 --- a/contrib/sendmail/include/sm/os/sm_os_linux.h +++ b/contrib/sendmail/include/sm/os/sm_os_linux.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_linux.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_linux.h,v 1.12 2001/10/05 01:52:41 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_mpeix.h b/contrib/sendmail/include/sm/os/sm_os_mpeix.h index b5fae5532e4..385f1f42df8 100644 --- a/contrib/sendmail/include/sm/os/sm_os_mpeix.h +++ b/contrib/sendmail/include/sm/os/sm_os_mpeix.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_mpeix.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_mpeix.h,v 1.2 2001/12/14 00:23:02 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_next.h b/contrib/sendmail/include/sm/os/sm_os_next.h index 14ed2dbee9c..03f886ea032 100644 --- a/contrib/sendmail/include/sm/os/sm_os_next.h +++ b/contrib/sendmail/include/sm/os/sm_os_next.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_next.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_next.h,v 1.7 2001/04/03 01:53:06 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_openbsd.h b/contrib/sendmail/include/sm/os/sm_os_openbsd.h index 3363aa7ad7d..1acf12d8598 100644 --- a/contrib/sendmail/include/sm/os/sm_os_openbsd.h +++ b/contrib/sendmail/include/sm/os/sm_os_openbsd.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_openbsd.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_openbsd.h,v 1.7 2000/12/05 19:00:47 dmoen Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_openunix.h b/contrib/sendmail/include/sm/os/sm_os_openunix.h index 3d0b72acb90..3e696bafe6b 100644 --- a/contrib/sendmail/include/sm/os/sm_os_openunix.h +++ b/contrib/sendmail/include/sm/os/sm_os_openunix.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_openunix.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_openunix.h,v 1.5 2001/11/11 16:32:00 ca Exp $ */ #define SM_OS_NAME "openunix" diff --git a/contrib/sendmail/include/sm/os/sm_os_osf1.h b/contrib/sendmail/include/sm/os/sm_os_osf1.h index 6667c7a0dcb..eef239cd5c5 100644 --- a/contrib/sendmail/include/sm/os/sm_os_osf1.h +++ b/contrib/sendmail/include/sm/os/sm_os_osf1.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_osf1.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_osf1.h,v 1.3 2001/10/09 23:12:13 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_sunos.h b/contrib/sendmail/include/sm/os/sm_os_sunos.h index 181589c6bd2..9d20b18be61 100644 --- a/contrib/sendmail/include/sm/os/sm_os_sunos.h +++ b/contrib/sendmail/include/sm/os/sm_os_sunos.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_sunos.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_sunos.h,v 1.14 2001/08/14 18:09:42 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_ultrix.h b/contrib/sendmail/include/sm/os/sm_os_ultrix.h index 5155a193ba2..1ae2db15b2a 100644 --- a/contrib/sendmail/include/sm/os/sm_os_ultrix.h +++ b/contrib/sendmail/include/sm/os/sm_os_ultrix.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_ultrix.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_ultrix.h,v 1.3 2001/10/09 23:12:13 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/os/sm_os_unixware.h b/contrib/sendmail/include/sm/os/sm_os_unixware.h index 0756e297f01..2ff5ad09ca2 100644 --- a/contrib/sendmail/include/sm/os/sm_os_unixware.h +++ b/contrib/sendmail/include/sm/os/sm_os_unixware.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sm_os_unixware.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sm_os_unixware.h,v 1.7 2001/11/11 16:32:00 ca Exp $ */ #define SM_OS_NAME "unixware" diff --git a/contrib/sendmail/include/sm/path.h b/contrib/sendmail/include/sm/path.h index c2f030b8bc3..29fc4ca4661 100644 --- a/contrib/sendmail/include/sm/path.h +++ b/contrib/sendmail/include/sm/path.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: path.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: path.h,v 1.6 2001/04/03 01:53:00 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/rpool.h b/contrib/sendmail/include/sm/rpool.h index e8e2d21f7fd..e750fcb7d3f 100644 --- a/contrib/sendmail/include/sm/rpool.h +++ b/contrib/sendmail/include/sm/rpool.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: rpool.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: rpool.h,v 1.15 2001/09/04 22:41:55 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/setjmp.h b/contrib/sendmail/include/sm/setjmp.h index 44629a0e2b6..01bda0222ac 100644 --- a/contrib/sendmail/include/sm/setjmp.h +++ b/contrib/sendmail/include/sm/setjmp.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: setjmp.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: setjmp.h,v 1.3 2001/03/08 03:23:08 ca Exp $ */ #ifndef SM_SETJMP_H diff --git a/contrib/sendmail/include/sm/shm.h b/contrib/sendmail/include/sm/shm.h index 6785465deb0..6375dfc9a55 100644 --- a/contrib/sendmail/include/sm/shm.h +++ b/contrib/sendmail/include/sm/shm.h @@ -1,12 +1,12 @@ /* - * Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: shm.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: shm.h,v 1.8 2002/04/10 23:11:35 ca Exp $ */ #ifndef SM_SHM_H @@ -24,8 +24,7 @@ /* return value for failed shmget() */ # define SM_SHM_NULL ((void *) -1) -# define SM_SHM_NO_ID (-1) -# define SM_NO_SHM(id) ((id) < 0) +# define SM_SHM_NO_ID (-2) extern void *sm_shmstart __P((key_t, int , int , int *, bool)); extern int sm_shmstop __P((void *, int, bool)); diff --git a/contrib/sendmail/include/sm/signal.h b/contrib/sendmail/include/sm/signal.h index 994b836ab65..3821deb2bb6 100644 --- a/contrib/sendmail/include/sm/signal.h +++ b/contrib/sendmail/include/sm/signal.h @@ -9,7 +9,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: signal.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: signal.h,v 1.16 2001/07/20 19:48:21 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/string.h b/contrib/sendmail/include/sm/string.h index c9606629883..c8cb59f690e 100644 --- a/contrib/sendmail/include/sm/string.h +++ b/contrib/sendmail/include/sm/string.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: string.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: string.h,v 1.36 2001/06/17 21:31:11 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/sysexits.h b/contrib/sendmail/include/sm/sysexits.h index e192ddb7101..750def18a5b 100644 --- a/contrib/sendmail/include/sm/sysexits.h +++ b/contrib/sendmail/include/sm/sysexits.h @@ -8,7 +8,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sysexits.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: sysexits.h,v 1.5 2001/03/10 17:30:01 ca Exp $ * @(#)sysexits.h 8.1 (Berkeley) 6/2/93 */ diff --git a/contrib/sendmail/include/sm/test.h b/contrib/sendmail/include/sm/test.h index bdc97452fbf..1d700d7fc6b 100644 --- a/contrib/sendmail/include/sm/test.h +++ b/contrib/sendmail/include/sm/test.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: test.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: test.h,v 1.6 2001/04/03 01:53:01 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/types.h b/contrib/sendmail/include/sm/types.h index a14d57164a4..625a90e7b1e 100644 --- a/contrib/sendmail/include/sm/types.h +++ b/contrib/sendmail/include/sm/types.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: types.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: types.h,v 1.13 2001/04/03 01:53:01 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/include/sm/varargs.h b/contrib/sendmail/include/sm/varargs.h index 27b0b21f116..7d2b5cadde6 100644 --- a/contrib/sendmail/include/sm/varargs.h +++ b/contrib/sendmail/include/sm/varargs.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: varargs.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: varargs.h,v 1.7 2001/09/13 16:45:40 ca Exp $ */ /* diff --git a/contrib/sendmail/include/sm/xtrap.h b/contrib/sendmail/include/sm/xtrap.h index 2b12396df62..2e7e71721b2 100644 --- a/contrib/sendmail/include/sm/xtrap.h +++ b/contrib/sendmail/include/sm/xtrap.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: xtrap.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: xtrap.h,v 1.7 2001/04/03 01:53:01 gshapiro Exp $ */ /* diff --git a/contrib/sendmail/libmilter/Makefile b/contrib/sendmail/libmilter/Makefile index 3a3e958319a..04277eb6e2c 100644 --- a/contrib/sendmail/libmilter/Makefile +++ b/contrib/sendmail/libmilter/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:47 gshapiro Exp $ +# $Id: Makefile,v 8.1 1999/11/04 00:03:40 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/libmilter/README b/contrib/sendmail/libmilter/README index 601021cec49..f38f68a8071 100644 --- a/contrib/sendmail/libmilter/README +++ b/contrib/sendmail/libmilter/README @@ -457,4 +457,4 @@ main(argc, argv) /* eof */ -$Revision: 1.1.1.7 $, Last updated $Date: 2002/02/17 21:56:45 $ +$Revision: 8.35 $, Last updated $Date: 2002/01/07 21:29:20 $ diff --git a/contrib/sendmail/libmilter/comm.c b/contrib/sendmail/libmilter/comm.c index 6ff392db509..0bf7e5c0010 100644 --- a/contrib/sendmail/libmilter/comm.c +++ b/contrib/sendmail/libmilter/comm.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: comm.c,v 1.1.1.5 2002/04/10 03:04:59 gshapiro Exp $") +SM_RCSID("@(#)$Id: comm.c,v 8.54 2002/03/06 16:03:26 ca Exp $") #include "libmilter.h" #include diff --git a/contrib/sendmail/libmilter/docs/index.html b/contrib/sendmail/libmilter/docs/index.html index 3570ad59e4a..44c5f902769 100644 --- a/contrib/sendmail/libmilter/docs/index.html +++ b/contrib/sendmail/libmilter/docs/index.html @@ -4,7 +4,7 @@

Filtering Mail with Sendmail

diff --git a/contrib/sendmail/libmilter/docs/overview.html b/contrib/sendmail/libmilter/docs/overview.html index 4a46866f027..7f1c0361ab7 100644 --- a/contrib/sendmail/libmilter/docs/overview.html +++ b/contrib/sendmail/libmilter/docs/overview.html @@ -4,7 +4,7 @@

Technical Overview

diff --git a/contrib/sendmail/libmilter/docs/sample.html b/contrib/sendmail/libmilter/docs/sample.html index 7e997040832..879258c39df 100644 --- a/contrib/sendmail/libmilter/docs/sample.html +++ b/contrib/sendmail/libmilter/docs/sample.html @@ -18,397 +18,461 @@ options:
-#include "mfapi.h"
-
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <sys/types.h>
-#include <sys/stat.h>
 #include <sysexits.h>
 #include <unistd.h>
-#ifndef bool
-#define bool char
-#define TRUE 1
-#define FALSE 0
-#endif
 
-extern int errno;
+#include "libmilter/mfapi.h"
+
+#ifndef bool
+# define bool	int
+# define TRUE	1
+# define FALSE	0
+#endif /* ! bool */
 
 
 struct mlfiPriv
 {
-    char    *mlfi_fname;
-    char    *mlfi_connectfrom;
-    char    *mlfi_helofrom;
-    FILE    *mlfi_fp;
+	char	*mlfi_fname;
+	char	*mlfi_connectfrom;
+	char	*mlfi_helofrom;
+	FILE	*mlfi_fp;
 };
 
-#define MLFIPRIV        ((struct mlfiPriv *) smfi_getpriv(ctx))
+#define MLFIPRIV	((struct mlfiPriv *) smfi_getpriv(ctx))
+
+extern sfsistat		mlfi_cleanup(SMFICTX *, bool);
 
-extern sfsistat  mlfi_cleanup(SMFICTX *, bool);
 /* recipients to add and reject (set with -a and -r options) */
-char *add, *reject;
+char *add = NULL;
+char *reject = NULL;
 
 sfsistat
 mlfi_connect(ctx, hostname, hostaddr)
-     SMFICTX *ctx;
-     char *hostname;
-     _SOCK_ADDR *hostaddr;
+	 SMFICTX *ctx;
+	 char *hostname;
+	 _SOCK_ADDR *hostaddr;
 {
-    struct mlfiPriv *priv;
-    char *ident;
+	struct mlfiPriv *priv;
+	char *ident;
 
-    /* allocate some private memory */
-    priv = malloc(sizeof *priv);
-    if (priv == NULL)
-    {
-	/* can't accept this message right now */
-	return SMFIS_TEMPFAIL;
-    }
-    memset(priv, '\0', sizeof *priv);
+	/* allocate some private memory */
+	priv = malloc(sizeof *priv);
+	if (priv == NULL)
+	{
+		/* can't accept this message right now */
+		return SMFIS_TEMPFAIL;
+	}
+	memset(priv, '\0', sizeof *priv);
 
-    /* save the private data */
-    smfi_setpriv(ctx, priv);
-        
-    ident = smfi_getsymval(ctx, "_");
-    if(!ident) ident = "???";
-    if(!(priv->mlfi_connectfrom = strdup(ident))) {
-	return SMFIS_TEMPFAIL;
-    }
-    /* Continue processing. */
-    return SMFIS_CONTINUE;
+	/* save the private data */
+	smfi_setpriv(ctx, priv);
+
+	ident = smfi_getsymval(ctx, "_");
+	if (ident == NULL)
+		ident = "???";
+	if ((priv->mlfi_connectfrom = strdup(ident)) == NULL)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+
+	/* continue processing */
+	return SMFIS_CONTINUE;
 }
 
 sfsistat
 mlfi_helo(ctx, helohost)
-     SMFICTX *ctx;
-     char *helohost;
+	 SMFICTX *ctx;
+	 char *helohost;
 {
-    char *tls;
-    char *buf;
-    struct mlfiPriv *priv = MLFIPRIV;
-    tls = smfi_getsymval(ctx, "{tls_version}");
-    if(!tls) tls = "No TLS";
-    if(!helohost) helohost = "???";
-    if(!(buf = (char*)malloc(strlen(tls) + strlen(helohost) + 3))) {
-	return SMFIS_TEMPFAIL;
-    }
-    sprintf(buf, "%s, %s", helohost, tls);
-    if(priv->mlfi_helofrom)
-	free(priv->mlfi_helofrom);
-    priv->mlfi_helofrom = buf;
-    /* Continue processing. */
-    return SMFIS_CONTINUE;
+	size_t len;
+	char *tls;
+	char *buf;
+	struct mlfiPriv *priv = MLFIPRIV;
+
+	tls = smfi_getsymval(ctx, "{tls_version}");
+	if (tls == NULL)
+		tls = "No TLS";
+	if (helohost == NULL)
+		helohost = "???";
+	len = strlen(tls) + strlen(helohost) + 3;
+	if ((buf = (char*) malloc(len)) == NULL)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+	snprintf(buf, len, "%s, %s", helohost, tls);
+	if (priv->mlfi_helofrom != NULL)
+		free(priv->mlfi_helofrom);
+	priv->mlfi_helofrom = buf;
+
+	/* continue processing */
+	return SMFIS_CONTINUE;
 }
 
 sfsistat
 mlfi_envfrom(ctx, argv)
-     SMFICTX *ctx;
-     char **argv;
+	 SMFICTX *ctx;
+	 char **argv;
 {
-    struct mlfiPriv *priv = MLFIPRIV;
-    char *mailaddr = smfi_getsymval(ctx, "{mail_addr}");
-    int argc = 0;
+	struct mlfiPriv *priv = MLFIPRIV;
+	char *mailaddr = smfi_getsymval(ctx, "{mail_addr}");
+	int argc = 0;
 
-    /* open a file to store this message */
-    priv->mlfi_fname = strdup("/tmp/msg.XXXXXX");
-    mkstemp(priv->mlfi_fname);
-    if (priv->mlfi_fname == NULL)
-	return SMFIS_TEMPFAIL;
-    if ((priv->mlfi_fp = fopen(priv->mlfi_fname, "w+")) == NULL)
-    {
-	free(priv->mlfi_fname);
-	return SMFIS_TEMPFAIL;
-    }
+	/* open a file to store this message */
+	if ((priv->mlfi_fname = strdup("/tmp/msg.XXXXXX")) == NULL)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
 
-    /* count the arguments */
-    while(*argv++) ++argc;
-    /* log the connection information we stored earlier: */
-    if(fprintf(priv->mlfi_fp, "Connect from %s (%s)\n\n", 
-	       priv->mlfi_helofrom, priv->mlfi_connectfrom) == EOF) {
-	(void) mlfi_cleanup(ctx, FALSE);
-	return SMFIS_TEMPFAIL;
-    }
-    /* log the sender */
-    if(fprintf(priv->mlfi_fp, "FROM %s (%d argument%s)\n", 
-	       mailaddr?mailaddr:"???", argc,
-	       (argc == 1)?"":"s")
-       == EOF) {
-	(void) mlfi_cleanup(ctx, FALSE);
-	return SMFIS_TEMPFAIL;
-    }
-    /* continue processing */
-    return SMFIS_CONTINUE;
+	if (mkstemp(priv->mlfi_fname) == -1)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+
+	if ((priv->mlfi_fp = fopen(priv->mlfi_fname, "w+")) == NULL)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+
+	/* count the arguments */
+	while (*argv++ != NULL)
+		++argc;
+
+	/* log the connection information we stored earlier: */
+	if (fprintf(priv->mlfi_fp, "Connect from %s (%s)\n\n",
+		    priv->mlfi_helofrom, priv->mlfi_connectfrom) == EOF)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+	/* log the sender */
+	if (fprintf(priv->mlfi_fp, "FROM %s (%d argument%s)\n",
+		    mailaddr ? mailaddr : "???", argc,
+		    (argc == 1) ? "" : "s") == EOF)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+
+	/* continue processing */
+	return SMFIS_CONTINUE;
 }
 
 sfsistat
 mlfi_envrcpt(ctx, argv)
-     SMFICTX *ctx;
-     char **argv;
+	 SMFICTX *ctx;
+	 char **argv;
 {
-    struct mlfiPriv *priv = MLFIPRIV;
-    char *rcptaddr = smfi_getsymval(ctx, "{rcpt_addr}");
-    int argc = 0;
-    /* count the arguments */
-    while(*argv++) ++argc;
-    /* log this recipient */
-    if(reject && rcptaddr && (strcmp(rcptaddr, reject) == 0)) {
-	if(fprintf(priv->mlfi_fp, "RCPT %s -- REJECTED\n", rcptaddr)
-	   == EOF) {
-	    (void) mlfi_cleanup(ctx, FALSE);
-	    return SMFIS_TEMPFAIL;
+	struct mlfiPriv *priv = MLFIPRIV;
+	char *rcptaddr = smfi_getsymval(ctx, "{rcpt_addr}");
+	int argc = 0;
+
+	/* count the arguments */
+	while (*argv++ != NULL)
+		++argc;
+
+	/* log this recipient */
+	if (reject != NULL && rcptaddr != NULL &&
+	    (strcasecmp(rcptaddr, reject) == 0))
+	{
+		if (fprintf(priv->mlfi_fp, "RCPT %s -- REJECTED\n",
+			    rcptaddr) == EOF)
+		{
+			(void) mlfi_cleanup(ctx, FALSE);
+			return SMFIS_TEMPFAIL;
+		}
+		return SMFIS_REJECT;
 	}
-	return SMFIS_REJECT;
-    }
-    if(fprintf(priv->mlfi_fp, "RCPT %s (%d argument%s)\n", 
-	       rcptaddr?rcptaddr:"???", argc, 
-	       (argc == 1)?"":"s")
-       == EOF) {
-	(void) mlfi_cleanup(ctx, FALSE);
-	return SMFIS_TEMPFAIL;
-    }
-    /* continue processing */
-    return SMFIS_CONTINUE;
+	if (fprintf(priv->mlfi_fp, "RCPT %s (%d argument%s)\n",
+		    rcptaddr ? rcptaddr : "???", argc,
+		    (argc == 1) ? "" : "s") == EOF)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+
+	/* continue processing */
+	return SMFIS_CONTINUE;
 }
 
 sfsistat
 mlfi_header(ctx, headerf, headerv)
-     SMFICTX *ctx;
-     char *headerf;
-     unsigned char *headerv;
+	 SMFICTX *ctx;
+	 char *headerf;
+	 unsigned char *headerv;
 {
-    /* write the header to the log file */
-    fprintf(MLFIPRIV->mlfi_fp, "%s: %s\n", headerf, headerv);
+	/* write the header to the log file */
+	if (fprintf(MLFIPRIV->mlfi_fp, "%s: %s\n", headerf, headerv) == EOF)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
 
-    /* continue processing */
-    return SMFIS_CONTINUE;
+	/* continue processing */
+	return SMFIS_CONTINUE;
 }
 
 sfsistat
 mlfi_eoh(ctx)
-     SMFICTX *ctx;
+	 SMFICTX *ctx;
 {
-    /* output the blank line between the header and the body */
-    fprintf(MLFIPRIV->mlfi_fp, "\n");
+	/* output the blank line between the header and the body */
+	if (fprintf(MLFIPRIV->mlfi_fp, "\n") == EOF)
+	{
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
 
-    /* continue processing */
-    return SMFIS_CONTINUE;
+	/* continue processing */
+	return SMFIS_CONTINUE;
 }
 
 sfsistat
 mlfi_body(ctx, bodyp, bodylen)
-     SMFICTX *ctx;
-     unsigned char *bodyp;
-     size_t bodylen;
+	 SMFICTX *ctx;
+	 unsigned char *bodyp;
+	 size_t bodylen;
 {
-    /* output body block to log file */
-    int nwritten;
-    if ((nwritten = fwrite(bodyp, bodylen, 1, MLFIPRIV->mlfi_fp)) != 1)
-    {
-	/* write failed */
-	perror("error logging body");
-	(void) mlfi_cleanup(ctx, FALSE);
-	return SMFIS_TEMPFAIL;
-    }
+        struct mlfiPriv *priv = MLFIPRIV;
 
-    /* continue processing */
-    return SMFIS_CONTINUE;
+	/* output body block to log file */
+	if (fwrite(bodyp, bodylen, 1, priv->mlfi_fp) != 1)
+	{
+		/* write failed */
+		fprintf(stderr, "Couldn't write file %s: %s\n",
+			priv->mlfi_fname, strerror(errno));
+		(void) mlfi_cleanup(ctx, FALSE);
+		return SMFIS_TEMPFAIL;
+	}
+
+	/* continue processing */
+	return SMFIS_CONTINUE;
 }
 
 sfsistat
 mlfi_eom(ctx)
-     SMFICTX *ctx;
+	 SMFICTX *ctx;
 {
-    bool ok = TRUE;
-    /* change recipients, if requested */
-    if(add)
-	ok = ok && (smfi_addrcpt(ctx, add) == MI_SUCCESS);
-    return mlfi_cleanup(ctx, ok);
+	bool ok = TRUE;
+
+	/* change recipients, if requested */
+	if (add != NULL)
+		ok = (smfi_addrcpt(ctx, add) == MI_SUCCESS);
+	return mlfi_cleanup(ctx, ok);
 }
 
 sfsistat
 mlfi_abort(ctx)
-     SMFICTX *ctx;
+	 SMFICTX *ctx;
 {
-    return mlfi_cleanup(ctx, FALSE);
+	return mlfi_cleanup(ctx, FALSE);
 }
 
 sfsistat
 mlfi_cleanup(ctx, ok)
-     SMFICTX *ctx;
-     bool ok;
+	 SMFICTX *ctx;
+	 bool ok;
 {
-    sfsistat rstat = SMFIS_CONTINUE;
-    struct mlfiPriv *priv = MLFIPRIV;
-    char *p;
-    char host[512];
-    char hbuf[1024];
+	sfsistat rstat = SMFIS_CONTINUE;
+	struct mlfiPriv *priv = MLFIPRIV;
+	char *p;
+	char host[512];
+	char hbuf[1024];
 
-    if (priv == NULL)
-	return rstat;
+	if (priv == NULL)
+		return rstat;
 
-    /* close the archive file */
-    if (priv->mlfi_fp != NULL && fclose(priv->mlfi_fp) == EOF)
-    {
-	/* failed; we have to wait until later */
-	fprintf(stderr, "Couldn't close archive file %s: %s\n",
-		priv->mlfi_fname, strerror(errno));
-	rstat = SMFIS_TEMPFAIL;
-	(void) unlink(priv->mlfi_fname);
-    }
-    else if (ok)
-    {
-	/* add a header to the message announcing our presence */
-	if (gethostname(host, sizeof host) < 0)
-	    strncpy(host, "localhost", sizeof host);
-	p = strrchr(priv->mlfi_fname, '/');
-	if (p == NULL)
-	    p = priv->mlfi_fname;
+	/* close the archive file */
+	if (priv->mlfi_fp != NULL && fclose(priv->mlfi_fp) == EOF)
+	{
+		/* failed; we have to wait until later */
+		fprintf(stderr, "Couldn't close archive file %s: %s\n",
+			priv->mlfi_fname, strerror(errno));
+		rstat = SMFIS_TEMPFAIL;
+		(void) unlink(priv->mlfi_fname);
+	}
+	else if (ok)
+	{
+		/* add a header to the message announcing our presence */
+		if (gethostname(host, sizeof host) < 0)
+			snprintf(host, sizeof host, "localhost");
+		p = strrchr(priv->mlfi_fname, '/');
+		if (p == NULL)
+			p = priv->mlfi_fname;
+		else
+			p++;
+		snprintf(hbuf, sizeof hbuf, "%s@%s", p, host);
+		if (smfi_addheader(ctx, "X-Archived", hbuf) != MI_SUCCESS)
+		{
+			/* failed; we have to wait until later */
+			fprintf(stderr,
+				"Couldn't add header: X-Archived: %s\n",
+				hbuf);
+			ok = FALSE;
+			rstat = SMFIS_TEMPFAIL;
+			(void) unlink(priv->mlfi_fname);
+		}
+	}
 	else
-	    p++;
-	snprintf(hbuf, sizeof hbuf, "%s@%s", p, host);
-	smfi_addheader(ctx, "X-Archived", hbuf);
-    }
-    else
-    {
-	/* message was aborted -- delete the archive file */
-	fprintf(stderr, "Message aborted.  Removing %s\n",
-		priv->mlfi_fname);
-	rstat = SMFIS_TEMPFAIL;
-	(void) unlink(priv->mlfi_fname);
-    }
+	{
+		/* message was aborted -- delete the archive file */
+		fprintf(stderr, "Message aborted.  Removing %s\n",
+			priv->mlfi_fname);
+		rstat = SMFIS_TEMPFAIL;
+		(void) unlink(priv->mlfi_fname);
+	}
 
-    /* release private memory */
-    free(priv->mlfi_fname);
+	/* release private memory */
+	if (priv->mlfi_fname != NULL)
+		free(priv->mlfi_fname);
 
-    /* return status */
-    return rstat;
+	/* return status */
+	return rstat;
 }
 
 sfsistat
 mlfi_close(ctx)
-     SMFICTX *ctx;
+	 SMFICTX *ctx;
 {
-    struct mlfiPriv *priv = MLFIPRIV;
-    if(priv->mlfi_connectfrom)
-	free(priv->mlfi_connectfrom);
-    if(priv->mlfi_helofrom)
-	free(priv->mlfi_helofrom);
-    free(priv);
-    smfi_setpriv(ctx, NULL);
-    return SMFIS_CONTINUE;
+	struct mlfiPriv *priv = MLFIPRIV;
+
+	if (priv == NULL)
+		return SMFIS_CONTINUE;
+	if (priv->mlfi_connectfrom != NULL)
+		free(priv->mlfi_connectfrom);
+	if (priv->mlfi_helofrom != NULL)
+		free(priv->mlfi_helofrom);
+	free(priv);
+	smfi_setpriv(ctx, NULL);
+	return SMFIS_CONTINUE;
 }
 
 struct smfiDesc smfilter =
 {
-    "SampleFilter", /* filter name */
-    SMFI_VERSION,   /* version code -- do not change */
-    SMFIF_ADDHDRS,  /* flags */
-    mlfi_connect,   /* connection info filter */
-    mlfi_helo,      /* SMTP HELO command filter */
-    mlfi_envfrom,   /* envelope sender filter */
-    mlfi_envrcpt,   /* envelope recipient filter */
-    mlfi_header,    /* header filter */
-    mlfi_eoh,       /* end of header */
-    mlfi_body,      /* body block filter */
-    mlfi_eom,       /* end of message */
-    mlfi_abort,     /* message aborted */
-    mlfi_close,     /* connection cleanup */
+	"SampleFilter",	/* filter name */
+	SMFI_VERSION,	/* version code -- do not change */
+	SMFIF_ADDHDRS,	/* flags */
+	mlfi_connect,	/* connection info filter */
+	mlfi_helo,	/* SMTP HELO command filter */
+	mlfi_envfrom,	/* envelope sender filter */
+	mlfi_envrcpt,	/* envelope recipient filter */
+	mlfi_header,	/* header filter */
+	mlfi_eoh,	/* end of header */
+	mlfi_body,	/* body block filter */
+	mlfi_eom,	/* end of message */
+	mlfi_abort,	/* message aborted */
+	mlfi_close,	/* connection cleanup */
 };
 
-static void 
-usage()
+static void
+usage(prog)
+	char *prog;
 {
-    fprintf(stderr, 
-	    "Usage: sample [-p socket-addr] [-t timeout] [-r reject-addr] \n\
-\t[-a accept-addr]\n");
+	fprintf(stderr,
+		"Usage: %s [-p socket-addr] [-t timeout] [-r reject-addr] [-a add-addr]\n",
+		prog);
 }
 
 int
 main(argc, argv)
-     int argc;
-     char *argv[];
+	 int argc;
+	 char **argv;
 {
-    int retval;
-    char c;
-    const char *args = "p:t:r:a:h";
-    extern char *optarg;
+	int c;
+	const char *args = "p:t:r:a:h";
+	extern char *optarg;
 
-    /* Process command line options */
-    while ((c = getopt(argc, argv, args)) != (char)EOF)
-    {
-	switch (c)
+	/* Process command line options */
+	while ((c = getopt(argc, argv, args)) != -1)
 	{
-	case 'p':
-	    if (optarg == NULL || *optarg == '\0')
-	    {
-		(void) fprintf(stderr, "Illegal conn: %s\n",
-			       optarg);
-		exit(EX_USAGE);
-	    }
-	    if(smfi_setconn(optarg) == MI_FAILURE)
-	    {
-		(void) fputs("smfi_setconn failed", stderr);
-		exit(EX_SOFTWARE);
-	    }
-	    /* 
-	    ** If we're using a local socket, make sure it doesn't
-	    ** already exist.
-	    */
-	    if(strncmp(optarg, "unix:", 5) == 0)
-		unlink(optarg + 5);
-	    else if(strncmp(optarg, "local:", 6) == 0)
-		unlink(optarg + 6);
-	    break;
+		switch (c)
+		{
+		  case 'p':
+			if (optarg == NULL || *optarg == '\0')
+			{
+				(void) fprintf(stderr, "Illegal conn: %s\n",
+					       optarg);
+				exit(EX_USAGE);
+			}
+			if (smfi_setconn(optarg) == MI_FAILURE)
+			{
+				(void) fprintf(stderr,
+					       "smfi_setconn failed\n");
+				exit(EX_SOFTWARE);
+			}
 
-	case 't':
-	    if (optarg == NULL || *optarg == '\0')
-	    {
-		(void) fprintf(stderr, "Illegal timeout: %s\n",
-			       optarg);
-		exit(EX_USAGE);
-	    }
-	    if(smfi_settimeout(atoi(optarg)) == MI_FAILURE)
-	    {
-		(void) fputs("smfi_settimeout failed", stderr);
-		exit(EX_SOFTWARE);
-	    }
-	    break;
+			/*
+			**  If we're using a local socket, make sure it
+			**  doesn't already exist.  Don't ever run this
+			**  code as root!!
+			*/
 
-	case 'r':
-	    if (optarg == NULL)
-	    {
-		(void) fprintf(stderr, "Illegal reject rcpt: %s\n",
-			       optarg);
-		exit(EX_USAGE);
-	    }
-	    reject = optarg;
-	    break;
+			if (strncasecmp(optarg, "unix:", 5) == 0)
+				unlink(optarg + 5);
+			else if (strncasecmp(optarg, "local:", 6) == 0)
+				unlink(optarg + 6);
+			break;
 
-	case 'a':
-	    if (optarg == NULL)
-	    {
-		(void) fprintf(stderr, "Illegal add rcpt: %s\n",
-			       optarg);
-		exit(EX_USAGE);
-	    }
-	    add = optarg;
-	    smfilter.xxfi_flags |= SMFIF_ADDRCPT;
-	    break;
-	case 'h':
-	default:
-	    usage();
-	    exit(0);
+		  case 't':
+			if (optarg == NULL || *optarg == '\0')
+			{
+				(void) fprintf(stderr, "Illegal timeout: %s\n",
+					       optarg);
+				exit(EX_USAGE);
+			}
+			if (smfi_settimeout(atoi(optarg)) == MI_FAILURE)
+			{
+				(void) fprintf(stderr,
+					       "smfi_settimeout failed\n");
+				exit(EX_SOFTWARE);
+			}
+			break;
+
+		  case 'r':
+			if (optarg == NULL)
+			{
+				(void) fprintf(stderr,
+					       "Illegal reject rcpt: %s\n",
+					       optarg);
+				exit(EX_USAGE);
+			}
+			reject = optarg;
+			break;
+
+		  case 'a':
+			if (optarg == NULL)
+			{
+				(void) fprintf(stderr,
+					       "Illegal add rcpt: %s\n",
+					       optarg);
+				exit(EX_USAGE);
+			}
+			add = optarg;
+			smfilter.xxfi_flags |= SMFIF_ADDRCPT;
+			break;
+
+		  case 'h':
+		  default:
+			usage(argv[0]);
+			exit(EX_USAGE);
+		}
 	}
-    }
-    if (smfi_register(smfilter) == MI_FAILURE)
-    {
-	fprintf(stderr, "smfi_register failed\n");
-	exit(EX_UNAVAILABLE);
-    }
-    retval = smfi_main();
-    return retval;
+	if (smfi_register(smfilter) == MI_FAILURE)
+	{
+		fprintf(stderr, "smfi_register failed\n");
+		exit(EX_UNAVAILABLE);
+	}
+	return smfi_main();
 }
 
 /* eof */
@@ -416,7 +480,7 @@ main(argc, argv)
 

-Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set diff --git a/contrib/sendmail/libmilter/docs/smfi_addheader.html b/contrib/sendmail/libmilter/docs/smfi_addheader.html index c6417e26f66..6f852aebf6e 100644 --- a/contrib/sendmail/libmilter/docs/smfi_addheader.html +++ b/contrib/sendmail/libmilter/docs/smfi_addheader.html @@ -73,18 +73,39 @@ href="smfi_chgheader.html">smfi_chgheader.
  • Neither the name nor the value of the header is checked for standards compliance. However, each line of the header must be under 2048 characters and should be under 998 characters. If longer headers - are needed, make them multiline. + are needed, make them multi-line. To make a multi-line header, insert + a line feed (ASCII 0x0a, or \n in C) followed by at least + one whitespace character such as a space (ASCII 0x20) or tab (ASCII 0x09, + or \t in C). The line feed should NOT be preceded by a + carriage return (ASCII 0x0d); the MTA will add this automatically. It is the filter writer's responsibility to ensure that no standards are violated. + + +EXAMPLE + + +
    +  int ret;
    +  SMFICTX *ctx;
    +
    +  ...
    +
    +  ret = smfi_addheader(ctx, "Content-Type",
    +                       "multipart/mixed;\n\tboundary=\"foobar\"");
    + 
    + + +
    -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. All rights reserved.
    By using this file, you agree to the terms and conditions set diff --git a/contrib/sendmail/libmilter/docs/smfi_chgheader.html b/contrib/sendmail/libmilter/docs/smfi_chgheader.html index 4969674fb80..89ce6f26ebf 100644 --- a/contrib/sendmail/libmilter/docs/smfi_chgheader.html +++ b/contrib/sendmail/libmilter/docs/smfi_chgheader.html @@ -75,18 +75,39 @@ Otherwise, it returns MI_SUCCESS.
  • Neither the name nor the value of the header is checked for standards compliance. However, each line of the header must be under 2048 characters and should be under 998 characters. If longer headers - are needed, make them multiline. + are needed, make them multi-line. To make a multi-line header, insert + a line feed (ASCII 0x0a, or \n in C) followed by at least + one whitespace character such as a space (ASCII 0x20) or tab (ASCII 0x09, + or \t in C). The line feed should NOT be preceded by a + carriage return (ASCII 0x0d); the MTA will add this automatically. It is the filter writer's responsibility to ensure that no standards are violated. + + +EXAMPLE + + +
    +  int ret;
    +  SMFICTX *ctx;
    +
    +  ...
    +
    +  ret = smfi_chgheader(ctx, "Content-Type",
    +                       "multipart/mixed;\n\tboundary=\"foobar\"");
    + 
    + + +
    -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. All rights reserved.
    By using this file, you agree to the terms and conditions set diff --git a/contrib/sendmail/libmilter/engine.c b/contrib/sendmail/libmilter/engine.c index 6c575a9983e..74140720352 100644 --- a/contrib/sendmail/libmilter/engine.c +++ b/contrib/sendmail/libmilter/engine.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: engine.c,v 1.1.1.6 2002/04/10 03:04:59 gshapiro Exp $") +SM_RCSID("@(#)$Id: engine.c,v 8.109 2002/03/13 17:18:44 gshapiro Exp $") #include "libmilter.h" diff --git a/contrib/sendmail/libmilter/handler.c b/contrib/sendmail/libmilter/handler.c index b18a22bf830..a7b47603a2f 100644 --- a/contrib/sendmail/libmilter/handler.c +++ b/contrib/sendmail/libmilter/handler.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999-2000 Sendmail, Inc. and its suppliers. + * Copyright (c) 1999-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: handler.c,v 1.1.1.3 2002/02/17 21:56:45 gshapiro Exp $") +SM_RCSID("@(#)$Id: handler.c,v 8.30 2002/04/29 15:06:48 ca Exp $") #include "libmilter.h" @@ -38,9 +38,11 @@ mi_handle_session(ctx) ** detach so resources are free when the thread returns ** if we ever "wait" for threads, this call must be removed */ + if (pthread_detach(ctx->ctx_id) != 0) - return MI_FAILURE; - ret = mi_engine(ctx); + ret = MI_FAILURE; + else + ret = mi_engine(ctx); if (ValidSocket(ctx->ctx_sd)) { (void) closesocket(ctx->ctx_sd); diff --git a/contrib/sendmail/libmilter/libmilter.h b/contrib/sendmail/libmilter/libmilter.h index 65b387541a7..fedc24f90e9 100644 --- a/contrib/sendmail/libmilter/libmilter.h +++ b/contrib/sendmail/libmilter/libmilter.h @@ -19,7 +19,7 @@ #ifdef _DEFINE # define EXTERN # define INIT(x) = x -SM_IDSTR(MilterlId, "@(#)$Id: libmilter.h,v 1.1.1.6 2002/02/17 21:56:45 gshapiro Exp $") +SM_IDSTR(MilterlId, "@(#)$Id: libmilter.h,v 8.33 2002/04/30 23:52:24 msk Exp $") #else /* _DEFINE */ # define EXTERN extern # define INIT(x) @@ -110,6 +110,7 @@ extern void mi_clean_signals __P((void)); extern struct hostent *mi_gethostbyname __P((char *, int)); extern int mi_inet_pton __P((int, const char *, void *)); extern void mi_closener __P((void)); +extern int mi_opensocket __P((char *, int, int, smfiDesc_ptr)); /* communication functions */ extern char *mi_rd_cmd __P((socket_t, struct timeval *, char *, size_t *, char *)); diff --git a/contrib/sendmail/libmilter/listener.c b/contrib/sendmail/libmilter/listener.c index 3661488c7b7..03d8acd34e6 100644 --- a/contrib/sendmail/libmilter/listener.c +++ b/contrib/sendmail/libmilter/listener.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: listener.c,v 1.1.1.7 2002/04/10 03:05:00 gshapiro Exp $") +SM_RCSID("@(#)$Id: listener.c,v 8.85 2002/05/28 18:17:41 gshapiro Exp $") /* ** listener.c -- threaded network listener @@ -24,6 +24,58 @@ SM_RCSID("@(#)$Id: listener.c,v 1.1.1.7 2002/04/10 03:05:00 gshapiro Exp $") # endif /* NETINET || NETINET6 */ static smutex_t L_Mutex; +static int L_family; +static SOCKADDR_LEN_T L_socksize; +static socket_t listenfd = INVALID_SOCKET; + +static socket_t mi_milteropen __P((char *, int, char *)); + +/* +** MI_OPENSOCKET -- create the socket where this filter and the MTA will meet +** +** Parameters: +** conn -- connection description +** backlog -- listen backlog +** dbg -- debug level +** smfi -- filter structure to use +** +** Return value: +** MI_SUCCESS/MI_FAILURE +*/ + +int +mi_opensocket(conn, backlog, dbg, smfi) + char *conn; + int backlog; + int dbg; + smfiDesc_ptr smfi; +{ + if (smfi == NULL || conn == NULL) + return MI_FAILURE; + + if (ValidSocket(listenfd)) + return MI_SUCCESS; + + if (dbg > 0) + { + smi_log(SMI_LOG_DEBUG, + "%s: Opening listen socket on conn %s", + smfi->xxfi_name, conn); + } + (void) smutex_init(&L_Mutex); + (void) smutex_lock(&L_Mutex); + listenfd = mi_milteropen(conn, backlog, smfi->xxfi_name); + if (!ValidSocket(listenfd)) + { + smi_log(SMI_LOG_FATAL, + "%s: Unable to create listening socket on conn %s", + smfi->xxfi_name, conn); + (void) smutex_unlock(&L_Mutex); + return MI_FAILURE; + } + + return MI_SUCCESS; +} /* ** MI_MILTEROPEN -- setup socket to listen on @@ -31,8 +83,6 @@ static smutex_t L_Mutex; ** Parameters: ** conn -- connection description ** backlog -- listen backlog -** socksize -- socksize of created socket -** family -- family of created socket ** name -- name for logging ** ** Returns: @@ -47,15 +97,14 @@ static char *sockpath = NULL; #endif /* NETUNIX */ static socket_t -mi_milteropen(conn, backlog, socksize, family, name) +mi_milteropen(conn, backlog, name) char *conn; int backlog; - SOCKADDR_LEN_T *socksize; - int *family; char *name; { socket_t sock; int sockopt = 1; + int fdflags; size_t len = 0; char *p; char *colon; @@ -82,17 +131,17 @@ mi_milteropen(conn, backlog, socksize, family, name) #if NETUNIX /* default to AF_UNIX */ addr.sa.sa_family = AF_UNIX; - *socksize = sizeof (struct sockaddr_un); + L_socksize = sizeof (struct sockaddr_un); #else /* NETUNIX */ # if NETINET /* default to AF_INET */ addr.sa.sa_family = AF_INET; - *socksize = sizeof addr.sin; + L_socksize = sizeof addr.sin; # else /* NETINET */ # if NETINET6 /* default to AF_INET6 */ addr.sa.sa_family = AF_INET6; - *socksize = sizeof addr.sin6; + L_socksize = sizeof addr.sin6; # else /* NETINET6 */ /* no protocols available */ smi_log(SMI_LOG_ERR, @@ -108,21 +157,21 @@ mi_milteropen(conn, backlog, socksize, family, name) strcasecmp(p, "local") == 0) { addr.sa.sa_family = AF_UNIX; - *socksize = sizeof (struct sockaddr_un); + L_socksize = sizeof (struct sockaddr_un); } #endif /* NETUNIX */ #if NETINET else if (strcasecmp(p, "inet") == 0) { addr.sa.sa_family = AF_INET; - *socksize = sizeof addr.sin; + L_socksize = sizeof addr.sin; } #endif /* NETINET */ #if NETINET6 else if (strcasecmp(p, "inet6") == 0) { addr.sa.sa_family = AF_INET6; - *socksize = sizeof addr.sin6; + L_socksize = sizeof addr.sin6; } #endif /* NETINET6 */ else @@ -139,17 +188,17 @@ mi_milteropen(conn, backlog, socksize, family, name) #if NETUNIX /* default to AF_UNIX */ addr.sa.sa_family = AF_UNIX; - *socksize = sizeof (struct sockaddr_un); + L_socksize = sizeof (struct sockaddr_un); #else /* NETUNIX */ # if NETINET /* default to AF_INET */ addr.sa.sa_family = AF_INET; - *socksize = sizeof addr.sin; + L_socksize = sizeof addr.sin; # else /* NETINET */ # if NETINET6 /* default to AF_INET6 */ addr.sa.sa_family = AF_INET6; - *socksize = sizeof addr.sin6; + L_socksize = sizeof addr.sin6; # else /* NETINET6 */ smi_log(SMI_LOG_ERR, "%s: unknown socket type %s", name, p); @@ -380,6 +429,16 @@ mi_milteropen(conn, backlog, socksize, family, name) return INVALID_SOCKET; } + if ((fdflags = fcntl(sock, F_GETFD, 0)) == -1 || + fcntl(sock, F_SETFD, fdflags | FD_CLOEXEC) == -1) + { + smi_log(SMI_LOG_ERR, + "%s: Unable to set close-on-exec: %s", name, + sm_errstring(errno)); + (void) closesocket(sock); + return INVALID_SOCKET; + } + if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (void *) &sockopt, sizeof(sockopt)) == -1) { @@ -390,7 +449,7 @@ mi_milteropen(conn, backlog, socksize, family, name) return INVALID_SOCKET; } - if (bind(sock, &addr.sa, *socksize) < 0) + if (bind(sock, &addr.sa, L_socksize) < 0) { smi_log(SMI_LOG_ERR, "%s: Unable to bind to port %s: %s", @@ -429,7 +488,7 @@ mi_milteropen(conn, backlog, socksize, family, name) } } #endif /* NETUNIX */ - *family = addr.sa.sa_family; + L_family = addr.sa.sa_family; return sock; } /* @@ -449,8 +508,6 @@ mi_thread_handle_wrapper(arg) return (void *) mi_handle_session(arg); } -static socket_t listenfd = INVALID_SOCKET; - /* ** MI_CLOSENER -- close listen socket ** @@ -528,6 +585,7 @@ mi_closener() ** dbg -- debug level ** smfi -- filter structure to use ** timeout -- timeout for reads/writes +** backlog -- listen queue backlog size ** ** Returns: ** MI_SUCCESS -- Exited normally @@ -584,7 +642,6 @@ mi_listener(conn, dbg, smfi, timeout, backlog) int backlog; { socket_t connfd = INVALID_SOCKET; - int family = AF_UNSPEC; int sockopt = 1; int r; int ret = MI_SUCCESS; @@ -595,29 +652,15 @@ mi_listener(conn, dbg, smfi, timeout, backlog) int save_errno = 0; sthread_t thread_id; _SOCK_ADDR cliaddr; - SOCKADDR_LEN_T socksize; SOCKADDR_LEN_T clilen; SMFICTX_PTR ctx; fd_set readset, excset; struct timeval chktime; - if (dbg > 0) - smi_log(SMI_LOG_DEBUG, - "%s: Opening listen socket on conn %s", - smfi->xxfi_name, conn); - (void) smutex_init(&L_Mutex); - (void) smutex_lock(&L_Mutex); - listenfd = mi_milteropen(conn, backlog, &socksize, &family, - smfi->xxfi_name); - if (!ValidSocket(listenfd)) - { - smi_log(SMI_LOG_FATAL, - "%s: Unable to create listening socket on conn %s", - smfi->xxfi_name, conn); - (void) smutex_unlock(&L_Mutex); + if (mi_opensocket(conn, backlog, dbg, smfi) == MI_FAILURE) return MI_FAILURE; - } - clilen = socksize; + + clilen = L_socksize; if (listenfd >= FD_SETSIZE) { @@ -698,7 +741,7 @@ mi_listener(conn, dbg, smfi, timeout, backlog) # ifdef BSD4_4_SOCKADDR cliaddr.sa.sa_len == 0 || # endif /* BSD4_4_SOCKADDR */ - cliaddr.sa.sa_family != family)) + cliaddr.sa.sa_family != L_family)) { (void) closesocket(connfd); connfd = INVALID_SOCKET; diff --git a/contrib/sendmail/libmilter/main.c b/contrib/sendmail/libmilter/main.c index 345741a5b45..92690cd7cb1 100644 --- a/contrib/sendmail/libmilter/main.c +++ b/contrib/sendmail/libmilter/main.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: main.c,v 1.1.1.5 2002/04/10 03:05:00 gshapiro Exp $") +SM_RCSID("@(#)$Id: main.c,v 8.63 2002/04/30 23:52:24 msk Exp $") #define _DEFINE 1 #include "libmilter.h" @@ -93,7 +93,29 @@ smfi_stop() static int dbg = 0; static char *conn = NULL; static int timeout = MI_TIMEOUT; -static int backlog= MI_SOMAXCONN; +static int backlog = MI_SOMAXCONN; + +#if _FFR_SMFI_OPENSOCKET +/* +** SMFI_OPENSOCKET -- try the socket setup to make sure we'll be +** able to start up +** +** Parameters: +** None. +** +** Return: +** MI_SUCCESS/MI_FAILURE +*/ + +int +smfi_opensocket() +{ + if (smfi == NULL || conn == NULL) + return MI_FAILURE; + + return mi_opensocket(conn, backlog, dbg, smfi); +} +#endif /* _FFR_SMFI_OPENSOCKET */ /* ** SMFI_SETDBG -- set debug level. diff --git a/contrib/sendmail/libmilter/signal.c b/contrib/sendmail/libmilter/signal.c index 514afb6e0ec..43a85675e53 100644 --- a/contrib/sendmail/libmilter/signal.c +++ b/contrib/sendmail/libmilter/signal.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: signal.c,v 1.1.1.5 2002/04/10 03:05:00 gshapiro Exp $") +SM_RCSID("@(#)$Id: signal.c,v 8.37 2002/03/23 00:55:19 ca Exp $") #include "libmilter.h" diff --git a/contrib/sendmail/libmilter/sm_gethost.c b/contrib/sendmail/libmilter/sm_gethost.c index 96aaf604aef..171474135c8 100644 --- a/contrib/sendmail/libmilter/sm_gethost.c +++ b/contrib/sendmail/libmilter/sm_gethost.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: sm_gethost.c,v 1.1.1.7 2002/02/17 21:56:45 gshapiro Exp $") +SM_RCSID("@(#)$Id: sm_gethost.c,v 8.26 2001/09/11 04:04:45 gshapiro Exp $") #include #if NETINET || NETINET6 diff --git a/contrib/sendmail/libmilter/smfi.c b/contrib/sendmail/libmilter/smfi.c index 666673b0aae..032a6acb288 100644 --- a/contrib/sendmail/libmilter/smfi.c +++ b/contrib/sendmail/libmilter/smfi.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: smfi.c,v 1.1.1.3 2002/04/10 03:05:00 gshapiro Exp $") +SM_RCSID("@(#)$Id: smfi.c,v 8.64 2002/04/30 22:22:02 msk Exp $") #include #include "libmilter.h" @@ -267,6 +267,7 @@ smfi_quarantine(ctx, reason) ** Side Effects: ** none. */ + static int myisenhsc(s, delim) const char *s; diff --git a/contrib/sendmail/libsm/Makefile b/contrib/sendmail/libsm/Makefile index a71d1173633..c6c1a293d5b 100644 --- a/contrib/sendmail/libsm/Makefile +++ b/contrib/sendmail/libsm/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +# $Id: Makefile,v 1.1 2000/03/27 19:26:48 dmoen Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/libsm/README b/contrib/sendmail/libsm/README index b829b3aa276..d75d55f8ea8 100644 --- a/contrib/sendmail/libsm/README +++ b/contrib/sendmail/libsm/README @@ -5,7 +5,7 @@ # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # -# $Id: README,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $ +# $Id: README,v 1.21 2002/01/23 17:30:48 gshapiro Exp $ # Libsm is a library of generally useful C abstractions. diff --git a/contrib/sendmail/libsm/assert.c b/contrib/sendmail/libsm/assert.c index 04bebf10c65..efad1ec14e4 100644 --- a/contrib/sendmail/libsm/assert.c +++ b/contrib/sendmail/libsm/assert.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: assert.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: assert.c,v 1.25 2001/09/11 04:04:47 gshapiro Exp $") /* ** Abnormal program termination and assertion checking. diff --git a/contrib/sendmail/libsm/assert.html b/contrib/sendmail/libsm/assert.html index 6515ac2d540..a3251998db6 100644 --- a/contrib/sendmail/libsm/assert.html +++ b/contrib/sendmail/libsm/assert.html @@ -8,7 +8,7 @@

    libsm : Assert and Abort

    -
    $Id: assert.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: assert.html,v 1.6 2001/08/27 21:47:03 ca Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/b-strcmp.c b/contrib/sendmail/libsm/b-strcmp.c index af5335eb915..a713bc619d1 100644 --- a/contrib/sendmail/libsm/b-strcmp.c +++ b/contrib/sendmail/libsm/b-strcmp.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: b-strcmp.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: b-strcmp.c,v 1.12 2001/09/11 04:04:47 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/b-strl.c b/contrib/sendmail/libsm/b-strl.c index 2a5206e20f8..a6961542201 100644 --- a/contrib/sendmail/libsm/b-strl.c +++ b/contrib/sendmail/libsm/b-strl.c @@ -19,7 +19,7 @@ */ #include -SM_RCSID("@(#)$Id: b-strl.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: b-strl.c,v 1.24 2001/09/11 04:04:47 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/cdefs.html b/contrib/sendmail/libsm/cdefs.html index bf8cb63c61f..33e45acfd3e 100644 --- a/contrib/sendmail/libsm/cdefs.html +++ b/contrib/sendmail/libsm/cdefs.html @@ -8,7 +8,7 @@

    libsm : C Language Portability Macros

    -
    $Id: cdefs.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: cdefs.html,v 1.2 2000/12/07 17:33:09 dmoen Exp $

    Description

    @@ -86,7 +86,7 @@ SM_DEAD(void exit __P((int))); Examples:
    -SM_UNUSED(static const char Id[]) = "@(#)$Id: cdefs.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $";
    +SM_UNUSED(static const char Id[]) = "@(#)$Id: cdefs.html,v 1.2 2000/12/07 17:33:09 dmoen Exp $";
     void
     foo(x)
     	SM_UNUSED(int x);
    diff --git a/contrib/sendmail/libsm/cf.c b/contrib/sendmail/libsm/cf.c
    index aeebba763cd..d2178753ced 100644
    --- a/contrib/sendmail/libsm/cf.c
    +++ b/contrib/sendmail/libsm/cf.c
    @@ -9,7 +9,7 @@
      */
     
     #include 
    -SM_RCSID("@(#)$Id: cf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $")
    +SM_RCSID("@(#)$Id: cf.c,v 1.6 2001/09/11 04:04:47 gshapiro Exp $")
     
     #include 
     #include 
    diff --git a/contrib/sendmail/libsm/clock.c b/contrib/sendmail/libsm/clock.c
    index b952859b8f1..ada9689980a 100644
    --- a/contrib/sendmail/libsm/clock.c
    +++ b/contrib/sendmail/libsm/clock.c
    @@ -12,7 +12,7 @@
      */
     
     #include 
    -SM_RCSID("@(#)$Id: clock.c,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $")
    +SM_RCSID("@(#)$Id: clock.c,v 1.35 2002/03/22 18:34:38 gshapiro Exp $")
     #include 
     #include 
     #include 
    diff --git a/contrib/sendmail/libsm/clrerr.c b/contrib/sendmail/libsm/clrerr.c
    index 01478249b95..5b1a8a80aec 100644
    --- a/contrib/sendmail/libsm/clrerr.c
    +++ b/contrib/sendmail/libsm/clrerr.c
    @@ -13,7 +13,7 @@
      */
     
     #include 
    -SM_RCSID("@(#)$Id: clrerr.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $")
    +SM_RCSID("@(#)$Id: clrerr.c,v 1.13 2001/09/11 04:04:48 gshapiro Exp $")
     #include 
     #include 
     #include "local.h"
    diff --git a/contrib/sendmail/libsm/config.c b/contrib/sendmail/libsm/config.c
    index acf26cb086e..53cbe3dca4e 100644
    --- a/contrib/sendmail/libsm/config.c
    +++ b/contrib/sendmail/libsm/config.c
    @@ -9,7 +9,7 @@
      */
     
     #include 
    -SM_RCSID("@(#)$Id: config.c,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $")
    +SM_RCSID("@(#)$Id: config.c,v 1.27 2002/01/23 17:30:48 gshapiro Exp $")
     
     #include 
     #include 
    diff --git a/contrib/sendmail/libsm/debug.c b/contrib/sendmail/libsm/debug.c
    index ebaee2dd953..37e5e829cb3 100644
    --- a/contrib/sendmail/libsm/debug.c
    +++ b/contrib/sendmail/libsm/debug.c
    @@ -8,7 +8,7 @@
      */
     
     #include 
    -SM_RCSID("@(#)$Id: debug.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $")
    +SM_RCSID("@(#)$Id: debug.c,v 1.28 2001/09/25 19:57:05 gshapiro Exp $")
     
     /*
     **  libsm debugging and tracing
    diff --git a/contrib/sendmail/libsm/debug.html b/contrib/sendmail/libsm/debug.html
    index b7f1b9c73a1..a9b184af7c0 100644
    --- a/contrib/sendmail/libsm/debug.html
    +++ b/contrib/sendmail/libsm/debug.html
    @@ -8,7 +8,7 @@
     
     

    libsm : Debugging and Tracing

    -
    $Id: debug.html,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $ +
    $Id: debug.html,v 1.9 2002/02/02 16:50:56 ca Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/errstring.c b/contrib/sendmail/libsm/errstring.c index a90efc56700..29aaade880a 100644 --- a/contrib/sendmail/libsm/errstring.c +++ b/contrib/sendmail/libsm/errstring.c @@ -11,7 +11,7 @@ */ #include -SM_RCSID("@(#)$Id: errstring.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: errstring.c,v 1.12 2001/10/03 16:09:32 ca Exp $") #include #include /* sys_errlist, on some platforms */ diff --git a/contrib/sendmail/libsm/exc.c b/contrib/sendmail/libsm/exc.c index 07487961019..9cc1c6fa096 100644 --- a/contrib/sendmail/libsm/exc.c +++ b/contrib/sendmail/libsm/exc.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: exc.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: exc.c,v 1.47 2002/01/09 18:51:43 ca Exp $") /* ** exception handling diff --git a/contrib/sendmail/libsm/exc.html b/contrib/sendmail/libsm/exc.html index d0905f3fe9e..a2990363ce8 100644 --- a/contrib/sendmail/libsm/exc.html +++ b/contrib/sendmail/libsm/exc.html @@ -8,7 +8,7 @@

    libsm : Exception Handling

    -
    $Id: exc.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: exc.html,v 1.12 2001/02/13 21:21:25 gshapiro Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/fclose.c b/contrib/sendmail/libsm/fclose.c index a2e8fbaaf5e..2de1413196a 100644 --- a/contrib/sendmail/libsm/fclose.c +++ b/contrib/sendmail/libsm/fclose.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fclose.c,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $") +SM_RCSID("@(#)$Id: fclose.c,v 1.42 2002/02/01 02:28:00 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/feof.c b/contrib/sendmail/libsm/feof.c index 89a52c33fbb..8d5e0d8fcd0 100644 --- a/contrib/sendmail/libsm/feof.c +++ b/contrib/sendmail/libsm/feof.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: feof.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: feof.c,v 1.13 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include "local.h" diff --git a/contrib/sendmail/libsm/ferror.c b/contrib/sendmail/libsm/ferror.c index 095949055d1..9487479a220 100644 --- a/contrib/sendmail/libsm/ferror.c +++ b/contrib/sendmail/libsm/ferror.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: ferror.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: ferror.c,v 1.13 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include "local.h" diff --git a/contrib/sendmail/libsm/fflush.c b/contrib/sendmail/libsm/fflush.c index 154d5fe8eb8..83b318e2599 100644 --- a/contrib/sendmail/libsm/fflush.c +++ b/contrib/sendmail/libsm/fflush.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fflush.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fflush.c,v 1.43 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fget.c b/contrib/sendmail/libsm/fget.c index 2ad7c97d9b6..611748c6eca 100644 --- a/contrib/sendmail/libsm/fget.c +++ b/contrib/sendmail/libsm/fget.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fget.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fget.c,v 1.24 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/findfp.c b/contrib/sendmail/libsm/findfp.c index a885e69d919..115ed22fa85 100644 --- a/contrib/sendmail/libsm/findfp.c +++ b/contrib/sendmail/libsm/findfp.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: findfp.c,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $") +SM_RCSID("@(#)$Id: findfp.c,v 1.66 2002/02/20 02:40:24 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/flags.c b/contrib/sendmail/libsm/flags.c index 37f2a63c6fc..b3877f12ccc 100644 --- a/contrib/sendmail/libsm/flags.c +++ b/contrib/sendmail/libsm/flags.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: flags.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: flags.c,v 1.20 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fopen.c b/contrib/sendmail/libsm/fopen.c index b76b185ecce..a2fae9d9109 100644 --- a/contrib/sendmail/libsm/fopen.c +++ b/contrib/sendmail/libsm/fopen.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fopen.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fopen.c,v 1.60 2002/01/07 21:41:35 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fpos.c b/contrib/sendmail/libsm/fpos.c index 6936ed0a481..a8083fd86fc 100644 --- a/contrib/sendmail/libsm/fpos.c +++ b/contrib/sendmail/libsm/fpos.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fpos.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fpos.c,v 1.37 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fprintf.c b/contrib/sendmail/libsm/fprintf.c index 50fa9971b69..71938729c6d 100644 --- a/contrib/sendmail/libsm/fprintf.c +++ b/contrib/sendmail/libsm/fprintf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fprintf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fprintf.c,v 1.17 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fpurge.c b/contrib/sendmail/libsm/fpurge.c index 8b5d54728ed..4e6fd5a106b 100644 --- a/contrib/sendmail/libsm/fpurge.c +++ b/contrib/sendmail/libsm/fpurge.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fpurge.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fpurge.c,v 1.20 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fput.c b/contrib/sendmail/libsm/fput.c index 1b691610eb7..3c5e11c7ee7 100644 --- a/contrib/sendmail/libsm/fput.c +++ b/contrib/sendmail/libsm/fput.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fput.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fput.c,v 1.20 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fread.c b/contrib/sendmail/libsm/fread.c index b0ec2177a1f..1e651fdc497 100644 --- a/contrib/sendmail/libsm/fread.c +++ b/contrib/sendmail/libsm/fread.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fread.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fread.c,v 1.28 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fscanf.c b/contrib/sendmail/libsm/fscanf.c index 5947f86ad2d..5e1fcfde795 100644 --- a/contrib/sendmail/libsm/fscanf.c +++ b/contrib/sendmail/libsm/fscanf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fscanf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fscanf.c,v 1.17 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fseek.c b/contrib/sendmail/libsm/fseek.c index de4532c7498..6985e0d1dca 100644 --- a/contrib/sendmail/libsm/fseek.c +++ b/contrib/sendmail/libsm/fseek.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fseek.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fseek.c,v 1.45 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fvwrite.c b/contrib/sendmail/libsm/fvwrite.c index 234197841e2..a692781bab3 100644 --- a/contrib/sendmail/libsm/fvwrite.c +++ b/contrib/sendmail/libsm/fvwrite.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fvwrite.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fvwrite.c,v 1.49 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/fvwrite.h b/contrib/sendmail/libsm/fvwrite.h index c35fa48c234..a1344c0bf46 100644 --- a/contrib/sendmail/libsm/fvwrite.h +++ b/contrib/sendmail/libsm/fvwrite.h @@ -11,7 +11,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: fvwrite.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: fvwrite.h,v 1.7 2001/03/02 00:18:19 ca Exp $ */ /* I/O descriptors for sm_fvwrite() */ diff --git a/contrib/sendmail/libsm/fwalk.c b/contrib/sendmail/libsm/fwalk.c index ee60dee372c..b878c1a933f 100644 --- a/contrib/sendmail/libsm/fwalk.c +++ b/contrib/sendmail/libsm/fwalk.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fwalk.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fwalk.c,v 1.21 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include "local.h" diff --git a/contrib/sendmail/libsm/fwrite.c b/contrib/sendmail/libsm/fwrite.c index a60a2038a41..372f75dfe9b 100644 --- a/contrib/sendmail/libsm/fwrite.c +++ b/contrib/sendmail/libsm/fwrite.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: fwrite.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: fwrite.c,v 1.24 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/gen.html b/contrib/sendmail/libsm/gen.html index 31bc98ad8cb..cf642ae88b4 100644 --- a/contrib/sendmail/libsm/gen.html +++ b/contrib/sendmail/libsm/gen.html @@ -8,7 +8,7 @@

    libsm : General Definitions

    -
    $Id: gen.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: gen.html,v 1.5 2000/12/08 21:41:42 ca Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/get.c b/contrib/sendmail/libsm/get.c index b7faf70373b..74549fe4724 100644 --- a/contrib/sendmail/libsm/get.c +++ b/contrib/sendmail/libsm/get.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: get.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: get.c,v 1.18 2001/09/11 04:04:48 gshapiro Exp $") #include #include #include "local.h" diff --git a/contrib/sendmail/libsm/glue.h b/contrib/sendmail/libsm/glue.h index 1d6b1108326..db8c1018a5f 100644 --- a/contrib/sendmail/libsm/glue.h +++ b/contrib/sendmail/libsm/glue.h @@ -11,7 +11,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: glue.h,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + * $Id: glue.h,v 1.6 2001/01/22 23:09:49 ca Exp $ */ /* diff --git a/contrib/sendmail/libsm/heap.c b/contrib/sendmail/libsm/heap.c index 1039ee1e95b..50bb6316115 100644 --- a/contrib/sendmail/libsm/heap.c +++ b/contrib/sendmail/libsm/heap.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: heap.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: heap.c,v 1.50 2001/09/11 04:04:48 gshapiro Exp $") /* ** debugging memory allocation package diff --git a/contrib/sendmail/libsm/heap.html b/contrib/sendmail/libsm/heap.html index c5d867351b4..bc32b012e75 100644 --- a/contrib/sendmail/libsm/heap.html +++ b/contrib/sendmail/libsm/heap.html @@ -8,7 +8,7 @@

    libsm : Memory Allocation

    -
    $Id: heap.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: heap.html,v 1.9 2000/12/08 21:41:42 ca Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/index.html b/contrib/sendmail/libsm/index.html index cba9260c956..f2eec16e6c0 100644 --- a/contrib/sendmail/libsm/index.html +++ b/contrib/sendmail/libsm/index.html @@ -6,7 +6,7 @@

    libsm Overview

    -
    $Id: index.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: index.html,v 1.14 2001/02/13 21:21:25 gshapiro Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/io.html b/contrib/sendmail/libsm/io.html index 58a33811cc7..5bb7c32dbc1 100644 --- a/contrib/sendmail/libsm/io.html +++ b/contrib/sendmail/libsm/io.html @@ -6,7 +6,7 @@ Back to libsm overview

    libsm sm_io general overview

    -
    $Id: io.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: io.html,v 1.3 2001/03/17 03:22:50 gshapiro Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/ldap.c b/contrib/sendmail/libsm/ldap.c index 3908c4660b6..3e85a87664e 100644 --- a/contrib/sendmail/libsm/ldap.c +++ b/contrib/sendmail/libsm/ldap.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: ldap.c,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $") +SM_RCSID("@(#)$Id: ldap.c,v 1.44 2002/02/22 21:54:02 gshapiro Exp $") #if LDAPMAP # include diff --git a/contrib/sendmail/libsm/local.h b/contrib/sendmail/libsm/local.h index c816db6942e..943321363c2 100644 --- a/contrib/sendmail/libsm/local.h +++ b/contrib/sendmail/libsm/local.h @@ -11,7 +11,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: local.h,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $ + * $Id: local.h,v 1.51 2002/02/20 02:40:24 ca Exp $ */ /* diff --git a/contrib/sendmail/libsm/makebuf.c b/contrib/sendmail/libsm/makebuf.c index 492ad10392f..044de8c36f7 100644 --- a/contrib/sendmail/libsm/makebuf.c +++ b/contrib/sendmail/libsm/makebuf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: makebuf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: makebuf.c,v 1.26 2001/10/31 16:04:08 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/match.c b/contrib/sendmail/libsm/match.c index a5e563567f6..e42b865a39e 100644 --- a/contrib/sendmail/libsm/match.c +++ b/contrib/sendmail/libsm/match.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: match.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: match.c,v 1.10 2001/09/11 04:04:48 gshapiro Exp $") #include diff --git a/contrib/sendmail/libsm/mbdb.c b/contrib/sendmail/libsm/mbdb.c index d2eeea2a313..9e1ec639bb6 100644 --- a/contrib/sendmail/libsm/mbdb.c +++ b/contrib/sendmail/libsm/mbdb.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: mbdb.c,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $") +SM_RCSID("@(#)$Id: mbdb.c,v 1.38 2002/04/05 22:59:56 gshapiro Exp $") #include @@ -113,7 +113,9 @@ sm_mbdb_initialize(mbdb) if (strlen(t->mbdb_typename) == namelen && strncmp(name, t->mbdb_typename, namelen) == 0) { - err = t->mbdb_initialize(arg); + err = EX_OK; + if (t->mbdb_initialize != NULL) + err = t->mbdb_initialize(arg); if (err == EX_OK) SmMbdbType = t; return err; @@ -140,7 +142,8 @@ sm_mbdb_initialize(mbdb) void sm_mbdb_terminate() { - SmMbdbType->mbdb_terminate(); + if (SmMbdbType->mbdb_terminate != NULL) + SmMbdbType->mbdb_terminate(); } /* @@ -162,7 +165,11 @@ sm_mbdb_lookup(name, user) char *name; SM_MBDB_T *user; { - return SmMbdbType->mbdb_lookup(name, user); + int ret = EX_NOUSER; + + if (SmMbdbType->mbdb_lookup != NULL) + ret = SmMbdbType->mbdb_lookup(name, user); + return ret; } /* diff --git a/contrib/sendmail/libsm/mpeix.c b/contrib/sendmail/libsm/mpeix.c index 9583ab5dd30..6d9fedcdf62 100644 --- a/contrib/sendmail/libsm/mpeix.c +++ b/contrib/sendmail/libsm/mpeix.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 2001-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: mpeix.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: mpeix.c,v 1.6 2002/05/24 20:50:14 gshapiro Exp $") #ifdef MPE /* @@ -607,7 +607,7 @@ sendmail_mpe_setuid(uid) uid_t uid; { char *cwd; - char cwd_buf[PATH_MAX+1]; + char cwd_buf[PATH_MAX + 1]; int result; extern void GETPRIVMODE __P((void)); extern void GETUSERMODE __P((void)); diff --git a/contrib/sendmail/libsm/niprop.c b/contrib/sendmail/libsm/niprop.c index eae639e9f40..ad58867cf01 100644 --- a/contrib/sendmail/libsm/niprop.c +++ b/contrib/sendmail/libsm/niprop.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: niprop.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: niprop.c,v 1.8 2001/09/11 04:04:48 gshapiro Exp $") #if NETINFO #include diff --git a/contrib/sendmail/libsm/path.c b/contrib/sendmail/libsm/path.c index 4c82c234aca..6932e1f2950 100644 --- a/contrib/sendmail/libsm/path.c +++ b/contrib/sendmail/libsm/path.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: path.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: path.c,v 1.9 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/put.c b/contrib/sendmail/libsm/put.c index 05fbad03661..d513b98b3cc 100644 --- a/contrib/sendmail/libsm/put.c +++ b/contrib/sendmail/libsm/put.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: put.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: put.c,v 1.27 2001/12/19 05:19:35 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/refill.c b/contrib/sendmail/libsm/refill.c index da9d8351713..10c7cde2eb7 100644 --- a/contrib/sendmail/libsm/refill.c +++ b/contrib/sendmail/libsm/refill.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: refill.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: refill.c,v 1.49 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/rewind.c b/contrib/sendmail/libsm/rewind.c index e398bcb504c..597c6dbc375 100644 --- a/contrib/sendmail/libsm/rewind.c +++ b/contrib/sendmail/libsm/rewind.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: rewind.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: rewind.c,v 1.18 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/rpool.c b/contrib/sendmail/libsm/rpool.c index 6ab573dfa58..863216660f7 100644 --- a/contrib/sendmail/libsm/rpool.c +++ b/contrib/sendmail/libsm/rpool.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: rpool.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: rpool.c,v 1.24 2002/01/11 21:54:43 ca Exp $") /* ** resource pools diff --git a/contrib/sendmail/libsm/rpool.html b/contrib/sendmail/libsm/rpool.html index e2ff415e003..f796bc043aa 100644 --- a/contrib/sendmail/libsm/rpool.html +++ b/contrib/sendmail/libsm/rpool.html @@ -8,7 +8,7 @@

    libsm : Resource Pools

    -
    $Id: rpool.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +
    $Id: rpool.html,v 1.4 2000/12/07 17:33:09 dmoen Exp $

    Introduction

    diff --git a/contrib/sendmail/libsm/setvbuf.c b/contrib/sendmail/libsm/setvbuf.c index 2b6c08afbee..172a767b853 100644 --- a/contrib/sendmail/libsm/setvbuf.c +++ b/contrib/sendmail/libsm/setvbuf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: setvbuf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: setvbuf.c,v 1.32 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/shm.c b/contrib/sendmail/libsm/shm.c index b622c51e5b3..35ae02856a6 100644 --- a/contrib/sendmail/libsm/shm.c +++ b/contrib/sendmail/libsm/shm.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: shm.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: shm.c,v 1.10 2001/12/14 00:22:58 ca Exp $") #if SM_CONF_SHM # include diff --git a/contrib/sendmail/libsm/signal.c b/contrib/sendmail/libsm/signal.c index 284e75a27d9..9061efc6a2f 100644 --- a/contrib/sendmail/libsm/signal.c +++ b/contrib/sendmail/libsm/signal.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: signal.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: signal.c,v 1.16 2001/09/11 04:04:49 gshapiro Exp $") #if SM_CONF_SETITIMER # include diff --git a/contrib/sendmail/libsm/smstdio.c b/contrib/sendmail/libsm/smstdio.c index 0126ac1937b..879fcd25f40 100644 --- a/contrib/sendmail/libsm/smstdio.c +++ b/contrib/sendmail/libsm/smstdio.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: smstdio.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: smstdio.c,v 1.32 2002/02/23 20:18:36 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/snprintf.c b/contrib/sendmail/libsm/snprintf.c index 3cea818215b..5ee3006e6ed 100644 --- a/contrib/sendmail/libsm/snprintf.c +++ b/contrib/sendmail/libsm/snprintf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: snprintf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: snprintf.c,v 1.23 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/sscanf.c b/contrib/sendmail/libsm/sscanf.c index fb485447408..168bcfdddd6 100644 --- a/contrib/sendmail/libsm/sscanf.c +++ b/contrib/sendmail/libsm/sscanf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: sscanf.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_RCSID("@(#)$Id: sscanf.c,v 1.25 2002/02/01 02:28:00 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/stdio.c b/contrib/sendmail/libsm/stdio.c index 207164b8ebc..c3ab72d0124 100644 --- a/contrib/sendmail/libsm/stdio.c +++ b/contrib/sendmail/libsm/stdio.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: stdio.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_RCSID("@(#)$Id: stdio.c,v 1.56 2002/04/03 21:55:15 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/strcasecmp.c b/contrib/sendmail/libsm/strcasecmp.c index c2fb58e86e9..15f5ce8f871 100644 --- a/contrib/sendmail/libsm/strcasecmp.c +++ b/contrib/sendmail/libsm/strcasecmp.c @@ -12,7 +12,7 @@ */ #include -SM_RCSID("@(#)$Id: strcasecmp.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: strcasecmp.c,v 1.15 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/strdup.c b/contrib/sendmail/libsm/strdup.c index 2196359fa15..64fe5c2a9a9 100644 --- a/contrib/sendmail/libsm/strdup.c +++ b/contrib/sendmail/libsm/strdup.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: strdup.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: strdup.c,v 1.13 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/strerror.c b/contrib/sendmail/libsm/strerror.c index b0b2df87ea4..ffdfb2182bc 100644 --- a/contrib/sendmail/libsm/strerror.c +++ b/contrib/sendmail/libsm/strerror.c @@ -12,7 +12,7 @@ */ #include -SM_RCSID("@(#)$Id: strerror.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: strerror.c,v 1.23 2001/09/11 04:04:49 gshapiro Exp $") /* ** define strerror for platforms that lack it. diff --git a/contrib/sendmail/libsm/strexit.c b/contrib/sendmail/libsm/strexit.c index 2626b0749de..0f2cdfc6cdf 100644 --- a/contrib/sendmail/libsm/strexit.c +++ b/contrib/sendmail/libsm/strexit.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: strexit.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: strexit.c,v 1.5 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/string.c b/contrib/sendmail/libsm/string.c index 892aa41ec76..b0b69756997 100644 --- a/contrib/sendmail/libsm/string.c +++ b/contrib/sendmail/libsm/string.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: string.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: string.c,v 1.3 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/stringf.c b/contrib/sendmail/libsm/stringf.c index cdab93edc48..b6a7f663567 100644 --- a/contrib/sendmail/libsm/stringf.c +++ b/contrib/sendmail/libsm/stringf.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: stringf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: stringf.c,v 1.15 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/strio.c b/contrib/sendmail/libsm/strio.c index 6925f596f2e..2b7e9d0cfe9 100644 --- a/contrib/sendmail/libsm/strio.c +++ b/contrib/sendmail/libsm/strio.c @@ -13,7 +13,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: strio.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: strio.c,v 1.42 2002/02/11 23:05:50 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/strl.c b/contrib/sendmail/libsm/strl.c index bba995033d3..ec9a81be266 100644 --- a/contrib/sendmail/libsm/strl.c +++ b/contrib/sendmail/libsm/strl.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: strl.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_RCSID("@(#)$Id: strl.c,v 1.31 2002/01/20 01:41:25 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/strrevcmp.c b/contrib/sendmail/libsm/strrevcmp.c index 2490927099f..d0ed630eacb 100644 --- a/contrib/sendmail/libsm/strrevcmp.c +++ b/contrib/sendmail/libsm/strrevcmp.c @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: strrevcmp.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: strrevcmp.c,v 1.5 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/strto.c b/contrib/sendmail/libsm/strto.c index aafb3d5e46d..87e84bfeaa5 100644 --- a/contrib/sendmail/libsm/strto.c +++ b/contrib/sendmail/libsm/strto.c @@ -10,7 +10,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: strto.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: strto.c,v 1.18 2001/12/30 04:59:37 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/syslogio.c b/contrib/sendmail/libsm/syslogio.c index e524710eeac..24fa3a23b31 100644 --- a/contrib/sendmail/libsm/syslogio.c +++ b/contrib/sendmail/libsm/syslogio.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: syslogio.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: syslogio.c,v 1.29 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/t-cf.c b/contrib/sendmail/libsm/t-cf.c index b42f8ce5254..90785144fbf 100644 --- a/contrib/sendmail/libsm/t-cf.c +++ b/contrib/sendmail/libsm/t-cf.c @@ -9,7 +9,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-cf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-cf.c,v 1.7 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-event.c b/contrib/sendmail/libsm/t-event.c index 9b054abfe2e..607377617c8 100644 --- a/contrib/sendmail/libsm/t-event.c +++ b/contrib/sendmail/libsm/t-event.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: t-event.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_RCSID("@(#)$Id: t-event.c,v 1.11 2002/04/25 01:50:25 ca Exp $") #include diff --git a/contrib/sendmail/libsm/t-exc.c b/contrib/sendmail/libsm/t-exc.c index eb5fd440c78..a6922e04162 100644 --- a/contrib/sendmail/libsm/t-exc.c +++ b/contrib/sendmail/libsm/t-exc.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-exc.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-exc.c,v 1.20 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-float.c b/contrib/sendmail/libsm/t-float.c index 06a48d4d0e7..f3f059b1a1e 100644 --- a/contrib/sendmail/libsm/t-float.c +++ b/contrib/sendmail/libsm/t-float.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-float.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-float.c,v 1.18 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-fopen.c b/contrib/sendmail/libsm/t-fopen.c index 6296d9c8160..2d3839a34d9 100644 --- a/contrib/sendmail/libsm/t-fopen.c +++ b/contrib/sendmail/libsm/t-fopen.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-fopen.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-fopen.c,v 1.9 2002/02/06 23:57:45 ca Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-heap.c b/contrib/sendmail/libsm/t-heap.c index 05811bb579d..7ddb60d2ccb 100644 --- a/contrib/sendmail/libsm/t-heap.c +++ b/contrib/sendmail/libsm/t-heap.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-heap.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-heap.c,v 1.10 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-match.c b/contrib/sendmail/libsm/t-match.c index c92052fbbdb..d2776c02a2b 100644 --- a/contrib/sendmail/libsm/t-match.c +++ b/contrib/sendmail/libsm/t-match.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-match.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-match.c,v 1.9 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-path.c b/contrib/sendmail/libsm/t-path.c index 2a53c8abb92..fa6e3453b23 100644 --- a/contrib/sendmail/libsm/t-path.c +++ b/contrib/sendmail/libsm/t-path.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-path.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-path.c,v 1.8 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-rpool.c b/contrib/sendmail/libsm/t-rpool.c index f3553a08bc7..b671a4b4be8 100644 --- a/contrib/sendmail/libsm/t-rpool.c +++ b/contrib/sendmail/libsm/t-rpool.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-rpool.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-rpool.c,v 1.18 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-scanf.c b/contrib/sendmail/libsm/t-scanf.c index 9f7a87410fc..b3ca0bd8aae 100644 --- a/contrib/sendmail/libsm/t-scanf.c +++ b/contrib/sendmail/libsm/t-scanf.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-scanf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-scanf.c,v 1.5 2001/11/13 00:51:28 ca Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-shm.c b/contrib/sendmail/libsm/t-shm.c index 66c008f9434..5da07c1e369 100644 --- a/contrib/sendmail/libsm/t-shm.c +++ b/contrib/sendmail/libsm/t-shm.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: t-shm.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_RCSID("@(#)$Id: t-shm.c,v 1.18 2002/01/31 04:11:41 ca Exp $") #include diff --git a/contrib/sendmail/libsm/t-smstdio.c b/contrib/sendmail/libsm/t-smstdio.c index 724d2220f51..3bad1c1b155 100644 --- a/contrib/sendmail/libsm/t-smstdio.c +++ b/contrib/sendmail/libsm/t-smstdio.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-smstdio.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-smstdio.c,v 1.11 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-string.c b/contrib/sendmail/libsm/t-string.c index 3c9fab1988b..0506e7aa407 100644 --- a/contrib/sendmail/libsm/t-string.c +++ b/contrib/sendmail/libsm/t-string.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-string.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-string.c,v 1.11 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-strio.c b/contrib/sendmail/libsm/t-strio.c index 7134d95e813..bb18dae688f 100644 --- a/contrib/sendmail/libsm/t-strio.c +++ b/contrib/sendmail/libsm/t-strio.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-strio.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-strio.c,v 1.11 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/t-strl.c b/contrib/sendmail/libsm/t-strl.c index df4e6faf027..5c118dcbe6d 100644 --- a/contrib/sendmail/libsm/t-strl.c +++ b/contrib/sendmail/libsm/t-strl.c @@ -9,7 +9,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-strl.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-strl.c,v 1.15 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-strrevcmp.c b/contrib/sendmail/libsm/t-strrevcmp.c index 189b77eae1a..fb8fb467d04 100644 --- a/contrib/sendmail/libsm/t-strrevcmp.c +++ b/contrib/sendmail/libsm/t-strrevcmp.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-strrevcmp.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-strrevcmp.c,v 1.3 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/t-types.c b/contrib/sendmail/libsm/t-types.c index c1f923445cf..cb07f67571b 100644 --- a/contrib/sendmail/libsm/t-types.c +++ b/contrib/sendmail/libsm/t-types.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: t-types.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: t-types.c,v 1.18 2002/03/13 17:29:53 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/test.c b/contrib/sendmail/libsm/test.c index 376c2bebdcf..361cc45576a 100644 --- a/contrib/sendmail/libsm/test.c +++ b/contrib/sendmail/libsm/test.c @@ -8,7 +8,7 @@ */ #include -SM_IDSTR(Id, "@(#)$Id: test.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(Id, "@(#)$Id: test.c,v 1.16 2002/01/08 17:54:40 ca Exp $") /* ** Abstractions for writing libsm test programs. diff --git a/contrib/sendmail/libsm/ungetc.c b/contrib/sendmail/libsm/ungetc.c index 0d25390189e..7794af077a9 100644 --- a/contrib/sendmail/libsm/ungetc.c +++ b/contrib/sendmail/libsm/ungetc.c @@ -13,7 +13,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: ungetc.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: ungetc.c,v 1.28 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/vasprintf.c b/contrib/sendmail/libsm/vasprintf.c index 68fa4f464a0..9b3a12ea00e 100644 --- a/contrib/sendmail/libsm/vasprintf.c +++ b/contrib/sendmail/libsm/vasprintf.c @@ -35,7 +35,7 @@ */ #include -SM_RCSID("@(#)$Id: vasprintf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: vasprintf.c,v 1.26 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/vfprintf.c b/contrib/sendmail/libsm/vfprintf.c index e87e2204cbf..e2115bd813e 100644 --- a/contrib/sendmail/libsm/vfprintf.c +++ b/contrib/sendmail/libsm/vfprintf.c @@ -13,7 +13,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: vfprintf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: vfprintf.c,v 1.52 2001/09/11 04:04:49 gshapiro Exp $") /* ** Overall: diff --git a/contrib/sendmail/libsm/vfscanf.c b/contrib/sendmail/libsm/vfscanf.c index 5085db4ef57..5a19733191f 100644 --- a/contrib/sendmail/libsm/vfscanf.c +++ b/contrib/sendmail/libsm/vfscanf.c @@ -13,7 +13,7 @@ */ #include -SM_IDSTR(id, "@(#)$Id: vfscanf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: vfscanf.c,v 1.51 2001/09/11 04:04:49 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/libsm/vprintf.c b/contrib/sendmail/libsm/vprintf.c index bad3ecae964..6e310efa6fc 100644 --- a/contrib/sendmail/libsm/vprintf.c +++ b/contrib/sendmail/libsm/vprintf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: vprintf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: vprintf.c,v 1.14 2001/09/11 04:04:49 gshapiro Exp $") #include #include "local.h" diff --git a/contrib/sendmail/libsm/vsnprintf.c b/contrib/sendmail/libsm/vsnprintf.c index 59e2b5165c0..18a46358bda 100644 --- a/contrib/sendmail/libsm/vsnprintf.c +++ b/contrib/sendmail/libsm/vsnprintf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: vsnprintf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: vsnprintf.c,v 1.23 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include "local.h" diff --git a/contrib/sendmail/libsm/vsprintf.c b/contrib/sendmail/libsm/vsprintf.c index ad7baaa9eb6..827fcec5a95 100644 --- a/contrib/sendmail/libsm/vsprintf.c +++ b/contrib/sendmail/libsm/vsprintf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: vsprintf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: vsprintf.c,v 1.21 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include "local.h" diff --git a/contrib/sendmail/libsm/vsscanf.c b/contrib/sendmail/libsm/vsscanf.c index dd395cb545c..498f44992e4 100644 --- a/contrib/sendmail/libsm/vsscanf.c +++ b/contrib/sendmail/libsm/vsscanf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: vsscanf.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_RCSID("@(#)$Id: vsscanf.c,v 1.23 2002/02/01 02:28:00 ca Exp $") #include #include diff --git a/contrib/sendmail/libsm/wbuf.c b/contrib/sendmail/libsm/wbuf.c index bf8084588fd..83855351cec 100644 --- a/contrib/sendmail/libsm/wbuf.c +++ b/contrib/sendmail/libsm/wbuf.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: wbuf.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: wbuf.c,v 1.21 2001/09/11 04:04:49 gshapiro Exp $") #include #include #include "local.h" diff --git a/contrib/sendmail/libsm/wsetup.c b/contrib/sendmail/libsm/wsetup.c index 3004c9d8d63..400553e17c8 100644 --- a/contrib/sendmail/libsm/wsetup.c +++ b/contrib/sendmail/libsm/wsetup.c @@ -13,7 +13,7 @@ */ #include -SM_RCSID("@(#)$Id: wsetup.c,v 1.1.1.2 2002/04/10 03:04:56 gshapiro Exp $") +SM_RCSID("@(#)$Id: wsetup.c,v 1.20 2002/02/07 18:02:45 ca Exp $") #include #include #include diff --git a/contrib/sendmail/libsm/xtrap.c b/contrib/sendmail/libsm/xtrap.c index 89b4d1c656e..7495e0994d0 100644 --- a/contrib/sendmail/libsm/xtrap.c +++ b/contrib/sendmail/libsm/xtrap.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: xtrap.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $") +SM_RCSID("@(#)$Id: xtrap.c,v 1.5 2001/09/11 04:04:49 gshapiro Exp $") #include diff --git a/contrib/sendmail/libsmdb/Makefile b/contrib/sendmail/libsmdb/Makefile index 3a3e958319a..0422ed5cb3d 100644 --- a/contrib/sendmail/libsmdb/Makefile +++ b/contrib/sendmail/libsmdb/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:47 gshapiro Exp $ +# $Id: Makefile,v 8.2 1999/09/23 22:36:29 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/libsmdb/smdb.c b/contrib/sendmail/libsmdb/smdb.c index cd47635ffb7..ad0b926b625 100644 --- a/contrib/sendmail/libsmdb/smdb.c +++ b/contrib/sendmail/libsmdb/smdb.c @@ -1,5 +1,5 @@ /* -** Copyright (c) 1999-2001 Sendmail, Inc. and its suppliers. +** Copyright (c) 1999-2002 Sendmail, Inc. and its suppliers. ** All rights reserved. ** ** By using this file, you agree to the terms and conditions set @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: smdb.c,v 1.1.1.4 2002/04/10 03:04:59 gshapiro Exp $") +SM_RCSID("@(#)$Id: smdb.c,v 8.57 2002/05/24 23:09:11 gshapiro Exp $") #include #include @@ -319,14 +319,14 @@ smdb_lock_file(lock_fd, db_name, mode, sff, extension) char *extension; { int result; - char file_name[SMDB_MAX_NAME_LEN]; + char file_name[MAXPATHLEN]; - result = smdb_add_extension(file_name, SMDB_MAX_NAME_LEN, db_name, + result = smdb_add_extension(file_name, sizeof file_name, db_name, extension); if (result != SMDBE_OK) return result; - *lock_fd = safeopen(file_name, mode & ~O_TRUNC, 0644, sff); + *lock_fd = safeopen(file_name, mode & ~O_TRUNC, DBMMODE, sff); if (*lock_fd < 0) return errno; @@ -435,9 +435,9 @@ smdb_setup_file(db_name, extension, mode_mask, sff, user_info, stat_info) { int st; int result; - char db_file_name[SMDB_MAX_NAME_LEN]; + char db_file_name[MAXPATHLEN]; - result = smdb_add_extension(db_file_name, SMDB_MAX_NAME_LEN, db_name, + result = smdb_add_extension(db_file_name, sizeof db_file_name, db_name, extension); if (result != SMDBE_OK) return result; @@ -474,9 +474,9 @@ smdb_filechanged(db_name, extension, db_fd, stat_info) struct stat *stat_info; { int result; - char db_file_name[SMDB_MAX_NAME_LEN]; + char db_file_name[MAXPATHLEN]; - result = smdb_add_extension(db_file_name, SMDB_MAX_NAME_LEN, db_name, + result = smdb_add_extension(db_file_name, sizeof db_file_name, db_name, extension); if (result != SMDBE_OK) return result; diff --git a/contrib/sendmail/libsmdb/smdb1.c b/contrib/sendmail/libsmdb/smdb1.c index c8460a4277a..a971e5ea7b7 100644 --- a/contrib/sendmail/libsmdb/smdb1.c +++ b/contrib/sendmail/libsmdb/smdb1.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: smdb1.c,v 1.1.1.5 2002/04/10 03:04:59 gshapiro Exp $") +SM_RCSID("@(#)$Id: smdb1.c,v 8.58 2002/05/24 23:09:11 gshapiro Exp $") #include #include @@ -446,14 +446,14 @@ smdb_db_open(database, db_name, mode, mode_mask, sff, type, user_info, BTREEINFO btree_info; DBTYPE db_type; struct stat stat_info; - char db_file_name[SMDB_MAX_NAME_LEN]; + char db_file_name[MAXPATHLEN]; if (type == NULL || (strncmp(SMDB_TYPE_HASH, type, SMDB_TYPE_HASH_LEN) != 0 && strncmp(SMDB_TYPE_BTREE, type, SMDB_TYPE_BTREE_LEN) != 0)) return SMDBE_UNKNOWN_DB_TYPE; - result = smdb_add_extension(db_file_name, SMDB_MAX_NAME_LEN, + result = smdb_add_extension(db_file_name, sizeof db_file_name, db_name, SMDB1_FILE_EXTENSION); if (result != SMDBE_OK) return result; @@ -508,7 +508,7 @@ smdb_db_open(database, db_name, mode, mode_mask, sff, type, user_info, } db_type = smdb_type_to_db1_type(type); - db = dbopen(db_file_name, mode, 0644, db_type, params); + db = dbopen(db_file_name, mode, DBMMODE, db_type, params); if (db != NULL) { db_fd = db->fd(db); diff --git a/contrib/sendmail/libsmdb/smdb2.c b/contrib/sendmail/libsmdb/smdb2.c index 3c33fc47d88..9e2e8ed2de2 100644 --- a/contrib/sendmail/libsmdb/smdb2.c +++ b/contrib/sendmail/libsmdb/smdb2.c @@ -1,5 +1,5 @@ /* -** Copyright (c) 1999-2001 Sendmail, Inc. and its suppliers. +** Copyright (c) 1999-2002 Sendmail, Inc. and its suppliers. ** All rights reserved. ** ** By using this file, you agree to the terms and conditions set @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: smdb2.c,v 1.1.1.5 2002/02/17 21:56:45 gshapiro Exp $") +SM_RCSID("@(#)$Id: smdb2.c,v 8.72 2002/05/24 23:09:11 gshapiro Exp $") #include #include @@ -472,7 +472,7 @@ smdb_db_open_internal(db_name, db_type, db_flags, db_params, db) db_info.flags |= DB_DUP; params = &db_info; } - return db_open(db_name, db_type, db_flags, 0644, NULL, params, db); + return db_open(db_name, db_type, db_flags, DBMMODE, NULL, params, db); } # endif /* DB_VERSION_MAJOR == 2 */ @@ -523,7 +523,7 @@ smdb_db_open_internal(db_name, db_type, db_flags, db_params, db) } } - result = (*db)->open(*db, db_name, NULL, db_type, db_flags, 0644); + result = (*db)->open(*db, db_name, NULL, db_type, db_flags, DBMMODE); if (result != 0) { (void) (*db)->close(*db, 0); @@ -581,11 +581,11 @@ smdb_db_open(database, db_name, mode, mode_mask, sff, type, user_info, db_params DB *db; DBTYPE db_type; struct stat stat_info; - char db_file_name[SMDB_MAX_NAME_LEN]; + char db_file_name[MAXPATHLEN]; *database = NULL; - result = smdb_add_extension(db_file_name, SMDB_MAX_NAME_LEN, + result = smdb_add_extension(db_file_name, sizeof db_file_name, db_name, SMDB2_FILE_EXTENSION); if (result != SMDBE_OK) return result; diff --git a/contrib/sendmail/libsmdb/smndbm.c b/contrib/sendmail/libsmdb/smndbm.c index 64fff00ccc4..89ecf631a11 100644 --- a/contrib/sendmail/libsmdb/smndbm.c +++ b/contrib/sendmail/libsmdb/smndbm.c @@ -8,7 +8,7 @@ */ #include -SM_RCSID("@(#)$Id: smndbm.c,v 1.1.1.5 2002/04/10 03:04:59 gshapiro Exp $") +SM_RCSID("@(#)$Id: smndbm.c,v 8.52 2002/05/21 22:30:30 gshapiro Exp $") #include #include @@ -560,7 +560,7 @@ smdb_ndbm_open(database, db_name, mode, mode_mask, sff, type, user_info, db->smndbm_lock_fd = lock_fd; errno = 0; - dbm = dbm_open(db_name, mode, 0644); + dbm = dbm_open(db_name, mode, DBMMODE); if (dbm == NULL) { if (errno == 0) diff --git a/contrib/sendmail/libsmutil/Makefile b/contrib/sendmail/libsmutil/Makefile index 7538f2db3cc..2de323192e3 100644 --- a/contrib/sendmail/libsmutil/Makefile +++ b/contrib/sendmail/libsmutil/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:29 gshapiro Exp $ +# $Id: Makefile,v 8.2 1999/09/23 22:36:32 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/libsmutil/cf.c b/contrib/sendmail/libsmutil/cf.c index 67feb40469a..c2132c3f00c 100644 --- a/contrib/sendmail/libsmutil/cf.c +++ b/contrib/sendmail/libsmutil/cf.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -9,7 +9,7 @@ */ #include -SM_RCSID("@(#)$Id: cf.c,v 1.1.1.1 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: cf.c,v 8.18 2002/05/25 00:09:16 gshapiro Exp $") #include /* @@ -60,7 +60,7 @@ getcfname(opmode, submitmode, cftype, conffile) cftype != SM_GET_SENDMAIL_CF)) { struct stat sbuf; - static char cf[PATH_MAX]; + static char cf[MAXPATHLEN]; (void) sm_strlcpyn(cf, sizeof cf, 2, _DIR_SENDMAILCF, "submit.cf"); diff --git a/contrib/sendmail/libsmutil/debug.c b/contrib/sendmail/libsmutil/debug.c index 7b34928392b..2c3b3284ad5 100644 --- a/contrib/sendmail/libsmutil/debug.c +++ b/contrib/sendmail/libsmutil/debug.c @@ -10,6 +10,6 @@ #include -SM_RCSID("@(#)$Id: debug.c,v 1.1.1.2 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: debug.c,v 8.9 2001/09/11 04:04:55 gshapiro Exp $") unsigned char tTdvect[100]; /* trace vector */ diff --git a/contrib/sendmail/libsmutil/err.c b/contrib/sendmail/libsmutil/err.c index 7cd3e4baf7f..0ad52a4a4a9 100644 --- a/contrib/sendmail/libsmutil/err.c +++ b/contrib/sendmail/libsmutil/err.c @@ -10,7 +10,7 @@ #include -SM_RCSID("@(#)$Id: err.c,v 1.1.1.1 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: err.c,v 8.5 2001/09/11 04:04:55 gshapiro Exp $") #include diff --git a/contrib/sendmail/libsmutil/lockfile.c b/contrib/sendmail/libsmutil/lockfile.c index 2a4d95a0e78..5eca360ce8f 100644 --- a/contrib/sendmail/libsmutil/lockfile.c +++ b/contrib/sendmail/libsmutil/lockfile.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: lockfile.c,v 1.1.1.3 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: lockfile.c,v 8.19 2001/09/11 04:04:55 gshapiro Exp $") /* diff --git a/contrib/sendmail/libsmutil/safefile.c b/contrib/sendmail/libsmutil/safefile.c index 02b218f8e27..aed40a0482e 100644 --- a/contrib/sendmail/libsmutil/safefile.c +++ b/contrib/sendmail/libsmutil/safefile.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -15,7 +15,7 @@ #include #include -SM_RCSID("@(#)$Id: safefile.c,v 1.1.1.4 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: safefile.c,v 8.124 2002/05/24 20:50:15 gshapiro Exp $") /* @@ -58,7 +58,7 @@ safefile(fn, uid, gid, user, flags, mode, st) bool checkpath; struct stat stbuf; struct stat fstbuf; - char fbuf[MAXPATHLEN + 1]; + char fbuf[MAXPATHLEN]; if (tTd(44, 4)) sm_dprintf("safefile(%s, uid=%d, gid=%d, flags=%lx, mode=%o):\n", @@ -406,7 +406,7 @@ safedirpath(fn, uid, gid, user, flags, level, offset) char *saveptr = NULL; char *p, *enddir; register struct group *gr = NULL; - char s[MAXLINKPATHLEN + 1]; + char s[MAXLINKPATHLEN]; struct stat stbuf; /* make sure we aren't in a symlink loop */ @@ -486,15 +486,23 @@ safedirpath(fn, uid, gid, user, flags, level, offset) /* Follow symlinks */ if (S_ISLNK(stbuf.st_mode)) { + int linklen; char *target; - char buf[MAXPATHLEN + 1]; + char buf[MAXPATHLEN]; memset(buf, '\0', sizeof buf); - if (readlink(s, buf, sizeof buf) < 0) + linklen = readlink(s, buf, sizeof buf); + if (linklen < 0) { ret = errno; break; } + if (linklen >= sizeof buf) + { + /* file name too long for buffer */ + ret = errno = EINVAL; + break; + } offset = 0; if (*buf == '/') @@ -536,7 +544,7 @@ safedirpath(fn, uid, gid, user, flags, level, offset) else { char *sptr; - char fullbuf[MAXLINKPATHLEN + 1]; + char fullbuf[MAXLINKPATHLEN]; sptr = strrchr(s, '/'); if (sptr != NULL) diff --git a/contrib/sendmail/libsmutil/snprintf.c b/contrib/sendmail/libsmutil/snprintf.c index 11761b49399..ff3aa3b90c7 100644 --- a/contrib/sendmail/libsmutil/snprintf.c +++ b/contrib/sendmail/libsmutil/snprintf.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: snprintf.c,v 1.1.1.4 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: snprintf.c,v 8.44 2001/09/11 04:04:56 gshapiro Exp $") /* ** SHORTENSTRING -- return short version of a string diff --git a/contrib/sendmail/mail.local/Makefile b/contrib/sendmail/mail.local/Makefile index 4455b02e361..b560a3039df 100644 --- a/contrib/sendmail/mail.local/Makefile +++ b/contrib/sendmail/mail.local/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:30 gshapiro Exp $ +# $Id: Makefile,v 8.5 1999/10/05 16:39:32 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/mail.local/README b/contrib/sendmail/mail.local/README index e1ae2a8eabd..651de4bc911 100644 --- a/contrib/sendmail/mail.local/README +++ b/contrib/sendmail/mail.local/README @@ -36,4 +36,4 @@ delivery agent without LMTP mode, use: in the .mc file. -$Revision: 1.1.1.4 $, Last updated $Date: 2002/02/17 21:56:42 $ +$Revision: 8.10 $, Last updated $Date: 2001/09/08 01:21:04 $ diff --git a/contrib/sendmail/mail.local/mail.local.8 b/contrib/sendmail/mail.local/mail.local.8 index d5002e127a4..5cd1c137ec4 100644 --- a/contrib/sendmail/mail.local/mail.local.8 +++ b/contrib/sendmail/mail.local/mail.local.8 @@ -8,9 +8,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: mail.local.8,v 1.1.1.6 2002/02/17 21:56:42 gshapiro Exp $ +.\" $Id: mail.local.8,v 8.23 2001/04/05 23:27:35 gshapiro Exp $ .\" -.TH MAIL.LOCAL 8 "$Date: 2002/02/17 21:56:42 $" +.TH MAIL.LOCAL 8 "$Date: 2001/04/05 23:27:35 $" .SH NAME mail.local \- store mail in a mailbox diff --git a/contrib/sendmail/mail.local/mail.local.c b/contrib/sendmail/mail.local/mail.local.c index 56c4f8c6481..9ef3fb57460 100644 --- a/contrib/sendmail/mail.local/mail.local.c +++ b/contrib/sendmail/mail.local/mail.local.c @@ -18,7 +18,7 @@ SM_IDSTR(copyright, Copyright (c) 1990, 1993, 1994\n\ The Regents of the University of California. All rights reserved.\n") -SM_IDSTR(id, "@(#)$Id: mail.local.c,v 1.1.1.9 2002/04/10 03:04:53 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: mail.local.c,v 8.239 2002/05/24 20:56:32 gshapiro Exp $") #include #include @@ -520,7 +520,7 @@ dolmtp() "Nested MAIL command"); continue; } - if (sm_strncasecmp(buf+5, "from:", 5) != 0 || + if (sm_strncasecmp(buf + 5, "from:", 5) != 0 || ((return_path = parseaddr(buf + 10, false)) == NULL)) { @@ -857,7 +857,7 @@ deliver(fd, name) off_t headerbytes; int readamount; #endif /* CONTENTLENGTH */ - char biffmsg[100], buf[8*1024]; + char biffmsg[100], buf[8 * 1024]; SM_MBDB_T user; /* diff --git a/contrib/sendmail/mailstats/Makefile b/contrib/sendmail/mailstats/Makefile index 045394d168b..6dbcb62430a 100644 --- a/contrib/sendmail/mailstats/Makefile +++ b/contrib/sendmail/mailstats/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:31 gshapiro Exp $ +# $Id: Makefile,v 8.5 1999/09/23 22:36:36 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/mailstats/mailstats.8 b/contrib/sendmail/mailstats/mailstats.8 index c69dc2ec416..929875b913a 100644 --- a/contrib/sendmail/mailstats/mailstats.8 +++ b/contrib/sendmail/mailstats/mailstats.8 @@ -6,15 +6,15 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: mailstats.8,v 1.1.1.7 2002/04/10 03:04:54 gshapiro Exp $ +.\" $Id: mailstats.8,v 8.30 2002/04/12 00:42:33 ca Exp $ .\" -.TH MAILSTATS 8 "$Date: 2002/04/10 03:04:54 $" +.TH MAILSTATS 8 "$Date: 2002/04/12 00:42:33 $" .SH NAME mailstats \- display mail statistics .SH SYNOPSIS .B mailstats -.RB [ \-o "] [" \-p "] [" \-P ] +.RB [ \-c "] [" \-o "] [" \-p "] [" \-P ] .RB [ \-C .IR cffile ] .RB [ \-f @@ -74,6 +74,11 @@ Read the specified file instead of the default .B sendmail configuration file. .TP +.B \-c +Try to use submit.cf instead of the default +.B sendmail +configuration file. +.TP .B \-f Read the specified statistics file instead of the statistics file specified in the diff --git a/contrib/sendmail/mailstats/mailstats.c b/contrib/sendmail/mailstats/mailstats.c index 2f8e50595c8..ec56e3a7e5c 100644 --- a/contrib/sendmail/mailstats/mailstats.c +++ b/contrib/sendmail/mailstats/mailstats.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ SM_IDSTR(copyright, Copyright (c) 1988, 1993\n\ The Regents of the University of California. All rights reserved.\n") -SM_IDSTR(id, "@(#)$Id: mailstats.c,v 1.1.1.8 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: mailstats.c,v 8.98 2002/05/24 23:10:15 gshapiro Exp $") #include #include @@ -64,7 +64,7 @@ main(argc, argv) #endif /* _FFR_QUARANTINE */ time_t now; char mtable[MAXMAILERS][MNAMELEN + 1]; - char sfilebuf[MAXLINE]; + char sfilebuf[MAXPATHLEN]; char buf[MAXLINE]; struct statistics stats; extern char *ctime(); @@ -108,7 +108,7 @@ main(argc, argv) default: usage: (void) sm_io_fputs(smioerr, SM_TIME_DEFAULT, - "usage: mailstats [-C cffile] [-P] [-f stfile] [-o] [-p]\n"); + "usage: mailstats [-C cffile] [-c] [-P] [-f stfile] [-o] [-p]\n"); exit(EX_USAGE); } } @@ -139,6 +139,15 @@ main(argc, argv) char *s; register char *m; + b = strchr(buf, '#'); + if (b == NULL) + b = strchr(buf, '\n'); + if (b == NULL) + b = &buf[strlen(buf)]; + while (isascii(*--b) && isspace(*b)) + continue; + *++b = '\0'; + b = buf; switch (*b++) { @@ -171,14 +180,6 @@ main(argc, argv) b); exit(EX_CONFIG); } - b = strchr(sfilebuf, '#'); - if (b == NULL) - b = strchr(sfilebuf, '\n'); - if (b == NULL) - b = &sfilebuf[strlen(sfilebuf)]; - while (isascii(*--b) && isspace(*b)) - continue; - *++b = '\0'; if (sfile == NULL) sfile = sfilebuf; @@ -215,10 +216,10 @@ main(argc, argv) { (void) sm_io_fprintf(smioerr, SM_TIME_DEFAULT, "mailstats: no statistics file located\n"); - exit (EX_OSFILE); + exit(EX_OSFILE); } - fd = open(sfile, O_RDONLY); + fd = open(sfile, O_RDONLY, 0600); if ((fd < 0) || (i = read(fd, &stats, sizeof stats)) < 0) { save_errno = errno; @@ -350,7 +351,7 @@ main(argc, argv) (void) close(fd); if (trunc) { - fd = open(sfile, O_RDWR | O_TRUNC); + fd = open(sfile, O_RDWR | O_TRUNC, 0600); if (fd >= 0) (void) close(fd); } diff --git a/contrib/sendmail/makemap/Makefile b/contrib/sendmail/makemap/Makefile index 045394d168b..a6960c1d22a 100644 --- a/contrib/sendmail/makemap/Makefile +++ b/contrib/sendmail/makemap/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:31 gshapiro Exp $ +# $Id: Makefile,v 8.7 1999/09/23 22:36:37 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/makemap/makemap.8 b/contrib/sendmail/makemap/makemap.8 index cefc7f5e383..9faaef7fcb6 100644 --- a/contrib/sendmail/makemap/makemap.8 +++ b/contrib/sendmail/makemap/makemap.8 @@ -8,9 +8,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: makemap.8,v 1.1.1.6 2002/02/17 21:56:43 gshapiro Exp $ +.\" $Id: makemap.8,v 8.29 2001/10/10 03:23:02 ca Exp $ .\" -.TH MAKEMAP 8 "$Date: 2002/02/17 21:56:43 $" +.TH MAKEMAP 8 "$Date: 2001/10/10 03:23:02 $" .SH NAME makemap \- create database maps for sendmail diff --git a/contrib/sendmail/makemap/makemap.c b/contrib/sendmail/makemap/makemap.c index c48bbd73197..59c28f627df 100644 --- a/contrib/sendmail/makemap/makemap.c +++ b/contrib/sendmail/makemap/makemap.c @@ -20,7 +20,7 @@ SM_IDSTR(copyright, Copyright (c) 1992, 1993\n\ The Regents of the University of California. All rights reserved.\n") -SM_IDSTR(id, "@(#)$Id: makemap.c,v 1.1.1.6 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: makemap.c,v 8.175 2001/12/28 22:44:01 ca Exp $") #include diff --git a/contrib/sendmail/praliases/Makefile b/contrib/sendmail/praliases/Makefile index 185e57dbbe5..6b6db708f24 100644 --- a/contrib/sendmail/praliases/Makefile +++ b/contrib/sendmail/praliases/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:41 gshapiro Exp $ +# $Id: Makefile,v 8.5 1999/09/23 22:36:39 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/praliases/praliases.8 b/contrib/sendmail/praliases/praliases.8 index fb4d1a76538..2c78cacff53 100644 --- a/contrib/sendmail/praliases/praliases.8 +++ b/contrib/sendmail/praliases/praliases.8 @@ -6,9 +6,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: praliases.8,v 1.1.1.5 2002/02/17 21:56:44 gshapiro Exp $ +.\" $Id: praliases.8,v 8.17 2000/12/15 19:53:45 gshapiro Exp $ .\" -.TH PRALIASES 8 "$Date: 2002/02/17 21:56:44 $" +.TH PRALIASES 8 "$Date: 2000/12/15 19:53:45 $" .SH NAME praliases \- display system mail aliases diff --git a/contrib/sendmail/praliases/praliases.c b/contrib/sendmail/praliases/praliases.c index 5c6a479b42f..720fa6d2777 100644 --- a/contrib/sendmail/praliases/praliases.c +++ b/contrib/sendmail/praliases/praliases.c @@ -20,7 +20,7 @@ SM_IDSTR(copyright, Copyright (c) 1988, 1993\n\ The Regents of the University of California. All rights reserved.\n") -SM_IDSTR(id, "@(#)$Id: praliases.c,v 1.1.1.7 2002/02/17 21:56:45 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: praliases.c,v 8.93 2001/09/11 04:05:07 gshapiro Exp $") #include #include diff --git a/contrib/sendmail/rmail/Makefile b/contrib/sendmail/rmail/Makefile index bec1ba4193e..2934322c6bf 100644 --- a/contrib/sendmail/rmail/Makefile +++ b/contrib/sendmail/rmail/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:41 gshapiro Exp $ +# $Id: Makefile,v 8.5 1999/10/05 16:39:19 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/rmail/rmail.8 b/contrib/sendmail/rmail/rmail.8 index d674d683e4d..41aa3394f2a 100644 --- a/contrib/sendmail/rmail/rmail.8 +++ b/contrib/sendmail/rmail/rmail.8 @@ -8,9 +8,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: rmail.8,v 1.1.1.5 2002/02/17 21:56:45 gshapiro Exp $ +.\" $Id: rmail.8,v 8.4 2001/04/03 01:53:16 gshapiro Exp $ .\" -.TH RMAIL 8 "$Date: 2002/02/17 21:56:45 $" +.TH RMAIL 8 "$Date: 2001/04/03 01:53:16 $" .SH NAME rmail \- handle remote mail received via uucp diff --git a/contrib/sendmail/rmail/rmail.c b/contrib/sendmail/rmail/rmail.c index da99f0f05ad..cea291fde47 100644 --- a/contrib/sendmail/rmail/rmail.c +++ b/contrib/sendmail/rmail/rmail.c @@ -18,7 +18,7 @@ SM_IDSTR(copyright, Copyright (c) 1988, 1993\n\ The Regents of the University of California. All rights reserved.\n") -SM_IDSTR(id, "@(#)$Id: rmail.c,v 1.1.1.8 2002/02/17 21:56:45 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: rmail.c,v 8.61 2001/09/18 21:45:29 gshapiro Exp $") /* * RMAIL -- UUCP mail server. diff --git a/contrib/sendmail/smrsh/Makefile b/contrib/sendmail/smrsh/Makefile index 045394d168b..a9c4af7a2a9 100644 --- a/contrib/sendmail/smrsh/Makefile +++ b/contrib/sendmail/smrsh/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:31 gshapiro Exp $ +# $Id: Makefile,v 8.5 1999/09/23 22:36:43 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/smrsh/README b/contrib/sendmail/smrsh/README index 989b0c8c65f..7e22f86bd8f 100644 --- a/contrib/sendmail/smrsh/README +++ b/contrib/sendmail/smrsh/README @@ -153,4 +153,4 @@ a typical system follows: host.domain# /usr/sbin/sendmail -bd -q30m -$Revision: 1.1.1.5 $, Last updated $Date: 2002/02/17 21:56:43 $ +$Revision: 8.8 $, Last updated $Date: 2001/01/24 00:05:58 $ diff --git a/contrib/sendmail/smrsh/smrsh.8 b/contrib/sendmail/smrsh/smrsh.8 index 67fed55bec8..1f3c0a27634 100644 --- a/contrib/sendmail/smrsh/smrsh.8 +++ b/contrib/sendmail/smrsh/smrsh.8 @@ -9,9 +9,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: smrsh.8,v 1.1.1.5 2002/02/17 21:56:43 gshapiro Exp $ +.\" $Id: smrsh.8,v 8.16 2002/04/25 13:33:40 ca Exp $ .\" -.TH SMRSH 8 "$Date: 2002/02/17 21:56:43 $" +.TH SMRSH 8 "$Date: 2002/04/25 13:33:40 $" .SH NAME smrsh \- restricted shell for sendmail .SH SYNOPSIS @@ -79,7 +79,7 @@ Compilation should be trivial on most systems. You may need to use \-DSMRSH_PATH=\e"\fIpath\fP\e" to adjust the default search path (defaults to ``/bin:/usr/bin:/usr/ucb'') -and/or \-DSMRSH_CMDBIN=\e"\fIdir\fP\e" +and/or \-DSMRSH_CMDDIR=\e"\fIdir\fP\e" to change the default program directory (defaults to ``/usr/adm/sm.bin''). .SH FILES diff --git a/contrib/sendmail/smrsh/smrsh.c b/contrib/sendmail/smrsh/smrsh.c index c4119f14a60..843f68beb92 100644 --- a/contrib/sendmail/smrsh/smrsh.c +++ b/contrib/sendmail/smrsh/smrsh.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1993 Eric P. Allman. All rights reserved. * Copyright (c) 1993 @@ -20,7 +20,7 @@ SM_IDSTR(copyright, Copyright (c) 1993\n\ The Regents of the University of California. All rights reserved.\n") -SM_IDSTR(id, "@(#)$Id: smrsh.c,v 1.1.1.8 2002/02/17 21:56:43 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: smrsh.c,v 8.58 2002/05/25 02:41:31 ca Exp $") /* ** SMRSH -- sendmail restricted shell @@ -54,6 +54,7 @@ SM_IDSTR(id, "@(#)$Id: smrsh.c,v 1.1.1.8 2002/02/17 21:56:43 gshapiro Exp $") #include #include +#include #include #include #include @@ -126,10 +127,7 @@ addcmd(s, cmd, len) exit(EX_UNAVAILABLE); } if (cmd) - { - (void) sm_strlcat(newcmdbuf, CMDDIR, sizeof newcmdbuf); - (void) sm_strlcat(newcmdbuf, "/", sizeof newcmdbuf); - } + (void) sm_strlcat2(newcmdbuf, CMDDIR, "/", sizeof newcmdbuf); (void) sm_strlcat(newcmdbuf, s, sizeof newcmdbuf); } @@ -145,7 +143,6 @@ main(argc, argv) int isexec; int save_errno; char *newenv[2]; - char cmdbuf[1000]; char pathbuf[1000]; char specialbuf[32]; @@ -157,8 +154,7 @@ main(argc, argv) # endif /* ! LOG_MAIL */ #endif /* ! DEBUG */ - (void) sm_strlcpy(pathbuf, "PATH=", sizeof pathbuf); - (void) sm_strlcat(pathbuf, PATH, sizeof pathbuf); + (void) sm_strlcpyn(pathbuf, sizeof pathbuf, 2, "PATH=", PATH); newenv[0] = pathbuf; newenv[1] = NULL; @@ -217,7 +213,7 @@ main(argc, argv) newcmdbuf[0] = '\0'; isexec = false; - while (*q) + while (*q != '\0') { /* ** Strip off a leading pathname on the command name. For @@ -266,6 +262,7 @@ main(argc, argv) if (strcmp(q, "exec") == 0 && p != NULL) { addcmd("exec ", false, strlen("exec ")); + /* test _next_ arg */ q = ++p; isexec = true; @@ -274,16 +271,33 @@ main(argc, argv) else if (strcmp(q, "exit") == 0 || strcmp(q, "echo") == 0) { addcmd(cmd, false, strlen(cmd)); + /* test following chars */ } else { + char cmdbuf[MAXPATHLEN]; + /* ** Check to see if the command name is legal. */ - (void) sm_strlcpy(cmdbuf, CMDDIR, sizeof cmdbuf); - (void) sm_strlcat(cmdbuf, "/", sizeof cmdbuf); - (void) sm_strlcat(cmdbuf, cmd, sizeof cmdbuf); + + if (sm_strlcpyn(cmdbuf, sizeof cmdbuf, 3, CMDDIR, + "/", cmd) >= sizeof cmdbuf) + { + /* too long */ + (void) sm_io_fprintf(smioerr, SM_TIME_DEFAULT, + "%s: %s not available for sendmail programs (filename too long)\n", + prg, cmd); + if (p != NULL) + *p = ' '; +#ifndef DEBUG + syslog(LOG_CRIT, "uid %d: attempt to use %s (filename too long)", + (int) getuid(), cmd); +#endif /* ! DEBUG */ + exit(EX_UNAVAILABLE); + } + #ifdef DEBUG (void) sm_io_fprintf(smioout, SM_TIME_DEFAULT, "Trying %s\n", cmdbuf); @@ -345,7 +359,7 @@ main(argc, argv) (int) getuid(), *r, par); #endif /* ! DEBUG */ exit(EX_UNAVAILABLE); - } /* end of while *q */ + } if (isexec) { (void) sm_io_fprintf(smioerr, SM_TIME_DEFAULT, diff --git a/contrib/sendmail/src/Makefile b/contrib/sendmail/src/Makefile index 85a83441753..c86bbf5e220 100644 --- a/contrib/sendmail/src/Makefile +++ b/contrib/sendmail/src/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:54:34 gshapiro Exp $ +# $Id: Makefile,v 8.11 1999/09/23 22:36:42 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/src/Makefile.m4 b/contrib/sendmail/src/Makefile.m4 index 8004de423ff..bb5dc1a2ab0 100644 --- a/contrib/sendmail/src/Makefile.m4 +++ b/contrib/sendmail/src/Makefile.m4 @@ -4,7 +4,7 @@ define(`confREQUIRE_LIBSM', `true') bldPRODUCT_START(`executable', `sendmail') define(`bldBIN_TYPE', `G') define(`bldINSTALL_DIR', `') -define(`bldSOURCES', `main.c alias.c arpadate.c bf.c collect.c conf.c control.c convtime.c daemon.c deliver.c domain.c envelope.c err.c headers.c macro.c map.c mci.c milter.c mime.c parseaddr.c queue.c readcf.c recipient.c savemail.c sasl.c sfsasl.c shmticklib.c sm_resolve.c srvrsmtp.c stab.c stats.c sysexits.c timers.c tls.c trace.c udb.c usersmtp.c util.c version.c ') +define(`bldSOURCES', `main.c alias.c arpadate.c bf.c collect.c conf.c control.c convtime.c daemon.c deliver.c domain.c envelope.c err.c headers.c macro.c map.c mci.c milter.c mime.c parseaddr.c queue.c readcf.c recipient.c sasl.c savemail.c sfsasl.c shmticklib.c sm_resolve.c srvrsmtp.c stab.c stats.c sysexits.c timers.c tls.c trace.c udb.c usersmtp.c util.c version.c ') PREPENDDEF(`confENVDEF', `confMAPDEF') bldPUSH_SMLIB(`sm') bldPUSH_SMLIB(`smutil') @@ -35,6 +35,7 @@ bldPUSH_TARGET(`statistics') divert(bldTARGETS_SECTION) statistics: ${CP} /dev/null statistics + chmod ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}/etc/mail/submit.cf: @echo "Please read INSTALL if anything fails while installing the binary." @@ -81,7 +82,7 @@ install-hf: install-st: statistics if [ ! -d ${DESTDIR}${STDIR} ]; then mkdir -p ${DESTDIR}${STDIR}; else :; fi - ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m 644 statistics ${DESTDIR}${STFILE} + ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${STFILE} divert(0) bldPRODUCT_END diff --git a/contrib/sendmail/src/README b/contrib/sendmail/src/README index fb5a021dd24..d24e47b92cb 100644 --- a/contrib/sendmail/src/README +++ b/contrib/sendmail/src/README @@ -9,7 +9,7 @@ # the sendmail distribution. # # -# $Id: README,v 1.1.1.12 2002/04/10 03:04:47 gshapiro Exp $ +# $Id: README,v 8.355 2002/05/22 19:46:26 gshapiro Exp $ # This directory contains the source files for sendmail(TM). @@ -601,6 +601,8 @@ REQUIRES_DIR_FSYNC Turn on support for file systems that require to ReiserFS; it is enabled by default for Linux. An alternative to this compile time flag is to mount the queue directory without the -async option, or using chattr +S on Linux. +DBMMODE The default file permissions to use when creating new + database files for maps and aliases. Defaults to 0640. Generic notice: If you enable a compile time option that needs libraries or include files that don't come with sendmail or are @@ -1738,4 +1740,4 @@ util.c Some general purpose routines used by sendmail. version.c The version number and information about this version of sendmail. -(Version $Revision: 1.1.1.12 $, last update $Date: 2002/04/10 03:04:47 $ ) +(Version $Revision: 8.355 $, last update $Date: 2002/05/22 19:46:26 $ ) diff --git a/contrib/sendmail/src/SECURITY b/contrib/sendmail/src/SECURITY index 207eac7e749..e42c0246f55 100644 --- a/contrib/sendmail/src/SECURITY +++ b/contrib/sendmail/src/SECURITY @@ -5,7 +5,7 @@ # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # -# $Id: SECURITY,v 1.1.1.2 2002/04/10 03:04:47 gshapiro Exp $ +# $Id: SECURITY,v 1.50 2002/03/29 19:45:48 ca Exp $ # This file gives some hints how to configure and run sendmail for diff --git a/contrib/sendmail/src/TRACEFLAGS b/contrib/sendmail/src/TRACEFLAGS index 4ef5504c477..c64afd1a4c8 100644 --- a/contrib/sendmail/src/TRACEFLAGS +++ b/contrib/sendmail/src/TRACEFLAGS @@ -1,5 +1,4 @@ -# $Id: TRACEFLAGS,v 1.1.1.5 2002/02/17 21:56:38 gshapiro Exp $ -0, 1 main.c main skip background fork +# $Id: TRACEFLAGS,v 8.37 2002/05/24 23:37:32 ca Exp $ 0, 4 main.c main canonical name, UUCP node name, a.k.a.s 0, 15 main.c main print configuration 0, 44 util.c printav print address of each string @@ -53,7 +52,7 @@ 41 queue.c orderq 42 mci.c mci_get 43 mime.c mime8to7 -44 recipient.c writeable +44 recipient.c writable 44 safefile.c safefile, safedirpath, filechanged 45 envelope.c setsender 46 envelope.c openxscript @@ -77,7 +76,6 @@ 64 multiple Milter 65 main.c permission checks 66 srvrsmtp.c conformance checks -67 conf.c signals 69 queue.c scheduling #if _FFR_QUARANTINE 70 queue.c quarantining @@ -88,5 +86,7 @@ 94,>99 srvrsmtp.c cause commands to fail (for protocol testing) 95 srvrsmtp.c AUTH 95 usersmtp.c AUTH +96 tls.c Activate SSL_CTX_set_info_callback() +97 srvrsmtp.c Trace automode settings for I/O 98 * timers 99 main.c avoid backgrounding (no printed output) diff --git a/contrib/sendmail/src/TUNING b/contrib/sendmail/src/TUNING index afeaa05e740..52da793b6d5 100644 --- a/contrib/sendmail/src/TUNING +++ b/contrib/sendmail/src/TUNING @@ -5,7 +5,7 @@ # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # -# $Id: TUNING,v 1.1.1.2 2002/04/10 03:04:47 gshapiro Exp $ +# $Id: TUNING,v 1.18 2002/03/03 03:38:21 ca Exp $ # ******************************************** diff --git a/contrib/sendmail/src/alias.c b/contrib/sendmail/src/alias.c index 4d43908568c..f5bd7469908 100644 --- a/contrib/sendmail/src/alias.c +++ b/contrib/sendmail/src/alias.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: alias.c,v 1.1.1.7 2002/02/17 21:56:38 gshapiro Exp $") +SM_RCSID("@(#)$Id: alias.c,v 8.214 2002/05/24 20:50:16 gshapiro Exp $") #define SEPARATOR ':' # define ALIAS_SPEC_SEPARATORS " ,/:" @@ -393,7 +393,7 @@ aliaswait(map, ext, isopen) bool attimeout = false; time_t mtime; struct stat stb; - char buf[MAXNAME + 1]; + char buf[MAXPATHLEN]; if (tTd(27, 3)) sm_dprintf("aliaswait(%s:%s)\n", @@ -458,8 +458,17 @@ aliaswait(map, ext, isopen) return isopen; } mtime = stb.st_mtime; - (void) sm_strlcpyn(buf, sizeof buf, 2, - map->map_file, ext == NULL ? "" : ext); + if (sm_strlcpyn(buf, sizeof buf, 2, + map->map_file, ext == NULL ? "" : ext) >= sizeof buf) + { + if (LogLevel > 3) + sm_syslog(LOG_INFO, NOQID, + "alias database %s%s name too long", + map->map_file, ext == NULL ? "" : ext); + message("alias database %s%s name too long", + map->map_file, ext == NULL ? "" : ext); + } + if (stat(buf, &stb) < 0 || stb.st_mtime < mtime || attimeout) { if (LogLevel > 3) @@ -913,7 +922,7 @@ forward(user, sendq, aliaslevel, e) for (pp = ForwardPath; pp != NULL; pp = ep) { int err; - char buf[MAXPATHLEN + 1]; + char buf[MAXPATHLEN]; struct stat st; ep = strchr(pp, SEPARATOR); diff --git a/contrib/sendmail/src/aliases b/contrib/sendmail/src/aliases index 532111a802f..73899d427de 100644 --- a/contrib/sendmail/src/aliases +++ b/contrib/sendmail/src/aliases @@ -1,5 +1,5 @@ # -# $Id: aliases,v 1.1.1.4 2002/02/17 21:56:38 gshapiro Exp $ +# $Id: aliases,v 8.4 2001/12/30 04:46:23 gshapiro Exp $ # @(#)aliases 8.2 (Berkeley) 3/5/94 # # Aliases in this file will NOT be expanded in the header from diff --git a/contrib/sendmail/src/aliases.5 b/contrib/sendmail/src/aliases.5 index a2e5a64f52c..62b5dfb5589 100644 --- a/contrib/sendmail/src/aliases.5 +++ b/contrib/sendmail/src/aliases.5 @@ -9,9 +9,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: aliases.5,v 1.1.1.5 2002/02/17 21:56:38 gshapiro Exp $ +.\" $Id: aliases.5,v 8.17 2000/12/14 23:09:46 gshapiro Exp $ .\" -.TH ALIASES 5 "$Date: 2002/02/17 21:56:38 $" +.TH ALIASES 5 "$Date: 2000/12/14 23:09:46 $" .SH NAME aliases \- aliases file for sendmail diff --git a/contrib/sendmail/src/arpadate.c b/contrib/sendmail/src/arpadate.c index 67f9c14637d..16082cd259a 100644 --- a/contrib/sendmail/src/arpadate.c +++ b/contrib/sendmail/src/arpadate.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: arpadate.c,v 1.1.1.6 2002/02/17 21:56:38 gshapiro Exp $") +SM_RCSID("@(#)$Id: arpadate.c,v 8.30 2001/09/11 04:05:12 gshapiro Exp $") /* ** ARPADATE -- Create date in ARPANET format diff --git a/contrib/sendmail/src/bf.c b/contrib/sendmail/src/bf.c index c70ed8321d1..eb417988a0a 100644 --- a/contrib/sendmail/src/bf.c +++ b/contrib/sendmail/src/bf.c @@ -18,7 +18,7 @@ */ #include -SM_RCSID("@(#)$Id: bf.c,v 1.1.1.2 2002/04/10 03:04:47 gshapiro Exp $") +SM_RCSID("@(#)$Id: bf.c,v 8.54 2002/04/20 18:03:42 gshapiro Exp $") #include #include @@ -202,12 +202,24 @@ sm_bfopen(fp, info, flags, rpool) ** any value of errno specified by sm_io_setinfo() */ +#ifdef __STDC__ +/* +** XXX This is a temporary hack since MODE_T on HP-UX 10.x is short. +** If we use K&R here, the compiler will complain about +** Inconsistent parameter list declaration +** due to the change from short to int. +*/ + +SM_FILE_T * +bfopen(char *filename, MODE_T fmode, size_t bsize, long flags) +#else /* __STDC__ */ SM_FILE_T * bfopen(filename, fmode, bsize, flags) char *filename; MODE_T fmode; size_t bsize; long flags; +#endif /* __STDC__ */ { MODE_T omask; SM_FILE_T SM_IO_SET_TYPE(vector, BF_FILE_TYPE, sm_bfopen, sm_bfclose, @@ -613,8 +625,8 @@ finished: ** 0 on success, -1 on error ** ** Side Effects: -** rewinds the SM_FILE_T * and puts it into read mode. Normally one -** would bfopen() a file, write to it, then bfrewind() and +** rewinds the SM_FILE_T * and puts it into read mode. Normally +** one would bfopen() a file, write to it, then bfrewind() and ** fread(). If fp is not a buffered file, this is equivalent to ** rewind(). ** @@ -786,8 +798,7 @@ sm_bftruncate(fp) return ftruncate(bfp->bf_disk_fd, 0); #endif /* NOFTRUNCATE */ } - else - return 0; + return 0; } /* diff --git a/contrib/sendmail/src/bf.h b/contrib/sendmail/src/bf.h index b37b0275ea1..5a02292c1c5 100644 --- a/contrib/sendmail/src/bf.h +++ b/contrib/sendmail/src/bf.h @@ -1,12 +1,12 @@ /* - * Copyright (c) 1999-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1999-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: bf.h,v 1.1.1.3 2002/02/17 21:56:38 gshapiro Exp $ + * $Id: bf.h,v 8.16 2002/04/15 02:37:09 ca Exp $ * * Contributed by Exactis.com, Inc. * @@ -16,7 +16,6 @@ # define BF_H 1 extern SM_FILE_T *bfopen __P((char *, MODE_T, size_t, long)); -extern SM_FILE_T *bfdup __P((SM_FILE_T *)); extern int bfcommit __P((SM_FILE_T *)); extern int bfrewind __P((SM_FILE_T *)); extern int bftruncate __P((SM_FILE_T *)); diff --git a/contrib/sendmail/src/collect.c b/contrib/sendmail/src/collect.c index 013d1044000..a926d61f0ec 100644 --- a/contrib/sendmail/src/collect.c +++ b/contrib/sendmail/src/collect.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: collect.c,v 1.1.1.12 2002/04/10 03:04:47 gshapiro Exp $") +SM_RCSID("@(#)$Id: collect.c,v 8.242 2002/05/10 15:40:09 ca Exp $") static void collecttimeout __P((time_t)); static void dferror __P((SM_FILE_T *volatile, char *, ENVELOPE *)); @@ -980,7 +980,7 @@ dferror(df, msg, e) } else syserr("421 4.3.0 collect: Cannot write %s (%s, uid=%d, gid=%d)", - dfname, msg, geteuid(), getegid()); + dfname, msg, (int) geteuid(), (int) getegid()); if (sm_io_reopen(SmFtStdio, SM_TIME_DEFAULT, SM_PATH_DEVNULL, SM_IO_WRONLY, NULL, df) == NULL) sm_syslog(LOG_ERR, e->e_id, diff --git a/contrib/sendmail/src/conf.c b/contrib/sendmail/src/conf.c index 446f46d66c3..4a0a25d4b67 100644 --- a/contrib/sendmail/src/conf.c +++ b/contrib/sendmail/src/conf.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: conf.c,v 1.1.1.12 2002/04/10 03:04:48 gshapiro Exp $") +SM_RCSID("@(#)$Id: conf.c,v 8.969 2002/05/24 23:48:55 gshapiro Exp $") #include @@ -2327,6 +2327,25 @@ typedef unsigned int *pt_entry_t; # define SPT_BUFSIZE MAXLINE #endif /* ! SPT_BUFSIZE */ +#if _FFR_SPT_ALIGN + +/* +** It looks like the Compaq Tru64 5.1A now aligns argv and envp to +** 64 bit alignment, so unless each piece of argv and envp is a multiple +** of 8 bytes (including terminating NULL), initsetproctitle() won't use +** any of the space beyond argv[0]. Be sure to set SPT_ALIGN_SIZE if +** you use this FFR. +*/ + +# ifdef SPT_ALIGN_SIZE +# define SPT_ALIGN(x, align) ((((x) + SPT_ALIGN_SIZE) >> (align)) << (align)) +# else /* SPT_ALIGN_SIZE */ +# define SPT_ALIGN(x, align) (x) +# endif /* SPT_ALIGN_SIZE */ +#else /* _FFR_SPT_ALIGN */ +# define SPT_ALIGN(x, align) (x) +#endif /* _FFR_SPT_ALIGN */ + /* ** Pointers for setproctitle. ** This allows "ps" listings to give more useful information. @@ -2345,6 +2364,7 @@ initsetproctitle(argc, argv, envp) char **envp; { register int i; + int align; extern char **environ; /* @@ -2369,15 +2389,24 @@ initsetproctitle(argc, argv, envp) ** Determine how much space we can use for setproctitle. ** Use all contiguous argv and envp pointers starting at argv[0] */ + + align = -1; +#if _FFR_SPT_ALIGN +# ifdef SPT_ALIGN_SIZE + for (i = SPT_ALIGN_SIZE; i > 0; i >>= 1) + align++; +# endif /* SPT_ALIGN_SIZE */ +#endif /* _FFR_SPT_ALIGN */ + for (i = 0; i < argc; i++) { if (i == 0 || LastArgv + 1 == argv[i]) - LastArgv = argv[i] + strlen(argv[i]); + LastArgv = argv[i] + SPT_ALIGN(strlen(argv[i]), align); } for (i = 0; LastArgv != NULL && envp[i] != NULL; i++) { if (LastArgv + 1 == envp[i]) - LastArgv = envp[i] + strlen(envp[i]); + LastArgv = envp[i] + SPT_ALIGN(strlen(envp[i]), align); } } @@ -2742,7 +2771,8 @@ uname(name) { char buf[MAXLINE]; - while (sm_io_fgets(file, SM_TIME_DEFAULT, buf, MAXLINE) != NULL) + while (sm_io_fgets(file, SM_TIME_DEFAULT, + buf, sizeof buf) != NULL) { if (sm_io_sscanf(buf, "#define sysname \"%*[^\"]\"", NODE_LENGTH, name->nodename) > 0) @@ -5554,7 +5584,11 @@ char *CompileOptions[] = "PIPELINING", #endif /* PIPELINING */ #if SASL +# if SASL >= 20000 + "SASLv2", +# else /* SASL >= 20000 */ "SASL", +# endif /* SASL >= 20000 */ #endif /* SASL */ #if SCANF "SCANF", @@ -5831,6 +5865,9 @@ char *FFRCompileOptions[] = #if _FFR_CHECK_EOM "_FFR_CHECK_EOM", #endif /* _FFR_CHECK_EOM */ +#if _FFR_CHK_QUEUE + "_FFR_CHK_QUEUE", +#endif /* _FFR_CHK_QUEUE */ #if _FFR_CONTROL_MSTAT "_FFR_CONTROL_MSTAT", #endif /* _FFR_CONTROL_MSTAT */ @@ -5946,21 +5983,35 @@ char *FFRCompileOptions[] = #if _FFR_RESET_MACRO_GLOBALS "_FFR_RESET_MACRO_GLOBALS", #endif /* _FFR_RESET_MACRO_GLOBALS */ +#if _FFR_RESPOND_ALL + /* in vacation */ + "_FFR_RESPOND_ALL", +#endif /* _FFR_RESPOND_ALL */ #if _FFR_RHS "_FFR_RHS", #endif /* _FFR_RHS */ +#if _FFR_SASL_OPT_M + "_FFR_SASL_OPT_M", +#endif /* _FFR_SASL_OPT_M */ #if _FFR_SELECT_SHM "_FFR_SELECT_SHM", #endif /* _FFR_SELECT_SHM */ #if _FFR_SHM_STATUS "_FFR_SHM_STATUS", #endif /* _FFR_SHM_STATUS */ +#if _FFR_SMFI_OPENSOCKET + "_FFR_SMFI_OPENSOCKET", +#endif /* _FFR_SMFI_OPENSOCKET */ #if _FFR_SMTP_SSL "_FFR_SMTP_SSL", #endif /* _FFR_SMTP_SSL */ #if _FFR_SOFT_BOUNCE "_FFR_SOFT_BOUNCE", #endif /* _FFR_SOFT_BOUNCE */ +#if _FFR_SPT_ALIGN +/* Chris Adams of HiWAAY Informations Services */ + "_FFR_SPT_ALIGN", +#endif /* _FFR_SPT_ALIGN */ #if _FFR_TIMERS "_FFR_TIMERS", #endif /* _FFR_TIMERS */ diff --git a/contrib/sendmail/src/conf.h b/contrib/sendmail/src/conf.h index 4e4d1ade361..89bdd7ec845 100644 --- a/contrib/sendmail/src/conf.h +++ b/contrib/sendmail/src/conf.h @@ -10,7 +10,7 @@ * the sendmail distribution. * * - * $Id: conf.h,v 1.1.1.12 2002/04/10 03:04:48 gshapiro Exp $ + * $Id: conf.h,v 8.562 2002/05/22 19:46:26 gshapiro Exp $ */ /* @@ -133,6 +133,16 @@ struct rusage; /* forward declaration to get gcc to shut up in wait.h */ # endif /* ! AUTH_MECHANISMS */ #endif /* SASL */ +/* +** Default database permissions (alias, maps, etc.) +** Used by sendmail and libsmdb +*/ + +#ifndef DBMMODE +# define DBMMODE 0640 +#endif /* ! DBMMODE */ + + /********************************************************************** ** Compilation options. ** #define these to 1 if they are available; diff --git a/contrib/sendmail/src/control.c b/contrib/sendmail/src/control.c index ae975c7e68c..88ff72f34fc 100644 --- a/contrib/sendmail/src/control.c +++ b/contrib/sendmail/src/control.c @@ -10,7 +10,7 @@ #include -SM_RCSID("@(#)$Id: control.c,v 1.1.1.9 2002/04/10 03:04:48 gshapiro Exp $") +SM_RCSID("@(#)$Id: control.c,v 8.118 2002/03/19 00:23:27 gshapiro Exp $") /* values for cmd_code */ #define CMDERROR 0 /* bad command */ diff --git a/contrib/sendmail/src/convtime.c b/contrib/sendmail/src/convtime.c index 153605c09ad..36edc1a0b47 100644 --- a/contrib/sendmail/src/convtime.c +++ b/contrib/sendmail/src/convtime.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: convtime.c,v 1.1.1.4 2002/02/17 21:56:39 gshapiro Exp $") +SM_RCSID("@(#)$Id: convtime.c,v 8.39 2001/09/11 04:05:13 gshapiro Exp $") /* ** CONVTIME -- convert time diff --git a/contrib/sendmail/src/daemon.c b/contrib/sendmail/src/daemon.c index d806938e940..0b2cd94078b 100644 --- a/contrib/sendmail/src/daemon.c +++ b/contrib/sendmail/src/daemon.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: daemon.c,v 1.1.1.11 2002/04/10 03:04:48 gshapiro Exp $") +SM_RCSID("@(#)$Id: daemon.c,v 8.612 2002/05/02 19:40:52 ca Exp $") #if defined(SOCK_STREAM) || defined(__GNU_LIBRARY__) # define USE_SOCK_STREAM 1 @@ -2956,6 +2956,9 @@ restart_daemon() reason == NULL ? "implicit call" : reason); closecontrolsocket(true); +#if SM_CONF_SHM + cleanup_shm(DaemonPid == getpid()); +#endif /* SM_CONF_SHM */ /* ** Want to drop to the user who started the process in all cases @@ -2985,9 +2988,6 @@ restart_daemon() if ((j = fcntl(i, F_GETFD, 0)) != -1) (void) fcntl(i, F_SETFD, j | FD_CLOEXEC); } -#if SM_CONF_SHM - cleanup_shm(DaemonPid == getpid()); -#endif /* SM_CONF_SHM */ /* ** Need to allow signals before execve() to make them "harmless". diff --git a/contrib/sendmail/src/deliver.c b/contrib/sendmail/src/deliver.c index e1902531002..2b1fc4c2190 100644 --- a/contrib/sendmail/src/deliver.c +++ b/contrib/sendmail/src/deliver.c @@ -14,7 +14,7 @@ #include #include -SM_RCSID("@(#)$Id: deliver.c,v 1.1.1.11 2002/04/10 03:04:49 gshapiro Exp $") +SM_RCSID("@(#)$Id: deliver.c,v 8.939 2002/05/25 00:46:00 gshapiro Exp $") #if HASSETUSERCONTEXT # include @@ -1284,6 +1284,7 @@ deliver(e, firstto) char *mxhosts[MAXMXHOSTS + 1]; char *pv[MAXPV + 1]; char buf[MAXNAME + 1]; + char cbuf[MAXPATHLEN]; errno = 0; if (!QS_IS_OK(to->q_state)) @@ -2450,14 +2451,14 @@ tryhost: /* change root to some "safe" directory */ if (m->m_rootdir != NULL) { - expand(m->m_rootdir, buf, sizeof buf, e); + expand(m->m_rootdir, cbuf, sizeof cbuf, e); if (tTd(11, 20)) sm_dprintf("openmailer: chroot %s\n", - buf); - if (chroot(buf) < 0) + cbuf); + if (chroot(cbuf) < 0) { syserr("openmailer: Cannot chroot(%s)", - buf); + cbuf); exit(EX_TEMPFAIL); } if (chdir("/") < 0) @@ -2584,13 +2585,14 @@ tryhost: q = strchr(p, ':'); if (q != NULL) *q = '\0'; - expand(p, buf, sizeof buf, e); + expand(p, cbuf, sizeof cbuf, e); if (q != NULL) *q++ = ':'; if (tTd(11, 20)) sm_dprintf("openmailer: trydir %s\n", - buf); - if (buf[0] != '\0' && chdir(buf) >= 0) + cbuf); + if (cbuf[0] != '\0' && + chdir(cbuf) >= 0) break; } } @@ -3029,7 +3031,11 @@ reconnect: /* after switching to an encrypted connection */ /* Get security strength (features) */ result = sasl_getprop(mci->mci_conn, SASL_SSF, +# if SASL >= 20000 + (const void **) &ssf); +# else /* SASL >= 20000 */ (void **) &ssf); +# endif /* SASL >= 20000 */ /* XXX authid? */ if (LogLevel > 9) @@ -4974,8 +4980,8 @@ mailfile(filename, mailer, ctladdr, sfflags, e) char *p; char *volatile realfile; SM_EVENT *ev; - char buf[MAXLINE + 1]; - char targetfile[MAXPATHLEN + 1]; + char buf[MAXPATHLEN]; + char targetfile[MAXPATHLEN]; if (tTd(11, 1)) { diff --git a/contrib/sendmail/src/domain.c b/contrib/sendmail/src/domain.c index 9d873986cbd..f48f987fd89 100644 --- a/contrib/sendmail/src/domain.c +++ b/contrib/sendmail/src/domain.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1986, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -14,9 +14,9 @@ #include #if NAMED_BIND -SM_RCSID("@(#)$Id: domain.c,v 1.1.1.8 2002/04/10 03:04:49 gshapiro Exp $ (with name server)") +SM_RCSID("@(#)$Id: domain.c,v 8.181 2002/05/24 23:48:42 gshapiro Exp $ (with name server)") #else /* NAMED_BIND */ -SM_RCSID("@(#)$Id: domain.c,v 1.1.1.8 2002/04/10 03:04:49 gshapiro Exp $ (without name server)") +SM_RCSID("@(#)$Id: domain.c,v 8.181 2002/05/24 23:48:42 gshapiro Exp $ (without name server)") #endif /* NAMED_BIND */ #if NAMED_BIND @@ -810,7 +810,7 @@ dns_getcanonname(host, hbsize, trymx, statp, pttl) int loopcnt; char *xp; char nbuf[SM_MAX(MAXPACKET, MAXDNAME*2+2)]; - char *searchlist[MAXDNSRCH+2]; + char *searchlist[MAXDNSRCH + 2]; if (tTd(8, 2)) sm_dprintf("dns_getcanonname(%s, trymx=%d)\n", host, trymx); diff --git a/contrib/sendmail/src/envelope.c b/contrib/sendmail/src/envelope.c index 000cc2d8deb..27ad7cb07c6 100644 --- a/contrib/sendmail/src/envelope.c +++ b/contrib/sendmail/src/envelope.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: envelope.c,v 1.1.1.9 2002/04/10 03:04:49 gshapiro Exp $") +SM_RCSID("@(#)$Id: envelope.c,v 8.282 2002/05/10 15:41:11 ca Exp $") /* ** NEWENVELOPE -- fill in a new envelope @@ -518,7 +518,7 @@ simpledrop: { syserr("!dropenvelope(%s): cannot commit data file %s, uid=%d", e->e_id, queuename(e, DATAFL_LETTER), - geteuid()); + (int) geteuid()); } for (ee = e->e_sibling; ee != NULL; ee = ee->e_sibling) queueup(ee, false, true); diff --git a/contrib/sendmail/src/err.c b/contrib/sendmail/src/err.c index 28e99cfeef3..484af9e85dd 100644 --- a/contrib/sendmail/src/err.c +++ b/contrib/sendmail/src/err.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: err.c,v 1.1.1.7 2002/02/17 21:56:39 gshapiro Exp $") +SM_RCSID("@(#)$Id: err.c,v 8.189 2002/01/09 18:52:30 ca Exp $") #if LDAPMAP # include diff --git a/contrib/sendmail/src/headers.c b/contrib/sendmail/src/headers.c index 642547d7413..a56266e7d6b 100644 --- a/contrib/sendmail/src/headers.c +++ b/contrib/sendmail/src/headers.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: headers.c,v 1.1.1.9 2002/02/17 21:56:39 gshapiro Exp $") +SM_RCSID("@(#)$Id: headers.c,v 8.266 2001/10/12 01:50:12 gshapiro Exp $") static size_t fix_mime_header __P((char *)); static int priencode __P((char *)); diff --git a/contrib/sendmail/src/helpfile b/contrib/sendmail/src/helpfile index e6e2c6408ba..931a06e7d37 100644 --- a/contrib/sendmail/src/helpfile +++ b/contrib/sendmail/src/helpfile @@ -11,7 +11,7 @@ cpyr By using this file, you agree to the terms and conditions set cpyr forth in the LICENSE file which can be found at the top level of cpyr the sendmail distribution. cpyr -cpyr $$Id: helpfile,v 1.1.1.4 2002/04/10 03:04:49 gshapiro Exp $$ +cpyr $$Id: helpfile,v 8.40 2002/03/19 00:23:28 gshapiro Exp $$ cpyr smtp This is sendmail version $v smtp Topics: diff --git a/contrib/sendmail/src/macro.c b/contrib/sendmail/src/macro.c index 2cc6b88a099..fc7a2c277c8 100644 --- a/contrib/sendmail/src/macro.c +++ b/contrib/sendmail/src/macro.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: macro.c,v 1.1.1.7 2002/02/17 21:56:39 gshapiro Exp $") +SM_RCSID("@(#)$Id: macro.c,v 8.86 2001/09/11 04:05:14 gshapiro Exp $") #if MAXMACROID != (BITMAPBITS - 1) ERROR Read the comment in conf.h diff --git a/contrib/sendmail/src/mailq.1 b/contrib/sendmail/src/mailq.1 index 2efa319d6cc..0fae3ad5368 100644 --- a/contrib/sendmail/src/mailq.1 +++ b/contrib/sendmail/src/mailq.1 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +.\" Copyright (c) 1998-2000, 2002 Sendmail, Inc. and its suppliers. .\" All rights reserved. .\" Copyright (c) 1983, 1997 Eric P. Allman. All rights reserved. .\" Copyright (c) 1985, 1990, 1993 @@ -9,9 +9,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: mailq.1,v 1.1.1.6 2002/02/17 21:56:39 gshapiro Exp $ +.\" $Id: mailq.1,v 8.19 2002/04/12 05:07:58 gshapiro Exp $ .\" -.TH MAILQ 1 "$Date: 2002/02/17 21:56:39 $" +.TH MAILQ 1 "$Date: 2002/04/12 05:07:58 $" .SH NAME mailq \- print the mail queue diff --git a/contrib/sendmail/src/main.c b/contrib/sendmail/src/main.c index 1451acb20d9..78c1862343c 100644 --- a/contrib/sendmail/src/main.c +++ b/contrib/sendmail/src/main.c @@ -25,7 +25,7 @@ SM_UNUSED(static char copyright[]) = The Regents of the University of California. All rights reserved.\n"; #endif /* ! lint */ -SM_RCSID("@(#)$Id: main.c,v 1.1.1.11 2002/04/10 03:04:49 gshapiro Exp $") +SM_RCSID("@(#)$Id: main.c,v 8.882 2002/05/10 16:20:55 ca Exp $") #if NETINET || NETINET6 @@ -2697,6 +2697,13 @@ main(argc, argv, envp) /* NOTREACHED */ return -1; } + + /* set message size */ + (void) sm_snprintf(buf, sizeof buf, "%ld", + MainEnvelope.e_msgsize); + macdefine(&MainEnvelope.e_macro, A_TEMP, + macid("{msg_size}"), buf); + Errors = savederrors; MainEnvelope.e_flags |= savedflags; } @@ -2802,6 +2809,7 @@ finis(drop, cleanup, exitstat) bool cleanup; volatile int exitstat; { + /* Still want to process new timeouts added below */ sm_clear_events(); (void) sm_releasesignal(SIGALRM); diff --git a/contrib/sendmail/src/map.c b/contrib/sendmail/src/map.c index efae0d39ad4..d8570d3762e 100644 --- a/contrib/sendmail/src/map.c +++ b/contrib/sendmail/src/map.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: map.c,v 1.1.1.12 2002/04/10 03:04:50 gshapiro Exp $") +SM_RCSID("@(#)$Id: map.c,v 8.645 2002/05/24 21:07:36 gshapiro Exp $") #if LDAPMAP # include @@ -121,8 +121,6 @@ static bool text_getcanonname __P((char *, int, int *)); ** to be more properly integrated into the map structure. */ -#define DBMMODE 0644 - #if O_EXLOCK && HASFLOCK && !BOGUS_O_EXCL # define LOCK_ON_OPEN 1 /* we can open/create a locked file */ #else /* O_EXLOCK && HASFLOCK && !BOGUS_O_EXCL */ @@ -1359,8 +1357,8 @@ ndbm_map_open(map, mode) long sff; int ret; int smode = S_IREAD; - char dirfile[MAXNAME + 1]; - char pagfile[MAXNAME + 1]; + char dirfile[MAXPATHLEN]; + char pagfile[MAXPATHLEN]; struct stat st; struct stat std, stp; @@ -1371,8 +1369,17 @@ ndbm_map_open(map, mode) mode &= O_ACCMODE; /* do initial file and directory checks */ - (void) sm_strlcpyn(dirfile, sizeof dirfile, 2, map->map_file, ".dir"); - (void) sm_strlcpyn(pagfile, sizeof pagfile, 2, map->map_file, ".pag"); + if (sm_strlcpyn(dirfile, sizeof dirfile, 2, + map->map_file, ".dir") >= sizeof dirfile || + sm_strlcpyn(pagfile, sizeof pagfile, 2, + map->map_file, ".pag") >= sizeof pagfile) + { + errno = 0; + if (!bitset(MF_OPTIONAL, map->map_mflags)) + syserr("dbm map \"%s\": map file %s name too long", + map->map_mname, map->map_file); + return false; + } sff = SFF_ROOTOK|SFF_REGONLY; if (mode == O_RDWR) { @@ -1944,13 +1951,29 @@ db_map_open(map, mode, mapclassname, dbtype, openinfo) long sff; int save_errno; struct stat st; - char buf[MAXNAME + 1]; + char buf[MAXPATHLEN]; /* do initial file and directory checks */ - (void) sm_strlcpy(buf, map->map_file, sizeof buf - 3); + if (sm_strlcpy(buf, map->map_file, sizeof buf) >= sizeof buf) + { + errno = 0; + if (!bitset(MF_OPTIONAL, map->map_mflags)) + syserr("map \"%s\": map file %s name too long", + map->map_mname, map->map_file); + return false; + } i = strlen(buf); if (i < 3 || strcmp(&buf[i - 3], ".db") != 0) - (void) sm_strlcat(buf, ".db", sizeof buf); + { + if (sm_strlcat(buf, ".db", sizeof buf) >= sizeof buf) + { + errno = 0; + if (!bitset(MF_OPTIONAL, map->map_mflags)) + syserr("map \"%s\": map file %s name too long", + map->map_mname, map->map_file); + return false; + } + } mode &= O_ACCMODE; omode = mode; @@ -2230,7 +2253,7 @@ db_map_lookup(map, name, av, statp) int fd; struct stat stbuf; char keybuf[MAXNAME + 1]; - char buf[MAXNAME + 1]; + char buf[MAXPATHLEN]; memset(&key, '\0', sizeof key); memset(&val, '\0', sizeof val); @@ -2239,10 +2262,15 @@ db_map_lookup(map, name, av, statp) sm_dprintf("db_map_lookup(%s, %s)\n", map->map_mname, name); - i = strlen(map->map_file); - if (i > MAXNAME) - i = MAXNAME; - (void) sm_strlcpy(buf, map->map_file, i + 1); + if (sm_strlcpy(buf, map->map_file, sizeof buf) >= sizeof buf) + { + errno = 0; + if (!bitset(MF_OPTIONAL, map->map_mflags)) + syserr("map \"%s\": map file %s name too long", + map->map_mname, map->map_file); + return NULL; + } + i = strlen(buf); if (i > 3 && strcmp(&buf[i - 3], ".db") == 0) buf[i - 3] = '\0'; @@ -4540,10 +4568,16 @@ ldapmap_parseargs(map, args) ldapmap_dequote(lmap->ldap_secret)); return false; } - lmap->ldap_secret = sfgets(m_tmp, LDAPMAP_MAX_PASSWD, + lmap->ldap_secret = sfgets(m_tmp, sizeof m_tmp, sfd, TimeOuts.to_fileopen, "ldapmap_parseargs"); (void) sm_io_close(sfd, SM_TIME_DEFAULT); + if (strlen(m_tmp) > LDAPMAP_MAX_PASSWD) + { + syserr("LDAP map: secret in %s too long", + ldapmap_dequote(lmap->ldap_secret)); + return false; + } if (lmap->ldap_secret != NULL && strlen(m_tmp) > 0) { @@ -4563,8 +4597,7 @@ ldapmap_parseargs(map, args) ** stashed */ - (void) sm_snprintf(m_tmp, - MAXPATHLEN + LDAPMAP_MAX_PASSWD, + (void) sm_snprintf(m_tmp, sizeof m_tmp, "KRBTKFILE=%s", ldapmap_dequote(lmap->ldap_secret)); lmap->ldap_secret = m_tmp; @@ -5833,7 +5866,8 @@ text_map_lookup(map, name, av, statp) } key_idx = map->map_keycolno; delim = map->map_coldelim; - while (sm_io_fgets(f, SM_TIME_DEFAULT, linebuf, MAXLINE) != NULL) + while (sm_io_fgets(f, SM_TIME_DEFAULT, + linebuf, sizeof linebuf) != NULL) { char *p; @@ -5906,7 +5940,8 @@ text_getcanonname(name, hbsize, statp) } found = false; while (!found && - sm_io_fgets(f, SM_TIME_DEFAULT, linebuf, MAXLINE) != NULL) + sm_io_fgets(f, SM_TIME_DEFAULT, + linebuf, sizeof linebuf) != NULL) { char *p = strpbrk(linebuf, "#\n"); @@ -7200,7 +7235,8 @@ nsd_map_lookup(map, name, av, statp) *statp = EX_UNAVAILABLE; return NULL; } - r = ns_lookup(ns_map, NULL, map->map_file, keybuf, NULL, buf, MAXLINE); + r = ns_lookup(ns_map, NULL, map->map_file, keybuf, NULL, + buf, sizeof buf); if (r == NS_UNAVAIL || r == NS_TRYAGAIN) { *statp = EX_TEMPFAIL; diff --git a/contrib/sendmail/src/mci.c b/contrib/sendmail/src/mci.c index e6c48dc0e1a..b54b13d05e4 100644 --- a/contrib/sendmail/src/mci.c +++ b/contrib/sendmail/src/mci.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: mci.c,v 1.1.1.7 2002/04/10 03:04:50 gshapiro Exp $") +SM_RCSID("@(#)$Id: mci.c,v 8.205 2002/05/24 18:53:48 gshapiro Exp $") #if NETINET || NETINET6 # include @@ -654,7 +654,7 @@ mci_lock_host_statfile(mci) { int save_errno = errno; int retVal = EX_OK; - char fname[MAXPATHLEN + 1]; + char fname[MAXPATHLEN]; if (HostStatDir == NULL || mci->mci_host == NULL) return EX_OK; @@ -773,7 +773,7 @@ mci_load_persistent(mci) int save_errno = errno; bool locked = true; SM_FILE_T *fp; - char fname[MAXPATHLEN + 1]; + char fname[MAXPATHLEN]; if (mci == NULL) { @@ -1060,7 +1060,7 @@ mci_traverse_persistent(action, pathname) size_t len; char *newptr; struct dirent *e; - char newpath[MAXPATHLEN + 1]; + char newpath[MAXPATHLEN]; if ((d = opendir(pathname)) == NULL) { diff --git a/contrib/sendmail/src/milter.c b/contrib/sendmail/src/milter.c index b1be43e95df..f52a72500ec 100644 --- a/contrib/sendmail/src/milter.c +++ b/contrib/sendmail/src/milter.c @@ -10,7 +10,7 @@ #include -SM_RCSID("@(#)$Id: milter.c,v 1.1.1.9 2002/04/10 03:04:50 gshapiro Exp $") +SM_RCSID("@(#)$Id: milter.c,v 8.196 2002/04/14 03:55:07 gshapiro Exp $") #if MILTER # include diff --git a/contrib/sendmail/src/mime.c b/contrib/sendmail/src/mime.c index 403c239e746..2fd36d2e81d 100644 --- a/contrib/sendmail/src/mime.c +++ b/contrib/sendmail/src/mime.c @@ -14,7 +14,7 @@ #include #include -SM_RCSID("@(#)$Id: mime.c,v 1.1.1.7 2002/04/10 03:04:50 gshapiro Exp $") +SM_RCSID("@(#)$Id: mime.c,v 8.130 2002/05/21 03:39:34 ca Exp $") /* ** MIME support. @@ -377,7 +377,8 @@ mime8to7(mci, header, e, boundaries, flags) putheader(mci, hdr, e, flags); if (tTd(43, 101)) putline("+++after putheader", mci); - if (hvalue("MIME-Version", hdr) == NULL) + if (hvalue("MIME-Version", hdr) == NULL && + !bitset(M87F_NO8TO7, flags)) putline("MIME-Version: 1.0", mci); bt = mime8to7(mci, hdr, e, boundaries, flags); mci->mci_flags &= ~MCIF_INMIME; diff --git a/contrib/sendmail/src/newaliases.1 b/contrib/sendmail/src/newaliases.1 index 91edc57894f..20fd0e74e26 100644 --- a/contrib/sendmail/src/newaliases.1 +++ b/contrib/sendmail/src/newaliases.1 @@ -9,9 +9,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: newaliases.1,v 1.1.1.5 2002/02/17 21:56:40 gshapiro Exp $ +.\" $Id: newaliases.1,v 8.19 2001/10/10 03:23:17 ca Exp $ .\" -.TH NEWALIASES 1 "$Date: 2002/02/17 21:56:40 $" +.TH NEWALIASES 1 "$Date: 2001/10/10 03:23:17 $" .SH NAME newaliases \- rebuild the data base for the mail aliases file diff --git a/contrib/sendmail/src/parseaddr.c b/contrib/sendmail/src/parseaddr.c index bf591962a35..aa0e31d1b96 100644 --- a/contrib/sendmail/src/parseaddr.c +++ b/contrib/sendmail/src/parseaddr.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: parseaddr.c,v 1.1.1.10 2002/04/10 03:04:50 gshapiro Exp $") +SM_RCSID("@(#)$Id: parseaddr.c,v 8.359 2002/03/29 16:20:47 ca Exp $") static void allocaddr __P((ADDRESS *, int, char *, ENVELOPE *)); static int callsubr __P((char**, int, ENVELOPE *)); diff --git a/contrib/sendmail/src/queue.c b/contrib/sendmail/src/queue.c index c72248aeeef..5920b1ed261 100644 --- a/contrib/sendmail/src/queue.c +++ b/contrib/sendmail/src/queue.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: queue.c,v 1.1.1.11 2002/04/10 03:04:51 gshapiro Exp $") +SM_RCSID("@(#)$Id: queue.c,v 8.862 2002/05/09 23:51:53 ca Exp $") #include @@ -369,7 +369,7 @@ queueup(e, announce, msync) if (LogLevel > 0 && (i % 32) == 0) sm_syslog(LOG_ALERT, e->e_id, "queueup: cannot create %s, uid=%d: %s", - tf, geteuid(), + tf, (int) geteuid(), sm_errstring(errno)); } } @@ -405,7 +405,7 @@ queueup(e, announce, msync) printopenfds(true); errno = save_errno; syserr("!queueup: cannot create queue temp file %s, uid=%d", - tf, geteuid()); + tf, (int) geteuid()); } } @@ -449,7 +449,7 @@ queueup(e, announce, msync) errno != EINVAL) { syserr("!queueup: cannot commit data file %s, uid=%d", - queuename(e, DATAFL_LETTER), geteuid()); + queuename(e, DATAFL_LETTER), (int) geteuid()); } if (e->e_dfp != NULL && SuperSafe == SAFE_INTERACTIVE && msync) @@ -490,7 +490,7 @@ queueup(e, announce, msync) (void *) &dfd, SM_IO_WRONLY, NULL)) == NULL) syserr("!queueup: cannot create data temp file %s, uid=%d", - df, geteuid()); + df, (int) geteuid()); if (fstat(dfd, &stbuf) < 0) e->e_dfino = -1; else @@ -524,7 +524,7 @@ queueup(e, announce, msync) if (sm_io_close(dfp, SM_TIME_DEFAULT) < 0) syserr("!queueup: cannot save data temp file %s, uid=%d", - df, geteuid()); + df, (int) geteuid()); e->e_putbody = putbody; } @@ -831,7 +831,7 @@ queueup(e, announce, msync) sizeof qf); if (rename(tf, qf) < 0) syserr("cannot rename(%s, %s), uid=%d", - tf, qf, geteuid()); + tf, qf, (int) geteuid()); # if _FFR_QUARANTINE else { @@ -4391,6 +4391,10 @@ readqf(e, openonly) e->e_msgsize = st.st_size + hdrsize; e->e_dfdev = st.st_dev; e->e_dfino = ST_INODE(st); + (void) sm_snprintf(buf, sizeof buf, "%ld", + e->e_msgsize); + macdefine(&e->e_macro, A_TEMP, macid("{msg_size}"), + buf); } } @@ -5402,7 +5406,7 @@ loseqfile(e, why) p = queuename(e, LOSEQF_LETTER); if (rename(buf, p) < 0) syserr("cannot rename(%s, %s), uid=%d", - buf, p, geteuid()); + buf, p, (int) geteuid()); else if (LogLevel > 0) sm_syslog(LOG_ALERT, e->e_id, "Losing %s: %s", buf, why); @@ -5742,9 +5746,18 @@ chkqdir(name, sff) /* Print a warning if unsafe (but still use it) */ /* XXX do this only if we want the warning? */ i = safedirpath(name, RunAsUid, RunAsGid, NULL, sff, 0, 0); - if (i != 0 && tTd(41, 2)) - sm_dprintf("chkqdir: \"%s\": Not safe: %s\n", - name, sm_errstring(i)); + if (i != 0) + { + if (tTd(41, 2)) + sm_dprintf("chkqdir: \"%s\": Not safe: %s\n", + name, sm_errstring(i)); +#if _FFR_CHK_QUEUE + if (LogLevel > 8) + sm_syslog(LOG_WARNING, NOQID, + "queue directory \"%s\": Not safe: %s", + name, sm_errstring(i)); +#endif /* _FFR_CHK_QUEUE */ + } return true; } /* @@ -5809,6 +5822,11 @@ multiqueue_cache(basedir, blen, qg, qn, phash) /* If running as root, allow safedirpath() checks to use privs */ if (RunAsUid == 0) sff |= SFF_ROOTOK; +#if _FFR_CHK_QUEUE + sff |= SFF_SAFEDIRPATH|SFF_NOWWFILES; + if (!UseMSP) + sff |= SFF_NOGWFILES; +#endif /* _FFR_CHK_QUEUE */ if (!SM_IS_DIR_START(qg->qg_qdir)) { @@ -6825,7 +6843,7 @@ cleanup_shm(owner) if (ShmId != SM_SHM_NO_ID) { if (sm_shmstop(Pshm, ShmId, owner) < 0 && LogLevel > 8) - sm_syslog(LOG_INFO, NOQID, "sh_shmstop failed=%s", + sm_syslog(LOG_INFO, NOQID, "sm_shmstop failed=%s", sm_errstring(errno)); Pshm = NULL; ShmId = SM_SHM_NO_ID; @@ -8246,7 +8264,7 @@ quarantine_queue_item(qgrp, qdir, e, reason) } break; - case 'R': + case 'S': /* ** If we are quarantining an unquarantined item, ** need to put in a new 'q' line before it's diff --git a/contrib/sendmail/src/readcf.c b/contrib/sendmail/src/readcf.c index 9a987154ecd..c4d06375504 100644 --- a/contrib/sendmail/src/readcf.c +++ b/contrib/sendmail/src/readcf.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: readcf.c,v 1.1.1.13 2002/04/10 03:04:51 gshapiro Exp $") +SM_RCSID("@(#)$Id: readcf.c,v 8.606 2002/05/09 21:09:01 ca Exp $") #if NETINET || NETINET6 # include @@ -3350,6 +3350,14 @@ setoption(opt, val, safe, sticky, e) case 'f': SASLOpts |= SASL_SEC_FORWARD_SECRECY; break; +# if _FFR_SASL_OPT_M +/* to be activated in 8.13 */ +# if SASL >= 20101 + case 'm': + SASLOpts |= SASL_SEC_MUTUAL_AUTH; + break; +# endif /* SASL >= 20101 */ +# endif /* _FFR_SASL_OPT_M */ case 'p': SASLOpts |= SASL_SEC_NOPLAINTEXT; break; diff --git a/contrib/sendmail/src/recipient.c b/contrib/sendmail/src/recipient.c index e90238efaf4..22b83774a09 100644 --- a/contrib/sendmail/src/recipient.c +++ b/contrib/sendmail/src/recipient.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: recipient.c,v 1.1.1.8 2002/02/17 21:56:41 gshapiro Exp $") +SM_RCSID("@(#)$Id: recipient.c,v 8.330 2002/05/29 18:20:03 gshapiro Exp $") static void includetimeout __P((void)); static ADDRESS *self_reference __P((ADDRESS *)); @@ -1419,7 +1419,7 @@ include(fname, forwarding, ctladdr, sendq, aliaslevel, e) if (forwarding) { - sfflags |= SFF_MUSTOWN|SFF_ROOTOK|SFF_NOWLINK; + sfflags |= SFF_MUSTOWN|SFF_ROOTOK; if (!bitnset(DBS_GROUPWRITABLEFORWARDFILE, DontBlameSendmail)) sfflags |= SFF_NOGWFILES; if (!bitnset(DBS_WORLDWRITABLEFORWARDFILE, DontBlameSendmail)) @@ -1502,7 +1502,7 @@ include(fname, forwarding, ctladdr, sendq, aliaslevel, e) { rval = EAGAIN; syserr("seteuid(%d) failure (real=%d, eff=%d)", - uid, getuid(), geteuid()); + uid, (int) getuid(), (int) geteuid()); goto resetuid; } # endif /* MAILER_SETUID_METHOD == USE_SETEUID */ @@ -1511,7 +1511,7 @@ include(fname, forwarding, ctladdr, sendq, aliaslevel, e) { rval = EAGAIN; syserr("setreuid(0, %d) failure (real=%d, eff=%d)", - uid, getuid(), geteuid()); + uid, (int) getuid(), (int) geteuid()); goto resetuid; } # endif /* MAILER_SETUID_METHOD == USE_SETREUID */ @@ -1831,7 +1831,7 @@ resetuid: #endif /* 0 */ syserr("Attempt to forward to more than %d addresses (in %s)!", - MaxForwardEntries,fname); + MaxForwardEntries, fname); maxreached = true; } } diff --git a/contrib/sendmail/src/sasl.c b/contrib/sendmail/src/sasl.c index ca109dee5e8..beeece2e00b 100644 --- a/contrib/sendmail/src/sasl.c +++ b/contrib/sendmail/src/sasl.c @@ -9,13 +9,12 @@ */ #include -SM_RCSID("@(#)$Id: sasl.c,v 1.1.1.2 2002/04/10 03:04:51 gshapiro Exp $") +SM_RCSID("@(#)$Id: sasl.c,v 8.18 2002/05/25 00:26:42 gshapiro Exp $") #if SASL # include # include # include -# include /* ** In order to ensure that storage leaks are tracked, and to prevent @@ -31,12 +30,12 @@ static void *sm_sasl_realloc __P((void *, unsigned long)); void sm_sasl_free __P((void *)); /* +** SASLv1: ** We can't use an rpool for Cyrus-SASL memory management routines, ** since the encryption/decryption routines in Cyrus-SASL ** allocate/deallocate a buffer each time. Since rpool ** don't release memory until the very end, memory consumption is ** proportional to the size of an e-mail, which is unacceptable. -** */ /* @@ -206,4 +205,79 @@ intersect(s1, s2, rpool) } return res; } +# if SASL >= 20000 +/* +** IPTOSTRING -- create string for SASL_IP*PORT property +** (borrowed from lib/iptostring.c in Cyrus-IMAP) +** +** Parameters: +** addr -- (pointer to) socket address +** addrlen -- length of socket address +** out -- output string (result) +** outlen -- maximum length of output string +** +** Returns: +** true iff successful. +** +** Side Effects: +** creates output string if successful. +** sets errno if unsuccessful. +*/ + +# include + +# ifndef NI_WITHSCOPEID +# define NI_WITHSCOPEID 0 +# endif +# ifndef NI_MAXHOST +# define NI_MAXHOST 1025 +# endif +# ifndef NI_MAXSERV +# define NI_MAXSERV 32 +# endif + +bool +iptostring(addr, addrlen, out, outlen) + SOCKADDR *addr; + SOCKADDR_LEN_T addrlen; + char *out; + unsigned outlen; +{ + char hbuf[NI_MAXHOST], pbuf[NI_MAXSERV]; + + if (addr == NULL || out == NULL) + { + errno = EINVAL; + return false; + } + +# if NETINET6 + if (getnameinfo((struct sockaddr *) addr, addrlen, + hbuf, sizeof hbuf, pbuf, sizeof pbuf, + NI_NUMERICHOST | NI_WITHSCOPEID | NI_NUMERICSERV) != 0) + return false; +# else /* NETINET6 */ + if (addr->sa.sa_family != AF_INET) + { + errno = EINVAL; + return false; + } + if (inet_ntop(AF_INET, &(addr->sin.sin_addr), + hbuf, sizeof hbuf) == NULL) + { + errno = EINVAL; + return false; + } + sm_snprintf(pbuf, sizeof pbuf, "%d", ntohs(addr->sin.sin_port)); +# endif /* NETINET6 */ + + if (outlen < strlen(hbuf) + strlen(pbuf) + 2) + { + errno = ENOMEM; + return false; + } + sm_snprintf(out, outlen, "%s;%s", hbuf, pbuf); + return true; +} +# endif /* SASL >= 20000 */ #endif /* SASL */ diff --git a/contrib/sendmail/src/savemail.c b/contrib/sendmail/src/savemail.c index 4bff679ce09..b28a70d9249 100644 --- a/contrib/sendmail/src/savemail.c +++ b/contrib/sendmail/src/savemail.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: savemail.c,v 1.1.1.9 2002/02/17 21:56:41 gshapiro Exp $") +SM_RCSID("@(#)$Id: savemail.c,v 8.299 2002/05/24 20:50:17 gshapiro Exp $") static void errbody __P((MCI *, ENVELOPE *, char *)); static bool pruneroute __P((char *)); @@ -65,6 +65,7 @@ savemail(e, sendbody) int flags; long sff; char buf[MAXLINE + 1]; + char dlbuf[MAXPATHLEN]; SM_MBDB_T user; @@ -365,20 +366,20 @@ savemail(e, sendbody) p = macvalue('g', e); macdefine(&e->e_macro, A_PERM, 'g', e->e_sender); - expand("\201z/dead.letter", buf, sizeof buf, e); + expand("\201z/dead.letter", dlbuf, sizeof dlbuf, e); sff = SFF_CREAT|SFF_REGONLY|SFF_RUNASREALUID; if (RealUid == 0) sff |= SFF_ROOTOK; - e->e_to = buf; - if (writable(buf, NULL, sff) && - mailfile(buf, FileMailer, NULL, sff, e) == EX_OK) + e->e_to = dlbuf; + if (writable(dlbuf, NULL, sff) && + mailfile(dlbuf, FileMailer, NULL, sff, e) == EX_OK) { int oldverb = Verbose; if (OpMode != MD_DAEMON && OpMode != MD_SMTP) Verbose = 1; if (Verbose > 0) - message("Saved message in %s", buf); + message("Saved message in %s", dlbuf); Verbose = oldverb; macdefine(&e->e_macro, A_PERM, 'g', p); state = ESM_DONE; diff --git a/contrib/sendmail/src/sendmail.8 b/contrib/sendmail/src/sendmail.8 index b1558d19e29..cf473c52e22 100644 --- a/contrib/sendmail/src/sendmail.8 +++ b/contrib/sendmail/src/sendmail.8 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. +.\" Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. .\" All rights reserved. .\" Copyright (c) 1983, 1997 Eric P. Allman. All rights reserved. .\" Copyright (c) 1988, 1991, 1993 @@ -9,9 +9,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: sendmail.8,v 1.1.1.6 2002/02/17 21:56:41 gshapiro Exp $ +.\" $Id: sendmail.8,v 8.51 2002/05/24 15:42:13 ca Exp $ .\" -.TH SENDMAIL 8 "$Date: 2002/02/17 21:56:41 $" +.TH SENDMAIL 8 "$Date: 2002/05/24 15:42:13 $" .SH NAME sendmail \- an electronic mail transport agent @@ -93,8 +93,7 @@ the ``From:'' and ``Sender:'' fields are examined for the name of the sender. .TP .B \-bd -Run as a daemon. This requires Berkeley -IPC. +Run as a daemon. .B Sendmail will fork and run in background listening on socket 25 for incoming diff --git a/contrib/sendmail/src/sendmail.h b/contrib/sendmail/src/sendmail.h index dbefe5a0edb..2284bd6efcf 100644 --- a/contrib/sendmail/src/sendmail.h +++ b/contrib/sendmail/src/sendmail.h @@ -48,7 +48,7 @@ #ifdef _DEFINE # ifndef lint -SM_UNUSED(static char SmailId[]) = "@(#)$Id: sendmail.h,v 1.1.1.13 2002/04/10 03:04:51 gshapiro Exp $"; +SM_UNUSED(static char SmailId[]) = "@(#)$Id: sendmail.h,v 8.918 2002/05/23 20:01:56 gshapiro Exp $"; # endif /* ! lint */ #endif /* _DEFINE */ @@ -124,18 +124,26 @@ SM_UNUSED(static char SmailId[]) = "@(#)$Id: sendmail.h,v 1.1.1.13 2002/04/10 03 #endif /* STARTTLS */ #if SASL /* include the sasl include files if we have them */ -# include + + +# if SASL == 2 || SASL >= 20000 +# include +# include +# else /* SASL == 2 || SASL >= 20000 */ +# include +# include +# endif /* SASL == 2 || SASL >= 20000 */ # if defined(SASL_VERSION_MAJOR) && defined(SASL_VERSION_MINOR) && defined(SASL_VERSION_STEP) # define SASL_VERSION (SASL_VERSION_MAJOR * 10000) + (SASL_VERSION_MINOR * 100) + SASL_VERSION_STEP -# if SASL == 1 +# if SASL == 1 || SASL == 2 # undef SASL # define SASL SASL_VERSION -# else /* SASL == 1 */ +# else /* SASL == 1 || SASL == 2 */ # if SASL != SASL_VERSION ERROR README: -DSASL (SASL) does not agree with the version of the CYRUS_SASL library (SASL_VERSION) ERROR README: see README! # endif /* SASL != SASL_VERSION */ -# endif /* SASL == 1 */ +# endif /* SASL == 1 || SASL == 2 */ # else /* defined(SASL_VERSION_MAJOR) && defined(SASL_VERSION_MINOR) && defined(SASL_VERSION_STEP) */ # if SASL == 1 ERROR README: please set -DSASL to the version of the CYRUS_SASL library @@ -559,8 +567,11 @@ extern bool filesys_free __P((long)); /* SASL options */ # define SASL_AUTH_AUTH 0x1000 /* use auth= only if authenticated */ -# define SASL_SEC_MASK 0x0fff /* mask for SASL_SEC_* values: sasl.h */ -# if (SASL_SEC_NOPLAINTEXT & SASL_SEC_MASK) == 0 || \ +# if SASL >= 20101 +# define SASL_SEC_MASK SASL_SEC_MAXIMUM /* mask for SASL_SEC_* values: sasl.h */ +# else /* SASL >= 20101 */ +# define SASL_SEC_MASK 0x0fff /* mask for SASL_SEC_* values: sasl.h */ +# if (SASL_SEC_NOPLAINTEXT & SASL_SEC_MASK) == 0 || \ (SASL_SEC_NOACTIVE & SASL_SEC_MASK) == 0 || \ (SASL_SEC_NODICTIONARY & SASL_SEC_MASK) == 0 || \ (SASL_SEC_FORWARD_SECRECY & SASL_SEC_MASK) == 0 || \ @@ -568,19 +579,23 @@ extern bool filesys_free __P((long)); (SASL_SEC_PASS_CREDENTIALS & SASL_SEC_MASK) == 0 ERROR: change SASL_SEC_MASK_ notify sendmail.org! # endif /* SASL_SEC_NOPLAINTEXT & SASL_SEC_MASK) == 0 ... */ +# endif /* SASL >= 20101 */ # define MAXOUTLEN 1024 /* length of output buffer */ /* functions */ extern char *intersect __P((char *, char *, SM_RPOOL_T *)); extern char *iteminlist __P((char *, char *, char *)); +# if SASL >= 20000 +extern int proxy_policy __P((sasl_conn_t *, void *, const char *, unsigned, const char *, unsigned, const char *, unsigned, struct propctx *)); +extern int safesaslfile __P((void *, const char *, sasl_verify_type_t)); +# else /* SASL >= 20000 */ extern int proxy_policy __P((void *, const char *, const char *, const char **, const char **)); -# if SASL > 10515 +# if SASL > 10515 extern int safesaslfile __P((void *, char *, int)); -# else /* SASL > 10515 */ +# else /* SASL > 10515 */ extern int safesaslfile __P((void *, char *)); -# endif /* SASL > 10515 */ -extern int sasl_decode64 __P((const char *, unsigned, char *, unsigned *)); -extern int sasl_encode64 __P((const char *, unsigned, char *, unsigned, unsigned *)); +# endif /* SASL > 10515 */ +# endif /* SASL >= 20000 */ extern void stop_sasl_client __P((void)); /* structure to store authinfo */ @@ -1611,6 +1626,9 @@ extern int anynet_pton __P((int, const char *, void *)); # endif /* NETINET6 */ extern char *hostnamebyanyaddr __P((SOCKADDR *)); extern char *validate_connection __P((SOCKADDR *, char *, ENVELOPE *)); +# if SASL >= 20000 +extern bool iptostring __P((SOCKADDR *, SOCKADDR_LEN_T, char *, unsigned)); +# endif /* SASL >= 20000 */ #endif /* NETINET || NETINET6 || NETUNIX || NETISO || NETNS || NETX25 */ diff --git a/contrib/sendmail/src/sfsasl.c b/contrib/sendmail/src/sfsasl.c index 5745395c078..cad58d23a65 100644 --- a/contrib/sendmail/src/sfsasl.c +++ b/contrib/sendmail/src/sfsasl.c @@ -9,12 +9,11 @@ */ #include -SM_RCSID("@(#)$Id: sfsasl.c,v 1.1.1.7 2002/04/10 03:04:51 gshapiro Exp $") +SM_RCSID("@(#)$Id: sfsasl.c,v 8.90 2002/05/09 20:44:11 ca Exp $") #include #include #include #if SASL -# include # include "sfsasl.h" /* Structure used by the "sasl" file type */ @@ -177,7 +176,11 @@ sasl_read(fp, buf, size) { int result; ssize_t len; +# if SASL >= 20000 + const char *outbuf = NULL; +# else /* SASL >= 20000 */ static char *outbuf = NULL; +# endif /* SASL >= 20000 */ static unsigned int outlen = 0; static unsigned int offset = 0; struct sasl_obj *so = (struct sasl_obj *) fp->f_cookie; @@ -225,7 +228,9 @@ sasl_read(fp, buf, size) /* return the rest of the buffer */ len = outlen - offset; (void) memcpy(buf, outbuf + offset, (size_t) len); +# if SASL < 20000 SASL_DEALLOC(outbuf); +# endif /* SASL < 20000 */ outbuf = NULL; offset = 0; outlen = 0; @@ -255,7 +260,11 @@ sasl_write(fp, buf, size) size_t size; { int result; +# if SASL >= 20000 + const char *outbuf; +# else /* SASL >= 20000 */ char *outbuf; +# endif /* SASL >= 20000 */ unsigned int outlen; size_t ret = 0, total = 0; struct sasl_obj *so = (struct sasl_obj *) fp->f_cookie; @@ -276,7 +285,9 @@ sasl_write(fp, buf, size) outlen -= ret; total += ret; } +# if SASL < 20000 SASL_DEALLOC(outbuf); +# endif /* SASL < 20000 */ } return size; } diff --git a/contrib/sendmail/src/sfsasl.h b/contrib/sendmail/src/sfsasl.h index b7d3a3a4356..c75418a1f3b 100644 --- a/contrib/sendmail/src/sfsasl.h +++ b/contrib/sendmail/src/sfsasl.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: sfsasl.h,v 1.1.1.2 2002/02/17 21:56:41 gshapiro Exp $" + * $Id: sfsasl.h,v 8.17 2000/09/19 21:30:49 ca Exp $" */ #ifndef SFSASL_H diff --git a/contrib/sendmail/src/shmticklib.c b/contrib/sendmail/src/shmticklib.c index 034a9c07560..6f5e301d2c7 100644 --- a/contrib/sendmail/src/shmticklib.c +++ b/contrib/sendmail/src/shmticklib.c @@ -11,7 +11,7 @@ */ #include -SM_RCSID("@(#)$Id: shmticklib.c,v 1.1.1.2 2002/02/17 21:56:41 gshapiro Exp $") +SM_RCSID("@(#)$Id: shmticklib.c,v 8.14 2001/09/11 04:05:16 gshapiro Exp $") #if _FFR_SHM_STATUS # include diff --git a/contrib/sendmail/src/sm_resolve.c b/contrib/sendmail/src/sm_resolve.c index da955a2c9d8..e3eb77f5628 100644 --- a/contrib/sendmail/src/sm_resolve.c +++ b/contrib/sendmail/src/sm_resolve.c @@ -46,7 +46,7 @@ # if NAMED_BIND # include "sm_resolve.h" -SM_RCSID("$Id: sm_resolve.c,v 1.1.1.1 2002/02/17 21:56:41 gshapiro Exp $") +SM_RCSID("$Id: sm_resolve.c,v 8.24 2001/09/11 04:05:16 gshapiro Exp $") static struct stot { diff --git a/contrib/sendmail/src/sm_resolve.h b/contrib/sendmail/src/sm_resolve.h index a147830de34..7f169ba259b 100644 --- a/contrib/sendmail/src/sm_resolve.h +++ b/contrib/sendmail/src/sm_resolve.h @@ -41,7 +41,7 @@ * SUCH DAMAGE. */ -/* $Id: sm_resolve.h,v 1.1.1.1 2002/02/17 21:56:41 gshapiro Exp $ */ +/* $Id: sm_resolve.h,v 8.8 2001/09/01 00:06:02 gshapiro Exp $ */ #if DNSMAP # ifndef __ROKEN_RESOLVE_H__ diff --git a/contrib/sendmail/src/srvrsmtp.c b/contrib/sendmail/src/srvrsmtp.c index 1210ee8b15b..bbcd31fc9a6 100644 --- a/contrib/sendmail/src/srvrsmtp.c +++ b/contrib/sendmail/src/srvrsmtp.c @@ -16,7 +16,7 @@ # include #endif /* MILTER */ -SM_RCSID("@(#)$Id: srvrsmtp.c,v 1.1.1.10 2002/04/10 03:04:52 gshapiro Exp $") +SM_RCSID("@(#)$Id: srvrsmtp.c,v 8.827 2002/05/28 14:29:57 ca Exp $") #if SASL || STARTTLS # include @@ -380,17 +380,24 @@ smtp(nullserver, d_flags, e) int result; volatile int authenticating; char *user; - char *in, *out, *out2; + char *in, *out2; +# if SASL >= 20000 + char *auth_id; + const char *out; + sasl_ssf_t ext_ssf; +# else /* SASL >= 20000 */ + char *out; const char *errstr; + sasl_external_properties_t ext_ssf; +# endif /* SASL >= 20000 */ + sasl_security_properties_t ssp; + sasl_ssf_t *ssf; unsigned int inlen, out2len; unsigned int outlen; char *volatile auth_type; char *mechlist; volatile unsigned int n_mechs; unsigned int len; - sasl_security_properties_t ssp; - sasl_external_properties_t ext_ssf; - sasl_ssf_t *ssf; #endif /* SASL */ #if STARTTLS int r; @@ -507,14 +514,17 @@ smtp(nullserver, d_flags, e) /* SASL server new connection */ if (sasl_ok) { -# if SASL > 10505 +# if SASL >= 20000 + result = sasl_server_new("smtp", hostname, NULL, NULL, NULL, + NULL, 0, &conn); +# elif SASL > 10505 /* use empty realm: only works in SASL > 1.5.5 */ result = sasl_server_new("smtp", hostname, "", NULL, 0, &conn); -# else /* SASL > 10505 */ +# else /* SASL >= 20000 */ /* use no realm -> realm is set to hostname by SASL lib */ result = sasl_server_new("smtp", hostname, NULL, NULL, 0, &conn); -# endif /* SASL > 10505 */ +# endif /* SASL >= 20000 */ sasl_ok = result == SASL_OK; if (!sasl_ok) { @@ -529,13 +539,59 @@ smtp(nullserver, d_flags, e) /* ** SASL set properties for sasl ** set local/remote IP - ** XXX only IPv4: Cyrus SASL doesn't support anything else + ** XXX Cyrus SASL v1 only supports IPv4 ** ** XXX where exactly are these used/required? ** Kerberos_v4 */ -# if NETINET +# if SASL >= 20000 +# if NETINET || NETINET6 + in = macvalue(macid("{daemon_family}"), e); + if (in != NULL && ( +# if NETINET6 + strcmp(in, "inet6") == 0 || +# endif /* NETINET6 */ + strcmp(in, "inet") == 0)) + { + SOCKADDR_LEN_T addrsize; + SOCKADDR saddr_l; + SOCKADDR saddr_r; + char localip[60], remoteip[60]; + + addrsize = sizeof(saddr_r); + if (getpeername(sm_io_getinfo(InChannel, SM_IO_WHAT_FD, + NULL), + (struct sockaddr *) &saddr_r, + &addrsize) == 0) + { + if (iptostring(&saddr_r, addrsize, + remoteip, sizeof remoteip)) + { + sasl_setprop(conn, SASL_IPREMOTEPORT, + remoteip); + } + addrsize = sizeof(saddr_l); + if (getsockname(sm_io_getinfo(InChannel, + SM_IO_WHAT_FD, + NULL), + (struct sockaddr *) &saddr_l, + &addrsize) == 0) + { + if (iptostring(&saddr_l, addrsize, + localip, + sizeof localip)) + { + sasl_setprop(conn, + SASL_IPLOCALPORT, + localip); + } + } + } + } +# endif /* NETINET || NETINET6 */ +# else /* SASL >= 20000 */ +# if NETINET in = macvalue(macid("{daemon_family}"), e); if (in != NULL && strcmp(in, "inet") == 0) { @@ -560,7 +616,8 @@ smtp(nullserver, d_flags, e) &saddr_l); } } -# endif /* NETINET */ +# endif /* NETINET */ +# endif /* SASL >= 20000 */ auth_type = NULL; mechlist = NULL; @@ -591,10 +648,19 @@ smtp(nullserver, d_flags, e) ** currently we have none so zero */ +# if SASL >= 20000 + ext_ssf = 0; + auth_id = NULL; + sasl_ok = ((sasl_setprop(conn, SASL_SSF_EXTERNAL, + &ext_ssf) == SASL_OK) && + (sasl_setprop(conn, SASL_AUTH_EXTERNAL, + auth_id) == SASL_OK)); +# else /* SASL >= 20000 */ ext_ssf.ssf = 0; ext_ssf.auth_id = NULL; sasl_ok = sasl_setprop(conn, SASL_SSF_EXTERNAL, &ext_ssf) == SASL_OK; +# endif /* SASL >= 20000 */ } if (sasl_ok) n_mechs = saslmechs(conn, &mechlist); @@ -866,8 +932,14 @@ smtp(nullserver, d_flags, e) } /* could this be shorter? XXX */ +# if SASL >= 20000 + in = xalloc(strlen(inp) + 1); + result = sasl_decode64(inp, strlen(inp), in, + strlen(inp), &inlen); +# else /* SASL >= 20000 */ out = xalloc(strlen(inp)); result = sasl_decode64(inp, strlen(inp), out, &outlen); +# endif /* SASL >= 20000 */ if (result != SASL_OK) { authenticating = SASL_NOT_AUTH; @@ -875,11 +947,20 @@ smtp(nullserver, d_flags, e) /* rfc 2254 4. */ message("501 5.5.4 cannot decode AUTH parameter %s", inp); +# if SASL >= 20000 + sm_free(in); +# endif /* SASL >= 20000 */ continue; } +# if SASL >= 20000 + result = sasl_server_step(conn, in, inlen, + &out, &outlen); + sm_free(in); +# else /* SASL >= 20000 */ result = sasl_server_step(conn, out, outlen, &out, &outlen, &errstr); +# endif /* SASL >= 20000 */ /* get an OK if we're done */ if (result == SASL_OK) @@ -890,6 +971,13 @@ smtp(nullserver, d_flags, e) macdefine(&BlankEnvelope.e_macro, A_TEMP, macid("{auth_type}"), auth_type); +# if SASL >= 20000 + user = macvalue(macid("{auth_authen}"), e); + + /* get security strength (features) */ + result = sasl_getprop(conn, SASL_SSF, + (const void **) &ssf); +# else /* SASL >= 20000 */ result = sasl_getprop(conn, SASL_USERNAME, (void **)&user); if (result != SASL_OK) @@ -914,6 +1002,7 @@ smtp(nullserver, d_flags, e) /* get security strength (features) */ result = sasl_getprop(conn, SASL_SSF, (void **) &ssf); +# endif /* SASL >= 20000 */ if (result != SASL_OK) { macdefine(&BlankEnvelope.e_macro, @@ -995,11 +1084,14 @@ smtp(nullserver, d_flags, e) sm_dprintf("AUTH continue: msg='%s' len=%u\n", out2, out2len); } +# if SASL >= 20000 + sm_free(out2); +# endif /* SASL >= 20000 */ } else { /* not SASL_OK or SASL_CONT */ - message("500 5.7.0 authentication failed"); + message("535 5.7.0 authentication failed"); if (LogLevel > 9) sm_syslog(LOG_WARNING, e->e_id, "AUTH failure (%s): %s (%d) %s", @@ -1007,7 +1099,11 @@ smtp(nullserver, d_flags, e) sasl_errstring(result, NULL, NULL), result, +# if SASL >= 20000 + sasl_errdetail(conn)); +# else /* SASL >= 20000 */ errstr == NULL ? "" : errstr); +# endif /* SASL >= 20000 */ authenticating = SASL_NOT_AUTH; } } @@ -1181,10 +1277,16 @@ smtp(nullserver, d_flags, e) } } + if (*p == '\0') + { + message("501 5.5.2 AUTH mechanism must be specified"); + break; + } + /* check whether mechanism is available */ if (iteminlist(p, mechlist, " ") == NULL) { - message("503 5.3.3 AUTH mechanism %.32s not available", + message("504 5.3.3 AUTH mechanism %.32s not available", p); break; } @@ -1192,9 +1294,15 @@ smtp(nullserver, d_flags, e) if (ismore) { /* could this be shorter? XXX */ +# if SASL >= 20000 + in = xalloc(strlen(q) + 1); + result = sasl_decode64(q, strlen(q), in, + strlen(q), &inlen); +# else /* SASL >= 20000 */ in = sm_rpool_malloc(e->e_rpool, strlen(q)); result = sasl_decode64(q, strlen(q), in, &inlen); +# endif /* SASL >= 20000 */ if (result != SASL_OK) { message("501 5.5.4 cannot BASE64 decode '%s'", @@ -1205,6 +1313,9 @@ smtp(nullserver, d_flags, e) result, q); /* start over? */ authenticating = SASL_NOT_AUTH; +# if SASL >= 20000 + sm_free(in); +# endif /* SASL >= 20000 */ in = NULL; inlen = 0; break; @@ -1217,12 +1328,19 @@ smtp(nullserver, d_flags, e) } /* see if that auth type exists */ +# if SASL >= 20000 + result = sasl_server_start(conn, p, in, inlen, + &out, &outlen); + if (in != NULL) + sm_free(in); +# else /* SASL >= 20000 */ result = sasl_server_start(conn, p, in, inlen, &out, &outlen, &errstr); +# endif /* SASL >= 20000 */ if (result != SASL_OK && result != SASL_CONTINUE) { - message("500 5.7.0 authentication failed"); + message("535 5.7.0 authentication failed"); if (LogLevel > 9) sm_syslog(LOG_ERR, e->e_id, "AUTH failure (%s): %s (%d) %s", @@ -1230,7 +1348,11 @@ smtp(nullserver, d_flags, e) sasl_errstring(result, NULL, NULL), result, +# if SASL >= 20000 + sasl_errdetail(conn)); +# else /* SASL >= 20000 */ errstr); +# endif /* SASL >= 20000 */ break; } auth_type = newstr(p); @@ -1264,6 +1386,9 @@ smtp(nullserver, d_flags, e) message("334 %s", out2); authenticating = SASL_PROC_AUTH; } +# if SASL >= 20000 + sm_free(out2); +# endif /* SASL >= 20000 */ break; #endif /* SASL */ @@ -1494,12 +1619,23 @@ smtp(nullserver, d_flags, e) char *s; s = macvalue(macid("{cipher_bits}"), e); +# if SASL >= 20000 + if (s != NULL && (ext_ssf = atoi(s)) > 0) + { + auth_id = macvalue(macid("{cert_subject}"), + e); + sasl_ok = ((sasl_setprop(conn, SASL_SSF_EXTERNAL, + &ext_ssf) == SASL_OK) && + (sasl_setprop(conn, SASL_AUTH_EXTERNAL, + auth_id) == SASL_OK)); +# else /* SASL >= 20000 */ if (s != NULL && (ext_ssf.ssf = atoi(s)) > 0) { ext_ssf.auth_id = macvalue(macid("{cert_subject}"), e); sasl_ok = sasl_setprop(conn, SASL_SSF_EXTERNAL, &ext_ssf) == SASL_OK; +# endif /* SASL >= 20000 */ mechlist = NULL; if (sasl_ok) n_mechs = saslmechs(conn, @@ -1591,6 +1727,7 @@ smtp(nullserver, d_flags, e) break; } + ok = true; for (q = p; *q != '\0'; q++) { if (!isascii(*q)) @@ -1600,13 +1737,16 @@ smtp(nullserver, d_flags, e) if (isspace(*q)) { *q = '\0'; + + /* only complain if strict check */ + ok = AllowBogusHELO; break; } if (strchr("[].-_#", *q) == NULL) break; } - if (*q == '\0') + if (*q == '\0' && ok) { q = "pleased to meet you"; sendinghost = sm_strdup_x(p); @@ -2254,7 +2394,7 @@ smtp(nullserver, d_flags, e) macdefine(&e->e_macro, A_PERM, macid("{rcpt_mailer}"), NULL); macdefine(&e->e_macro, A_PERM, - macid("{rcpt_relay}"), NULL); + macid("{rcpt_host}"), NULL); macdefine(&e->e_macro, A_PERM, macid("{rcpt_addr}"), NULL); macdefine(&e->e_macro, A_PERM, @@ -2588,7 +2728,8 @@ doquit: logsender(e, NULL); e->e_flags &= ~EF_LOGSENDER; - if (lognullconnection && LogLevel > 5) + if (lognullconnection && LogLevel > 5 && + nullserver == NULL) { char *d; @@ -2725,6 +2866,7 @@ smtp_data(smtp, e) ADDRESS *a; ENVELOPE *ee; char *id; + char *oldid; char buf[32]; SmtpPhase = "server DATA"; @@ -2945,8 +3087,13 @@ smtp_data(smtp, e) ee->e_to = NULL; } + /* put back id for SMTP logging in putoutmsg() */ + oldid = CurEnv->e_id; + CurEnv->e_id = id; + /* issue success message */ message("250 2.0.0 %s Message accepted for delivery", id); + CurEnv->e_id = oldid; /* if we just queued, poke it */ if (doublequeue) @@ -3726,9 +3873,15 @@ saslmechs(conn, mechlist) int len, num, result; /* "user" is currently unused */ +# if SASL >= 20000 + result = sasl_listmech(conn, NULL, + "", " ", "", (const char **) mechlist, + (unsigned int *)&len, (unsigned int *)&num); +# else /* SASL >= 20000 */ result = sasl_listmech(conn, "user", /* XXX */ "", " ", "", mechlist, (unsigned int *)&len, (unsigned int *)&num); +# endif /* SASL >= 20000 */ if (result != SASL_OK) { if (LogLevel > 9) @@ -3754,6 +3907,52 @@ saslmechs(conn, mechlist) } return num; } + +# if SASL >= 20000 +/* +** PROXY_POLICY -- define proxy policy for AUTH +** +** Parameters: +** conn -- unused. +** context -- unused. +** requested_user -- authorization identity. +** rlen -- authorization identity length. +** auth_identity -- authentication identity. +** alen -- authentication identity length. +** def_realm -- default user realm. +** urlen -- user realm length. +** propctx -- unused. +** +** Returns: +** ok? +** +** Side Effects: +** sets {auth_authen} macro. +*/ + +int +proxy_policy(conn, context, requested_user, rlen, auth_identity, alen, + def_realm, urlen, propctx) + sasl_conn_t *conn; + void *context; + const char *requested_user; + unsigned rlen; + const char *auth_identity; + unsigned alen; + const char *def_realm; + unsigned urlen; + struct propctx *propctx; +{ + if (auth_identity == NULL) + return SASL_FAIL; + + macdefine(&BlankEnvelope.e_macro, A_TEMP, + macid("{auth_authen}"), (char *) auth_identity); + + return SASL_OK; +} +# else /* SASL >= 20000 */ + /* ** PROXY_POLICY -- define proxy policy for AUTH ** @@ -3781,6 +3980,7 @@ proxy_policy(context, auth_identity, requested_user, user, errstr) *user = newstr(auth_identity); return SASL_OK; } +# endif /* SASL >= 20000 */ #endif /* SASL */ #if STARTTLS diff --git a/contrib/sendmail/src/stab.c b/contrib/sendmail/src/stab.c index 8bc35d378ee..b2ad12d7f39 100644 --- a/contrib/sendmail/src/stab.c +++ b/contrib/sendmail/src/stab.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: stab.c,v 1.1.1.6 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: stab.c,v 8.86 2001/12/29 04:27:56 ca Exp $") /* ** STAB -- manage the symbol table diff --git a/contrib/sendmail/src/stats.c b/contrib/sendmail/src/stats.c index d282cfb5f65..bf9d33a009f 100644 --- a/contrib/sendmail/src/stats.c +++ b/contrib/sendmail/src/stats.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: stats.c,v 1.1.1.7 2002/04/10 03:04:52 gshapiro Exp $") +SM_RCSID("@(#)$Id: stats.c,v 8.55 2002/05/21 22:28:52 gshapiro Exp $") #include @@ -154,7 +154,7 @@ poststats(sfile) if (!bitnset(DBS_WRITESTATSTOHARDLINK, DontBlameSendmail)) sff |= SFF_NOHLINK; - fd = safeopen(sfile, O_RDWR, 0644, sff); + fd = safeopen(sfile, O_RDWR, 0600, sff); if (fd < 0) { if (LogLevel > 12) diff --git a/contrib/sendmail/src/statusd_shm.h b/contrib/sendmail/src/statusd_shm.h index abfd1def309..7d889641f49 100644 --- a/contrib/sendmail/src/statusd_shm.h +++ b/contrib/sendmail/src/statusd_shm.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: statusd_shm.h,v 1.1.1.2 2002/02/17 21:56:42 gshapiro Exp $ + * $Id: statusd_shm.h,v 8.7 2000/09/17 17:30:06 gshapiro Exp $ * * Contributed by Exactis.com, Inc. * diff --git a/contrib/sendmail/src/sysexits.c b/contrib/sendmail/src/sysexits.c index d54a995f123..5cce2b718f5 100644 --- a/contrib/sendmail/src/sysexits.c +++ b/contrib/sendmail/src/sysexits.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: sysexits.c,v 1.1.1.4 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: sysexits.c,v 8.33 2001/09/11 04:05:17 gshapiro Exp $") /* ** DSNTOEXITSTAT -- convert DSN-style error code to EX_ style. diff --git a/contrib/sendmail/src/timers.c b/contrib/sendmail/src/timers.c index 67c9f708043..43dd73a0f33 100644 --- a/contrib/sendmail/src/timers.c +++ b/contrib/sendmail/src/timers.c @@ -11,7 +11,7 @@ */ #include -SM_RCSID("@(#)$Id: timers.c,v 1.1.1.3 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: timers.c,v 8.24 2001/09/11 04:05:17 gshapiro Exp $") #if _FFR_TIMERS # include diff --git a/contrib/sendmail/src/timers.h b/contrib/sendmail/src/timers.h index b184e0d15c3..d7faee19a77 100644 --- a/contrib/sendmail/src/timers.h +++ b/contrib/sendmail/src/timers.h @@ -6,7 +6,7 @@ * forth in the LICENSE file which can be found at the top level of * the sendmail distribution. * - * $Id: timers.h,v 1.1.1.2 2002/02/17 21:56:42 gshapiro Exp $ + * $Id: timers.h,v 8.6 2001/04/03 01:53:18 gshapiro Exp $ * * Contributed by Exactis.com, Inc. * diff --git a/contrib/sendmail/src/tls.c b/contrib/sendmail/src/tls.c index 0f8dc8e774f..e2b1b146750 100644 --- a/contrib/sendmail/src/tls.c +++ b/contrib/sendmail/src/tls.c @@ -10,7 +10,7 @@ #include -SM_RCSID("@(#)$Id: tls.c,v 1.1.1.2 2002/04/10 03:04:52 gshapiro Exp $") +SM_RCSID("@(#)$Id: tls.c,v 8.79 2002/03/21 22:24:13 gshapiro Exp $") #if STARTTLS # include diff --git a/contrib/sendmail/src/trace.c b/contrib/sendmail/src/trace.c index 5279ad6e2ef..701a949d967 100644 --- a/contrib/sendmail/src/trace.c +++ b/contrib/sendmail/src/trace.c @@ -15,7 +15,7 @@ #include #include -SM_RCSID("@(#)$Id: trace.c,v 1.1.1.6 2002/02/17 21:56:42 gshapiro Exp $") +SM_RCSID("@(#)$Id: trace.c,v 8.37 2001/09/11 04:05:17 gshapiro Exp $") static char *tTnewflag __P((char *)); static char *tToldflag __P((char *)); diff --git a/contrib/sendmail/src/udb.c b/contrib/sendmail/src/udb.c index ab3e469796d..1091cf228cd 100644 --- a/contrib/sendmail/src/udb.c +++ b/contrib/sendmail/src/udb.c @@ -14,9 +14,9 @@ #include #if USERDB -SM_RCSID("@(#)$Id: udb.c,v 1.1.1.7 2002/02/17 21:56:42 gshapiro Exp $ (with USERDB)") +SM_RCSID("@(#)$Id: udb.c,v 8.153 2001/09/11 04:05:17 gshapiro Exp $ (with USERDB)") #else /* USERDB */ -SM_RCSID("@(#)$Id: udb.c,v 1.1.1.7 2002/02/17 21:56:42 gshapiro Exp $ (without USERDB)") +SM_RCSID("@(#)$Id: udb.c,v 8.153 2001/09/11 04:05:17 gshapiro Exp $ (without USERDB)") #endif /* USERDB */ #if USERDB diff --git a/contrib/sendmail/src/usersmtp.c b/contrib/sendmail/src/usersmtp.c index 3996627c05c..2ec9ac49d40 100644 --- a/contrib/sendmail/src/usersmtp.c +++ b/contrib/sendmail/src/usersmtp.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: usersmtp.c,v 1.1.1.11 2002/04/10 03:04:52 gshapiro Exp $") +SM_RCSID("@(#)$Id: usersmtp.c,v 8.437 2002/05/24 18:53:48 gshapiro Exp $") #include @@ -95,7 +95,7 @@ smtpinit(m, mci, e, onlyhelo) CurHostName = MyHostName; SmtpNeedIntro = true; state = mci->mci_state; - switch (mci->mci_state) + switch (state) { case MCIS_MAIL: case MCIS_RCPT: @@ -603,7 +603,9 @@ getsasldata(line, firstline, m, mci, e) { int len; int result; +# if SASL < 20000 char *out; +# endif /* SASL < 20000 */ /* if not a continue we don't care about it */ len = strlen(line); @@ -619,9 +621,29 @@ getsasldata(line, firstline, m, mci, e) /* forget about "334 " */ line += 4; len -= 4; +# if SASL >= 20000 + /* XXX put this into a macro/function? It's duplicated below */ + if (mci->mci_sasl_string != NULL) + { + if (mci->mci_sasl_string_len <= len) + { + sm_free(mci->mci_sasl_string); /* XXX */ + mci->mci_sasl_string = xalloc(len + 1); + } + } + else + mci->mci_sasl_string = xalloc(len + 1); + result = sasl_decode64(line, len, mci->mci_sasl_string, len + 1, + (unsigned int *) &mci->mci_sasl_string_len); + if (result != SASL_OK) + { + mci->mci_sasl_string_len = 0; + *mci->mci_sasl_string = '\0'; + } +# else /* SASL >= 20000 */ out = (char *) sm_rpool_malloc_x(mci->mci_rpool, len + 1); - result = sasl_decode64(line, len, out, (unsigned int *)&len); + result = sasl_decode64(line, len, out, (unsigned int *) &len); if (result != SASL_OK) { len = 0; @@ -648,6 +670,7 @@ getsasldata(line, firstline, m, mci, e) memcpy(mci->mci_sasl_string, out, len); mci->mci_sasl_string[len] = '\0'; mci->mci_sasl_string_len = len; +# endif /* SASL >= 20000 */ return; } /* @@ -894,8 +917,14 @@ getauth(mci, e, sai) unsigned int len; /* '=base64' (decode) */ +# if SASL >= 20000 + r = sasl_decode64(pvp[i + 1] + 3, + (unsigned int) l, (*sai)[r], + (unsigned int) l + 1, &len); +# else /* SASL >= 20000 */ r = sasl_decode64(pvp[i + 1] + 3, (unsigned int) l, (*sai)[r], &len); +# endif /* SASL >= 20000 */ if (r != SASL_OK) goto fail; got |= 1 << r; @@ -903,7 +932,7 @@ getauth(mci, e, sai) else goto fail; if (tTd(95, 5)) - sm_syslog(LOG_WARNING, NOQID, "getauth %s=%s", + sm_syslog(LOG_DEBUG, NOQID, "getauth %s=%s", sasl_info_name[r], (*sai)[r]); ++i; } @@ -949,6 +978,111 @@ getauth(mci, e, sai) (*sai)[i] = NULL; /* just clear; rpool */ return ret; } + +# if SASL >= 20000 +/* +** GETSIMPLE -- callback to get userid or authid +** +** Parameters: +** context -- sai +** id -- what to do +** result -- (pointer to) result +** len -- (pointer to) length of result +** +** Returns: +** OK/failure values +*/ + +static int +getsimple(context, id, result, len) + void *context; + int id; + const char **result; + unsigned *len; +{ + SASL_AI_T *sai; + + if (result == NULL || context == NULL) + return SASL_BADPARAM; + sai = (SASL_AI_T *) context; + + switch (id) + { + case SASL_CB_USER: + *result = (*sai)[SASL_USER]; + if (tTd(95, 5)) + sm_syslog(LOG_DEBUG, NOQID, "AUTH username '%s'", + *result); + if (len != NULL) + *len = *result != NULL ? strlen(*result) : 0; + break; + + case SASL_CB_AUTHNAME: + *result = (*sai)[SASL_AUTHID]; + if (tTd(95, 5)) + sm_syslog(LOG_DEBUG, NOQID, "AUTH authid '%s'", + *result); + if (len != NULL) + *len = *result != NULL ? strlen(*result) : 0; + break; + + case SASL_CB_LANGUAGE: + *result = NULL; + if (len != NULL) + *len = 0; + break; + + default: + return SASL_BADPARAM; + } + return SASL_OK; +} +/* +** GETSECRET -- callback to get password +** +** Parameters: +** conn -- connection information +** context -- sai +** id -- what to do +** psecret -- (pointer to) result +** +** Returns: +** OK/failure values +*/ + +static int +getsecret(conn, context, id, psecret) + sasl_conn_t *conn; + SM_UNUSED(void *context); + int id; + sasl_secret_t **psecret; +{ + int len; + char *authpass; + MCI *mci; + + if (conn == NULL || psecret == NULL || id != SASL_CB_PASS) + return SASL_BADPARAM; + + mci = (MCI *) context; + authpass = mci->mci_sai[SASL_PASSWORD]; + len = strlen(authpass); + + /* + ** use an rpool because we are responsible for free()ing the secret, + ** but we can't free() it until after the auth completes + */ + + *psecret = (sasl_secret_t *) sm_rpool_malloc(mci->mci_rpool, + sizeof(sasl_secret_t) + + len + 1); + if (*psecret == NULL) + return SASL_FAIL; + (void) sm_strlcpy((*psecret)->data, authpass, len + 1); + (*psecret)->len = (unsigned long) len; + return SASL_OK; +} +# else /* SASL >= 20000 */ /* ** GETSIMPLE -- callback to get userid or authid ** @@ -1013,7 +1147,7 @@ getsimple(context, id, result, len) (void) sm_strlcpy(s, (*sai)[SASL_USER], l); *result = s; if (tTd(95, 5)) - sm_syslog(LOG_WARNING, NOQID, "AUTH username '%s'", + sm_syslog(LOG_DEBUG, NOQID, "AUTH username '%s'", *result); if (len != NULL) *len = *result != NULL ? strlen(*result) : 0; @@ -1084,7 +1218,7 @@ getsimple(context, id, result, len) (void) sm_strlcpy(s, authid, l); *result = s; if (tTd(95, 5)) - sm_syslog(LOG_WARNING, NOQID, "AUTH authid '%s'", + sm_syslog(LOG_DEBUG, NOQID, "AUTH authid '%s'", *result); if (len != NULL) *len = authid ? strlen(authid) : 0; @@ -1139,6 +1273,8 @@ getsecret(conn, context, id, psecret) (*psecret)->len = (unsigned long) len; return SASL_OK; } +# endif /* SASL >= 20000 */ + /* ** SAFESASLFILE -- callback for sasl: is file safe? ** @@ -1161,9 +1297,17 @@ safesaslfile(context, file, type) safesaslfile(context, file) #endif /* SASL > 10515 */ void *context; +# if SASL >= 20000 + const char *file; +# else /* SASL >= 20000 */ char *file; +# endif /* SASL >= 20000 */ #if SASL > 10515 +# if SASL >= 20000 + sasl_verify_type_t type; +# else /* SASL >= 20000 */ int type; +# endif /* SASL >= 20000 */ #endif /* SASL > 10515 */ { long sff; @@ -1205,7 +1349,7 @@ safesaslfile(context, file) } #endif /* SASL <= 10515 */ - p = file; + p = (char *) file; if ((r = safefile(p, RunAsUid, RunAsGid, RunAsUserName, sff, S_IRUSR, NULL)) == 0) return SASL_OK; @@ -1401,16 +1545,22 @@ attemptauth(m, mci, e, sai) SASL_AI_T *sai; { int saslresult, smtpresult; +# if SASL >= 20000 + sasl_ssf_t ssf; + const char *auth_id; + const char *out; +# else /* SASL >= 20000 */ sasl_external_properties_t ssf; - sasl_interact_t *client_interact = NULL; char *out; +# endif /* SASL >= 20000 */ unsigned int outlen; + sasl_interact_t *client_interact = NULL; char *mechusing; sasl_security_properties_t ssp; char in64[MAXOUTLEN]; -#if NETINET +#if NETINET || (NETINET6 && SASL >= 20000) extern SOCKADDR CurHostAddr; -#endif /* NETINET */ +#endif /* NETINET || (NETINET6 && SASL >= 20000) */ /* no mechanism selected (yet) */ (*sai)[SASL_MECH] = NULL; @@ -1420,9 +1570,16 @@ attemptauth(m, mci, e, sai) sasl_dispose(&(mci->mci_conn)); /* make a new client sasl connection */ +# if SASL >= 20000 + saslresult = sasl_client_new(bitnset(M_LMTP, m->m_flags) ? "lmtp" + : "smtp", + CurHostName, NULL, NULL, NULL, 0, + &mci->mci_conn); +# else /* SASL >= 20000 */ saslresult = sasl_client_new(bitnset(M_LMTP, m->m_flags) ? "lmtp" : "smtp", CurHostName, NULL, 0, &mci->mci_conn); +# endif /* SASL >= 20000 */ if (saslresult != SASL_OK) return EX_TEMPFAIL; @@ -1443,22 +1600,96 @@ attemptauth(m, mci, e, sai) if (saslresult != SASL_OK) return EX_TEMPFAIL; +# if SASL >= 20000 + /* external security strength factor, authentication id */ + ssf = 0; + auth_id = NULL; +# if STARTTLS + out = macvalue(macid("{cert_subject}"), e); + if (out != NULL && *out != '\0') + auth_id = out; + out = macvalue(macid("{cipher_bits}"), e); + if (out != NULL && *out != '\0') + ssf = atoi(out); +# endif /* STARTTLS */ + saslresult = sasl_setprop(mci->mci_conn, SASL_SSF_EXTERNAL, &ssf); + if (saslresult != SASL_OK) + return EX_TEMPFAIL; + saslresult = sasl_setprop(mci->mci_conn, SASL_AUTH_EXTERNAL, auth_id); + if (saslresult != SASL_OK) + return EX_TEMPFAIL; + +# if NETINET || NETINET6 + /* set local/remote ipv4 addresses */ + if (mci->mci_out != NULL && ( +# if NETINET6 + CurHostAddr.sa.sa_family == AF_INET6 || +# endif /* NETINET6 */ + CurHostAddr.sa.sa_family == AF_INET)) + { + SOCKADDR_LEN_T addrsize; + SOCKADDR saddr_l; + char localip[60], remoteip[60]; + + switch (CurHostAddr.sa.sa_family) + { + case AF_INET: + addrsize = sizeof(struct sockaddr_in); + break; +# if NETINET6 + case AF_INET6: + addrsize = sizeof(struct sockaddr_in6); + break; +# endif /* NETINET6 */ + default: + break; + } + if (iptostring(&CurHostAddr, addrsize, + remoteip, sizeof remoteip)) + { + if (sasl_setprop(mci->mci_conn, SASL_IPREMOTEPORT, + remoteip) != SASL_OK) + return EX_TEMPFAIL; + } + addrsize = sizeof(saddr_l); + if (getsockname(sm_io_getinfo(mci->mci_out, SM_IO_WHAT_FD, + NULL), + (struct sockaddr *) &saddr_l, &addrsize) == 0) + { + if (iptostring(&saddr_l, addrsize, + localip, sizeof localip)) + { + if (sasl_setprop(mci->mci_conn, + SASL_IPLOCALPORT, + localip) != SASL_OK) + return EX_TEMPFAIL; + } + } + } +# endif /* NETINET || NETINET6 */ + + /* start client side of sasl */ + saslresult = sasl_client_start(mci->mci_conn, mci->mci_saslcap, + &client_interact, + &out, &outlen, + (const char **) &mechusing); +# else /* SASL >= 20000 */ /* external security strength factor, authentication id */ ssf.ssf = 0; ssf.auth_id = NULL; -#if STARTTLS +# if STARTTLS out = macvalue(macid("{cert_subject}"), e); if (out != NULL && *out != '\0') ssf.auth_id = out; out = macvalue(macid("{cipher_bits}"), e); if (out != NULL && *out != '\0') ssf.ssf = atoi(out); -#endif /* STARTTLS */ +# endif /* STARTTLS */ saslresult = sasl_setprop(mci->mci_conn, SASL_SSF_EXTERNAL, &ssf); if (saslresult != SASL_OK) return EX_TEMPFAIL; -#if NETINET +# if NETINET /* set local/remote ipv4 addresses */ if (mci->mci_out != NULL && CurHostAddr.sa.sa_family == AF_INET) { @@ -1479,13 +1710,14 @@ attemptauth(m, mci, e, sai) return EX_TEMPFAIL; } } -#endif /* NETINET */ +# endif /* NETINET */ /* start client side of sasl */ saslresult = sasl_client_start(mci->mci_conn, mci->mci_saslcap, NULL, &client_interact, &out, &outlen, - (const char **)&mechusing); + (const char **) &mechusing); +# endif /* SASL >= 20000 */ if (saslresult != SASL_OK && saslresult != SASL_CONTINUE) { @@ -1501,7 +1733,22 @@ attemptauth(m, mci, e, sai) (*sai)[SASL_MECH] = mechusing; /* send the info across the wire */ - if (outlen > 0) + if (out == NULL) + { + /* no initial response */ + smtpmessage("AUTH %s", m, mci, mechusing); + } + else if (outlen == 0) + { + /* + ** zero-length initial response, per RFC 2554 4.: + ** "Unlike a zero-length client answer to a 334 reply, a zero- + ** length initial response is sent as a single equals sign" + */ + + smtpmessage("AUTH %s =", m, mci, mechusing); + } + else { saslresult = sasl_encode64(out, outlen, in64, MAXOUTLEN, NULL); if (saslresult != SASL_OK) /* internal error */ @@ -1513,11 +1760,9 @@ attemptauth(m, mci, e, sai) } smtpmessage("AUTH %s %s", m, mci, mechusing, in64); } - else - { - smtpmessage("AUTH %s", m, mci, mechusing); - } +# if SASL < 20000 sm_sasl_free(out); /* XXX only if no rpool is used */ +# endif /* SASL < 20000 */ /* get the reply */ smtpresult = reply(m, mci, e, TimeOuts.to_auth, getsasldata, NULL); @@ -1581,7 +1826,9 @@ attemptauth(m, mci, e, sai) } else in64[0] = '\0'; +# if SASL < 20000 sm_sasl_free(out); /* XXX only if no rpool is used */ +# endif /* SASL < 20000 */ smtpmessage("%s", m, mci, in64); smtpresult = reply(m, mci, e, TimeOuts.to_auth, getsasldata, NULL); @@ -1660,12 +1907,16 @@ smtpauth(m, mci, e) return EX_UNAVAILABLE; /* set the context for the callback function to sai */ - callbacks[CB_PASS_IDX].context = (void *)&mci->mci_sai; - callbacks[CB_USER_IDX].context = (void *)&mci->mci_sai; - callbacks[CB_AUTHNAME_IDX].context = (void *)&mci->mci_sai; - callbacks[CB_GETREALM_IDX].context = (void *)&mci->mci_sai; +# if SASL >= 20000 + callbacks[CB_PASS_IDX].context = (void *) mci; +# else /* SASL >= 20000 */ + callbacks[CB_PASS_IDX].context = (void *) &mci->mci_sai; +# endif /* SASL >= 20000 */ + callbacks[CB_USER_IDX].context = (void *) &mci->mci_sai; + callbacks[CB_AUTHNAME_IDX].context = (void *) &mci->mci_sai; + callbacks[CB_GETREALM_IDX].context = (void *) &mci->mci_sai; #if 0 - callbacks[CB_SAFESASL_IDX].context = (void *)&mci->mci_sai; + callbacks[CB_SAFESASL_IDX].context = (void *) &mci->mci_sai; #endif /* 0 */ /* set default value for realm */ diff --git a/contrib/sendmail/src/util.c b/contrib/sendmail/src/util.c index a05cf65b320..497454133d0 100644 --- a/contrib/sendmail/src/util.c +++ b/contrib/sendmail/src/util.c @@ -13,7 +13,7 @@ #include -SM_RCSID("@(#)$Id: util.c,v 1.1.1.10 2002/04/10 03:04:52 gshapiro Exp $") +SM_RCSID("@(#)$Id: util.c,v 8.363 2002/05/24 20:44:05 gshapiro Exp $") #include #include @@ -516,7 +516,7 @@ log_sendmail_pid(e) { long sff; SM_FILE_T *pidf; - char pidpath[MAXPATHLEN + 1]; + char pidpath[MAXPATHLEN]; extern char *CommandLineArgs; /* write the pid to the log file for posterity */ @@ -524,7 +524,7 @@ log_sendmail_pid(e) if (TrustedUid != 0 && RealUid == TrustedUid) sff |= SFF_OPENASROOT; expand(PidFile, pidpath, sizeof pidpath, e); - pidf = safefopen(pidpath, O_WRONLY|O_TRUNC, 0644, sff); + pidf = safefopen(pidpath, O_WRONLY|O_TRUNC, FileMode, sff); if (pidf == NULL) { sm_syslog(LOG_ERR, NOQID, "unable to write %s: %s", @@ -1919,7 +1919,7 @@ prog_open(argv, pfd, e) int ret; int fdv[2]; char *p, *q; - char buf[MAXLINE + 1]; + char buf[MAXPATHLEN]; extern int DtableSize; if (pipe(fdv) < 0) diff --git a/contrib/sendmail/src/version.c b/contrib/sendmail/src/version.c index d707e5164a2..3e86eb068bf 100644 --- a/contrib/sendmail/src/version.c +++ b/contrib/sendmail/src/version.c @@ -13,6 +13,6 @@ #include -SM_RCSID("@(#)$Id: version.c,v 1.1.1.12 2002/04/10 03:04:52 gshapiro Exp $") +SM_RCSID("@(#)$Id: version.c,v 8.102 2002/05/31 18:53:59 ca Exp $") -char Version[] = "8.12.3"; +char Version[] = "8.12.4"; diff --git a/contrib/sendmail/test/Makefile b/contrib/sendmail/test/Makefile index a71d1173633..7ca1b40855c 100644 --- a/contrib/sendmail/test/Makefile +++ b/contrib/sendmail/test/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +# $Id: Makefile,v 1.1 2001/09/23 22:39:24 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/test/README b/contrib/sendmail/test/README index 630ea8f271a..d715bbb1e14 100644 --- a/contrib/sendmail/test/README +++ b/contrib/sendmail/test/README @@ -5,7 +5,7 @@ # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # -# $Id: README,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +# $Id: README,v 1.2 2001/09/28 16:36:28 ca Exp $ # This directory contains several programs to test various OS calls. diff --git a/contrib/sendmail/test/Results b/contrib/sendmail/test/Results index 9e8bdc4e737..934f9a10755 100644 --- a/contrib/sendmail/test/Results +++ b/contrib/sendmail/test/Results @@ -195,4 +195,4 @@ SunOS 5.8 HASSETREGID 2001-09-22 ca SunOS 5.9 HASSETREGID 2001-09-22 Neil W Rickert -$Revision: 1.1.1.4 $, Last updated $Date: 2002/02/17 21:56:43 $ +$Revision: 8.3 $, Last updated $Date: 2001/09/30 01:32:33 $ diff --git a/contrib/sendmail/test/t_dropgid.c b/contrib/sendmail/test/t_dropgid.c index ba755e845d6..cb166d0ad6f 100644 --- a/contrib/sendmail/test/t_dropgid.c +++ b/contrib/sendmail/test/t_dropgid.c @@ -22,7 +22,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_dropgid.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_dropgid.c,v 1.6 2001/09/28 16:36:28 ca Exp $"; #endif /* ! lint */ static void diff --git a/contrib/sendmail/test/t_exclopen.c b/contrib/sendmail/test/t_exclopen.c index 33d8f1c433f..f1bde722089 100644 --- a/contrib/sendmail/test/t_exclopen.c +++ b/contrib/sendmail/test/t_exclopen.c @@ -46,7 +46,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_exclopen.c,v 1.1.1.3 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_exclopen.c,v 8.6 2001/09/23 03:35:41 ca Exp $"; #endif /* ! lint */ static char Attacker[128]; diff --git a/contrib/sendmail/test/t_pathconf.c b/contrib/sendmail/test/t_pathconf.c index 3fd1c450ccc..2baaaa61d9a 100644 --- a/contrib/sendmail/test/t_pathconf.c +++ b/contrib/sendmail/test/t_pathconf.c @@ -26,7 +26,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_pathconf.c,v 1.1.1.3 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_pathconf.c,v 8.6 2001/09/23 03:35:41 ca Exp $"; #endif /* ! lint */ int diff --git a/contrib/sendmail/test/t_seteuid.c b/contrib/sendmail/test/t_seteuid.c index 88db3f8aade..9fab8981c0a 100644 --- a/contrib/sendmail/test/t_seteuid.c +++ b/contrib/sendmail/test/t_seteuid.c @@ -26,7 +26,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_seteuid.c,v 1.1.1.3 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_seteuid.c,v 8.8 2001/09/23 03:35:41 ca Exp $"; #endif /* ! lint */ #ifdef __hpux diff --git a/contrib/sendmail/test/t_setgid.c b/contrib/sendmail/test/t_setgid.c index d06415181ee..dfe180587a4 100644 --- a/contrib/sendmail/test/t_setgid.c +++ b/contrib/sendmail/test/t_setgid.c @@ -22,7 +22,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_setgid.c,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_setgid.c,v 1.6 2001/09/23 03:35:41 ca Exp $"; #endif /* ! lint */ static void diff --git a/contrib/sendmail/test/t_setreuid.c b/contrib/sendmail/test/t_setreuid.c index 619b1babc66..b307b080392 100644 --- a/contrib/sendmail/test/t_setreuid.c +++ b/contrib/sendmail/test/t_setreuid.c @@ -23,7 +23,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_setreuid.c,v 1.1.1.3 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_setreuid.c,v 8.9 2001/10/12 03:04:46 gshapiro Exp $"; #endif /* ! lint */ #ifdef __hpux diff --git a/contrib/sendmail/test/t_setuid.c b/contrib/sendmail/test/t_setuid.c index 0caaad6936b..6533339298a 100644 --- a/contrib/sendmail/test/t_setuid.c +++ b/contrib/sendmail/test/t_setuid.c @@ -25,7 +25,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_setuid.c,v 1.1.1.2 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_setuid.c,v 8.7 2001/09/23 03:35:41 ca Exp $"; #endif /* ! lint */ static void diff --git a/contrib/sendmail/test/t_snprintf.c b/contrib/sendmail/test/t_snprintf.c index f522521dea9..8a0378fa2dc 100644 --- a/contrib/sendmail/test/t_snprintf.c +++ b/contrib/sendmail/test/t_snprintf.c @@ -12,7 +12,7 @@ #include #ifndef lint -static char id[] = "@(#)$Id: t_snprintf.c,v 1.1.1.3 2002/02/17 21:56:43 gshapiro Exp $"; +static char id[] = "@(#)$Id: t_snprintf.c,v 8.4 2001/09/23 03:35:41 ca Exp $"; #endif /* ! lint */ #define TEST_STRING "1234567890" diff --git a/contrib/sendmail/vacation/Makefile b/contrib/sendmail/vacation/Makefile index 9f48c019c19..7cc577f4b6c 100644 --- a/contrib/sendmail/vacation/Makefile +++ b/contrib/sendmail/vacation/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 2000/08/12 21:55:49 gshapiro Exp $ +# $Id: Makefile,v 8.5 1999/09/23 22:36:45 ca Exp $ SHELL= /bin/sh BUILD= ./Build diff --git a/contrib/sendmail/vacation/vacation.1 b/contrib/sendmail/vacation/vacation.1 index 51c131e78a8..299df64a600 100644 --- a/contrib/sendmail/vacation/vacation.1 +++ b/contrib/sendmail/vacation/vacation.1 @@ -9,9 +9,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Id: vacation.1,v 1.1.1.5 2002/04/10 03:05:00 gshapiro Exp $ +.\" $Id: vacation.1,v 8.29 2002/03/23 19:17:36 gshapiro Exp $ .\" -.TH VACATION 1 "$Date: 2002/04/10 03:05:00 $" +.TH VACATION 1 "$Date: 2002/03/23 19:17:36 $" .SH NAME vacation \- E-mail auto-responder diff --git a/contrib/sendmail/vacation/vacation.c b/contrib/sendmail/vacation/vacation.c index 8fe979383a2..ab4f4e8bc33 100644 --- a/contrib/sendmail/vacation/vacation.c +++ b/contrib/sendmail/vacation/vacation.c @@ -20,7 +20,7 @@ SM_IDSTR(copyright, The Regents of the University of California. All rights reserved.\n\ Copyright (c) 1983 Eric P. Allman. All rights reserved.\n") -SM_IDSTR(id, "@(#)$Id: vacation.c,v 1.1.1.7 2002/04/10 03:05:00 gshapiro Exp $") +SM_IDSTR(id, "@(#)$Id: vacation.c,v 8.137 2002/04/22 18:48:12 gshapiro Exp $") #include @@ -108,7 +108,7 @@ static void listdb __P((void)); #define EXITM(excode) \ { \ - if (!iflag && !lflag) \ + if (!initdb && !list) \ eatmsg(); \ exit(excode); \ } @@ -118,9 +118,10 @@ main(argc, argv) int argc; char **argv; { - bool iflag, exclude; + bool alwaysrespond = false; + bool initdb, exclude; bool runasuser = false; - bool lflag = false; + bool list = false; int mfail = 0, ufail = 0; int ch; int result; @@ -139,7 +140,7 @@ main(argc, argv) extern char *optarg; extern void usage __P((void)); extern void setinterval __P((time_t)); - extern int readheaders __P((void)); + extern int readheaders __P((bool)); extern bool recent __P((void)); extern void setreply __P((char *, time_t)); extern void sendmessage __P((char *, char *, char *)); @@ -168,17 +169,13 @@ main(argc, argv) # endif /* LOG_MAIL */ opterr = 0; - iflag = false; + initdb = false; exclude = false; interval = INTERVAL_UNDEF; *From = '\0'; -#if _FFR_RETURN_ADDR -# define OPTIONS "a:C:df:Iilm:R:r:s:t:Uxz" -#else /* _FFR_RETURN_ADDR */ -# define OPTIONS "a:C:df:Iilm:r:s:t:Uxz" -#endif /* _FFR_RETURN_ADDR */ +#define OPTIONS "a:C:df:Iijlm:R:r:s:t:Uxz" while (mfail == 0 && ufail == 0 && (ch = getopt(argc, argv, OPTIONS)) != -1) @@ -211,11 +208,17 @@ main(argc, argv) case 'I': /* backward compatible */ case 'i': /* init the database */ - iflag = true; + initdb = true; break; +#if _FFR_RESPOND_ALL + case 'j': + alwaysrespond = true; + break; +#endif /* _FFR_RESPOND_ALL */ + case 'l': - lflag = true; /* list the database */ + list = true; /* list the database */ break; case 'm': /* alternate message file */ @@ -278,7 +281,7 @@ main(argc, argv) if (argc != 1) { - if (!iflag && !lflag && !exclude) + if (!initdb && !list && !exclude) usage(); if ((pw = getpwuid(getuid())) == NULL) { @@ -381,7 +384,7 @@ main(argc, argv) result = smdb_open_database(&Db, dbfilename, - O_CREAT|O_RDWR | (iflag ? O_TRUNC : 0), + O_CREAT|O_RDWR | (initdb ? O_TRUNC : 0), S_IRUSR|S_IWUSR, sff, SMDB_TYPE_DEFAULT, &user_info, NULL); if (result != SMDBE_OK) @@ -391,7 +394,7 @@ main(argc, argv) EXITM(EX_DATAERR); } - if (lflag) + if (list) { listdb(); (void) Db->smdb_close(Db); @@ -401,7 +404,7 @@ main(argc, argv) if (interval != INTERVAL_UNDEF) setinterval(interval); - if (iflag && !exclude) + if (initdb && !exclude) { (void) Db->smdb_close(Db); exit(EX_OK); @@ -425,7 +428,7 @@ main(argc, argv) cur->next = Names; Names = cur; - result = readheaders(); + result = readheaders(alwaysrespond); if (result == EX_OK && !recent()) { time_t now; @@ -468,7 +471,7 @@ eatmsg() ** READHEADERS -- read mail headers ** ** Parameters: -** none. +** alwaysrespond -- respond regardless of whether msg is to me ** ** Returns: ** a exit code: NOUSER if no reply, OK if reply, * if error @@ -479,7 +482,8 @@ eatmsg() */ int -readheaders() +readheaders(alwaysrespond) + bool alwaysrespond; { bool tome, cont; register char *p; @@ -488,7 +492,8 @@ readheaders() extern bool junkmail __P((char *)); extern bool nsearch __P((char *, char *)); - cont = tome = false; + cont = false; + tome = alwaysrespond; while (sm_io_fgets(smioin, SM_TIME_DEFAULT, buf, sizeof(buf)) && *buf != '\n') { @@ -1037,17 +1042,20 @@ sendmessage(myname, msgfn, sender) void usage() { - char *retusage; + char *retusage = ""; + char *respusage = ""; #if _FFR_RETURN_ADDR retusage = "[-R returnaddr] "; -#else /* _FFR_RETURN_ADDR */ - retusage = ""; #endif /* _FFR_RETURN_ADDR */ +#if _FFR_RESPOND_ALL + respusage = "[-j] "; +#endif /* _FFR_RESPOND_ALL */ + msglog(LOG_NOTICE, - "uid %u: usage: vacation [-a alias] [-C cfpath] [-d] [-f db] [-i] [-l] [-m msg] %s[-r interval] [-s sender] [-t time] [-U] [-x] [-z] login\n", - getuid(), retusage); + "uid %u: usage: vacation [-a alias] [-C cfpath] [-d] [-f db] [-i] %s[-l] [-m msg] %s[-r interval] [-s sender] [-t time] [-U] [-x] [-z] login\n", + getuid(), respusage, retusage); exit(EX_USAGE); } @@ -1084,6 +1092,8 @@ listdb() while ((result = cursor->smdbc_get(cursor, &db_key, &db_value, SMDB_CURSOR_GET_NEXT)) == SMDBE_OK) { + char *timestamp; + /* skip magic VIT entry */ if ((int)db_key.size - 1 == strlen(VIT) && strncmp((char *)db_key.data, VIT, @@ -1104,9 +1114,18 @@ listdb() if (db_key.size > 40) db_key.size = 40; + if (t <= 0) + { + /* must be an exclude */ + timestamp = "(exclusion)\n"; + } + else + { + timestamp = ctime(&t); + } sm_io_fprintf(smioout, SM_TIME_DEFAULT, "%-40.*s %-10s", (int) db_key.size, (char *) db_key.data, - ctime(&t)); + timestamp); memset(&db_key, '\0', sizeof db_key); memset(&db_value, '\0', sizeof db_value);