Samba4/LDB/Request

From SambaWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Enumerations

ldb_request_type

enum ldb_request_type {
    LDB_SEARCH,
    LDB_ADD,
    LDB_MODIFY,
    LDB_DELETE,
    LDB_RENAME,
    LDB_EXTENDED,
    LDB_REQ_REGISTER_CONTROL,
    LDB_REQ_REGISTER_PARTITION
};

ldb_scope

enum ldb_scope {
    LDB_SCOPE_DEFAULT=-1, 
    LDB_SCOPE_BASE=0, 
    LDB_SCOPE_ONELEVEL=1,
    LDB_SCOPE_SUBTREE=2};

Structures

ldb_search

struct ldb_search {
    struct ldb_dn *base;
    enum ldb_scope scope;
    struct ldb_parse_tree *tree;
    const char * const *attrs;
    struct ldb_result *res;
};

ldb_add

struct ldb_add {
    const struct ldb_message *message;
};

ldb_modify

struct ldb_modify {
    const struct ldb_message *message;
};

ldb_delete

struct ldb_delete {
    struct ldb_dn *dn;
};

ldb_rename

struct ldb_rename {
    struct ldb_dn *olddn;
    struct ldb_dn *newdn;
};

ldb_extended

struct ldb_extended {
    const char *oid;
    void *data;
};

ldb_register_control

struct ldb_register_control {
    const char *oid;
};

ldb_register_partition

struct ldb_register_partition {
    struct ldb_dn *dn;
};

ldb_request

struct ldb_request {

    enum ldb_request_type operation;

    union {
        struct ldb_search search;
        struct ldb_add    add;
        struct ldb_modify mod;
        struct ldb_delete del;
        struct ldb_rename rename;
        struct ldb_extended extended;
        struct ldb_register_control reg_control;
        struct ldb_register_partition reg_partition;
    } op;

    struct ldb_control **controls;

    void *context;
    ldb_request_callback_t callback;

    int timeout;
    time_t starttime;
    struct ldb_handle *handle;
};

Operations

ldb_request()

int ldb_request(struct ldb_context *ldb, struct ldb_request *request);

ldb_request_done()

int ldb_request_done(struct ldb_request *req, int status);

ldb_request_is_done()

bool ldb_request_is_done(struct ldb_request *req);