]> git.sur5r.net Git - openldap/blobdiff - include/ldap_pvt.h
Tweak entry parent check
[openldap] / include / ldap_pvt.h
index 8048e6192fba4b1278bbec4242a86cafd7e608a4..1506983757700e2b67e7f658cd6340376fa1f57d 100644 (file)
@@ -1,7 +1,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  * 
- * Copyright 1998-2006 The OpenLDAP Foundation.
+ * Copyright 1998-2007 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -27,6 +27,7 @@ LDAP_BEGIN_DECL
 #define LDAP_PROTO_TCP 1 /* ldap://  */
 #define LDAP_PROTO_UDP 2 /* reserved */
 #define LDAP_PROTO_IPC 3 /* ldapi:// */
+#define LDAP_PROTO_EXT 4 /* user-defined socket/sockbuf */
 
 LDAP_F ( int )
 ldap_pvt_url_scheme2proto LDAP_P((
@@ -46,13 +47,20 @@ struct ldap_url_desc; /* avoid pulling in <ldap.h> */
 #define LDAP_PVT_URL_PARSE_DEF_PORT            (0x02U)
 #define LDAP_PVT_URL_PARSE_NOEMPTY_DN          (0x04U)
 #define LDAP_PVT_URL_PARSE_NODEF_SCOPE         (0x08U)
-#define        LDAP_PVT_URL_PARSE_HISTORIC             (LDAP_PVT_URL_PARSE_NODEF_SCOPE | LDAP_PVT_URL_PARSE_NOEMPTY_HOST | LDAP_PVT_URL_PARSE_DEF_PORT)
+#define        LDAP_PVT_URL_PARSE_HISTORIC             (LDAP_PVT_URL_PARSE_NODEF_SCOPE | \
+                                                LDAP_PVT_URL_PARSE_NOEMPTY_HOST | \
+                                                LDAP_PVT_URL_PARSE_DEF_PORT)
+
 LDAP_F( int )
 ldap_url_parse_ext LDAP_P((
        LDAP_CONST char *url,
        struct ldap_url_desc **ludpp,
        unsigned flags ));
 
+LDAP_F (int) ldap_url_parselist LDAP_P((       /* deprecated, use ldap_url_parselist_ext() */
+       struct ldap_url_desc **ludlist,
+       const char *url ));
+
 LDAP_F (int) ldap_url_parselist_ext LDAP_P((
        struct ldap_url_desc **ludlist,
        const char *url,
@@ -187,12 +195,10 @@ LDAP_F (void) ldap_pvt_hex_unescape LDAP_P(( char *s ));
 
 /* controls.c */
 struct ldapcontrol;
-LDAP_F (struct ldapcontrol *) ldap_control_dup LDAP_P((
-       const struct ldapcontrol *ctrl ));
-
-LDAP_F (struct ldapcontrol **) ldap_controls_dup LDAP_P((
-       struct ldapcontrol *const *ctrls ));
-
+LDAP_F (int)
+ldap_pvt_put_control LDAP_P((
+       const struct ldapcontrol *c,
+       BerElement *ber ));
 LDAP_F (int) ldap_pvt_get_controls LDAP_P((
        BerElement *be,
        struct ldapcontrol ***ctrlsp));
@@ -224,14 +230,21 @@ LDAP_F (void) ldap_pvt_sasl_remove LDAP_P(( struct sockbuf * ));
 struct ldap;
 struct ldapmsg;
 
-LDAP_F (int) ldap_open_internal_connection LDAP_P((
-       struct ldap **ldp, ber_socket_t *fdp ));
+/* abandon */
+LDAP_F ( int ) ldap_pvt_discard LDAP_P((
+       struct ldap *ld, ber_int_t msgid ));
 
 /* messages.c */
 LDAP_F( BerElement * )
 ldap_get_message_ber LDAP_P((
        struct ldapmsg * ));
 
+/* open */
+LDAP_F (int) ldap_open_internal_connection LDAP_P((
+       struct ldap **ldp, ber_socket_t *fdp ));
+LDAP_F (int) ldap_init_fd LDAP_P((
+       ber_socket_t fd, int proto, LDAP_CONST char *url, struct ldap **ldp ));
+
 /* search.c */
 LDAP_F( int ) ldap_pvt_put_filter LDAP_P((
        BerElement *ber,
@@ -277,8 +290,7 @@ LDAP_F (int) ldap_pvt_tls_init_def_ctx LDAP_P(( int is_server ));
 LDAP_F (int) ldap_pvt_tls_accept LDAP_P(( Sockbuf *sb, void *ctx_arg ));
 LDAP_F (int) ldap_pvt_tls_inplace LDAP_P(( Sockbuf *sb ));
 LDAP_F (void *) ldap_pvt_tls_sb_ctx LDAP_P(( Sockbuf *sb ));
-
-LDAP_F (int) ldap_pvt_tls_init_default_ctx LDAP_P(( void ));
+LDAP_F (void) ldap_pvt_tls_ctx_free LDAP_P(( void * ));
 
 typedef int LDAPDN_rewrite_dummy LDAP_P (( void *dn, unsigned flags ));
 
@@ -304,7 +316,7 @@ LDAP_END_DECL
  * If none is available, unsigned long data is used.
  */
 
-#if USE_MP_BIGNUM
+#ifdef USE_MP_BIGNUM
 /*
  * Use OpenSSL's BIGNUM
  */
@@ -330,7 +342,7 @@ typedef     BIGNUM* ldap_pvt_mp_t;
 #define ldap_pvt_mp_clear(mp) \
        do { BN_free((mp)); (mp) = 0; } while (0)
 
-#elif USE_MP_GMP
+#elif defined(USE_MP_GMP)
 /*
  * Use GNU's multiple precision library
  */
@@ -359,13 +371,13 @@ typedef mpz_t             ldap_pvt_mp_t;
  * Use unsigned long long
  */
 
-#if USE_MP_LONG_LONG
+#ifdef USE_MP_LONG_LONG
 typedef        unsigned long long      ldap_pvt_mp_t;
 #define        LDAP_PVT_MP_INIT        (0LL)
-#elif USE_MP_LONG
+#elif defined(USE_MP_LONG)
 typedef        unsigned long           ldap_pvt_mp_t;
 #define        LDAP_PVT_MP_INIT        (0L)
-#elif HAVE_LONG_LONG
+#elif defined(HAVE_LONG_LONG)
 typedef        unsigned long long      ldap_pvt_mp_t;
 #define        LDAP_PVT_MP_INIT        (0LL)
 #else