ldap_init_searchprefs,          ldap_init_searchprefs_buf,
       ldap_free_searchprefs,               ldap_first_searchobj,
       ldap_next_searchobj - LDAP search preference configuration
       routeines


SYNOPSIS

       #include <srchpref.h>

       struct ldap_searchattr {
            char                *sa_attrlabel;
            char                *sa_attr;
                                /* max 32 matchtypes for now */
            u_long                   sa_matchtypebitmap;
            char                *sa_selectattr;
            char                *sa_selecttext;
            struct ldap_searchattr        *sa_next;
       };

       struct ldap_searchmatch {
            char                *sm_matchprompt;
            char                *sm_filter;
            struct ldap_searchmatch       *sm_next;
       };

       struct ldap_searchobj {
            char                *so_objtypeprompt;
            unsigned long            so_options;
            char                *so_prompt;
            short                    so_defaultscope;
            char                *so_filterprefix;
            char                *so_filtertag;
            char                *so_defaultselectattr;
            char                *so_defaultselecttext;
            struct ldap_searchattr        *so_salist;
            struct ldap_searchmatch       *so_smlist;
            struct ldap_searchobj         *so_next;
       };

       int ldap_init_searchprefs( file, solistp )
            char      *file;
            struct ldap_searchobj    **solistp;

       int ldap_init_searchprefs_buf( buf, buflen, solistp )
            char      *buf;
            unsigned long  len;
            struct ldap_searchobj    **solistp;

       struct ldap_searchobj *ldap_free_searchprefs( solist )
            struct ldap_searchobj    *solist;

       struct ldap_searchobj *ldap_first_searchobj( solist )
            struct ldap_seachobj     *solist;

            struct ldap_searchobj    *solist;
            struct ldap_searchobj    *so;


DESCRIPTION

       These functions provide a  standard  way  to  access  LDAP
       search preference configuration data.  LDAP search prefer­
       ence configurations are typically used by LDAP client pro­
       grams  to  specify  which attributes a user may search by,
       labels for the attributes, and  LDAP  filters  and  scopes
       associated  with those searches.  Client software presents
       these choices to a user, who can then specify the type  of
       search to be performed.

       ldap_init_searchprefs() reads a sequence of search prefer­
       ence configurations from a valid LDAP searchpref  configu­
       ration file (see ldapsearchprefs.conf(5)) Zero is returned
       upon success, and solistp is set to point  to  a  list  of
       search preference data structures.

       ldap_init_searchprefs_buf()  reads  a  sequence  of search
       preference configurations from buf (whose size is buflen).
       buf  should point to the data in the format defined for an
       LDAP search preference configuration file (see ldapsearch­
       prefs.conf(5))  Zero is returned upon success, and solistp
       is set to point to a list of search preference data struc­
       tures.

       ldap_free_searchprefs()  disposes  of  the data structures
       allocated by ldap_init_searchprefs().

       ldap_first_searchpref() returns the first  search  prefer­
       ence  data  structure  in  the list solist.  The solist is
       typically obtained by calling ldap_init_searchprefs().

       ldap_next_searchpref() returns the search preference after
       so in the template list solist. A NULL pointer is returned
       if so is the last entry in the list.


ERRORS

       The  init  preferences   functions   return   LDAP_SEARCH­
       PREF_ERR_VERSION  if buf points to data that is newer than
       can be handled, and LDAP_SEARCHPREF_ERR_MEM if there is  a
       memory allocation problem.


NOTES


SEE ALSO

       ldap(3), ldapsearchprefs.conf(5), ldapd(8)

       Yeong,   W.,   Howes,   T.,   and   Hardcastle-Kille,  S.,
       "Lightweight Directory Access Protocol", OSI-DS-26,  April


       Howes,  T.,  Hardcastle-Kille, S., Yeong, W., and Robbins,
       C., "Lightweight Directory  Access  Protocol",  OSI-DS-26,
       April 1992.

       Hardcastle-Kille,  S., "A String Representation of Distin­
       guished Names", OSI-DS-23, April 1992.

       Information Processing - Open  Systems  Interconnection  -
       The Directory, International Organization for Standardiza­
       tion.  International Standard 9594, (1988).


ACKNOWLEDGEMENTS

       OpenLDAP is developed and maintained by The OpenLDAP  Pro­
       ject (http://www.openldap.org/).  OpenLDAP is derived from
       University of Michigan LDAP 3.3 Release.


Man(1) output converted with man2html