From 676f8900ac96a2ca054b91b0a00cf6d4fb95211d Mon Sep 17 00:00:00 2001 From: "Richard A Nelson (Rick)" Date: Mon, 28 Mar 2005 01:50:00 +0000 Subject: Imported Debian patch 8.13.4-1 --- debian/changelog | 36 +++++ debian/patches/8.13/8.13.3/client_helo.patch | 152 --------------------- debian/patches/8.13/8.13.3/close_wait.p2 | 109 --------------- debian/patches/8.13/8.13.3/cpu_hog.patch | 38 ------ debian/patches/8.13/8.13.3/cyrusv2.m4.debian-patch | 11 -- debian/patches/8.13/8.13.3/dpatch.001 | 50 ------- debian/patches/8.13/8.13.3/dpatch.002 | 19 --- debian/patches/8.13/8.13.3/dpatch.003 | 52 ------- debian/patches/8.13/8.13.3/dpatch.004 | 52 ------- debian/patches/8.13/8.13.3/dpatch.005 | 54 -------- debian/patches/8.13/8.13.3/drac.patch | 24 ---- debian/patches/8.13/8.13.3/ldap_url_search.p0 | 24 ---- debian/patches/8.13/8.13.3/maxseq.patch | 51 ------- debian/patches/8.13/8.13.3/qtool.patch | 101 -------------- debian/patches/8.13/8.13.4/client_helo.patch | 152 +++++++++++++++++++++ debian/patches/8.13/8.13.4/cyrusv2.m4.debian-patch | 11 ++ debian/patches/8.13/8.13.4/dpatch.001 | 50 +++++++ debian/patches/8.13/8.13.4/dpatch.002 | 19 +++ debian/patches/8.13/8.13.4/dpatch.003 | 52 +++++++ debian/patches/8.13/8.13.4/dpatch.004 | 52 +++++++ debian/patches/8.13/8.13.4/dpatch.005 | 54 ++++++++ debian/patches/8.13/8.13.4/drac.patch | 24 ++++ debian/patches/8.13/8.13.4/ldap_url_search.p0 | 24 ++++ debian/patches/8.13/8.13.4/maxseq.patch | 51 +++++++ debian/patches/8.13/8.13.4/qtool.patch | 101 ++++++++++++++ 25 files changed, 626 insertions(+), 737 deletions(-) delete mode 100644 debian/patches/8.13/8.13.3/client_helo.patch delete mode 100644 debian/patches/8.13/8.13.3/close_wait.p2 delete mode 100644 debian/patches/8.13/8.13.3/cpu_hog.patch delete mode 100644 debian/patches/8.13/8.13.3/cyrusv2.m4.debian-patch delete mode 100644 debian/patches/8.13/8.13.3/dpatch.001 delete mode 100644 debian/patches/8.13/8.13.3/dpatch.002 delete mode 100644 debian/patches/8.13/8.13.3/dpatch.003 delete mode 100644 debian/patches/8.13/8.13.3/dpatch.004 delete mode 100644 debian/patches/8.13/8.13.3/dpatch.005 delete mode 100644 debian/patches/8.13/8.13.3/drac.patch delete mode 100644 debian/patches/8.13/8.13.3/ldap_url_search.p0 delete mode 100644 debian/patches/8.13/8.13.3/maxseq.patch delete mode 100644 debian/patches/8.13/8.13.3/qtool.patch create mode 100644 debian/patches/8.13/8.13.4/client_helo.patch create mode 100644 debian/patches/8.13/8.13.4/cyrusv2.m4.debian-patch create mode 100644 debian/patches/8.13/8.13.4/dpatch.001 create mode 100644 debian/patches/8.13/8.13.4/dpatch.002 create mode 100644 debian/patches/8.13/8.13.4/dpatch.003 create mode 100644 debian/patches/8.13/8.13.4/dpatch.004 create mode 100644 debian/patches/8.13/8.13.4/dpatch.005 create mode 100644 debian/patches/8.13/8.13.4/drac.patch create mode 100644 debian/patches/8.13/8.13.4/ldap_url_search.p0 create mode 100644 debian/patches/8.13/8.13.4/maxseq.patch create mode 100644 debian/patches/8.13/8.13.4/qtool.patch diff --git a/debian/changelog b/debian/changelog index b4fcc68..fe95af9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,39 @@ +sendmail (8.13.4-1) unstable; urgency=low + * New upstream release + * Refit patches + + -- Richard A Nelson (Rick) Mon, 28 Mar 2005 01:50:00 -0000 + +sendmail (8.13.4-0) private; urgency=low + * New upstream release + * Refit patches + + -- Richard A Nelson (Rick) Mon, 28 Mar 2005 01:50:00 -0000 + +sendmail (8.13.3+8.13.4.Beta0-0) private; urgency=low + * New upstream alpha + * Refit patches + + -- Richard A Nelson (Rick) Wed, 23 Mar 2005 16:37:00 -0000 + +sendmail (8.13.3+8.13.4.Alpha2-0) private; urgency=low + * New upstream alpha + * Refit patches + + -- Richard A Nelson (Rick) Thu, 17 Mar 2005 17:38:00 -0000 + +sendmail (8.13.3+8.13.4.Alpha1-0) private; urgency=low + * New upstream alpha + * Refit patches + + -- Richard A Nelson (Rick) Thu, 10 Mar 2005 17:50:00 -0000 + +sendmail (8.13.3+8.13.4.Alpha0-0) private; urgency=low + * New upstream alpha + * Refit patches + + -- Richard A Nelson (Rick) Wed, 16 Feb 2005 05:30:00 -0000 + sendmail (8.13.3-9) unstable; urgency=high * No longer set define(`confCON_EXPENSIVE',`True')dnl as this can slow delivery for most people needlessly diff --git a/debian/patches/8.13/8.13.3/client_helo.patch b/debian/patches/8.13/8.13.3/client_helo.patch deleted file mode 100644 index 5ee742a..0000000 --- a/debian/patches/8.13/8.13.3/client_helo.patch +++ /dev/null @@ -1,152 +0,0 @@ -#------------------------------------------------------------------------------ -# Who: -# Richard Nelson -# What: -# 1) New macro ${client_helo} containing the EHLO/HELO text (or null) -# 2) New ruleset check_helo called after the EHLO/HELO and before the -# milter callout. This ruleset invocation and handling are modeled -# after the existing check_* rulesets -# Why: -# 0) $s is transient, and not set until MAIL FROM: is seen - I want the -# ability to check the EHLO/HELO string elsewere (like check_vrfy). -# ${client_helo} is set upon seeing the EHLO/HELO command and -# remains valid forever. -# 1) There is an IBM internal system check routine for AIX and Linux that -# I'm thinking will soon be a requirement to pass its audit... Like -# all such tools, it is limited - it requires that vrfy,expn are -# disabled... well, I don't do that... if you can relay through the -# box, then you can query it. If you can't relay, you get 5.7.1 ! -# using the new macro - I can specifically deny the scanner - even -# though other traffic is unaffected. -# 2) It can provide the same function as -DPICKY_HELO_CHECK, dynamically -# by making those checks in the new check_helo ruleset - as outlined -# below (NOT RECOMMENDED) -# 3) It can be passed to the milters, if they choose (like mimedefang) -# to apparently not support the helo callout -# 4) I was bored stiff being in the bowels of a COBOL compiler and -# needed a sanity break :) -# Design questions: -# Testing: -# 1) Running on three boxes, two of which make use of the macro and -# ruleset to block. The new function works great - and no ill -# affects seen on any of the boxes. -# Documentation: -# See below for the new macro and ruleset -# TODO: -# add to milter macro specifications -# Changes: -# 1) deliver.c -- remove client_helo from the envelope like all the -# other client_* macros -# 2) srvrsmtp.c -# A) A new boolean variable indicating that the helo string is valid -# gothelo is not sufficient here... the new scope is very small... -# B) A new character pointer holding the helo string address -# C) After obtaining a valid helo string, or accepting an invalid -# one, create a copy of the string for permanence -# D) Update the client_helo macro variable with the helo string -#------------------------------------------------------------------------------ -#5.2. D -- Define Macro -# ... -# ${client_helo} -# The string specified by the SMTP client on the EHLO/HELO -# command, or null if no EHLO/HELO was seen. Defined in the -# SMTP server only. Unlike the $s macro, which is transient -# and not available in all rulesets, the {client_helo} macro -# is available to all rulesets after the EHLO/HELO greeting. -# ... -#------------------------------------------------------------------------------ -#5.1.4.?. check_helo -# -# The check_helo ruleset is passed the address -# or name parameter of the SMTP EHLO/HELO command. It can -# accept or reject the address. Note that rejecting mail -# based upon this check is a violation of the standards! -# -# One could impliment an improved -PICKY_HELO_CHECK test -# here by checking the values of {client_name}, {client_addr}, -# against {client_helo} and {daemon_addr}. -#------------------------------------------------------------------------------ -diff -c 'deliver.orig' 'deliver.c' -Index: ./deliver.orig -Prereq: 8.983 -*** ./sendmail-8.13.3/sendmail/deliver.c Tue Aug 10 17:50:11 2004 ---- ./deliver.c Tue Aug 10 17:44:04 2004 -*************** -*** 1363,1368 **** ---- 1363,1369 ---- - macdefine(&e->e_macro, A_PERM, macid("{client_addr}"), ""); - macdefine(&e->e_macro, A_PERM, macid("{client_port}"), ""); - macdefine(&e->e_macro, A_PERM, macid("{client_resolve}"), ""); -+ macdefine(&e->e_macro, A_PERM, macid("{client_helo}"), ""); - } - - SM_TRY -diff -c 'srvrsmtp.orig' 'srvrsmtp.c' -Index: ./srvrsmtp.orig -Prereq: 8.902 -*** ./sendmail-8.13.3/sendmail/srvrsmtp.c Tue Aug 10 17:50:23 2004 ---- ./srvrsmtp.c Tue Aug 10 17:42:54 2004 -*************** -*** 444,449 **** ---- 444,451 ---- - char *volatile protocol; /* sending protocol */ - char *volatile sendinghost; /* sending hostname */ - char *volatile peerhostname; /* name of SMTP peer or "localhost" */ -+ char *volatile helo_name; /* client_helo string */ -+ bool helo_accept = false; /* helo/ehlo command accepted */ - auto char *delimptr; - char *id; - volatile unsigned int n_badcmds = 0; /* count of bad commands */ -*************** -*** 1976,1981 **** ---- 1978,1987 ---- - { - q = "pleased to meet you"; - sendinghost = sm_strdup_x(p); -+ helo_accept = true; -+ helo_name = sm_strdup_x(p); -+ macdefine(&e->e_macro, A_PERM, macid("{client_helo}"), -+ helo_name); - } - else if (!AllowBogusHELO) - { -*************** -*** 1989,1994 **** ---- 1995,2004 ---- - else - { - q = "accepting invalid domain name"; -+ helo_accept = true; -+ helo_name = sm_strdup_x(p); -+ macdefine(&e->e_macro, A_PERM, macid("{client_helo}"), -+ helo_name); - } - - if (gothelo) -*************** -*** 1996,2001 **** ---- 2006,2028 ---- - CLEAR_STATE(cmdbuf); - } - -+ if (helo_accept) { -+ if (rscheck("check_helo", helo_name, -+ NULL, e, RSF_RMCOMM|RSF_COUNT, 3, -+ NULL, e->e_id) != EX_OK || -+ Errors > 0) -+ sm_exc_raisenew_x(&EtypeQuickAbort, 1); -+ -+ if (MaxMessageSize > 0 && -+ (e->e_msgsize > MaxMessageSize || -+ e->e_msgsize < 0)) -+ { -+ usrerr("552 5.2.3 Message size exceeds fixed maximum message size (%ld)", -+ MaxMessageSize); -+ sm_exc_raisenew_x(&EtypeQuickAbort, 1); -+ } -+ } -+ - #if MILTER - if (smtp.sm_milterlist && smtp.sm_milterize && - !bitset(EF_DISCARD, e->e_flags)) - diff --git a/debian/patches/8.13/8.13.3/close_wait.p2 b/debian/patches/8.13/8.13.3/close_wait.p2 deleted file mode 100644 index 247fada..0000000 --- a/debian/patches/8.13/8.13.3/close_wait.p2 +++ /dev/null @@ -1,109 +0,0 @@ ---- mci.c.orig Wed Aug 4 14:11:31 2004 -+++ ./sendmail-8.13.3/sendmail/mci.c Mon Jan 17 10:29:28 2005 -@@ -398,6 +398,57 @@ - - return mci; - } -+ -+/* -+** MCI_CLOSE -- (forcefully) close files used for a connection. -+** Note: this is a last resort, usually smtpquit() or endmailer() -+** should be used to close a connection. -+** -+** Parameters: -+** mci -- the connection to close. -+** where -- where has this been called? -+** -+** Returns: -+** none. -+*/ -+ -+void -+mci_close(mci, where) -+ MCI *mci; -+ char *where; -+{ -+ bool dumped; -+ -+ if (mci == NULL) -+ return; -+ dumped = false; -+ if (mci->mci_out != NULL) -+ { -+ if (tTd(56, 1)) -+ { -+ sm_dprintf("mci_close: mci_out!=NULL, where=%s\n", -+ where); -+ mci_dump(sm_debug_file(), mci, false); -+ dumped = true; -+ } -+ (void) sm_io_close(mci->mci_out, SM_TIME_DEFAULT); -+ mci->mci_out = NULL; -+ } -+ if (mci->mci_in != NULL) -+ { -+ if (tTd(56, 1)) -+ { -+ sm_dprintf("mci_close: mci_in!=NULL, where=%s\n", -+ where); -+ if (!dumped) -+ mci_dump(sm_debug_file(), mci, false); -+ } -+ (void) sm_io_close(mci->mci_in, SM_TIME_DEFAULT); -+ mci->mci_in = NULL; -+ } -+ mci->mci_state = MCIS_CLOSED; -+} -+ - /* - ** MCI_NEW -- allocate new MCI structure - ** ---- sendmail.h.orig Tue Nov 9 11:45:46 2004 -+++ ./sendmail-8.13.3/sendmail/sendmail.h Mon Jan 17 09:39:56 2005 -@@ -728,6 +728,7 @@ - - /* functions */ - extern void mci_cache __P((MCI *)); -+extern void mci_close __P((MCI *, char *where)); - extern void mci_dump __P((SM_FILE_T *, MCI *, bool)); - extern void mci_dump_all __P((SM_FILE_T *, bool)); - extern void mci_flush __P((bool, MCI *)); ---- usersmtp.c.orig Fri Jan 14 07:34:00 2005 -+++ ./sendmail-8.13.3/sendmail/usersmtp.c Mon Jan 17 09:40:57 2005 -@@ -89,6 +89,7 @@ - */ - - SmtpError[0] = '\0'; -+ SmtpMsgBuffer[0] = '\0'; - CurHostName = mci->mci_host; /* XXX UGLY XXX */ - if (CurHostName == NULL) - CurHostName = MyHostName; -@@ -2899,7 +2900,10 @@ - char *oldcurhost; - - if (mci->mci_state == MCIS_CLOSED) -+ { -+ mci_close(mci, "smtpquit:1"); - return; -+ } - - oldcurhost = CurHostName; - CurHostName = mci->mci_host; /* XXX UGLY XXX */ -@@ -3133,7 +3137,7 @@ - if (strncmp(SmtpMsgBuffer, "QUIT", 4) == 0) - { - errno = mci->mci_errno; -- mci->mci_state = MCIS_CLOSED; -+ mci_close(mci, "reply:1"); - return -1; - } - mci->mci_state = MCIS_ERROR; -@@ -3158,7 +3162,7 @@ - /* errors on QUIT should be ignored */ - if (strncmp(SmtpMsgBuffer, "QUIT", 4) == 0) - { -- mci->mci_state = MCIS_CLOSED; -+ mci_close(mci, "reply:2"); - return -1; - } - diff --git a/debian/patches/8.13/8.13.3/cpu_hog.patch b/debian/patches/8.13/8.13.3/cpu_hog.patch deleted file mode 100644 index bcde4c2..0000000 --- a/debian/patches/8.13/8.13.3/cpu_hog.patch +++ /dev/null @@ -1,38 +0,0 @@ -# This is a patch for deliver.c to update it to deliver.8.13.4 -# -# To apply this patch: -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'applypatch' program with this patch file as input. -# -# If you do not have 'applypatch', it is part of the 'makepatch' package -# that you can fetch from the Comprehensive Perl Archive Network: -# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz -# In the above URL, 'x' should be 2 or higher. -# -# To apply this patch without the use of 'applypatch': -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'patch' program with this file as input. -# -#### End of Preamble #### - -#### Patch data follows #### -diff -c 'deliver.orig' 'deliver.c' -Index: ./deliver.orig -Prereq: 8.983 -*** ./sendmail-8.13.3/sendmail/deliver.c Mon Mar 14 20:50:56 2005 ---- ./deliver.8.13.4 Mon Mar 14 20:51:12 2005 -*************** -*** 5684,5689 **** ---- 5684,5693 ---- - !(m->m_argv[0] != NULL && strcmp(m->m_argv[0], "TCP") == 0)) - return "localhost"; - -+ /* an empty host does not have MX records */ -+ if (*host == '\0') -+ return "_empty_"; -+ - /* - ** Check to see if this uses IPC -- if not, it can't have MX records. - */ -#### End of Patch data #### - diff --git a/debian/patches/8.13/8.13.3/cyrusv2.m4.debian-patch b/debian/patches/8.13/8.13.3/cyrusv2.m4.debian-patch deleted file mode 100644 index 5e2c8c3..0000000 --- a/debian/patches/8.13/8.13.3/cyrusv2.m4.debian-patch +++ /dev/null @@ -1,11 +0,0 @@ ---- sendmail-8.13.3/cf/mailer/cyrusv2.m4 Sat Jun 1 15:14:57 2002 -+++ cyrusv2.m4.new Wed Jun 5 04:21:34 2002 -@@ -12,7 +12,7 @@ - - _DEFIFNOT(`_DEF_CYRUSV2_MAILER_FLAGS', `lsDFMnqXz') - _DEFIFNOT(`CYRUSV2_MAILER_FLAGS', `A@/:|m') --ifdef(`CYRUSV2_MAILER_ARGS',, `define(`CYRUSV2_MAILER_ARGS', `FILE /var/imap/socket/lmtp')') -+ifdef(`CYRUSV2_MAILER_ARGS',, `define(`CYRUSV2_MAILER_ARGS', `FILE /var/run/cyrus/socket/lmtp')') - define(`_CYRUSV2_QGRP', `ifelse(defn(`CYRUSV2_MAILER_QGRP'),`',`', ` Q=CYRUSV2_MAILER_QGRP,')')dnl - - POPDIVERT diff --git a/debian/patches/8.13/8.13.3/dpatch.001 b/debian/patches/8.13/8.13.3/dpatch.001 deleted file mode 100644 index fe7dcf9..0000000 --- a/debian/patches/8.13/8.13.3/dpatch.001 +++ /dev/null @@ -1,50 +0,0 @@ -# Remove -Y from procmail arguements -# -# To apply this patch: -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'applypatch' program with this patch file as input. -# -# If you do not have 'applypatch', it is part of the 'makepatch' package -# that you can fetch from the Comprehensive Perl Archive Network: -# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz -# In the above URL, 'x' should be 2 or higher. -# -# To apply this patch without the use of 'applypatch': -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'patch' program with this file as input. -# -#### End of Preamble #### - -#### Patch data follows #### -diff -c 'cf/feature/local_procmail.m4' 'debian/patches/local_procmail.m4' -Index: ./cf/feature/local_procmail.m4 -Prereq: 8.22 -*** sendmail-8.13.3/cf/feature/local_procmail.m4 Sat Nov 20 15:26:21 1999 ---- ./debian/patches/local_procmail.m4 Sat Nov 20 15:39:46 1999 -*************** -*** 27,32 **** - `/usr/local/bin/procmail'), - _ARG_)) - define(`LOCAL_MAILER_ARGS', -! ifelse(len(X`'_ARG2_), `1', `procmail -Y -a $h -d $u', _ARG2_)) - define(`LOCAL_MAILER_FLAGS', - ifelse(len(X`'_ARG3_), `1', `SPfhn9', _ARG3_)) ---- 27,32 ---- - `/usr/local/bin/procmail'), - _ARG_)) - define(`LOCAL_MAILER_ARGS', -! ifelse(len(X`'_ARG2_), `1', `procmail -a $h -d $u', _ARG2_)) - define(`LOCAL_MAILER_FLAGS', - ifelse(len(X`'_ARG3_), `1', `SPfhn9', _ARG3_)) -#### End of Patch data #### - -#### ApplyPatch data follows #### -# Data version : 1.0 -# Date generated : Sat Nov 20 15:39:47 1999 -# Generated by : makepatch 2.00 -# Recurse directories : Yes -# p 'cf/feature/local_procmail.m4' 941 -#### End of ApplyPatch data #### - -#### End of Patch kit [created: Sat Nov 20 15:39:47 1999] #### -#### Checksum: 49 1730 1445 #### diff --git a/debian/patches/8.13/8.13.3/dpatch.002 b/debian/patches/8.13/8.13.3/dpatch.002 deleted file mode 100644 index 8337978..0000000 --- a/debian/patches/8.13/8.13.3/dpatch.002 +++ /dev/null @@ -1,19 +0,0 @@ ---- sendmail-8.13.3/cf/mailer/cyrus.m4 Tue May 2 14:40:24 2000 -+++ ./debian/patches/cf/mailer/cyrus.m4 Tue May 2 14:41:21 2000 -@@ -36,12 +36,12 @@ - # - - _DEFIFNOT(`CYRUS_MAILER_FLAGS', `Ah5@/:|') --ifdef(`CYRUS_MAILER_PATH',, `define(`CYRUS_MAILER_PATH', /usr/cyrus/bin/deliver)') --ifdef(`CYRUS_MAILER_ARGS',, `define(`CYRUS_MAILER_ARGS', `deliver -e -m $h -- $u')') -+ifdef(`CYRUS_MAILER_PATH',, `define(`CYRUS_MAILER_PATH', /usr/sbin/cyrdeliver)') -+ifdef(`CYRUS_MAILER_ARGS',, `define(`CYRUS_MAILER_ARGS', `cyrdeliver -e -m $h -- $u')') - ifdef(`CYRUS_MAILER_USER',, `define(`CYRUS_MAILER_USER', `cyrus:mail')') - _DEFIFNOT(`CYRUS_BB_MAILER_FLAGS', `u') --ifdef(`CYRUS_BB_MAILER_ARGS',, `define(`CYRUS_BB_MAILER_ARGS', `deliver -e -m $u')') -+ifdef(`CYRUS_BB_MAILER_ARGS',, `define(`CYRUS_BB_MAILER_ARGS', `cyrdeliver -e -m $u')') - define(`_CYRUS_QGRP', `ifelse(defn(`CYRUS_MAILER_QGRP'),`',`', ` Q=CYRUS_MAILER_QGRP,')')dnl - - POPDIVERT - - diff --git a/debian/patches/8.13/8.13.3/dpatch.003 b/debian/patches/8.13/8.13.3/dpatch.003 deleted file mode 100644 index 3ebe7f5..0000000 --- a/debian/patches/8.13/8.13.3/dpatch.003 +++ /dev/null @@ -1,52 +0,0 @@ -# Change sendmail call -obq to -obi -# -# To apply this patch: -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'applypatch' program with this patch file as input. -# -# If you do not have 'applypatch', it is part of the 'makepatch' package -# that you can fetch from the Comprehensive Perl Archive Network: -# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz -# In the above URL, 'x' should be 2 or higher. -# -# To apply this patch without the use of 'applypatch': -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'patch' program with this file as input. -# -#### End of Preamble #### - -#### Patch data follows #### -diff -c 'rmail/rmail.c' 'debian/patches/rmail.c' -Index: ./rmail/rmail.c -Prereq: 8.61 -*** sendmail-8.13.3/rmail/rmail.c Sat Sep 16 18:20:25 2000 ---- ./debian/patches/rmail.c Thu Sep 28 17:00:59 2000 -*************** -*** 318,324 **** - args[i++] = _PATH_SENDMAIL; /* Build sendmail's argument list. */ - args[i++] = "-G"; /* relay submission */ - 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 */ ---- 318,324 ---- - args[i++] = _PATH_SENDMAIL; /* Build sendmail's argument list. */ - args[i++] = "-G"; /* relay submission */ - args[i++] = "-oee"; /* No errors, just status. */ -! args[i++] = "-odi"; /* deliver in the foreground. */ - args[i++] = "-oi"; /* Ignore '.' on a line by itself. */ - - /* set from system and protocol used */ -#### End of Patch data #### - -#### ApplyPatch data follows #### -# Data version : 1.0 -# Date generated : Thu Sep 28 17:01:04 2000 -# Generated by : makepatch 2.00 -# Recurse directories : Yes -# p './build-tree/sendmail-8.11.1/rmail/rmail.c' 12072 -#### End of ApplyPatch data #### - -#### End of Patch kit [created: Thu Sep 28 17:01:04 2000] #### -#### Checksum: 51 2010 21691 #### diff --git a/debian/patches/8.13/8.13.3/dpatch.004 b/debian/patches/8.13/8.13.3/dpatch.004 deleted file mode 100644 index dff0134..0000000 --- a/debian/patches/8.13/8.13.3/dpatch.004 +++ /dev/null @@ -1,52 +0,0 @@ -# Make control socket mode 0660 -# -# To apply this patch: -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'applypatch' program with this patch file as input. -# -# If you do not have 'applypatch', it is part of the 'makepatch' package -# that you can fetch from the Comprehensive Perl Archive Network: -# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz -# In the above URL, 'x' should be 2 or higher. -# -# To apply this patch without the use of 'applypatch': -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'patch' program with this file as input. -# -#### End of Preamble #### - -#### Patch data follows #### -diff -c 'sendmail/control.c' 'debian/patches/control.c' -Index: ./sendmail/control.c -Prereq: 8.126 -*** sendmail-8.13.3/sendmail/control.c Sat Nov 20 15:26:23 1999 ---- ./debian/patches/control.c Sat Nov 20 15:39:52 1999 -*************** -*** 92,98 **** - } - } - -! if (chmod(ControlSocketName, S_IRUSR|S_IWUSR) < 0) - { - save_errno = errno; - closecontrolsocket(TRUE); ---- 92,98 ---- - } - } - -! if (chmod(ControlSocketName, S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP) < 0) - { - save_errno = errno; - closecontrolsocket(TRUE); -#### End of Patch data #### - -#### ApplyPatch data follows #### -# Data version : 1.0 -# Date generated : Sat Nov 20 15:39:53 1999 -# Generated by : makepatch 2.00 -# Recurse directories : Yes -# p 'sendmail/control.c' 6165 -#### End of ApplyPatch data #### - -#### End of Patch kit [created: Sat Nov 20 15:39:53 1999] #### -#### Checksum: 51 1497 50060 #### diff --git a/debian/patches/8.13/8.13.3/dpatch.005 b/debian/patches/8.13/8.13.3/dpatch.005 deleted file mode 100644 index bdb930e..0000000 --- a/debian/patches/8.13/8.13.3/dpatch.005 +++ /dev/null @@ -1,54 +0,0 @@ -# /usr/bin/faxmail, !/usr/local/bin/faxmail -# -# To apply this patch: -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'applypatch' program with this patch file as input. -# -# If you do not have 'applypatch', it is part of the 'makepatch' package -# that you can fetch from the Comprehensive Perl Archive Network: -# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz -# In the above URL, 'x' should be 2 or higher. -# -# To apply this patch without the use of 'applypatch': -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'patch' program with this file as input. -# -#### End of Preamble #### - -#### Patch data follows #### -diff -c './cf/mailer/fax.m4' 'fax.m4' -Index: ./cf/mailer/fax.m4 -Prereq: 8.16 -*** sendmail-8.13.3/cf/mailer/fax.m4 Mon Oct 18 02:35:28 1999 ---- ./fax.m4 Wed Jan 3 14:26:13 2001 -*************** -*** 19,26 **** - ifdef(`FAX_MAILER_ARGS',, - `define(`FAX_MAILER_ARGS', faxmail -d $u@$h $f)') - ifdef(`FAX_MAILER_PATH',, -! `define(`FAX_MAILER_PATH', /usr/local/bin/faxmail)') - ifdef(`FAX_MAILER_MAX',, - `define(`FAX_MAILER_MAX', 100000)') - define(`_FAX_QGRP', `ifelse(defn(`FAX_MAILER_QGRP'),`',`', ` Q=FAX_MAILER_QGRP,')')dnl - POPDIVERT ---- 19,26 ---- - ifdef(`FAX_MAILER_ARGS',, - `define(`FAX_MAILER_ARGS', faxmail -d $u@$h $f)') - ifdef(`FAX_MAILER_PATH',, -! `define(`FAX_MAILER_PATH', /usr/bin/faxmail)') - ifdef(`FAX_MAILER_MAX',, - `define(`FAX_MAILER_MAX', 100000)') - define(`_FAX_QGRP', `ifelse(defn(`FAX_MAILER_QGRP'),`',`', ` Q=FAX_MAILER_QGRP,')')dnl - POPDIVERT -#### End of Patch data #### - -#### ApplyPatch data follows #### -# Data version : 1.0 -# Date generated : Wed Jan 3 14:27:33 2001 -# Generated by : makepatch 2.00 -# Recurse directories : Yes -# p '../../build-tree/sendmail-8.11.2/cf/mailer/fax.m4' 1062 -#### End of ApplyPatch data #### - -#### End of Patch kit [created: Wed Jan 3 14:27:33 2001] #### -#### Checksum: 51 1807 4852 #### diff --git a/debian/patches/8.13/8.13.3/drac.patch b/debian/patches/8.13/8.13.3/drac.patch deleted file mode 100644 index 4675b97..0000000 --- a/debian/patches/8.13/8.13.3/drac.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- sendmail-8.13.3/cf/m4/proto.m4.orig 2003-03-29 02:20:53.000000000 +0900 -+++ sendmail-8.13.3/cf/m4/proto.m4 2003-03-30 13:22:18.731049640 +0900 -@@ -2110,6 +2110,13 @@ - R127.0.0.1 $@ RELAY originated locally - RIPv6:::1 $@ RELAY originated locally - R$=R $* $@ RELAY relayable IP address -+ifdef(`_DRAC_', `dnl -+R$* $: <> $(drac $1 $: $1 $) -+R<> $+ $: $1 -+R<> $+ $@ RELAY authenticated IP address -+RIPv6:$* $: <> $(drac $1 $: IPv6:$1 $) -+R<> $+ $: $1 -+R<> $+ $@ RELAY authenticated IP address',`dnl') - ifdef(`_ACCESS_TABLE_', `dnl - R$* $: $>A <$1> <+ Connect> <$1> - R $* $@ RELAY relayable IP address ---- /dev/null 2002-01-01 00:00:00.000000000 +0900 -+++ sendmail-8.13.3/cf/feature/drac.m4 2002-04-18 21:33:31.716576810 +0900 -@@ -0,0 +1,5 @@ -+define(`_DRAC_', `') -+ -+LOCAL_CONFIG -+Kdrac ifelse(defn(`_ARG_'), `', DATABASE_MAP_TYPE MAIL_SETTINGS_DIR`drac', -+ `_ARG_') diff --git a/debian/patches/8.13/8.13.3/ldap_url_search.p0 b/debian/patches/8.13/8.13.3/ldap_url_search.p0 deleted file mode 100644 index 9b8d70b..0000000 --- a/debian/patches/8.13/8.13.3/ldap_url_search.p0 +++ /dev/null @@ -1,24 +0,0 @@ -Index: ldap.c -=================================================================== -RCS file: /cvs/libsm/ldap.c,v -retrieving revision 1.51 -retrieving revision 1.53 -diff -u -r1.51 -r1.53 ---- ./sendmail-8.13.3/libsm/ldap.c 30 Oct 2003 23:11:12 -0000 1.51 -+++ ldap.c 30 Oct 2003 23:33:10 -0000 1.53 -@@ -1043,6 +1043,7 @@ - NULL : lmap->ldap_attr), - lmap->ldap_attrsonly); - } -+#if SM_CONF_LDAP_URL_SEARCH - else if (rl->lr_type == SM_LDAP_ATTR_URL) - { - /* do new URL search */ -@@ -1051,6 +1052,7 @@ - lmap->ldap_attrsonly); - newflags |= SM_LDAP_USE_ALLATTR; - } -+#endif /* SM_CONF_LDAP_URL_SEARCH */ - else - { - /* unknown or illegal attribute type */ diff --git a/debian/patches/8.13/8.13.3/maxseq.patch b/debian/patches/8.13/8.13.3/maxseq.patch deleted file mode 100644 index c5fe6c8..0000000 --- a/debian/patches/8.13/8.13.3/maxseq.patch +++ /dev/null @@ -1,51 +0,0 @@ -# This is a patch for conf.h to update it to conf.h.new -# -# To apply this patch: -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'applypatch' program with this patch file as input. -# -# If you do not have 'applypatch', it is part of the 'makepatch' package -# that you can fetch from the Comprehensive Perl Archive Network: -# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz -# In the above URL, 'x' should be 2 or higher. -# -# To apply this patch without the use of 'applypatch': -# STEP 1: Chdir to the source directory. -# STEP 2: Run the 'patch' program with this file as input. -# -#### End of Preamble #### - -#### Patch data follows #### -diff -c 'conf.h' 'conf.h.new' -Index: ./conf.h -Prereq: 8.567 -*** ./sendmail-8.13.3/sendmail/conf.h Fri Sep 21 19:01:46 2001 ---- ./conf.h.new Wed Oct 10 09:24:41 2001 -*************** -*** 71,76 **** - #define MEMCHUNKSIZE 1024 /* chunk size for memory allocation */ - #define MAXUSERENVIRON 100 /* max envars saved, must be >= 3 */ -! #define MAXMAPSTACK 12 /* max # of stacked or sequenced maps */ - #if MILTER - # define MAXFILTERS 25 /* max # of milter filters */ - # define MAXFILTERMACROS 50 /* max # of macros per milter cmd */ ---- 71,76 ---- - #define MEMCHUNKSIZE 1024 /* chunk size for memory allocation */ - #define MAXUSERENVIRON 100 /* max envars saved, must be >= 3 */ -! #define MAXMAPSTACK 128 /* max # of stacked or sequenced maps */ - #if MILTER - # define MAXFILTERS 25 /* max # of milter filters */ - # define MAXFILTERMACROS 50 /* max # of macros per milter cmd */ -#### End of Patch data #### - -#### ApplyPatch data follows #### -# Data version : 1.0 -# Date generated : Wed Oct 10 09:25:12 2001 -# Generated by : makepatch 2.00_03 -# Recurse directories : Yes -# p 'conf.h' 6809 -#### End of ApplyPatch data #### - -#### End of Patch kit [created: Wed Oct 10 09:25:12 2001] #### -#### Patch checksum: 34 1333 28813 #### -#### Checksum: 52 2010 19538 #### diff --git a/debian/patches/8.13/8.13.3/qtool.patch b/debian/patches/8.13/8.13.3/qtool.patch deleted file mode 100644 index 5474c63..0000000 --- a/debian/patches/8.13/8.13.3/qtool.patch +++ /dev/null @@ -1,101 +0,0 @@ -*** ./sendmail-8.13.3/contrib/qtool.pl Wed Mar 5 16:11:54 2003 ---- ./sendmail-8.13.3/contrib/qtool.pl Wed Mar 5 15:59:10 2003 -*************** -*** 355,373 **** - sub lock_file - { - my $file_name = shift; - my $result; - - $result = sysopen(FILE_TO_LOCK, $file_name, Fcntl::O_RDWR); - if (!$result) - { - return (undef, "Unable to open '$file_name': $!"); - } - -! $result = flock(FILE_TO_LOCK, Fcntl::LOCK_EX | Fcntl::LOCK_NB); -! if (!$result) - { - return (undef, "Could not obtain lock on '$file_name': $!"); - } - - return (\*FILE_TO_LOCK, undef); - } ---- 355,394 ---- - sub lock_file - { - my $file_name = shift; - my $result; - -+ my $FLOCK_STRUCT; -+ my $fcntllock; -+ -+ # Supposedly under linux -+ # my $FLOCK_STRUCT = 's s l l i'; -+ # But I think perl's using __off64_t instead of __off_t -+ # my $FLOCK_STRUCT = 's s l l l l i'; -+ # Screw it, its all zero anyway... -+ -+ $FLOCK_STRUCT = 's H60'; -+ $fcntllock = pack($FLOCK_STRUCT, F_WRLCK, -+ "000000000000000000000000000000000000000000000000000000000000"); -+ - $result = sysopen(FILE_TO_LOCK, $file_name, Fcntl::O_RDWR); - if (!$result) - { -+ # print "Unable to open '$file_name': $!"; - return (undef, "Unable to open '$file_name': $!"); - } - -! $result = fcntl (FILE_TO_LOCK, F_SETLK, $fcntllock); -! -! # print "Fcntl Lock result on $file_name = $result\n"; -! -! # $result = flock(FILE_TO_LOCK, Fcntl::LOCK_EX | Fcntl::LOCK_NB); -! # print "Lock result on $file_name = $result\n"; -! # if (!$result) -! if ($result ne "0 but true") - { -+ # print "Could not obtain lock on '$file_name': $!\n"; - return (undef, "Could not obtain lock on '$file_name': $!"); - } - - return (\*FILE_TO_LOCK, undef); - } -*************** -*** 387,399 **** - - sub unlock_file - { - my $file = shift; - my $result; - -! $result = flock($file, Fcntl::LOCK_UN); -! if (!$result) - { - return "Unlock failed on '$result': $!"; - } - - return undef; ---- 408,428 ---- - - sub unlock_file - { - my $file = shift; - my $result; -+ my $FLOCK_STRUCT; -+ my $fcntllock; - -! $FLOCK_STRUCT = 's H60'; -! $fcntllock = pack($FLOCK_STRUCT, F_UNLCK, -! "000000000000000000000000000000000000000000000000000000000000"); -! $result = fcntl (FILE_TO_LOCK, F_SETLK, $fcntllock); -! -! if ($result ne "0 but true") -! # $result = flock($file, Fcntl::LOCK_UN); -! # if (!$result) - { - return "Unlock failed on '$result': $!"; - } - - return undef; diff --git a/debian/patches/8.13/8.13.4/client_helo.patch b/debian/patches/8.13/8.13.4/client_helo.patch new file mode 100644 index 0000000..7a12845 --- /dev/null +++ b/debian/patches/8.13/8.13.4/client_helo.patch @@ -0,0 +1,152 @@ +#------------------------------------------------------------------------------ +# Who: +# Richard Nelson +# What: +# 1) New macro ${client_helo} containing the EHLO/HELO text (or null) +# 2) New ruleset check_helo called after the EHLO/HELO and before the +# milter callout. This ruleset invocation and handling are modeled +# after the existing check_* rulesets +# Why: +# 0) $s is transient, and not set until MAIL FROM: is seen - I want the +# ability to check the EHLO/HELO string elsewere (like check_vrfy). +# ${client_helo} is set upon seeing the EHLO/HELO command and +# remains valid forever. +# 1) There is an IBM internal system check routine for AIX and Linux that +# I'm thinking will soon be a requirement to pass its audit... Like +# all such tools, it is limited - it requires that vrfy,expn are +# disabled... well, I don't do that... if you can relay through the +# box, then you can query it. If you can't relay, you get 5.7.1 ! +# using the new macro - I can specifically deny the scanner - even +# though other traffic is unaffected. +# 2) It can provide the same function as -DPICKY_HELO_CHECK, dynamically +# by making those checks in the new check_helo ruleset - as outlined +# below (NOT RECOMMENDED) +# 3) It can be passed to the milters, if they choose (like mimedefang) +# to apparently not support the helo callout +# 4) I was bored stiff being in the bowels of a COBOL compiler and +# needed a sanity break :) +# Design questions: +# Testing: +# 1) Running on three boxes, two of which make use of the macro and +# ruleset to block. The new function works great - and no ill +# affects seen on any of the boxes. +# Documentation: +# See below for the new macro and ruleset +# TODO: +# add to milter macro specifications +# Changes: +# 1) deliver.c -- remove client_helo from the envelope like all the +# other client_* macros +# 2) srvrsmtp.c +# A) A new boolean variable indicating that the helo string is valid +# gothelo is not sufficient here... the new scope is very small... +# B) A new character pointer holding the helo string address +# C) After obtaining a valid helo string, or accepting an invalid +# one, create a copy of the string for permanence +# D) Update the client_helo macro variable with the helo string +#------------------------------------------------------------------------------ +#5.2. D -- Define Macro +# ... +# ${client_helo} +# The string specified by the SMTP client on the EHLO/HELO +# command, or null if no EHLO/HELO was seen. Defined in the +# SMTP server only. Unlike the $s macro, which is transient +# and not available in all rulesets, the {client_helo} macro +# is available to all rulesets after the EHLO/HELO greeting. +# ... +#------------------------------------------------------------------------------ +#5.1.4.?. check_helo +# +# The check_helo ruleset is passed the address +# or name parameter of the SMTP EHLO/HELO command. It can +# accept or reject the address. Note that rejecting mail +# based upon this check is a violation of the standards! +# +# One could impliment an improved -PICKY_HELO_CHECK test +# here by checking the values of {client_name}, {client_addr}, +# against {client_helo} and {daemon_addr}. +#------------------------------------------------------------------------------ +diff -c 'deliver.orig' 'deliver.c' +Index: ./deliver.orig +Prereq: 8.986 +*** ./sendmail-8.13.4/sendmail/deliver.c Tue Aug 10 17:50:11 2004 +--- ./deliver.c Tue Aug 10 17:44:04 2004 +*************** +*** 1363,1368 **** +--- 1363,1369 ---- + macdefine(&e->e_macro, A_PERM, macid("{client_addr}"), ""); + macdefine(&e->e_macro, A_PERM, macid("{client_port}"), ""); + macdefine(&e->e_macro, A_PERM, macid("{client_resolve}"), ""); ++ macdefine(&e->e_macro, A_PERM, macid("{client_helo}"), ""); + } + + SM_TRY +diff -c 'srvrsmtp.orig' 'srvrsmtp.c' +Index: ./srvrsmtp.orig +Prereq: 8.906 +*** ./sendmail-8.13.4/sendmail/srvrsmtp.c Tue Aug 10 17:50:23 2004 +--- ./srvrsmtp.c Tue Aug 10 17:42:54 2004 +*************** +*** 444,449 **** +--- 444,451 ---- + char *volatile protocol; /* sending protocol */ + char *volatile sendinghost; /* sending hostname */ + char *volatile peerhostname; /* name of SMTP peer or "localhost" */ ++ char *volatile helo_name; /* client_helo string */ ++ bool helo_accept = false; /* helo/ehlo command accepted */ + auto char *delimptr; + char *id; + volatile unsigned int n_badcmds = 0; /* count of bad commands */ +*************** +*** 1976,1981 **** +--- 1978,1987 ---- + { + q = "pleased to meet you"; + sendinghost = sm_strdup_x(p); ++ helo_accept = true; ++ helo_name = sm_strdup_x(p); ++ macdefine(&e->e_macro, A_PERM, macid("{client_helo}"), ++ helo_name); + } + else if (!AllowBogusHELO) + { +*************** +*** 1989,1994 **** +--- 1995,2004 ---- + else + { + q = "accepting invalid domain name"; ++ helo_accept = true; ++ helo_name = sm_strdup_x(p); ++ macdefine(&e->e_macro, A_PERM, macid("{client_helo}"), ++ helo_name); + } + + if (gothelo) +*************** +*** 1996,2001 **** +--- 2006,2028 ---- + CLEAR_STATE(cmdbuf); + } + ++ if (helo_accept) { ++ if (rscheck("check_helo", helo_name, ++ NULL, e, RSF_RMCOMM|RSF_COUNT, 3, ++ NULL, e->e_id) != EX_OK || ++ Errors > 0) ++ sm_exc_raisenew_x(&EtypeQuickAbort, 1); ++ ++ if (MaxMessageSize > 0 && ++ (e->e_msgsize > MaxMessageSize || ++ e->e_msgsize < 0)) ++ { ++ usrerr("552 5.2.3 Message size exceeds fixed maximum message size (%ld)", ++ MaxMessageSize); ++ sm_exc_raisenew_x(&EtypeQuickAbort, 1); ++ } ++ } ++ + #if MILTER + if (smtp.sm_milterlist && smtp.sm_milterize && + !bitset(EF_DISCARD, e->e_flags)) + diff --git a/debian/patches/8.13/8.13.4/cyrusv2.m4.debian-patch b/debian/patches/8.13/8.13.4/cyrusv2.m4.debian-patch new file mode 100644 index 0000000..3cb478c --- /dev/null +++ b/debian/patches/8.13/8.13.4/cyrusv2.m4.debian-patch @@ -0,0 +1,11 @@ +--- sendmail-8.13.4/cf/mailer/cyrusv2.m4 Sat Jun 1 15:14:57 2002 ++++ cyrusv2.m4.new Wed Jun 5 04:21:34 2002 +@@ -12,7 +12,7 @@ + + _DEFIFNOT(`_DEF_CYRUSV2_MAILER_FLAGS', `lsDFMnqXz') + _DEFIFNOT(`CYRUSV2_MAILER_FLAGS', `A@/:|m') +-ifdef(`CYRUSV2_MAILER_ARGS',, `define(`CYRUSV2_MAILER_ARGS', `FILE /var/imap/socket/lmtp')') ++ifdef(`CYRUSV2_MAILER_ARGS',, `define(`CYRUSV2_MAILER_ARGS', `FILE /var/run/cyrus/socket/lmtp')') + define(`_CYRUSV2_QGRP', `ifelse(defn(`CYRUSV2_MAILER_QGRP'),`',`', ` Q=CYRUSV2_MAILER_QGRP,')')dnl + + POPDIVERT diff --git a/debian/patches/8.13/8.13.4/dpatch.001 b/debian/patches/8.13/8.13.4/dpatch.001 new file mode 100644 index 0000000..6573d7c --- /dev/null +++ b/debian/patches/8.13/8.13.4/dpatch.001 @@ -0,0 +1,50 @@ +# Remove -Y from procmail arguements +# +# To apply this patch: +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'applypatch' program with this patch file as input. +# +# If you do not have 'applypatch', it is part of the 'makepatch' package +# that you can fetch from the Comprehensive Perl Archive Network: +# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz +# In the above URL, 'x' should be 2 or higher. +# +# To apply this patch without the use of 'applypatch': +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'patch' program with this file as input. +# +#### End of Preamble #### + +#### Patch data follows #### +diff -c 'cf/feature/local_procmail.m4' 'debian/patches/local_procmail.m4' +Index: ./cf/feature/local_procmail.m4 +Prereq: 8.22 +*** sendmail-8.13.4/cf/feature/local_procmail.m4 Sat Nov 20 15:26:21 1999 +--- ./debian/patches/local_procmail.m4 Sat Nov 20 15:39:46 1999 +*************** +*** 27,32 **** + `/usr/local/bin/procmail'), + _ARG_)) + define(`LOCAL_MAILER_ARGS', +! ifelse(len(X`'_ARG2_), `1', `procmail -Y -a $h -d $u', _ARG2_)) + define(`LOCAL_MAILER_FLAGS', + ifelse(len(X`'_ARG3_), `1', `SPfhn9', _ARG3_)) +--- 27,32 ---- + `/usr/local/bin/procmail'), + _ARG_)) + define(`LOCAL_MAILER_ARGS', +! ifelse(len(X`'_ARG2_), `1', `procmail -a $h -d $u', _ARG2_)) + define(`LOCAL_MAILER_FLAGS', + ifelse(len(X`'_ARG3_), `1', `SPfhn9', _ARG3_)) +#### End of Patch data #### + +#### ApplyPatch data follows #### +# Data version : 1.0 +# Date generated : Sat Nov 20 15:39:47 1999 +# Generated by : makepatch 2.00 +# Recurse directories : Yes +# p 'cf/feature/local_procmail.m4' 941 +#### End of ApplyPatch data #### + +#### End of Patch kit [created: Sat Nov 20 15:39:47 1999] #### +#### Checksum: 49 1730 1445 #### diff --git a/debian/patches/8.13/8.13.4/dpatch.002 b/debian/patches/8.13/8.13.4/dpatch.002 new file mode 100644 index 0000000..f269f60 --- /dev/null +++ b/debian/patches/8.13/8.13.4/dpatch.002 @@ -0,0 +1,19 @@ +--- sendmail-8.13.4/cf/mailer/cyrus.m4 Tue May 2 14:40:24 2000 ++++ ./debian/patches/cf/mailer/cyrus.m4 Tue May 2 14:41:21 2000 +@@ -36,12 +36,12 @@ + # + + _DEFIFNOT(`CYRUS_MAILER_FLAGS', `Ah5@/:|') +-ifdef(`CYRUS_MAILER_PATH',, `define(`CYRUS_MAILER_PATH', /usr/cyrus/bin/deliver)') +-ifdef(`CYRUS_MAILER_ARGS',, `define(`CYRUS_MAILER_ARGS', `deliver -e -m $h -- $u')') ++ifdef(`CYRUS_MAILER_PATH',, `define(`CYRUS_MAILER_PATH', /usr/sbin/cyrdeliver)') ++ifdef(`CYRUS_MAILER_ARGS',, `define(`CYRUS_MAILER_ARGS', `cyrdeliver -e -m $h -- $u')') + ifdef(`CYRUS_MAILER_USER',, `define(`CYRUS_MAILER_USER', `cyrus:mail')') + _DEFIFNOT(`CYRUS_BB_MAILER_FLAGS', `u') +-ifdef(`CYRUS_BB_MAILER_ARGS',, `define(`CYRUS_BB_MAILER_ARGS', `deliver -e -m $u')') ++ifdef(`CYRUS_BB_MAILER_ARGS',, `define(`CYRUS_BB_MAILER_ARGS', `cyrdeliver -e -m $u')') + define(`_CYRUS_QGRP', `ifelse(defn(`CYRUS_MAILER_QGRP'),`',`', ` Q=CYRUS_MAILER_QGRP,')')dnl + + POPDIVERT + + diff --git a/debian/patches/8.13/8.13.4/dpatch.003 b/debian/patches/8.13/8.13.4/dpatch.003 new file mode 100644 index 0000000..1710ca8 --- /dev/null +++ b/debian/patches/8.13/8.13.4/dpatch.003 @@ -0,0 +1,52 @@ +# Change sendmail call -obq to -obi +# +# To apply this patch: +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'applypatch' program with this patch file as input. +# +# If you do not have 'applypatch', it is part of the 'makepatch' package +# that you can fetch from the Comprehensive Perl Archive Network: +# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz +# In the above URL, 'x' should be 2 or higher. +# +# To apply this patch without the use of 'applypatch': +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'patch' program with this file as input. +# +#### End of Preamble #### + +#### Patch data follows #### +diff -c 'rmail/rmail.c' 'debian/patches/rmail.c' +Index: ./rmail/rmail.c +Prereq: 8.61 +*** sendmail-8.13.4/rmail/rmail.c Sat Sep 16 18:20:25 2000 +--- ./debian/patches/rmail.c Thu Sep 28 17:00:59 2000 +*************** +*** 318,324 **** + args[i++] = _PATH_SENDMAIL; /* Build sendmail's argument list. */ + args[i++] = "-G"; /* relay submission */ + 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 */ +--- 318,324 ---- + args[i++] = _PATH_SENDMAIL; /* Build sendmail's argument list. */ + args[i++] = "-G"; /* relay submission */ + args[i++] = "-oee"; /* No errors, just status. */ +! args[i++] = "-odi"; /* deliver in the foreground. */ + args[i++] = "-oi"; /* Ignore '.' on a line by itself. */ + + /* set from system and protocol used */ +#### End of Patch data #### + +#### ApplyPatch data follows #### +# Data version : 1.0 +# Date generated : Thu Sep 28 17:01:04 2000 +# Generated by : makepatch 2.00 +# Recurse directories : Yes +# p './build-tree/sendmail-8.11.1/rmail/rmail.c' 12072 +#### End of ApplyPatch data #### + +#### End of Patch kit [created: Thu Sep 28 17:01:04 2000] #### +#### Checksum: 51 2010 21691 #### diff --git a/debian/patches/8.13/8.13.4/dpatch.004 b/debian/patches/8.13/8.13.4/dpatch.004 new file mode 100644 index 0000000..cb824fc --- /dev/null +++ b/debian/patches/8.13/8.13.4/dpatch.004 @@ -0,0 +1,52 @@ +# Make control socket mode 0660 +# +# To apply this patch: +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'applypatch' program with this patch file as input. +# +# If you do not have 'applypatch', it is part of the 'makepatch' package +# that you can fetch from the Comprehensive Perl Archive Network: +# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz +# In the above URL, 'x' should be 2 or higher. +# +# To apply this patch without the use of 'applypatch': +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'patch' program with this file as input. +# +#### End of Preamble #### + +#### Patch data follows #### +diff -c 'sendmail/control.c' 'debian/patches/control.c' +Index: ./sendmail/control.c +Prereq: 8.126 +*** sendmail-8.13.4/sendmail/control.c Sat Nov 20 15:26:23 1999 +--- ./debian/patches/control.c Sat Nov 20 15:39:52 1999 +*************** +*** 92,98 **** + } + } + +! if (chmod(ControlSocketName, S_IRUSR|S_IWUSR) < 0) + { + save_errno = errno; + closecontrolsocket(TRUE); +--- 92,98 ---- + } + } + +! if (chmod(ControlSocketName, S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP) < 0) + { + save_errno = errno; + closecontrolsocket(TRUE); +#### End of Patch data #### + +#### ApplyPatch data follows #### +# Data version : 1.0 +# Date generated : Sat Nov 20 15:39:53 1999 +# Generated by : makepatch 2.00 +# Recurse directories : Yes +# p 'sendmail/control.c' 6165 +#### End of ApplyPatch data #### + +#### End of Patch kit [created: Sat Nov 20 15:39:53 1999] #### +#### Checksum: 51 1497 50060 #### diff --git a/debian/patches/8.13/8.13.4/dpatch.005 b/debian/patches/8.13/8.13.4/dpatch.005 new file mode 100644 index 0000000..3015deb --- /dev/null +++ b/debian/patches/8.13/8.13.4/dpatch.005 @@ -0,0 +1,54 @@ +# /usr/bin/faxmail, !/usr/local/bin/faxmail +# +# To apply this patch: +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'applypatch' program with this patch file as input. +# +# If you do not have 'applypatch', it is part of the 'makepatch' package +# that you can fetch from the Comprehensive Perl Archive Network: +# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz +# In the above URL, 'x' should be 2 or higher. +# +# To apply this patch without the use of 'applypatch': +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'patch' program with this file as input. +# +#### End of Preamble #### + +#### Patch data follows #### +diff -c './cf/mailer/fax.m4' 'fax.m4' +Index: ./cf/mailer/fax.m4 +Prereq: 8.16 +*** sendmail-8.13.4/cf/mailer/fax.m4 Mon Oct 18 02:35:28 1999 +--- ./fax.m4 Wed Jan 3 14:26:13 2001 +*************** +*** 19,26 **** + ifdef(`FAX_MAILER_ARGS',, + `define(`FAX_MAILER_ARGS', faxmail -d $u@$h $f)') + ifdef(`FAX_MAILER_PATH',, +! `define(`FAX_MAILER_PATH', /usr/local/bin/faxmail)') + ifdef(`FAX_MAILER_MAX',, + `define(`FAX_MAILER_MAX', 100000)') + define(`_FAX_QGRP', `ifelse(defn(`FAX_MAILER_QGRP'),`',`', ` Q=FAX_MAILER_QGRP,')')dnl + POPDIVERT +--- 19,26 ---- + ifdef(`FAX_MAILER_ARGS',, + `define(`FAX_MAILER_ARGS', faxmail -d $u@$h $f)') + ifdef(`FAX_MAILER_PATH',, +! `define(`FAX_MAILER_PATH', /usr/bin/faxmail)') + ifdef(`FAX_MAILER_MAX',, + `define(`FAX_MAILER_MAX', 100000)') + define(`_FAX_QGRP', `ifelse(defn(`FAX_MAILER_QGRP'),`',`', ` Q=FAX_MAILER_QGRP,')')dnl + POPDIVERT +#### End of Patch data #### + +#### ApplyPatch data follows #### +# Data version : 1.0 +# Date generated : Wed Jan 3 14:27:33 2001 +# Generated by : makepatch 2.00 +# Recurse directories : Yes +# p '../../build-tree/sendmail-8.11.2/cf/mailer/fax.m4' 1062 +#### End of ApplyPatch data #### + +#### End of Patch kit [created: Wed Jan 3 14:27:33 2001] #### +#### Checksum: 51 1807 4852 #### diff --git a/debian/patches/8.13/8.13.4/drac.patch b/debian/patches/8.13/8.13.4/drac.patch new file mode 100644 index 0000000..fa5706f --- /dev/null +++ b/debian/patches/8.13/8.13.4/drac.patch @@ -0,0 +1,24 @@ +--- sendmail-8.13.4/cf/m4/proto.m4.orig 2003-03-29 02:20:53.000000000 +0900 ++++ sendmail-8.13.4/cf/m4/proto.m4 2003-03-30 13:22:18.731049640 +0900 +@@ -2110,6 +2110,13 @@ + R127.0.0.1 $@ RELAY originated locally + RIPv6:::1 $@ RELAY originated locally + R$=R $* $@ RELAY relayable IP address ++ifdef(`_DRAC_', `dnl ++R$* $: <> $(drac $1 $: $1 $) ++R<> $+ $: $1 ++R<> $+ $@ RELAY authenticated IP address ++RIPv6:$* $: <> $(drac $1 $: IPv6:$1 $) ++R<> $+ $: $1 ++R<> $+ $@ RELAY authenticated IP address',`dnl') + ifdef(`_ACCESS_TABLE_', `dnl + R$* $: $>A <$1> <+ Connect> <$1> + R $* $@ RELAY relayable IP address +--- /dev/null 2002-01-01 00:00:00.000000000 +0900 ++++ sendmail-8.13.4/cf/feature/drac.m4 2002-04-18 21:33:31.716576810 +0900 +@@ -0,0 +1,5 @@ ++define(`_DRAC_', `') ++ ++LOCAL_CONFIG ++Kdrac ifelse(defn(`_ARG_'), `', DATABASE_MAP_TYPE MAIL_SETTINGS_DIR`drac', ++ `_ARG_') diff --git a/debian/patches/8.13/8.13.4/ldap_url_search.p0 b/debian/patches/8.13/8.13.4/ldap_url_search.p0 new file mode 100644 index 0000000..4f36eb2 --- /dev/null +++ b/debian/patches/8.13/8.13.4/ldap_url_search.p0 @@ -0,0 +1,24 @@ +Index: ldap.c +=================================================================== +RCS file: /cvs/libsm/ldap.c,v +retrieving revision 1.51 +retrieving revision 1.53 +diff -u -r1.51 -r1.53 +--- ./sendmail-8.13.4/libsm/ldap.c 30 Oct 2003 23:11:12 -0000 1.51 ++++ ldap.c 30 Oct 2003 23:33:10 -0000 1.53 +@@ -1043,6 +1043,7 @@ + NULL : lmap->ldap_attr), + lmap->ldap_attrsonly); + } ++#if SM_CONF_LDAP_URL_SEARCH + else if (rl->lr_type == SM_LDAP_ATTR_URL) + { + /* do new URL search */ +@@ -1051,6 +1052,7 @@ + lmap->ldap_attrsonly); + newflags |= SM_LDAP_USE_ALLATTR; + } ++#endif /* SM_CONF_LDAP_URL_SEARCH */ + else + { + /* unknown or illegal attribute type */ diff --git a/debian/patches/8.13/8.13.4/maxseq.patch b/debian/patches/8.13/8.13.4/maxseq.patch new file mode 100644 index 0000000..6cca01f --- /dev/null +++ b/debian/patches/8.13/8.13.4/maxseq.patch @@ -0,0 +1,51 @@ +# This is a patch for conf.h to update it to conf.h.new +# +# To apply this patch: +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'applypatch' program with this patch file as input. +# +# If you do not have 'applypatch', it is part of the 'makepatch' package +# that you can fetch from the Comprehensive Perl Archive Network: +# http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz +# In the above URL, 'x' should be 2 or higher. +# +# To apply this patch without the use of 'applypatch': +# STEP 1: Chdir to the source directory. +# STEP 2: Run the 'patch' program with this file as input. +# +#### End of Preamble #### + +#### Patch data follows #### +diff -c 'conf.h' 'conf.h.new' +Index: ./conf.h +Prereq: 8.567 +*** ./sendmail-8.13.4/sendmail/conf.h Fri Sep 21 19:01:46 2001 +--- ./conf.h.new Wed Oct 10 09:24:41 2001 +*************** +*** 71,76 **** + #define MEMCHUNKSIZE 1024 /* chunk size for memory allocation */ + #define MAXUSERENVIRON 100 /* max envars saved, must be >= 3 */ +! #define MAXMAPSTACK 12 /* max # of stacked or sequenced maps */ + #if MILTER + # define MAXFILTERS 25 /* max # of milter filters */ + # define MAXFILTERMACROS 50 /* max # of macros per milter cmd */ +--- 71,76 ---- + #define MEMCHUNKSIZE 1024 /* chunk size for memory allocation */ + #define MAXUSERENVIRON 100 /* max envars saved, must be >= 3 */ +! #define MAXMAPSTACK 128 /* max # of stacked or sequenced maps */ + #if MILTER + # define MAXFILTERS 25 /* max # of milter filters */ + # define MAXFILTERMACROS 50 /* max # of macros per milter cmd */ +#### End of Patch data #### + +#### ApplyPatch data follows #### +# Data version : 1.0 +# Date generated : Wed Oct 10 09:25:12 2001 +# Generated by : makepatch 2.00_03 +# Recurse directories : Yes +# p 'conf.h' 6809 +#### End of ApplyPatch data #### + +#### End of Patch kit [created: Wed Oct 10 09:25:12 2001] #### +#### Patch checksum: 34 1333 28813 #### +#### Checksum: 52 2010 19538 #### diff --git a/debian/patches/8.13/8.13.4/qtool.patch b/debian/patches/8.13/8.13.4/qtool.patch new file mode 100644 index 0000000..b3752b0 --- /dev/null +++ b/debian/patches/8.13/8.13.4/qtool.patch @@ -0,0 +1,101 @@ +*** ./sendmail-8.13.4/contrib/qtool.pl Wed Mar 5 16:11:54 2003 +--- ./sendmail-8.13.4/contrib/qtool.pl Wed Mar 5 15:59:10 2003 +*************** +*** 355,373 **** + sub lock_file + { + my $file_name = shift; + my $result; + + $result = sysopen(FILE_TO_LOCK, $file_name, Fcntl::O_RDWR); + if (!$result) + { + return (undef, "Unable to open '$file_name': $!"); + } + +! $result = flock(FILE_TO_LOCK, Fcntl::LOCK_EX | Fcntl::LOCK_NB); +! if (!$result) + { + return (undef, "Could not obtain lock on '$file_name': $!"); + } + + return (\*FILE_TO_LOCK, undef); + } +--- 355,394 ---- + sub lock_file + { + my $file_name = shift; + my $result; + ++ my $FLOCK_STRUCT; ++ my $fcntllock; ++ ++ # Supposedly under linux ++ # my $FLOCK_STRUCT = 's s l l i'; ++ # But I think perl's using __off64_t instead of __off_t ++ # my $FLOCK_STRUCT = 's s l l l l i'; ++ # Screw it, its all zero anyway... ++ ++ $FLOCK_STRUCT = 's H60'; ++ $fcntllock = pack($FLOCK_STRUCT, F_WRLCK, ++ "000000000000000000000000000000000000000000000000000000000000"); ++ + $result = sysopen(FILE_TO_LOCK, $file_name, Fcntl::O_RDWR); + if (!$result) + { ++ # print "Unable to open '$file_name': $!"; + return (undef, "Unable to open '$file_name': $!"); + } + +! $result = fcntl (FILE_TO_LOCK, F_SETLK, $fcntllock); +! +! # print "Fcntl Lock result on $file_name = $result\n"; +! +! # $result = flock(FILE_TO_LOCK, Fcntl::LOCK_EX | Fcntl::LOCK_NB); +! # print "Lock result on $file_name = $result\n"; +! # if (!$result) +! if ($result ne "0 but true") + { ++ # print "Could not obtain lock on '$file_name': $!\n"; + return (undef, "Could not obtain lock on '$file_name': $!"); + } + + return (\*FILE_TO_LOCK, undef); + } +*************** +*** 387,399 **** + + sub unlock_file + { + my $file = shift; + my $result; + +! $result = flock($file, Fcntl::LOCK_UN); +! if (!$result) + { + return "Unlock failed on '$result': $!"; + } + + return undef; +--- 408,428 ---- + + sub unlock_file + { + my $file = shift; + my $result; ++ my $FLOCK_STRUCT; ++ my $fcntllock; + +! $FLOCK_STRUCT = 's H60'; +! $fcntllock = pack($FLOCK_STRUCT, F_UNLCK, +! "000000000000000000000000000000000000000000000000000000000000"); +! $result = fcntl (FILE_TO_LOCK, F_SETLK, $fcntllock); +! +! if ($result ne "0 but true") +! # $result = flock($file, Fcntl::LOCK_UN); +! # if (!$result) + { + return "Unlock failed on '$result': $!"; + } + + return undef; -- cgit v1.2.3