diff --git a/servers/slapd/entry.c b/servers/slapd/entry.c index dda4e18502..7f1461d24f 100644 --- a/servers/slapd/entry.c +++ b/servers/slapd/entry.c @@ -166,6 +166,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;