summaryrefslogtreecommitdiff
path: root/source4/librpc/ndr
diff options
context:
space:
mode:
Diffstat (limited to 'source4/librpc/ndr')
-rw-r--r--source4/librpc/ndr/ndr_drsuapi.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/source4/librpc/ndr/ndr_drsuapi.c b/source4/librpc/ndr/ndr_drsuapi.c
index cb022d2ad3..064b50a9cd 100644
--- a/source4/librpc/ndr/ndr_drsuapi.c
+++ b/source4/librpc/ndr/ndr_drsuapi.c
@@ -92,7 +92,7 @@ enum ndr_err_code ndr_push_drsuapi_DsReplicaOID(struct ndr_push *ndr, int ndr_fl
DATA_BLOB blob;
if (strncasecmp("ff", r->oid, 2) == 0) {
- blob = strhex_to_data_blob(r->oid);
+ blob = strhex_to_data_blob(ndr, r->oid);
if (!blob.data) {
return ndr_push_error(ndr, NDR_ERR_SUBCONTEXT,
"HEX String Conversion Error: %s\n",
@@ -101,7 +101,6 @@ enum ndr_err_code ndr_push_drsuapi_DsReplicaOID(struct ndr_push *ndr, int ndr_fl
} else {
_OID_PUSH_CHECK(ber_write_OID_String(&blob, r->oid));
}
- talloc_steal(ndr, blob.data);
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, blob.length));
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, blob.data, blob.length));
@@ -165,7 +164,7 @@ size_t ndr_size_drsuapi_DsReplicaOID_oid(const char *oid, int flags)
if (!oid) return 0;
if (strncasecmp("ff", oid, 2) == 0) {
- _blob = strhex_to_data_blob(oid);
+ _blob = strhex_to_data_blob(NULL, oid);
if (_blob.data) {
ret = _blob.length;
}