aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorGregory Neil Shapiro <gshapiro@FreeBSD.org>2002-06-11 21:12:04 +0000
committerGregory Neil Shapiro <gshapiro@FreeBSD.org>2002-06-11 21:12:04 +0000
commit94c01205742119acdf56dbbd22fc274e5e38cfd4 (patch)
tree546131e3b171104de8ab1498603b992a6971ec6a /contrib
parent6a2f2ff3e97764c1cd1fcac53cd4255791036bf4 (diff)
downloadsrc-94c01205742119acdf56dbbd22fc274e5e38cfd4.tar.gz
src-94c01205742119acdf56dbbd22fc274e5e38cfd4.zip
Import sendmail 8.12.4vendor/sendmail/8.12.4
Notes
Notes: svn path=/vendor/sendmail/dist/; revision=98121 svn path=/vendor/sendmail/8.12.4/; revision=98123; tag=vendor/sendmail/8.12.4
Diffstat (limited to 'contrib')
-rw-r--r--contrib/sendmail/FAQ2
-rw-r--r--contrib/sendmail/INSTALL9
-rw-r--r--contrib/sendmail/KNOWNBUGS2
-rw-r--r--contrib/sendmail/LICENSE4
-rw-r--r--contrib/sendmail/Makefile2
-rw-r--r--contrib/sendmail/PGPKEYS2
-rw-r--r--contrib/sendmail/README50
-rw-r--r--contrib/sendmail/RELEASE_NOTES101
-rw-r--r--contrib/sendmail/cf/README83
-rw-r--r--contrib/sendmail/cf/cf/Makefile2
-rw-r--r--contrib/sendmail/cf/cf/README2
-rw-r--r--contrib/sendmail/cf/cf/chez.cs.mc2
-rw-r--r--contrib/sendmail/cf/cf/clientproto.mc2
-rw-r--r--contrib/sendmail/cf/cf/cs-hpux10.mc2
-rw-r--r--contrib/sendmail/cf/cf/cs-hpux9.mc2
-rw-r--r--contrib/sendmail/cf/cf/cs-osf1.mc2
-rw-r--r--contrib/sendmail/cf/cf/cs-solaris2.mc2
-rw-r--r--contrib/sendmail/cf/cf/cs-sunos4.1.mc2
-rw-r--r--contrib/sendmail/cf/cf/cs-ultrix4.mc2
-rw-r--r--contrib/sendmail/cf/cf/cyrusproto.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-bsd4.4.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-hpux10.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-hpux9.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-linux.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-mpeix.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-nextstep3.3.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-osf1.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-solaris.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-sunos4.1.mc2
-rw-r--r--contrib/sendmail/cf/cf/generic-ultrix4.mc2
-rw-r--r--contrib/sendmail/cf/cf/huginn.cs.mc2
-rw-r--r--contrib/sendmail/cf/cf/knecht.mc2
-rw-r--r--contrib/sendmail/cf/cf/mail.cs.mc2
-rw-r--r--contrib/sendmail/cf/cf/mail.eecs.mc2
-rw-r--r--contrib/sendmail/cf/cf/mailspool.cs.mc2
-rw-r--r--contrib/sendmail/cf/cf/python.cs.mc2
-rw-r--r--contrib/sendmail/cf/cf/s2k-osf1.mc2
-rw-r--r--contrib/sendmail/cf/cf/s2k-ultrix4.mc2
-rw-r--r--contrib/sendmail/cf/cf/submit.cf25
-rw-r--r--contrib/sendmail/cf/cf/submit.mc2
-rw-r--r--contrib/sendmail/cf/cf/tcpproto.mc2
-rw-r--r--contrib/sendmail/cf/cf/ucbarpa.mc2
-rw-r--r--contrib/sendmail/cf/cf/ucbvax.mc2
-rw-r--r--contrib/sendmail/cf/cf/uucpproto.mc2
-rw-r--r--contrib/sendmail/cf/cf/vangogh.cs.mc2
-rw-r--r--contrib/sendmail/cf/domain/Berkeley.EDU.m42
-rw-r--r--contrib/sendmail/cf/domain/CS.Berkeley.EDU.m42
-rw-r--r--contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m42
-rw-r--r--contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m42
-rw-r--r--contrib/sendmail/cf/domain/berkeley-only.m42
-rw-r--r--contrib/sendmail/cf/domain/generic.m42
-rw-r--r--contrib/sendmail/cf/feature/accept_unqualified_senders.m42
-rw-r--r--contrib/sendmail/cf/feature/accept_unresolvable_domains.m42
-rw-r--r--contrib/sendmail/cf/feature/access_db.m42
-rw-r--r--contrib/sendmail/cf/feature/allmasquerade.m42
-rw-r--r--contrib/sendmail/cf/feature/always_add_domain.m42
-rw-r--r--contrib/sendmail/cf/feature/authinfo.m42
-rw-r--r--contrib/sendmail/cf/feature/bestmx_is_local.m42
-rw-r--r--contrib/sendmail/cf/feature/bitdomain.m42
-rw-r--r--contrib/sendmail/cf/feature/blacklist_recipients.m42
-rw-r--r--contrib/sendmail/cf/feature/compat_check.m42
-rw-r--r--contrib/sendmail/cf/feature/delay_checks.m42
-rw-r--r--contrib/sendmail/cf/feature/dnsbl.m410
-rw-r--r--contrib/sendmail/cf/feature/domaintable.m42
-rw-r--r--contrib/sendmail/cf/feature/enhdnsbl.m46
-rw-r--r--contrib/sendmail/cf/feature/generics_entire_domain.m42
-rw-r--r--contrib/sendmail/cf/feature/genericstable.m42
-rw-r--r--contrib/sendmail/cf/feature/ldap_routing.m42
-rw-r--r--contrib/sendmail/cf/feature/limited_masquerade.m42
-rw-r--r--contrib/sendmail/cf/feature/local_lmtp.m42
-rw-r--r--contrib/sendmail/cf/feature/local_no_masquerade.m42
-rw-r--r--contrib/sendmail/cf/feature/local_procmail.m42
-rw-r--r--contrib/sendmail/cf/feature/lookupdotdomain.m42
-rw-r--r--contrib/sendmail/cf/feature/loose_relay_check.m42
-rw-r--r--contrib/sendmail/cf/feature/mailertable.m42
-rw-r--r--contrib/sendmail/cf/feature/masquerade_entire_domain.m42
-rw-r--r--contrib/sendmail/cf/feature/masquerade_envelope.m42
-rw-r--r--contrib/sendmail/cf/feature/msp.m42
-rw-r--r--contrib/sendmail/cf/feature/no_default_msa.m42
-rw-r--r--contrib/sendmail/cf/feature/nocanonify.m42
-rw-r--r--contrib/sendmail/cf/feature/nodns.m42
-rw-r--r--contrib/sendmail/cf/feature/notsticky.m42
-rw-r--r--contrib/sendmail/cf/feature/nouucp.m42
-rw-r--r--contrib/sendmail/cf/feature/nullclient.m42
-rw-r--r--contrib/sendmail/cf/feature/preserve_local_plus_detail.m42
-rw-r--r--contrib/sendmail/cf/feature/preserve_luser_host.m45
-rw-r--r--contrib/sendmail/cf/feature/promiscuous_relay.m42
-rw-r--r--contrib/sendmail/cf/feature/queuegroup.m42
-rw-r--r--contrib/sendmail/cf/feature/redirect.m42
-rw-r--r--contrib/sendmail/cf/feature/relay_based_on_MX.m42
-rw-r--r--contrib/sendmail/cf/feature/relay_entire_domain.m42
-rw-r--r--contrib/sendmail/cf/feature/relay_hosts_only.m42
-rw-r--r--contrib/sendmail/cf/feature/relay_local_from.m42
-rw-r--r--contrib/sendmail/cf/feature/relay_mail_from.m42
-rw-r--r--contrib/sendmail/cf/feature/smrsh.m42
-rw-r--r--contrib/sendmail/cf/feature/stickyhost.m42
-rw-r--r--contrib/sendmail/cf/feature/use_ct_file.m42
-rw-r--r--contrib/sendmail/cf/feature/use_cw_file.m42
-rw-r--r--contrib/sendmail/cf/feature/uucpdomain.m42
-rw-r--r--contrib/sendmail/cf/feature/virtuser_entire_domain.m42
-rw-r--r--contrib/sendmail/cf/feature/virtusertable.m42
-rw-r--r--contrib/sendmail/cf/hack/cssubdomain.m42
-rw-r--r--contrib/sendmail/cf/m4/cf.m42
-rw-r--r--contrib/sendmail/cf/m4/cfhead.m42
-rw-r--r--contrib/sendmail/cf/m4/proto.m420
-rw-r--r--contrib/sendmail/cf/m4/version.m44
-rw-r--r--contrib/sendmail/cf/mailer/cyrus.m42
-rw-r--r--contrib/sendmail/cf/mailer/cyrusv2.m429
-rw-r--r--contrib/sendmail/cf/mailer/fax.m42
-rw-r--r--contrib/sendmail/cf/mailer/local.m42
-rw-r--r--contrib/sendmail/cf/mailer/mail11.m42
-rw-r--r--contrib/sendmail/cf/mailer/phquery.m42
-rw-r--r--contrib/sendmail/cf/mailer/pop.m42
-rw-r--r--contrib/sendmail/cf/mailer/procmail.m42
-rw-r--r--contrib/sendmail/cf/mailer/qpage.m42
-rw-r--r--contrib/sendmail/cf/mailer/smtp.m42
-rw-r--r--contrib/sendmail/cf/mailer/usenet.m42
-rw-r--r--contrib/sendmail/cf/mailer/uucp.m42
-rw-r--r--contrib/sendmail/cf/ostype/a-ux.m42
-rw-r--r--contrib/sendmail/cf/ostype/aix3.m42
-rw-r--r--contrib/sendmail/cf/ostype/aix4.m42
-rw-r--r--contrib/sendmail/cf/ostype/aix5.m42
-rw-r--r--contrib/sendmail/cf/ostype/altos.m42
-rw-r--r--contrib/sendmail/cf/ostype/amdahl-uts.m42
-rw-r--r--contrib/sendmail/cf/ostype/bsd4.3.m42
-rw-r--r--contrib/sendmail/cf/ostype/bsd4.4.m42
-rw-r--r--contrib/sendmail/cf/ostype/bsdi.m42
-rw-r--r--contrib/sendmail/cf/ostype/bsdi1.0.m42
-rw-r--r--contrib/sendmail/cf/ostype/bsdi2.0.m42
-rw-r--r--contrib/sendmail/cf/ostype/darwin.m42
-rw-r--r--contrib/sendmail/cf/ostype/dgux.m42
-rw-r--r--contrib/sendmail/cf/ostype/domainos.m42
-rw-r--r--contrib/sendmail/cf/ostype/dynix3.2.m42
-rw-r--r--contrib/sendmail/cf/ostype/freebsd4.m42
-rw-r--r--contrib/sendmail/cf/ostype/freebsd5.m42
-rw-r--r--contrib/sendmail/cf/ostype/gnu.m42
-rw-r--r--contrib/sendmail/cf/ostype/hpux10.m42
-rw-r--r--contrib/sendmail/cf/ostype/hpux11.m42
-rw-r--r--contrib/sendmail/cf/ostype/hpux9.m42
-rw-r--r--contrib/sendmail/cf/ostype/irix4.m42
-rw-r--r--contrib/sendmail/cf/ostype/irix5.m42
-rw-r--r--contrib/sendmail/cf/ostype/irix6.m42
-rw-r--r--contrib/sendmail/cf/ostype/isc4.1.m42
-rw-r--r--contrib/sendmail/cf/ostype/linux.m42
-rw-r--r--contrib/sendmail/cf/ostype/maxion.m42
-rw-r--r--contrib/sendmail/cf/ostype/mklinux.m42
-rw-r--r--contrib/sendmail/cf/ostype/mpeix.m42
-rw-r--r--contrib/sendmail/cf/ostype/nextstep.m42
-rw-r--r--contrib/sendmail/cf/ostype/openbsd.m42
-rw-r--r--contrib/sendmail/cf/ostype/osf1.m42
-rw-r--r--contrib/sendmail/cf/ostype/powerux.m42
-rw-r--r--contrib/sendmail/cf/ostype/ptx2.m42
-rw-r--r--contrib/sendmail/cf/ostype/qnx.m42
-rw-r--r--contrib/sendmail/cf/ostype/riscos4.5.m42
-rw-r--r--contrib/sendmail/cf/ostype/sco-uw-2.1.m42
-rw-r--r--contrib/sendmail/cf/ostype/sco3.2.m42
-rw-r--r--contrib/sendmail/cf/ostype/sinix.m42
-rw-r--r--contrib/sendmail/cf/ostype/solaris2.m42
-rw-r--r--contrib/sendmail/cf/ostype/solaris2.ml.m42
-rw-r--r--contrib/sendmail/cf/ostype/solaris2.pre5.m42
-rw-r--r--contrib/sendmail/cf/ostype/solaris8.m42
-rw-r--r--contrib/sendmail/cf/ostype/sunos3.5.m42
-rw-r--r--contrib/sendmail/cf/ostype/sunos4.1.m42
-rw-r--r--contrib/sendmail/cf/ostype/svr4.m42
-rw-r--r--contrib/sendmail/cf/ostype/ultrix4.m42
-rw-r--r--contrib/sendmail/cf/ostype/unixware7.m42
-rw-r--r--contrib/sendmail/cf/ostype/unknown.m42
-rw-r--r--contrib/sendmail/cf/ostype/uxpds.m42
-rw-r--r--contrib/sendmail/cf/sendmail.schema2
-rw-r--r--contrib/sendmail/cf/sh/makeinfo.sh2
-rw-r--r--contrib/sendmail/contrib/README2
-rw-r--r--contrib/sendmail/contrib/bsdi.mc2
-rwxr-xr-xcontrib/sendmail/contrib/buildvirtuser2
-rw-r--r--contrib/sendmail/contrib/dnsblaccess.m410
-rw-r--r--contrib/sendmail/contrib/link_hash.sh2
-rw-r--r--contrib/sendmail/contrib/qtool.84
-rwxr-xr-xcontrib/sendmail/contrib/qtool.pl2
-rwxr-xr-xcontrib/sendmail/contrib/smcontrol.pl16
-rw-r--r--contrib/sendmail/doc/op/Makefile2
-rw-r--r--contrib/sendmail/doc/op/op.me76
-rw-r--r--contrib/sendmail/editmap/Makefile2
-rw-r--r--contrib/sendmail/editmap/editmap.84
-rw-r--r--contrib/sendmail/editmap/editmap.c2
-rw-r--r--contrib/sendmail/include/libmilter/mfapi.h5
-rw-r--r--contrib/sendmail/include/libmilter/mfdef.h2
-rw-r--r--contrib/sendmail/include/libmilter/milter.h2
-rw-r--r--contrib/sendmail/include/libsmdb/smdb.h5
-rw-r--r--contrib/sendmail/include/sendmail/mailstats.h2
-rw-r--r--contrib/sendmail/include/sendmail/pathnames.h4
-rw-r--r--contrib/sendmail/include/sendmail/sendmail.h2
-rw-r--r--contrib/sendmail/include/sm/assert.h2
-rw-r--r--contrib/sendmail/include/sm/bitops.h2
-rw-r--r--contrib/sendmail/include/sm/cdefs.h2
-rw-r--r--contrib/sendmail/include/sm/cf.h2
-rw-r--r--contrib/sendmail/include/sm/clock.h2
-rw-r--r--contrib/sendmail/include/sm/conf.h9
-rw-r--r--contrib/sendmail/include/sm/config.h2
-rw-r--r--contrib/sendmail/include/sm/debug.h2
-rw-r--r--contrib/sendmail/include/sm/errstring.h2
-rw-r--r--contrib/sendmail/include/sm/exc.h2
-rw-r--r--contrib/sendmail/include/sm/fdset.h2
-rw-r--r--contrib/sendmail/include/sm/gen.h2
-rw-r--r--contrib/sendmail/include/sm/heap.h2
-rw-r--r--contrib/sendmail/include/sm/io.h2
-rw-r--r--contrib/sendmail/include/sm/ldap.h2
-rw-r--r--contrib/sendmail/include/sm/limits.h2
-rw-r--r--contrib/sendmail/include/sm/mbdb.h8
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_aix.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_freebsd.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_hp.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_irix.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_linux.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_mpeix.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_next.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_openbsd.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_openunix.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_osf1.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_sunos.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_ultrix.h2
-rw-r--r--contrib/sendmail/include/sm/os/sm_os_unixware.h2
-rw-r--r--contrib/sendmail/include/sm/path.h2
-rw-r--r--contrib/sendmail/include/sm/rpool.h2
-rw-r--r--contrib/sendmail/include/sm/setjmp.h2
-rw-r--r--contrib/sendmail/include/sm/shm.h7
-rw-r--r--contrib/sendmail/include/sm/signal.h2
-rw-r--r--contrib/sendmail/include/sm/string.h2
-rw-r--r--contrib/sendmail/include/sm/sysexits.h2
-rw-r--r--contrib/sendmail/include/sm/test.h2
-rw-r--r--contrib/sendmail/include/sm/types.h2
-rw-r--r--contrib/sendmail/include/sm/varargs.h2
-rw-r--r--contrib/sendmail/include/sm/xtrap.h2
-rw-r--r--contrib/sendmail/libmilter/Makefile2
-rw-r--r--contrib/sendmail/libmilter/README2
-rw-r--r--contrib/sendmail/libmilter/comm.c2
-rw-r--r--contrib/sendmail/libmilter/docs/index.html2
-rw-r--r--contrib/sendmail/libmilter/docs/overview.html2
-rw-r--r--contrib/sendmail/libmilter/docs/sample.html672
-rw-r--r--contrib/sendmail/libmilter/docs/smfi_addheader.html25
-rw-r--r--contrib/sendmail/libmilter/docs/smfi_chgheader.html25
-rw-r--r--contrib/sendmail/libmilter/engine.c2
-rw-r--r--contrib/sendmail/libmilter/handler.c10
-rw-r--r--contrib/sendmail/libmilter/libmilter.h3
-rw-r--r--contrib/sendmail/libmilter/listener.c119
-rw-r--r--contrib/sendmail/libmilter/main.c26
-rw-r--r--contrib/sendmail/libmilter/signal.c2
-rw-r--r--contrib/sendmail/libmilter/sm_gethost.c2
-rw-r--r--contrib/sendmail/libmilter/smfi.c3
-rw-r--r--contrib/sendmail/libsm/Makefile2
-rw-r--r--contrib/sendmail/libsm/README2
-rw-r--r--contrib/sendmail/libsm/assert.c2
-rw-r--r--contrib/sendmail/libsm/assert.html2
-rw-r--r--contrib/sendmail/libsm/b-strcmp.c2
-rw-r--r--contrib/sendmail/libsm/b-strl.c2
-rw-r--r--contrib/sendmail/libsm/cdefs.html4
-rw-r--r--contrib/sendmail/libsm/cf.c2
-rw-r--r--contrib/sendmail/libsm/clock.c2
-rw-r--r--contrib/sendmail/libsm/clrerr.c2
-rw-r--r--contrib/sendmail/libsm/config.c2
-rw-r--r--contrib/sendmail/libsm/debug.c2
-rw-r--r--contrib/sendmail/libsm/debug.html2
-rw-r--r--contrib/sendmail/libsm/errstring.c2
-rw-r--r--contrib/sendmail/libsm/exc.c2
-rw-r--r--contrib/sendmail/libsm/exc.html2
-rw-r--r--contrib/sendmail/libsm/fclose.c2
-rw-r--r--contrib/sendmail/libsm/feof.c2
-rw-r--r--contrib/sendmail/libsm/ferror.c2
-rw-r--r--contrib/sendmail/libsm/fflush.c2
-rw-r--r--contrib/sendmail/libsm/fget.c2
-rw-r--r--contrib/sendmail/libsm/findfp.c2
-rw-r--r--contrib/sendmail/libsm/flags.c2
-rw-r--r--contrib/sendmail/libsm/fopen.c2
-rw-r--r--contrib/sendmail/libsm/fpos.c2
-rw-r--r--contrib/sendmail/libsm/fprintf.c2
-rw-r--r--contrib/sendmail/libsm/fpurge.c2
-rw-r--r--contrib/sendmail/libsm/fput.c2
-rw-r--r--contrib/sendmail/libsm/fread.c2
-rw-r--r--contrib/sendmail/libsm/fscanf.c2
-rw-r--r--contrib/sendmail/libsm/fseek.c2
-rw-r--r--contrib/sendmail/libsm/fvwrite.c2
-rw-r--r--contrib/sendmail/libsm/fvwrite.h2
-rw-r--r--contrib/sendmail/libsm/fwalk.c2
-rw-r--r--contrib/sendmail/libsm/fwrite.c2
-rw-r--r--contrib/sendmail/libsm/gen.html2
-rw-r--r--contrib/sendmail/libsm/get.c2
-rw-r--r--contrib/sendmail/libsm/glue.h2
-rw-r--r--contrib/sendmail/libsm/heap.c2
-rw-r--r--contrib/sendmail/libsm/heap.html2
-rw-r--r--contrib/sendmail/libsm/index.html2
-rw-r--r--contrib/sendmail/libsm/io.html2
-rw-r--r--contrib/sendmail/libsm/ldap.c2
-rw-r--r--contrib/sendmail/libsm/local.h2
-rw-r--r--contrib/sendmail/libsm/makebuf.c2
-rw-r--r--contrib/sendmail/libsm/match.c2
-rw-r--r--contrib/sendmail/libsm/mbdb.c15
-rw-r--r--contrib/sendmail/libsm/mpeix.c6
-rw-r--r--contrib/sendmail/libsm/niprop.c2
-rw-r--r--contrib/sendmail/libsm/path.c2
-rw-r--r--contrib/sendmail/libsm/put.c2
-rw-r--r--contrib/sendmail/libsm/refill.c2
-rw-r--r--contrib/sendmail/libsm/rewind.c2
-rw-r--r--contrib/sendmail/libsm/rpool.c2
-rw-r--r--contrib/sendmail/libsm/rpool.html2
-rw-r--r--contrib/sendmail/libsm/setvbuf.c2
-rw-r--r--contrib/sendmail/libsm/shm.c2
-rw-r--r--contrib/sendmail/libsm/signal.c2
-rw-r--r--contrib/sendmail/libsm/smstdio.c2
-rw-r--r--contrib/sendmail/libsm/snprintf.c2
-rw-r--r--contrib/sendmail/libsm/sscanf.c2
-rw-r--r--contrib/sendmail/libsm/stdio.c2
-rw-r--r--contrib/sendmail/libsm/strcasecmp.c2
-rw-r--r--contrib/sendmail/libsm/strdup.c2
-rw-r--r--contrib/sendmail/libsm/strerror.c2
-rw-r--r--contrib/sendmail/libsm/strexit.c2
-rw-r--r--contrib/sendmail/libsm/string.c2
-rw-r--r--contrib/sendmail/libsm/stringf.c2
-rw-r--r--contrib/sendmail/libsm/strio.c2
-rw-r--r--contrib/sendmail/libsm/strl.c2
-rw-r--r--contrib/sendmail/libsm/strrevcmp.c2
-rw-r--r--contrib/sendmail/libsm/strto.c2
-rw-r--r--contrib/sendmail/libsm/syslogio.c2
-rw-r--r--contrib/sendmail/libsm/t-cf.c2
-rw-r--r--contrib/sendmail/libsm/t-event.c2
-rw-r--r--contrib/sendmail/libsm/t-exc.c2
-rw-r--r--contrib/sendmail/libsm/t-float.c2
-rw-r--r--contrib/sendmail/libsm/t-fopen.c2
-rw-r--r--contrib/sendmail/libsm/t-heap.c2
-rw-r--r--contrib/sendmail/libsm/t-match.c2
-rw-r--r--contrib/sendmail/libsm/t-path.c2
-rw-r--r--contrib/sendmail/libsm/t-rpool.c2
-rw-r--r--contrib/sendmail/libsm/t-scanf.c2
-rw-r--r--contrib/sendmail/libsm/t-shm.c2
-rw-r--r--contrib/sendmail/libsm/t-smstdio.c2
-rw-r--r--contrib/sendmail/libsm/t-string.c2
-rw-r--r--contrib/sendmail/libsm/t-strio.c2
-rw-r--r--contrib/sendmail/libsm/t-strl.c2
-rw-r--r--contrib/sendmail/libsm/t-strrevcmp.c2
-rw-r--r--contrib/sendmail/libsm/t-types.c2
-rw-r--r--contrib/sendmail/libsm/test.c2
-rw-r--r--contrib/sendmail/libsm/ungetc.c2
-rw-r--r--contrib/sendmail/libsm/vasprintf.c2
-rw-r--r--contrib/sendmail/libsm/vfprintf.c2
-rw-r--r--contrib/sendmail/libsm/vfscanf.c2
-rw-r--r--contrib/sendmail/libsm/vprintf.c2
-rw-r--r--contrib/sendmail/libsm/vsnprintf.c2
-rw-r--r--contrib/sendmail/libsm/vsprintf.c2
-rw-r--r--contrib/sendmail/libsm/vsscanf.c2
-rw-r--r--contrib/sendmail/libsm/wbuf.c2
-rw-r--r--contrib/sendmail/libsm/wsetup.c2
-rw-r--r--contrib/sendmail/libsm/xtrap.c2
-rw-r--r--contrib/sendmail/libsmdb/Makefile2
-rw-r--r--contrib/sendmail/libsmdb/smdb.c18
-rw-r--r--contrib/sendmail/libsmdb/smdb1.c8
-rw-r--r--contrib/sendmail/libsmdb/smdb2.c12
-rw-r--r--contrib/sendmail/libsmdb/smndbm.c4
-rw-r--r--contrib/sendmail/libsmutil/Makefile2
-rw-r--r--contrib/sendmail/libsmutil/cf.c6
-rw-r--r--contrib/sendmail/libsmutil/debug.c2
-rw-r--r--contrib/sendmail/libsmutil/err.c2
-rw-r--r--contrib/sendmail/libsmutil/lockfile.c2
-rw-r--r--contrib/sendmail/libsmutil/safefile.c22
-rw-r--r--contrib/sendmail/libsmutil/snprintf.c2
-rw-r--r--contrib/sendmail/mail.local/Makefile2
-rw-r--r--contrib/sendmail/mail.local/README2
-rw-r--r--contrib/sendmail/mail.local/mail.local.84
-rw-r--r--contrib/sendmail/mail.local/mail.local.c6
-rw-r--r--contrib/sendmail/mailstats/Makefile2
-rw-r--r--contrib/sendmail/mailstats/mailstats.811
-rw-r--r--contrib/sendmail/mailstats/mailstats.c31
-rw-r--r--contrib/sendmail/makemap/Makefile2
-rw-r--r--contrib/sendmail/makemap/makemap.84
-rw-r--r--contrib/sendmail/makemap/makemap.c2
-rw-r--r--contrib/sendmail/praliases/Makefile2
-rw-r--r--contrib/sendmail/praliases/praliases.84
-rw-r--r--contrib/sendmail/praliases/praliases.c2
-rw-r--r--contrib/sendmail/rmail/Makefile2
-rw-r--r--contrib/sendmail/rmail/rmail.84
-rw-r--r--contrib/sendmail/rmail/rmail.c2
-rw-r--r--contrib/sendmail/smrsh/Makefile2
-rw-r--r--contrib/sendmail/smrsh/README2
-rw-r--r--contrib/sendmail/smrsh/smrsh.86
-rw-r--r--contrib/sendmail/smrsh/smrsh.c42
-rw-r--r--contrib/sendmail/src/Makefile2
-rw-r--r--contrib/sendmail/src/Makefile.m45
-rw-r--r--contrib/sendmail/src/README6
-rw-r--r--contrib/sendmail/src/SECURITY2
-rw-r--r--contrib/sendmail/src/TRACEFLAGS8
-rw-r--r--contrib/sendmail/src/TUNING2
-rw-r--r--contrib/sendmail/src/alias.c21
-rw-r--r--contrib/sendmail/src/aliases2
-rw-r--r--contrib/sendmail/src/aliases.54
-rw-r--r--contrib/sendmail/src/arpadate.c2
-rw-r--r--contrib/sendmail/src/bf.c21
-rw-r--r--contrib/sendmail/src/bf.h5
-rw-r--r--contrib/sendmail/src/collect.c4
-rw-r--r--contrib/sendmail/src/conf.c59
-rw-r--r--contrib/sendmail/src/conf.h12
-rw-r--r--contrib/sendmail/src/control.c2
-rw-r--r--contrib/sendmail/src/convtime.c2
-rw-r--r--contrib/sendmail/src/daemon.c8
-rw-r--r--contrib/sendmail/src/deliver.c26
-rw-r--r--contrib/sendmail/src/domain.c8
-rw-r--r--contrib/sendmail/src/envelope.c4
-rw-r--r--contrib/sendmail/src/err.c2
-rw-r--r--contrib/sendmail/src/headers.c2
-rw-r--r--contrib/sendmail/src/helpfile2
-rw-r--r--contrib/sendmail/src/macro.c2
-rw-r--r--contrib/sendmail/src/mailq.16
-rw-r--r--contrib/sendmail/src/main.c10
-rw-r--r--contrib/sendmail/src/map.c78
-rw-r--r--contrib/sendmail/src/mci.c8
-rw-r--r--contrib/sendmail/src/milter.c2
-rw-r--r--contrib/sendmail/src/mime.c5
-rw-r--r--contrib/sendmail/src/newaliases.14
-rw-r--r--contrib/sendmail/src/parseaddr.c2
-rw-r--r--contrib/sendmail/src/queue.c44
-rw-r--r--contrib/sendmail/src/readcf.c10
-rw-r--r--contrib/sendmail/src/recipient.c12
-rw-r--r--contrib/sendmail/src/sasl.c80
-rw-r--r--contrib/sendmail/src/savemail.c15
-rw-r--r--contrib/sendmail/src/sendmail.89
-rw-r--r--contrib/sendmail/src/sendmail.h42
-rw-r--r--contrib/sendmail/src/sfsasl.c15
-rw-r--r--contrib/sendmail/src/sfsasl.h2
-rw-r--r--contrib/sendmail/src/shmticklib.c2
-rw-r--r--contrib/sendmail/src/sm_resolve.c2
-rw-r--r--contrib/sendmail/src/sm_resolve.h2
-rw-r--r--contrib/sendmail/src/srvrsmtp.c234
-rw-r--r--contrib/sendmail/src/stab.c2
-rw-r--r--contrib/sendmail/src/stats.c4
-rw-r--r--contrib/sendmail/src/statusd_shm.h2
-rw-r--r--contrib/sendmail/src/sysexits.c2
-rw-r--r--contrib/sendmail/src/timers.c2
-rw-r--r--contrib/sendmail/src/timers.h2
-rw-r--r--contrib/sendmail/src/tls.c2
-rw-r--r--contrib/sendmail/src/trace.c2
-rw-r--r--contrib/sendmail/src/udb.c4
-rw-r--r--contrib/sendmail/src/usersmtp.c301
-rw-r--r--contrib/sendmail/src/util.c8
-rw-r--r--contrib/sendmail/src/version.c4
-rw-r--r--contrib/sendmail/test/Makefile2
-rw-r--r--contrib/sendmail/test/README2
-rw-r--r--contrib/sendmail/test/Results2
-rw-r--r--contrib/sendmail/test/t_dropgid.c2
-rw-r--r--contrib/sendmail/test/t_exclopen.c2
-rw-r--r--contrib/sendmail/test/t_pathconf.c2
-rw-r--r--contrib/sendmail/test/t_seteuid.c2
-rw-r--r--contrib/sendmail/test/t_setgid.c2
-rw-r--r--contrib/sendmail/test/t_setreuid.c2
-rw-r--r--contrib/sendmail/test/t_setuid.c2
-rw-r--r--contrib/sendmail/test/t_snprintf.c2
-rw-r--r--contrib/sendmail/vacation/Makefile2
-rw-r--r--contrib/sendmail/vacation/vacation.14
-rw-r--r--contrib/sendmail/vacation/vacation.c73
453 files changed, 2364 insertions, 1117 deletions
diff --git a/contrib/sendmail/FAQ b/contrib/sendmail/FAQ
index deb0798010dc..f8c2e8409ceb 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 8bacacaa4be0..19a60c69d17b 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 f8da3ddf74c6..81ea244d2a22 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 d48fc30e1c03..e466568a2201 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 217e59b72ba6..97b2afc54c50 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 10fcb1ab764e..11654e967861 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 a7c47e3a1819..8fb91a020553 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 8b3382314779..cf6855aecc2e 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 7ee514bbd416..3c7b7d5a6735 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 8502a6474247..9a69a1805af0 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 e61e21a91dae..d0ac86559d6c 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 6c9de63004ff..bb335a49096d 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 d167272bf25c..ecdbddf2a482 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 bcf2ee4918c5..f384b5f7a0c9 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 a6e7bc956a10..664377e5eaf3 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 547e47bfc90f..09d6e49160b3 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 9830ab9c8760..c802b50f8923 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 2edfde80e6c0..6263e118e042 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 03cb5ff47079..7669823bf33d 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 9499c4439cfc..8fa00ceee8fc 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 f1bf136d405c..18ea8b3b8766 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 2439ea8c7244..deed5f14bcff 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 4514e1d2592b..739207c71449 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 69b850168d20..f86e2630823a 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 3af4a76b4660..fa5c57456afa 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 3f85c35c2ff6..14b46d387df0 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 f841cc04c7b0..9cd4e77b6a24 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 ea78bc39dc7f..5f82340e9121 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 fa244a118fff..a27d099e0442 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 3c1bccedb0b5..913edb58603f 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 98ec21572852..117a236af0f9 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 33bf1f1d58fe..6c370fdc7fa1 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 94f73151b5e1..6bd778258c1d 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 b7688e7d0619..bf7d4081ccf2 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 805fc82dcbe8..0414e4c3fa89 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 9e5c31b502da..c3b3e0da0eb0 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 10f5efb2c352..6ec08feae87f 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 8fea7124c0d1..4bf493979584 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 02acf4203d8a..fe909626b4f3 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 0ca0128068fd..2ab5972eb7a9 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 30495108f2ad..969cb71f2ec6 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 e6a2a64e260c..26b2ce095d77 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 cdcd2dd8feb7..235d9aa25bca 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 9800567c8523..134c8f41b9ed 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 ea6977bdc253..3fb48e131e74 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 891228f4e676..d0fee24763ef 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 876f111e20d8..181ced1451cb 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 c2ff476d613f..41a21ade2e1b 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 6de394e4029f..9a019ce8b4d8 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 8fbe90a946f4..b9a73b9b0422 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 63176364e3f8..caa5a8845fa8 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 df05af772634..4c39884935bf 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 6b1a65d753ab..a54507c75498 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 9745b1da1c23..796cc13219d2 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 6630d079187f..aa264f961d27 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 9c8dc1d1537a..a29956a635b4 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 ec2e67a243fd..3533d3067946 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 7b07b3fd8db9..911d2b542192 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 ba5adb2e0725..3232be80d316 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 8480fb28fbff..d6218d119401 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 3aa4873cfe97..a6125edf2516 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 ec95868399be..151df956668f 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 5ffc6a36dac9..7389646bec1a 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 2f589f06225a..b04b4971b863 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 64f27aeeb72b..c713153b637f 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 6fdae52d5b46..fab586af110c 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 d553998aef40..c20022a91850 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 7c0241d367c6..72a6e2643da7 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 1e0fc0b32ff8..f86ebd4567c9 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 1a6365496842..f3c371b9384f 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 4d9d4cf5611b..de2300f2f0e5 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 c567df177453..29bb98023e9b 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 5de41fbbe339..f8c2a31f3022 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 e6261c25956c..abd1b9c9ff68 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 12359883ade2..e4dcd701cd41 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 aaf5e3d8fdf5..e2bcc650616e 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 488c5a068f2e..74d3aa056096 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 eebaae64a300..f4bc64a9d733 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 e9b1934b77af..5a053399fc35 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 fec06adcd888..05baa7a47b45 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 e284ca340df5..c5acadf7eceb 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 b37153c42ec9..1cecca5f13e3 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 6b28a823cce4..a03104964dd2 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 a6364c1f5e1f..8f35ca1c167f 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 1e836877fb50..bb603a607ba4 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 e301b51ab302..837da99febcb 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 575cbfb349ad..17cb7d1d8b0f 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 82cdd5a87ebb..06715a0f3f8f 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 9ed2e461e212..e167865efefa 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 f2bc12bddb5d..872680a480f5 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 4c134c35f876..a720b167f279 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 73f744cb7242..867d4eda6408 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 343712b250a9..9858eb8e3b90 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 13eb764352c1..44bcbd670ec5 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 7399fecce091..2159ff8580a0 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 754943db69ce..1e95be44bcc2 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 2fc5c2cbcf4d..9e372ec567ca 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 a62c9d3c4271..7058cab1417d 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 1f77deaa25eb..4d23229135f6 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 00f8211781ff..5a1d9f0e9fab 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 981e5acdcc2d..d9c628f5fbaf 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 b258b2e9f441..9b0e76a2eb43 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 ba960594be31..4f5712b1df88 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 c25680ca06d3..708a095dcc7b 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 51bf84e77755..ab8b457028f0 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 1e9c6b2e6934..99021202a0d8 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 bc588fb9cfc6..cca7f8e6885b 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 000000000000..2a40a23d4e07
--- /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 edb408c2eea6..4e2116e65362 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 566dad812f96..c1946c97490b 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 114d7bcc73b7..14bc794584f8 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 0b8894bd8056..58b71b07a20a 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 aaad8a597c83..d2680e1cae9d 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 b40d914702f6..103e042a7ccc 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 2af94ff47eae..b0d9d51eb0f9 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 64e8eee5d66a..2bf5a82e259a 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 1703cb1c34a4..d3ae38b94293 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 410ba4c60902..6513556079a9 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 5fa5b4854277..c4d4321bc38b 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 8d47f2914aa9..4376f6770a00 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 32c7fa3b823a..8e0b9d44ab8f 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 c865fbf64849..e8df77e30ac1 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 73419092a41d..1cffe1e8d2d9 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 d32241a2090e..edd3a5db86a7 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 43f87433fd59..044f205ff9e4 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 3fd91dfb1de6..3f7b0891de2c 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 6857f85ef1bd..35679bcf1c41 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 607794cad815..b806a37a33ac 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 fd0e154014ad..493406fd37f9 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 de64a4e49d72..09d58480a399 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 4d5ada2049a6..335aedac8948 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 27227bad60ee..759459d3270a 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 4c8264c90000..e0729531e8ee 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 0a2ffecc57b7..b84a1e2e5452 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 e2046c036ae5..eb7a73a0d5be 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 52df14105ffe..39e8171cac91 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 d1ac2cc80259..290c0c682d83 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 4cfa61bdeee1..94e2e98f1d7c 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 34f50dc9df52..902d39a655a2 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 1784e723f691..f966458f9d11 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 4ff0f481bd91..dda4bf45c1a4 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 abb9ae679e33..839e3873ef87 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 483987f8368c..a124643a5e54 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 96201e0c68f8..b02ad29ee8e0 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 26b2fbdabda0..6f9a48ecbcfa 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 a8d7885441d2..90b7d2da3098 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 d464d56876fe..9e760e94e5f4 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 342f36993116..0c528931233f 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 3d733a667329..aaeb615e502c 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 08e25da10c6a..dd13963a298f 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 8ce81ec06cfb..4646fe3ee2e0 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 f9f92416ff41..84e83963f9a1 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 7391d851f5f8..5fb3b08e14c0 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 dbe0d3033304..f8069383aaf7 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 029ca0963a76..8fe1b84a7914 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 1a18d90b2ae3..89ac63765373 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 146d2986bd8d..bcd6b31826bb 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 0b35ad263aaa..6cf14846d93e 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 0702bfb4a0b1..72cb72923e95 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 408f9d0ca0c1..c30dda60df6f 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 aea4e83e9ce5..10b9d37bd6ed 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 987eaf61e7b1..d1d776ec348c 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 781eb8dbc41c..1e821ffe2c7e 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 eee72ccf30f5..3f7706b47703 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 5582dc7f0fb7..128c61af3a7d 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 fc9591ba2fa4..d42f8aba9a01 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 0483910b306a..2d5734ca8e80 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 f89ee0ff7c42..1ba0346d3945 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 98861abf881b..bab47e8c65fd 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 ef9dd7353260..d38fd52ab8a7 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 7e7b9bd63d22..1098f48ea52b 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 c096ce29ec4b..5175a34a3030 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 11d9cefd137b..dcf6d4424452 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 0a08a3a1f96a..c9a5f7e61ff3 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 056c01d0fce1..843c920d62c2 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 cf4e55131744..fbc90fac466d 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 e5a5c901a083..08f808bb9914 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 a69fb278ea45..4987460e4d4e 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 457ef0563623..09f459234a84 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 2325994ddd66..8d14002f0b65 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 85ba31f748f6..965e0293bcdd 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 384cd1f0f74e..9b450c5b242d 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 4d1a6e2f61e2..fe7c2d982843 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 b3fede3b2ef8..9cf07c753ad3 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 ad70013b2a9e..649e98d4c694 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 08afce69c267..d9378faf5c25 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 c95c02eaf29b..0c7f97dba72f 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 ebee2c18c6a3..9a8a6350cc3b 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 fd38e6166168..cbf5f4a60675 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 16ff2a1e5570..bbd3177a8a89 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 677d72caeec6..6b8653620c68 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 a011e665228c..44778ba8b2b8 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 86a46f945736..bb5e4c1bb343 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 1a052ae74faf..3869210f6bc3 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 acc32101fb5e..b0dfb4388a58 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 0cf376f74fc8..12688eaad103 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 6d503c09dcc0..791a525326a2 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 52bec4338a7e..eba29ad25013 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 c62dfcf5bdc7..c5447d119e31 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 d2cf1ed38045..afcb1252b515 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 a7b9e01da167..6f13411a2342 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 74aaf0729d6a..61b6e1b8f34d 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 ecd9039b71ba..8b5637015375 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 a4f22672c9c2..48b358df21a5 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 8fc8bf5906e6..dfa0463b6266 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 183280581e40..5041db317f32 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 ee26e5380b83..010e50c62bad 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 7ec44432da7d..6dc4a5416ff7 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 386c099c90f8..3ba61fd5460a 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 84efc0c6a853..2cbcb5779089 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 de0a94320e76..185485a9e140 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 a32a17c56b0d..f232c497b1ed 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 b5fae5532e41..385f1f42df8b 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 14ed2dbee9c4..03f886ea0324 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 3363aa7ad7d7..1acf12d85987 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 3d0b72acb906..3e696bafe6bf 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 6667c7a0dcb2..eef239cd5c54 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 181589c6bd2a..9d20b18be617 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 5155a193ba22..1ae2db15b2ab 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 0756e297f015..2ff5ad09ca28 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 c2f030b8bc33..29fc4ca46618 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 e8e2d21f7fd6..e750fcb7d3fd 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 44629a0e2b63..01bda0222acf 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 6785465deb0e..6375dfc9a55c 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 994b836ab65b..3821deb2bb62 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 c9606629883c..c8cb59f690e9 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 e192ddb71014..750def18a5b2 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 bdc97452fbf0..1d700d7fc6b7 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 a14d57164a4b..625a90e7b1e1 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 27b0b21f1165..7d2b5cadde60 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 2b12396df622..2e7e71721b2f 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 3a3e958319a4..04277eb6e2c9 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 601021cec491..f38f68a80715 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 6ff392db5095..0bf7e5c0010d 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 3570ad59e4a3..44c5f902769c 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 4a46866f0278..7f1c0361ab78 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 7e9970408324..879258c39df0 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 &lt;sys/types.h&gt;
+#include &lt;sys/stat.h&gt;
+#include &lt;errno.h&gt;
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;string.h&gt;
-#include &lt;sys/types.h&gt;
-#include &lt;sys/stat.h&gt;
#include &lt;sysexits.h&gt;
#include &lt;unistd.h&gt;
-#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-&gt;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-&gt;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-&gt;mlfi_helofrom)
- free(priv-&gt;mlfi_helofrom);
- priv-&gt;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-&gt;mlfi_helofrom != NULL)
+ free(priv-&gt;mlfi_helofrom);
+ priv-&gt;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-&gt;mlfi_fname = strdup("/tmp/msg.XXXXXX");
- mkstemp(priv-&gt;mlfi_fname);
- if (priv-&gt;mlfi_fname == NULL)
- return SMFIS_TEMPFAIL;
- if ((priv-&gt;mlfi_fp = fopen(priv-&gt;mlfi_fname, "w+")) == NULL)
- {
- free(priv-&gt;mlfi_fname);
- return SMFIS_TEMPFAIL;
- }
-
- /* count the arguments */
- while(*argv++) ++argc;
- /* log the connection information we stored earlier: */
- if(fprintf(priv-&gt;mlfi_fp, "Connect from %s (%s)\n\n",
- priv-&gt;mlfi_helofrom, priv-&gt;mlfi_connectfrom) == EOF) {
- (void) mlfi_cleanup(ctx, FALSE);
- return SMFIS_TEMPFAIL;
- }
- /* log the sender */
- if(fprintf(priv-&gt;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-&gt;mlfi_fname = strdup("/tmp/msg.XXXXXX")) == NULL)
+ {
+ (void) mlfi_cleanup(ctx, FALSE);
+ return SMFIS_TEMPFAIL;
+ }
+
+ if (mkstemp(priv-&gt;mlfi_fname) == -1)
+ {
+ (void) mlfi_cleanup(ctx, FALSE);
+ return SMFIS_TEMPFAIL;
+ }
+
+ if ((priv-&gt;mlfi_fp = fopen(priv-&gt;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-&gt;mlfi_fp, "Connect from %s (%s)\n\n",
+ priv-&gt;mlfi_helofrom, priv-&gt;mlfi_connectfrom) == EOF)
+ {
+ (void) mlfi_cleanup(ctx, FALSE);
+ return SMFIS_TEMPFAIL;
+ }
+ /* log the sender */
+ if (fprintf(priv-&gt;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-&gt;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-&gt;mlfi_fp, "RCPT %s -- REJECTED\n",
+ rcptaddr) == EOF)
+ {
+ (void) mlfi_cleanup(ctx, FALSE);
+ return SMFIS_TEMPFAIL;
+ }
+ return SMFIS_REJECT;
+ }
+ if (fprintf(priv-&gt;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-&gt;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-&gt;mlfi_fp, "%s: %s\n", headerf, headerv);
+ /* write the header to the log file */
+ if (fprintf(MLFIPRIV-&gt;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-&gt;mlfi_fp, "\n");
+ /* output the blank line between the header and the body */
+ if (fprintf(MLFIPRIV-&gt;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-&gt;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-&gt;mlfi_fp) != 1)
+ {
+ /* write failed */
+ fprintf(stderr, "Couldn't write file %s: %s\n",
+ priv-&gt;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-&gt;mlfi_fp != NULL && fclose(priv-&gt;mlfi_fp) == EOF)
- {
- /* failed; we have to wait until later */
- fprintf(stderr, "Couldn't close archive file %s: %s\n",
- priv-&gt;mlfi_fname, strerror(errno));
- rstat = SMFIS_TEMPFAIL;
- (void) unlink(priv-&gt;mlfi_fname);
- }
- else if (ok)
- {
- /* add a header to the message announcing our presence */
- if (gethostname(host, sizeof host) &lt; 0)
- strncpy(host, "localhost", sizeof host);
- p = strrchr(priv-&gt;mlfi_fname, '/');
- if (p == NULL)
- p = priv-&gt;mlfi_fname;
+ /* close the archive file */
+ if (priv-&gt;mlfi_fp != NULL && fclose(priv-&gt;mlfi_fp) == EOF)
+ {
+ /* failed; we have to wait until later */
+ fprintf(stderr, "Couldn't close archive file %s: %s\n",
+ priv-&gt;mlfi_fname, strerror(errno));
+ rstat = SMFIS_TEMPFAIL;
+ (void) unlink(priv-&gt;mlfi_fname);
+ }
+ else if (ok)
+ {
+ /* add a header to the message announcing our presence */
+ if (gethostname(host, sizeof host) &lt; 0)
+ snprintf(host, sizeof host, "localhost");
+ p = strrchr(priv-&gt;mlfi_fname, '/');
+ if (p == NULL)
+ p = priv-&gt;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-&gt;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-&gt;mlfi_fname);
- rstat = SMFIS_TEMPFAIL;
- (void) unlink(priv-&gt;mlfi_fname);
- }
-
- /* release private memory */
- free(priv-&gt;mlfi_fname);
-
- /* return status */
- return rstat;
+ {
+ /* message was aborted -- delete the archive file */
+ fprintf(stderr, "Message aborted. Removing %s\n",
+ priv-&gt;mlfi_fname);
+ rstat = SMFIS_TEMPFAIL;
+ (void) unlink(priv-&gt;mlfi_fname);
+ }
+
+ /* release private memory */
+ if (priv-&gt;mlfi_fname != NULL)
+ free(priv-&gt;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-&gt;mlfi_connectfrom)
- free(priv-&gt;mlfi_connectfrom);
- if(priv-&gt;mlfi_helofrom)
- free(priv-&gt;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-&gt;mlfi_connectfrom != NULL)
+ free(priv-&gt;mlfi_connectfrom);
+ if (priv-&gt;mlfi_helofrom != NULL)
+ free(priv-&gt;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 c6417e26f668..6f852aebf6ec 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 4969674fb803..89ce6f26ebfa 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 6c575a9983e6..74140720352b 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 b18a22bf830a..a7b47603a2f8 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 65b387541a74..fedc24f90e9a 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 3661488c7b7d..03d8acd34e68 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 345741a5b453..92690cd7cb14 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 514afb6e0ec2..43a85675e53e 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 96aaf604aefa..171474135c8c 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 666673b0aaed..032a6acb288f 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 a71d1173633c..c6c1a293d5b8 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 b829b3aa276b..d75d55f8ea87 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 04bebf10c656..efad1ec14e40 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 6515ac2d5401..a3251998db6b 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 af5335eb915a..a713bc619d10 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 2a5206e20f8b..a6961542201e 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 bf8cb63c61fd..33e45acfd3e6 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 aeebba763cdf..d2178753ceda 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 b952859b8f18..ada9689980af 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 01478249b952..5b1a8a80aecf 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 acf26cb086e0..53cbe3dca4ef 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 ebaee2dd953d..37e5e829cb31 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 b7f1b9c73a15..a9b184af7c05 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 a90efc56700b..29aaade880ae 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 074879610195..9cc1c6fa0969 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 d0905f3fe9ef..a2990363ce8c 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 a2e8fbaaf5ed..2de1413196a3 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 89a52c33fbb6..8d5e0d8fcd03 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 095949055d1b..9487479a2204 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 154d5fe8eb8f..83b318e25990 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 2ad7c97d9b63..611748c6eca1 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 a885e69d9196..115ed22fa85b 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 37f2a63c6fc6..b3877f12cccc 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 b76b185ecce7..a2fae9d9109d 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 6936ed0a481c..a8083fd86fc0 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 50fa9971b695..71938729c6d9 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 8b5d54728ed9..4e6fd5a106b2 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 1b691610eb78..3c5e11c7ee77 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 b0ec2177a1f9..1e651fdc4972 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 5947f86ad2d5..5e1fcfde795b 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 de4532c74983..6985e0d1dca7 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 234197841e2f..a692781bab35 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 c35fa48c234f..a1344c0bf465 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 ee60dee372cd..b878c1a933f3 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 a60a2038a419..372f75dfe9bc 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 31bc98ad8cbb..cf642ae88b46 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 b7faf70373b6..74549fe47241 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 1d6b11083268..db8c1018a5fb 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 1039ee1e95bd..50bb63161154 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 c5d867351b41..bc32b012e757 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 cba9260c9566..f2eec16e6c07 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 58a33811cc76..5bb7c32dbc1f 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 3908c4660b6d..3e85a87664e0 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 c816db6942e7..943321363c22 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 492ad10392f4..044de8c36f72 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 a5e563567f6c..e42b865a39ea 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 d2eeea2a3137..9e1ec639bb6f 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 9583ab5dd307..6d9fedcdf626 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 eae639e9f40b..ad58867cf013 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 4c82c234aca2..6932e1f2950a 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 05fbad03661d..d513b98b3ccd 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 da9d83517136..10c7cde2eb79 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 e398bcb504c8..597c6dbc3751 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 6ab573dfa580..863216660f7b 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 e2ff415e003b..f796bc043aa8 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 2b6c08afbeec..172a767b8535 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 b622c51e5b3e..35ae02856a6e 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 284e75a27d96..9061efc6a2ff 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 0126ac1937b9..879fcd25f400 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 3cea818215b5..5ee3006e6ed5 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 fb485447408e..168bcfdddd69 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 207164b8ebc7..c3ab72d0124b 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 c2fb58e86e96..15f5ce8f8711 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 2196359fa155..64fe5c2a9a9c 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 b0b2df87ea4a..ffdfb2182bc3 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 2626b0749de1..0f2cdfc6cdfe 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 892aa41ec765..b0b69756997c 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 cdab93edc48f..b6a7f6635672 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 6925f596f2e2..2b7e9d0cfe96 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 bba995033d38..ec9a81be266c 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 2490927099f6..d0ed630eacbd 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 aafb3d5e46d3..87e84bfeaa56 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 e524710eeacd..24fa3a23b313 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 b42f8ce5254a..90785144fbfd 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 9b054abfe2e1..607377617c83 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 eb5fd440c78e..a6922e041628 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 06a48d4d0e74..f3f059b1a1e1 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 6296d9c81609..2d3839a34d9a 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 05811bb579de..7ddb60d2ccb1 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 c92052fbbdbe..d2776c02a2b1 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 2a53c8abb929..fa6e3453b235 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 f3553a08bc7a..b671a4b4be81 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 9f7a87410fcf..b3ca0bd8aaef 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 66c008f94343..5da07c1e369b 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 724d2220f51c..3bad1c1b1556 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 3c9fab1988b6..0506e7aa4077 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 7134d95e8135..bb18dae688f7 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 df4e6faf0278..5c118dcbe6d9 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 189b77eae1ae..fb8fb467d042 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 c1f923445cf4..cb07f67571bf 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 376c2bebdcf9..361cc45576a1 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 0d25390189ed..7794af077a92 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 68fa4f464a0f..9b3a12ea00ec 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 e87e2204cbfe..e2115bd813ed 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 5085db4ef573..5a19733191fa 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 bad3ecae9640..6e310efa6fc5 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 59e2b5165c06..18a46358bda5 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 ad7baaa9eb6c..827fcec5a955 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 dd395cb545c2..498f44992e45 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 bf8084588fdc..83855351cec4 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 3004c9d8d63c..400553e17c8c 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 89b4d1c656e0..7495e0994d06 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 3a3e958319a4..0422ed5cb3d7 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 cd47635ffb71..ad0b926b6257 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 c8460a4277a9..a971e5ea7b76 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 3c33fc47d887..9e2e8ed2de2a 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 64fff00ccc45..89ecf631a115 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 7538f2db3cc7..2de323192e3b 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 67feb40469a2..c2132c3f00c8 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 7b34928392b4..2c3b3284ad5a 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 7cd3e4baf7f2..0ad52a4a4a9b 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 2a4d95a0e788..5eca360ce8f9 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 02b218f8e27c..aed40a0482e0 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 11761b493990..ff3aa3b90c7c 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 4455b02e3613..b560a3039df8 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 e1ae2a8eabd4..651de4bc9113 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 d5002e127a46..5cd1c137ec4b 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 56c4f8c64818..9ef3fb574609 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 045394d168b9..6dbcb62430a1 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 c69dc2ec4164..929875b913a8 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 2f8e50595c80..ec56e3a7e5c8 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 045394d168b9..a6960c1d22a8 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 cefc7f5e383f..9faaef7fcb60 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 c48bbd73197c..59c28f627df8 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 185e57dbbe5e..6b6db708f246 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 fb4d1a765385..2c78cacff533 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 5c6a479b42fa..720fa6d2777d 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 bec1ba4193e1..2934322c6bf1 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 d674d683e4db..41aa3394f2a0 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 da99f0f05ad9..cea291fde47f 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 045394d168b9..a9c4af7a2a99 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 989b0c8c65fb..7e22f86bd8f5 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 67fed55bec89..1f3c0a27634f 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 c4119f14a604..843f68beb928 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 85a834417537..c86bbf5e2204 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 8004de423ffa..bb5dc1a2ab07 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 fb5a021dd24c..d24e47b92cbf 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 207eac7e7493..e42c0246f555 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 4ef5504c4779..c64afd1a4c80 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 afeaa05e740f..52da793b6d59 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 4d43908568c5..f5bd74699082 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 532111a802fa..73899d427ded 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 a2e5a64f52cc..62b5dfb55891 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 67f9c14637d6..16082cd259af 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 c70ed8321d16..eb417988a0a3 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 b37b0275ea1a..5a02292c1c51 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 013d10440000..a926d61f0ec6 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 446f46d66c38..4a0a25d4b674 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 4e4d1ade361d..89bdd7ec8457 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 ae975c7e68c4..88ff72f34fc8 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 153605c09ad1..36edc1a0b47f 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 d806938e9402..0b2cd94078be 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 e19025310020..2b1fc4c2190a 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 9d873986cbd5..f48f987fd892 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 000cc2d8deb7..27ad7cb07c69 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 28e99cfeef3a..484af9e85ddd 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 642547d7413d..a56266e7d6bb 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 e6e2c6408ba9..931a06e7d372 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 2cc6b88a0999..fc7a2c277c84 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 2efa319d6cc8..0fae3ad5368d 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 1451acb20d94..78c1862343ce 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 efae0d39ad48..d8570d3762e3 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 e6c48dc0e1a3..b54b13d05e40 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 b1be43e95df3..f52a72500ecf 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 403c239e746b..2fd36d2e81d3 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 91edc57894f4..20fd0e74e26a 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 bf591962a358..aa0e31d1b969 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 c72248aeeefe..5920b1ed2611 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 9a987154ecd8..c4d06375504b 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 e90238efaf42..22b83774a09e 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 ca109dee5e80..beeece2e00b0 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 4bff679ce092..b28a70d9249d 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 b1558d19e297..cf473c52e22b 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 dbefe5a0edbc..2284bd6efcf4 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 5745395c0787..cad58d23a65a 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 b7d3a3a43569..c75418a1f3b8 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 034a9c075601..6f5e301d2c70 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 da955a2c9d8e..e3eb77f5628b 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 a147830de34c..7f169ba259b8 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 1210ee8b15b3..bbcd31fc9a6a 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 8bc35d378ee2..b2ad12d7f390 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 d282cfb5f651..bf9d33a009fe 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 abfd1def309a..7d889641f495 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 d54a995f1239..5cce2b718f51 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 67c9f7080433..43dd73a0f336 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 b184e0d15c36..d7faee19a779 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 0f8dc8e774f6..e2b1b1467504 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 5279ad6e2ef9..701a949d9676 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 ab3e469796d5..1091cf228cd8 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 3996627c05ce..2ec9ac49d402 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 a05cf65b3203..497454133d03 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 d707e5164a24..3e86eb068bfc 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 a71d1173633c..7ca1b40855ca 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 630ea8f271ad..d715bbb1e14e 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 9e8bdc4e737d..934f9a10755d 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 ba755e845d66..cb166d0ad6f3 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 33d8f1c433f5..f1bde722089b 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 3fd1c450cccc..2baaaa61d9a9 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 88db3f8aadea..9fab8981c0a1 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 d06415181eef..dfe180587a40 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 619b1babc663..b307b0803924 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 0caaad6936b5..6533339298ae 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 f522521dea92..8a0378fa2dce 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 9f48c019c195..7cc577f4b6c1 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 51c131e78a87..299df64a600c 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 8fe979383a2c..ab4f4e8bc33e 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);