]> git.sur5r.net Git - openldap/blobdiff - include/ldap.h
Fix select/yield
[openldap] / include / ldap.h
index a6d6c1a1464b6dd5a4c3f4915b5921883757ee97..e28755214cde48173b70c9412f0c3983d8242e25 100644 (file)
@@ -144,7 +144,7 @@ LDAP_BEGIN_DECL
 #define        LDAP_OPT_X_SASL_MAXBUFSIZE              0x6109
 
 /* on/off values */
-#define LDAP_OPT_ON            ((void *) 1)
+#define LDAP_OPT_ON            ((void *) &ber_pvt_opt_on)
 #define LDAP_OPT_OFF   ((void *) 0)
 
 /*
@@ -193,14 +193,7 @@ typedef struct ldapcontrol {
 #define LDAP_CONTROL_DUPENT    LDAP_CONTROL_DUPENT_REQUEST
 #endif
 
-#ifdef LDAP_DEVEL
 #define LDAP_CONTROL_PAGEDRESULTS      "1.2.840.113556.1.4.319"
-#endif
-
-#ifdef LDAP_DEVEL
-#define LDAP_CLIENT_UPDATE 1
-#define LDAP_SYNC 2
-#endif
 
 #ifdef LDAP_CLIENT_UPDATE
 #define LDAP_CONTROL_CLIENT_UPDATE             "1.3.6.1.4.1.4203.666.5.3"
@@ -209,7 +202,9 @@ typedef struct ldapcontrol {
 #define LDAP_CUP_COOKIE_OID                            "1.3.6.1.4.1.4203.666.10.1"
 #endif
 
+#define LDAP_SYNC 2
 #ifdef LDAP_SYNC
+#define LDAP_SYNCREPL 1
 #define LDAP_CONTROL_SYNC              "1.3.6.1.4.1.4203.666.5.6"
 #define LDAP_CONTROL_SYNC_STATE        "1.3.6.1.4.1.4203.666.5.7"
 #define LDAP_CONTROL_SYNC_DONE "1.3.6.1.4.1.4203.666.5.8"
@@ -229,10 +224,9 @@ typedef struct ldapcontrol {
 #define LDAP_CONTROL_VLVREQUEST        "2.16.840.1.113730.3.4.9"
 #define LDAP_CONTROL_VLVRESPONSE    "2.16.840.1.113730.3.4.10"
 
-#ifdef LDAP_DEVEL
+/* controls for MSAD compatibility */
 #define LDAP_CONTROL_X_DOMAIN_SCOPE "1.2.840.113556.1.4.1339"
 #define LDAP_CONTROL_X_PERMISSIVE_MODIFY "1.2.840.113556.1.4.1413"
-#endif
 
 /* LDAP Unsolicited Notifications */
 #define        LDAP_NOTICE_OF_DISCONNECTION    "1.3.6.1.4.1.1466.20036"
@@ -248,10 +242,7 @@ typedef struct ldapcontrol {
 #define LDAP_TAG_EXOP_MODIFY_PASSWD_GEN        ((ber_tag_t) 0x80U)
 
 #define LDAP_EXOP_X_WHO_AM_I   "1.3.6.1.4.1.4203.1.11.3"
-
-#ifdef LDAP_DEVEL
 #define LDAP_EXOP_X_CANCEL             "1.3.6.1.4.1.4203.666.6.3"
-#endif
 
 /* LDAP Features */
 #define LDAP_FEATURE_ALL_OPERATIONAL_ATTRS "1.3.6.1.4.1.4203.1.5.1"  /* + */
@@ -337,10 +328,7 @@ typedef struct ldapcontrol {
 #define LDAP_RES_RENAME                LDAP_RES_MODDN  /* 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 */
-#ifdef LDAP_DEVEL
-#define LDAP_RES_INTERMEDIATE_RESP     ((ber_tag_t) 0x7aU)
-#endif
+#define LDAP_RES_INTERMEDIATE  ((ber_tag_t) 0x79U) /* V3+: application + constructed */
 
 #define LDAP_RES_ANY                   (-1)
 #define LDAP_RES_UNSOLICITED   (0)
@@ -701,7 +689,7 @@ ldap_parse_extended_result LDAP_P((
        int                             freeit ));
 
 LDAP_F( int )
-ldap_parse_extended_partial LDAP_P((
+ldap_parse_intermediate LDAP_P((
        LDAP                    *ld,
        LDAPMessage             *res,
        char                    **retoidp,
@@ -709,14 +697,6 @@ ldap_parse_extended_partial LDAP_P((
        LDAPControl             ***serverctrls,
        int                             freeit ));
 
-LDAP_F( int )
-ldap_parse_intermediate_resp_result LDAP_P((
-       LDAP                    *ld,
-       LDAPMessage             *res,
-       char                    **retoidp,
-       struct berval   **retdatap,
-       int                             freeit ));
-
 /*
  * in abandon.c:
  */
@@ -1150,7 +1130,6 @@ ldap_count_messages LDAP_P((
        LDAP *ld,
        LDAPMessage *chain ));
 
-
 /*
  * in references.c:
  */
@@ -1229,15 +1208,18 @@ typedef struct ldap_ava {
        struct berval la_attr;
        struct berval la_value;
        unsigned la_flags;
-#define LDAP_AVA_STRING                                0x0000U
-#define LDAP_AVA_BINARY                                0x0001U
-#define LDAP_AVA_NONPRINTABLE          0x0002U
+#define LDAP_AVA_NULL                          0x0000U
+#define LDAP_AVA_STRING                                0x0001U
+#define LDAP_AVA_BINARY                                0x0002U
+#define LDAP_AVA_NONPRINTABLE          0x0004U
+#define LDAP_AVA_FREE_ATTR             0x0010U
+#define LDAP_AVA_FREE_VALUE            0x0020U
 
        void *la_private;
 } LDAPAVA;
 
 typedef LDAPAVA** LDAPRDN;
-typedef LDAPRDN** LDAPDN;
+typedef LDAPRDN* LDAPDN;
 
 /* DN formats */
 #define LDAP_DN_FORMAT_LDAP                    0x0000U
@@ -1256,57 +1238,56 @@ typedef LDAPRDN** LDAPDN;
 #define LDAP_DN_P_NOSPACEAFTERRDN      0x2000U
 #define LDAP_DN_PEDANTIC                       0xF000U
 
-LDAP_F( void ) ldap_avafree LDAP_P(( LDAPAVA *ava ));
-LDAP_F( void ) ldap_rdnfree LDAP_P(( LDAPRDN *rdn ));
-LDAP_F( void ) ldap_dnfree LDAP_P(( LDAPDN *dn ));
+LDAP_F( void ) ldap_rdnfree LDAP_P(( LDAPRDN rdn ));
+LDAP_F( void ) ldap_dnfree LDAP_P(( LDAPDN dn ));
 
 LDAP_F( int )
 ldap_bv2dn LDAP_P(( 
        struct berval *bv, 
-       LDAPDN **dn, 
+       LDAPDN *dn, 
        unsigned flags ));
 
 LDAP_F( int )
 ldap_str2dn LDAP_P((
        LDAP_CONST char *str,
-       LDAPDN **dn,
+       LDAPDN *dn,
        unsigned flags ));
 
 LDAP_F( int )
 ldap_dn2bv LDAP_P((
-       LDAPDN *dn,
+       LDAPDN dn,
        struct berval *bv,
        unsigned flags ));
 
 LDAP_F( int )
 ldap_dn2str LDAP_P((
-       LDAPDN *dn,
+       LDAPDN dn,
        char **str,
        unsigned flags ));
 
 LDAP_F( int )
 ldap_bv2rdn LDAP_P((
        struct berval *bv,
-       LDAPRDN **rdn,
+       LDAPRDN *rdn,
        char **next,
        unsigned flags ));
 
 LDAP_F( int )
 ldap_str2rdn LDAP_P((
        LDAP_CONST char *str,
-       LDAPRDN **rdn,
+       LDAPRDN *rdn,
        char **next,
        unsigned flags ));
 
 LDAP_F( int )
 ldap_rdn2bv LDAP_P((
-       LDAPRDN *rdn,
+       LDAPRDN rdn,
        struct berval *bv,
        unsigned flags ));
 
 LDAP_F( int )
 ldap_rdn2str LDAP_P((
-       LDAPRDN *rdn,
+       LDAPRDN rdn,
        char **str,
        unsigned flags ));
 
@@ -1329,7 +1310,7 @@ ldap_explode_rdn LDAP_P(( /* deprecated */
        LDAP_CONST char *rdn,
        int notypes ));
 
-typedef int LDAPDN_rewrite_func LDAP_P(( LDAPDN *dn, unsigned flags ));
+typedef int LDAPDN_rewrite_func LDAP_P(( LDAPDN dn, unsigned flags, void *ctx ));
 
 LDAP_F( int )
 ldap_X509dn2bv LDAP_P(( void *x509_name, struct berval *dn,
@@ -1707,5 +1688,34 @@ ldap_whoami_s LDAP_P((
        LDAPControl **sctrls,
        LDAPControl **cctrls ));
 
+/*
+ * in passwd.c
+ */
+
+LDAP_F( int )
+ldap_parse_passwd LDAP_P((
+       LDAP *ld,
+       LDAPMessage *res,
+       struct berval *newpasswd ));
+
+LDAP_F( int )
+ldap_passwd LDAP_P(( LDAP *ld,
+       struct berval   *user,
+       struct berval   *oldpw,
+       struct berval   *newpw,
+       LDAPControl             **sctrls,
+       LDAPControl             **cctrls,
+       int                             *msgidp ));
+
+LDAP_F( int )
+ldap_passwd_s LDAP_P((
+       LDAP *ld,
+       struct berval   *user,
+       struct berval   *oldpw,
+       struct berval   *newpw,
+       struct berval *newpasswd,
+       LDAPControl **sctrls,
+       LDAPControl **cctrls ));
+
 LDAP_END_DECL
 #endif /* _LDAP_H */