]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-mdb/tools.c
ITS#7906 better fix
[openldap] / servers / slapd / back-mdb / tools.c
index 2ad65fb57c265444f494caaa2246f3e063043ca5..0839d56784ed1571c669a3d58f0ccaaf2f795971 100644 (file)
@@ -2,7 +2,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 2011-2013 The OpenLDAP Foundation.
+ * Copyright 2011-2014 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -396,7 +396,7 @@ mdb_tool_entry_get_int( BackendDB *be, ID id, Entry **ep )
                        }
                }
        }
-       rc = mdb_entry_decode( &op, &data, &e );
+       rc = mdb_entry_decode( &op, txn, &data, &e );
        e->e_id = id;
        if ( !BER_BVISNULL( &dn )) {
                e->e_name = dn;
@@ -1421,7 +1421,7 @@ mdb_dn2id_upgrade( BackendDB *be ) {
                if (dkids > 1) {
                        rc = mdb_cursor_get(mc, &key, &data, MDB_NEXT_DUP);
 down:
-                       ptr = data.mv_data + data.mv_size - sizeof(ID);
+                       ptr = (unsigned char *)data.mv_data + data.mv_size - sizeof(ID);
                        memcpy(&id, ptr, sizeof(ID));
                        depth++;
                        memcpy(stack[depth].rdn, data.mv_data, data.mv_size);
@@ -1447,7 +1447,7 @@ pop:
                        goto leave;
                }
                data.mv_data = stack[depth].rdn;
-               ptr = data.mv_data + data.mv_size;
+               ptr = (unsigned char *)data.mv_data + data.mv_size;
                memcpy(ptr, &num[depth], sizeof(ID));
                data.mv_size += sizeof(ID);
                rc = mdb_cursor_del(mc, 0);