[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#4180) slapd (back-sql) hangs/segfaults on SASL bind
On Fri, 2005-11-18 at 09:17 -0700, Nels Lindquist wrote:
> On 18 Nov 2005 at 9:50, Pierangelo Masarati wrote:
>
> > To get re23, follow directions at
> > <http://www.openldap.org/software/repo.html>, get module "openldap" with
> > tag OPENLDAP_REL_ENG_2_3, which will be released shortly as 2.3.12.
>
> Okay, I built 2.3.12 and the problem still persists:
>
> #3 0x080f707c in lutil_debug (debug=7, level=1191210597,
> fmt=0x811dbf4 "==>slap_sasl_authorized: can %s become %s?\n") at
> debug.c:83 buffer = "==>slap_sasl_authorized: can cn=nels
> lindquist,o=maei,c=ca become ze [conn=0]: authcid=\"nels\"
> authzid=\"nels\"\n", '\0' <repeats 1527 times>,
> "dN9\000\004³\027·�¬\027·%$-
> \000\004³\027·dN9\000\a\000\000\000\a\000\000 \000dN9", '\0' <repeats
> 13 times>,
> "\213÷,\000\000\000\000\000%\214\033\000\000\000\000\000è²\027·�f+\000
> \00 4³\027·%\214\033", '\0' <repeats 25 times>...
> #4 0x08090e13 in slap_sasl_authorized (op=0x9bccfb8, authcDN=0xb717b698,
> authzDN=0xb717b690) at saslauthz.c:2073
> rc = 0
> #5 0x08094b09 in slap_sasl_authorize (sconn=0x9bb41d0, context=0xb757db88,
> requested_user=0x9bb4ae0 "nels", rlen=4, auth_identity=0x9bb4be1 "nels",
> alen=4, def_realm=0x0, urlen=0, props=0x9bc6778) at sasl.c:692
> auxvals = {{name = 0x811e3b9 "*slapAuthcDN", values = 0x9bcb114,
> nvalues = 1, valsize = 8}, {name = 0x811e3c6 "*slapAuthzDN",
> values = 0x9bcb12c, nvalues = 1, valsize = 6}, {
> name = 0x1b8cf3 "*userPassword", values = 0x9bcb11c, nvalues = 1,
> valsize = 6}}
> authcDN = {bv_len = 29,
> bv_val = 0xb6ca07a8 "cn=nels lindquist,o=maei,c=ca"}
> authzDN = {bv_len = 1685217607,
> bv_val = 0x47006e65 <Address 0x47006e65 out of bounds>}
> rc = 0
Just out of curiosity, can you try this small patch in your slapd/sasl.c
code (either 2.3.11 or 2.3.12)? You may want to do it manually, because
I might have screwed whitespaces by cut'n'paste.
Please report. p.
Index: sasl.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/sasl.c,v
retrieving revision 1.212.2.13
diff -u -r1.212.2.13 sasl.c
--- sasl.c 14 Nov 2005 18:06:09 -0000 1.212.2.13
+++ sasl.c 18 Nov 2005 17:19:02 -0000
@@ -542,7 +542,7 @@
{
Connection *conn = (Connection *)context;
struct propctx *props = sasl_auxprop_getctx( sconn );
- struct propval auxvals[3];
+ struct propval auxvals[3] = { 0 };
struct berval dn;
int rc, which;
const char *names[2];
@@ -654,7 +654,7 @@
struct propctx *props)
{
Connection *conn = (Connection *)context;
- struct propval auxvals[3];
+ struct propval auxvals[3] = { 0 };
struct berval authcDN, authzDN = BER_BVNULL;
int rc;
Ing. Pierangelo Masarati
Responsabile Open Solution
SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
------------------------------------------
Office: +39.02.23998309
Mobile: +39.333.4963172
Email: pierangelo.masarati@sys-net.it
------------------------------------------