diff options
61 files changed, 456 insertions, 177 deletions
diff --git a/gnu/usr.sbin/sendmail/RELEASE_NOTES b/gnu/usr.sbin/sendmail/RELEASE_NOTES index 5010b02f024..f6d0fbbd71b 100644 --- a/gnu/usr.sbin/sendmail/RELEASE_NOTES +++ b/gnu/usr.sbin/sendmail/RELEASE_NOTES @@ -1,11 +1,48 @@ SENDMAIL RELEASE NOTES - $Sendmail: RELEASE_NOTES,v 8.1340.2.113 2003/02/11 19:17:41 gshapiro Exp $ + $Sendmail: RELEASE_NOTES,v 8.1340.2.132 2003/03/29 14:02:26 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.9/8.12.9 2003/03/29 + SECURITY: Fix a buffer overflow in address parsing due to + a char to int conversion problem which is potentially + remotely exploitable. Problem found by Michal Zalewski. + Note: an MTA that is not patched might be vulnerable to + data that it receives from untrusted sources, which + includes DNS. + To provide partial protection to internal, unpatched sendmail MTAs, + 8.12.9 changes by default (char)0xff to (char)0x7f in + headers etc. To turn off this conversion compile with + -DALLOW_255 or use the command line option -d82.101. + To provide partial protection for internal, unpatched MTAs that may be + performing 7->8 or 8->7 bit MIME conversions, the default + for MaxMimeHeaderLength has been changed to 2048/1024. + Note: this does have a performance impact, and it only + protects against frontal attacks from the outside. + To disable the checks and return to pre-8.12.9 defaults, + set MaxMimeHeaderLength to 0/0. + Do not complain about -ba when submitting mail. Problem noted + by Derek Wueppelmann. + Fix compilation with Berkeley DB 1.85 on systems that do not + have flock(2). Problem noted by Andy Harper of Kings + College London. + Properly initialize data structure for dns maps to avoid various + errors, e.g., looping processes. Problem noted by + Maurice Makaay. + CONFIG: Prevent multiple application of rule to add smart host. + Patch from Andrzej Filip. + CONFIG: Fix queue group declaration in MAILER(`usenet'). + CONTRIB: buildvirtuser: New option -t builds the virtusertable + text file instead of the database map. + Portability: + Revert wrong change made in 8.12.7 and actually use the + builtin getopt() version in sendmail on Linux. + This can be overridden by using -DSM_CONF_GETOPT=0 + in which case the OS supplied version will be used. + 8.12.8/8.12.8 2003/02/11 SECURITY: Fix a remote buffer overflow in header parsing by dropping sender and recipient header comments if the diff --git a/gnu/usr.sbin/sendmail/cf/README b/gnu/usr.sbin/sendmail/cf/README index f2ef6cfc964..938a64fa288 100644 --- a/gnu/usr.sbin/sendmail/cf/README +++ b/gnu/usr.sbin/sendmail/cf/README @@ -3687,6 +3687,7 @@ confMAX_HEADERS_LENGTH MaxHeadersLength confMAX_MIME_HEADER_LENGTH MaxMimeHeaderLength [undefined] Maximum length of certain MIME header field values. + If not set, sendmail uses 2048/1024. confCONNECTION_RATE_THROTTLE ConnectionRateThrottle [undefined] The maximum number of connections permitted per second per @@ -3849,8 +3850,6 @@ confRUN_AS_USER RunAsUser [undefined] If set, become this user this user. Also, all programs will be run as this user, and all output files will be written as this user. - Intended for use only on firewalls - where users do not have accounts. confMAX_RCPTS_PER_MESSAGE MaxRecipientsPerMessage [infinite] If set, allow no more than the specified number of recipients in @@ -4375,4 +4374,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 1.17 $, Last updated $Date: 2003/03/03 17:31:20 $ +$Revision: 1.18 $, Last updated $Date: 2003/03/29 19:43:59 $ diff --git a/gnu/usr.sbin/sendmail/cf/m4/cfhead.m4 b/gnu/usr.sbin/sendmail/cf/m4/cfhead.m4 index 46563df1396..f5f72863aba 100644 --- a/gnu/usr.sbin/sendmail/cf/m4/cfhead.m4 +++ b/gnu/usr.sbin/sendmail/cf/m4/cfhead.m4 @@ -133,6 +133,8 @@ Q`'$1`, '`$2')') define(`CF_LEVEL', `10')dnl define(`VERSIONID', ``##### $1 #####'') define(`LOCAL_RULE_0', `divert(3)') +dnl for UUCP... +define(`LOCAL_UUCP', `divert(4)') define(`LOCAL_RULE_1', `divert(9)dnl ####################################### @@ -303,4 +305,4 @@ define(`confMILTER_MACROS_ENVRCPT', ``{rcpt_mailer}, {rcpt_host}, {rcpt_addr}'') divert(0)dnl -VERSIONID(`$Sendmail: cfhead.m4,v 8.108.2.1 2002/08/27 20:19:08 gshapiro Exp $') +VERSIONID(`$Sendmail: cfhead.m4,v 8.108.2.2 2003/03/11 21:24:20 ca Exp $') diff --git a/gnu/usr.sbin/sendmail/cf/m4/proto.m4 b/gnu/usr.sbin/sendmail/cf/m4/proto.m4 index 807852f6007..53b7a67d031 100644 --- a/gnu/usr.sbin/sendmail/cf/m4/proto.m4 +++ b/gnu/usr.sbin/sendmail/cf/m4/proto.m4 @@ -13,7 +13,7 @@ divert(-1) # divert(0) -VERSIONID(`$Sendmail: proto.m4,v 8.649.2.14 2002/12/30 15:46:02 ca Exp $') +VERSIONID(`$Sendmail: proto.m4,v 8.649.2.17 2003/03/28 17:20:53 ca Exp $') # level CF_LEVEL config file format V`'CF_LEVEL/ifdef(`VENDOR_NAME', `VENDOR_NAME', `Berkeley') @@ -424,10 +424,14 @@ _OPTION(Timeout.queuereturn, `confTO_QUEUERETURN', `5d') _OPTION(Timeout.queuereturn.normal, `confTO_QUEUERETURN_NORMAL', `5d') _OPTION(Timeout.queuereturn.urgent, `confTO_QUEUERETURN_URGENT', `2d') _OPTION(Timeout.queuereturn.non-urgent, `confTO_QUEUERETURN_NONURGENT', `7d') +ifdef(`confTO_QUEUERETURN_DSN', `dnl +O Timeout.queuereturn.dsn=confTO_QUEUERETURN_DSN') _OPTION(Timeout.queuewarn, `confTO_QUEUEWARN', `4h') _OPTION(Timeout.queuewarn.normal, `confTO_QUEUEWARN_NORMAL', `4h') _OPTION(Timeout.queuewarn.urgent, `confTO_QUEUEWARN_URGENT', `1h') _OPTION(Timeout.queuewarn.non-urgent, `confTO_QUEUEWARN_NONURGENT', `12h') +ifdef(`confTO_QUEUEWARN_DSN', `dnl +O Timeout.queuewarn.dsn=confTO_QUEUEWARN_DSN') _OPTION(Timeout.hoststatus, `confTO_HOSTSTATUS', `30m') _OPTION(Timeout.resolver.retrans, `confTO_RESOLVER_RETRANS', `5s') _OPTION(Timeout.resolver.retrans.first, `confTO_RESOLVER_RETRANS_FIRST', `5s') @@ -582,7 +586,7 @@ _OPTION(TrustedUser, `confTRUSTED_USER', `root') _OPTION(ControlSocketName, `confCONTROL_SOCKET_NAME', `/var/spool/mqueue/.control') # Maximum MIME header length to protect MUAs -_OPTION(MaxMimeHeaderLength, `confMAX_MIME_HEADER_LENGTH', `0/0') +_OPTION(MaxMimeHeaderLength, `confMAX_MIME_HEADER_LENGTH', `2048/1024') # Maximum length of the sum of all headers _OPTION(MaxHeadersLength, `confMAX_HEADERS_LENGTH', `32768') @@ -1017,7 +1021,7 @@ ifdef(`_MAILER_smtp_', `# handle numeric address spec dnl there is no check whether this is really an IP number R$* < @ [ $+ ] > $* $: $>ParseLocal $1 < @ [ $2 ] > $3 numeric internet spec -R$* < @ [ $+ ] > $* $1 < @ [ $2 ] : $S > $3 Add smart host to path +R$* < @ [ $+ ] > $* $: $1 < @ [ $2 ] : $S > $3 Add smart host to path R$* < @ [ $+ ] : > $* $#_SMTP_ $@ [$2] $: $1 < @ [$2] > $3 no smarthost: send R$* < @ [ $+ ] : $- : $*> $* $#$3 $@ $4 $: $1 < @ [$2] > $5 smarthost with mailer R$* < @ [ $+ ] : $+ > $* $#_SMTP_ $@ $3 $: $1 < @ [$2] > $4 smarthost without mailer', diff --git a/gnu/usr.sbin/sendmail/cf/m4/version.m4 b/gnu/usr.sbin/sendmail/cf/m4/version.m4 index b2e7a043613..5d638186ec2 100644 --- a/gnu/usr.sbin/sendmail/cf/m4/version.m4 +++ b/gnu/usr.sbin/sendmail/cf/m4/version.m4 @@ -11,8 +11,8 @@ divert(-1) # the sendmail distribution. # # -VERSIONID(`$Sendmail: version.m4,v 8.92.2.14 2003/01/15 17:55:43 ca Exp $') +VERSIONID(`$Sendmail: version.m4,v 8.92.2.15 2003/03/19 21:19:52 ca Exp $') # divert(0) # Configuration version number -DZ8.12.8`'ifdef(`confCF_VERSION', `/confCF_VERSION') +DZ8.12.9`'ifdef(`confCF_VERSION', `/confCF_VERSION') diff --git a/gnu/usr.sbin/sendmail/cf/mailer/usenet.m4 b/gnu/usr.sbin/sendmail/cf/mailer/usenet.m4 index 3a981dff5ee..3c879f4ca99 100644 --- a/gnu/usr.sbin/sendmail/cf/mailer/usenet.m4 +++ b/gnu/usr.sbin/sendmail/cf/mailer/usenet.m4 @@ -1,6 +1,6 @@ PUSHDIVERT(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000, 2003 Sendmail, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,8 +21,8 @@ POPDIVERT ### USENET Mailer specification ### #################################### -VERSIONID(`$Sendmail: usenet.m4,v 8.21 2000/10/26 02:08:19 ca Exp $') +VERSIONID(`$Sendmail: usenet.m4,v 8.21.4.1 2003/03/03 22:53:03 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 + _OPTINS(`USENET_MAILER_MAX', `M=', `, ')T=X-Usenet/X-Usenet/X-Unix,_USENET_QGRP A=USENET_MAILER_ARGS $u diff --git a/gnu/usr.sbin/sendmail/contrib/buildvirtuser b/gnu/usr.sbin/sendmail/contrib/buildvirtuser index 9b534d2f51d..c788573e3ed 100644 --- a/gnu/usr.sbin/sendmail/contrib/buildvirtuser +++ b/gnu/usr.sbin/sendmail/contrib/buildvirtuser @@ -1,6 +1,6 @@ #!/usr/bin/perl -w -# Copyright (c) 1999-2002 Gregory Neil Shapiro. All Rights Reserved. +# Copyright (c) 1999-2003 Gregory Neil Shapiro. All Rights Reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions @@ -27,7 +27,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. -# $Sendmail: buildvirtuser,v 1.5 2002/02/08 08:10:59 gshapiro Exp $ +# $Sendmail: buildvirtuser,v 1.5.2.1 2003/03/15 23:30:26 gshapiro Exp $ =head1 NAME @@ -35,7 +35,7 @@ buildvirtuser - Build virtusertable support from a directory of files =head1 SYNOPSIS - buildvirtuser [-f] + buildvirtuser [-f] [-t] =head1 DESCRIPTION @@ -53,6 +53,9 @@ the left hand side. The -f option forces the database to be rebuilt regardless of whether any file changes were detected. +The -t option instructs the program to build a text file instead of a +database. The text file can then be used with makemap. + =head1 CONFIGURATION In order to function properly, sendmail must be configured to use these @@ -114,7 +117,13 @@ my $newest = 0; my ($lhs, $domain, $key, $value); my $opts = {}; -getopts('f', $opts) || die "Usage: $0 [-f]\n"; +getopts('ft', $opts) || die "Usage: $0 [-f] [-t]\n"; + +if ($opts->{t}) +{ + $newvirt = "$maildir/virtusertable.new"; + $virt = "$maildir/virtusertable"; +} opendir(VIRTS, $virts) || die "Could not open directory $virts: $!\n"; my @virts = grep { -f "$virts/$_" } readdir(VIRTS); @@ -168,7 +177,15 @@ if ($opts->{f} || $virtmtime < $newest) { print STDOUT "Rebuilding $virt\n"; # logger -s -t ${prog} -p mail.info "Rebuilding ${basedir}/virtusertable" - open(MAKEMAP, "|$makemap $dbtype $newvirt") || die "Could not start makemap: $!\n"; + if ($opts->{t}) + { + open(MAKEMAP, ">$newvirt") || die "Could not open $newvirt: $!\n"; + } + else + { + open(MAKEMAP, "|$makemap $dbtype $newvirt") || die "Could not start makemap: $!\n"; + } + foreach $key (keys %virt) { print MAKEMAP "$key\t\t$virt{$key}\n"; diff --git a/gnu/usr.sbin/sendmail/doc/op/op.me b/gnu/usr.sbin/sendmail/doc/op/op.me index 1ae38d1c432..3176073ecc4 100644 --- a/gnu/usr.sbin/sendmail/doc/op/op.me +++ b/gnu/usr.sbin/sendmail/doc/op/op.me @@ -9,7 +9,7 @@ .\" the sendmail distribution. .\" .\" -.\" $Sendmail: op.me,v 8.609.2.20 2003/01/15 19:17:16 ca Exp $ +.\" $Sendmail: op.me,v 8.609.2.23 2003/03/28 05:51:16 ca Exp $ .\" .\" eqn op.me | pic | troff -me .\" @@ -90,7 +90,7 @@ Sendmail, Inc. .de Ve Version \\$2 .. -.Ve $Revision: 1.18 $ +.Ve $Revision: 1.19 $ .rm Ve .sp For Sendmail Version 8.12 @@ -6292,7 +6292,7 @@ Addr Address mask (defaults INADDR_ANY) Family Address family (defaults to INET) SndBufSize Size of TCP send buffer RcvBufSize Size of TCP receive buffer -Modifier Options (flags) for the daemon +Modifier Options (flags) for the client .)b The .i Addr ess @@ -7012,6 +7012,10 @@ Defaults to 25. Specify the maximum message size to be advertised in the ESMTP EHLO response. Messages larger than this will be rejected. +If set to a value greater than zero, +that value will be listed in the SIZE response, +otherwise SIZE is advertised in the ESMTP EHLO response +without a parameter. .ip MaxMimeHeaderLength=\fIN[/M]\fP [no short name] Sets the maximum length of certain MIME header field values to @@ -7029,7 +7033,8 @@ is not specified, one half of .i N will be used. By default, -these values are 0, meaning no checks are done. +these values are 2048 and 1024, respectively. +To allow any length, a value of 0 can be specified. .ip MaxQueueChildren=\fIN\fP [no short name] When set, this limits the number of concurrent queue runner processes to @@ -8954,6 +8959,10 @@ Reject connection if filter unavailable. .ip T Temporary fail connection if filter unavailable. .pp +If neither F=R nor F=T is specified, the message is passed through +.i sendmail +in case of filter errors as if the failing filters were not present. +.pp The timeouts can be set using the four fields inside of the .b T= equate: @@ -10755,7 +10764,7 @@ replace it with a blank sheet for double-sided output. .\".sz 10 .\"Eric Allman .\".sp -.\"Version $Revision: 1.18 $ +.\"Version $Revision: 1.19 $ .\".ce 0 .bp 3 .ce diff --git a/gnu/usr.sbin/sendmail/editmap/editmap.8 b/gnu/usr.sbin/sendmail/editmap/editmap.8 index 4a4e8abdff3..ff0ff1eb5fb 100644 --- a/gnu/usr.sbin/sendmail/editmap/editmap.8 +++ b/gnu/usr.sbin/sendmail/editmap/editmap.8 @@ -6,9 +6,9 @@ .\" the sendmail distribution. .\" .\" -.\" $Sendmail: editmap.8,v 1.8 2001/06/15 21:33:19 ca Exp $ +.\" $Sendmail: editmap.8,v 1.8.4.1 2003/03/15 23:38:57 gshapiro Exp $ .\" -.Dd June 15, 2001 +.Dd March 15, 2003 .Dt EDITMAP 8 .Os .Sh NAME diff --git a/gnu/usr.sbin/sendmail/include/sm/bdb.h b/gnu/usr.sbin/sendmail/include/sm/bdb.h index 8d9001eb524..4e11672adb3 100644 --- a/gnu/usr.sbin/sendmail/include/sm/bdb.h +++ b/gnu/usr.sbin/sendmail/include/sm/bdb.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2002 Sendmail, Inc. and its suppliers. + * Copyright (c) 2002, 2003 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -7,7 +7,7 @@ * the sendmail distribution. * * - * $Sendmail: bdb.h,v 1.1.2.3 2002/12/05 05:07:44 ca Exp $ + * $Sendmail: bdb.h,v 1.1.2.4 2003/03/06 16:27:38 ca Exp $ */ #ifndef SM_BDB_H @@ -35,11 +35,11 @@ # else /* DB_VERSION_MAJOR >= 4 && DB_VERSION_MINOR >= 1 */ # define DBTXN -# if !HASFLOCK +# if !HASFLOCK && defined(DB_FCNTL_LOCKING) # define SM_DB_FLAG_ADD(flag) (flag) |= DB_FCNTL_LOCKING -# else /* !HASFLOCK */ +# else /* !HASFLOCK && defined(DB_FCNTL_LOCKING) */ # define SM_DB_FLAG_ADD(flag) ((void) 0) -# endif /* !HASFLOCK */ +# endif /* !HASFLOCK && defined(DB_FCNTL_LOCKING) */ # endif /* DB_VERSION_MAJOR >= 4 && DB_VERSION_MINOR >= 1 */ #endif /* NEWDB */ diff --git a/gnu/usr.sbin/sendmail/include/sm/conf.h b/gnu/usr.sbin/sendmail/include/sm/conf.h index 3ccdca6b06b..b64830f31b4 100644 --- a/gnu/usr.sbin/sendmail/include/sm/conf.h +++ b/gnu/usr.sbin/sendmail/include/sm/conf.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2003 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -10,7 +10,7 @@ * the sendmail distribution. * * - * $Sendmail: conf.h,v 1.90.2.13 2002/12/10 03:08:56 ca Exp $ + * $Sendmail: conf.h,v 1.90.2.14 2003/03/06 18:38:06 ca Exp $ */ /* @@ -1326,6 +1326,7 @@ extern void *malloc(); # ifndef USESETEUID # define USESETEUID 0 /* has it due to POSIX, but doesn't work */ # endif /* USESETEUID */ +# define SM_CONF_GETOPT 0 /* need a replacement for getopt(3) */ # define HASUNAME 1 /* use System V uname(2) system call */ # define HASUNSETENV 1 /* has unsetenv(3) call */ # define ERRLIST_PREDEFINED /* don't declare sys_errlist */ diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/api.html b/gnu/usr.sbin/sendmail/libmilter/docs/api.html index af714efd309..936abed0d0d 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/api.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/api.html @@ -184,11 +184,11 @@ other callbacks are message-oriented. <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/design.html b/gnu/usr.sbin/sendmail/libmilter/docs/design.html index fbc74e65fd2..91804861e0a 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/design.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/design.html @@ -134,11 +134,11 @@ filter process processing messages from two MTAs: </div> <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/index.html b/gnu/usr.sbin/sendmail/libmilter/docs/index.html index 79472f6cba2..28423a42941 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/index.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/index.html @@ -4,7 +4,7 @@ </head> <body> <!-- -$Sendmail: index.html,v 1.10 2001/06/01 00:05:03 ca Exp $ +$Sendmail: index.html,v 1.10.4.1 2003/03/05 19:54:19 ca Exp $ --> <h1>Filtering Mail with Sendmail</h1> @@ -82,11 +82,11 @@ filters and the MTA. <hr size="1"> <font size="-1"> -Copyright (c) 2000, 2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2001, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/installation.html b/gnu/usr.sbin/sendmail/libmilter/docs/installation.html index 8ce8611e6d0..370f1d3baf0 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/installation.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/installation.html @@ -16,7 +16,7 @@ To compile a filter, modify the Makefile provided with the sample program, or: <li>Put the include and Sendmail directories in your include path (e.g. -I/path/to/include -I/path/to/sendmail). - <li>Make sure libmilter.so is in your library path, and link your + <li>Make sure libmilter.a is in your library path, and link your application with it (e.g. "-lmilter"). <li>Compile with pthreads, either by using -pthread for gcc, or @@ -31,10 +31,6 @@ and your linking command line will look something like cc -o myfilter [object-files] -L[library-location] -lmilter -pthread </pre> -<p> -To run the filter, the Milter shared library must be available to the -run-time linker. - <H2><a name="config">Configuring Sendmail</A></H2> First, you must compile sendmail with MILTER defined. @@ -161,10 +157,10 @@ For information about available macros and their meanings, please consult the sendmail documentation. <hr size="1"> <font size="-1"> -Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/other.html b/gnu/usr.sbin/sendmail/libmilter/docs/other.html index 8ec9ffdb00e..4647c538087 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/other.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/other.html @@ -5,11 +5,11 @@ FAQ? Mailing list? More sample filters? <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/overview.html b/gnu/usr.sbin/sendmail/libmilter/docs/overview.html index 0c5953d574e..16cdad0566d 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/overview.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/overview.html @@ -4,7 +4,7 @@ </head> <body> <!-- -$Sendmail: overview.html,v 1.12 2001/06/01 00:05:03 ca Exp $ +$Sendmail: overview.html,v 1.12.4.1 2003/03/05 19:54:20 ca Exp $ --> <h1>Technical Overview</h1> @@ -184,11 +184,11 @@ In the case of <TT>Abort</TT> the <hr size="1"> <font size="-1"> -Copyright (c) 2000, 2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2001, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/sample.html b/gnu/usr.sbin/sendmail/libmilter/docs/sample.html index 879258c39df..7f669b793de 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/sample.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/sample.html @@ -480,11 +480,11 @@ main(argc, argv) </pre> <hr size="1"> <font size="-1"> -Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addheader.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addheader.html index 6f852aebf6e..a49c648780f 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addheader.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addheader.html @@ -105,11 +105,11 @@ href="smfi_chgheader.html">smfi_chgheader</a>. <hr size="1"> <font size="-1"> -Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addrcpt.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addrcpt.html index d0a59638eb2..3b2eb56ccba 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addrcpt.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_addrcpt.html @@ -70,11 +70,11 @@ in the smfiDesc_str passed to <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_chgheader.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_chgheader.html index 89ce6f26ebf..fc7ba97bd42 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_chgheader.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_chgheader.html @@ -107,11 +107,11 @@ Otherwise, it returns MI_SUCCESS. <hr size="1"> <font size="-1"> -Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_delrcpt.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_delrcpt.html index f86fd2efc39..451f36a6a94 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_delrcpt.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_delrcpt.html @@ -69,11 +69,11 @@ The addresses to be removed must match exactly. For example, an address and its <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getpriv.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getpriv.html index 8bb6efae953..85c994cd89f 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getpriv.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getpriv.html @@ -49,11 +49,11 @@ Get the connection-specific data pointer for this connection. <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getsymval.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getsymval.html index 8cbde7d7cb7..7f3db6ae0ce 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getsymval.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_getsymval.html @@ -86,11 +86,11 @@ sendmail distribution. <hr size="1"> <font size="-1"> -Copyright (c) 2000, 2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2002-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_main.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_main.html index 9652eaa4855..674ef69a282 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_main.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_main.html @@ -38,11 +38,11 @@ Hand control to libmilter event loop. <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_register.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_register.html index 705b3a4a9da..2e9ee3dbc95 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_register.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_register.html @@ -150,11 +150,11 @@ the following values, describing the actions the filter may take: <hr size="1"> <font size="-1"> -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2001, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_replacebody.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_replacebody.html index 204c2dc0eb3..2ef0f493352 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_replacebody.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_replacebody.html @@ -80,11 +80,11 @@ Otherwise, it will return MI_SUCCESS. <hr size="1"> <font size="-1"> -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2001, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setbacklog.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setbacklog.html index 79f0fd02ade..d5592661900 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setbacklog.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setbacklog.html @@ -50,11 +50,11 @@ to zero.</td> <hr size="1"> <font size="-1"> -Copyright (c) 2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2002-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setconn.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setconn.html index 0d46a5bc48e..b0aed7c2a68 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setconn.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setconn.html @@ -49,16 +49,26 @@ Set the socket through which this filter should communicate with sendmail. <tr> <th valign="top" align=left>RETURN VALUES</th> -<td>smfi_setconn will not fail on an invalid address. The failure will -only be detected in <a href="smfi_main.html">smfi_main</a></td> +<td>smfi_setconn will not fail on an invalid address. +The failure will only be detected in <a href="smfi_main.html">smfi_main</a></td>. +Nevertheless, smfi_setconn may fail for other reasons, e.g., +due to a lack of memory. </tr> <tr> <th valign="top" align=left>NOTES</th> <td> -<ul><li>If possible, filters should not run as root when communicating over unix/local domain sockets. - <li>Unix/local sockets should have their permissions set to 0600 (read/write permission only for the socket's owner). +<ul> + <li>If possible, filters should not run as root when communicating + over unix/local domain sockets. + <li>Unix/local sockets should have their permissions set to + 0600 (read/write permission only for the socket's owner) or + 0660 (read/write permission for the socket's owner and group) + which is useful if the sendmail RunAsUser option is used. + The permissions for a unix/local domain socket are determined as + usual by <code>umask</code>, which should be set to 007 or 077 + before calling <code>smfi_setconn()</code>. </ul> </td> </tr> @@ -67,11 +77,11 @@ only be detected in <a href="smfi_main.html">smfi_main</a></td> <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setpriv.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setpriv.html index e800cc8dcc0..6bd79965da6 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setpriv.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setpriv.html @@ -67,11 +67,11 @@ and set the pointer to NULL. <hr size="1"> <font size="-1"> -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2001, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setreply.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setreply.html index 73852f21c4d..87a47d7ad7a 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setreply.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_setreply.html @@ -87,11 +87,11 @@ SMFI_TEMPFAIL is used for the message, the custom reply is not used. <hr size="1"> <font size="-1"> -Copyright (c) 2000, 2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2002-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_settimeout.html b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_settimeout.html index 6fee16621d7..c27f8176f5a 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/smfi_settimeout.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/smfi_settimeout.html @@ -53,11 +53,11 @@ no wait, <b>not</b> "wait forever". <hr size="1"> <font size="-1"> -Copyright (c) 2000, 2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2002-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_abort.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_abort.html index aeddf6f37d3..d47b50518bf 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_abort.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_abort.html @@ -70,11 +70,11 @@ message is later aborted outside its control. <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_body.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_body.html index b19e0d4913d..6aed207c848 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_body.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_body.html @@ -70,11 +70,11 @@ significantly impact filter performance. <hr size="1"> <font size="-1"> -Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_close.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_close.html index 07742be7682..30db78643d7 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_close.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_close.html @@ -56,11 +56,11 @@ currently ignored. <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_connect.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_connect.html index 17102856ba2..af58bf9cba8 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_connect.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_connect.html @@ -80,11 +80,11 @@ routine, this filter's xxfi_connect() will not be called.</td> <hr size="1"> <font size="-1"> -Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. +Copyright (c) 2000-2001, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envfrom.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envfrom.html index d023c404768..5eeaa376fdc 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envfrom.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envfrom.html @@ -76,17 +76,17 @@ Handle the envelope FROM command. <tr> <th valign="top" align=left>NOTES</th> <td>For more details on ESTMP responses, please see RFC -<a href="http://www.cis.ohio-state.edu/rfc/rfc1869.txt">1869</a>.</td> +<a href="http://www.rfc-editor.org/rfc/rfc1869.txt">1869</a>.</td> </tr> </table> <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envrcpt.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envrcpt.html index f13626a2191..9d32e90962c 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envrcpt.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_envrcpt.html @@ -78,17 +78,17 @@ Handle the envelope RCPT command. <tr> <th valign="top" align=left>NOTES</th> <td>For more details on ESTMP responses, please see RFC -<a href="http://www.cis.ohio-state.edu/rfc/rfc1869.txt">1869</a>.</td> +<a href="http://www.rfc-editor.org/rfc/rfc1869.txt">1869</a>.</td> </tr> </table> <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eoh.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eoh.html index 46c7925f308..b745959594c 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eoh.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eoh.html @@ -43,11 +43,11 @@ Handle the end of message headers. <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eom.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eom.html index 40f6deec02a..1c99103cd1e 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eom.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_eom.html @@ -48,11 +48,11 @@ End of a message. <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_header.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_header.html index a6c6322b13b..1be49584c80 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_header.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_header.html @@ -56,7 +56,7 @@ Handle a message header. <ul> <li>Later filters will see header changes/additions made by earlier ones. <li>For much more detail about header format, please see -RFC <a href="http://www.cis.ohio-state.edu/htbin/rfc/rfc822.html">822</a> +RFC <a href="http://www.rfc-editor.org/rfc/rfc822.html">822</a> </ul> </td> </tr> @@ -64,11 +64,11 @@ RFC <a href="http://www.cis.ohio-state.edu/htbin/rfc/rfc822.html">822</a> <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_helo.html b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_helo.html index b1aa9e9a8ae..0eb8df6703c 100644 --- a/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_helo.html +++ b/gnu/usr.sbin/sendmail/libmilter/docs/xxfi_helo.html @@ -49,11 +49,11 @@ three times</td> <hr size="1"> <font size="-1"> -Copyright (c) 2000 Sendmail, Inc. and its suppliers. +Copyright (c) 2000, 2003 Sendmail, Inc. and its suppliers. All rights reserved. <br> By using this file, you agree to the terms and conditions set -forth in the <a href="LICENSE.txt">LICENSE</a>. +forth in the LICENSE. </font> </body> </html> diff --git a/gnu/usr.sbin/sendmail/libsm/clock.c b/gnu/usr.sbin/sendmail/libsm/clock.c index 616be3032be..4bfd22f176f 100644 --- a/gnu/usr.sbin/sendmail/libsm/clock.c +++ b/gnu/usr.sbin/sendmail/libsm/clock.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2003 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -12,7 +12,7 @@ */ #include <sm/gen.h> -SM_RCSID("@(#)$Sendmail: clock.c,v 1.35.2.2 2002/06/27 23:24:20 gshapiro Exp $") +SM_RCSID("@(#)$Sendmail: clock.c,v 1.35.2.3 2003/03/03 19:57:40 ca Exp $") #include <unistd.h> #include <time.h> #include <errno.h> @@ -167,7 +167,7 @@ sm_sigsafe_seteventm(intvl, func, arg) (void) setitimer(ITIMER_REAL, &itime, NULL); # else /* SM_CONF_SETITIMER */ intvl = SmEventQueue->ev_time - now; - (void) alarm((unsigned) intvl < 1 ? 1 : intvl); + (void) alarm((unsigned) (intvl < 1 ? 1 : intvl)); # endif /* SM_CONF_SETITIMER */ if (wasblocked == 0) (void) sm_releasesignal(SIGALRM); diff --git a/gnu/usr.sbin/sendmail/libsm/config.c b/gnu/usr.sbin/sendmail/libsm/config.c index 4e25ba0cd54..d9b1a289bc3 100644 --- a/gnu/usr.sbin/sendmail/libsm/config.c +++ b/gnu/usr.sbin/sendmail/libsm/config.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers. + * Copyright (c) 2000-2003 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("@(#)$Sendmail: config.c,v 1.27 2002/01/23 17:30:48 gshapiro Exp $") +SM_RCSID("@(#)$Sendmail: config.c,v 1.27.2.1 2003/03/06 02:16:24 ca Exp $") #include <stdlib.h> #include <sm/heap.h> @@ -197,6 +197,9 @@ char *SmCompileOptions[] = #if SM_CONF_SETITIMER "SM_CONF_SETITIMER", #endif /* SM_CONF_SETITIMER */ +#if SM_CONF_SIGSETJMP + "SM_CONF_SIGSETJMP", +#endif /* SM_CONF_SIGSETJMP */ #if SM_CONF_SHM "SM_CONF_SHM", #endif /* SM_CONF_SHM */ diff --git a/gnu/usr.sbin/sendmail/mail.local/mail.local.c b/gnu/usr.sbin/sendmail/mail.local/mail.local.c index fec1199b7e5..6f55e8959f3 100644 --- a/gnu/usr.sbin/sendmail/mail.local/mail.local.c +++ b/gnu/usr.sbin/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, "@(#)$Sendmail: mail.local.c,v 8.239.2.4 2003/01/15 19:17:15 ca Exp $") +SM_IDSTR(id, "@(#)$Sendmail: mail.local.c,v 8.239.2.5 2003/03/15 23:43:20 gshapiro Exp $") #include <stdlib.h> #include <sm/errstring.h> @@ -1135,7 +1135,7 @@ tryagain: goto err1; } - /* Get the starting offset of the new message for biff. */ + /* Get the starting offset of the new message */ curoff = lseek(mbfd, (off_t) 0, SEEK_END); (void) sm_snprintf(biffmsg, sizeof(biffmsg), "%s@%lld\n", name, (LONGLONG_T) curoff); diff --git a/gnu/usr.sbin/sendmail/sendmail/README b/gnu/usr.sbin/sendmail/sendmail/README index bd12890b8d3..558f947c7cc 100644 --- a/gnu/usr.sbin/sendmail/sendmail/README +++ b/gnu/usr.sbin/sendmail/sendmail/README @@ -9,7 +9,7 @@ # the sendmail distribution. # # -# $Sendmail: README,v 8.355.2.13 2003/01/15 19:17:15 ca Exp $ +# $Sendmail: README,v 8.355.2.14 2003/03/27 21:39:29 ca Exp $ # This directory contains the source files for sendmail(TM). @@ -478,6 +478,9 @@ USE_ENVIRON Set this to 1 to access process environment variables from parameter of main(). USE_DOUBLE_FORK By default this is on (1). Set it to 0 to suppress the extra fork() used to avoid intermediate zombies. +ALLOW_255 Do not convert (char)0xff to (char)0x7f in headers etc. + This can also be done at runtime with the command line + option -d82.101. +-----------------------+ @@ -1794,4 +1797,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.16 $, last update $Date: 2003/03/03 17:31:21 $ ) +(Version $Revision: 1.17 $, last update $Date: 2003/03/29 19:44:00 $ ) diff --git a/gnu/usr.sbin/sendmail/sendmail/collect.c b/gnu/usr.sbin/sendmail/sendmail/collect.c index 4db7114defd..cdc6f9a3c51 100644 --- a/gnu/usr.sbin/sendmail/sendmail/collect.c +++ b/gnu/usr.sbin/sendmail/sendmail/collect.c @@ -13,7 +13,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: collect.c,v 8.242.2.3 2002/12/03 17:06:30 gshapiro Exp $") +SM_RCSID("@(#)$Sendmail: collect.c,v 8.242.2.4 2003/03/28 17:34:39 ca Exp $") static void collecttimeout __P((time_t)); static void dferror __P((SM_FILE_T *volatile, char *, ENVELOPE *)); @@ -444,6 +444,7 @@ collect(fp, smtpmode, hdrp, e) OpMode != MD_ARPAFTP)) { + SM_ASSERT(pbp < peekbuf + sizeof(peekbuf)); *pbp++ = c; c = '.'; } @@ -455,11 +456,14 @@ collect(fp, smtpmode, hdrp, e) else { /* push back the ".\rx" */ + SM_ASSERT(pbp < peekbuf + sizeof(peekbuf)); *pbp++ = c; if (OpMode != MD_SMTP && OpMode != MD_DAEMON && OpMode != MD_ARPAFTP) { + SM_ASSERT(pbp < peekbuf + + sizeof(peekbuf)); *pbp++ = '\r'; c = '.'; } @@ -625,6 +629,7 @@ nextstate: } /* trim off trailing CRLF or NL */ + SM_ASSERT(bp > buf); if (*--bp != '\n' || *--bp != '\r') bp++; *bp = '\0'; diff --git a/gnu/usr.sbin/sendmail/sendmail/conf.c b/gnu/usr.sbin/sendmail/sendmail/conf.c index cbd5c8e60c4..10a2da575bb 100644 --- a/gnu/usr.sbin/sendmail/sendmail/conf.c +++ b/gnu/usr.sbin/sendmail/sendmail/conf.c @@ -13,7 +13,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: conf.c,v 8.972.2.27 2003/01/15 19:17:14 ca Exp $") +SM_RCSID("@(#)$Sendmail: conf.c,v 8.972.2.35 2003/03/28 05:46:09 ca Exp $") #include <sendmail/pathnames.h> @@ -329,6 +329,8 @@ setdefaults(e) DontProbeInterfaces = DPI_PROBEALL; DoubleBounceAddr = "postmaster"; MaxHeadersLength = MAXHDRSLEN; + MaxMimeHeaderLength = MAXLINE; + MaxMimeFieldLength = MaxMimeHeaderLength / 2; MaxForwardEntries = 0; FastSplit = 1; #if SASL @@ -3081,7 +3083,7 @@ static char *DefaultUserShells[] = "/bin/pam", "/usr/bin/keysh", /* key shell (extended Korn shell) */ "/bin/posix/sh", - "/sbin/sh" + "/sbin/sh", # endif /* V4FS */ # endif /* __hpux */ # if defined(_AIX3) || defined(_AIX4) @@ -5883,202 +5885,318 @@ char *OsCompileOptions[] = char *FFRCompileOptions[] = { #if _FFR_ADAPTIVE_EOL + /* tries to be smart about \r\n versus \n from broken clients */ + /* known to be broken, do not use */ "_FFR_ADAPTIVE_EOL", #endif /* _FFR_ADAPTIVE_EOL */ #if _FFR_ALLOW_SASLINFO + /* DefaultAuthInfo can be specified by user. */ + /* DefaultAuthInfo doesn't really work in 8.12 anymore. */ "_FFR_ALLOW_SASLINFO", #endif /* _FFR_ALLOW_SASLINFO */ #if _FFR_ALLOW_S0_ERROR_4XX + /* Allow for tempfail from S0 (ruleset 0). */ "_FFR_ALLOW_S0_ERROR_4XX", #endif /* _FFR_ALLOW_S0_ERROR_4XX */ #if _FFR_BESTMX_BETTER_TRUNCATION + /* Better truncation of list of MX records for dns map. */ "_FFR_BESTMX_BETTER_TRUNCATION", #endif /* _FFR_BESTMX_BETTER_TRUNCATION */ +#if _FFR_BLOCK_PROXIES + /* + ** Try to deal with open HTTP proxies that are used to send spam + ** by recognizing some commands from them. + */ + + "_FFR_BLOCK_PROXIES", +#endif /* _FFR_BLOCK_PROXIES */ #if _FFR_CACHE_LPC + /* Cache connections to LCP based mailers */ /* Christophe Wolfhugel of France Telecom Oleane */ "_FFR_CACHE_LPC", #endif /* _FFR_CACHE_LPC */ #if _FFR_CATCH_BROKEN_MTAS + /* Deal with MTAs that send a reply during the DATA phase. */ "_FFR_CATCH_BROKEN_MTAS", #endif /* _FFR_CATCH_BROKEN_MTAS */ #if _FFR_CATCH_LONG_STRINGS + /* Report long address strings instead of silently ignoring them. */ "_FFR_CATCH_LONG_STRINGS", #endif /* _FFR_CATCH_LONG_STRINGS */ #if _FFR_CHECK_EOM + /* Enable check_eom ruleset */ "_FFR_CHECK_EOM", #endif /* _FFR_CHECK_EOM */ #if _FFR_CHK_QUEUE + /* Stricter checks about queue directory permissions. */ "_FFR_CHK_QUEUE", #endif /* _FFR_CHK_QUEUE */ #if _FFR_CONTROL_MSTAT + /* Extended daemon status. */ "_FFR_CONTROL_MSTAT", #endif /* _FFR_CONTROL_MSTAT */ #if _FFR_DAEMON_NETUNIX + /* Allow local (not just TCP) socket connection to server. */ "_FFR_DAEMON_NETUNIX", #endif /* _FFR_DAEMON_NETUNIX */ #if _FFR_DEAL_WITH_ERROR_SSL + /* Deal with SSL errors by recognizing them as EOF. */ "_FFR_DEAL_WITH_ERROR_SSL", #endif /* _FFR_DEAL_WITH_ERROR_SSL */ #if _FFR_DEPRECATE_MAILER_FLAG_I + /* What it says :-) */ "_FFR_DEPRECATE_MAILER_FLAG_I", #endif /* _FFR_DEPRECATE_MAILER_FLAG_I */ #if _FFR_DIGUNIX_SAFECHOWN + /* Properly set SAFECHOWN (include/sm/conf.h) for Digital UNIX */ /* Problem noted by Anne Bennett of Concordia University */ "_FFR_DIGUNIX_SAFECHOWN", #endif /* _FFR_DIGUNIX_SAFECHOWN */ #if _FFR_DNSMAP_ALIASABLE + /* Allow dns map type to be used for aliases. */ /* Don Lewis of TDK */ "_FFR_DNSMAP_ALIASABLE", #endif /* _FFR_DNSMAP_ALIASABLE */ #if _FFR_DNSMAP_BASE + /* Specify a "base" domain for DNS lookups. */ "_FFR_DNSMAP_BASE", #endif /* _FFR_DNSMAP_BASE */ #if _FFR_DNSMAP_MULTI + /* Allow multiple return values for DNS map. */ "_FFR_DNSMAP_MULTI", # if _FFR_DNSMAP_MULTILIMIT + /* Limit number of return values for DNS map. */ "_FFR_DNSMAP_MULTILIMIT", # endif /* _FFR_DNSMAP_MULTILIMIT */ #endif /* _FFR_DNSMAP_MULTI */ #if _FFR_DONTLOCKFILESFORREAD_OPTION + /* Enable DontLockFilesForRead option. */ "_FFR_DONTLOCKFILESFORREAD_OPTION", #endif /* _FFR_DONTLOCKFILESFORREAD_OPTION */ -# if _FFR_DONT_STOP_LOOKING +#if _FFR_DONT_STOP_LOOKING + /* Continue with DNS lookups on ECONNREFUSED and TRY_AGAIN. */ /* Noted by Neil Rickert of Northern Illinois University */ "_FFR_DONT_STOP_LOOKING", -# endif /* _FFR_DONT_STOP_LOOKING */ +#endif /* _FFR_DONT_STOP_LOOKING */ #if _FFR_DOTTED_USERNAMES + /* Allow usernames with '.' */ "_FFR_DOTTED_USERNAMES", #endif /* _FFR_DOTTED_USERNAMES */ #if _FFR_DROP_TRUSTUSER_WARNING + /* + ** Don't issue this warning: + ** "readcf: option TrustedUser may cause problems on systems + ** which do not support fchown() if UseMSP is not set. + */ + "_FFR_DROP_TRUSTUSER_WARNING", #endif /* _FFR_DROP_TRUSTUSER_WARNING */ #if _FFR_FIX_DASHT + /* + ** If using -t, force not sending to argv recipients, even + ** if they are mentioned in the headers. + */ + "_FFR_FIX_DASHT", #endif /* _FFR_FIX_DASHT */ #if _FFR_FORWARD_SYSERR + /* Cause a "syserr" if forward file isn't "safe". */ "_FFR_FORWARD_SYSERR", #endif /* _FFR_FORWARD_SYSERR */ #if _FFR_GEN_ORCPT + /* Generate a ORCPT DSN arg if not already provided */ "_FFR_GEN_ORCPT", #endif /* _FFR_GEN_ORCPT */ #if _FFR_GROUPREADABLEAUTHINFOFILE + /* Allow group readable DefaultAuthInfo file. */ "_FFR_GROUPREADABLEAUTHINFOFILE", #endif /* _FFR_GROUPREADABLEAUTHINFOFILE */ #if _FFR_HANDLE_ISO8859_GECOS + /* + ** Allow ISO 8859 characters in GECOS field: replace them + ** ith ASCII "equivalent". + */ + /* Peter Eriksson of Linkopings universitet */ "_FFR_HANDLE_ISO8859_GECOS", #endif /* _FFR_HANDLE_ISO8859_GECOS */ #if _FFR_HDR_TYPE + /* Set 'h' in {addr_type} for headers. */ "_FFR_HDR_TYPE", #endif /* _FFR_HDR_TYPE */ #if _FFR_HPUX_NSSWITCH + /* Use nsswitch on HP-UX */ "_FFR_HPUX_NSSWITCH", #endif /* _FFR_HPUX_NSSWITCH */ #if _FFR_IGNORE_EXT_ON_HELO + /* Ignore extensions offered in response to HELO */ "_FFR_IGNORE_EXT_ON_HELO", #endif /* _FFR_IGNORE_EXT_ON_HELO */ #if _FFR_LDAP_RECURSION + /* Support LDAP recursion in LDAP responses */ /* Andrew Baucom */ "_FFR_LDAP_RECURSION", #endif /* _FFR_LDAP_RECURSION */ #if _FFR_LDAP_SETVERSION + /* New LDAP map option for setting LDAP protocol version */ "_FFR_LDAP_SETVERSION", #endif /* _FFR_LDAP_SETVERSION */ #if _FFR_LDAP_URI + /* Support LDAP URI form of specifying host/port (and allows ldaps) */ "_FFR_LDAP_URI", #endif /* _FFR_LDAP_URI */ #if _FFR_MAX_FORWARD_ENTRIES + /* Try to limit number of .forward entries */ + /* (doesn't work) */ /* Randall S. Winchester of the University of Maryland */ "_FFR_MAX_FORWARD_ENTRIES", #endif /* _FFR_MAX_FORWARD_ENTRIES */ #if MILTER # if _FFR_MILTER_421 + /* If a filter returns 421, close the SMTP connection */ "_FFR_MILTER_421", # endif /* _FFR_MILTER_421 */ # if _FFR_MILTER_PERDAEMON + /* Per DaemonPortOptions InputMailFilter lists */ "_FFR_MILTER_PERDAEMON", # endif /* _FFR_MILTER_PERDAEMON */ #endif /* MILTER */ #if _FFR_NODELAYDSN_ON_HOLD + /* Do not issue a DELAY DSN for mailers that use the hold flag. */ /* Steven Pitzl */ "_FFR_NODELAYDSN_ON_HOLD", #endif /* _FFR_NODELAYDSN_ON_HOLD */ #if _FFR_NO_PIPE + /* Disable PIPELINING, delay client if used. */ "_FFR_NO_PIPE", #endif /* _FFR_NO_PIPE */ #if _FFR_QUARANTINE + /* Quarantine items in the queue */ "_FFR_QUARANTINE", #endif /* _FFR_QUARANTINE */ #if _FFR_QUEUEDELAY + /* Exponential queue delay; disabled in 8.13 since it isn't used. */ "_FFR_QUEUEDELAY", #endif /* _FFR_QUEUEDELAY */ #if _FFR_QUEUE_GROUP_SORTORDER + /* Allow QueueSortOrder per queue group. */ /* XXX: Still need to actually use qgrp->qg_sortorder */ "_FFR_QUEUE_GROUP_SORTORDER", #endif /* _FFR_QUEUE_GROUP_SORTORDER */ #if _FFR_QUEUE_MACRO + /* Define {queue} macro. */ "_FFR_QUEUE_MACRO", #endif /* _FFR_QUEUE_MACRO */ +#if _FFR_QUEUERETURN_DSN + /* + ** Provide an option for different Timeout.queue{warn,return} for + ** DSN messages. These days, queues are filled with bounces for + ** spam that will never make it to the sender and therefore slow + ** down queue runs until they timeout. + */ + + "_FFR_QUEUERETURN_DSN", +#endif /* _FFR_QUEUERETURN_DSN */ #if _FFR_QUEUE_RUN_PARANOIA + /* Additional checks when doing queue runs. */ "_FFR_QUEUE_RUN_PARANOIA", #endif /* _FFR_QUEUE_RUN_PARANOIA */ #if _FFR_QUEUE_SCHED_DBG + /* Debug output for the queue scheduler. */ "_FFR_QUEUE_SCHED_DBG", #endif /* _FFR_QUEUE_SCHED_DBG */ #if _FFR_REDIRECTEMPTY + /* + ** envelope <> can't be sent to mailing lists, only owner- + ** send spam of this type to owner- of the list + ** ---- to stop spam from going to mailing lists. + */ + "_FFR_REDIRECTEMPTY", #endif /* _FFR_REDIRECTEMPTY */ #if _FFR_REJECT_LOG + /* Log when we start/stop rejecting connections due to load, etc */ "_FFR_REJECT_LOG", #endif /* _FFR_REJECT_LOG */ #if _FFR_REQ_DIR_FSYNC_OPT + /* Add cf option to fsync() directories */ "_FFR_REQ_DIR_FSYNC_OPT", #endif /* _FFR_REQ_DIR_FSYNC_OPT */ #if _FFR_RESET_MACRO_GLOBALS + /* Allow macro 'j' to be set dynamically via rulesets. */ "_FFR_RESET_MACRO_GLOBALS", #endif /* _FFR_RESET_MACRO_GLOBALS */ #if _FFR_RESPOND_ALL - /* in vacation */ + /* in vacation: respond to every message, not just once per interval */ "_FFR_RESPOND_ALL", #endif /* _FFR_RESPOND_ALL */ #if _FFR_RHS + /* Random shuffle for queue sorting. */ "_FFR_RHS", #endif /* _FFR_RHS */ #if _FFR_SASL_OPT_M + /* Support SASL's SASL_SEC_MUTUAL_AUTH option */ "_FFR_SASL_OPT_M", #endif /* _FFR_SASL_OPT_M */ #if _FFR_SELECT_SHM + /* Auto-select of shared memory key */ "_FFR_SELECT_SHM", #endif /* _FFR_SELECT_SHM */ #if _FFR_SHM_STATUS + /* Donated code (unused). */ "_FFR_SHM_STATUS", #endif /* _FFR_SHM_STATUS */ #if _FFR_SMFI_OPENSOCKET + /* libmilter: smfi_opensocket() to force the socket open early */ "_FFR_SMFI_OPENSOCKET", #endif /* _FFR_SMFI_OPENSOCKET */ #if _FFR_SMTP_SSL + /* Support for smtps (SMTP over SSL) */ "_FFR_SMTP_SSL", #endif /* _FFR_SMTP_SSL */ #if _FFR_SOFT_BOUNCE + /* Turn all errors into temporary errors. */ "_FFR_SOFT_BOUNCE", #endif /* _FFR_SOFT_BOUNCE */ #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. + */ + /* Chris Adams of HiWAAY Informations Services */ "_FFR_SPT_ALIGN", #endif /* _FFR_SPT_ALIGN */ #if _FFR_STRIPBACKSL + /* + ** Strip backslash from addresses (so sender doesn't + ** decide to ignore forward) + */ + "_FFR_STRIPBACKSL", #endif /* _FFR_STRIPBACKSL */ #if _FFR_TIMERS + /* Donated code (unused). */ "_FFR_TIMERS", #endif /* _FFR_TIMERS */ #if _FFR_TLS_1 + /* More STARTTLS options, e.g., secondary certs. */ "_FFR_TLS_1", #endif /* _FFR_TLS_1 */ #if _FFR_TRUSTED_QF + /* + ** If we don't own the file mark it as unsafe. + ** However, allow TrustedUser to own it as well + ** in case TrustedUser manipulates the queue. + */ + "_FFR_TRUSTED_QF", #endif /* _FFR_TRUSTED_QF */ #if _FFR_USE_SETLOGIN + /* Use setlogin() */ /* Peter Philipp */ "_FFR_USE_SETLOGIN", #endif /* _FFR_USE_SETLOGIN */ diff --git a/gnu/usr.sbin/sendmail/sendmail/deliver.c b/gnu/usr.sbin/sendmail/sendmail/deliver.c index 58c2ed9c420..da6de346699 100644 --- a/gnu/usr.sbin/sendmail/sendmail/deliver.c +++ b/gnu/usr.sbin/sendmail/sendmail/deliver.c @@ -14,7 +14,7 @@ #include <sendmail.h> #include <sys/time.h> -SM_RCSID("@(#)$Sendmail: deliver.c,v 8.940.2.15 2003/02/07 17:57:43 ca Exp $") +SM_RCSID("@(#)$Sendmail: deliver.c,v 8.940.2.18 2003/03/28 17:34:39 ca Exp $") #if HASSETUSERCONTEXT # include <login_cap.h> @@ -1158,7 +1158,7 @@ coloncmp(a, b) /* Need to account for IPv6 bracketed addresses */ if (*a == '[') braclev++; - else if (*a == '[' && braclev > 0) + else if (*a == ']' && braclev > 0) braclev--; else if (*a == ':' && braclev <= 0) { @@ -1626,7 +1626,7 @@ deliver(e, firstto) } #if _FFR_STRIPBACKSL /* - ** Strip one leading backslash if requesting and the + ** Strip one leading backslash if requested and the ** next character is alphanumerical (the latter can ** probably relaxed a bit, see RFC2821). */ @@ -4719,7 +4719,11 @@ putbody(mci, e, separator) { pos += bp - buf; if (c != '\r') + { + SM_ASSERT(pbp < peekbuf + + sizeof(peekbuf)); *pbp++ = c; + } } bp = buf; @@ -4759,6 +4763,7 @@ putbody(mci, e, separator) } /* had a naked carriage return */ + SM_ASSERT(pbp < peekbuf + sizeof(peekbuf)); *pbp++ = c; c = '\r'; ostate = OS_INLINE; @@ -4787,7 +4792,11 @@ putch: else if ((d = sm_io_getc(e->e_dfp, SM_TIME_DEFAULT)) != SM_IO_EOF) + { + SM_ASSERT(pbp < peekbuf + + sizeof(peekbuf)); *pbp++ = d; + } if (d == '\n' || d == SM_IO_EOF) { @@ -4837,6 +4846,8 @@ putch: mci->mci_mailer->m_eol); } ostate = OS_HEAD; + SM_ASSERT(pbp < peekbuf + + sizeof(peekbuf)); *pbp++ = c; continue; } diff --git a/gnu/usr.sbin/sendmail/sendmail/headers.c b/gnu/usr.sbin/sendmail/sendmail/headers.c index f70d80f9362..2b3203ed0c4 100644 --- a/gnu/usr.sbin/sendmail/sendmail/headers.c +++ b/gnu/usr.sbin/sendmail/sendmail/headers.c @@ -13,7 +13,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: headers.c,v 8.266.4.4 2003/01/18 00:41:48 gshapiro Exp $") +SM_RCSID("@(#)$Sendmail: headers.c,v 8.266.4.5 2003/03/12 22:42:52 gshapiro Exp $") static size_t fix_mime_header __P((HDR *, ENVELOPE *)); static int priencode __P((char *)); @@ -771,6 +771,12 @@ eatheader(e, full, log) e->e_timeoutclass = TOC_NONURGENT; } +#if _FFR_QUEUERETURN_DSN + /* If no timeoutclass picked and it's a DSN, use that timeoutclass */ + if (e->e_timeoutclass == TOC_NORMAL && bitset(EF_RESPONSE, e->e_flags)) + e->e_timeoutclass = TOC_DSN; +#endif /* _FFR_QUEUERETURN_DSN */ + /* date message originated */ p = hvalue("posted-date", e->e_header); if (p == NULL) diff --git a/gnu/usr.sbin/sendmail/sendmail/main.c b/gnu/usr.sbin/sendmail/sendmail/main.c index 67d8c647573..1e5831a8693 100644 --- a/gnu/usr.sbin/sendmail/sendmail/main.c +++ b/gnu/usr.sbin/sendmail/sendmail/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("@(#)$Sendmail: main.c,v 8.887.2.20 2003/02/07 17:57:44 ca Exp $") +SM_RCSID("@(#)$Sendmail: main.c,v 8.887.2.22 2003/03/06 18:38:08 ca Exp $") #if NETINET || NETINET6 @@ -128,6 +128,7 @@ int SyslogPrefixLen; /* estimated length of syslog prefix */ { \ if (extraprivs && \ OpMode != MD_DELIVER && OpMode != MD_SMTP && \ + OpMode != MD_ARPAFTP && \ OpMode != MD_VERIFY && OpMode != MD_TEST) \ { \ (void) sm_io_fprintf(smioout, SM_TIME_DEFAULT, \ @@ -392,6 +393,7 @@ main(argc, argv, envp) # endif /* ! OPTIONS */ #endif /* _FFR_QUARANTINE */ + /* Set to 0 to allow -b; need to check optarg before using it! */ opterr = 0; while ((j = getopt(argc, argv, OPTIONS)) != -1) { @@ -442,6 +444,13 @@ main(argc, argv, envp) break; case 'L': + if (optarg == NULL) + { + (void) sm_io_fprintf(smioout, SM_TIME_DEFAULT, + "option requires an argument -- '%c'", + (char) j); + return EX_USAGE; + } j = SM_MIN(strlen(optarg), 24) + 1; sysloglabel = xalloc(j); (void) sm_strlcpy(sysloglabel, optarg, j); diff --git a/gnu/usr.sbin/sendmail/sendmail/milter.c b/gnu/usr.sbin/sendmail/sendmail/milter.c index 1faf3360cb4..53c57e526a0 100644 --- a/gnu/usr.sbin/sendmail/sendmail/milter.c +++ b/gnu/usr.sbin/sendmail/sendmail/milter.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999-2002 Sendmail, Inc. and its suppliers. + * Copyright (c) 1999-2003 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -10,7 +10,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: milter.c,v 8.197.2.6 2002/12/30 05:54:00 ca Exp $") +SM_RCSID("@(#)$Sendmail: milter.c,v 8.197.2.7 2003/03/22 18:54:25 ca Exp $") #if MILTER # include <libmilter/mfapi.h> @@ -46,8 +46,18 @@ static char *MilterEnvRcptMacros[MAXFILTERMACROS + 1]; } # if _FFR_QUARANTINE -# define MILTER_CHECK_ERROR(action) \ - if (tTd(71, 101)) \ +# define MILTER_CHECK_ERROR(initial, action) \ + if (!initial && tTd(71, 100)) \ + { \ + if (e->e_quarmsg == NULL) \ + { \ + e->e_quarmsg = sm_rpool_strdup_x(e->e_rpool, \ + "filter failure"); \ + macdefine(&e->e_macro, A_PERM, macid("{quarantine}"), \ + e->e_quarmsg); \ + } \ + } \ + else if (tTd(71, 101)) \ { \ if (e->e_quarmsg == NULL) \ { \ @@ -64,7 +74,7 @@ static char *MilterEnvRcptMacros[MAXFILTERMACROS + 1]; else \ action; # else /* _FFR_QUARANTINE */ -# define MILTER_CHECK_ERROR(action) \ +# define MILTER_CHECK_ERROR(initial, action) \ if (bitnset(SMF_TEMPFAIL, m->mf_flags)) \ *state = SMFIR_TEMPFAIL; \ else if (bitnset(SMF_REJECT, m->mf_flags)) \ @@ -1915,7 +1925,7 @@ milter_send_command(m, command, data, sz, e, state) m->mf_timeout[SMFTO_WRITE], e); if (m->mf_state == SMFS_ERROR) { - MILTER_CHECK_ERROR(return NULL); + MILTER_CHECK_ERROR(false, return NULL); return NULL; } @@ -1924,7 +1934,7 @@ milter_send_command(m, command, data, sz, e, state) m->mf_timeout[SMFTO_READ], e); if (m->mf_state == SMFS_ERROR) { - MILTER_CHECK_ERROR(return NULL); + MILTER_CHECK_ERROR(false, return NULL); return NULL; } @@ -2043,7 +2053,7 @@ milter_command(command, data, sz, macros, e, state) /* previous problem? */ if (m->mf_state == SMFS_ERROR) { - MILTER_CHECK_ERROR(continue); + MILTER_CHECK_ERROR(false, continue); break; } @@ -2058,7 +2068,7 @@ milter_command(command, data, sz, macros, e, state) milter_send_macros(m, macros, command, e); if (m->mf_state == SMFS_ERROR) { - MILTER_CHECK_ERROR(continue); + MILTER_CHECK_ERROR(false, continue); break; } } @@ -3062,7 +3072,7 @@ milter_init(e, state) m->mf_sock = milter_open(m, false, e); if (m->mf_state == SMFS_ERROR) { - MILTER_CHECK_ERROR(continue); + MILTER_CHECK_ERROR(true, continue); break; } @@ -3084,7 +3094,7 @@ milter_init(e, state) /* if negotation failure, close socket */ milter_error(m, e); - MILTER_CHECK_ERROR(continue); + MILTER_CHECK_ERROR(true, continue); } if (MilterLogLevel > 9) sm_syslog(LOG_INFO, e->e_id, @@ -3541,7 +3551,7 @@ milter_data(e, state) /* previous problem? */ if (m->mf_state == SMFS_ERROR) { - MILTER_CHECK_ERROR(continue); + MILTER_CHECK_ERROR(false, continue); break; } @@ -3602,7 +3612,7 @@ milter_data(e, state) "milter_data(%s): EOM ACK/NAK timeout", m->mf_name); milter_error(m, e); - MILTER_CHECK_ERROR(break); + MILTER_CHECK_ERROR(false, break); break; } @@ -3790,7 +3800,7 @@ milter_data(e, state) if (m->mf_state == SMFS_ERROR) { - MILTER_CHECK_ERROR(continue); + MILTER_CHECK_ERROR(false, continue); goto finishup; } } diff --git a/gnu/usr.sbin/sendmail/sendmail/parseaddr.c b/gnu/usr.sbin/sendmail/sendmail/parseaddr.c index 08eade8ea0b..fe0d0511dc5 100644 --- a/gnu/usr.sbin/sendmail/sendmail/parseaddr.c +++ b/gnu/usr.sbin/sendmail/sendmail/parseaddr.c @@ -13,7 +13,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: parseaddr.c,v 8.359.2.4 2003/01/18 00:41:48 gshapiro Exp $") +SM_RCSID("@(#)$Sendmail: parseaddr.c,v 8.359.2.6 2003/03/27 02:39:53 ca Exp $") static void allocaddr __P((ADDRESS *, int, char *, ENVELOPE *)); static int callsubr __P((char**, int, ENVELOPE *)); @@ -608,7 +608,7 @@ unsigned char TokTypeNoC[256] = }; -#define NOCHAR -1 /* signal nothing in lookahead token */ +#define NOCHAR (-1) /* signal nothing in lookahead token */ char ** prescan(addr, delim, pvpbuf, pvpbsize, delimptr, toktab) @@ -694,6 +694,7 @@ prescan(addr, delim, pvpbuf, pvpbsize, delimptr, toktab) /* see if there is room */ if (q >= &pvpbuf[pvpbsize - 5]) { + addrtoolong: usrerr("553 5.1.1 Address too long"); if (strlen(addr) > MAXNAME) addr[MAXNAME] = '\0'; @@ -705,11 +706,15 @@ prescan(addr, delim, pvpbuf, pvpbsize, delimptr, toktab) } /* squirrel it away */ +#if !ALLOW_255 + if ((char) c == (char) -1 && !tTd(82, 101)) + c &= 0x7f; +#endif /* !ALLOW_255 */ *q++ = c; } /* read a new input character */ - c = *p++; + c = (*p++) & 0x00ff; if (c == '\0') { /* diagnose and patch up bad syntax */ @@ -764,6 +769,9 @@ prescan(addr, delim, pvpbuf, pvpbsize, delimptr, toktab) } else if (c != '!' || state == QST) { + /* see if there is room */ + if (q >= &pvpbuf[pvpbsize - 5]) + goto addrtoolong; *q++ = '\\'; continue; } @@ -849,6 +857,9 @@ prescan(addr, delim, pvpbuf, pvpbsize, delimptr, toktab) /* new token */ if (tok != q) { + /* see if there is room */ + if (q >= &pvpbuf[pvpbsize - 5]) + goto addrtoolong; *q++ = '\0'; if (tTd(22, 36)) { diff --git a/gnu/usr.sbin/sendmail/sendmail/queue.c b/gnu/usr.sbin/sendmail/sendmail/queue.c index 8fb32ec7c93..cc67fa39c33 100644 --- a/gnu/usr.sbin/sendmail/sendmail/queue.c +++ b/gnu/usr.sbin/sendmail/sendmail/queue.c @@ -13,7 +13,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: queue.c,v 8.863.2.28 2003/02/11 17:17:22 ca Exp $") +SM_RCSID("@(#)$Sendmail: queue.c,v 8.863.2.30 2003/03/20 00:20:16 ca Exp $") #include <dirent.h> @@ -32,11 +32,11 @@ SM_RCSID("@(#)$Sendmail: queue.c,v 8.863.2.28 2003/02/11 17:17:22 ca Exp $") #if _FFR_QUEUEDELAY # define QF_VERSION 7 /* version number of this queue format */ static time_t queuedelay __P((ENVELOPE *)); -#define queuedelay_qfver_unsupported(qfver) false +# define queuedelay_qfver_unsupported(qfver) false #else /* _FFR_QUEUEDELAY */ # define QF_VERSION 6 /* version number of this queue format */ # define queuedelay(e) MinQueueAge -#define queuedelay_qfver_unsupported(qfver) ((qfver) == 5 || (qfver) == 7) +# define queuedelay_qfver_unsupported(qfver) ((qfver) == 5 || (qfver) == 7) #endif /* _FFR_QUEUEDELAY */ #if _FFR_QUARANTINE static char queue_letter __P((ENVELOPE *, int)); @@ -219,7 +219,7 @@ int *PRSATmpCnt; /* offset for queue_shm */ # define OFF_QUEUE_SHM(p) (((char *) (p)) + SHM_OFF_HEAD + sizeof(FileSys) + sizeof(int) * 2) -#define QSHM_ENTRIES(i) QShm[i].qs_entries +# define QSHM_ENTRIES(i) QShm[i].qs_entries /* basic size of shared memory segment */ # define SM_T_SIZE (SHM_OFF_HEAD + sizeof(FileSys) + sizeof(int) * 2) @@ -3316,8 +3316,8 @@ strrev(fwd) #if _FFR_RHS -#define NASCII 128 -#define NCHAR 256 +# define NASCII 128 +# define NCHAR 256 static unsigned char ShuffledAlphabet[NCHAR]; diff --git a/gnu/usr.sbin/sendmail/sendmail/readcf.c b/gnu/usr.sbin/sendmail/sendmail/readcf.c index 31049e56577..d8e8a6c7671 100644 --- a/gnu/usr.sbin/sendmail/sendmail/readcf.c +++ b/gnu/usr.sbin/sendmail/sendmail/readcf.c @@ -13,7 +13,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: readcf.c,v 8.607.2.7 2002/11/10 19:13:11 ca Exp $") +SM_RCSID("@(#)$Sendmail: readcf.c,v 8.607.2.8 2003/03/12 22:42:52 gshapiro Exp $") #if NETINET || NETINET6 # include <arpa/inet.h> @@ -3976,6 +3976,12 @@ static struct timeoutinfo { "starttls", TO_STARTTLS }, #define TO_ACONNECT 0x23 { "aconnect", TO_ACONNECT }, +#if _FFR_QUEUERETURN_DSN +# define TO_QUEUEWARN_DSN 0x24 + { "queuewarn.dsn", TO_QUEUEWARN_DSN }, +# define TO_QUEUERETURN_DSN 0x25 + { "queuereturn.dsn", TO_QUEUERETURN_DSN }, +#endif /* _FFR_QUEUERETURN_DSN */ { NULL, 0 }, }; @@ -4094,6 +4100,9 @@ settimeout(name, val, sticky) TimeOuts.to_q_warning[TOC_NORMAL] = toval; TimeOuts.to_q_warning[TOC_URGENT] = toval; TimeOuts.to_q_warning[TOC_NONURGENT] = toval; +#if _FFR_QUEUERETURN_DSN + TimeOuts.to_q_warning[TOC_DSN] = toval; +#endif /* _FFR_QUEUERETURN_DSN */ addopts = 2; break; @@ -4112,11 +4121,21 @@ settimeout(name, val, sticky) TimeOuts.to_q_warning[TOC_NONURGENT] = toval; break; +#if _FFR_QUEUERETURN_DSN + case TO_QUEUEWARN_DSN: + toval = convtime(val, 'h'); + TimeOuts.to_q_warning[TOC_DSN] = toval; + break; +#endif /* _FFR_QUEUERETURN_DSN */ + case TO_QUEUERETURN: toval = convtime(val, 'd'); TimeOuts.to_q_return[TOC_NORMAL] = toval; TimeOuts.to_q_return[TOC_URGENT] = toval; TimeOuts.to_q_return[TOC_NONURGENT] = toval; +#if _FFR_QUEUERETURN_DSN + TimeOuts.to_q_return[TOC_DSN] = toval; +#endif /* _FFR_QUEUERETURN_DSN */ addopts = 2; break; @@ -4135,6 +4154,13 @@ settimeout(name, val, sticky) TimeOuts.to_q_return[TOC_NONURGENT] = toval; break; +#if _FFR_QUEUERETURN_DSN + case TO_QUEUERETURN_DSN: + toval = convtime(val, 'd'); + TimeOuts.to_q_return[TOC_DSN] = toval; + break; +#endif /* _FFR_QUEUERETURN_DSN */ + case TO_HOSTSTATUS: MciInfoTimeout = toval; break; diff --git a/gnu/usr.sbin/sendmail/sendmail/sendmail.h b/gnu/usr.sbin/sendmail/sendmail/sendmail.h index 2fdf879f67d..e4a627fdf9f 100644 --- a/gnu/usr.sbin/sendmail/sendmail/sendmail.h +++ b/gnu/usr.sbin/sendmail/sendmail/sendmail.h @@ -48,7 +48,7 @@ #ifdef _DEFINE # ifndef lint -SM_UNUSED(static char SmailId[]) = "@(#)$Sendmail: sendmail.h,v 8.919.2.16 2003/01/18 00:41:50 gshapiro Exp $"; +SM_UNUSED(static char SmailId[]) = "@(#)$Sendmail: sendmail.h,v 8.919.2.17 2003/03/12 22:42:52 gshapiro Exp $"; # endif /* ! lint */ #endif /* _DEFINE */ @@ -2021,6 +2021,9 @@ EXTERN struct #define TOC_NORMAL 0 /* normal delivery */ #define TOC_URGENT 1 /* urgent delivery */ #define TOC_NONURGENT 2 /* non-urgent delivery */ +#if _FFR_QUEUERETURN_DSN +# define TOC_DSN 3 /* DSN delivery */ +#endif /* _FFR_QUEUERETURN_DSN */ /* resolver timeout specifiers */ #define RES_TO_FIRST 0 /* first attempt */ diff --git a/gnu/usr.sbin/sendmail/sendmail/sm_resolve.c b/gnu/usr.sbin/sendmail/sendmail/sm_resolve.c index 4812f34b949..c5623c7e665 100644 --- a/gnu/usr.sbin/sendmail/sendmail/sm_resolve.c +++ b/gnu/usr.sbin/sendmail/sendmail/sm_resolve.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers. + * Copyright (c) 2000-2003 Sendmail, Inc. and its suppliers. * All rights reserved. * * By using this file, you agree to the terms and conditions set @@ -46,7 +46,7 @@ # if NAMED_BIND # include "sm_resolve.h" -SM_RCSID("$Sendmail: sm_resolve.c,v 8.24.4.6 2002/06/25 04:22:41 ca Exp $") +SM_RCSID("$Sendmail: sm_resolve.c,v 8.24.4.7 2003/03/22 22:55:37 ca Exp $") static struct stot { @@ -172,10 +172,10 @@ parse_dns_reply(data, len) DNS_REPLY_T *r; RESOURCE_RECORD_T **rr; - r = (DNS_REPLY_T *) xalloc(sizeof(*r)); - memset(r, 0, sizeof(*r)); + r = (DNS_REPLY_T *) sm_malloc(sizeof(*r)); if (r == NULL) return NULL; + memset(r, 0, sizeof(*r)); p = data; @@ -227,12 +227,13 @@ parse_dns_reply(data, len) dns_free_data(r); return NULL; } - *rr = (RESOURCE_RECORD_T *) xalloc(sizeof(**rr)); + *rr = (RESOURCE_RECORD_T *) sm_malloc(sizeof(**rr)); if (*rr == NULL) { dns_free_data(r); return NULL; } + memset(*rr, 0, sizeof(**rr)); (*rr)->rr_domain = sm_strdup(host); if ((*rr)->rr_domain == NULL) { @@ -274,7 +275,7 @@ parse_dns_reply(data, len) } l = strlen(host) + 1; (*rr)->rr_u.rr_mx = (MX_RECORD_T *) - xalloc(sizeof(*((*rr)->rr_u.rr_mx)) + l); + sm_malloc(sizeof(*((*rr)->rr_u.rr_mx)) + l); if ((*rr)->rr_u.rr_mx == NULL) { dns_free_data(r); @@ -295,7 +296,7 @@ parse_dns_reply(data, len) } l = strlen(host) + 1; (*rr)->rr_u.rr_srv = (SRV_RECORDT_T*) - xalloc(sizeof(*((*rr)->rr_u.rr_srv)) + l); + sm_malloc(sizeof(*((*rr)->rr_u.rr_srv)) + l); if ((*rr)->rr_u.rr_srv == NULL) { dns_free_data(r); @@ -330,7 +331,7 @@ parse_dns_reply(data, len) dns_free_data(r); return NULL; } - (*rr)->rr_u.rr_txt = (char *) xalloc(txtlen + 1); + (*rr)->rr_u.rr_txt = (char *) sm_malloc(txtlen + 1); if ((*rr)->rr_u.rr_txt == NULL) { dns_free_data(r); @@ -341,8 +342,8 @@ parse_dns_reply(data, len) break; default: - (*rr)->rr_u.rr_data = (unsigned char*) xalloc(size); - if (size != 0 && (*rr)->rr_u.rr_data == NULL) + (*rr)->rr_u.rr_data = (unsigned char*) sm_malloc(size); + if ((*rr)->rr_u.rr_data == NULL) { dns_free_data(r); return NULL; diff --git a/gnu/usr.sbin/sendmail/sendmail/srvrsmtp.c b/gnu/usr.sbin/sendmail/sendmail/srvrsmtp.c index 7bbb1eb887e..73980617871 100644 --- a/gnu/usr.sbin/sendmail/sendmail/srvrsmtp.c +++ b/gnu/usr.sbin/sendmail/sendmail/srvrsmtp.c @@ -16,7 +16,7 @@ # include <libmilter/mfdef.h> #endif /* MILTER */ -SM_RCSID("@(#)$Sendmail: srvrsmtp.c,v 8.829.2.21 2003/01/15 19:17:14 ca Exp $") +SM_RCSID("@(#)$Sendmail: srvrsmtp.c,v 8.829.2.22 2003/02/19 02:45:40 ca Exp $") #if SASL || STARTTLS # include <sys/time.h> @@ -517,8 +517,6 @@ smtp(nullserver, d_flags, e) } hostname = macvalue('j', e); - - #if SASL sasl_ok = bitset(SRV_OFFER_AUTH, features); n_mechs = 0; diff --git a/gnu/usr.sbin/sendmail/sendmail/tls.c b/gnu/usr.sbin/sendmail/sendmail/tls.c index d2143916096..292ebb9de9b 100644 --- a/gnu/usr.sbin/sendmail/sendmail/tls.c +++ b/gnu/usr.sbin/sendmail/sendmail/tls.c @@ -10,7 +10,7 @@ #include <sendmail.h> -SM_RCSID("@(#)$Sendmail: tls.c,v 8.79.4.2 2003/01/23 23:16:24 ca Exp $") +SM_RCSID("@(#)$Sendmail: tls.c,v 8.79.4.4 2003/03/20 00:03:42 ca Exp $") #if STARTTLS # include <openssl/err.h> diff --git a/gnu/usr.sbin/sendmail/sendmail/usersmtp.c b/gnu/usr.sbin/sendmail/sendmail/usersmtp.c index 2ea981ba638..0da2e29e3a0 100644 --- a/gnu/usr.sbin/sendmail/sendmail/usersmtp.c +++ b/gnu/usr.sbin/sendmail/sendmail/usersmtp.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2003 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("@(#)$Sendmail: usersmtp.c,v 8.437.2.8 2002/12/12 17:40:07 ca Exp $") +SM_RCSID("@(#)$Sendmail: usersmtp.c,v 8.437.2.9 2003/03/15 23:57:52 gshapiro Exp $") #include <sysexits.h> @@ -2823,6 +2823,7 @@ smtpgetstat(m, mci, e) ENVELOPE *e; { int r; + int off; int status, xstat; char *enhsc; @@ -2844,13 +2845,12 @@ smtpgetstat(m, mci, e) else status = EX_PROTOCOL; if (bitset(MCIF_ENHSTAT, mci->mci_flags) && - (r = isenhsc(SmtpReplyBuffer + 4, ' ')) > 0) - r += 5; + (off = isenhsc(SmtpReplyBuffer + 4, ' ')) > 0) + off += 5; else - r = 4; - e->e_statmsg = sm_rpool_strdup_x(e->e_rpool, &SmtpReplyBuffer[r]); - mci_setstat(mci, xstat, ENHSCN(enhsc, smtptodsn(r)), - SmtpReplyBuffer); + off = 4; + e->e_statmsg = sm_rpool_strdup_x(e->e_rpool, &SmtpReplyBuffer[off]); + mci_setstat(mci, xstat, ENHSCN(enhsc, smtptodsn(r)), SmtpReplyBuffer); if (LogLevel > 1 && status == EX_PROTOCOL) { sm_syslog(LOG_CRIT, e->e_id, diff --git a/gnu/usr.sbin/sendmail/sendmail/version.c b/gnu/usr.sbin/sendmail/sendmail/version.c index c3705e3ff12..0158287138f 100644 --- a/gnu/usr.sbin/sendmail/sendmail/version.c +++ b/gnu/usr.sbin/sendmail/sendmail/version.c @@ -13,6 +13,6 @@ #include <sm/gen.h> -SM_RCSID("@(#)$Sendmail: version.c,v 8.104.2.14 2003/01/15 17:55:43 ca Exp $") +SM_RCSID("@(#)$Sendmail: version.c,v 8.104.2.15 2003/03/19 21:19:53 ca Exp $") -char Version[] = "8.12.8"; +char Version[] = "8.12.9"; |