Commit e50fc183 authored by Kurt Zeilenga's avatar Kurt Zeilenga
Browse files

Add UUIDPretty

Likely should add UUID-named-entry test case to test026...
parent ccd7f163
......@@ -2187,6 +2187,56 @@ UUIDValidate(
return LDAP_SUCCESS;
}
static int
UUIDPretty(
Syntax *syntax,
struct berval *in,
struct berval *out,
void *ctx )
{
int i;
int rc=LDAP_INVALID_SYNTAX;
assert( in != NULL );
assert( out != NULL );
if( in->bv_len != 36 ) return LDAP_INVALID_SYNTAX;
out->bv_len = 36;
out->bv_val = slap_sl_malloc( out->bv_len + 1, ctx );
for( i=0; i<36; i++ ) {
switch(i) {
case 8:
case 13:
case 18:
case 23:
if( in->bv_val[i] != '-' ) {
goto handle_error;
}
out->bv_val[i] = '-';
break;
default:
if( !ASCII_HEX( in->bv_val[i]) ) {
goto handle_error;
}
out->bv_val[i] = TOLOWER( in->bv_val[i] );
}
}
rc = LDAP_SUCCESS;
out->bv_val[ out->bv_len ] = '\0';
if( 0 ) {
handle_error:
slap_sl_free( out->bv_val, ctx );
out->bv_val = NULL;
}
return rc;
}
int
UUIDNormalize(
slap_mask_t usage,
......@@ -3448,7 +3498,7 @@ static slap_syntax_defs_rec syntax_defs[] = {
#endif
{"( 1.3.6.1.1.16.1 DESC 'UUID' )",
0, UUIDValidate, NULL},
0, UUIDValidate, UUIDPretty},
{"( 1.3.6.1.4.1.4203.666.11.2.1 DESC 'CSN' )",
SLAP_SYNTAX_HIDE, csnValidate, NULL},
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment