r26638: libndr: Require explicitly specifying iconv_convenience for ndr_struct_push_b...
[ira/wip.git] / source4 / dsdb / repl / replicated_objects.c
index c47108559de28a8d259e815c2a03ab131a44d815..8aff1340a5a7513ca0c5a8186b51c64bd527df25 100644 (file)
@@ -28,6 +28,7 @@
 #include "librpc/gen_ndr/ndr_drsblobs.h"
 #include "lib/crypto/crypto.h"
 #include "libcli/auth/libcli_auth.h"
+#include "param/param.h"
 
 static WERROR dsdb_decrypt_attribute_value(TALLOC_CTX *mem_ctx,
                                           const DATA_BLOB *gensec_skey,
@@ -322,7 +323,9 @@ static WERROR dsdb_convert_object(struct ldb_context *ldb,
        whenChanged_s = ldb_timestring(msg, whenChanged_t);
        W_ERROR_HAVE_NO_MEMORY(whenChanged_s);
 
-       ndr_err = ndr_push_struct_blob(&guid_value, msg, &in->object.identifier->guid,
+       ndr_err = ndr_push_struct_blob(&guid_value, msg, 
+                                      lp_iconv_convenience(ldb_get_opaque(ldb, "loadparm")),
+                                      &in->object.identifier->guid,
                                         (ndr_push_flags_fn_t)ndr_push_GUID);
        if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
                nt_status = ndr_map_error2ntstatus(ndr_err);