From: Kurt Zeilenga Date: Thu, 1 Aug 2002 01:10:55 +0000 (+0000) Subject: ITS#1951: saslRegexp limits syntax of regular expressions X-Git-Tag: NO_SLAP_OP_BLOCKS~1300 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=d22612e8db7f2f72a55903b640c4495551e0857d;p=openldap ITS#1951: saslRegexp limits syntax of regular expressions Don't normalize regex. Also, s/LDAP_OPERATIONS_ERROR/LDAP_OTHER/ --- diff --git a/servers/slapd/saslauthz.c b/servers/slapd/saslauthz.c index 22e6894bcf..d6a6327674 100644 --- a/servers/slapd/saslauthz.c +++ b/servers/slapd/saslauthz.c @@ -175,7 +175,7 @@ static int slap_sasl_rx_off(char *rep, int *off) if ( n == SASLREGEX_REPLACE ) { #ifdef NEW_LOGGING LDAP_LOG( TRANSPORT, ERR, - "slap_sasl_regexp_config: \"%s\" has too many $n " + "slap_sasl_rx_off: \"%s\" has too many $n " "placeholders (max %d)\n", rep, SASLREGEX_REPLACE, 0 ); #else Debug( LDAP_DEBUG_ANY, @@ -184,7 +184,7 @@ static int slap_sasl_rx_off(char *rep, int *off) rep, SASLREGEX_REPLACE, 0 ); #endif - return( LDAP_OPERATIONS_ERROR ); + return( LDAP_OTHER ); } off[n] = c - rep; n++; @@ -203,27 +203,14 @@ int slap_sasl_regexp_config( const char *match, const char *replace ) const char *c; int rc, n; SaslRegexp_t *reg; - struct berval bv, nbv; + struct berval bv; Filter *filter; SaslRegexp = (SaslRegexp_t *) ch_realloc( (char *) SaslRegexp, (nSaslRegexp + 1) * sizeof(SaslRegexp_t) ); reg = &( SaslRegexp[nSaslRegexp] ); ber_str2bv( match, 0, 0, &bv ); - rc = dnNormalize2( NULL, &bv, &nbv ); - if ( rc ) { -#ifdef NEW_LOGGING - LDAP_LOG( TRANSPORT, ERR, - "slap_sasl_regexp_config: \"%s\" could not be normalized.\n", - match, 0, 0 ); -#else - Debug( LDAP_DEBUG_ANY, - "SASL match pattern %s could not be normalized.\n", - match, 0, 0 ); -#endif - return( rc ); - } - reg->sr_match = nbv.bv_val; + reg->sr_match = bv.bv_val; ber_str2bv( replace, 0, 0, &bv ); rc = slap_parseURI( &bv, ®->sr_replace.dn, ®->sr_replace.scope, @@ -255,7 +242,7 @@ int slap_sasl_regexp_config( const char *match, const char *replace ) reg->sr_match, 0, 0 ); #endif - return( LDAP_OPERATIONS_ERROR ); + return( LDAP_OTHER ); } rc = slap_sasl_rx_off( reg->sr_replace.dn.bv_val, reg->sr_dn_offset );