summaryrefslogtreecommitdiff
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
parent6a2f2ff3e97764c1cd1fcac53cd4255791036bf4 (diff)
Notes
-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.html650
-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, 2353 insertions, 1106 deletions
diff --git a/contrib/sendmail/FAQ b/contrib/sendmail/FAQ
index deb0798010dce..f8c2e8409cebd 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 8bacacaa4be0a..19a60c69d17b5 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 f8da3ddf74c61..81ea244d2a228 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 d48fc30e1c031..e466568a22019 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 217e59b72ba6a..97b2afc54c50b 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 10fcb1ab764e4..11654e9678614 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 a7c47e3a18195..8fb91a0205531 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 8b33823147792..cf6855aecc2ee 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 7ee514bbd4166..3c7b7d5a67359 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 8502a64742476..9a69a1805af05 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 e61e21a91dae9..d0ac86559d6c3 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 6c9de63004ff1..bb335a49096de 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 d167272bf25cb..ecdbddf2a482e 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 bcf2ee4918c53..f384b5f7a0c90 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 a6e7bc956a103..664377e5eaf3e 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 547e47bfc90fa..09d6e49160b3f 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 9830ab9c87603..c802b50f89234 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 2edfde80e6c04..6263e118e0420 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 03cb5ff470794..7669823bf33d0 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 9499c4439cfc4..8fa00ceee8fcc 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 f1bf136d405c7..18ea8b3b87668 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 2439ea8c72447..deed5f14bcff3 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 4514e1d2592b8..739207c71449a 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 69b850168d203..f86e2630823a1 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 3af4a76b4660e..fa5c57456afab 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 3f85c35c2ff6c..14b46d387df08 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 f841cc04c7b04..9cd4e77b6a24c 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 ea78bc39dc7fc..5f82340e91218 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 fa244a118fff1..a27d099e04425 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 3c1bccedb0b5e..913edb58603f9 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 98ec215728529..117a236af0f9a 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 33bf1f1d58fe1..6c370fdc7fa10 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 94f73151b5e11..6bd778258c1d5 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 b7688e7d0619e..bf7d4081ccf2d 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 805fc82dcbe8c..0414e4c3fa89b 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 9e5c31b502da9..c3b3e0da0eb0b 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 10f5efb2c3528..6ec08feae87f9 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 8fea7124c0d1f..4bf4939795848 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 02acf4203d8a1..fe909626b4f30 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 0ca0128068fd1..2ab5972eb7a93 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 30495108f2ad8..969cb71f2ec6f 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 e6a2a64e260c4..26b2ce095d77d 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 cdcd2dd8feb7d..235d9aa25bca0 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 9800567c8523a..134c8f41b9ed5 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 ea6977bdc253f..3fb48e131e74d 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 891228f4e6765..d0fee24763efe 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 876f111e20d84..181ced1451cbc 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 c2ff476d613f4..41a21ade2e1b6 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 6de394e4029fd..9a019ce8b4d84 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 8fbe90a946f47..b9a73b9b04229 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 63176364e3f83..caa5a8845fa86 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 df05af7726342..4c39884935bf9 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 6b1a65d753ab4..a54507c754981 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 9745b1da1c234..796cc13219d26 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 6630d079187fd..aa264f961d27f 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 9c8dc1d1537ae..a29956a635b43 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 ec2e67a243fd4..3533d30679466 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 7b07b3fd8db94..911d2b5421920 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 ba5adb2e0725e..3232be80d316a 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 8480fb28fbff2..d6218d1194015 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 3aa4873cfe97c..a6125edf2516a 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 ec95868399be7..151df956668fe 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 5ffc6a36dac96..7389646bec1a5 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 2f589f06225aa..b04b4971b863c 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 64f27aeeb72bb..c713153b637f9 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 6fdae52d5b46e..fab586af110c2 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 d553998aef40f..c20022a91850c 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 7c0241d367c66..72a6e2643da75 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 1e0fc0b32ff85..f86ebd4567c90 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 1a63654968427..f3c371b9384fe 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 4d9d4cf5611b8..de2300f2f0e5d 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 c567df177453b..29bb98023e9b0 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 5de41fbbe339e..f8c2a31f3022c 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 e6261c25956ce..abd1b9c9ff68d 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 12359883ade2a..e4dcd701cd417 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 aaf5e3d8fdf59..e2bcc650616ef 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 488c5a068f2e7..74d3aa0560961 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 eebaae64a300e..f4bc64a9d7331 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 e9b1934b77af7..5a053399fc35e 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 fec06adcd888d..05baa7a47b458 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 e284ca340df5c..c5acadf7ecebf 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 b37153c42ec9f..1cecca5f13e33 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 6b28a823cce4a..a03104964dd27 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 a6364c1f5e1f0..8f35ca1c167f1 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 1e836877fb501..bb603a607ba45 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 e301b51ab3023..837da99febcba 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 575cbfb349ad1..17cb7d1d8b0f5 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 82cdd5a87ebbd..06715a0f3f8fd 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 9ed2e461e212f..e167865efefa4 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 f2bc12bddb5da..872680a480f50 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 4c134c35f876a..a720b167f2799 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 73f744cb72422..867d4eda6408b 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 343712b250a9d..9858eb8e3b90d 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 13eb764352c11..44bcbd670ec51 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 7399fecce0917..2159ff8580a0a 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 754943db69ce0..1e95be44bcc21 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 2fc5c2cbcf4db..9e372ec567ca4 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 a62c9d3c4271d..7058cab1417db 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 1f77deaa25ebf..4d23229135f6b 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 00f8211781ff7..5a1d9f0e9fab8 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 981e5acdcc2d4..d9c628f5fbaf4 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 b258b2e9f441b..9b0e76a2eb430 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 ba960594be312..4f5712b1df881 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 c25680ca06d32..708a095dcc7bd 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 51bf84e77755f..ab8b457028f0d 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 1e9c6b2e69345..99021202a0d88 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 bc588fb9cfc6d..cca7f8e6885b4 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 0000000000000..2a40a23d4e071
--- /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 edb408c2eea68..4e2116e65362b 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 566dad812f965..c1946c97490b7 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 114d7bcc73b76..14bc794584f80 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 0b8894bd80563..58b71b07a20ac 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 aaad8a597c831..d2680e1cae9dd 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 b40d914702f69..103e042a7ccc6 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 2af94ff47eae3..b0d9d51eb0f92 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 64e8eee5d66a6..2bf5a82e259a2 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 1703cb1c34a40..d3ae38b942933 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 410ba4c609028..6513556079a90 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 5fa5b48542777..c4d4321bc38bf 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 8d47f2914aa90..4376f6770a003 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 32c7fa3b823ab..8e0b9d44ab8f3 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 c865fbf64849c..e8df77e30ac14 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 73419092a41d2..1cffe1e8d2d96 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 d32241a2090e6..edd3a5db86a72 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 43f87433fd594..044f205ff9e46 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 3fd91dfb1de63..3f7b0891de2c8 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 6857f85ef1bde..35679bcf1c410 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 607794cad8158..b806a37a33ac0 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 fd0e154014adf..493406fd37f92 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 de64a4e49d72e..09d58480a3990 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 4d5ada2049a62..335aedac89488 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 27227bad60ee2..759459d3270ab 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 4c8264c900004..e0729531e8ee0 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 0a2ffecc57b71..b84a1e2e54524 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 e2046c036ae53..eb7a73a0d5be8 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 52df14105ffe0..39e8171cac914 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 d1ac2cc802591..290c0c682d837 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 4cfa61bdeee1d..94e2e98f1d7cd 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 34f50dc9df521..902d39a655a21 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 1784e723f6916..f966458f9d112 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 4ff0f481bd912..dda4bf45c1a40 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 abb9ae679e332..839e3873ef87e 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 483987f8368cb..a124643a5e540 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 96201e0c68f87..b02ad29ee8e0b 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 26b2fbdabda06..6f9a48ecbcfa2 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 a8d7885441d28..90b7d2da30985 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 d464d56876feb..9e760e94e5f46 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 342f36993116a..0c528931233f5 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 3d733a667329e..aaeb615e502ca 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 08e25da10c6a5..dd13963a298fb 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 8ce81ec06cfbf..4646fe3ee2e09 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 f9f92416ff41a..84e83963f9a1f 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 7391d851f5f8a..5fb3b08e14c07 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 dbe0d30333043..f8069383aaf74 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 029ca0963a763..8fe1b84a7914c 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 1a18d90b2ae38..89ac637653736 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 146d2986bd8d1..bcd6b31826bb8 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 0b35ad263aaac..6cf14846d93e4 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 0702bfb4a0b12..72cb72923e952 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 408f9d0ca0c1d..c30dda60df6f0 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 aea4e83e9ce5c..10b9d37bd6ed4 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 987eaf61e7b1a..d1d776ec348c5 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 781eb8dbc41c1..1e821ffe2c7e2 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 eee72ccf30f5a..3f7706b47703b 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 5582dc7f0fb73..128c61af3a7d1 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 fc9591ba2fa4d..d42f8aba9a012 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 0483910b306a6..2d5734ca8e804 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 f89ee0ff7c421..1ba0346d39450 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 98861abf881bc..bab47e8c65fdc 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 ef9dd7353260f..d38fd52ab8a70 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 7e7b9bd63d22a..1098f48ea52b9 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 c096ce29ec4b4..5175a34a30300 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 11d9cefd137bd..dcf6d4424452f 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 0a08a3a1f96a2..c9a5f7e61ff3b 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 056c01d0fce14..843c920d62c28 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 cf4e551317441..fbc90fac466d2 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 e5a5c901a0832..08f808bb99148 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 a69fb278ea45c..4987460e4d4eb 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 457ef05636239..09f459234a840 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 2325994ddd667..8d14002f0b650 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 85ba31f748f61..965e0293bcdd6 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 384cd1f0f74e1..9b450c5b242de 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 4d1a6e2f61e26..fe7c2d982843e 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 b3fede3b2ef88..9cf07c753ad33 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 ad70013b2a9e6..649e98d4c6947 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 08afce69c2677..d9378faf5c259 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 c95c02eaf29b7..0c7f97dba72f0 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 ebee2c18c6a3a..9a8a6350cc3b3 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 fd38e6166168b..cbf5f4a606757 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 16ff2a1e5570a..bbd3177a8a89d 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 677d72caeec66..6b8653620c685 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 a011e665228c0..44778ba8b2b81 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 86a46f945736b..bb5e4c1bb3432 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 1a052ae74faf7..3869210f6bc3c 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 acc32101fb5e7..b0dfb4388a58b 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 0cf376f74fc87..12688eaad1039 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 6d503c09dcc01..791a525326a2b 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 52bec4338a7eb..eba29ad250139 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 c62dfcf5bdc7e..c5447d119e310 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 d2cf1ed380450..afcb1252b515a 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 a7b9e01da1672..6f13411a23425 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 74aaf0729d6ae..61b6e1b8f34d6 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 ecd9039b71ba5..8b56370153759 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 a4f22672c9c20..48b358df21a55 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 8fc8bf5906e6e..dfa0463b6266a 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 183280581e405..5041db317f329 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 ee26e5380b83f..010e50c62bad6 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 7ec44432da7d3..6dc4a5416ff70 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 386c099c90f8e..3ba61fd5460a3 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 84efc0c6a8535..2cbcb57790894 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 de0a94320e766..185485a9e1405 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 a32a17c56b0d2..f232c497b1ed8 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 b5fae5532e41e..385f1f42df8ba 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 14ed2dbee9c40..03f886ea03247 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 3363aa7ad7d72..1acf12d85987f 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 3d0b72acb9062..3e696bafe6bf5 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 6667c7a0dcb29..eef239cd5c549 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 181589c6bd2a5..9d20b18be6171 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 5155a193ba22e..1ae2db15b2ab8 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 0756e297f0155..2ff5ad09ca284 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 c2f030b8bc33a..29fc4ca466187 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 e8e2d21f7fd62..e750fcb7d3fdd 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 44629a0e2b63c..01bda0222acf0 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 6785465deb0ee..6375dfc9a55c9 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 994b836ab65b3..3821deb2bb623 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 c9606629883c1..c8cb59f690e9f 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 e192ddb710146..750def18a5b24 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 bdc97452fbf0f..1d700d7fc6b73 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 a14d57164a4b7..625a90e7b1e1a 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 27b0b21f11650..7d2b5cadde602 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 2b12396df622a..2e7e71721b2f4 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 3a3e958319a47..04277eb6e2c92 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 601021cec4918..f38f68a807152 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 6ff392db50959..0bf7e5c0010d9 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 3570ad59e4a35..44c5f902769c6 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 4a46866f0278b..7f1c0361ab788 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 7e99704083241..879258c39df09 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;
+ struct mlfiPriv *priv;
+ char *ident;
+
+ /* allocate some private memory */
+ priv = malloc(sizeof *priv);
+ if (priv == NULL)
+ {
+ /* can't accept this message right now */
+ return SMFIS_TEMPFAIL;
+ }
+ memset(priv, '\0', sizeof *priv);
- /* allocate some private memory */
- priv = malloc(sizeof *priv);
- if (priv == NULL)
- {
- /* can't accept this message right now */
- return SMFIS_TEMPFAIL;
- }
- memset(priv, '\0', sizeof *priv);
+ /* save the private data */
+ <a href="smfi_setpriv.html">smfi_setpriv</a>(ctx, 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;
+ 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;
+ 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;
+ }
- /* 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;
- }
+ if (mkstemp(priv-&gt;mlfi_fname) == -1)
+ {
+ (void) mlfi_cleanup(ctx, FALSE);
+ 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;
+ 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;
- }
+ 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;
+ /* 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);
- }
+ {
+ /* 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);
+ /* release private memory */
+ if (priv-&gt;mlfi_fname != NULL)
+ free(priv-&gt;mlfi_fname);
- /* return status */
- return rstat;
+ /* 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;
+ int c;
+ const char *args = "p:t:r:a:h";
+ extern char *optarg;
- /* Process command line options */
- while ((c = getopt(argc, argv, args)) != (char)EOF)
- {
- switch (c)
+ /* Process command line options */
+ while ((c = getopt(argc, argv, args)) != -1)
{
- case 'p':
- if (optarg == NULL || *optarg == '\0')
- {
- (void) fprintf(stderr, "Illegal conn: %s\n",
- optarg);
- exit(EX_USAGE);
- }
- if(<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;
+ 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) fputs("smfi_settimeout failed", stderr);
- exit(EX_SOFTWARE);
- }
- 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 '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);
+ 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)
+ {
+ 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 c6417e26f6686..6f852aebf6ec0 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 4969674fb803d..89ce6f26ebfaa 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 6c575a9983e61..74140720352b3 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 b18a22bf830aa..a7b47603a2f88 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 65b387541a748..fedc24f90e9a4 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 3661488c7b7d8..03d8acd34e68a 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 345741a5b453f..92690cd7cb149 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 514afb6e0ec2c..43a85675e53e0 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 96aaf604aefa8..171474135c8c1 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 666673b0aaede..032a6acb288fa 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 a71d1173633c5..c6c1a293d5b89 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 b829b3aa276bd..d75d55f8ea877 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 04bebf10c656a..efad1ec14e403 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 6515ac2d5401a..a3251998db6b7 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 af5335eb915ae..a713bc619d107 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 2a5206e20f8b5..a6961542201eb 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 bf8cb63c61fd5..33e45acfd3e62 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 aeebba763cdf6..d2178753ceda1 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 b952859b8f188..ada9689980afa 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 01478249b9524..5b1a8a80aecf7 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 acf26cb086e05..53cbe3dca4efb 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 ebaee2dd953df..37e5e829cb31e 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 b7f1b9c73a152..a9b184af7c053 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 a90efc56700b5..29aaade880ae2 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 0748796101952..9cc1c6fa0969f 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 d0905f3fe9efb..a2990363ce8cc 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 a2e8fbaaf5ed2..2de1413196a33 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 89a52c33fbb6e..8d5e0d8fcd03e 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 095949055d1b9..9487479a22046 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 154d5fe8eb8fb..83b318e259909 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 2ad7c97d9b63c..611748c6eca12 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 a885e69d91966..115ed22fa85b5 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 37f2a63c6fc64..b3877f12cccc0 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 b76b185ecce7a..a2fae9d9109dd 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 6936ed0a481cd..a8083fd86fc0f 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 50fa9971b695b..71938729c6d9e 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 8b5d54728ed91..4e6fd5a106b24 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 1b691610eb78a..3c5e11c7ee775 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 b0ec2177a1f93..1e651fdc4972c 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 5947f86ad2d50..5e1fcfde795b1 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 de4532c74983d..6985e0d1dca7a 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 234197841e2fb..a692781bab354 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 c35fa48c234f0..a1344c0bf465c 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 ee60dee372cd7..b878c1a933f38 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 a60a2038a4198..372f75dfe9bce 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 31bc98ad8cbbd..cf642ae88b466 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 b7faf70373b67..74549fe47241f 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 1d6b110832686..db8c1018a5fbd 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 1039ee1e95bda..50bb631611543 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 c5d867351b412..bc32b012e7570 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 cba9260c95662..f2eec16e6c075 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 58a33811cc761..5bb7c32dbc1f8 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 3908c4660b6d5..3e85a87664e09 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 c816db6942e72..943321363c224 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 492ad10392f45..044de8c36f723 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 a5e563567f6c2..e42b865a39eae 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 d2eeea2a31370..9e1ec639bb6f7 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 9583ab5dd3072..6d9fedcdf6267 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 eae639e9f40bc..ad58867cf013a 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 4c82c234aca2b..6932e1f2950ab 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 05fbad03661d9..d513b98b3ccd6 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 da9d835171365..10c7cde2eb792 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 e398bcb504c86..597c6dbc37511 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 6ab573dfa580d..863216660f7bf 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 e2ff415e003b3..f796bc043aa8b 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 2b6c08afbeecd..172a767b85359 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 b622c51e5b3e0..35ae02856a6ec 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 284e75a27d964..9061efc6a2ff2 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 0126ac1937b9f..879fcd25f4009 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 3cea818215b52..5ee3006e6ed55 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 fb485447408ed..168bcfdddd697 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 207164b8ebc7e..c3ab72d0124b9 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 c2fb58e86e96d..15f5ce8f87111 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 2196359fa1559..64fe5c2a9a9cb 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 b0b2df87ea4a0..ffdfb2182bc30 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 2626b0749de1d..0f2cdfc6cdfe0 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 892aa41ec765f..b0b69756997ce 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 cdab93edc48f6..b6a7f66356722 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 6925f596f2e27..2b7e9d0cfe96c 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 bba995033d380..ec9a81be266cf 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 2490927099f68..d0ed630eacbd6 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 aafb3d5e46d33..87e84bfeaa568 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 e524710eeacd4..24fa3a23b3136 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 b42f8ce5254a4..90785144fbfd9 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 9b054abfe2e14..607377617c836 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 eb5fd440c78e8..a6922e0416286 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 06a48d4d0e746..f3f059b1a1e17 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 6296d9c81609d..2d3839a34d9af 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 05811bb579def..7ddb60d2ccb16 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 c92052fbbdbe3..d2776c02a2b1d 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 2a53c8abb9297..fa6e3453b2351 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 f3553a08bc7ae..b671a4b4be818 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 9f7a87410fcf0..b3ca0bd8aaef7 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 66c008f943434..5da07c1e369bc 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 724d2220f51cb..3bad1c1b15560 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 3c9fab1988b63..0506e7aa40779 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 7134d95e8135f..bb18dae688f76 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 df4e6faf02782..5c118dcbe6d91 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 189b77eae1aee..fb8fb467d0424 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 c1f923445cf4f..cb07f67571bfd 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 376c2bebdcf97..361cc45576a14 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 0d25390189edf..7794af077a926 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 68fa4f464a0f4..9b3a12ea00ec4 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 e87e2204cbfe0..e2115bd813ed5 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 5085db4ef5735..5a19733191fa9 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 bad3ecae96408..6e310efa6fc50 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 59e2b5165c06c..18a46358bda56 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 ad7baaa9eb6c4..827fcec5a9558 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 dd395cb545c2c..498f44992e453 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 bf8084588fdcb..83855351cec4e 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 3004c9d8d63c6..400553e17c8cf 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 89b4d1c656e04..7495e0994d06e 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 3a3e958319a47..0422ed5cb3d74 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 cd47635ffb71d..ad0b926b62571 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 c8460a4277a98..a971e5ea7b768 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 3c33fc47d8870..9e2e8ed2de2aa 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 64fff00ccc45a..89ecf631a1158 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 7538f2db3cc7b..2de323192e3bb 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 67feb40469a27..c2132c3f00c8b 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 7b34928392b42..2c3b3284ad5a2 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 7cd3e4baf7f2a..0ad52a4a4a9b7 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 2a4d95a0e7888..5eca360ce8f95 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 02b218f8e27c9..aed40a0482e06 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 11761b4939904..ff3aa3b90c7c8 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 4455b02e3613f..b560a3039df84 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 e1ae2a8eabd49..651de4bc91135 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 d5002e127a462..5cd1c137ec4b2 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 56c4f8c64818d..9ef3fb5746096 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 045394d168b95..6dbcb62430a16 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 c69dc2ec4164a..929875b913a8d 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 2f8e50595c802..ec56e3a7e5c87 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 045394d168b95..a6960c1d22a82 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 cefc7f5e383f1..9faaef7fcb60b 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 c48bbd73197ce..59c28f627df8b 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 185e57dbbe5ec..6b6db708f246e 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 fb4d1a765385d..2c78cacff533e 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 5c6a479b42fac..720fa6d2777d4 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 bec1ba4193e11..2934322c6bf11 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 d674d683e4db4..41aa3394f2a0b 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 da99f0f05ad94..cea291fde47fe 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 045394d168b95..a9c4af7a2a992 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 989b0c8c65fba..7e22f86bd8f5b 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 67fed55bec89f..1f3c0a27634f6 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 c4119f14a604b..843f68beb928a 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 85a834417537d..c86bbf5e22041 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 8004de423ffa9..bb5dc1a2ab077 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 fb5a021dd24c1..d24e47b92cbf4 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 207eac7e74933..e42c0246f5552 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 4ef5504c4779d..c64afd1a4c805 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 afeaa05e740f7..52da793b6d59c 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 4d43908568c57..f5bd74699082f 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 532111a802faf..73899d427dedb 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 a2e5a64f52cca..62b5dfb558912 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 67f9c14637d65..16082cd259af7 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 c70ed8321d166..eb417988a0a34 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 b37b0275ea1a8..5a02292c1c516 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 013d10440000f..a926d61f0ec64 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 446f46d66c38f..4a0a25d4b674e 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 4e4d1ade361de..89bdd7ec84571 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 ae975c7e68c40..88ff72f34fc81 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 153605c09ad1d..36edc1a0b47f2 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 d806938e94023..0b2cd94078be4 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 e190253100202..2b1fc4c2190a1 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 9d873986cbd5c..f48f987fd8922 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 000cc2d8deb7f..27ad7cb07c698 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 28e99cfeef3ae..484af9e85ddd7 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 642547d7413d7..a56266e7d6bb4 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 e6e2c6408ba91..931a06e7d3724 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 2cc6b88a09990..fc7a2c277c84c 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 2efa319d6cc8c..0fae3ad5368d5 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 1451acb20d940..78c1862343cef 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 efae0d39ad48b..d8570d3762e32 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 e6c48dc0e1a3a..b54b13d05e405 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 b1be43e95df35..f52a72500ecf7 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 403c239e746be..2fd36d2e81d3e 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 91edc57894f43..20fd0e74e26ae 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 bf591962a358a..aa0e31d1b9697 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 c72248aeeefec..5920b1ed26110 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 9a987154ecd8b..c4d06375504b2 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 e90238efaf42f..22b83774a09e3 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 ca109dee5e80d..beeece2e00b03 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 4bff679ce0921..b28a70d9249d6 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 b1558d19e2976..cf473c52e22bd 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 dbefe5a0edbcc..2284bd6efcf47 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 5745395c07875..cad58d23a65a5 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 b7d3a3a43569f..c75418a1f3b85 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 034a9c0756013..6f5e301d2c708 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 da955a2c9d8e6..e3eb77f5628b6 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 a147830de34cf..7f169ba259b8a 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 1210ee8b15b32..bbcd31fc9a6a5 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 8bc35d378ee29..b2ad12d7f3908 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 d282cfb5f6515..bf9d33a009fe6 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 abfd1def309ad..7d889641f4953 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 d54a995f12398..5cce2b718f517 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 67c9f7080433b..43dd73a0f3367 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 b184e0d15c362..d7faee19a7794 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 0f8dc8e774f62..e2b1b14675040 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 5279ad6e2ef9e..701a949d96761 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 ab3e469796d57..1091cf228cd8c 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 3996627c05ce8..2ec9ac49d402d 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 a05cf65b3203d..497454133d037 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 d707e5164a245..3e86eb068bfc2 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 a71d1173633c5..7ca1b40855ca1 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 630ea8f271add..d715bbb1e14e4 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 9e8bdc4e737de..934f9a10755de 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 ba755e845d666..cb166d0ad6f3a 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 33d8f1c433f5d..f1bde722089b9 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 3fd1c450cccc1..2baaaa61d9a98 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 88db3f8aadeab..9fab8981c0a15 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 d06415181eef7..dfe180587a402 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 619b1babc6631..b307b08039245 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 0caaad6936b5e..6533339298ae6 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 f522521dea92d..8a0378fa2dce9 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 9f48c019c195d..7cc577f4b6c17 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 51c131e78a871..299df64a600c0 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 8fe979383a2c4..ab4f4e8bc33e2 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);