- Use upstream patch to address ldap_set_option() third arg issue; (beo#230);

(beo#1108).

OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=109
This commit is contained in:
Lars Müller 2011-05-07 13:15:50 +00:00 committed by Git OBS Bridge
parent 5099ec172f
commit 5f88d73f56
4 changed files with 60 additions and 19 deletions

View File

@ -0,0 +1,52 @@
From 109066729a54f6ba5c4e8bc174133da33242e930 Mon Sep 17 00:00:00 2001
From: Phil Pennock <pdp@exim.org>
Date: Tue, 22 Mar 2011 06:43:34 -0400
Subject: [PATCH] Make ldap_require_cert work (not segfault).
The clang complaint, which also triggered a gcc complaint, was
legitimate. My first test, which suggested no problem, was flawed.
This:
ldap_start_tls
ldap_require_cert = demand
would cause a segfault on LDAP lookup.
fixes bug 230
---
doc/doc-txt/ChangeLog | 6 ++++++
src/src/lookups/ldap.c | 2 +-
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 853f3a5..94952af 100644
--- a/doc/doc/ChangeLog
+++ b/doc/doc/ChangeLog
@@ -3,6 +3,12 @@ $Cambridge: exim/doc/doc-txt/ChangeLog,v 1.632 2010/06/12 15:21:25 jetmore Exp $
Change log file for Exim from version 4.21
-------------------------------------------
+Exim version 4.76
+-----------------
+
+PP/01 The new ldap_require_cert option would segfault if used. Fixed.
+
+
Exim version 4.75
-----------------
diff --git a/src/src/lookups/ldap.c b/src/src/lookups/ldap.c
index ddf803e..06b7494 100644
--- a/src/src/lookups/ldap.c
+++ b/src/src/lookups/ldap.c
@@ -481,7 +481,7 @@ if (lcp == NULL)
{
cert_option = LDAP_OPT_X_TLS_TRY;
}
- ldap_set_option(ld, LDAP_OPT_X_TLS_REQUIRE_CERT, cert_option);
+ ldap_set_option(ld, LDAP_OPT_X_TLS_REQUIRE_CERT, &cert_option);
}
#endif
--
1.6.3.2

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Sat May 7 13:12:08 UTC 2011 - lars@samba.org
- Use upstream patch to address ldap_set_option() third arg issue; (beo#230);
(beo#1108).
-------------------------------------------------------------------
Fri May 6 20:00:38 UTC 2011 - lars@samba.org

View File

@ -62,7 +62,7 @@ Source20: http://www.logic.univie.ac.at/~ametzler/debian/exim4manpages/exi
Source30: eximstats-html-update.py
Source31: eximstats.conf
Patch: exim-4.12-tail.patch
Patch1: ldap_set_option-void-cast.diff
Patch1: 109066729a54f6ba5c4e8bc174133da33242e930.diff
%if !%{?build_with_mysql:1}0 && !%{?build_with_pgsql:1}0
%package -n eximon
@ -129,7 +129,7 @@ Authors:
%prep
%setup -q -n exim-%{version}
%patch
%patch1 -p1
%patch1 -p2
# build with fPIE/pie on SUSE 10.0 or newer, or on any other platform
%if %{?suse_version:%suse_version}%{?!suse_version:99999} > 930
fPIE="-fPIE"

View File

@ -1,17 +0,0 @@
Author: Lars Mueller <lars at samba dot org>
Subject: ldap_set_option() called with int as third arg instead of void
Bugzilla: beo 1108
Index: exim-4.75/src/lookups/ldap.c
===================================================================
--- exim-4.75.orig/src/lookups/ldap.c
+++ exim-4.75/src/lookups/ldap.c
@@ -481,7 +481,7 @@ if (lcp == NULL)
{
cert_option = LDAP_OPT_X_TLS_TRY;
}
- ldap_set_option(ld, LDAP_OPT_X_TLS_REQUIRE_CERT, cert_option);
+ ldap_set_option(ld, LDAP_OPT_X_TLS_REQUIRE_CERT, (void *)&cert_option);
}
#endif