]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/slapi/proto-slapi.h
Merge remote-tracking branch 'origin/mdb.master' into OPENLDAP_REL_ENG_2_4
[openldap] / servers / slapd / slapi / proto-slapi.h
index 83583ea8b93fa7a43d47fdb864d183b2aed5ca81..8d5db7cdcdb8e0c1ae454ffa313d7ae38887f46e 100644 (file)
@@ -1,7 +1,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 2002-2005 The OpenLDAP Foundation.
+ * Copyright 2002-2013 The OpenLDAP Foundation.
  * Portions Copyright 1997,2002-2003 IBM Corporation.
  * All rights reserved.
  *
 LDAP_BEGIN_DECL
 
 /* slapi_utils.c */
-LDAP_SLAPI_F (int) slapi_int_pblock_set_operation LDAP_P(( Slapi_PBlock *pb, Operation *op ));
-
-LDAP_SLAPI_F (LDAPMod **) slapi_int_modifications2ldapmods LDAP_P((Modifications **));
-LDAP_SLAPI_F (Modifications *) slapi_int_ldapmods2modifications LDAP_P((LDAPMod **));
-LDAP_SLAPI_F (void) slapi_int_free_ldapmods LDAP_P((LDAPMod **));
-
-LDAP_SLAPI_F (int) slapi_int_access_allowed LDAP_P((Operation *op,
-       Entry *entry,
-       AttributeDescription *desc,
-       struct berval *val,
-       slap_access_t access,
-       AccessControlState *state ));
-
+LDAP_SLAPI_F (LDAPMod **) slapi_int_modifications2ldapmods LDAP_P(( Modifications * ));
+LDAP_SLAPI_F (Modifications *) slapi_int_ldapmods2modifications LDAP_P(( Operation *op, LDAPMod ** ));
+LDAP_SLAPI_F (int) slapi_int_count_controls LDAP_P(( LDAPControl **ctrls ));
 LDAP_SLAPI_F (char **) slapi_get_supported_extended_ops LDAP_P((void));
+LDAP_SLAPI_F (int) slapi_int_access_allowed LDAP_P((Operation *op, Entry *entry, AttributeDescription *desc, struct berval *val, slap_access_t access, AccessControlState *state ));
 
 /* slapi_ops.c */
-LDAP_SLAPI_F (int) slapi_int_connection_init LDAP_P((Slapi_PBlock *pb, SlapReply *rs, int OpType, Connection **pConn));
-LDAP_SLAPI_F (void) slapi_int_connection_destroy LDAP_P(( Connection **pConn ));
 LDAP_SLAPI_F (int) slapi_int_response LDAP_P(( Slapi_Operation *op, SlapReply *rs ));
+LDAP_SLAPI_F (void) slapi_int_connection_init_pb LDAP_P(( Slapi_PBlock *pb, ber_tag_t OpType ));
+LDAP_SLAPI_F (void) slapi_int_connection_done_pb LDAP_P(( Slapi_PBlock *pb ));
 
 /* slapi_pblock.c */
-LDAP_SLAPI_F (void) slapi_pblock_check_params LDAP_P(( Slapi_PBlock *pb, int flag ));
 LDAP_SLAPI_F (int) slapi_pblock_delete_param LDAP_P(( Slapi_PBlock *p, int param ));
 LDAP_SLAPI_F (void) slapi_pblock_clear LDAP_P(( Slapi_PBlock *pb ));
 
 LDAP_SLAPI_F (int) slapi_int_pblock_get_first LDAP_P(( Backend *be, Slapi_PBlock **pb ));
 LDAP_SLAPI_F (int) slapi_int_pblock_get_next LDAP_P(( Slapi_PBlock **pb ));
 
+#define PBLOCK_ASSERT_CONN( _pb ) do { \
+               assert( (_pb) != NULL ); \
+               assert( (_pb)->pb_conn != NULL ); \
+       } while (0)
+
+#define PBLOCK_ASSERT_OP( _pb, _tag ) do { \
+               PBLOCK_ASSERT_CONN( _pb ); \
+               assert( (_pb)->pb_op != NULL ); \
+               assert( (_pb)->pb_rs != NULL ); \
+               if ( _tag != 0 ) \
+                       assert( (_pb)->pb_op->o_tag == (_tag)); \
+       } while (0)
+       
+#define PBLOCK_ASSERT_INTOP( _pb, _tag ) do { \
+               PBLOCK_ASSERT_OP( _pb, _tag ); \
+               assert( (_pb)->pb_intop ); \
+               assert( (_pb)->pb_op == (Operation *)pb->pb_conn->c_pending_ops.stqh_first ); \
+       } while (0)
+       
 /* plugin.c */
 LDAP_SLAPI_F (int) slapi_int_register_plugin LDAP_P((Backend *be, Slapi_PBlock *pPB));
 LDAP_SLAPI_F (int) slapi_int_call_plugins LDAP_P((Backend *be, int funcType, Slapi_PBlock * pPB));
@@ -73,7 +82,8 @@ LDAP_SLAPI_F (int) slapi_int_create_object_extensions LDAP_P((int objecttype, vo
 LDAP_SLAPI_F (int) slapi_int_clear_object_extensions LDAP_P((int objecttype, void *object));
 
 /* slapi_overlay.c */
-LDAP_SLAPI_F (int) slapi_int_overlay_init LDAP_P((void));
+LDAP_SLAPI_F (int) slapi_over_is_inst LDAP_P((BackendDB *));
+LDAP_SLAPI_F (int) slapi_over_config LDAP_P((BackendDB *, ConfigReply *));
 
 LDAP_END_DECL