summaryrefslogtreecommitdiffstats
path: root/ldap/servers/slapd/vattr_spi.h
diff options
context:
space:
mode:
authorNoriko Hosoi <nhosoi@redhat.com>2007-10-12 18:03:43 +0000
committerNoriko Hosoi <nhosoi@redhat.com>2007-10-12 18:03:43 +0000
commitee385e64f9dff2f36ffa8eebd872f98aadcffbdb (patch)
treeee202c50603315d75268df89ad58398b7e9bc6be /ldap/servers/slapd/vattr_spi.h
parentad8f6417258a3eca48da8cd8778721fdecc61078 (diff)
downloadds-ee385e64f9dff2f36ffa8eebd872f98aadcffbdb.tar.gz
ds-ee385e64f9dff2f36ffa8eebd872f98aadcffbdb.tar.xz
ds-ee385e64f9dff2f36ffa8eebd872f98aadcffbdb.zip
Resolves: #193724
Summary: "nested" filtered roles result in deadlock (Comment #12) Description: 1. Changed cache_lock to the read-write lock. 2. Instead of using the local vattr_context in vattr_test_filter, use the one set in pblock as much as possible. To achieve the goal, introduced pb_vattr_context to pblock. 3. Increased VATTR_LOOP_COUNT_MAX from 50 to 256. 4. When the loop count hit VATTR_LOOP_COUNT_MAX, it sets LDAP_UNWILLING_TO_PERFORM and returns it to the client.
Diffstat (limited to 'ldap/servers/slapd/vattr_spi.h')
-rw-r--r--ldap/servers/slapd/vattr_spi.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/ldap/servers/slapd/vattr_spi.h b/ldap/servers/slapd/vattr_spi.h
index 50d75901..a7a670b3 100644
--- a/ldap/servers/slapd/vattr_spi.h
+++ b/ldap/servers/slapd/vattr_spi.h
@@ -88,4 +88,6 @@ int slapi_vattr_values_get_sp_ex(vattr_context *c, /* Entry we're interested in
int slapi_vattr_namespace_values_get_sp(vattr_context *c, /* Entry we're interested in */ Slapi_Entry *e, /* backend namespace dn */ Slapi_DN *namespace_dn, /* attr type name */ char *type, /* pointer to result set */ Slapi_ValueSet*** results,int **type_name_disposition, char ***actual_type_name, int flags, int *free_flags, int *subtype_count);
int slapi_vattr_value_compare_sp(vattr_context *c, Slapi_Entry *e,char *type, Slapi_Value *test_this, int *result, int flags);
int slapi_vattr_namespace_value_compare_sp(vattr_context *c,/* Entry we're interested in */ Slapi_Entry *e, /* backend namespace dn*/Slapi_DN *namespace_dn, /* attr type name */ const char *type, Slapi_Value *test_this,/* pointer to result */ int *result, int flags);
+Slapi_PBlock *slapi_vattr_get_pblock_from_context( vattr_context *c );
+