From 8b3e039c715657d7dbc569098acb288f420b82e1 Mon Sep 17 00:00:00 2001 From: William King Date: Wed, 7 May 2014 00:44:54 -0700 Subject: [PATCH] CID: 1211948 fix memory leak of decoded iks message in function parse_plain_auth_message in mod_rayo --- src/mod/event_handlers/mod_rayo/sasl.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/mod/event_handlers/mod_rayo/sasl.c b/src/mod/event_handlers/mod_rayo/sasl.c index be794330cd..c93146d13b 100644 --- a/src/mod/event_handlers/mod_rayo/sasl.c +++ b/src/mod/event_handlers/mod_rayo/sasl.c @@ -46,16 +46,16 @@ void parse_plain_auth_message(const char *message, char **authzid, char **authci *authcid = NULL; *password = NULL; if (decoded == NULL) { - return; + goto end; } pos = strlen(decoded) + 1; if (pos >= maxlen) { - return; + goto end; } *authcid = strdup(decoded + pos); pos += strlen(*authcid) + 1; if (pos >= maxlen) { - return; + goto end; } *password = strdup(decoded + pos); if (zstr(decoded)) { @@ -63,7 +63,9 @@ void parse_plain_auth_message(const char *message, char **authzid, char **authci } else { *authzid = strdup(decoded); } - free(decoded); + + end: + switch_safe_free(decoded); } /* For Emacs: