#ifndef __SOURCE4_DSDB_SAMDB_LDB_MODULES_PARTITION_PROTO_H__
#define __SOURCE4_DSDB_SAMDB_LDB_MODULES_PARTITION_PROTO_H__

#undef _PRINTF_ATTRIBUTE
#define _PRINTF_ATTRIBUTE(a1, a2) PRINTF_ATTRIBUTE(a1, a2)
/* This file was automatically generated by mkproto.pl. DO NOT EDIT */

/* this file contains prototypes for functions that are private 
 * to this subsystem or library. These functions should not be 
 * used outside this particular subsystem! */


/* The following definitions come from ../../source4/dsdb/samdb/ldb_modules/partition.c  */

int partition_request(struct ldb_module *module, struct ldb_request *request);

/**
 * Figure out which backend a request needs to be aimed at.  Some
 * requests must be replicated to all backends
 */
int partition_start_trans(struct ldb_module *module);
int partition_prepare_commit(struct ldb_module *module);
int partition_end_trans(struct ldb_module *module);
int partition_del_trans(struct ldb_module *module);
int partition_primary_sequence_number(struct ldb_module *module, TALLOC_CTX *mem_ctx, 
				      uint64_t *seq_number,
				      struct ldb_request *parent);
int partition_sequence_number_from_partitions(struct ldb_module *module,
					      uint64_t *seqr);
int partition_read_lock(struct ldb_module *module);
int partition_read_unlock(struct ldb_module *module);
int ldb_partition_module_init(const char *version);

/* The following definitions come from ../../source4/dsdb/samdb/ldb_modules/partition_init.c  */

int partition_reload_if_required(struct ldb_module *module, 
				 struct partition_private_data *data,
				 struct ldb_request *parent);
int partition_create(struct ldb_module *module, struct ldb_request *req);
int partition_init(struct ldb_module *module);

/* The following definitions come from ../../source4/dsdb/samdb/ldb_modules/partition_metadata.c  */

int partition_metadata_inc_schema_sequence(struct ldb_module *module);
int partition_metadata_init(struct ldb_module *module);
int partition_metadata_sequence_number(struct ldb_module *module, uint64_t *value);
int partition_metadata_sequence_number_increment(struct ldb_module *module, uint64_t *value);
int partition_metadata_read_lock(struct ldb_module *module);
int partition_metadata_read_unlock(struct ldb_module *module);
int partition_metadata_start_trans(struct ldb_module *module);
int partition_metadata_prepare_commit(struct ldb_module *module);
int partition_metadata_end_trans(struct ldb_module *module);
int partition_metadata_del_trans(struct ldb_module *module);
#undef _PRINTF_ATTRIBUTE
#define _PRINTF_ATTRIBUTE(a1, a2)

#endif /* __SOURCE4_DSDB_SAMDB_LDB_MODULES_PARTITION_PROTO_H__ */

