]> git.sur5r.net Git - openldap/blobdiff - include/ldap.h
Update copyright (including with or without modification clarification)
[openldap] / include / ldap.h
index 9b7037c155c225aaad249035e821caa562debb0f..2d72a1e19243330f0d8e77f516ec9bf542962c79 100644 (file)
@@ -1,12 +1,13 @@
 /* $OpenLDAP$ */
 /*
- * Copyright 1998-2000 The OpenLDAP Foundation, Redwood City, California, USA
+ * Copyright 1998-2001 The OpenLDAP Foundation, Redwood City, California, USA
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms are permitted only
- * as authorized by the OpenLDAP Public License.  A copy of this
- * license is available at http://www.OpenLDAP.org/license.html or
- * in file LICENSE in the top-level directory of the distribution.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted only as authorized by the OpenLDAP
+ * Public License.  A copy of this license is available at
+ * http://www.OpenLDAP.org/license.html or in file LICENSE in the
+ * top-level directory of the distribution.
  */
 /* Portions
  * Copyright (c) 1990 Regents of the University of Michigan.
@@ -26,6 +27,9 @@
 /* pull in lber */
 #include <lber.h>
 
+/* include version and API feature defines */
+#include <ldap_features.h>
+
 LDAP_BEGIN_DECL
 
 #define LDAP_VERSION1  1
@@ -44,14 +48,10 @@ LDAP_BEGIN_DECL
 #define LDAP_API_VERSION       2004
 #define LDAP_VENDOR_NAME       "OpenLDAP"
 /* We'll eventually release as 20000 */
-#define LDAP_VENDOR_VERSION    19910
 
 /* OpenLDAP API Features */
 #define LDAP_API_FEATURE_X_OPENLDAP LDAP_VENDOR_VERSION
 
-/* include LDAP_API_FEATURE defines */
-#include <ldap_features.h>
-
 #if defined( LDAP_API_FEATURE_X_OPENLDAP_REENTRANT ) || \
        ( defined( LDAP_THREAD_SAFE ) && \
                defined( LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE ) )
@@ -187,6 +187,11 @@ typedef struct ldapcontrol {
 
 #define LDAP_CONTROL_MANAGEDSAIT "2.16.840.1.113730.3.4.2"
 
+#define LDAP_CONTROL_DUPENT    LDAP_CONTROL_DUPENT_REQUEST
+#define LDAP_CONTROL_DUPENT_REQUEST            "2.16.840.1.113719.1.27.101.1"
+#define LDAP_CONTROL_DUPENT_RESPONSE   "2.16.840.1.113719.1.27.101.2"
+#define LDAP_CONTROL_DUPENT_ENTRY              "2.16.840.1.113719.1.27.101.3"
+
 /* Experimental Controls */
 
 #define LDAP_CONTROL_SORTREQUEST    "1.2.840.113556.1.4.473"
@@ -231,8 +236,8 @@ typedef struct ldapcontrol {
 /* general stuff */
 #define LDAP_TAG_MESSAGE       ((ber_tag_t) 0x30U)     /* constructed + 16 */
 #define LDAP_TAG_MSGID         ((ber_tag_t) 0x02U)     /* integer */
-#define LDAP_TAG_LDAPDN                ((ber_tag_t) 0x04U)     /* octect string */
-#define LDAP_TAG_LDAPCRED      ((ber_tag_t) 0x04U)     /* octect string */
+#define LDAP_TAG_LDAPDN                ((ber_tag_t) 0x04U)     /* octet string */
+#define LDAP_TAG_LDAPCRED      ((ber_tag_t) 0x04U)     /* octet string */
 #define LDAP_TAG_CONTROLS      ((ber_tag_t) 0xa0U)     /* context specific + constructed + 0 */
 #define LDAP_TAG_REFERRAL      ((ber_tag_t) 0xa3U)     /* context specific + constructed + 3 */
 
@@ -281,6 +286,7 @@ typedef struct ldapcontrol {
 
 /* sasl methods */
 #define LDAP_SASL_SIMPLE               ((char*)0)
+#define LDAP_SASL_NULL                 ("")
 
 
 /* authentication methods available */
@@ -316,6 +322,7 @@ typedef struct ldapcontrol {
 #define LDAP_SUBSTRING_FINAL   ((ber_tag_t) 0x82U)     /* context specific */
 
 /* search scopes */
+#define LDAP_SCOPE_DEFAULT     ((ber_int_t) -1)
 #define LDAP_SCOPE_BASE                ((ber_int_t) 0x0000)
 #define LDAP_SCOPE_ONELEVEL    ((ber_int_t) 0x0001)
 #define LDAP_SCOPE_SUBTREE     ((ber_int_t) 0x0002)
@@ -394,6 +401,7 @@ typedef struct ldapcontrol {
 
 #define LDAP_API_ERROR(n)              LDAP_RANGE((n),0x51,0x61) /* 81-97 */
 
+/* reserved for APIs */
 #define LDAP_SERVER_DOWN               0x51
 #define LDAP_LOCAL_ERROR               0x52
 #define LDAP_ENCODING_ERROR            0x53
@@ -405,7 +413,7 @@ typedef struct ldapcontrol {
 #define LDAP_PARAM_ERROR               0x59
 #define LDAP_NO_MEMORY                 0x5a
 
-/* not technically reserved for APIs */
+/* used but not reserved for APIs */
 #define LDAP_CONNECT_ERROR                             0x5b    /* draft-ietf-ldap-c-api-xx */
 #define LDAP_NOT_SUPPORTED                             0x5c    /* draft-ietf-ldap-c-api-xx */
 #define LDAP_CONTROL_NOT_FOUND                 0x5d    /* draft-ietf-ldap-c-api-xx */
@@ -512,15 +520,16 @@ typedef struct ldap_friendly {
  * types for ldap URL handling
  */
 typedef struct ldap_url_desc {
-    struct ldap_url_desc *lud_next;
-    char       *lud_scheme;
-    char       *lud_host;
-    int                lud_port;
-    char       *lud_dn;
-    char       **lud_attrs;
-    int                lud_scope;
-    char       *lud_filter;
-    char       **lud_exts;
+       struct ldap_url_desc *lud_next;
+       char    *lud_scheme;
+       char    *lud_host;
+       int             lud_port;
+       char    *lud_dn;
+       char    **lud_attrs;
+       int             lud_scope;
+       char    *lud_filter;
+       char    **lud_exts;
+       int             lud_crit_exts;
 } LDAPURLDesc;
 
 #define LDAP_URL_SUCCESS               0x00    /* Success */
@@ -569,6 +578,13 @@ ldap_set_rebind_proc LDAP_P((
 /*
  * in controls.c:
  */
+LDAP_F( int ) 
+ldap_create_control LDAP_P(( 
+       const char *requestOID, 
+       BerElement *ber, 
+       int iscritical,
+       LDAPControl **ctrlp ));
+
 LDAP_F( void )
 ldap_control_free LDAP_P((
        LDAPControl *ctrl ));
@@ -1306,7 +1322,7 @@ ldap_search_st LDAP_P((   /* deprecated */
        struct timeval *timeout,
        LDAPMessage **res ));
 
-
+#ifdef LDAP_UFN
 /*
  * in ufn.c                                                    
  *     (deprecated)
@@ -1355,7 +1371,7 @@ ldap_ufn_setprefix LDAP_P(( /* deprecated */
 LDAP_F( int )
 ldap_ufn_timeout LDAP_P(( /* deprecated */
        void *tvparam ));
-
+#endif
 
 /*
  * in unbind.c
@@ -1476,37 +1492,6 @@ ldap_free_friendlymap LDAP_P(( /* deprecated */
        LDAPFriendlyMap **map ));
 
 
-/*
- * in cldap.c
- *     (deprecated)
- */
-LDAP_F( LDAP * )
-cldap_open LDAP_P((    /* deprecated */
-       LDAP_CONST char *host,
-       int port ));
-
-LDAP_F( void )
-cldap_close LDAP_P((   /* deprecated */
-       LDAP *ld ));
-
-LDAP_F( int )
-cldap_search_s LDAP_P(( /* deprecated */
-       LDAP *ld,
-       LDAP_CONST char *base,
-       int scope,
-       LDAP_CONST char *filter,
-       char **attrs,
-       int attrsonly,
-       LDAPMessage **res,
-       char *logdn ));
-
-LDAP_F( void )
-cldap_setretryinfo LDAP_P(( /* deprecated */
-       LDAP *ld,
-       int tries,
-       int timeout ));
-
-
 /*
  * in sort.c
  */