3 * Copyright 1998-2002 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
17 /* OpenLDAP API version macros */
18 #define LDAP_VENDOR_VERSION 0
19 #define LDAP_VENDOR_VERSION_MAJOR 2
20 #define LDAP_VENDOR_VERSION_MINOR X
21 #define LDAP_VENDOR_VERSION_PATCH X
26 ** OpenLDAP reentrancy/thread-safeness should be dynamically
27 ** checked using ldap_get_option().
29 ** The -lldap implementation may or may not be:
30 ** LDAP_API_FEATURE_THREAD_SAFE
32 ** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_REENTRANT can
33 ** be used to determine if -lldap is LDAP_API_FEATURE_THREAD_SAFE at
36 ** The -lldap_r implementation is always THREAD_SAFE but
38 ** LDAP_API_FEATURE_SESSION_THREAD_SAFE
39 ** LDAP_API_FEATURE_OPERATION_THREAD_SAFE
41 ** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
42 ** can be used to determine if -lldap_r is availalbe at compile
43 ** time. You must define LDAP_THREAD_SAFE if and only if you
44 ** link with -lldap_r.
46 ** If you fail to define LDAP_THREAD_SAFE when linking with
47 ** -lldap_r or define LDAP_THREAD_SAFE when linking with -lldap,
48 ** provided header definations and declarations may be incorrect.
52 /* is -lldap reentrant or not */
53 /* #undef LDAP_API_FEATURE_X_OPENLDAP_REENTRANT */
55 /* is threadsafe version of -lldap (ie: -lldap_r) *available* or not */
56 #define LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE LDAP_VENDOR_VERSION
58 /* LDAP v2 Referrals */
59 #define LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS LDAP_VENDOR_VERSION
61 /* LDAP Server Side Sort. */
62 #define LDAP_API_FEATURE_SERVER_SIDE_SORT 1000
64 /* LDAP Virtual List View. Version = 1000 + draft revision.
65 * VLV requires Server Side Sort control.
67 #define LDAP_API_FEATURE_VIRTUAL_LIST_VIEW 1000
69 #endif /* LDAP_FEATURES */