From 178e1adffbcfe02d70e9def261e8c95f6e3bc8fe Mon Sep 17 00:00:00 2001
From: Scott Griepentrog <scott@griepentrog.com>
Date: Mon, 17 Aug 2015 11:00:53 -0500
Subject: [PATCH] CHAOS: prevent sorcery object with null id

When allocating a sorcery object, fail if the
id value was not allocated.

ASTERISK-25323
Reported by: Scott Griepentrog

Change-Id: I152133fb7545a4efcf7a0080ada77332d038669e
---
 main/sorcery.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/main/sorcery.c b/main/sorcery.c
index 6d24b1486d..f9f7c38733 100644
--- a/main/sorcery.c
+++ b/main/sorcery.c
@@ -1739,6 +1739,10 @@ void *ast_sorcery_alloc(const struct ast_sorcery *sorcery, const char *type, con
 	} else {
 		details->object->id = ast_strdup(id);
 	}
+	if (!details->object->id) {
+		ao2_ref(details, -1);
+		return NULL;
+	}
 
 	details->object->created = ast_tvnow();
 	ast_copy_string(details->object->type, type, sizeof(details->object->type));
-- 
GitLab