]> git.sur5r.net Git - openldap/blobdiff - include/ldap.h
Update slapd to use lutil_passwd() for both user and root passwords.
[openldap] / include / ldap.h
index 2486fe07fbef2415f8e94b82f7c30c19df881336..5a53ef2c1da2592590d5b6388767ffcb2f07a8e1 100644 (file)
 LDAP_BEGIN_DECL
 
 #define LDAP_PORT      389
+
 #define LDAP_VERSION1  1
 #define LDAP_VERSION2  2
 #define LDAP_VERSION3  3
+
 #define LDAP_VERSION           LDAP_VERSION2
+#define LDAP_VERSION_MIN       LDAP_VERSION2
 #define LDAP_VERSION_MAX       LDAP_VERSION2
 
+/*
+ * We'll use 2000+draft revision for our API version number
+ * As such, the number will be above the old RFC but below 
+ * whatever number does finally get assigned
+ */
+#define LDAP_API_VERSION       2001
+#define LDAP_VENDOR_NAME       "OpenLDAP"
+/* We'll eventually release as 200 */
+#define LDAP_VENDOR_VERSION    190
+
+/* include LDAP_API_FEATURE defines */
+#include <ldap_features.h>
+
 #define LDAP_COMPAT20
 #define LDAP_COMPAT30
 #if defined(LDAP_COMPAT20) || defined(LDAP_COMPAT30)
 #define LDAP_COMPAT
 #endif
 
-#define LDAP_OPT_API_INFO                      0x00
-#define LDAP_OPT_DESC                          0x01
-#define LDAP_OPT_DEREF                         0x02
-#define LDAP_OPT_SIZELIMIT                     0x03
-#define LDAP_OPT_TIMELIMIT                     0x04
-#define LDAP_OPT_REFERRALS                     0x08
-#define LDAP_OPT_RESTART                       0x09
-#define LDAP_OPT_PROTOCOL_VERSION      0x11
-#define LDAP_OPT_SERVER_CONTROLS       0x12
-#define LDAP_OPT_CLIENT_CONTROLS       0x13
-#define LDAP_OPT_HOST_NAME                     0x30
-#define        LDAP_OPT_ERROR_NUMBER           0x31
-#define LDAP_OPT_ERROR_STRING          0x32
+#define LDAP_OPT_API_INFO                      0x0000
+#define LDAP_OPT_DESC                          0x0001
+#define LDAP_OPT_DEREF                         0x0002
+#define LDAP_OPT_SIZELIMIT                     0x0003
+#define LDAP_OPT_TIMELIMIT                     0x0004
+#define LDAP_OPT_REFERRALS                     0x0008
+#define LDAP_OPT_RESTART                       0x0009
+#define LDAP_OPT_PROTOCOL_VERSION      0x0011
+#define LDAP_OPT_SERVER_CONTROLS       0x0012
+#define LDAP_OPT_CLIENT_CONTROLS       0x0013
+#define LDAP_OPT_HOST_NAME                     0x0030
+#define        LDAP_OPT_ERROR_NUMBER           0x0031
+#define LDAP_OPT_ERROR_STRING          0x0032
 
 /* for LDAPv2 compatibility */
-#define LDAP_OPT_DNS                           0x40    /* use DN & DNS */
+#define LDAP_OPT_DNS                           0x0101  /* use DN & DNS */
 
 /* on/off values */
 #define LDAP_OPT_ON            ((void *) 1)
-#define LDAP_OPT_OFF   ((void *)) 0)
+#define LDAP_OPT_OFF   ((void *) 0)
 
 #define LDAP_OPT_SUCCESS       0
 #define        LDAP_OPT_ERROR          (-1)
 
+#ifdef LDAP_DEBUG
 extern int ldap_debug;
+#endif
 
+#define LDAP_API_INFO_VERSION  1
 typedef struct ldapapiinfo {
        int             ldapai_info_version;            /* version of LDAPAPIInfo (1) */
        int             ldapai_api_version;                     /* revision of API supported */
        int             ldapai_protocol_version;        /* highest LDAP version supported */
        char    **ldapai_extensions;            /* names of API extensions */
-       char    *ldapi_vendor_name;                     /* name of supplier */
-       int             ldapai_vendor_version;          /* supplier-specific version times 100 */
+       char    *ldapai_vendor_name;            /* name of supplier */
+       int             ldapai_vendor_version;          /* supplier-specific version * 100 */
 } LDAPAPIInfo;
 
 typedef struct ldapcontrol {
@@ -290,7 +309,7 @@ typedef struct ldapmsg LDAPMessage;
 #define NULLMSG        ((LDAPMessage *) NULL)
 
 
-#ifdef LDAP_REFERRALS
+#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS
 /*
  * structure for tracking LDAP server host, ports, DNs, etc.
  */
@@ -343,7 +362,7 @@ typedef struct ldapreq {
        struct ldapreq  *lr_prev;       /* previous request */
        struct ldapreq  *lr_next;       /* next request */
 } LDAPRequest;
-#endif /* LDAP_REFERRALS */
+#endif /* LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS */
 
 
 /*
@@ -448,13 +467,16 @@ typedef struct ldap_url_desc {
 #define LDAP_URL_ERR_BADSCOPE  3       /* URL scope string is invalid */
 #define LDAP_URL_ERR_MEM       4       /* can't allocate memory space */
 
-/* this typedef is never used, only exists to rid of declaration
- in function param list warning */
-typedef struct timeval LDAPtv;
+/* avoid pulling in headers */
+struct timeval;
 
+/*
+ * in options.c:
+ */
 LDAP_F int ldap_get_option LDAP_P((LDAP *ld, int option, void *outvalue));
 LDAP_F int ldap_set_option LDAP_P((LDAP *ld, int option, void *invalue));
 
+/* Not yet */
 LDAP_F void ldap_control_free LDAP_P(( LDAPControl *ctrl ));
 LDAP_F void ldap_controls_free LDAP_P(( LDAPControl **ctrls ));
   
@@ -523,6 +545,7 @@ LDAP_F int ldap_delete_s LDAP_P(( LDAP *ld, char *dn ));
 LDAP_F int ldap_result2error LDAP_P(( LDAP *ld, LDAPMessage *r, int freeit ));
 LDAP_F char *ldap_err2string LDAP_P(( int err ));
 LDAP_F void ldap_perror LDAP_P(( LDAP *ld, char *s ));
+LDAP_F int ldap_get_lderrno LDAP_P((LDAP *ld, char **matched, char **msg));
 
 /*
  * in modify.c:
@@ -566,6 +589,7 @@ LDAP_F void ldap_add_result_entry LDAP_P(( LDAPMessage **list, LDAPMessage *e ))
 LDAP_F char *ldap_get_dn LDAP_P(( LDAP *ld, LDAPMessage *entry ));
 LDAP_F char *ldap_dn2ufn LDAP_P(( char *dn ));
 LDAP_F char **ldap_explode_dn LDAP_P(( char *dn, int notypes ));
+LDAP_F char **ldap_explode_rdn LDAP_P(( char *rdn, int notypes ));
 LDAP_F char **ldap_explode_dns LDAP_P(( char *dn ));
 LDAP_F int ldap_is_dns_dn LDAP_P(( char *dn ));
 
@@ -593,6 +617,8 @@ LDAP_F void ldap_value_free_len LDAP_P(( struct berval **vals ));
  */
 LDAP_F int ldap_result LDAP_P(( LDAP *ld, int msgid, int all,
        struct timeval *timeout, LDAPMessage **result ));
+LDAP_F int ldap_msgtype LDAP_P(( LDAPMessage *lm ));
+LDAP_F int ldap_msgid   LDAP_P(( LDAPMessage *lm ));
 LDAP_F int ldap_msgfree LDAP_P(( LDAPMessage *lm ));
 LDAP_F int ldap_msgdelete LDAP_P(( LDAP *ld, int msgid ));
 
@@ -670,10 +696,11 @@ LDAP_F void cldap_setretryinfo LDAP_P(( LDAP *ld, int tries, int timeout ));
  * in sort.c
  */
 LDAP_F int ldap_sort_entries LDAP_P(( LDAP *ld,
-       LDAPMessage **chain, char *attr, int (*cmp) () ));
+       LDAPMessage **chain, char *attr,
+       int (*cmp) (const char *, const char *) ));
 LDAP_F int ldap_sort_values LDAP_P(( LDAP *ld,
-       char **vals, int (*cmp) LDAP_P((const void *, const void *)) ));
-LDAP_F int ldap_sort_strcasecmp LDAP_P(( char **a, char **b ));
+       char **vals, int (*cmp) (const void *, const void *) ));
+LDAP_F int ldap_sort_strcasecmp LDAP_P(( const void *a, const void *b ));
 
 
 /*