diff options
Diffstat (limited to 'rubbos/app/httpd-2.0.64/srclib/apr-util/include/apr_ldap.h.in')
-rw-r--r-- | rubbos/app/httpd-2.0.64/srclib/apr-util/include/apr_ldap.h.in | 176 |
1 files changed, 176 insertions, 0 deletions
diff --git a/rubbos/app/httpd-2.0.64/srclib/apr-util/include/apr_ldap.h.in b/rubbos/app/httpd-2.0.64/srclib/apr-util/include/apr_ldap.h.in new file mode 100644 index 00000000..922086bf --- /dev/null +++ b/rubbos/app/httpd-2.0.64/srclib/apr-util/include/apr_ldap.h.in @@ -0,0 +1,176 @@ +/* Copyright 2002-2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* + * apr_ldap.h is generated from apr_ldap.h.in by configure -- do not edit apr_ldap.h + */ +/** + * @file apr_ldap.h + * @brief APR-UTIL LDAP + */ +#ifndef APU_LDAP_H +#define APU_LDAP_H + +/** + * @defgroup APR_Util_LDAP LDAP + * @ingroup APR_Util + * @{ + */ + + +/* + * This switches LDAP support on or off. + */ + +/* this will be defined if LDAP support was compiled into apr-util */ +#define APR_HAS_LDAP @apu_has_ldap@ + +/* this whole thing disappears if LDAP is not enabled */ +#if !APR_HAS_LDAP + +#define APR_HAS_NETSCAPE_LDAPSDK 0 +#define APR_HAS_NOVELL_LDAPSDK 0 +#define APR_HAS_OPENLDAP_LDAPSDK 0 +#define APR_HAS_MICROSOFT_LDAPSDK 0 +#define APR_HAS_OTHER_LDAPSDK 0 + +#define APR_HAS_LDAP_SSL 0 +#define APR_HAS_LDAP_URL_PARSE 0 + + +#else /* ldap support available */ + +#ifdef APR_NOT_READY_YET +/* FIXME: this code awaits support from apu-conf.m4 */ + + /* There a several LDAPv3 SDKs available on various platforms + * define which LDAP SDK is used + */ +#define APR_HAS_NETSCAPE_LDAPSDK @apu_has_ldap_netscape@ +#define APR_HAS_NOVELL_LDAPSDK @apu_has_ldap_novell@ +#define APR_HAS_OPENLDAP_LDAPSDK @apu_has_ldap_openldap@ +#define APR_HAS_MICROSOFT_LDAPSDK @apu_has_ldap_microsoft@ +#define APR_HAS_OTHER_LDAPSDK @apu_has_ldap_other@ + + /* define if LDAP SSL support is available + */ +#define APR_HAS_LDAP_SSL @apu_has_ldap_ssl@ + +#else /* APR_NOT_READY_YET */ + +/* FIXME: remove this when above code works. Default to build with + * OpenLDAP until apu-conf.m4 support exists */ +#define APR_HAS_OPENLDAP_LDAPSDK 1 +#define APR_HAS_LDAP_SSL 1 + +#endif /* APR_NOT_READY_YET */ + + /* If no APR_HAS_xxx_LDAPSDK is defined error out + * Define if the SDK supports the ldap_url_parse function + */ +#if APR_HAS_NETSCAPE_LDAPSDK + #define APR_HAS_LDAP_URL_PARSE 1 +#elif APR_HAS_NOVELL_LDAPSDK + #define APR_HAS_LDAP_URL_PARSE 1 +#elif APR_HAS_OPENLDAP_LDAPSDK + #define APR_HAS_LDAP_URL_PARSE 1 +#elif APR_HAS_MICROSOFT_LDAPSDK + #define APR_HAS_LDAP_URL_PARSE 0 +#elif APR_HAS_OTHER_LDAPSDK + #define APR_HAS_LDAP_URL_PARSE 0 +#else + #define APR_HAS_LDAP_URL_PARSE 0 + #error "ERROR no LDAP SDK defined!" +#endif + +/* These are garbage, our public macros are always APR_HAS_ prefixed, + * and use 0/1 values, not defined/undef semantics. + * + * Will be deprecated in APR 1.0 + */ +#if APR_HAS_LDAP +#define APU_HAS_LDAP +#endif + +/* LDAP header files */ + +#if APR_HAS_NETSCAPE_LDAPSDK +@lber_h@ +@ldap_h@ +#if APR_HAS_LDAP_SSL +@ldap_ssl_h@ +#endif +#endif + +#if APR_HAS_NOVELL_LDAPSDK +@lber_h@ +@ldap_h@ +#if APR_HAS_LDAP_SSL +@ldap_ssl_h@ +#endif +#endif + +#if APR_HAS_OPENLDAP_LDAPSDK +#if !defined(LDAP_DEPRECATED) +/* Ensure that the "deprecated" interfaces are still exposed + * with OpenLDAP >= 2.3; these were exposed by default in earlier + * releases. */ +#define LDAP_DEPRECATED 1 +#endif +@lber_h@ +@ldap_h@ +#endif + +/* MS & v2 LDAP SDKs don't use const parameters in their prototypes, + * LDAPv3 SDKs mostly use const. Bridge the gap for clean compilation. + */ + +#if LDAP_VERSION_MAX <= 2 || APR_HAS_MICROSOFT_LDAPSDK || defined(DOXYGEN) +/** + * Cast away constness to compile cleanly against v2 and MS LDAP SDKs + * @param conststr The value to un-constify on older LDAP SDKs + */ +#define APR_LDAP_UNCONST(conststr) ((char *)(conststr)) +#else +#define APR_LDAP_UNCONST(conststr) (conststr) +#endif + +#ifndef __cplusplus +/** + * Cast away constness to compile against v2 and MS LDAP SDKs + * @param conststr The value to un-constify on older LDAP SDKs + * @bug The apr_ldap.h macro const_cast violated three rules; + * it was a C++ reserved keyword, it violated the uppercase-only + * style guideline for apr macros, and it was not namespace protected. + * It exists here soley to avoid breaking legacy sources using APR 0.9. + * @deprecated @see APR_LDAP_UNCONST + */ +#define const_cast(conststr) APR_LDAP_UNCONST(conststr) +#endif + +#include "apr_ldap_url.h" + +/* Define some errors that are mysteriously gone from OpenLDAP 2.x */ +#ifndef LDAP_URL_ERR_NOTLDAP +#define LDAP_URL_ERR_NOTLDAP LDAP_URL_ERR_BADSCHEME +#endif + +#ifndef LDAP_URL_ERR_NODN +#define LDAP_URL_ERR_NODN LDAP_URL_ERR_BADURL +#endif + +/** @} */ +#endif /* APR_HAS_LDAP */ +#endif /* APU_LDAP_H */ |