]> git.sur5r.net Git - openldap/blobdiff - include/ldap.h
cleanup old TOOLID macro
[openldap] / include / ldap.h
index e9352f9dbc30f47ec73e21899615a5a26484aa2c..2a97528a37825ee7fc20e2c300c140b958d4e0e5 100644 (file)
@@ -1,6 +1,6 @@
 /* $OpenLDAP$ */
 /*
- * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
+ * Copyright 1998-2000 The OpenLDAP Foundation, Redwood City, California, USA
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms are permitted only
@@ -23,9 +23,7 @@
 #ifndef _LDAP_H
 #define _LDAP_H
 
-#include <ldap_cdefs.h>
-
-/* draft spec requires ldap.h include lber declarations */
+/* pull in lber */
 #include <lber.h>
 
 LDAP_BEGIN_DECL
@@ -104,6 +102,8 @@ LDAP_BEGIN_DECL
 
 /* 0x34 - 0x0fff not defined by current draft */
 
+#define LDAP_OPT_PRIVATE_EXTENSION_BASE 0x4000  /* to 0x7FFF inclusive */
+
 /* private and experimental options */
 #define LDAP_OPT_DNS                           0x4001  /* use DN & DNS */
 
@@ -114,7 +114,7 @@ LDAP_BEGIN_DECL
 #define LDAP_OPT_NETWORK_TIMEOUT        0x5005  /* socket level timeout */
 #define LDAP_OPT_URI                           0x5006
 
-/* TLS options */
+/* OpenLDAP TLS options */
 #define LDAP_OPT_X_TLS_CACERTFILE      0x6001
 #define LDAP_OPT_X_TLS_CACERTDIR       0x6002
 #define LDAP_OPT_X_TLS_CERT            0x6003
@@ -131,6 +131,11 @@ LDAP_BEGIN_DECL
 #define LDAP_OPT_X_TLS_ALLOW           3
 #define LDAP_OPT_X_TLS_TRY             4
 
+/* OpenLDAP SASL options */
+#define LDAP_OPT_X_SASL_MINSSF         0x6100
+#define LDAP_OPT_X_SASL_MAXSSF         0x6101
+#define LDAP_OPT_X_SASL_ACTSSF         0x6102
+
 /* on/off values */
 #define LDAP_OPT_ON            ((void *) 1)
 #define LDAP_OPT_OFF   ((void *) 0)
@@ -184,6 +189,7 @@ typedef struct ldapcontrol {
 #define LDAP_TAG_EXOP_X_MODIFY_PASSWD_ID       ((ber_tag_t) 0x80U)
 #define LDAP_TAG_EXOP_X_MODIFY_PASSWD_OLD      ((ber_tag_t) 0x81U)
 #define LDAP_TAG_EXOP_X_MODIFY_PASSWD_NEW      ((ber_tag_t) 0x82U)
+#define LDAP_TAG_EXOP_X_MODIFY_PASSWD_GEN      ((ber_tag_t) 0x80U)
 
 /* 
  * specific LDAP instantiations of BER types we know about
@@ -251,6 +257,7 @@ typedef struct ldapcontrol {
 #define LDAP_RES_RENAME                        LDAP_RES_MODRDN /* application + constructed */
 #define LDAP_RES_COMPARE               ((ber_tag_t) 0x6fU)     /* application + constructed */
 #define LDAP_RES_EXTENDED              ((ber_tag_t) 0x78U)     /* V3: application + constructed */
+#define LDAP_RES_EXTENDED_PARTIAL      ((ber_tag_t) 0x79U)     /* V3+: application + constructed */
 
 #define LDAP_RES_ANY                   ((ber_tag_t)(-1))
 #define LDAP_RES_UNSOLICITED   ((ber_tag_t)(0))
@@ -487,17 +494,26 @@ typedef struct ldap_friendly {
  * types for ldap URL handling
  */
 typedef struct ldap_url_desc {
-       struct ldap_url_desc *lud_next;
-       int             lud_ldaps;
+    struct ldap_url_desc *lud_next;
+    unsigned long lud_properties;
+    int                lud_protocol;
     char       *lud_host;
     int                lud_port;
     char       *lud_dn;
     char       **lud_attrs;
     int                lud_scope;
     char       *lud_filter;
-       char    **lud_exts;
+    char       **lud_exts;
 } LDAPURLDesc;
 
+/* lud_properties */
+#define        LDAP_URL_USE_SSL                0x00000001
+
+/* lud_protocol */
+#define LDAP_PROTO_TCP                 0x00
+#define LDAP_PROTO_UDP                 0x01    
+#define LDAP_PROTO_LOCAL               0x02
+
 #define LDAP_URL_SUCCESS               0x00    /* Success */
 #define LDAP_URL_ERR_MEM               0x01    /* can't allocate memory space */
 #define LDAP_URL_ERR_PARAM             0x02    /* parameter is bad */
@@ -544,7 +560,24 @@ LIBLDAP_F( void )
 ldap_controls_free LDAP_P((
        LDAPControl **ctrls ));
 
-  
+/*
+ * in dnssrv.c:
+ */
+LIBLDAP_F( int )
+ldap_domain2dn LDAP_P((
+       LDAP_CONST char* domain,
+       char** dn ));
+
+LIBLDAP_F( int )
+ldap_dn2domain LDAP_P((
+       LDAP_CONST char* dn,
+       char** domain ));
+
+LIBLDAP_F( int )
+ldap_domain2hostlist LDAP_P((
+       LDAP_CONST char *domain,
+       char** hostlist ));
+
 /*
  * in extended.c:
  */
@@ -637,6 +670,17 @@ ldap_sasl_bind LDAP_P((
        LDAPControl             **clientctrls,
        int                             *msgidp ));
 
+LIBLDAP_F( int )
+ldap_negotiated_sasl_bind_s LDAP_P((
+       LDAP *ld,
+       LDAP_CONST char *dn, /* usually NULL */
+       LDAP_CONST char *authenticationId, 
+       LDAP_CONST char *authorizationId, /* usually NULL */
+       LDAP_CONST char *saslMechanism,
+       struct berval *passPhrase,
+       LDAPControl **serverControls,
+       LDAPControl **clientControls ));
+
 LIBLDAP_F( int )
 ldap_sasl_bind_s LDAP_P((
        LDAP                    *ld,
@@ -1126,6 +1170,11 @@ LIBLDAP_F( int )
 ldap_is_dns_dn LDAP_P((        /* deprecated */
        LDAP_CONST char *dn ));
 
+LIBLDAP_F( char * )
+ldap_dn2dcedn LDAP_P(( LDAP_CONST char *dn ));
+
+LIBLDAP_F( char * )
+ldap_dcedn2dn LDAP_P(( LDAP_CONST char *dce ));
 
 /*
  * in getattr.c