ABCDEFGHIJKLMNOPQRSTUVWXYZ

ldap_free_searchprefs

SEARCHPREFS(3)                                                  SEARCHPREFS(3)



NAME
       ldap_init_searchprefs,   ldap_init_searchprefs_buf,   ldap_free_search-
       prefs, ldap_first_searchobj, ldap_next_searchobj - LDAP search  prefer-
       ence 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 *ldap_next_searchobj( solist, so )
            struct ldap_searchobj    *solist;
            struct ldap_searchobj    *so;


DESCRIPTION
       These functions provide a standard way to access LDAP search preference
       configuration data.  LDAP search preference  configurations  are  typi-
       cally  used  by LDAP client programs 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 preference  configu-
       rations   from   a   valid  LDAP  searchpref  configuration  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 con-
       figurations from buf (whose size is buflen).  buf should point  to  the
       data  in the format defined for an LDAP search preference configuration
       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_free_searchprefs() disposes of the data  structures  allocated  by
       ldap_init_searchprefs().

       ldap_first_searchpref() returns the first search preference data struc-
       ture 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_SEARCHPREF_ERR_VERSION if
       buf points to data that is newer than can be handled, and  LDAP_SEARCH-
       PREF_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 1992.

       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 Distinguished Names",
       OSI-DS-23, April 1992.

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

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



OpenLDAP 2.0.27-Release        22 September 1998                SEARCHPREFS(3)