mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-26 09:39:45 -05:00
more on manage
This commit is contained in:
parent
277860fbac
commit
b2284183f9
3 changed files with 8 additions and 4 deletions
|
|
@ -2290,7 +2290,9 @@ acl_check_modlist(
|
|||
* by ACL_WRITE checking as any found here are not provided
|
||||
* by the user
|
||||
*/
|
||||
if ( is_at_no_user_mod( mlist->sml_desc->ad_type ) ) {
|
||||
if ( is_at_no_user_mod( mlist->sml_desc->ad_type )
|
||||
&& !mlist->sml_managing )
|
||||
{
|
||||
Debug( LDAP_DEBUG_ACL, "acl: no-user-mod %s:"
|
||||
" modify access granted\n",
|
||||
mlist->sml_desc->ad_cname.bv_val, 0, 0 );
|
||||
|
|
|
|||
|
|
@ -184,8 +184,8 @@ do_modify(
|
|||
goto cleanup;
|
||||
}
|
||||
|
||||
rs->sr_err = slap_mods_check( modlist, &rs->sr_text,
|
||||
textbuf, textlen, NULL );
|
||||
rs->sr_err = slap_mods_check( modlist,
|
||||
&rs->sr_text, textbuf, textlen, NULL );
|
||||
|
||||
if ( rs->sr_err != LDAP_SUCCESS ) {
|
||||
send_ldap_result( op, rs );
|
||||
|
|
@ -499,8 +499,9 @@ slap_mods_no_user_mod_check(
|
|||
for ( ; ml != NULL; ml = ml->sml_next ) {
|
||||
if ( !is_at_no_user_mod( ml->sml_desc->ad_type ) ) continue;
|
||||
|
||||
if( get_manageDIT( op )) {
|
||||
if ( get_manageDIT( op ) ) {
|
||||
if ( ml->sml_desc->ad_type->sat_flags & SLAP_AT_MANAGEABLE ) {
|
||||
ml->sml_managing = 1;
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1173,6 +1173,7 @@ typedef struct slap_mod_list {
|
|||
#define sml_type sml_mod.sm_type
|
||||
#define sml_values sml_mod.sm_values
|
||||
#define sml_nvalues sml_mod.sm_nvalues
|
||||
char sml_managing;
|
||||
struct slap_mod_list *sml_next;
|
||||
} Modifications;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue