summaryrefslogtreecommitdiff
path: root/lib/ldb
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2017-06-30 12:55:15 +1200
committerStefan Metzmacher <metze@samba.org>2017-07-02 17:35:19 +0200
commit25e580f86e82c41a9380e42ad16d94053abaa8d4 (patch)
tree7bb6dfd028745e44fbcb893861807ee965bec225 /lib/ldb
parent49c45fbb41f30c6a4d532039c811b43c7284e0f6 (diff)
downloadsamba-25e580f86e82c41a9380e42ad16d94053abaa8d4.tar.gz
ldb_pack: use ldb_dn_from_ldb_val() and avoid a duplicate strlen() call
Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'lib/ldb')
-rw-r--r--lib/ldb/common/ldb_pack.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/ldb/common/ldb_pack.c b/lib/ldb/common/ldb_pack.c
index a63dd5840ef..1f1688a6c50 100644
--- a/lib/ldb/common/ldb_pack.c
+++ b/lib/ldb/common/ldb_pack.c
@@ -274,7 +274,10 @@ int ldb_unpack_data_only_attr_list_flags(struct ldb_context *ldb,
if (flags & LDB_UNPACK_DATA_FLAG_NO_DN) {
message->dn = NULL;
} else {
- message->dn = ldb_dn_new(message, ldb, (char *)p);
+ struct ldb_val blob;
+ blob.data = discard_const_p(uint8_t, p);
+ blob.length = dn_len;
+ message->dn = ldb_dn_from_ldb_val(message, ldb, &blob);
if (message->dn == NULL) {
errno = ENOMEM;
goto failed;