mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-24 16:49:39 -05:00
fix escaped semicolon bug in back-bdb
This commit is contained in:
parent
e5d1b3134c
commit
80449c42d9
2 changed files with 4 additions and 3 deletions
|
|
@ -336,9 +336,9 @@ bdb_cache_find_ndn(
|
|||
|
||||
/* Advance to next lower RDN */
|
||||
for (ptr = ei.bei_nrdn.bv_val - 2; ptr > ndn->bv_val
|
||||
&& !DN_SEPARATOR(*ptr); ptr--) /* empty */;
|
||||
&& !NDN_SEPARATOR(*ptr); ptr--) /* empty */;
|
||||
if ( ptr >= ndn->bv_val ) {
|
||||
if (DN_SEPARATOR(*ptr)) ptr++;
|
||||
if (NDN_SEPARATOR(*ptr)) ptr++;
|
||||
ei.bei_nrdn.bv_len = ei.bei_nrdn.bv_val - ptr - 1;
|
||||
ei.bei_nrdn.bv_val = ptr;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -133,7 +133,8 @@ LDAP_BEGIN_DECL
|
|||
|| (c) == '(' || (c) == ')' || !ASCII_PRINTABLE(c) )
|
||||
|
||||
#define DN_ESCAPE(c) ((c) == SLAP_ESCAPE_CHAR)
|
||||
#define DN_SEPARATOR(c) ((c) == ',' || (c) == ';')
|
||||
#define NDN_SEPARATOR(c) ((c) == ',')
|
||||
#define DN_SEPARATOR(c) (NDN_SEPARATOR(c) || (c) == ';')
|
||||
#define RDN_ATTRTYPEANDVALUE_SEPARATOR(c) ((c) == '+') /* RFC 2253 */
|
||||
#define RDN_SEPARATOR(c) (DN_SEPARATOR(c) || RDN_ATTRTYPEANDVALUE_SEPARATOR(c))
|
||||
#define RDN_NEEDSESCAPE(c) ((c) == '\\' || (c) == '"')
|
||||
|
|
|
|||
Loading…
Reference in a new issue