3 * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
6 * Redistribution and use in source and binary forms are permitted only
7 * as authorized by the OpenLDAP Public License. A copy of this
8 * license is available at http://www.OpenLDAP.org/license.html or
9 * in file LICENSE in the top-level directory of the distribution.
14 #ifndef _LDAP_FEATURES_H
15 #define _LDAP_FEATURES_H 1
18 ** OpenLDAP reentrancy/thread-safeness should be dynamically
19 ** checked using ldap_get_option().
21 ** The -lldap implementation may or may not be:
22 ** LDAP_API_FEATURE_THREAD_SAFE
24 ** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_REENTRANT can
25 ** be used to determine if -lldap is LDAP_API_FEATURE_THREAD_SAFE at
28 ** The -lldap_r implementation is always THREAD_SAFE but
30 ** LDAP_API_FEATURE_SESSION_THREAD_SAFE
31 ** LDAP_API_FEATURE_OPERATION_THREAD_SAFE
33 ** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
34 ** can be used to determine if -lldap_r is availalbe at compile
35 ** time. You must define LDAP_THREAD_SAFE if and only if you
36 ** link with -lldap_r.
38 ** If you fail to define LDAP_THREAD_SAFE when linking with
39 ** -lldap_r or define LDAP_THREAD_SAFE when linking with -lldap,
40 ** provided header definations and declarations may be incorrect.
44 /* is -lldap reentrant or not */
45 /* #undef LDAP_API_FEATURE_X_OPENLDAP_REENTRANT */
47 /* is threadsafe version of -lldap (ie: -lldap_r) *available* or not */
48 #define LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE LDAP_VENDOR_VERSION
51 /* #undef LDAP_API_FEATURE_X_OPENLDAP_V2_DNS */
53 /* LDAP v2 Referrals */
54 #define LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS LDAP_VENDOR_VERSION
56 #endif /* LDAP_FEATURES */