mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-29 18:19:30 +00:00
Clean up and ensure proper usage of alloca()
This replaces all calls to alloca() with ast_alloca() which calls gcc's __builtin_alloca() to avoid BSD semantics and removes all NULL checks on memory allocated via ast_alloca() and ast_strdupa(). (closes issue ASTERISK-20125) Review: https://reviewboard.asterisk.org/r/2032/ Patch-by: Walter Doekes (wdoekes) ........ Merged revisions 370642 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 370643 from http://svn.asterisk.org/svn/asterisk/branches/10 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@370655 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -118,7 +118,7 @@ static void CB_ADD(struct ast_str **cb, const char *str)
|
||||
|
||||
static void CB_ADD_LEN(struct ast_str **cb, const char *str, int len)
|
||||
{
|
||||
char *s = alloca(len + 1);
|
||||
char *s = ast_alloca(len + 1);
|
||||
ast_copy_string(s, str, len);
|
||||
ast_str_append(cb, 0, "%s", str);
|
||||
}
|
||||
@@ -3099,7 +3099,7 @@ static char *handle_cli_config_reload(struct ast_cli_entry *e, int cmd, struct a
|
||||
AST_LIST_LOCK(&cfmtime_head);
|
||||
AST_LIST_TRAVERSE(&cfmtime_head, cfmtime, list) {
|
||||
if (!strcmp(cfmtime->filename, a->argv[2])) {
|
||||
char *buf = alloca(strlen("module reload ") + strlen(cfmtime->who_asked) + 1);
|
||||
char *buf = ast_alloca(strlen("module reload ") + strlen(cfmtime->who_asked) + 1);
|
||||
sprintf(buf, "module reload %s", cfmtime->who_asked);
|
||||
ast_cli_command(a->fd, buf);
|
||||
}
|
||||
|
Reference in New Issue
Block a user