From cc47557864c43726cdc2cd35e8e46c2f408d5224 Mon Sep 17 00:00:00 2001 From: cvs2git Date: Sat, 29 Mar 2003 19:48:40 +0000 Subject: [PATCH] This commit was manufactured by cvs2git to create tag 'sendmail-8_12_9-1'. Sprout from master 2003-02-01 20:44:45 UTC Jakub Bogusz '- added -I/usr/include/sasl (it's ready for sasl2 now)' Cherrypick from unlabeled-1.113.2 2003-03-29 19:48:40 UTC misi3k '- security update to 8.12.9': sendmail.spec -> 1.113.2.6 Delete: sendmail-8.10.0-makemapman.patch sendmail-8.10.0-redhat.patch sendmail-8.10.0-smrsh-paths.patch sendmail-8.8.7-rmail.patch sendmail-access-sample sendmail-domaintable-sample sendmail-ipv6.patch sendmail-mailertable-sample sendmail-makefile.patch sendmail-path.patch sendmail-proto.m4.8.649.2.13.patch sendmail-redhat.patch sendmail-release.patch sendmail-smrsh.patch sendmail-virtusertable-sample site.Linux.m4 site.Linux.ppc.m4 smrsh-20020924.patch --- sendmail-8.10.0-makemapman.patch | 15 - sendmail-8.10.0-redhat.patch | 27 -- sendmail-8.10.0-smrsh-paths.patch | 171 --------- sendmail-8.8.7-rmail.patch | 10 - sendmail-access-sample | 88 ----- sendmail-domaintable-sample | 26 -- sendmail-ipv6.patch | 533 ----------------------------- sendmail-mailertable-sample | 50 --- sendmail-makefile.patch | 63 ---- sendmail-path.patch | 12 - sendmail-proto.m4.8.649.2.13.patch | 18 - sendmail-redhat.patch | 43 --- sendmail-release.patch | 9 - sendmail-smrsh.patch | 190 ---------- sendmail-virtusertable-sample | 8 - sendmail.spec | 25 +- site.Linux.m4 | 17 - site.Linux.ppc.m4 | 16 - smrsh-20020924.patch | 59 ---- 19 files changed, 15 insertions(+), 1365 deletions(-) delete mode 100644 sendmail-8.10.0-makemapman.patch delete mode 100644 sendmail-8.10.0-redhat.patch delete mode 100644 sendmail-8.10.0-smrsh-paths.patch delete mode 100644 sendmail-8.8.7-rmail.patch delete mode 100644 sendmail-access-sample delete mode 100644 sendmail-domaintable-sample delete mode 100644 sendmail-ipv6.patch delete mode 100644 sendmail-mailertable-sample delete mode 100644 sendmail-makefile.patch delete mode 100644 sendmail-path.patch delete mode 100644 sendmail-proto.m4.8.649.2.13.patch delete mode 100644 sendmail-redhat.patch delete mode 100644 sendmail-release.patch delete mode 100644 sendmail-smrsh.patch delete mode 100644 sendmail-virtusertable-sample delete mode 100644 site.Linux.m4 delete mode 100644 site.Linux.ppc.m4 delete mode 100644 smrsh-20020924.patch diff --git a/sendmail-8.10.0-makemapman.patch b/sendmail-8.10.0-makemapman.patch deleted file mode 100644 index fda882b..0000000 --- a/sendmail-8.10.0-makemapman.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- sendmail-8.10.0/makemap/makemap.8.makemapn Fri Jul 30 02:15:31 1999 -+++ sendmail-8.10.0/makemap/makemap.8 Thu Mar 9 13:16:58 2000 -@@ -40,12 +40,6 @@ - parameter. - They may be - .TP --dbm --DBM format maps. --This requires the --ndbm(3) --library. --.TP - btree - B-Tree format maps. - This requires the new Berkeley DB diff --git a/sendmail-8.10.0-redhat.patch b/sendmail-8.10.0-redhat.patch deleted file mode 100644 index d83d958..0000000 --- a/sendmail-8.10.0-redhat.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- sendmail-8.10.0/devtools/OS/Linux.redhat Mon Dec 27 16:54:08 1999 -+++ sendmail-8.10.0/devtools/OS/Linux Thu Mar 9 15:37:12 2000 -@@ -1,9 +1,13 @@ - # $Id$ -+ - define(`confDEPEND_TYPE', `CC-M') - define(`confMANROOT', `/usr/man/man') - define(`confLIBS', `-ldl') - define(`confEBINDIR', `/usr/sbin') -+define(`confSTDIR', `/var/log') - APPENDDEF(`confLIBSEARCH', `crypt nsl') - - define(`confMTLDOPTS', `-lpthread') - define(`confLDOPTS_SO', `-shared') -+define('confSBINGRP', 'mail') -+define('confSBINMODE', '6755') ---- sendmail-8.10.0/sendmail/daemon.c.redhat Thu Mar 2 01:58:02 2000 -+++ sendmail-8.10.0/sendmail/daemon.c Thu Mar 9 15:08:16 2000 -@@ -2499,7 +2499,7 @@ - - /* get result */ - p = &ibuf[0]; -- nleft = sizeof ibuf - 1; -+ nleft = sizeof(ibuf) - 1; - while ((i = read(s, p, nleft)) > 0) - { - p += i; diff --git a/sendmail-8.10.0-smrsh-paths.patch b/sendmail-8.10.0-smrsh-paths.patch deleted file mode 100644 index 2f42a97..0000000 --- a/sendmail-8.10.0-smrsh-paths.patch +++ /dev/null @@ -1,171 +0,0 @@ ---- sendmail-8.10.0/smrsh/README.smrsh Tue Apr 27 22:26:10 1999 -+++ sendmail-8.10.0/smrsh/README Thu Mar 9 13:21:10 2000 -@@ -6,7 +6,7 @@ - intended as a supplement to the CERT advisory CA-93:16.sendmail.vulnerability, - and to the software, smrsh.c, written by Eric Allman. - -- -+* Modified by Red Hat Software to reflect different paths. * - - The smrsh(8) program is intended as a replacement for /bin/sh in the - program mailer definition of sendmail(8). This README file describes -@@ -46,15 +46,15 @@ - - - --As root, install smrsh in /usr/libexec. Using the Build script: -+As root, install smrsh in /usr/sbin. Using the Build script: - - host.domain# sh Build install - --For manual installation: install smrsh in the /usr/libexec -+For manual installation: install smrsh in the /usr/sbin - directory, with mode 511. - -- host.domain# mv smrsh /usr/libexec -- host.domain# chmod 511 /usr/libexec/smrsh -+ host.domain# mv smrsh /usr/sbin -+ host.domain# chmod 511 /usr/sbin/smrsh - - - -@@ -76,7 +76,7 @@ - acceptable commands. - - --You will next need to create the directory /usr/adm/sm.bin and populate -+You will next need to create the directory /etc/smrsh and populate - it with the programs that your site feels are allowable for sendmail - to execute. This directory is explicitly specified in the source - code for smrsh, so changing this directory must be accompanied with -@@ -85,22 +85,22 @@ - - You will have to be root to make these modifications. - --After creating the /usr/adm/sm.bin directory, either copy the programs -+After creating the /etc/smrsh directory, either copy the programs - to the directory, or establish links to the allowable programs from --/usr/adm/sm.bin. Change the file permissions, so that these programs -+/etc/smrsh. Change the file permissions, so that these programs - can not be modified by non-root users. If you use links, you should - ensure that the target programs are not modifiable. - - To allow the popular vacation(1) program by creating a link in the --/usr/adm/sm.bin directory, you should: -+/etc/smrsh directory, you should: - -- host.domain# cd /usr/adm/sm.bin -+ host.domain# cd /etc/smrsh - host.domain# ln -s /usr/ucb/vacation vacation - - - - --After populating the /usr/adm/sm.bin directory, you can now configure -+After populating the /etc/smrsh directory, you can now configure - sendmail to use the restricted shell. Save the current sendmail.cf - file prior to modifying it, as a prudent precaution. - -@@ -115,7 +115,7 @@ - - In order to configure sendmail to use smrsh, you must modify the Mprog - definition in the sendmail.cf file, by replacing the /bin/sh specification --with /usr/libexec/smrsh. -+with /usr/sbin/smrsh. - - As an example: - -@@ -123,14 +123,14 @@ - Mprog, P=/bin/sh, F=lsDFMeuP, S=10, R=20, A=sh -c $u - - which should be changed to: --Mprog, P=/usr/libexec/smrsh, F=lsDFMeuP, S=10, R=20, A=sh -c $u -+Mprog, P=/usr/sbin/smrsh, F=lsDFMeuP, S=10, R=20, A=sh -c $u - ^^^^^^^^^^^^^^^^^^ - - A more generic line may be: - Mprog, P=/bin/sh, F=lsDFM, A=sh -c $u - - and should be changed to; --Mprog, P=/usr/libexec/smrsh, F=lsDFM, A=sh -c $u -+Mprog, P=/usr/sbin/smrsh, F=lsDFM, A=sh -c $u - - - After modifying the Mprog definition in the sendmail.cf file, if a frozen -@@ -141,7 +141,7 @@ - a search of the strings(1) output of the sendmail binary. - - In order to create a new frozen configuration, if it is required: -- host.domain# /usr/lib/sendmail -bz -+ host.domain# /usr/sbin/sendmail -bz - - Now re-start the sendmail process. An example of how to do this on - a typical system follows: ---- sendmail-8.10.0/smrsh/smrsh.8.smrsh Tue Jun 15 00:50:19 1999 -+++ sendmail-8.10.0/smrsh/smrsh.8 Thu Mar 9 13:21:40 2000 -@@ -38,7 +38,7 @@ - Briefly, - .I smrsh - limits programs to be in the directory --/usr/adm/sm.bin, -+/etc/smrsh, - allowing the system administrator to choose the set of acceptable commands, - and to the shell builtin commands ``exec'', ``exit'', and ``echo''. - It also rejects any commands with the characters -@@ -55,10 +55,10 @@ - and - ``vacation'' - all actually forward to --``/usr/adm/sm.bin/vacation''. -+``/etc/smrsh/vacation''. - .PP - System administrators should be conservative about populating --/usr/adm/sm.bin. -+/etc/smrsh - Reasonable additions are - .IR vacation (1), - .IR procmail (1), -@@ -68,20 +68,12 @@ - (such as - .IR perl (1)) - in the --sm.bin -+/etc/smrsh - directory. - Note that this does not restrict the use of shell or perl scripts --in the sm.bin directory (using the ``#!'' syntax); -+in the /etc/smrsh directory (using the ``#!'' syntax); - it simply disallows execution of arbitrary programs. --.SH COMPILATION --Compilation should be trivial on most systems. --You may need to use \-DPATH=\e"\fIpath\fP\e" --to adjust the default search path --(defaults to ``/bin:/usr/bin:/usr/ucb'') --and/or \-DCMDBIN=\e"\fIdir\fP\e" --to change the default program directory --(defaults to ``/usr/adm/sm.bin''). - .SH FILES --/usr/adm/sm.bin \- directory for restricted programs -+/etc/smrsh \- directory for restricted programs - .SH SEE ALSO - sendmail(8) ---- sendmail-8.10.0/smrsh/smrsh.c.smrsh2 Tue Oct 26 22:49:51 1999 -+++ sendmail-8.10.0/smrsh/smrsh.c Thu Mar 9 13:28:37 2000 -@@ -76,7 +76,7 @@ - - /* directory in which all commands must reside */ - #ifndef CMDDIR --# define CMDDIR "/usr/adm/sm.bin" -+# define CMDDIR "/etc/smrsh" - #endif /* ! CMDDIR */ - - /* characters disallowed in the shell "-c" argument */ -@@ -84,7 +84,7 @@ - - /* default search path */ - #ifndef PATH --# define PATH "/bin:/usr/bin:/usr/ucb" -+# define PATH "/bin:/usr/bin:" - #endif /* ! PATH */ - - #ifndef __P diff --git a/sendmail-8.8.7-rmail.patch b/sendmail-8.8.7-rmail.patch deleted file mode 100644 index 35472cd..0000000 --- a/sendmail-8.8.7-rmail.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- sendmail-8.8.7/rmail/rmail.c.rmail Mon Feb 9 14:30:13 1998 -+++ sendmail-8.8.7/rmail/rmail.c Mon Feb 9 14:30:42 1998 -@@ -232,7 +232,6 @@ - i = 0; - args[i++] = _PATH_SENDMAIL; /* Build sendmail's argument list. */ - args[i++] = "-oee"; /* No errors, just status. */ -- args[i++] = "-odq"; /* Queue it, don't try to deliver. */ - args[i++] = "-oi"; /* Ignore '.' on a line by itself. */ - - /* set from system and protocol used */ diff --git a/sendmail-access-sample b/sendmail-access-sample deleted file mode 100644 index 9eea701..0000000 --- a/sendmail-access-sample +++ /dev/null @@ -1,88 +0,0 @@ -# /etc/mail/access -# Copyright (c) 1998, Richard Nelson . -# Time-stamp: <1998/10/27 10:00:00 cowboy> -# GPL'd config file, please feed any gripes, suggestions, etc. to me -# -# Function: -# Access Control for this smtp server - determines: -# * Who we accept mail from -# * Who we accept relaying from -# * Who we will not send to -# -# Usage: -# FEATURE(access_db[, type [-o] /etc/mail/access])dnl -# makemap hash access < access -# -# Format: -# lhs: -# email addr -# domain name unless FEATURE(relay_hosts_only) is used, -# then this is a fqdn - and relay-domains ($=R) -# must also be fqdns. -# network number must end on an octet boundary, or -# you're stuck going the longwinded way ;-{ -# rhs: -# OK accept mail even if other rules in the -# running ruleset would reject it. -# RELAY Allow domain to relay through your SMTP -# server. RELAY also serves an implicit -# OK for the other checks. -# REJECT reject the sender/recipient with a general -# purpose message that can be customized. -# confREJECT_MSG [550 Access denied] will be issued -# DISCARD discard the message completely using -# the $#discard mailer. -# ### any text where ### is an RFC 821 compliant error code -# and "any text" is a message to return for -# the command -# Examples: -# spammer@aol.com REJECT -# FREE.STEALTH.MAILER@ 550 Spam not accepted -# -# Notes: -# With FEATURE(blacklist_recipients) this is also possible: -# badlocaluser 550 Mailbox disabled for this username -# host.mydomain.com 550 That host does not accept mail -# user@otherhost.mydomain.com 550 Mailbox disabled for this recipient -# -# Related: -# define(`confREJECT_MSG', `550 Access denied')dnl -# define(`confCR_FILE', `-o /etc/mail/relay-domains')dnl <<- $=R -# FEATURE(relay_hosts_only)dnl -# FEATURE(relay_entire_domain)dnl <<- relays any host in the $=m class -# FEATURE(relay_based_on_MX)dnl <<- relaying for boxes MX'd to you -# FEATURE(blacklist_recipients)dnl -# FEATURE(rbl[,alternate server])dnl -# FEATURE(orbs[,alternate server])dnl <<- Debian addition -# FEATURE(orca[,alternate server])dnl <<- Debian addition -# FEATURE(accept_unqualified_senders)dnl -# FEATURE(accept_unresolvable_domains)dnl -# -# Local addresses 10.x.x.x, 127.x.x.x, 172.16-31.x.x 192.168.x.x can relay -# Note Well! You *must* make sure these address can't be spoofed externally -10 RELAY -127 RELAY -172.16 RELAY -172.17 RELAY -172.18 RELAY -172.19 RELAY -172.20 RELAY -172.21 RELAY -172.22 RELAY -172.23 RELAY -172.24 RELAY -172.25 RELAY -172.26 RELAY -172.27 RELAY -172.28 RELAY -172.29 RELAY -172.30 RELAY -172.31 RELAY -192.168 RELAY -# -# Hosts that are allowed to talk to me -# -# -# Blacklisted users -# -reject@ REJECT diff --git a/sendmail-domaintable-sample b/sendmail-domaintable-sample deleted file mode 100644 index 82b3ff7..0000000 --- a/sendmail-domaintable-sample +++ /dev/null @@ -1,26 +0,0 @@ -# /etc/mail/domaintable -# Copyright (c) 1998, Richard Nelson . -# Time-stamp: <1998/10/27 10:00:00 cowboy> -# GPL'd config file, please feed any gripes, suggestions, etc. to me -# -# Function: -# Specify a mapping from old host name to new host name. -# Commonly used to support old (or merged) domain names. -# The host name in the lhs will be rewritten to that in the rhs -# -# Usage: -# FEATURE(domaintable[, type [-o] /etc/mail/domaintable])dnl -# makemap hash domaintable < domaintable -# -# Format: -# old fqdn new fqdn -# -# Examples: -# debian.com debian.org -# .debian.com %0.debian.org -# -# Notes: -# -# Related: -# -#.cv.lexington.ibm.com %0.lexington.ibm.com diff --git a/sendmail-ipv6.patch b/sendmail-ipv6.patch deleted file mode 100644 index 68f7fd0..0000000 --- a/sendmail-ipv6.patch +++ /dev/null @@ -1,533 +0,0 @@ -diff -Nur sendmail-8.9.3/cf/m4/proto.m4 sendmail-8.9.3.pld/cf/m4/proto.m4 ---- sendmail-8.9.3/cf/m4/proto.m4 Wed Feb 3 00:21:30 1999 -+++ sendmail-8.9.3.pld/cf/m4/proto.m4 Wed Feb 10 18:11:17 1999 -@@ -1111,6 +1111,7 @@ - ifdef(`_RBL_', `dnl - # DNS based IP address spam lists - R$* $: $&{client_addr} -+R::ffff:$-.$-.$-.$- $: $(host $4.$3.$2.$1._RBL_. $: OK $) - R$-.$-.$-.$- $: $(host $4.$3.$2.$1._RBL_. $: OK $) - ROK $@ OK - R$+ $#error $@ 5.7.1 $: "Mail from " $&{client_addr} " refused by blackhole site _RBL_"', -diff -Nur sendmail-8.9.3/src/conf.c sendmail-8.9.3.pld/src/conf.c ---- sendmail-8.9.3/src/conf.c Wed Jan 27 01:15:52 1999 -+++ sendmail-8.9.3.pld/src/conf.c Wed Feb 10 18:11:17 1999 -@@ -4085,6 +4085,33 @@ - } - - #endif -+/* -+** SM_GETHOSTBYNAME2 -- Wrapper for gethostbyname() with IPv6 support -+** -+** Most modern resolver libraries (BIND 8.1.x, glibc 2.1.x) will already -+** return an AF_INET6 hostent if RES_USE_INET6 is set in _res.options. -+** They usually try something like gethostbyname2(name, AF_INET6) and, -+** if that fails, return the result of gethostbyname2(name, AF_INET). -+** -+** IPv6 code elsewhere should have set RES_USE_INET6 if it is defined. -+** If it isn't defined, we simulate that behavior ourself. -+** -+** You can *not* assume that the hostent returned will only be AF_INET. -+*/ -+struct hostent * -+sm_gethostbyname2(name) -+ char *name; -+{ -+#if NETINET6 && !defined(RES_USE_INET6) -+ struct hostent *h; -+ -+ h = gethostbyname2(name, AF_INET6); -+ if (h) -+ return h; -+#endif -+ return gethostbyname(name); -+} -+ - /* - ** SM_GETHOSTBY{NAME,ADDR} -- compatibility routines for gethostbyXXX - ** -@@ -4123,7 +4150,7 @@ - - if (tTd(61, 10)) - printf("gethostbyname(%s)... ", name); -- h = gethostbyname(name); -+ h = sm_gethostbyname2(name); - if (h == NULL) - { - if (tTd(61, 10)) -@@ -4147,7 +4174,7 @@ - { - if (tTd(61, 10)) - printf("gethostbyname(%s)... ", hbuf); -- h = gethostbyname(hbuf); -+ h = sm_gethostbyname2(hbuf); - } - } - } -@@ -4301,7 +4328,12 @@ - hp = sm_gethostbyaddr((char *) &sa->sin.sin_addr, - sizeof(sa->sin.sin_addr), sa->sa.sa_family); - break; -- -+#if INET6 -+ case AF_INET6: -+ hp = sm_gethostbyaddr((char *) &sa->sin6.sin6_addr, -+ sizeof(sa->sin6.sin6_addr), sa->sa.sa_family); -+ break; -+#endif - default: - #if _FFR_LOG_UNSUPPORTED_FAMILIES - /* XXX: Give warning about unsupported family */ -@@ -4378,6 +4410,104 @@ - # include - #endif - -+#if defined(__linux__) && NETINET6 -+ -+/* -+ * This is a terrible, linux-specific kludge. In linux-2.1.105 at least, -+ * there is no way to get IPv6 addresses via SIOCGIFCONF. You can -+ * set them, but not retrieve them. I haven't seen a standard way -+ * to retrieve the list yet. If you use the /proc/net/if_inet6 file, -+ * you can get a list of them in a format like this: -+ * -+ * 00000000000000000000000000000001 01 80 10 80 lo -+ * fe800000000000000000006097df4915 02 0a 20 80 eth0 -+ * fe80000000000000026097fffedf4915 02 0a 20 80 eth0 -+ */ -+void -+load_if_names6() -+{ -+ static FILE *fp = NULL; -+ char ip_addr[256]; -+ static int s = -1; -+ -+ if (tTd(0, 40)) -+ printf( "linux load_if_names6() kludge...\n" ); -+ -+ if (s != -1) -+ close(s); -+ s = socket(AF_INET6, SOCK_DGRAM, 0); -+ if (s == -1) -+ return; -+ -+ if (fp) -+ (void) fclose( fp ); -+ fp = fopen( "/proc/net/if_inet6", "r" ); -+ if (fp) -+ { -+ SOCKADDR sa; -+ struct in6_addr *in6 = &sa.sin6.sin6_addr; -+ char devname[10]; -+ int plen, scope, dad_status, if_idx; -+ -+ while( fscanf( fp, -+ "%4x%4x%4x%4x%4x%4x%4x%4x %02x %02x %02x %02x %s\n", -+ &in6->s6_addr16[0], &in6->s6_addr16[1], -+ &in6->s6_addr16[2], &in6->s6_addr16[3], -+ &in6->s6_addr16[4], &in6->s6_addr16[5], -+ &in6->s6_addr16[6], &in6->s6_addr16[7], -+ &if_idx, &plen, &scope, &dad_status, devname) != EOF) -+ { -+ struct hostent *hp; -+ int i; -+ struct ifreq ifrf; -+ -+ for (i = 0; i < 8; i++) -+ in6->s6_addr16[i] = ntohs( in6->s6_addr16[i] ); -+ sa.sa.sa_family = AF_INET6; -+ -+ /* save IP address in text from */ -+ (void) snprintf(ip_addr, sizeof ip_addr, "[%.*s]", -+ sizeof ip_addr - 3, anynet_ntoa( &sa ) ); -+ -+ if (tTd(0, 40)) -+ printf("%s\n\ta.k.a.: %s\n", devname, ip_addr ); -+ -+ if (!wordinclass(ip_addr, 'w')) -+ setclass('w', ip_addr); -+ -+ bzero(&ifrf, sizeof( ifrf )); -+ strncpy(ifrf.ifr_name, devname, sizeof(ifrf.ifr_name)); -+ ioctl(s, SIOCGIFFLAGS, (char *) &ifrf); -+ if (tTd(0, 41)) -+ printf("\tflags: %x\n", ifrf.ifr_flags); -+ -+ /* skip "loopback" interface "lo" */ -+ if (bitset(IFF_LOOPBACK, ifrf.ifr_flags)) -+ continue; -+ -+ /* -+ * If we skip the loopback interfaces, then -+ * -+ * would tend to indicate that we should skip -+ * the link-local prefix (FE80::/10) as well. -+ */ -+ if ((ntohs(*(in6->s6_addr16)) & 0xFFC0) == 0xFE80) -+ continue; -+ -+ (void) add_hostnames( &sa ); -+ } -+ -+ (void) fclose(fp); -+ fp = NULL; -+ } -+ -+ close(s); -+ -+ return; -+} -+ -+#endif -+ - void - load_if_names() - { -@@ -4386,7 +4516,9 @@ - int i; - struct ifconf ifc; - int numifs; -- -+#if NETINET6 -+ load_if_names6(); -+#endif - s = socket(AF_INET, SOCK_DGRAM, 0); - if (s == -1) - return; -@@ -4768,6 +4900,9 @@ - #if NETINET - "NETINET", - #endif -+#if NETINET6 -+ "NETINET6", -+#endif - #if NETINFO - "NETINFO", - #endif -diff -Nur sendmail-8.9.3/src/conf.h sendmail-8.9.3.pld/src/conf.h ---- sendmail-8.9.3/src/conf.h Fri Jan 29 00:28:34 1999 -+++ sendmail-8.9.3.pld/src/conf.h Wed Feb 10 18:11:17 1999 -@@ -84,6 +84,10 @@ - # define NETINET 1 /* include internet support */ - # endif - -+# ifndef NETINET6 -+# define NETINET6 0 /* dont include IPv6 support */ -+# endif -+ - # ifndef NETISO - # define NETISO 0 /* do not include ISO socket support */ - # endif -@@ -1307,6 +1311,14 @@ - # endif - # include - # undef atol /* wounded in */ -+# if NETINET6 -+# if !((__GLIBC__ == 2) && (__GLIBC_MINOR__ == 1)) /* Native in 2.2.x */ -+# include /* IPv6 support */ -+# endif -+# ifdef __GLIBC__ -+# undef IPPROTO_ICMPV6 /* linux #defines, glibc enums */ -+# endif -+# endif - #endif - - -diff -Nur sendmail-8.9.3/src/daemon.c sendmail-8.9.3.pld/src/daemon.c ---- sendmail-8.9.3/src/daemon.c Tue Jan 26 05:00:16 1999 -+++ sendmail-8.9.3.pld/src/daemon.c Wed Feb 10 18:11:17 1999 -@@ -135,7 +135,17 @@ - DaemonAddr.sin.sin_addr.s_addr = INADDR_ANY; - port = DaemonAddr.sin.sin_port; - break; -- -+#if NETINET6 -+ case AF_INET6: -+ /* -+ * We should look up and handle the INADDR_ANY situation -+ * for IPv6, but since it is usually all-zeros and -+ * that is what we're checking for, it doesn't have -+ * a high priority. -+ */ -+ port = DaemonAddr.sin6.sin6_port; -+ break; -+#endif - default: - /* unknown protocol */ - port = 0; -@@ -160,7 +170,11 @@ - case AF_INET: - DaemonAddr.sin.sin_port = port; - break; -- -+#if NETINET6 -+ case AF_INET6: -+ DaemonAddr.sin6.sin6_port = port; -+ break; -+#endif - default: - /* unknown protocol */ - break; -@@ -603,6 +617,12 @@ - break; - # endif - -+# if NETINET6 -+ case AF_INET6: -+ socksize = sizeof DaemonAddr.sin6; -+ break; -+# endif -+ - # if NETISO - case AF_ISO: - socksize = sizeof DaemonAddr.siso; -@@ -703,6 +723,10 @@ - else if (strcasecmp(v, "inet") == 0) - DaemonAddr.sa.sa_family = AF_INET; - #endif -+#if NETINET6 -+ else if (strcasecmp(v, "inet6") == 0) -+ DaemonAddr.sa.sa_family = AF_INET6; -+#endif - #if NETISO - else if (strcasecmp(v, "iso") == 0) - DaemonAddr.sa.sa_family = AF_ISO; -@@ -739,6 +763,27 @@ - break; - #endif - -+#if NETINET6 -+ case AF_INET6: -+ if (isascii(*v) && isdigit(*v)) -+ (void) inet_pton( -+ DaemonAddr.sa.sa_family, v, -+ &DaemonAddr.sin6.sin6_addr); -+ else -+ { -+ register struct hostent *hp; -+ -+ hp = sm_gethostbyname(v); -+ if (hp == NULL) -+ syserr("554 host \"%s\" unknown", v); -+ else -+ bcopy(hp->h_addr, -+ &DaemonAddr.sin6.sin6_addr, -+ IN6ADDRSZ); -+ } -+ break; -+#endif -+ - default: - syserr("554 Address= option unsupported for family %d", - DaemonAddr.sa.sa_family); -@@ -770,6 +815,22 @@ - break; - #endif - -+#if NETINET6 -+ case AF_INET6: -+ if (isascii(*v) && isdigit(*v)) -+ DaemonAddr.sin6.sin6_port = htons(atoi(v)); -+ else -+ { -+ register struct servent *sp; -+ -+ sp = getservbyname(v, "tcp"); -+ if (sp == NULL) -+ syserr("554 service \"%s\" unknown", v); -+ else -+ DaemonAddr.sin6.sin6_port = sp->s_port; -+ } -+ break; -+#endif - #if NETISO - case AF_ISO: - /* assume two byte transport selector */ -@@ -968,6 +1029,35 @@ - break; - #endif - -+#if NETINET6 -+ case AF_INET6: -+ { -+ /* -+ * IPv4-mapped IPv6 prefix -- ::ffff:0 -+ */ -+ static u_char mapbuf[ IN6ADDRSZ ] = -+ { 0,0,0,0, 0,0,0,0, 0,0,0xFF,0xFF, 0,0,0,0 }; -+ u_char *a = (u_char *) hp->h_addr; -+ -+ /* -+ * Some platforms may try to connect to IPv4-mapped -+ * IPv6 addresses via IPv6 connections, which -+ * won't work in many cases. If we detect that, -+ * avoid it by changing the address family. -+ */ -+ if (bcmp( mapbuf, a, IN6ADDRSZ - INADDRSZ )) -+ bcopy(a, &addr.sin6.sin6_addr, IN6ADDRSZ); -+ else -+ { -+ bcopy(a + IN6ADDRSZ - INADDRSZ, -+ &addr.sin.sin_addr, -+ INADDRSZ); -+ addr.sa.sa_family = AF_INET; -+ } -+ break; -+ } -+#endif -+ - default: - if (hp->h_length > sizeof addr.sa.sa_data) - { -@@ -1012,6 +1102,13 @@ - break; - #endif - -+#if NETINET6 -+ case AF_INET6: -+ addr.sin6.sin6_port = port; -+ addrlen = sizeof (struct sockaddr_in6); -+ break; -+#endif -+ - #if NETISO - case AF_ISO: - /* assume two byte transport selector */ -@@ -1157,6 +1254,14 @@ - break; - #endif - -+#if NETINET6 -+ case AF_INET6: -+ bcopy(hp->h_addr_list[addrno++], -+ &addr.sin6.sin6_addr, -+ IN6ADDRSZ); -+ break; -+#endif -+ - default: - bcopy(hp->h_addr_list[addrno++], - addr.sa.sa_data, -@@ -1295,6 +1400,34 @@ - if (hp->h_addrtype == AF_INET) - return bcmp(ha, (char *) &sa->sin.sin_addr, hp->h_length); - break; -+#if NETINET6 -+ case AF_INET6: -+ { -+ u_char *a = (u_char *) &sa->sin6.sin6_addr; -+ /* -+ * Straight binary comparison -+ */ -+ if (hp->h_addrtype == AF_INET6) -+ return bcmp( ha, a, hp->h_length); -+ -+ /* -+ * If IPv4-mapped IPv6 address, compare the IPv4 section -+ */ -+ if (hp->h_addrtype == AF_INET) -+ { -+ /* -+ * IPv4-mapped IPv6 prefix -- ::ffff:0 -+ */ -+ static u_char mapbuf[ IN6ADDRSZ ] = -+ { 0,0,0,0, 0,0,0,0, 0,0,0xFF,0xFF, 0,0,0,0 }; -+ -+ if (!bcmp( mapbuf, a, IN6ADDRSZ - INADDRSZ )) -+ return bcmp(a + IN6ADDRSZ - INADDRSZ, ha, INADDRSZ); -+ return -1; -+ } -+ break; -+ } -+#endif - - } - return -1; -@@ -2049,6 +2182,12 @@ - return inet_ntoa(sap->sin.sin_addr); - #endif - -+#if NETINET6 -+ case AF_INET6: -+ return (char *) inet_ntop( sap->sa.sa_family, -+ &sap->sin6.sin6_addr, buf, sizeof( buf )); -+#endif -+ - #if NETLINK - case AF_LINK: - snprintf(buf, sizeof buf, "[LINK: %s]", -@@ -2106,6 +2245,14 @@ - hp = sm_gethostbyaddr((char *) &sap->sin.sin_addr, - INADDRSZ, - AF_INET); -+ break; -+#endif -+ -+#if NETINET6 -+ case AF_INET6: -+ hp = sm_gethostbyaddr((char *) &sap->sin6.sin6_addr, -+ IN6ADDRSZ, -+ AF_INET6); - break; - #endif - -diff -Nur sendmail-8.9.3/src/main.c sendmail-8.9.3.pld/src/main.c ---- sendmail-8.9.3/src/main.c Sun Jan 10 00:31:13 1999 -+++ sendmail-8.9.3.pld/src/main.c Wed Feb 10 18:11:17 1999 -@@ -457,6 +457,9 @@ - # ifdef RES_NOALIASES - _res.options |= RES_NOALIASES; - # endif -+# if NETINET6 && defined(RES_USE_INET6) -+ _res.options |= RES_USE_INET6; -+# endif - #endif - - errno = 0; -@@ -1513,10 +1516,20 @@ - define(macid("{client_name}", NULL), RealHostName, &BlankEnvelope); - define(macid("{client_addr}", NULL), - newstr(anynet_ntoa(&RealHostAddr)), &BlankEnvelope); -- if (RealHostAddr.sa.sa_family == AF_INET) -+ switch( RealHostAddr.sa.sa_family ) -+ { -+ case AF_INET: - snprintf(pbuf, sizeof pbuf, "%d", RealHostAddr.sin.sin_port); -- else -+ break; -+#if NETINET6 -+ case AF_INET6: -+ snprintf(pbuf, sizeof pbuf, "%d", RealHostAddr.sin6.sin6_port); -+ break; -+#endif -+ default: - snprintf(pbuf, sizeof pbuf, "0"); -+ break; -+ } - define(macid("{client_port}", NULL), newstr(pbuf), &BlankEnvelope); - - /* initialize maps now for check_relay ruleset */ -diff -Nur sendmail-8.9.3/src/sendmail.h sendmail-8.9.3.pld/src/sendmail.h ---- sendmail-8.9.3/src/sendmail.h Wed Jan 27 01:15:52 1999 -+++ sendmail-8.9.3.pld/src/sendmail.h Wed Feb 10 18:11:17 1999 -@@ -55,6 +55,10 @@ - # if NETINET - # include - # endif -+# if NETINET6 -+/* There is no host-independet location (yet). See conf.h */ -+# endif -+ - # if NETISO - # include - # endif -@@ -1035,6 +1039,9 @@ - #endif - #if NETINET - struct sockaddr_in sin; /* INET family */ -+#endif -+#if NETINET6 -+ struct sockaddr_in6 sin6; /* INET/IPv6 */ - #endif - #if NETISO - struct sockaddr_iso siso; /* ISO family */ diff --git a/sendmail-mailertable-sample b/sendmail-mailertable-sample deleted file mode 100644 index 79d950f..0000000 --- a/sendmail-mailertable-sample +++ /dev/null @@ -1,50 +0,0 @@ -# /etc/mail/mailertable -# Copyright (c) 1998, Richard Nelson . -# Time-stamp: <1998/10/27 10:00:00 cowboy> -# GPL'd config file, please feed any gripes, suggestions, etc. to me -# -# Function: -# Specify a mapping from old host name to new host name. -# Commonly used to support old (or merged) domain names. -# The host name in the lhs will be rewritten to that in the rhs -# -# Usage: -# FEATURE(mailertable[, type [-o] /etc/mail/mailertable])dnl -# makemap hash mailertable < mailertable -# -# Format: -# Local recipients: -#
local:user -#
local: <<- will use same user -# Error messages: -# badhost error:nohost mail to %0 is prohibited -# .baddomain error:nohost mail to %1%0 is prohibited -# -# Examples: -# Local recipients: -#
local:user -#
local: <<- will use same user -# Error messages: -# badhost error:nohost mail to %0 is prohibited -# .baddomain error:nohost mail to %1%0 is prohibited -# -# Notes: -# -# Related: -# -# Address rewrites for hosts *NOT IN* class $w -# Direct delivery, %0 is left side -# friend.dom smtp:[%0]:[some.smart.host] -# Direct deliver of domain, smarthost as second choice -# .friend.dom smtp:[%1%0]:[some.smart.host] -# Default route, via smarthost -# . smtp:[some.smart.host] -# -badhost error:nohost mail to %0 is prohibited -.baddomain error:nohost mail to %1%0 is prohibited -# -# Sites we deliver directly to, bypassing SMARTHOST: -# -# Sites that use DUL: Dialup User Lists (or equivalent) -#aol.com esmtp:[relay] -#primenet.com esmtp:[relay] diff --git a/sendmail-makefile.patch b/sendmail-makefile.patch deleted file mode 100644 index bb0bd8e..0000000 --- a/sendmail-makefile.patch +++ /dev/null @@ -1,63 +0,0 @@ -diff -Nur sendmail-8.12.0.orig/cf/cf/Makefile sendmail-8.12.0/cf/cf/Makefile ---- sendmail-8.12.0.orig/cf/cf/Makefile Mon Aug 20 17:16:48 2001 -+++ sendmail-8.12.0/cf/cf/Makefile Wed Sep 26 01:33:48 2001 -@@ -76,10 +76,10 @@ - install-cf: install-sendmail-cf install-submit-cf - - install-sendmail-cf: $(CF).cf -- $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(CF).cf ${DESTDIR}$(MAILDIR)/sendmail.cf -+ $(INSTALL) -c -m $(CFMODE) $(CF).cf ${DESTDIR}$(MAILDIR)/sendmail.cf - - install-submit-cf: $(SUBMIT).cf -- $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(SUBMIT).cf ${DESTDIR}$(MAILDIR)/submit.cf -+ $(INSTALL) -c -m $(CFMODE) $(SUBMIT).cf ${DESTDIR}$(MAILDIR)/submit.cf - - depend: - -diff -Nur sendmail-8.12.0.orig/sendmail/Makefile.m4 sendmail-8.12.0/sendmail/Makefile.m4 ---- sendmail-8.12.0.orig/sendmail/Makefile.m4 Sat Jun 16 18:54:49 2001 -+++ sendmail-8.12.0/sendmail/Makefile.m4 Wed Sep 26 01:35:09 2001 -@@ -11,7 +11,7 @@ - - dnl hack: /etc/mail is not defined as "location of .cf" in the build system - define(`bldTARGET_INST_DEP', ifdef(`confINST_DEP', `confINST_DEP', --`/etc/mail/submit.cf ${MSPQ}'))dnl -+`${DESTDIR}/etc/mail/submit.cf ${DESTDIR}${MSPQ}'))dnl - define(`bldTARGET_LINKS', ifdef(`confLINKS', `confLINKS', - `${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat') - )dnl -@@ -36,14 +36,14 @@ - statistics: - ${CP} /dev/null statistics - --/etc/mail/submit.cf: -+${DESTDIR}/etc/mail/submit.cf: - @echo "Please read INSTALL if anything fails while installing the binary." - @echo "/etc/mail/submit.cf will be installed now." - cd ${SRCDIR}/cf/cf && make install-submit-cf - - MSPQ=ifdef(`confMSP_QUEUE_DIR', `confMSP_QUEUE_DIR', `/var/spool/clientmqueue') - --${MSPQ}: -+${DESTDIR}${MSPQ}: - @echo "Please read INSTALL if anything fails while installing the binary." - @echo "You must have setup a new user ${MSPQOWN} and a new group ${GBINGRP}" - @echo "as explained in sendmail/SECURITY." -@@ -61,7 +61,7 @@ - divert(bldTARGETS_SECTION) - - install-set-user-id: bldCURRENT_PRODUCT ifdef(`confNO_HELPFILE_INSTALL',, `install-hf') ifdef(`confNO_STATISTICS_INSTALL',, `install-st') ifdef(`confNO_MAN_BUILD',, `install-docs') -- ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR} -+ ${INSTALL} -c -m ${S`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR} - for i in ${sendmailTARGET_LINKS}; do \ - rm -f $$i; \ - ln -s ${M`'BINDIR}/sendmail $$i; \ -@@ -69,7 +69,7 @@ - - define(`confMTA_LINKS', `${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat') - install-sm-mta: bldCURRENT_PRODUCT -- ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}/sm-mta -+ ${INSTALL} -c -m ${M`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}/sm-mta - for i in confMTA_LINKS; do \ - rm -f $$i; \ - ln -s ${M`'BINDIR}/sm-mta $$i; \ diff --git a/sendmail-path.patch b/sendmail-path.patch deleted file mode 100644 index 4597cac..0000000 --- a/sendmail-path.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur sendmail-8.9.1/src/pathnames.h sendmail-8.9.1.orig/src/pathnames.h ---- sendmail-8.9.1/src/pathnames.h Wed May 20 01:36:02 1998 -+++ sendmail-8.9.1.orig/src/pathnames.h Sat Sep 12 14:49:03 1998 -@@ -15,7 +15,7 @@ - # if defined(USE_VENDOR_CF_PATH) && defined(_PATH_VENDOR_CF) - # define _PATH_SENDMAILCF _PATH_VENDOR_CF - # else --# define _PATH_SENDMAILCF "/etc/sendmail.cf" -+# define _PATH_SENDMAILCF "/etc/mail/sendmail.cf" - # endif - #endif - diff --git a/sendmail-proto.m4.8.649.2.13.patch b/sendmail-proto.m4.8.649.2.13.patch deleted file mode 100644 index 8e6a7aa..0000000 --- a/sendmail-proto.m4.8.649.2.13.patch +++ /dev/null @@ -1,18 +0,0 @@ -Index: proto.m4 -=================================================================== -RCS file: /cvs/cf/m4/proto.m4,v -retrieving revision 8.649.2.12 -retrieving revision 8.649.2.13 -diff -u -r8.649.2.12 -r8.649.2.13 ---- cf/m4/proto.m4 3 Dec 2002 16:48:37 -0000 8.649.2.12 -+++ cf/m4/proto.m4 4 Dec 2002 00:12:18 -0000 8.649.2.13 -@@ -1761,6 +1761,9 @@ - dnl workspace: {client_name} $| {client_addr} - R$+ $| $+ $: $>D < $1 > <+ Connect> < $2 > - dnl workspace: <{client_addr}> -+dnl OR $| $+ if client_name is empty -+R $| $+ $: $>A < $1 > <+ Connect> <> empty client_name -+dnl workspace: <{client_addr}> - R <$+> $: $>A < $1 > <+ Connect> <> no: another lookup - dnl workspace: (<>|<{client_addr}>) - R <$*> $: OK found nothing diff --git a/sendmail-redhat.patch b/sendmail-redhat.patch deleted file mode 100644 index 0ee2520..0000000 --- a/sendmail-redhat.patch +++ /dev/null @@ -1,43 +0,0 @@ ---- sendmail-8.10.0/sendmail/daemon.c.redhat Thu Mar 2 01:58:02 2000 -+++ sendmail-8.10.0/sendmail/daemon.c Thu Mar 9 15:08:16 2000 -@@ -2499,7 +2499,7 @@ - - /* get result */ - p = &ibuf[0]; -- nleft = sizeof ibuf - 1; -+ nleft = sizeof(ibuf) - 1; - while ((i = read(s, p, nleft)) > 0) - { - p += i; ---- sendmail-8.10.0/redhat.config.m4.redhat Thu Mar 9 15:08:16 2000 -+++ sendmail-8.10.0/redhat.config.m4 Thu Mar 9 15:08:16 2000 -@@ -0,0 +1,10 @@ -+define(`confMAPDEF', `-DNEWDB -DNIS -DMAP_REGEX -DLDAPMAP') -+define(`confENVDEF', `$(RPM_OPT_FLAGS) -DXDEBUG=0 -DTCP_WRAPPERS -DSASL') -+define(`confLIBS', `-lnsl -lwrap -lldap -llber -lsasl -lcrypt -lgdbm') -+define(`confLDOPTS', `-s') -+define(`confMANOWN', `root') -+define(`confMANGRP', `root') -+define(`confMANMODE', `644') -+define(`confMAN1SRC', `1') -+define(`confMAN5SRC', `5') -+define(`confMAN8SRC', `8') ---- sendmail-8.10.0/devtools/OS/Linux.redhat Tue Jul 18 04:24:46 2000 -+++ sendmail-8.10.0/devtools/OS/Linux Mon Jul 24 14:44:15 2000 -@@ -3,12 +3,16 @@ - define(`confMANROOT', `/usr/man/man') - define(`confLIBS', `-ldl') - define(`confEBINDIR', `/usr/sbin') -+define(`confSTDIR', `/var/log') - APPENDDEF(`confLIBSEARCH', `crypt nsl') - - define(`confLD', `ld') - define(`confMTLDOPTS', `-lpthread') - define(`confLDOPTS_SO', `-shared') - define(`confSONAME',`-soname') -+define('confSBINGRP', 'mail') -+define('confSBINMODE', '6755') -+ - - - ifelse(confBLDVARIANT, `DEBUG', diff --git a/sendmail-release.patch b/sendmail-release.patch deleted file mode 100644 index 72665db..0000000 --- a/sendmail-release.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -Nur sendmail-8.9.3/src/version.c sendmail-8.9.3.pld/src/version.c ---- sendmail-8.9.3/src/version.c Fri Feb 5 01:38:46 1999 -+++ sendmail-8.9.3.pld/src/version.c Fri May 28 19:47:25 1999 -@@ -14,4 +14,4 @@ - static char sccsid[] = "@(#)version.c 8.9.3.1 (Berkeley) 2/4/1999"; - #endif /* not lint */ - --char Version[] = "8.9.3"; -+char Version[] = "PLD"; diff --git a/sendmail-smrsh.patch b/sendmail-smrsh.patch deleted file mode 100644 index f8340c1..0000000 --- a/sendmail-smrsh.patch +++ /dev/null @@ -1,190 +0,0 @@ -diff -Nur sendmail-8.9.3/smrsh/Makefile.m4 sendmail-8.9.3.pld/smrsh/Makefile.m4 ---- sendmail-8.9.3/smrsh/Makefile.m4 Tue Dec 29 18:42:52 1998 -+++ sendmail-8.9.3.pld/smrsh/Makefile.m4 Thu May 27 19:42:08 1999 -@@ -31,8 +31,8 @@ - # libraries required on your system - LIBS= ifdef(`confLIBS', `confLIBS') - --# location of smrsh binary (usually /usr/libexec or /usr/etc) --EBINDIR=${DESTDIR}ifdef(`confEBINDIR', `confEBINDIR', `/usr/libexec') -+# location of smrsh binary (usually /usr/sbin or /usr/etc) -+EBINDIR=${DESTDIR}ifdef(`confEBINDIR', `confEBINDIR', `/usr/sbin') - - # additional .o files needed - OBJADD= ifdef(`confOBJADD', `confOBJADD') ---- sendmail-8.7.5/smrsh/README.marc Thu Aug 1 11:52:37 1996 -+++ sendmail-8.7.5/smrsh/README Thu Aug 1 11:54:51 1996 -@@ -11,7 +11,7 @@ - intended as a supplement to the CERT advisory CA-93:16.sendmail.vulnerability, - and to the software, smrsh.c, written by Eric Allman. - -- -+* Modified by Red Hat Software to reflect different paths. * - - The smrsh(8) program is intended as a replacement for /bin/sh in the - program mailer definition of sendmail(8). This README file describes -@@ -41,12 +41,12 @@ - - - Choose a directory that smrsh will reside in. We will use the traditional --/usr/local/etc directory for the remainder of this document. -+/usr/sbin directory for the remainder of this document. - --As root, install smrsh in /usr/local/etc directory, with mode 511. -+As root, install smrsh in /usr/sbin directory, with mode 511. - --host.domain# mv smrsh /usr/local/etc --host.domain# chmod 511 /usr/local/etc/smrsh -+host.domain# mv smrsh /usr/sbin -+host.domain# chmod 511 /usr/sbin/smrsh - - - -@@ -68,7 +68,7 @@ - acceptable commands. - - --You will next need to create the directory /usr/adm/sm.bin and populate -+You will next need to create the directory /etc/smrsh and populate - it with the programs that your site feels are allowable for sendmail - to execute. This directory is explicitly specified in the source - code for smrsh, so changing this directory must be accompanied with -@@ -77,22 +77,22 @@ - - You will have to be root to make these modifications. - --After creating the /usr/adm/sm.bin directory, either copy the programs -+After creating the /etc/smrsh directory, either copy the programs - to the directory, or establish links to the allowable programs from --/usr/adm/sm.bin. Change the file permissions, so that these programs -+/etc/smrsh. Change the file permissions, so that these programs - can not be modified by non-root users. If you use links, you should - ensure that the target programs are not modifiable. - - To allow the popular vacation(1) program by creating a link in the --/usr/adm/sm.bin directory, you should: -+/etc/smrsh directory, you should: - --host.domain# cd /usr/adm/sm.bin -+host.domain# cd /etc/smrsh - host.domain# ln -s /usr/ucb/vacation vacation - - - - --After populating the /usr/adm/sm.bin directory, you can now configure -+After populating the /etc/smrsh directory, you can now configure - sendmail to use the restricted shell. Save the current sendmail.cf - file prior to modifying it, as a prudent precaution. - -@@ -107,7 +107,7 @@ - - In order to configure sendmail to use smrsh, you must modify the Mprog - definition in the sendmail.cf file, by replacing the /bin/sh specification --with /usr/local/etc/smrsh. -+with /usr/sbin/smrsh. - - As an example: - -@@ -115,14 +115,14 @@ - Mprog, P=/bin/sh, F=lsDFMeuP, S=10, R=20, A=sh -c $u - - which should be changed to: --Mprog, P=/usr/local/etc/smrsh, F=lsDFMeuP, S=10, R=20, A=sh -c $u -- ^^^^^^^^^^^^^^^^^^^^ -+Mprog, P=/usr/sbin/smrsh, F=lsDFMeuP, S=10, R=20, A=sh -c $u -+ ^^^^^^^^^^^^^^^ - - A more generic line may be: - Mprog, P=/bin/sh, F=lsDFM, A=sh -c $u - - and should be changed to; --Mprog, P=/usr/local/etc/smrsh, F=lsDFM, A=sh -c $u -+Mprog, P=/usr/sbin/smrsh, F=lsDFM, A=sh -c $u - - - After modifying the Mprog definition in the sendmail.cf file, if a frozen -@@ -133,12 +133,12 @@ - a search of the strings(1) output of the sendmail binary. - - In order to create a new frozen configuration, if it is required: --host.domain# /usr/lib/sendmail -bz -+host.domain# /usr/sbin/sendmail -bz - - Now re-start the sendmail process. An example of how to do this on - a typical system follows: - - host.domain# /usr/bin/ps aux | /usr/bin/grep sendmail --root 130 0.0 0.0 168 0 ? IW Oct 2 0:10 /usr/lib/sendmail -bd -q -+root 130 0.0 0.0 168 0 ? IW Oct 2 0:10 /usr/sbin/sendmail -bd -q - host.domain# /bin/kill -9 130 --host.domain# /usr/lib/sendmail -bd -q30m -+host.domain# /usr/sbin/sendmail -bd -q30m ---- sendmail-8.7.5/smrsh/smrsh.8.marc Sun Nov 13 13:25:16 1994 -+++ sendmail-8.7.5/smrsh/smrsh.8 Thu Aug 1 11:48:07 1996 -@@ -59,7 +59,7 @@ - Briefly, - .I smrsh - limits programs to be in the directory --/usr/adm/sm.bin, -+/etc/smrsh, - allowing the system administrator to choose the set of acceptable commands. - It also rejects any commands with the characters - `\`', `<', `>', `|', `;', `&', `$', `(', `)', `\r' (carriage return), -@@ -73,10 +73,10 @@ - and - ``vacation'' - all actually forward to --``/usr/adm/sm.bin/vacation''. -+``/etc/smrsh/vacation''. - .PP - System administrators should be conservative about populating --/usr/adm/sm.bin. -+/etc/smrsh - Reasonable additions are - .IR vacation (1), - .IR procmail (1), -@@ -86,20 +86,12 @@ - (such as - .IR perl (1)) - in the --sm.bin -+/etc/smrsh - directory. - Note that this does not restrict the use of shell or perl scripts --in the sm.bin directory (using the ``#!'' syntax); -+in the /etc/smrsh directory (using the ``#!'' syntax); - it simply disallows execution of arbitrary programs. --.SH COMPILATION --Compilation should be trivial on most systems. --You may need to use \-DPATH=\e"\fIpath\fP\e" --to adjust the default search path --(defaults to ``/bin:/usr/bin:/usr/ucb'') --and/or \-DCMDBIN=\e"\fIdir\fP\e" --to change the default program directory --(defaults to ``/usr/adm/sm.bin''). - .SH FILES --/usr/adm/sm.bin \- directory for restricted programs -+/etc/smrsh \- directory for restricted programs - .SH SEE ALSO - sendmail(8) ---- sendmail-8.9.3/smrsh/smrsh.c~ Tue Dec 29 12:42:52 1998 -+++ sendmail-8.9.3/smrsh/smrsh.c Mon Apr 5 11:25:36 1999 -@@ -58,7 +58,7 @@ - - /* directory in which all commands must reside */ - #ifndef CMDDIR --# define CMDDIR "/usr/adm/sm.bin" -+# define CMDDIR "/etc/smrsh" - #endif - - /* characters disallowed in the shell "-c" argument */ -@@ -66,7 +66,7 @@ - - /* default search path */ - #ifndef PATH --# define PATH "/bin:/usr/bin:/usr/ucb" -+# define PATH "/bin:/usr/bin" - #endif - - int diff --git a/sendmail-virtusertable-sample b/sendmail-virtusertable-sample deleted file mode 100644 index 3512635..0000000 --- a/sendmail-virtusertable-sample +++ /dev/null @@ -1,8 +0,0 @@ -# Address rewrites for incomming mail -# user@realdomain (must be in $w) localuser (may be an alias) -# info@foo.com foo-info -# info@bar.com bar-info -# @baz.org jane@elsewhere.net -# @foo.org %1@elsewhere.com -# @bar.org error:nouser User unknown -# diff --git a/sendmail.spec b/sendmail.spec index 11b2c24..cd359f0 100644 --- a/sendmail.spec +++ b/sendmail.spec @@ -2,21 +2,21 @@ # Conditional build: # _without_ldap without LDAP support # _without_tls without TLS (SSL) support -# _with_db3 use db3 instead of db package -# _with_pgsql without pgsql support (bluelabs) +# _with_pgsql with PostgreSQL support (bluelabs) # Summary: A widely used Mail Transport Agent (MTA) Summary(de): sendmail-Mail-Übertragungsagent Summary(es): Sendmail - agente de transporte de mail Summary(fr): Agent de transport de courrier sendmail +Summary(ko): SMTP_AUTH¿Í TLS¸¦ Áö¿øÇÏ´Â Mail Àü¼Û ÇÁ·Î±×·¥(MTA) Summary(pl): Sendmail - serwer poczty elektronicznej Summary(pt_BR): Sendmail - agente de transporte de mail Summary(ru): ðÏÞÔÏ×ÙÊ ÔÒÁÎÓÐÏÒÔÎÙÊ ÁÇÅÎÔ sendmail Summary(tr): Elektronik posta hizmetleri sunucusu Summary(uk): ðÏÛÔÏ×ÉÊ ÔÒÁÎÓÐÏÒÔÎÉÊ ÁÇÅÎÔ sendmail Name: sendmail -Version: 8.12.7 -Release: 2 +Version: 8.12.9 +Release: 1 License: BSD Group: Networking/Daemons Source0: ftp://ftp.sendmail.org/pub/sendmail/%{name}.%{version}.tar.gz @@ -43,11 +43,10 @@ Patch5: %{name}-redirect.patch Patch6: %{name}-hprescan-dos.patch Patch7: http://blue-labs.org/clue/bluelabs.patch-8.12.3 BuildRequires: cyrus-sasl-devel -%{?_with_db3:BuildRequires: db3-devel} -%{!?_with_db3:BuildRequires: db-devel >= 4.1.25} +BuildRequires: db3-devel %{!?_without_ldap:BuildRequires: openldap-devel} -%{!?_without_tls:BuildRequires: openssl-devel} -%{?_with_pgsql:BuildRequires: postgresql-devel} +%{!?_without_tls:BuildRequires: openssl-devel >= 0.9.6i} +%{?_with_pgsql:BuildRequires: postgresql-devel} Requires(pre): /bin/id Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd @@ -57,7 +56,6 @@ Requires(post): textutils Requires(post,preun):/sbin/chkconfig Requires(postun): /usr/sbin/groupdel Requires(postun): /usr/sbin/userdel -%{!?_with_db3:Requires: db >= 4.1.25} Requires: m4 Requires: procmail Provides: smtpdaemon @@ -104,6 +102,13 @@ une facilit l'\"aliasing\" et le \"forwarding\", un routage automatique sur les passerelles du réseau, et une configuration flexible. +%description -l ko +SendamilÀº ¸Å¿ì ³Î¸® »ç¿ëµÇ´Â Mail Àü¼Û ÇÁ·Î±×·¥ÀÌ´Ù(MTA). Mail Àü¼Û +ÇÁ·Î±×·¥µé(MTA)Àº ¾î¶°ÇÑ machine¿¡¼­ ´Ù¸¥ machineÀ¸·Î ¸ÞÀÏÀ» º¸³»¸ç +SendmailÀº e-mailÀ» ÀбâÀ§ÇØ »ç¿ëÇÏ´Â client programÀº ¾Æ´Ï´Ù. +SendamilÀº ¿øÇÏ´Â °÷À¸·Î InternetÀ̳ª Network¸¦ ÅëÇØ e-mailÀ» º¸³»´Â +¿ªÇÒÀ» ÇÏ´Â backgrond¿¡¼­ ÀÛ¾÷À» ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. + %description -l pl Sendmail jest programem umo¿liwiaj±cym wymianê poczty elektronicznej miêdzy komputerami w sieci (MTA). Zajmuje siê przekazywaniem poczty @@ -157,7 +162,6 @@ install %{SOURCE7} config.m4 %build echo "define(\`confCC', \`%{__cc}')" >> config.m4 echo "define(\`confOPTIMIZE', \`%{rpmcflags} -DUSE_VENDOR_CF_PATH=1 -DNETINET6')" >> config.m4 -echo "APPENDDEF(\`confINCDIRS', \`-I/usr/include/sasl')" >> config.m4 echo "define(\`confLIBSEARCH', \`db')" >> config.m4 %if %{?debug:0}%{!?debug:1} echo "define(\`confLDOPTS', \`-s')" >> config.m4 @@ -287,6 +291,7 @@ else fi %post +umask 022 # # Convert old format to new # diff --git a/site.Linux.m4 b/site.Linux.m4 deleted file mode 100644 index dad998e..0000000 --- a/site.Linux.m4 +++ /dev/null @@ -1,17 +0,0 @@ -# @(#)Linux 8.4 (Berkeley) 3/22/98 -define(`confSBINOWN',`id') -define(`confSBINGRP',`gid') -define(`confUBINOWN',`id') -define(`confUBINGRP',`gid') -define(`confMANOWN', `id') -define(`confMANGRP',`gid') -define(`confCC',`gcc') -define(`confMAPDEF',`-DMAP_REGEX -DNIS -DNETINET6') -define(`confSTDIR', `/var/run') -define(`confHFDIR',`/etc/mail') -define(`confDEPEND_TYPE', `CC-M') -define(`confMANROOT', `/usr/share/man/man') -define(`confOPTIMIZE', `opt') -define(`confLDOPTS',`-s') -APPENDDEF(`confLIBS', `-lresolv -lnsl') -APPENDDEF(`confENVDEF', `-D_FFR_MAX_MIME_HEADER_LENGTH=1') \ No newline at end of file diff --git a/site.Linux.ppc.m4 b/site.Linux.ppc.m4 deleted file mode 100644 index bed6be7..0000000 --- a/site.Linux.ppc.m4 +++ /dev/null @@ -1,16 +0,0 @@ - -# Very much like site.Linux.m4, but: -# Uses $(RPM_OPT_FLAGS) for OPTIMIZE -# Uses the default cc -# SBINGRP already defaults to mail -# Adds -lnsl to LIBS for NIS support - -define(`confMAPDEF', `-DMAP_REGEX -DNIS') -APPENDDEF(`confLIBS', `-lnsl') -define(`confSTDIR', `/var/run') -define(`confHFDIR',`/etc/mail') -define(`confDEPEND_TYPE', `CC-M') -define(`confMANROOT', `/usr/share/man/man') -define(`confOPTIMIZE', `$(RPM_OPT_FLAGS)') -define(`confLDOPTS', `-s') - diff --git a/smrsh-20020924.patch b/smrsh-20020924.patch deleted file mode 100644 index 1a01441..0000000 --- a/smrsh-20020924.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff -urN sendmail-8.12.6.orig/smrsh/smrsh.c sendmail-8.12.6/smrsh/smrsh.c ---- sendmail-8.12.6.orig/smrsh/smrsh.c Mon Oct 14 17:29:31 2002 -+++ sendmail-8.12.6/smrsh/smrsh.c Mon Oct 14 17:50:32 2002 -@@ -57,6 +57,8 @@ - #include - #include - #include -+#include -+#include - #include - #include - #include -@@ -145,6 +147,7 @@ - char *newenv[2]; - char pathbuf[1000]; - char specialbuf[32]; -+ struct stat st; - - #ifndef DEBUG - # ifndef LOG_MAIL -@@ -302,6 +305,38 @@ - (void) sm_io_fprintf(smioout, SM_TIME_DEFAULT, - "Trying %s\n", cmdbuf); - #endif /* DEBUG */ -+ if (stat(cmdbuf, &st) < 0) -+ { -+ /* can't stat it */ -+ (void) sm_io_fprintf(smioerr, SM_TIME_DEFAULT, -+ "%s: %s not available for sendmail programs (stat failed)\n", -+ prg, cmd); -+ if (p != NULL) -+ *p = ' '; -+#ifndef DEBUG -+ syslog(LOG_CRIT, "uid %d: attempt to use %s (stat failed)", -+ (int) getuid(), cmd); -+#endif /* ! DEBUG */ -+ exit(EX_UNAVAILABLE); -+ } -+ if (!S_ISREG(st.st_mode) -+#ifdef S_ISLNK -+ && !S_ISLNK(st.st_mode) -+#endif /* S_ISLNK */ -+ ) -+ { -+ /* can't stat it */ -+ (void) sm_io_fprintf(smioerr, SM_TIME_DEFAULT, -+ "%s: %s not available for sendmail programs (not a file)\n", -+ prg, cmd); -+ if (p != NULL) -+ *p = ' '; -+#ifndef DEBUG -+ syslog(LOG_CRIT, "uid %d: attempt to use %s (not a file)", -+ (int) getuid(), cmd); -+#endif /* ! DEBUG */ -+ exit(EX_UNAVAILABLE); -+ } - if (access(cmdbuf, X_OK) < 0) - { - /* oops.... crack attack possiblity */ -- 2.44.0