fix: memory leaks, resource leaks, out of bounds and bugs

ASTERISK-26119 #close

Change-Id: Iecbf7d0f360a021147344c4e83ab242fd1e7512c
This commit is contained in:
Alexei Gradinari
2016-06-17 14:51:57 -04:00
parent 947f76a971
commit 820ed3d4b3
6 changed files with 74 additions and 25 deletions

View File

@@ -410,10 +410,13 @@ static int load_file(const char *filename, char **ret)
fseek(f, 0, SEEK_END);
len = ftell(f);
fseek(f, 0, SEEK_SET);
if (!(*ret = ast_malloc(len + 1)))
if (!(*ret = ast_malloc(len + 1))) {
fclose(f);
return -2;
}
if (len != fread(*ret, sizeof(char), len, f)) {
fclose(f);
ast_free(*ret);
*ret = NULL;
return -3;