mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-20 22:59:34 -05:00
Deprecate +objectClass in favor of @objectClass per IETF discussions
This commit is contained in:
parent
37465b1f3a
commit
a736f237f8
3 changed files with 17 additions and 14 deletions
|
|
@ -260,7 +260,8 @@ typedef struct ldapcontrol {
|
|||
|
||||
/* LDAP Features */
|
||||
#define LDAP_FEATURE_ALL_OPERATIONAL_ATTRS "1.3.6.1.4.1.4203.1.5.1" /* + */
|
||||
#define LDAP_FEATURE_OBJECTCLASS_ATTRS "1.3.6.1.4.1.4203.1.5.2"
|
||||
#define LDAP_FEATURE_OBJECTCLASS_ATTRS \
|
||||
"1.3.6.1.4.1.4203.1.5.2" /* @objectClass - new number to be assigned */
|
||||
#define LDAP_FEATURE_ABSOLUTE_FILTERS "1.3.6.1.4.1.4203.1.5.3" /* (&) (|) */
|
||||
#define LDAP_FEATURE_LANGUAGE_TAG_OPTIONS "1.3.6.1.4.1.4203.1.5.4"
|
||||
#define LDAP_FEATURE_LANGUAGE_RANGE_OPTIONS "1.3.6.1.4.1.4203.1.5.5"
|
||||
|
|
|
|||
|
|
@ -1719,7 +1719,7 @@ print_acl( Backend *be, AccessControl *a )
|
|||
fprintf( stderr, "," );
|
||||
}
|
||||
if (an->an_oc) {
|
||||
fputc( an->an_oc_exclude ? '!' : '+', stderr);
|
||||
fputc( an->an_oc_exclude ? '!' : '@', stderr);
|
||||
}
|
||||
fputs( an->an_name.bv_val, stderr );
|
||||
first = 0;
|
||||
|
|
|
|||
|
|
@ -531,13 +531,14 @@ int ad_inlist(
|
|||
}
|
||||
|
||||
/*
|
||||
* EXTENSION: see if requested description is +objectClass
|
||||
* EXTENSION: see if requested description is @objectClass
|
||||
* if so, return attributes which the class requires/allows
|
||||
*/
|
||||
oc = attrs->an_oc;
|
||||
if( oc == NULL && attrs->an_name.bv_val ) {
|
||||
switch( attrs->an_name.bv_val[0] ) {
|
||||
case '+': /* new way */
|
||||
case '@': /* @objectClass */
|
||||
case '+': /* +objectClass (deprecated) */
|
||||
case '!': { /* exclude */
|
||||
struct berval ocname;
|
||||
ocname.bv_len = attrs->an_name.bv_len - 1;
|
||||
|
|
@ -728,16 +729,16 @@ an_find(
|
|||
}
|
||||
|
||||
/*
|
||||
* Convert a delimited string into a list of AttributeNames;
|
||||
* add on to an existing list if it was given. If the string
|
||||
* is not a valid attribute name, if a '-' is prepended it is
|
||||
* skipped and the remaining name is tried again; if a '+' is
|
||||
* prepended, an objectclass name is searched instead; if a
|
||||
* '!' is prepended, the objectclass name is negated.
|
||||
* Convert a delimited string into a list of AttributeNames; add
|
||||
* on to an existing list if it was given. If the string is not
|
||||
* a valid attribute name, if a '-' is prepended it is skipped
|
||||
* and the remaining name is tried again; if a '@' (or '+') is
|
||||
* prepended, an objectclass name is searched instead; if a '!'
|
||||
* is prepended, the objectclass name is negated.
|
||||
*
|
||||
* NOTE: currently, if a valid attribute name is not found,
|
||||
* the same string is also checked as valid objectclass name;
|
||||
* however, this behavior is deprecated.
|
||||
* NOTE: currently, if a valid attribute name is not found, the
|
||||
* same string is also checked as valid objectclass name; however,
|
||||
* this behavior is deprecated.
|
||||
*/
|
||||
AttributeName *
|
||||
str2anlist( AttributeName *an, char *in, const char *brkstr )
|
||||
|
|
@ -792,7 +793,8 @@ str2anlist( AttributeName *an, char *in, const char *brkstr )
|
|||
}
|
||||
} break;
|
||||
|
||||
case '+':
|
||||
case '@':
|
||||
case '+': /* (deprecated) */
|
||||
case '!': {
|
||||
struct berval ocname;
|
||||
ocname.bv_len = anew->an_name.bv_len - 1;
|
||||
|
|
|
|||
Loading…
Reference in a new issue