mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-26 01:29:59 -05:00
We shouldn't need UTF8oncasecmp() and UTF8casechr() anymore, removing
them.
This commit is contained in:
parent
d8d7f82a4e
commit
d326f96c32
1 changed files with 0 additions and 91 deletions
|
|
@ -500,97 +500,6 @@ booleanMatch(
|
|||
return LDAP_SUCCESS;
|
||||
}
|
||||
|
||||
/* case insensitive UTF8 strncmp with offset for second string */
|
||||
static int
|
||||
UTF8oncasecmp(
|
||||
struct berval *right,
|
||||
struct berval *left,
|
||||
ber_len_t len,
|
||||
ber_len_t offset )
|
||||
{
|
||||
ber_len_t r, l;
|
||||
ber_len_t rlen, llen;
|
||||
ber_len_t rslen, lslen;
|
||||
ldap_unicode_t ru, lu;
|
||||
ldap_unicode_t ruu, luu;
|
||||
|
||||
rslen = len < right->bv_len ? len : right->bv_len;
|
||||
lslen = len + offset < left->bv_len ? len : left->bv_len;
|
||||
|
||||
for( r = 0, l = offset;
|
||||
r < rslen && l < lslen;
|
||||
r+=rlen, l+=llen )
|
||||
{
|
||||
/*
|
||||
* XXYYZ: we convert to ucs4 even though -llunicode
|
||||
* expects ucs2 in an unsigned long
|
||||
*/
|
||||
ru = ldap_x_utf8_to_ucs4( &right->bv_val[r] );
|
||||
if( ru == LDAP_UCS4_INVALID ) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
lu = ldap_x_utf8_to_ucs4( &left->bv_val[l] );
|
||||
if( lu == LDAP_UCS4_INVALID ) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
ruu = uctoupper( ru );
|
||||
luu = uctoupper( lu );
|
||||
|
||||
if( ruu > luu ) {
|
||||
return 1;
|
||||
} else if( luu > ruu ) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
rlen = LDAP_UTF8_CHARLEN( &right->bv_val[r] );
|
||||
llen = LDAP_UTF8_CHARLEN( &left->bv_val[l] );
|
||||
}
|
||||
|
||||
if( r < rslen ) {
|
||||
/* less left */
|
||||
return -1;
|
||||
}
|
||||
|
||||
if( l < lslen ) {
|
||||
/* less right */
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static char *UTF8casechr( const char *str, const char *c )
|
||||
{
|
||||
char *p, *lower, *upper;
|
||||
ldap_ucs4_t tch, ch = ldap_x_utf8_to_ucs4(c);
|
||||
|
||||
tch = uctolower ( ch );
|
||||
for( p = (char *) str; *p != '\0'; LDAP_UTF8_INCR(p) ) {
|
||||
if( ldap_x_utf8_to_ucs4( p ) == tch ) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
lower = *p != '\0' ? p : NULL;
|
||||
|
||||
tch = uctoupper ( ch );
|
||||
for( p = (char *) str; *p != '\0'; LDAP_UTF8_INCR(p) ) {
|
||||
if( ldap_x_utf8_to_ucs4( p ) == tch ) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
upper = *p != '\0' ? p : NULL;
|
||||
|
||||
if( lower && upper ) {
|
||||
return lower < upper ? lower : upper;
|
||||
} else if ( lower ) {
|
||||
return lower;
|
||||
} else {
|
||||
return upper;
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
UTF8StringValidate(
|
||||
Syntax *syntax,
|
||||
|
|
|
|||
Loading…
Reference in a new issue