Share this page

# mldap_search

Listing Directory Functions (mldap)

Performs a search on an LDAP server.

    int mldap_search( char *transaction, char *base, char *scope, char *filter, [char *timeout,] [char *mode,] [const char *SaveAsParam,] [const char *Attrs,] LAST );

transaction | A transaction name for this step. To instruct VuGen not to create a transaction for this step, use a NULL string, "".
base | The base Distinguished Name entry. Use the following format: `"Base=`RDN1`,` RDN2`,..."`
scope | The scope of the search: `Base` (default), or `Onelevel`, or `Subtree`. Use the following format: `"Scope=Base."`
filter | The name of an attribute of the entry, by which to filter the search. Use the following format: `"Filter=(`attribute_name`=`value)`".` You can indicate a specific value, or a wildcard, *, to retrieve all values of that attribute name.
timeout | The timeout in seconds. After the timeout is reached, VuGen aborts the search. The default is 30 seconds. Use the following format: `"Timeout=`value`"`
mode | The search mode: synchronous (default) or asynchronous. Use the following format: `"Mode=SYNC | ASYNC"`
SaveAsParam | If SaveAsParam is true, the attributes are saved as parameters. If Attrs is not passed, all attributes are saved to parameters. If Attrs is passed, only the attributes listed are saved to parameters. The format is "`SaveAsParam=True`"
Attrs | An optional filter to define the set of attributes fetched from the server. Attrs is a comma separated list. For example, "`Attrs=uid,mail`"
LAST | A marker indicating the end of the argument list.

The mldap_search function searches an LDAP for a specific attribute. You indicate a DN which VuGen uses as a base for a search. The scope can be the base itself (base), one level beneath the base (Onelevel), or all levels beneath the base (subtree). You can specify an attribute and its value, or a wildcard. If you use a wildcard, VuGen returns all values for the specified attribute.

If SaveAsParam is used, the parameters are named mldap_attribute_<AttributeName>_<EntryID>. For example, `mldap_attribute_uid_2.`

Note that the use of the Attrs argument affects the load on the server. The more attributes retrieved, the higher the load on the server created by this call.

This function is for use with global sessions. For multiple sessions, use the mldap_search_ex function, which allows you to specify a session identifier.

## Return Values

If this function succeeds, it returns E_OK. Otherwise, it returns a negative value.

## Parameterization

The following argument(s) can be parameterized with standard parameterization: base, scope, filter, mode

## Example

In the following example, the mldap_search function searches for all objectclass attribute values on the base level.

    mldap_search("LDAP Search",
                 "Base=OU=Sales,DC=TECHNO,DC=com",
                 "Scope=Base",
                "Filter=(objectclass=*)",
                 LAST );

In the following example, the mldap_search function searches the name attribute one level beneath the base, for the name Dan.

        mldap_search("LDAP Search",
             "Base=OU=Sales,DC=TECHNO,DC=com",
             "Scope=Onelevel",
             "Filter=(name=Dan)",
             "Timeout=10",
             "Mode=ASYNC",
             LAST );

Tips to improve your search results... VuGen Function Reference Version 26.1 Function Reference 26.1 All View Local Help Center View Online Help Center Version: