summaryrefslogtreecommitdiff
path: root/librpc
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2021-08-18 06:21:52 +0200
committerJeremy Allison <jra@samba.org>2021-08-24 17:32:28 +0000
commit9857c562568a718bb14ba49c644db9181aa7110e (patch)
tree08cc16c748a183cf9bb87f875167f6940173b404 /librpc
parent0cddd3f2d66b3fb3af73d42df6c4d42aff7863d7 (diff)
downloadsamba-9857c562568a718bb14ba49c644db9181aa7110e.tar.gz
librpc: Simplify GUID_hexstring()
A temporary talloc context seems unnecessary to me. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'librpc')
-rw-r--r--librpc/ndr/uuid.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/librpc/ndr/uuid.c b/librpc/ndr/uuid.c
index f7753a85f1a..6a8d31e065f 100644
--- a/librpc/ndr/uuid.c
+++ b/librpc/ndr/uuid.c
@@ -230,23 +230,15 @@ _PUBLIC_ char *GUID_string2(TALLOC_CTX *mem_ctx, const struct GUID *guid)
_PUBLIC_ char *GUID_hexstring(TALLOC_CTX *mem_ctx, const struct GUID *guid)
{
- char *ret;
- DATA_BLOB guid_blob;
- TALLOC_CTX *tmp_mem;
+ char *ret = NULL;
+ DATA_BLOB guid_blob = { .data = NULL };
NTSTATUS status;
- tmp_mem = talloc_new(mem_ctx);
- if (!tmp_mem) {
- return NULL;
+ status = GUID_to_ndr_blob(guid, mem_ctx, &guid_blob);
+ if (NT_STATUS_IS_OK(status)) {
+ ret = data_blob_hex_string_upper(mem_ctx, &guid_blob);
}
- status = GUID_to_ndr_blob(guid, tmp_mem, &guid_blob);
- if (!NT_STATUS_IS_OK(status)) {
- talloc_free(tmp_mem);
- return NULL;
- }
-
- ret = data_blob_hex_string_upper(mem_ctx, &guid_blob);
- talloc_free(tmp_mem);
+ TALLOC_FREE(guid_blob.data);
return ret;
}