3 * Copyright 1998-2001 The OpenLDAP Foundation, Redwood City, California, USA
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted only as authorized by the OpenLDAP
8 * Public License. A copy of this license is available at
9 * http://www.OpenLDAP.org/license.html or in file LICENSE in the
10 * top-level directory of the distribution.
17 #ifndef _LDAP_FEATURES_H
18 #define _LDAP_FEATURES_H 1
21 ** OpenLDAP reentrancy/thread-safeness should be dynamically
22 ** checked using ldap_get_option().
24 ** The -lldap implementation may or may not be:
25 ** LDAP_API_FEATURE_THREAD_SAFE
27 ** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_REENTRANT can
28 ** be used to determine if -lldap is LDAP_API_FEATURE_THREAD_SAFE at
31 ** The -lldap_r implementation is always THREAD_SAFE but
33 ** LDAP_API_FEATURE_SESSION_THREAD_SAFE
34 ** LDAP_API_FEATURE_OPERATION_THREAD_SAFE
36 ** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
37 ** can be used to determine if -lldap_r is available at compile
38 ** time. You must define LDAP_THREAD_SAFE if and only if you
39 ** link with -lldap_r.
41 ** If you fail to define LDAP_THREAD_SAFE when linking with
42 ** -lldap_r or define LDAP_THREAD_SAFE when linking with -lldap,
43 ** provided header definations and declarations may be incorrect.
47 /* is -lldap reentrant or not */
48 #undef LDAP_API_FEATURE_X_OPENLDAP_REENTRANT
50 /* is threadsafe version of -lldap (ie: -lldap_r) *available* or not */
51 #undef LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
53 /* LDAP v2 Kerberos Bind */
54 #undef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
56 /* LDAP v2 Referrals */
57 #undef LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS
59 /* LDAP Server Side Sort. */
60 #define LDAP_API_FEATURE_SERVER_SIDE_SORT 1000
62 /* LDAP Virtual List View. */
63 #define LDAP_API_FEATURE_VIRTUAL_LIST_VIEW 1000
65 #endif /* LDAP_FEATURES */