diff options
author | gshapiro <gshapiro@FreeBSD.org> | 2002-06-11 21:12:04 +0000 |
---|---|---|
committer | gshapiro <gshapiro@FreeBSD.org> | 2002-06-11 21:12:04 +0000 |
commit | faacdfb2c2946459651449cedf08a1bc29aee731 (patch) | |
tree | 546131e3b171104de8ab1498603b992a6971ec6a | |
parent | e226f8e879ed5a8d2f5cc433067b698e07dce0b6 (diff) | |
download | FreeBSD-src-faacdfb2c2946459651449cedf08a1bc29aee731.zip FreeBSD-src-faacdfb2c2946459651449cedf08a1bc29aee731.tar.gz |
Import sendmail 8.12.4
453 files changed, 2364 insertions, 1117 deletions
diff --git a/contrib/sendmail/FAQ b/contrib/sendmail/FAQ index deb0798..f8c2e84 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 8bacaca..19a60c6 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 f8da3dd..81ea244 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 d48fc30..e466568 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 217e59b..97b2afc 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 10fcb1a..11654e9 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 a7c47e3..8fb91a0 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 8b33823..cf6855a 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 7ee514b..3c7b7d5 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 8502a64..9a69a18 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 e61e21a..d0ac865 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 6c9de63..bb335a4 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 d167272..ecdbddf 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 bcf2ee4..f384b5f 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 a6e7bc9..664377e 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 547e47b..09d6e49 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 9830ab9..c802b50 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 2edfde8..6263e11 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 03cb5ff..7669823 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 9499c44..8fa00ce 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 f1bf136..18ea8b3 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 2439ea8..deed5f1 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 4514e1d..739207c 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 69b8501..f86e263 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 3af4a76..fa5c574 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 3f85c35..14b46d3 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 f841cc0..9cd4e77 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 ea78bc3..5f82340 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 fa244a1..a27d099 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 3c1bcce..913edb5 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 98ec215..117a236 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 33bf1f1..6c370fd 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 94f7315..6bd7782 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 b7688e7..bf7d408 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 805fc82..0414e4c 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 9e5c31b..c3b3e0d 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 10f5efb..6ec08fe 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 8fea712..4bf4939 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 02acf42..fe90962 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 > $: <OK> $1 < @ $2 $3 > +R<?> $* < @ $j > $: <OK> $1 < @ $j > R<?> $* < @ $+ > $: <? $(resolve $2 $: $2 <PERM> $) > $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 0ca0128..2ab5972 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 3049510..969cb71 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 e6a2a64..26b2ce0 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 cdcd2dd..235d9aa 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 9800567..134c8f4 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 ea6977b..3fb48e1 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 891228f..d0fee24 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 876f111..181ced1 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 c2ff476d..41a21ad 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 6de394e..9a019ce 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 8fbe90a..b9a73b9 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 6317636..caa5a88 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 df05af7..4c39884 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 6b1a65d..a54507c 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 9745b1d..796cc13 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 6630d07..aa264f9 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 9c8dc1d..a29956a 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 ec2e67a..3533d30 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 7b07b3f..911d2b5 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 ba5adb2..3232be8 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 8480fb2..d6218d1 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 3aa4873..a6125ed 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 ec95868..151df95 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 5ffc6a3..7389646 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 -T<TMP>ifdef(`DNSBL_MAP_OPT',` DNSBL_MAP_OPT')') +Kdnsbl DNSBL_MAP -T<TMP>ifdef(`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 2f589f0..b04b497 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 64f27ae..c713153 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<TMP> -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 6fdae52..fab586a 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 d553998..c20022a 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 7c0241d..72a6e26 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 1e0fc0b..f86ebd4 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 1a63654..f3c371b 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 4d9d4cf..de2300f 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 c567df1..29bb980 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 5de41fb..f8c2a31 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 e6261c2..abd1b9c9 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 1235988..e4dcd70 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 aaf5e3d..e2bcc65 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 488c5a0..74d3aa0 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 eebaae64..f4bc64a 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 e9b1934..5a05339 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 fec06ad..05baa7a 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 e284ca3..c5acadf 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 b37153c..1cecca5 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 6b28a82..a031049 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 a6364c1..8f35ca1 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 1e83687..bb603a6 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 e301b51..837da99 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 575cbfb..17cb7d1 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 82cdd5a..06715a0 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 9ed2e46..e167865 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 f2bc12b..872680a 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 4c134c3..a720b16 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 73f744c..867d4ed 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 343712b..9858eb8 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 13eb764..44bcbd6 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 7399fec..2159ff8 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 754943d..1e95be4 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 2fc5c2c..9e372ec 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 a62c9d3..7058cab 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 1f77dea..4d23229 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 00f8211..5a1d9f0 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 981e5ac..d9c628f 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 b258b2e..9b0e76a2 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 ba96059..4f5712b 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 c25680c..708a095 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 51bf84e..ab8b457 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 $) R<?>OK $: 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 > $: <OK> $1 < @ $2 $3 > dnl workspace <mark> CanonicalAddress where mark is ? or OK +dnl A sender address with my local host name ($j) is safe +R<?> $* < @ $j > $: <OK> $1 < @ $j > ifdef(`_ACCEPT_UNRESOLVABLE_DOMAINS_', `R<?> $* < @ $+ > $: <_RES_OK_> $1 < @ $2 > ... unresolvable OK', `R<?> $* < @ $+ > $: <? $(resolve $2 $: $2 <PERM> $) > $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> $* $@ RELAY relayable IP address +R<REJECT> $* $@ 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 1e9c6b2..9902120 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 bc588fb..cca7f8e 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 0000000..2a40a23 --- /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 edb408c..4e2116e 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 566dad8..c1946c9 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 114d7bc..14bc794 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 0b8894b..58b71b0 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 aaad8a5..d2680e1 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 b40d914..103e042 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 2af94ff..b0d9d51 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 64e8eee..2bf5a82 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 1703cb1..d3ae38b 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 410ba4c..6513556 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 5fa5b48..c4d4321 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 8d47f29..4376f67 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 32c7fa3..8e0b9d4 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 c865fbf..e8df77e 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 7341909..1cffe1e 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 d32241a..edd3a5d 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 43f8743..044f205 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 3fd91df..3f7b089 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 6857f85..35679bc 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 607794ca..b806a37 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 fd0e154..493406f 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 de64a4e..09d5848 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 4d5ada2..335aeda 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 27227ba..759459d 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 4c8264c..e072953 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 0a2ffec..b84a1e2 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 e2046c0..eb7a73a 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 52df141..39e8171 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 d1ac2cc..290c0c6 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 4cfa61b..94e2e98 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 34f50dc..902d39a 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 1784e72..f966458 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 4ff0f48..dda4bf4 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 abb9ae6..839e387 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 483987f..a124643 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 96201e0..b02ad29 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 26b2fbd..6f9a48e 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 a8d7885..90b7d2d 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 d464d56..9e760e9 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 342f369..0c52893 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 3d733a6..aaeb615 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 08e25da..dd13963 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 8ce81ec..4646fe3 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 f9f9241..84e8396 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 7391d85..5fb3b08 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 dbe0d30..f806938 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 029ca09..8fe1b84 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 <chrisdu@SCO.COM> 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 1a18d90..89ac637 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 146d298..bcd6b31 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 0b35ad2..6cf1484 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 0702bfb..72cb729 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 408f9d0..c30dda6 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 aea4e83..10b9d37 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 987eaf6..d1d776e 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 781eb8d..1e821ff 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 eee72cc..3f7706b 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 5582dc7..128c61a 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 fc9591b..d42f8ab 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 0483910..2d5734c 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 f89ee0f..1ba0346 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 98861abf..bab47e8 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 ef9dd73..d38fd52 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 7e7b9bd..1098f48 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 c096ce2..5175a34 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 11d9cef..dcf6d44 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 0a08a3a..c9a5f7e 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<TMP> -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 056c01d..843c920 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 cf4e551..fbc90fac 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 e5a5c90..08f808b 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 a69fb27..4987460 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 457ef05..09f4592 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 2325994..8d14002 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 85ba31f..965e029 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 384cd1f..9b450c5 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 4d1a6e2..fe7c2d9 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 b3fede3..9cf07c7 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 ad70013..649e98d 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 08afce6..d9378faf 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 c95c02e..0c7f97d 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 ebee2c1..9a8a635 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 fd38e61..cbf5f4a 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 16ff2a1..bbd3177 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 677d72c..6b86536 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 a011e66..44778ba 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 86a46f9..bb5e4c1 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 1a052ae..3869210 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 acc3210..b0dfb43 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 0cf376f7..12688ea 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 <standards.h> +# 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 <sys/statvfs.h> statfs() impl */ diff --git a/contrib/sendmail/include/sm/config.h b/contrib/sendmail/include/sm/config.h index 6d503c0..791a525 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 52bec43..eba29ad 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 c62dfcf..c5447d1 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 d2cf1ed..afcb125 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 a7b9e01..6f13411 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 74aaf07..61b6e1b 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 ecd9039..8b56370 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 a4f2267..48b358d 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 8fc8bf5..dfa0463 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 1832805..5041db3 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 ee26e53..010e50c 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 7ec4443..6dc4a54 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 386c099..3ba61fd 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 84efc0c..2cbcb57 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 de0a943..185485a 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 a32a17c..f232c49 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 b5fae55..385f1f4 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 14ed2db..03f886e 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 3363aa7..1acf12d 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 3d0b72a..3e696ba 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 6667c7a..eef239c 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 181589c..9d20b18 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 5155a19..1ae2db1 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 0756e29..2ff5ad0 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 c2f030b..29fc4ca 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 e8e2d21..e750fcb 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 44629a0..01bda02 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 6785465..6375dfc 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 994b836..3821deb 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 c960662..c8cb59f 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 e192ddb..750def1 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 bdc9745..1d700d7 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 a14d571..625a90e 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 27b0b21..7d2b5ca 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 2b12396..2e7e717 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 3a3e958..04277eb 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 601021c..f38f68a 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 6ff392d..0bf7e5c 100644 --- a/contrib/sendmail/libmilter/comm.c +++ b/contrib/sendmail/libmilter/comm.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <sm/errstring.h> diff --git a/contrib/sendmail/libmilter/docs/index.html b/contrib/sendmail/libmilter/docs/index.html index 3570ad5..44c5f90 100644 --- a/contrib/sendmail/libmilter/docs/index.html +++ b/contrib/sendmail/libmilter/docs/index.html @@ -4,7 +4,7 @@ </head> <body> <!-- -$Id: index.html,v 1.1.1.1 2002/02/17 21:56:45 gshapiro Exp $ +$Id: index.html,v 1.10 2001/06/01 00:05:03 ca Exp $ --> <h1>Filtering Mail with Sendmail</h1> diff --git a/contrib/sendmail/libmilter/docs/overview.html b/contrib/sendmail/libmilter/docs/overview.html index 4a46866..7f1c036 100644 --- a/contrib/sendmail/libmilter/docs/overview.html +++ b/contrib/sendmail/libmilter/docs/overview.html @@ -4,7 +4,7 @@ </head> <body> <!-- -$Id: overview.html,v 1.1.1.1 2002/02/17 21:56:45 gshapiro Exp $ +$Id: overview.html,v 1.12 2001/06/01 00:05:03 ca Exp $ --> <h1>Technical Overview</h1> diff --git a/contrib/sendmail/libmilter/docs/sample.html b/contrib/sendmail/libmilter/docs/sample.html index 7e99704..879258c 100644 --- a/contrib/sendmail/libmilter/docs/sample.html +++ b/contrib/sendmail/libmilter/docs/sample.html @@ -18,397 +18,461 @@ options: </center> <hr> <pre> -#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 *) <a href="smfi_getpriv.html">smfi_getpriv</a>(ctx)) +#define MLFIPRIV ((struct mlfiPriv *) <a href="smfi_getpriv.html">smfi_getpriv</a>(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 <a href="xxfi_connect.html">mlfi_connect</a>(ctx, hostname, hostaddr) - SMFICTX *ctx; - char *hostname; - _SOCK_ADDR *hostaddr; + SMFICTX *ctx; + char *hostname; + _SOCK_ADDR *hostaddr; { - 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); - - /* save the private data */ - <a href="smfi_setpriv.html">smfi_setpriv</a>(ctx, priv); - - ident = <a href="smfi_getsymval.html">smfi_getsymval</a>(ctx, "_"); - if(!ident) ident = "???"; - if(!(priv->mlfi_connectfrom = strdup(ident))) { - return SMFIS_TEMPFAIL; - } - /* Continue processing. */ - return SMFIS_CONTINUE; + 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); + + /* save the private data */ + <a href="smfi_setpriv.html">smfi_setpriv</a>(ctx, priv); + + ident = <a href="smfi_getsymval.html">smfi_getsymval</a>(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 <a href="xxfi_helo.html">mlfi_helo</a>(ctx, helohost) - SMFICTX *ctx; - char *helohost; + SMFICTX *ctx; + char *helohost; { - char *tls; - char *buf; - struct mlfiPriv *priv = MLFIPRIV; - tls = <a href="smfi_getsymval.html">smfi_getsymval</a>(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 = <a href="smfi_getsymval.html">smfi_getsymval</a>(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 <a href="xxfi_envfrom.html">mlfi_envfrom</a>(ctx, argv) - SMFICTX *ctx; - char **argv; + SMFICTX *ctx; + char **argv; { - struct mlfiPriv *priv = MLFIPRIV; - char *mailaddr = <a href="smfi_getsymval.html">smfi_getsymval</a>(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; - } - - /* 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; + struct mlfiPriv *priv = MLFIPRIV; + char *mailaddr = <a href="smfi_getsymval.html">smfi_getsymval</a>(ctx, "{mail_addr}"); + int argc = 0; + + /* open a file to store this message */ + if ((priv->mlfi_fname = strdup("/tmp/msg.XXXXXX")) == NULL) + { + (void) mlfi_cleanup(ctx, FALSE); + return SMFIS_TEMPFAIL; + } + + 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 <a href="xxfi_envrcpt.html">mlfi_envrcpt</a>(ctx, argv) - SMFICTX *ctx; - char **argv; + SMFICTX *ctx; + char **argv; { - struct mlfiPriv *priv = MLFIPRIV; - char *rcptaddr = <a href="smfi_getsymval.html">smfi_getsymval</a>(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 = <a href="smfi_getsymval.html">smfi_getsymval</a>(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; + } + 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; } - 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; + + /* continue processing */ + return SMFIS_CONTINUE; } sfsistat <a href="xxfi_header.html">mlfi_header</a>(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 <a href="xxfi_eoh.html">mlfi_eoh</a>(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 <a href="xxfi_body.html">mlfi_body</a>(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; - } - - /* continue processing */ - return SMFIS_CONTINUE; + struct mlfiPriv *priv = MLFIPRIV; + + /* 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 <a href="xxfi_eom.html">mlfi_eom</a>(ctx) - SMFICTX *ctx; + SMFICTX *ctx; { - bool ok = TRUE; - /* change recipients, if requested */ - if(add) - ok = ok && (<a href="smfi_addrcpt.html">smfi_addrcpt</a>(ctx, add) == MI_SUCCESS); - return mlfi_cleanup(ctx, ok); + bool ok = TRUE; + + /* change recipients, if requested */ + if (add != NULL) + ok = (<a href="smfi_addrcpt.html">smfi_addrcpt</a>(ctx, add) == MI_SUCCESS); + return mlfi_cleanup(ctx, ok); } sfsistat <a href="xxfi_abort.html">mlfi_abort</a>(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 (<a href="smfi_addheader.html">smfi_addheader</a>(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); - <a href="smfi_addheader.html">smfi_addheader</a>(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); - } - - /* release private memory */ - free(priv->mlfi_fname); - - /* return status */ - return rstat; + { + /* 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 */ + if (priv->mlfi_fname != NULL) + free(priv->mlfi_fname); + + /* return status */ + return rstat; } sfsistat <a href="xxfi_close.html">mlfi_close</a>(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); - <a href="smfi_setpriv.html">smfi_setpriv</a>(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); + <a href="smfi_setpriv.html">smfi_setpriv</a>(ctx, NULL); + return SMFIS_CONTINUE; } struct smfiDesc smfilter = { - "SampleFilter", /* filter name */ - SMFI_VERSION, /* version code -- do not change */ - SMFIF_ADDHDRS, /* flags */ - <a href="xxfi_connect.html">mlfi_connect</a>, /* connection info filter */ - <a href="xxfi_helo.html">mlfi_helo</a>, /* SMTP HELO command filter */ - <a href="xxfi_envfrom.html">mlfi_envfrom</a>, /* envelope sender filter */ - <a href="xxfi_envrcpt.html">mlfi_envrcpt</a>, /* envelope recipient filter */ - <a href="xxfi_header.html">mlfi_header</a>, /* header filter */ - <a href="xxfi_eoh.html">mlfi_eoh</a>, /* end of header */ - <a href="xxfi_body.html">mlfi_body</a>, /* body block filter */ - <a href="xxfi_eom.html">mlfi_eom</a>, /* end of message */ - <a href="xxfi_abort.html">mlfi_abort</a>, /* message aborted */ - <a href="xxfi_close.html">mlfi_close</a>, /* connection cleanup */ + "SampleFilter", /* filter name */ + SMFI_VERSION, /* version code -- do not change */ + SMFIF_ADDHDRS, /* flags */ + <a href="xxfi_connect.html">mlfi_connect</a>, /* connection info filter */ + <a href="xxfi_helo.html">mlfi_helo</a>, /* SMTP HELO command filter */ + <a href="xxfi_envfrom.html">mlfi_envfrom</a>, /* envelope sender filter */ + <a href="xxfi_envrcpt.html">mlfi_envrcpt</a>, /* envelope recipient filter */ + <a href="xxfi_header.html">mlfi_header</a>, /* header filter */ + <a href="xxfi_eoh.html">mlfi_eoh</a>, /* end of header */ + <a href="xxfi_body.html">mlfi_body</a>, /* body block filter */ + <a href="xxfi_eom.html">mlfi_eom</a>, /* end of message */ + <a href="xxfi_abort.html">mlfi_abort</a>, /* message aborted */ + <a href="xxfi_close.html">mlfi_close</a>, /* 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; - - /* Process command line options */ - while ((c = getopt(argc, argv, args)) != (char)EOF) - { - switch (c) + int c; + const char *args = "p:t:r:a:h"; + extern char *optarg; + + /* Process command line options */ + while ((c = getopt(argc, argv, args)) != -1) + { + switch (c) + { + case 'p': + if (optarg == NULL || *optarg == '\0') + { + (void) fprintf(stderr, "Illegal conn: %s\n", + optarg); + exit(EX_USAGE); + } + if (<a href="smfi_setconn.html">smfi_setconn</a>(optarg) == MI_FAILURE) + { + (void) fprintf(stderr, + "smfi_setconn failed\n"); + exit(EX_SOFTWARE); + } + + /* + ** If we're using a local socket, make sure it + ** doesn't already exist. Don't ever run this + ** code as root!! + */ + + if (strncasecmp(optarg, "unix:", 5) == 0) + unlink(optarg + 5); + else if (strncasecmp(optarg, "local:", 6) == 0) + unlink(optarg + 6); + break; + + case 't': + if (optarg == NULL || *optarg == '\0') + { + (void) fprintf(stderr, "Illegal timeout: %s\n", + optarg); + exit(EX_USAGE); + } + if (<a href="smfi_settimeout.html">smfi_settimeout</a>(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 (<a href="smfi_register.html">smfi_register</a>(smfilter) == MI_FAILURE) { - case 'p': - if (optarg == NULL || *optarg == '\0') - { - (void) fprintf(stderr, "Illegal conn: %s\n", - optarg); - exit(EX_USAGE); - } - if(<a href="smfi_setconn.html">smfi_setconn</a>(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; - - case 't': - if (optarg == NULL || *optarg == '\0') - { - (void) fprintf(stderr, "Illegal timeout: %s\n", - optarg); - exit(EX_USAGE); - } - if(<a href="smfi_settimeout.html">smfi_settimeout</a>(atoi(optarg)) == MI_FAILURE) - { - (void) fputs("smfi_settimeout failed", stderr); - 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(); - exit(0); + fprintf(stderr, "smfi_register failed\n"); + exit(EX_UNAVAILABLE); } - } - if (<a href="smfi_register.html">smfi_register</a>(smfilter) == MI_FAILURE) - { - fprintf(stderr, "smfi_register failed\n"); - exit(EX_UNAVAILABLE); - } - retval = <a href="smfi_main.html">smfi_main</a>(); - return retval; + return <a href="smfi_main.html">smfi_main</a>(); } /* eof */ @@ -416,7 +480,7 @@ main(argc, argv) </pre> <hr size="1"> <font size="-1"> -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. All rights reserved. <br> 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 c6417e2..6f852ae 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</a>. <li>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 <tt>\n</tt> in C) followed by at least + one whitespace character such as a space (ASCII 0x20) or tab (ASCII 0x09, + or <tt>\t</tt> in C). The line feed should NOT be preceded by a + carriage return (ASCII 0x0d); the MTA will add this automatically. <b>It is the filter writer's responsibility to ensure that no standards are violated.</b> </ul> </td> </tr> +<!----------- Example code ----------> +<tr> +<th valign="top" align=left>EXAMPLE</th> + +<td> + <pre> + int ret; + SMFICTX *ctx; + + ... + + ret = smfi_addheader(ctx, "Content-Type", + "multipart/mixed;\n\tboundary=\"foobar\""); + </pre> +</td> +</tr> + </table> <hr size="1"> <font size="-1"> -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. All rights reserved. <br> 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 4969674..89ce6f2 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. <li>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 <tt>\n</tt> in C) followed by at least + one whitespace character such as a space (ASCII 0x20) or tab (ASCII 0x09, + or <tt>\t</tt> in C). The line feed should NOT be preceded by a + carriage return (ASCII 0x0d); the MTA will add this automatically. <b>It is the filter writer's responsibility to ensure that no standards are violated.</b> </ul> </td> </tr> +<!----------- Example code ----------> +<tr> +<th valign="top" align=left>EXAMPLE</th> + +<td> + <pre> + int ret; + SMFICTX *ctx; + + ... + + ret = smfi_chgheader(ctx, "Content-Type", + "multipart/mixed;\n\tboundary=\"foobar\""); + </pre> +</td> +</tr> + </table> <hr size="1"> <font size="-1"> -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. All rights reserved. <br> 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 6c575a9..7414072 100644 --- a/contrib/sendmail/libmilter/engine.c +++ b/contrib/sendmail/libmilter/engine.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 b18a22b..a7b4760 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/gen.h> -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 65b3875..fedc24f 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 3661488..03d8acd 100644 --- a/contrib/sendmail/libmilter/listener.c +++ b/contrib/sendmail/libmilter/listener.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 345741a..92690cd 100644 --- a/contrib/sendmail/libmilter/main.c +++ b/contrib/sendmail/libmilter/main.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 514afb6..43a8567 100644 --- a/contrib/sendmail/libmilter/signal.c +++ b/contrib/sendmail/libmilter/signal.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 96aaf60..1714741 100644 --- a/contrib/sendmail/libmilter/sm_gethost.c +++ b/contrib/sendmail/libmilter/sm_gethost.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <sendmail.h> #if NETINET || NETINET6 diff --git a/contrib/sendmail/libmilter/smfi.c b/contrib/sendmail/libmilter/smfi.c index 666673b..032a6ac 100644 --- a/contrib/sendmail/libmilter/smfi.c +++ b/contrib/sendmail/libmilter/smfi.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <sm/varargs.h> #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 a71d117..c6c1a29 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 b829b3a..d75d55f 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 04bebf1..efad1ec 100644 --- a/contrib/sendmail/libsm/assert.c +++ b/contrib/sendmail/libsm/assert.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 6515ac2..a325199 100644 --- a/contrib/sendmail/libsm/assert.html +++ b/contrib/sendmail/libsm/assert.html @@ -8,7 +8,7 @@ <center> <h1> libsm : Assert and Abort </h1> - <br> $Id: assert.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + <br> $Id: assert.html,v 1.6 2001/08/27 21:47:03 ca Exp $ </center> <h2> Introduction </h2> diff --git a/contrib/sendmail/libsm/b-strcmp.c b/contrib/sendmail/libsm/b-strcmp.c index af5335e..a713bc6 100644 --- a/contrib/sendmail/libsm/b-strcmp.c +++ b/contrib/sendmail/libsm/b-strcmp.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <stdio.h> #include <stdlib.h> #include <unistd.h> diff --git a/contrib/sendmail/libsm/b-strl.c b/contrib/sendmail/libsm/b-strl.c index 2a5206e..a696154 100644 --- a/contrib/sendmail/libsm/b-strl.c +++ b/contrib/sendmail/libsm/b-strl.c @@ -19,7 +19,7 @@ */ #include <sm/gen.h> -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 <stdio.h> #include <stdlib.h> #include <unistd.h> diff --git a/contrib/sendmail/libsm/cdefs.html b/contrib/sendmail/libsm/cdefs.html index bf8cb63..33e45ac 100644 --- a/contrib/sendmail/libsm/cdefs.html +++ b/contrib/sendmail/libsm/cdefs.html @@ -8,7 +8,7 @@ <center> <h1> libsm : C Language Portability Macros </h1> - <br> $Id: cdefs.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + <br> $Id: cdefs.html,v 1.2 2000/12/07 17:33:09 dmoen Exp $ </center> <h2> Description </h2> @@ -86,7 +86,7 @@ SM_DEAD(void exit __P((int))); Examples: <blockquote><pre> -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 aeebba7..d217875 100644 --- a/contrib/sendmail/libsm/cf.c +++ b/contrib/sendmail/libsm/cf.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <ctype.h> #include <errno.h> diff --git a/contrib/sendmail/libsm/clock.c b/contrib/sendmail/libsm/clock.c index b952859..ada9689 100644 --- a/contrib/sendmail/libsm/clock.c +++ b/contrib/sendmail/libsm/clock.c @@ -12,7 +12,7 @@ */ #include <sm/gen.h> -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 <unistd.h> #include <time.h> #include <errno.h> diff --git a/contrib/sendmail/libsm/clrerr.c b/contrib/sendmail/libsm/clrerr.c index 0147824..5b1a8a8 100644 --- a/contrib/sendmail/libsm/clrerr.c +++ b/contrib/sendmail/libsm/clrerr.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sm/io.h> #include <sm/assert.h> #include "local.h" diff --git a/contrib/sendmail/libsm/config.c b/contrib/sendmail/libsm/config.c index acf26cb..53cbe3d 100644 --- a/contrib/sendmail/libsm/config.c +++ b/contrib/sendmail/libsm/config.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <sm/heap.h> diff --git a/contrib/sendmail/libsm/debug.c b/contrib/sendmail/libsm/debug.c index ebaee2d..37e5e82 100644 --- a/contrib/sendmail/libsm/debug.c +++ b/contrib/sendmail/libsm/debug.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 b7f1b9c..a9b184a 100644 --- a/contrib/sendmail/libsm/debug.html +++ b/contrib/sendmail/libsm/debug.html @@ -8,7 +8,7 @@ <center> <h1> libsm : Debugging and Tracing </h1> - <br> $Id: debug.html,v 1.1.1.2 2002/04/10 03:04:55 gshapiro Exp $ + <br> $Id: debug.html,v 1.9 2002/02/02 16:50:56 ca Exp $ </center> <h2> Introduction </h2> diff --git a/contrib/sendmail/libsm/errstring.c b/contrib/sendmail/libsm/errstring.c index a90efc5..29aaade 100644 --- a/contrib/sendmail/libsm/errstring.c +++ b/contrib/sendmail/libsm/errstring.c @@ -11,7 +11,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <stdio.h> /* sys_errlist, on some platforms */ diff --git a/contrib/sendmail/libsm/exc.c b/contrib/sendmail/libsm/exc.c index 0748796..9cc1c6f 100644 --- a/contrib/sendmail/libsm/exc.c +++ b/contrib/sendmail/libsm/exc.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 d0905f3..a299036 100644 --- a/contrib/sendmail/libsm/exc.html +++ b/contrib/sendmail/libsm/exc.html @@ -8,7 +8,7 @@ <center> <h1> libsm : Exception Handling </h1> - <br> $Id: exc.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + <br> $Id: exc.html,v 1.12 2001/02/13 21:21:25 gshapiro Exp $ </center> <h2> Introduction </h2> diff --git a/contrib/sendmail/libsm/fclose.c b/contrib/sendmail/libsm/fclose.c index a2e8fba..2de1413 100644 --- a/contrib/sendmail/libsm/fclose.c +++ b/contrib/sendmail/libsm/fclose.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <stdlib.h> #include <sys/time.h> diff --git a/contrib/sendmail/libsm/feof.c b/contrib/sendmail/libsm/feof.c index 89a52c3..8d5e0d8 100644 --- a/contrib/sendmail/libsm/feof.c +++ b/contrib/sendmail/libsm/feof.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sm/io.h> #include <sm/assert.h> #include "local.h" diff --git a/contrib/sendmail/libsm/ferror.c b/contrib/sendmail/libsm/ferror.c index 0959490..9487479 100644 --- a/contrib/sendmail/libsm/ferror.c +++ b/contrib/sendmail/libsm/ferror.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sm/io.h> #include <sm/assert.h> #include "local.h" diff --git a/contrib/sendmail/libsm/fflush.c b/contrib/sendmail/libsm/fflush.c index 154d5fe..83b318e 100644 --- a/contrib/sendmail/libsm/fflush.c +++ b/contrib/sendmail/libsm/fflush.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <unistd.h> #include <errno.h> #include <sys/time.h> diff --git a/contrib/sendmail/libsm/fget.c b/contrib/sendmail/libsm/fget.c index 2ad7c97..611748c 100644 --- a/contrib/sendmail/libsm/fget.c +++ b/contrib/sendmail/libsm/fget.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <string.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/findfp.c b/contrib/sendmail/libsm/findfp.c index a885e69..115ed22 100644 --- a/contrib/sendmail/libsm/findfp.c +++ b/contrib/sendmail/libsm/findfp.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <unistd.h> #include <sys/param.h> diff --git a/contrib/sendmail/libsm/flags.c b/contrib/sendmail/libsm/flags.c index 37f2a63..b3877f1 100644 --- a/contrib/sendmail/libsm/flags.c +++ b/contrib/sendmail/libsm/flags.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sys/types.h> #include <sys/file.h> #include <errno.h> diff --git a/contrib/sendmail/libsm/fopen.c b/contrib/sendmail/libsm/fopen.c index b76b185..a2fae9d 100644 --- a/contrib/sendmail/libsm/fopen.c +++ b/contrib/sendmail/libsm/fopen.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <setjmp.h> #include <sys/time.h> diff --git a/contrib/sendmail/libsm/fpos.c b/contrib/sendmail/libsm/fpos.c index 6936ed0..a8083fd 100644 --- a/contrib/sendmail/libsm/fpos.c +++ b/contrib/sendmail/libsm/fpos.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <setjmp.h> #include <sys/time.h> diff --git a/contrib/sendmail/libsm/fprintf.c b/contrib/sendmail/libsm/fprintf.c index 50fa997..7193872 100644 --- a/contrib/sendmail/libsm/fprintf.c +++ b/contrib/sendmail/libsm/fprintf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sm/varargs.h> #include <sm/io.h> #include <sm/assert.h> diff --git a/contrib/sendmail/libsm/fpurge.c b/contrib/sendmail/libsm/fpurge.c index 8b5d547..4e6fd5a 100644 --- a/contrib/sendmail/libsm/fpurge.c +++ b/contrib/sendmail/libsm/fpurge.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <errno.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/fput.c b/contrib/sendmail/libsm/fput.c index 1b69161..3c5e11c 100644 --- a/contrib/sendmail/libsm/fput.c +++ b/contrib/sendmail/libsm/fput.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <string.h> #include <errno.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/fread.c b/contrib/sendmail/libsm/fread.c index b0ec217..1e651fd 100644 --- a/contrib/sendmail/libsm/fread.c +++ b/contrib/sendmail/libsm/fread.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <string.h> #include <errno.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/fscanf.c b/contrib/sendmail/libsm/fscanf.c index 5947f86..5e1fcfd 100644 --- a/contrib/sendmail/libsm/fscanf.c +++ b/contrib/sendmail/libsm/fscanf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sm/varargs.h> #include <sm/assert.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/fseek.c b/contrib/sendmail/libsm/fseek.c index de4532c..6985e0d 100644 --- a/contrib/sendmail/libsm/fseek.c +++ b/contrib/sendmail/libsm/fseek.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sys/types.h> #include <sys/stat.h> #include <fcntl.h> diff --git a/contrib/sendmail/libsm/fvwrite.c b/contrib/sendmail/libsm/fvwrite.c index 2341978..a692781 100644 --- a/contrib/sendmail/libsm/fvwrite.c +++ b/contrib/sendmail/libsm/fvwrite.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <unistd.h> #include <string.h> diff --git a/contrib/sendmail/libsm/fvwrite.h b/contrib/sendmail/libsm/fvwrite.h index c35fa48..a1344c0 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 ee60dee..b878c1a 100644 --- a/contrib/sendmail/libsm/fwalk.c +++ b/contrib/sendmail/libsm/fwalk.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <sm/io.h> #include "local.h" diff --git a/contrib/sendmail/libsm/fwrite.c b/contrib/sendmail/libsm/fwrite.c index a60a203..372f75d 100644 --- a/contrib/sendmail/libsm/fwrite.c +++ b/contrib/sendmail/libsm/fwrite.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <sm/io.h> #include <sm/assert.h> diff --git a/contrib/sendmail/libsm/gen.html b/contrib/sendmail/libsm/gen.html index 31bc98a..cf642ae 100644 --- a/contrib/sendmail/libsm/gen.html +++ b/contrib/sendmail/libsm/gen.html @@ -8,7 +8,7 @@ <center> <h1> libsm : General Definitions </h1> - <br> $Id: gen.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + <br> $Id: gen.html,v 1.5 2000/12/08 21:41:42 ca Exp $ </center> <h2> Introduction </h2> diff --git a/contrib/sendmail/libsm/get.c b/contrib/sendmail/libsm/get.c index b7faf70..74549fe 100644 --- a/contrib/sendmail/libsm/get.c +++ b/contrib/sendmail/libsm/get.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sm/io.h> #include <sm/assert.h> #include "local.h" diff --git a/contrib/sendmail/libsm/glue.h b/contrib/sendmail/libsm/glue.h index 1d6b110..db8c101 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 1039ee1..50bb631 100644 --- a/contrib/sendmail/libsm/heap.c +++ b/contrib/sendmail/libsm/heap.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 c5d8673..bc32b01 100644 --- a/contrib/sendmail/libsm/heap.html +++ b/contrib/sendmail/libsm/heap.html @@ -8,7 +8,7 @@ <center> <h1> libsm : Memory Allocation </h1> - <br> $Id: heap.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + <br> $Id: heap.html,v 1.9 2000/12/08 21:41:42 ca Exp $ </center> <h2> Introduction </h2> diff --git a/contrib/sendmail/libsm/index.html b/contrib/sendmail/libsm/index.html index cba9260c..f2eec16 100644 --- a/contrib/sendmail/libsm/index.html +++ b/contrib/sendmail/libsm/index.html @@ -6,7 +6,7 @@ <center> <h1> libsm Overview </h1> - <br> $Id: index.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + <br> $Id: index.html,v 1.14 2001/02/13 21:21:25 gshapiro Exp $ </center> <h2> Introduction </h2> diff --git a/contrib/sendmail/libsm/io.html b/contrib/sendmail/libsm/io.html index 58a3381..5bb7c32 100644 --- a/contrib/sendmail/libsm/io.html +++ b/contrib/sendmail/libsm/io.html @@ -6,7 +6,7 @@ <a href="index.html">Back to libsm overview</a> <center> <h1>libsm sm_io general overview</h1> -<br> $Id: io.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ +<br> $Id: io.html,v 1.3 2001/03/17 03:22:50 gshapiro Exp $ </center> <h2> Introduction </h2> <p> diff --git a/contrib/sendmail/libsm/ldap.c b/contrib/sendmail/libsm/ldap.c index 3908c46..3e85a87 100644 --- a/contrib/sendmail/libsm/ldap.c +++ b/contrib/sendmail/libsm/ldap.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sys/types.h> diff --git a/contrib/sendmail/libsm/local.h b/contrib/sendmail/libsm/local.h index c816db6..9433213 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 492ad10..044de8c 100644 --- a/contrib/sendmail/libsm/makebuf.c +++ b/contrib/sendmail/libsm/makebuf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <unistd.h> #include <sys/types.h> diff --git a/contrib/sendmail/libsm/match.c b/contrib/sendmail/libsm/match.c index a5e5635..e42b865a3 100644 --- a/contrib/sendmail/libsm/match.c +++ b/contrib/sendmail/libsm/match.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <sm/string.h> diff --git a/contrib/sendmail/libsm/mbdb.c b/contrib/sendmail/libsm/mbdb.c index d2eeea2..9e1ec63 100644 --- a/contrib/sendmail/libsm/mbdb.c +++ b/contrib/sendmail/libsm/mbdb.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sys/param.h> @@ -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 9583ab5..6d9fedc 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/gen.h> -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 eae639e..ad58867 100644 --- a/contrib/sendmail/libsm/niprop.c +++ b/contrib/sendmail/libsm/niprop.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <ctype.h> diff --git a/contrib/sendmail/libsm/path.c b/contrib/sendmail/libsm/path.c index 4c82c23..6932e1f 100644 --- a/contrib/sendmail/libsm/path.c +++ b/contrib/sendmail/libsm/path.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/path.h> #include <sm/string.h> diff --git a/contrib/sendmail/libsm/put.c b/contrib/sendmail/libsm/put.c index 05fbad0..d513b98 100644 --- a/contrib/sendmail/libsm/put.c +++ b/contrib/sendmail/libsm/put.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <string.h> #include <errno.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/refill.c b/contrib/sendmail/libsm/refill.c index da9d835..10c7cde 100644 --- a/contrib/sendmail/libsm/refill.c +++ b/contrib/sendmail/libsm/refill.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <unistd.h> #include <errno.h> diff --git a/contrib/sendmail/libsm/rewind.c b/contrib/sendmail/libsm/rewind.c index e398bcb..597c6db 100644 --- a/contrib/sendmail/libsm/rewind.c +++ b/contrib/sendmail/libsm/rewind.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <sm/io.h> #include <sm/assert.h> diff --git a/contrib/sendmail/libsm/rpool.c b/contrib/sendmail/libsm/rpool.c index 6ab573d..8632166 100644 --- a/contrib/sendmail/libsm/rpool.c +++ b/contrib/sendmail/libsm/rpool.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 e2ff415..f796bc0 100644 --- a/contrib/sendmail/libsm/rpool.html +++ b/contrib/sendmail/libsm/rpool.html @@ -8,7 +8,7 @@ <center> <h1> libsm : Resource Pools </h1> - <br> $Id: rpool.html,v 1.1.1.1 2002/02/17 21:56:43 gshapiro Exp $ + <br> $Id: rpool.html,v 1.4 2000/12/07 17:33:09 dmoen Exp $ </center> <h2> Introduction </h2> diff --git a/contrib/sendmail/libsm/setvbuf.c b/contrib/sendmail/libsm/setvbuf.c index 2b6c08a..172a767 100644 --- a/contrib/sendmail/libsm/setvbuf.c +++ b/contrib/sendmail/libsm/setvbuf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <errno.h> #include <fcntl.h> diff --git a/contrib/sendmail/libsm/shm.c b/contrib/sendmail/libsm/shm.c index b622c51..35ae028 100644 --- a/contrib/sendmail/libsm/shm.c +++ b/contrib/sendmail/libsm/shm.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> diff --git a/contrib/sendmail/libsm/signal.c b/contrib/sendmail/libsm/signal.c index 284e75a..9061efc 100644 --- a/contrib/sendmail/libsm/signal.c +++ b/contrib/sendmail/libsm/signal.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sys/time.h> diff --git a/contrib/sendmail/libsm/smstdio.c b/contrib/sendmail/libsm/smstdio.c index 0126ac1..879fcd2 100644 --- a/contrib/sendmail/libsm/smstdio.c +++ b/contrib/sendmail/libsm/smstdio.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <unistd.h> #include <stdio.h> #include <fcntl.h> diff --git a/contrib/sendmail/libsm/snprintf.c b/contrib/sendmail/libsm/snprintf.c index 3cea818..5ee3006 100644 --- a/contrib/sendmail/libsm/snprintf.c +++ b/contrib/sendmail/libsm/snprintf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <limits.h> #include <sm/varargs.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/sscanf.c b/contrib/sendmail/libsm/sscanf.c index fb48544..168bcfd 100644 --- a/contrib/sendmail/libsm/sscanf.c +++ b/contrib/sendmail/libsm/sscanf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <string.h> #include <sm/varargs.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/stdio.c b/contrib/sendmail/libsm/stdio.c index 207164b..c3ab72d 100644 --- a/contrib/sendmail/libsm/stdio.c +++ b/contrib/sendmail/libsm/stdio.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <unistd.h> #include <errno.h> #include <fcntl.h> diff --git a/contrib/sendmail/libsm/strcasecmp.c b/contrib/sendmail/libsm/strcasecmp.c index c2fb58e..15f5ce8 100644 --- a/contrib/sendmail/libsm/strcasecmp.c +++ b/contrib/sendmail/libsm/strcasecmp.c @@ -12,7 +12,7 @@ */ #include <sm/gen.h> -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 <sm/config.h> #include <sm/string.h> diff --git a/contrib/sendmail/libsm/strdup.c b/contrib/sendmail/libsm/strdup.c index 2196359..64fe5c2 100644 --- a/contrib/sendmail/libsm/strdup.c +++ b/contrib/sendmail/libsm/strdup.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <sm/heap.h> #include <sm/string.h> diff --git a/contrib/sendmail/libsm/strerror.c b/contrib/sendmail/libsm/strerror.c index b0b2df8..ffdfb21 100644 --- a/contrib/sendmail/libsm/strerror.c +++ b/contrib/sendmail/libsm/strerror.c @@ -12,7 +12,7 @@ */ #include <sm/gen.h> -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 2626b07..0f2cdfc 100644 --- a/contrib/sendmail/libsm/strexit.c +++ b/contrib/sendmail/libsm/strexit.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/string.h> #include <sm/sysexits.h> diff --git a/contrib/sendmail/libsm/string.c b/contrib/sendmail/libsm/string.c index 892aa41..b0b6975 100644 --- a/contrib/sendmail/libsm/string.c +++ b/contrib/sendmail/libsm/string.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <ctype.h> #include <errno.h> diff --git a/contrib/sendmail/libsm/stringf.c b/contrib/sendmail/libsm/stringf.c index cdab93e..b6a7f66 100644 --- a/contrib/sendmail/libsm/stringf.c +++ b/contrib/sendmail/libsm/stringf.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <stdio.h> #include <sm/exc.h> diff --git a/contrib/sendmail/libsm/strio.c b/contrib/sendmail/libsm/strio.c index 6925f59..2b7e9d0 100644 --- a/contrib/sendmail/libsm/strio.c +++ b/contrib/sendmail/libsm/strio.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <unistd.h> #include <fcntl.h> diff --git a/contrib/sendmail/libsm/strl.c b/contrib/sendmail/libsm/strl.c index bba9950..ec9a81b 100644 --- a/contrib/sendmail/libsm/strl.c +++ b/contrib/sendmail/libsm/strl.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <sm/config.h> #include <sm/string.h> diff --git a/contrib/sendmail/libsm/strrevcmp.c b/contrib/sendmail/libsm/strrevcmp.c index 2490927..d0ed630 100644 --- a/contrib/sendmail/libsm/strrevcmp.c +++ b/contrib/sendmail/libsm/strrevcmp.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <sm/config.h> #include <sm/string.h> diff --git a/contrib/sendmail/libsm/strto.c b/contrib/sendmail/libsm/strto.c index aafb3d5..87e84bf 100644 --- a/contrib/sendmail/libsm/strto.c +++ b/contrib/sendmail/libsm/strto.c @@ -10,7 +10,7 @@ */ #include <sm/gen.h> -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 <sys/param.h> #include <sys/types.h> diff --git a/contrib/sendmail/libsm/syslogio.c b/contrib/sendmail/libsm/syslogio.c index e524710..24fa3a2 100644 --- a/contrib/sendmail/libsm/syslogio.c +++ b/contrib/sendmail/libsm/syslogio.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <unistd.h> #include <fcntl.h> diff --git a/contrib/sendmail/libsm/t-cf.c b/contrib/sendmail/libsm/t-cf.c index b42f8ce..9078514 100644 --- a/contrib/sendmail/libsm/t-cf.c +++ b/contrib/sendmail/libsm/t-cf.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <stdio.h> diff --git a/contrib/sendmail/libsm/t-event.c b/contrib/sendmail/libsm/t-event.c index 9b054ab..6073776 100644 --- a/contrib/sendmail/libsm/t-event.c +++ b/contrib/sendmail/libsm/t-event.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <stdio.h> diff --git a/contrib/sendmail/libsm/t-exc.c b/contrib/sendmail/libsm/t-exc.c index eb5fd44..a6922e0 100644 --- a/contrib/sendmail/libsm/t-exc.c +++ b/contrib/sendmail/libsm/t-exc.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <string.h> #include <sm/heap.h> diff --git a/contrib/sendmail/libsm/t-float.c b/contrib/sendmail/libsm/t-float.c index 06a48d4..f3f059b 100644 --- a/contrib/sendmail/libsm/t-float.c +++ b/contrib/sendmail/libsm/t-float.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/limits.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/t-fopen.c b/contrib/sendmail/libsm/t-fopen.c index 6296d9c..2d3839a 100644 --- a/contrib/sendmail/libsm/t-fopen.c +++ b/contrib/sendmail/libsm/t-fopen.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <fcntl.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/t-heap.c b/contrib/sendmail/libsm/t-heap.c index 05811bb..7ddb60d 100644 --- a/contrib/sendmail/libsm/t-heap.c +++ b/contrib/sendmail/libsm/t-heap.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/debug.h> #include <sm/heap.h> diff --git a/contrib/sendmail/libsm/t-match.c b/contrib/sendmail/libsm/t-match.c index c92052f..d2776c0 100644 --- a/contrib/sendmail/libsm/t-match.c +++ b/contrib/sendmail/libsm/t-match.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/string.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/t-path.c b/contrib/sendmail/libsm/t-path.c index 2a53c8a..fa6e345 100644 --- a/contrib/sendmail/libsm/t-path.c +++ b/contrib/sendmail/libsm/t-path.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <string.h> #include <sm/path.h> diff --git a/contrib/sendmail/libsm/t-rpool.c b/contrib/sendmail/libsm/t-rpool.c index f3553a0..b671a4b 100644 --- a/contrib/sendmail/libsm/t-rpool.c +++ b/contrib/sendmail/libsm/t-rpool.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/debug.h> #include <sm/heap.h> diff --git a/contrib/sendmail/libsm/t-scanf.c b/contrib/sendmail/libsm/t-scanf.c index 9f7a874..b3ca0bd 100644 --- a/contrib/sendmail/libsm/t-scanf.c +++ b/contrib/sendmail/libsm/t-scanf.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/limits.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/t-shm.c b/contrib/sendmail/libsm/t-shm.c index 66c008f..5da07c1 100644 --- a/contrib/sendmail/libsm/t-shm.c +++ b/contrib/sendmail/libsm/t-shm.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <stdio.h> diff --git a/contrib/sendmail/libsm/t-smstdio.c b/contrib/sendmail/libsm/t-smstdio.c index 724d222..3bad1c1 100644 --- a/contrib/sendmail/libsm/t-smstdio.c +++ b/contrib/sendmail/libsm/t-smstdio.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/io.h> #include <sm/string.h> diff --git a/contrib/sendmail/libsm/t-string.c b/contrib/sendmail/libsm/t-string.c index 3c9fab1..0506e7a 100644 --- a/contrib/sendmail/libsm/t-string.c +++ b/contrib/sendmail/libsm/t-string.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/exc.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/t-strio.c b/contrib/sendmail/libsm/t-strio.c index 7134d95..bb18dae 100644 --- a/contrib/sendmail/libsm/t-strio.c +++ b/contrib/sendmail/libsm/t-strio.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/string.h> #include <sm/io.h> #include <sm/test.h> diff --git a/contrib/sendmail/libsm/t-strl.c b/contrib/sendmail/libsm/t-strl.c index df4e6fa..5c118dc 100644 --- a/contrib/sendmail/libsm/t-strl.c +++ b/contrib/sendmail/libsm/t-strl.c @@ -9,7 +9,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <stdio.h> diff --git a/contrib/sendmail/libsm/t-strrevcmp.c b/contrib/sendmail/libsm/t-strrevcmp.c index 189b77e..fb8fb46 100644 --- a/contrib/sendmail/libsm/t-strrevcmp.c +++ b/contrib/sendmail/libsm/t-strrevcmp.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/exc.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/t-types.c b/contrib/sendmail/libsm/t-types.c index c1f9234..cb07f67 100644 --- a/contrib/sendmail/libsm/t-types.c +++ b/contrib/sendmail/libsm/t-types.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/limits.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/test.c b/contrib/sendmail/libsm/test.c index 376c2be..361cc45 100644 --- a/contrib/sendmail/libsm/test.c +++ b/contrib/sendmail/libsm/test.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 0d25390..7794af0 100644 --- a/contrib/sendmail/libsm/ungetc.c +++ b/contrib/sendmail/libsm/ungetc.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <string.h> diff --git a/contrib/sendmail/libsm/vasprintf.c b/contrib/sendmail/libsm/vasprintf.c index 68fa4f4..9b3a12e 100644 --- a/contrib/sendmail/libsm/vasprintf.c +++ b/contrib/sendmail/libsm/vasprintf.c @@ -35,7 +35,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <errno.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/vfprintf.c b/contrib/sendmail/libsm/vfprintf.c index e87e220..e2115bd 100644 --- a/contrib/sendmail/libsm/vfprintf.c +++ b/contrib/sendmail/libsm/vfprintf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 5085db4..5a19733 100644 --- a/contrib/sendmail/libsm/vfscanf.c +++ b/contrib/sendmail/libsm/vfscanf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <ctype.h> #include <stdlib.h> diff --git a/contrib/sendmail/libsm/vprintf.c b/contrib/sendmail/libsm/vprintf.c index bad3eca..6e310ef 100644 --- a/contrib/sendmail/libsm/vprintf.c +++ b/contrib/sendmail/libsm/vprintf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <sm/io.h> #include "local.h" diff --git a/contrib/sendmail/libsm/vsnprintf.c b/contrib/sendmail/libsm/vsnprintf.c index 59e2b51..18a4635 100644 --- a/contrib/sendmail/libsm/vsnprintf.c +++ b/contrib/sendmail/libsm/vsnprintf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <limits.h> #include <sm/io.h> #include "local.h" diff --git a/contrib/sendmail/libsm/vsprintf.c b/contrib/sendmail/libsm/vsprintf.c index ad7baaa..827fcec 100644 --- a/contrib/sendmail/libsm/vsprintf.c +++ b/contrib/sendmail/libsm/vsprintf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <limits.h> #include <sm/io.h> #include "local.h" diff --git a/contrib/sendmail/libsm/vsscanf.c b/contrib/sendmail/libsm/vsscanf.c index dd395cb..498f449 100644 --- a/contrib/sendmail/libsm/vsscanf.c +++ b/contrib/sendmail/libsm/vsscanf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <string.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/wbuf.c b/contrib/sendmail/libsm/wbuf.c index bf80845..8385535 100644 --- a/contrib/sendmail/libsm/wbuf.c +++ b/contrib/sendmail/libsm/wbuf.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <errno.h> #include <sm/io.h> #include "local.h" diff --git a/contrib/sendmail/libsm/wsetup.c b/contrib/sendmail/libsm/wsetup.c index 3004c9d..400553e 100644 --- a/contrib/sendmail/libsm/wsetup.c +++ b/contrib/sendmail/libsm/wsetup.c @@ -13,7 +13,7 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <errno.h> #include <sm/io.h> diff --git a/contrib/sendmail/libsm/xtrap.c b/contrib/sendmail/libsm/xtrap.c index 89b4d1c..7495e09 100644 --- a/contrib/sendmail/libsm/xtrap.c +++ b/contrib/sendmail/libsm/xtrap.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <sm/xtrap.h> diff --git a/contrib/sendmail/libsmdb/Makefile b/contrib/sendmail/libsmdb/Makefile index 3a3e958..0422ed5 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 cd47635..ad0b926 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/gen.h> -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 <fcntl.h> #include <stdlib.h> @@ -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 c8460a4..a971e5e 100644 --- a/contrib/sendmail/libsmdb/smdb1.c +++ b/contrib/sendmail/libsmdb/smdb1.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <unistd.h> #include <stdlib.h> @@ -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 3c33fc4..9e2e8ed 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/gen.h> -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 <fcntl.h> #include <stdlib.h> @@ -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 64fff00..89ecf63 100644 --- a/contrib/sendmail/libsmdb/smndbm.c +++ b/contrib/sendmail/libsmdb/smndbm.c @@ -8,7 +8,7 @@ */ #include <sm/gen.h> -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 <fcntl.h> #include <stdlib.h> @@ -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 7538f2d..2de3231 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 67feb40..c2132c3 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 <sendmail.h> -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 <sendmail/pathnames.h> /* @@ -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 7b34928..2c3b328 100644 --- a/contrib/sendmail/libsmutil/debug.c +++ b/contrib/sendmail/libsmutil/debug.c @@ -10,6 +10,6 @@ #include <sendmail.h> -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 7cd3e4b..0ad52a4 100644 --- a/contrib/sendmail/libsmutil/err.c +++ b/contrib/sendmail/libsmutil/err.c @@ -10,7 +10,7 @@ #include <sendmail.h> -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 <ctype.h> diff --git a/contrib/sendmail/libsmutil/lockfile.c b/contrib/sendmail/libsmutil/lockfile.c index 2a4d95a..5eca360 100644 --- a/contrib/sendmail/libsmutil/lockfile.c +++ b/contrib/sendmail/libsmutil/lockfile.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 02b218f..aed40a0 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 <sm/io.h> #include <sm/errstring.h> -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 11761b4..ff3aa3b 100644 --- a/contrib/sendmail/libsmutil/snprintf.c +++ b/contrib/sendmail/libsmutil/snprintf.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 4455b02..b560a30 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 e1ae2a8..651de4b 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 d5002e1..5cd1c13 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 56c4f8c..9ef3fb5 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 <stdlib.h> #include <sm/errstring.h> @@ -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 045394d..6dbcb62 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 c69dc2e..929875b 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 2f8e505..ec56e3a 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 <unistd.h> #include <stddef.h> @@ -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 045394d..a6960c1 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 cefc7f5..9faaef7 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 c48bbd7..59c28f6 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 <sys/types.h> diff --git a/contrib/sendmail/praliases/Makefile b/contrib/sendmail/praliases/Makefile index 185e57d..6b6db70 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 fb4d1a7..2c78cac 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 5c6a479..720fa6d 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 <sys/types.h> #include <ctype.h> diff --git a/contrib/sendmail/rmail/Makefile b/contrib/sendmail/rmail/Makefile index bec1ba4..2934322 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 d674d68..41aa339 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 da99f0f..cea291f 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 045394d..a9c4af7 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 989b0c8..7e22f86 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 67fed55..1f3c0a2 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 c4119f1..843f68b 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 <unistd.h> #include <sm/io.h> +#include <sm/limits.h> #include <sm/string.h> #include <sys/file.h> #include <string.h> @@ -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 85a8344..c86bbf5 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 8004de4..bb5dc1a 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 fb5a021..d24e47b 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 207eac7..e42c024 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 4ef5504..c64afd1 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 afeaa05..52da793 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 4d43908..f5bd746 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 <sendmail.h> -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 532111a..73899d4 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 a2e5a64..62b5dfb 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 67f9c14..16082cd 100644 --- a/contrib/sendmail/src/arpadate.c +++ b/contrib/sendmail/src/arpadate.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 c70ed83..eb41798 100644 --- a/contrib/sendmail/src/bf.c +++ b/contrib/sendmail/src/bf.c @@ -18,7 +18,7 @@ */ #include <sm/gen.h> -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 <sys/types.h> #include <sys/stat.h> @@ -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 b37b027..5a02292 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 013d104..a926d61 100644 --- a/contrib/sendmail/src/collect.c +++ b/contrib/sendmail/src/collect.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 446f46d..4a0a25d 100644 --- a/contrib/sendmail/src/conf.c +++ b/contrib/sendmail/src/conf.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <sendmail/pathnames.h> @@ -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 4e4d1ad..89bdd7e 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 ae975c7..88ff72f 100644 --- a/contrib/sendmail/src/control.c +++ b/contrib/sendmail/src/control.c @@ -10,7 +10,7 @@ #include <sendmail.h> -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 153605c..36edc1a 100644 --- a/contrib/sendmail/src/convtime.c +++ b/contrib/sendmail/src/convtime.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 d806938..0b2cd94 100644 --- a/contrib/sendmail/src/daemon.c +++ b/contrib/sendmail/src/daemon.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 e190253..2b1fc4c 100644 --- a/contrib/sendmail/src/deliver.c +++ b/contrib/sendmail/src/deliver.c @@ -14,7 +14,7 @@ #include <sendmail.h> #include <sys/time.h> -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 <login_cap.h> @@ -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 9d87398..f48f987 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 <sendmail.h> #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 000cc2d..27ad7cb 100644 --- a/contrib/sendmail/src/envelope.c +++ b/contrib/sendmail/src/envelope.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 28e99cf..484af9e 100644 --- a/contrib/sendmail/src/err.c +++ b/contrib/sendmail/src/err.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <lber.h> diff --git a/contrib/sendmail/src/headers.c b/contrib/sendmail/src/headers.c index 642547d..a56266e 100644 --- a/contrib/sendmail/src/headers.c +++ b/contrib/sendmail/src/headers.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 e6e2c64..931a06e 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 2cc6b88..fc7a2c2 100644 --- a/contrib/sendmail/src/macro.c +++ b/contrib/sendmail/src/macro.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 2efa319..0fae3ad 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 1451acb..78c1862 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 efae0d3..d8570d3 100644 --- a/contrib/sendmail/src/map.c +++ b/contrib/sendmail/src/map.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <sm/ldap.h> @@ -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 e6c48dc..b54b13d 100644 --- a/contrib/sendmail/src/mci.c +++ b/contrib/sendmail/src/mci.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <arpa/inet.h> @@ -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 b1be43e..f52a725 100644 --- a/contrib/sendmail/src/milter.c +++ b/contrib/sendmail/src/milter.c @@ -10,7 +10,7 @@ #include <sendmail.h> -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 <libmilter/mfapi.h> diff --git a/contrib/sendmail/src/mime.c b/contrib/sendmail/src/mime.c index 403c239..2fd36d2 100644 --- a/contrib/sendmail/src/mime.c +++ b/contrib/sendmail/src/mime.c @@ -14,7 +14,7 @@ #include <sendmail.h> #include <string.h> -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 91edc57..20fd0e7 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 bf59196..aa0e31d 100644 --- a/contrib/sendmail/src/parseaddr.c +++ b/contrib/sendmail/src/parseaddr.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 c72248a..5920b1e 100644 --- a/contrib/sendmail/src/queue.c +++ b/contrib/sendmail/src/queue.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <dirent.h> @@ -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 9a98715..c4d0637 100644 --- a/contrib/sendmail/src/readcf.c +++ b/contrib/sendmail/src/readcf.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <arpa/inet.h> @@ -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 e90238e..22b8377 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 <sendmail.h> -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 ca109de..beeece2 100644 --- a/contrib/sendmail/src/sasl.c +++ b/contrib/sendmail/src/sasl.c @@ -9,13 +9,12 @@ */ #include <sm/gen.h> -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 <stdlib.h> # include <sendmail.h> # include <errno.h> -# include <sasl.h> /* ** 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 <arpa/inet.h> + +# 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 4bff679..b28a70d 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 <sendmail.h> -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 b1558d1..cf473c5 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 dbefe5a..2284bd6 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 <sasl.h> + + +# if SASL == 2 || SASL >= 20000 +# include <sasl/sasl.h> +# include <sasl/saslutil.h> +# else /* SASL == 2 || SASL >= 20000 */ +# include <sasl.h> +# include <saslutil.h> +# 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 5745395..cad58d2 100644 --- a/contrib/sendmail/src/sfsasl.c +++ b/contrib/sendmail/src/sfsasl.c @@ -9,12 +9,11 @@ */ #include <sm/gen.h> -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 <stdlib.h> #include <sendmail.h> #include <errno.h> #if SASL -# include <sasl.h> # 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 b7d3a3a4..c75418a 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 034a9c0..6f5e301 100644 --- a/contrib/sendmail/src/shmticklib.c +++ b/contrib/sendmail/src/shmticklib.c @@ -11,7 +11,7 @@ */ #include <sm/gen.h> -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 <sys/types.h> diff --git a/contrib/sendmail/src/sm_resolve.c b/contrib/sendmail/src/sm_resolve.c index da955a2..e3eb77f 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 a147830..7f169ba 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 1210ee8..bbcd31f 100644 --- a/contrib/sendmail/src/srvrsmtp.c +++ b/contrib/sendmail/src/srvrsmtp.c @@ -16,7 +16,7 @@ # include <libmilter/mfdef.h> #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 <sys/time.h> @@ -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 8bc35d3..b2ad12d 100644 --- a/contrib/sendmail/src/stab.c +++ b/contrib/sendmail/src/stab.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 d282cfb..bf9d33a 100644 --- a/contrib/sendmail/src/stats.c +++ b/contrib/sendmail/src/stats.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <sendmail/mailstats.h> @@ -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 abfd1de..7d88964 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 d54a995..5cce2b7 100644 --- a/contrib/sendmail/src/sysexits.c +++ b/contrib/sendmail/src/sysexits.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 67c9f70..43dd73a 100644 --- a/contrib/sendmail/src/timers.c +++ b/contrib/sendmail/src/timers.c @@ -11,7 +11,7 @@ */ #include <sm/gen.h> -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 <sys/types.h> diff --git a/contrib/sendmail/src/timers.h b/contrib/sendmail/src/timers.h index b184e0d..d7faee1 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 0f8dc8e..e2b1b14 100644 --- a/contrib/sendmail/src/tls.c +++ b/contrib/sendmail/src/tls.c @@ -10,7 +10,7 @@ #include <sendmail.h> -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 <openssl/err.h> diff --git a/contrib/sendmail/src/trace.c b/contrib/sendmail/src/trace.c index 5279ad6..701a949 100644 --- a/contrib/sendmail/src/trace.c +++ b/contrib/sendmail/src/trace.c @@ -15,7 +15,7 @@ #include <sm/debug.h> #include <sm/string.h> -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 ab3e469..1091cf2 100644 --- a/contrib/sendmail/src/udb.c +++ b/contrib/sendmail/src/udb.c @@ -14,9 +14,9 @@ #include <sendmail.h> #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 3996627..2ec9ac4 100644 --- a/contrib/sendmail/src/usersmtp.c +++ b/contrib/sendmail/src/usersmtp.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <sysexits.h> @@ -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 a05cf65..4974541 100644 --- a/contrib/sendmail/src/util.c +++ b/contrib/sendmail/src/util.c @@ -13,7 +13,7 @@ #include <sendmail.h> -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 <sysexits.h> #include <sm/xtrap.h> @@ -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 d707e51..3e86eb0 100644 --- a/contrib/sendmail/src/version.c +++ b/contrib/sendmail/src/version.c @@ -13,6 +13,6 @@ #include <sm/gen.h> -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 a71d117..7ca1b40 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 630ea8f..d715bbb 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 9e8bdc4..934f9a1 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 ba755e8..cb166d0 100644 --- a/contrib/sendmail/test/t_dropgid.c +++ b/contrib/sendmail/test/t_dropgid.c @@ -22,7 +22,7 @@ #include <stdio.h> #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 33d8f1c..f1bde72 100644 --- a/contrib/sendmail/test/t_exclopen.c +++ b/contrib/sendmail/test/t_exclopen.c @@ -46,7 +46,7 @@ #include <unistd.h> #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 3fd1c45..2baaaa6 100644 --- a/contrib/sendmail/test/t_pathconf.c +++ b/contrib/sendmail/test/t_pathconf.c @@ -26,7 +26,7 @@ #include <sysexits.h> #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 88db3f8..9fab898 100644 --- a/contrib/sendmail/test/t_seteuid.c +++ b/contrib/sendmail/test/t_seteuid.c @@ -26,7 +26,7 @@ #include <stdio.h> #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 d064151..dfe1805 100644 --- a/contrib/sendmail/test/t_setgid.c +++ b/contrib/sendmail/test/t_setgid.c @@ -22,7 +22,7 @@ #include <stdio.h> #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 619b1ba..b307b08 100644 --- a/contrib/sendmail/test/t_setreuid.c +++ b/contrib/sendmail/test/t_setreuid.c @@ -23,7 +23,7 @@ #include <stdio.h> #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 0caaad6..6533339 100644 --- a/contrib/sendmail/test/t_setuid.c +++ b/contrib/sendmail/test/t_setuid.c @@ -25,7 +25,7 @@ #include <stdio.h> #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 f522521..8a0378f 100644 --- a/contrib/sendmail/test/t_snprintf.c +++ b/contrib/sendmail/test/t_snprintf.c @@ -12,7 +12,7 @@ #include <sysexits.h> #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 9f48c01..7cc577f 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 51c131e..299df64 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 8fe9793..ab4f4e8 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 <ctype.h> @@ -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); |