]> git.sur5r.net Git - openldap/blobdiff - libraries/libldap/add.c
Changes from HEAD for beta
[openldap] / libraries / libldap / add.c
index d850ba73294aaf0221b48934fdee19548507c988..73018ff44461f072d81d5e5125d4ab3eaa7c47aa 100644 (file)
@@ -1,6 +1,6 @@
 /* $OpenLDAP$ */
 /*
- * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 1998-2003 The OpenLDAP Foundation, All Rights Reserved.
  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
  */
 /*  Portions
@@ -9,6 +9,10 @@
  *
  *  add.c
  */
+/*
+ * Portions Copyright (C) The Internet Society (1997)
+ * ASN.1 fragments are from RFC 2251; see RFC for full legal notices.
+ */
 
 /*
  * An add request looks like this:
@@ -98,8 +102,13 @@ ldap_add_ext(
 {
        BerElement      *ber;
        int             i, rc;
+       ber_int_t       id;
 
-       Debug( LDAP_DEBUG_TRACE, "ldap_add\n", 0, 0, 0 );
+#ifdef NEW_LOGGING
+       LDAP_LOG ( OPERATION, ENTRY, "ldap_add_ext\n", 0, 0, 0 );
+#else
+       Debug( LDAP_DEBUG_TRACE, "ldap_add_ext\n", 0, 0, 0 );
+#endif
        assert( ld != NULL );
        assert( LDAP_VALID( ld ) );
        assert( dn != NULL );
@@ -115,8 +124,9 @@ ldap_add_ext(
                return ld->ld_errno;
        }
 
+       LDAP_NEXT_MSGID(ld, id);
        rc = ber_printf( ber, "{it{s{", /* '}}}' */
-               ++ld->ld_msgid, LDAP_REQ_ADD, dn );
+               id, LDAP_REQ_ADD, dn );
 
        if ( rc == -1 ) {
                ld->ld_errno = LDAP_ENCODING_ERROR;
@@ -159,7 +169,7 @@ ldap_add_ext(
        }
 
        /* send the message */
-       *msgidp = ldap_send_initial_request( ld, LDAP_REQ_ADD, dn, ber );
+       *msgidp = ldap_send_initial_request( ld, LDAP_REQ_ADD, dn, ber, id );
 
        if(*msgidp < 0)
                return ld->ld_errno;