From: Pierangelo Masarati Date: Mon, 26 Feb 2007 09:53:54 +0000 (+0000) Subject: detect braindead entries (e.g. from back-perl, ITS#4845,ITS#4852) X-Git-Tag: OPENLDAP_REL_ENG_2_3_35~47 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=297c82b10b49314bee1b13ef483d2cb846f18bc1;p=thirdparty%2Fopenldap.git detect braindead entries (e.g. from back-perl, ITS#4845,ITS#4852) --- diff --git a/CHANGES b/CHANGES index d9188bdbc1..98904df33c 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,7 @@ OpenLDAP 2.3 Change Log OpenLDAP 2.3.35 Engineering + Fixed entry consistency check in str2entry2 (ITS#4852) Fixed slapd-bdb/hdb startup with missing shm env (ITS#4851) OpenLDAP 2.3.34 Release (2007/02/16) diff --git a/servers/slapd/entry.c b/servers/slapd/entry.c index eee5addac2..af8b3c7ec4 100644 --- a/servers/slapd/entry.c +++ b/servers/slapd/entry.c @@ -132,6 +132,11 @@ str2entry2( char *s, int checkvals ) break; } i++; + if (i >= lines) { + Debug( LDAP_DEBUG_TRACE, + "<= str2entry ran past end of entry\n", 0, 0, 0 ); + goto fail; + } rc = ldif_parse_line2( s, type+i, vals+i, &freev ); freeval[i] = freev;