]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/proto-slap.h
Preliminary checkin for new access_allowed() signature. Still need
[openldap] / servers / slapd / proto-slap.h
index bdae077569bed5abfd81a452e6d52e045f3fa74d..58e04e43e956660d79bd33e1cb8453af275687dc 100644 (file)
@@ -46,29 +46,15 @@ LDAP_SLAPD_F (int) dynacl_aci_init LDAP_P(( void ));
 /*
  * acl.c
  */
-LDAP_SLAPD_F (int) access_allowed_mask LDAP_P((
-       Operation *op,
-       Entry *e, AttributeDescription *desc, struct berval *val,
-       slap_access_t access,
-       AccessControlState *state,
-       slap_mask_t *mask ));
+LDAP_SLAPD_F (int) access_allowed LDAP_P((
+       Operation *op, AclCheck *ak ));
+#if 0
 #define access_allowed(op,e,desc,val,access,state) access_allowed_mask(op,e,desc,val,access,state,NULL)
+#endif
 LDAP_SLAPD_F (int) slap_access_allowed LDAP_P((
-       Operation               *op,
-       Entry                   *e,
-       AttributeDescription    *desc,
-       struct berval           *val,
-       slap_access_t           access,
-       AccessControlState      *state,
-       slap_mask_t             *maskp ));
+       Operation *op, AclCheck *ak ));
 LDAP_SLAPD_F (int) slap_access_always_allowed LDAP_P((
-       Operation               *op,
-       Entry                   *e,
-       AttributeDescription    *desc,
-       struct berval           *val,
-       slap_access_t           access,
-       AccessControlState      *state,
-       slap_mask_t             *maskp ));
+       Operation *op, AclCheck *ak ));
 
 LDAP_SLAPD_F (int) acl_check_modlist LDAP_P((
        Operation *op, Entry *e, Modifications *ml ));
@@ -416,12 +402,8 @@ LDAP_SLAPD_F (int) backend_attribute LDAP_P((
 
 LDAP_SLAPD_F (int) backend_access LDAP_P((
        Operation               *op,
-       Entry                   *target,
-       struct berval           *edn,
-       AttributeDescription    *entry_at,
-       struct berval           *nval,
-       slap_access_t           access,
-       slap_mask_t             *mask ));
+       AclCheck                *ak,
+       struct berval           *edn ));
 
 LDAP_SLAPD_F (int) backend_operational LDAP_P((
        Operation *op,
@@ -814,10 +796,13 @@ LDAP_SLAPD_F (ContentRule *) cr_bvfind LDAP_P((
  */
 
 LDAP_SLAPD_V( int ) slap_serverID;
+LDAP_SLAPD_V( const struct berval ) slap_ldapsync_bv;
+LDAP_SLAPD_V( const struct berval ) slap_ldapsync_cn_bv;
 LDAP_SLAPD_F (void) slap_get_commit_csn LDAP_P((
        Operation *, struct berval *maxcsn, int *foundit ));
 LDAP_SLAPD_F (void) slap_rewind_commit_csn LDAP_P(( Operation * ));
 LDAP_SLAPD_F (void) slap_graduate_commit_csn LDAP_P(( Operation * ));
+LDAP_SLAPD_F (Entry *) slap_create_context_csn_entry LDAP_P(( Backend *, struct berval *));
 LDAP_SLAPD_F (int) slap_get_csn LDAP_P(( Operation *, struct berval *, int ));
 LDAP_SLAPD_F (void) slap_queue_csn LDAP_P(( Operation *, struct berval * ));
 
@@ -1511,6 +1496,10 @@ LDAP_SLAPD_F (int) get_alias_dn LDAP_P((
 /*
  * result.c
  */
+LDAP_SLAPD_F (void) rs_replace_entry LDAP_P(( Operation *op,
+       SlapReply *rs, slap_overinst *on, Entry *e ));
+LDAP_SLAPD_F (int) rs_ensure_entry_modifiable LDAP_P(( Operation *op,
+       SlapReply *rs, slap_overinst *on ));
 LDAP_SLAPD_F (void) slap_send_ldap_result LDAP_P(( Operation *op, SlapReply *rs ));
 LDAP_SLAPD_F (void) send_ldap_sasl LDAP_P(( Operation *op, SlapReply *rs ));
 LDAP_SLAPD_F (void) send_ldap_disconnect LDAP_P(( Operation *op, SlapReply *rs ));
@@ -1781,7 +1770,7 @@ LDAP_SLAPD_F (Filter *) str2filter_x LDAP_P(( Operation *op, const char *str ));
 LDAP_SLAPD_F (int)  syncrepl_add_glue LDAP_P(( 
                                        Operation*, Entry* ));
 LDAP_SLAPD_F (void) syncrepl_diff_entry LDAP_P((
-       Operation *op, Attribute *old, Attribute *new,
+       Operation *op, Attribute *old, Attribute *anew,
        Modifications **mods, Modifications **ml, int is_ctx ));
 LDAP_SLAPD_F (void) syncinfo_free LDAP_P(( struct syncinfo_s *, int all ));
 
@@ -1977,6 +1966,11 @@ LDAP_SLAPD_V (int)                       slap_tool_thread_max;
 
 LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) entry2str_mutex;
 
+#ifndef LDAP_DEVEL
+       /* to be removed with 2.5 */
+#define gmtime_mutex ldap_int_gmtime_mutex
+#endif /* ! LDAP_DEVEL */
+
 LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) ad_undef_mutex;
 LDAP_SLAPD_V (ldap_pvt_thread_mutex_t) oc_undef_mutex;
 
@@ -2031,12 +2025,7 @@ LDAP_SLAPD_F (int) fe_acl_attribute LDAP_P((
        slap_access_t access ));
 LDAP_SLAPD_F (int) fe_access_allowed LDAP_P((
        Operation               *op,
-       Entry                   *e,
-       AttributeDescription    *desc,
-       struct berval           *val,
-       slap_access_t           access,
-       AccessControlState      *state,
-       slap_mask_t             *maskp ));
+       AclCheck                *ak ));
 
 /* NOTE: this macro assumes that bv has been allocated
  * by ber_* malloc functions or is { 0L, NULL } */