Difference between revisions of "Samba4/LDB/Module"
m (Samba4/LDB/Modules/API moved to Samba4/LDB/Module/API) |
(→Structures) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | = | + | = Structures = |
− | == | + | == ldb_module_ops == |
− | + | <pre> | |
− | + | struct ldb_module_ops { | |
− | + | const char *name; | |
− | + | int (*init_context) (struct ldb_module *); | |
− | + | int (*search)(struct ldb_module *, struct ldb_request *); /* search */ | |
− | + | int (*add)(struct ldb_module *, struct ldb_request *); /* add */ | |
− | + | int (*modify)(struct ldb_module *, struct ldb_request *); /* modify */ | |
− | + | int (*del)(struct ldb_module *, struct ldb_request *); /* delete */ | |
− | + | int (*rename)(struct ldb_module *, struct ldb_request *); /* rename */ | |
− | + | int (*request)(struct ldb_module *, struct ldb_request *); /* match any other operation */ | |
− | + | int (*extended)(struct ldb_module *, struct ldb_request *); /* extended operations */ | |
− | + | int (*start_transaction)(struct ldb_module *); | |
− | + | int (*prepare_commit)(struct ldb_module *); | |
− | + | int (*end_transaction)(struct ldb_module *); | |
− | + | int (*del_transaction)(struct ldb_module *); | |
− | + | int (*sequence_number)(struct ldb_module *, struct ldb_request *); | |
− | + | void *private_data; | |
+ | }; | ||
+ | </pre> | ||
+ | |||
+ | == ldb_module == | ||
+ | |||
+ | <pre> | ||
+ | struct ldb_module { | ||
+ | struct ldb_module *prev, *next; | ||
+ | struct ldb_context *ldb; | ||
+ | void *private_data; | ||
+ | const struct ldb_module_ops *ops; | ||
+ | }; | ||
+ | </pre> | ||
+ | |||
+ | = Operations = | ||
== ldb_module_new() == | == ldb_module_new() == |
Latest revision as of 23:00, 17 November 2009
Contents
- 1 Structures
- 2 Operations
- 2.1 ldb_module_new()
- 2.2 ldb_module_get_name()
- 2.3 ldb_module_get_ctx()
- 2.4 ldb_module_get_private()
- 2.5 ldb_module_set_private()
- 2.6 ldb_next_request()
- 2.7 ldb_next_start_trans()
- 2.8 ldb_next_end_trans()
- 2.9 ldb_next_del_trans()
- 2.10 ldb_next_prepare_commit()
- 2.11 ldb_next_init()
- 2.12 ldb_default_modules_dir()
- 2.13 ldb_register_module()
- 2.14 ldb_module_send_entry()
- 2.15 ldb_module_send_referral()
- 2.16 ldb_module_done()
- 2.17 ldb_mod_register_control()
Structures
ldb_module_ops
struct ldb_module_ops { const char *name; int (*init_context) (struct ldb_module *); int (*search)(struct ldb_module *, struct ldb_request *); /* search */ int (*add)(struct ldb_module *, struct ldb_request *); /* add */ int (*modify)(struct ldb_module *, struct ldb_request *); /* modify */ int (*del)(struct ldb_module *, struct ldb_request *); /* delete */ int (*rename)(struct ldb_module *, struct ldb_request *); /* rename */ int (*request)(struct ldb_module *, struct ldb_request *); /* match any other operation */ int (*extended)(struct ldb_module *, struct ldb_request *); /* extended operations */ int (*start_transaction)(struct ldb_module *); int (*prepare_commit)(struct ldb_module *); int (*end_transaction)(struct ldb_module *); int (*del_transaction)(struct ldb_module *); int (*sequence_number)(struct ldb_module *, struct ldb_request *); void *private_data; };
ldb_module
struct ldb_module { struct ldb_module *prev, *next; struct ldb_context *ldb; void *private_data; const struct ldb_module_ops *ops; };
Operations
ldb_module_new()
struct ldb_module *ldb_module_new(TALLOC_CTX *memctx, struct ldb_context *ldb, const char *module_name, const struct ldb_module_ops *ops);
ldb_module_get_name()
const char * ldb_module_get_name(struct ldb_module *module);
ldb_module_get_ctx()
struct ldb_context *ldb_module_get_ctx(struct ldb_module *module);
ldb_module_get_private()
void *ldb_module_get_private(struct ldb_module *module);
ldb_module_set_private()
void ldb_module_set_private(struct ldb_module *module, void *private_data);
ldb_next_request()
int ldb_next_request(struct ldb_module *module, struct ldb_request *request);
ldb_next_start_trans()
int ldb_next_start_trans(struct ldb_module *module);
ldb_next_end_trans()
int ldb_next_end_trans(struct ldb_module *module);
ldb_next_del_trans()
int ldb_next_del_trans(struct ldb_module *module);
ldb_next_prepare_commit()
int ldb_next_prepare_commit(struct ldb_module *module);
ldb_next_init()
int ldb_next_init(struct ldb_module *module);
ldb_default_modules_dir()
const char *ldb_default_modules_dir(void);
ldb_register_module()
int ldb_register_module(const struct ldb_module_ops *);
ldb_module_send_entry()
int ldb_module_send_entry(struct ldb_request *req, struct ldb_message *msg, struct ldb_control **ctrls);
ldb_module_send_referral()
int ldb_module_send_referral(struct ldb_request *req, char *ref);
ldb_module_done()
int ldb_module_done(struct ldb_request *req, struct ldb_control **ctrls, struct ldb_extended *response, int error);
ldb_mod_register_control()
int ldb_mod_register_control(struct ldb_module *module, const char *oid);