From feb524931ea21d0a4389db96fc5c92cbc16fa8fb Mon Sep 17 00:00:00 2001 From: Wilco Baan Hofman Date: Sun, 5 Aug 2012 02:45:04 +0200 Subject: [PATCH] Fix memory management in jsonbot.c --- jsonbot.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/jsonbot.c b/jsonbot.c index 1833688..8e39d7a 100644 --- a/jsonbot.c +++ b/jsonbot.c @@ -39,12 +39,15 @@ STATUS jsonbot_notify(TALLOC_CTX *mem_ctx, dbi_conn conn, const char *prom, cons outtext = talloc_asprintf(mem_ctx, "%s %s Event at prom %s: %s: %s: %s -- %s\n", conf->jsonbot_password, conf->jsonbot_privmsg_to, prom, description, code, sia_code_str(code), sia_code_desc(code)); + NO_MEM_RETURN(outtext); msglen = (strlen(outtext) + 1) + (16 - ((strlen(outtext) + 1) % 16)); - msgbuf = talloc_zero_array(mem_ctx, uint8_t, msglen + 1); - msgbuf_crypted = talloc_array(mem_ctx, uint8_t, msglen + 1); + msgbuf = talloc_zero_array(outtext, uint8_t, msglen + 1); + NO_MEM_RETURN(msgbuf); + msgbuf_crypted = talloc_array(outtext, uint8_t, msglen + 1); + NO_MEM_RETURN(msgbuf_crypted); memcpy(msgbuf, outtext, strlen(outtext)); @@ -70,5 +73,7 @@ STATUS jsonbot_notify(TALLOC_CTX *mem_ctx, dbi_conn conn, const char *prom, cons return ST_GENERAL_FAILURE; } + talloc_free(outtext); + return ST_OK; }