Difference between revisions of "Samba4/LDAP"

(ldap_Result)
(ldap_ExtendedResponse)
 
(One intermediate revision by the same user not shown)
Line 164: Line 164:
 
     const char *oid;/* optional */
 
     const char *oid;/* optional */
 
     DATA_BLOB *value;/* optional */
 
     DATA_BLOB *value;/* optional */
 +
};
 +
</pre>
 +
 +
== ldap_Request ==
 +
 +
<pre>
 +
union ldap_Request {
 +
    struct ldap_Result GeneralResult;
 +
    struct ldap_BindRequest BindRequest;
 +
    struct ldap_BindResponse BindResponse;
 +
    struct ldap_UnbindRequest UnbindRequest;
 +
    struct ldap_SearchRequest SearchRequest;
 +
    struct ldap_SearchResEntry SearchResultEntry;
 +
    struct ldap_Result SearchResultDone;
 +
    struct ldap_SearchResRef SearchResultReference;
 +
    struct ldap_ModifyRequest ModifyRequest;
 +
    struct ldap_Result ModifyResponse;
 +
    struct ldap_AddRequest AddRequest;
 +
    struct ldap_Result AddResponse;
 +
    struct ldap_DelRequest DelRequest;
 +
    struct ldap_Result DelResponse;
 +
    struct ldap_ModifyDNRequest ModifyDNRequest;
 +
    struct ldap_Result ModifyDNResponse;
 +
    struct ldap_CompareRequest CompareRequest;
 +
    struct ldap_Result CompareResponse;
 +
    struct ldap_AbandonRequest AbandonRequest;
 +
    struct ldap_ExtendedRequest ExtendedRequest;
 +
    struct ldap_ExtendedResponse ExtendedResponse;
 +
};
 +
</pre>
 +
 +
== ldap_message ==
 +
 +
<pre>
 +
struct ldap_message {
 +
    int                    messageid;
 +
    enum ldap_request_tag  type;
 +
    union ldap_Request      r;
 +
    struct ldb_control    **controls;
 +
    bool                  *controls_decoded;
 
};
 
};
 
</pre>
 
</pre>

Latest revision as of 22:06, 18 November 2009

Structures

ldap_Result

struct ldap_Result {
    int resultcode;
    const char *dn;
    const char *errormessage;
    const char *referral;
};

ldap_BindRequest

struct ldap_BindRequest {
    int version;
    const char *dn;
    enum ldap_auth_mechanism mechanism;
    union {
        const char *password;
        struct {
            const char *mechanism;
            DATA_BLOB *secblob;/* optional */
        } SASL;
    } creds;
};

ldap_BindResponse

struct ldap_BindResponse {
    struct ldap_Result response;
    union {
        DATA_BLOB *secblob;/* optional */
    } SASL;
};

ldap_UnbindRequest

struct ldap_UnbindRequest {
    uint8_t __dummy;
};

ldap_SearchRequest

struct ldap_SearchRequest {
    const char *basedn;
    enum ldap_scope scope;
    enum ldap_deref deref;
    uint32_t timelimit;
    uint32_t sizelimit;
    bool attributesonly;
    struct ldb_parse_tree *tree;
    int num_attributes;
    const char * const *attributes;
};

ldap_SearchResEntry

struct ldap_SearchResEntry {
    const char *dn;
    int num_attributes;
    struct ldb_message_element *attributes;
};

ldap_SearchResRef

struct ldap_SearchResRef {
    const char *referral;
};

ldap_mod

struct ldap_mod {
    enum ldap_modify_type type;
    struct ldb_message_element attrib;
};

ldap_ModifyRequest

struct ldap_ModifyRequest {
    const char *dn;
    int num_mods;
    struct ldap_mod *mods;
};

ldap_AddRequest

struct ldap_AddRequest {
    const char *dn;
    int num_attributes;
    struct ldb_message_element *attributes;
};

ldap_DelRequest

struct ldap_DelRequest {
    const char *dn;
};

ldap_ModifyDNRequest

struct ldap_ModifyDNRequest {
    const char *dn;
    const char *newrdn;
    bool deleteolddn;
    const char *newsuperior;/* optional */
};

ldap_CompareRequest

struct ldap_CompareRequest {
    const char *dn;
    const char *attribute;
    DATA_BLOB value;
};

ldap_AbandonRequest

struct ldap_AbandonRequest {
    int messageid;
};

ldap_ExtendedRequest

struct ldap_ExtendedRequest {
    const char *oid;
    DATA_BLOB *value;/* optional */
};

ldap_ExtendedResponse

struct ldap_ExtendedResponse {
    struct ldap_Result response;
    const char *oid;/* optional */
    DATA_BLOB *value;/* optional */
};

ldap_Request

union ldap_Request {
    struct ldap_Result 		GeneralResult;
    struct ldap_BindRequest 	BindRequest;
    struct ldap_BindResponse 	BindResponse;
    struct ldap_UnbindRequest 	UnbindRequest;
    struct ldap_SearchRequest 	SearchRequest;
    struct ldap_SearchResEntry 	SearchResultEntry;
    struct ldap_Result 		SearchResultDone;
    struct ldap_SearchResRef 	SearchResultReference;
    struct ldap_ModifyRequest 	ModifyRequest;
    struct ldap_Result 		ModifyResponse;
    struct ldap_AddRequest 		AddRequest;
    struct ldap_Result 		AddResponse;
    struct ldap_DelRequest 		DelRequest;
    struct ldap_Result 		DelResponse;
    struct ldap_ModifyDNRequest 	ModifyDNRequest;
    struct ldap_Result 		ModifyDNResponse;
    struct ldap_CompareRequest 	CompareRequest;
    struct ldap_Result 		CompareResponse;
    struct ldap_AbandonRequest 	AbandonRequest;
    struct ldap_ExtendedRequest 	ExtendedRequest;
    struct ldap_ExtendedResponse 	ExtendedResponse;
};

ldap_message

struct ldap_message {
    int                     messageid;
    enum ldap_request_tag   type;
    union ldap_Request      r;
    struct ldb_control    **controls;
    bool                   *controls_decoded;
};