more on manage

This commit is contained in:
Pierangelo Masarati 2005-08-17 22:06:46 +00:00
parent 277860fbac
commit b2284183f9
3 changed files with 8 additions and 4 deletions

View file

@ -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 );

View file

@ -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;
}

View file

@ -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;