diff options
author | Jeremy Allison <jra@samba.org> | 2004-12-07 18:25:53 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:53:32 -0500 |
commit | 620f2e608f70ba92f032720c031283d295c5c06a (patch) | |
tree | ec3dd5fcf29eaa98a26ddeae3acb7a89fd0e0fb8 /source/web | |
parent | 12440744ba36445186042c8c254785766cce5385 (diff) | |
download | samba-620f2e608f70ba92f032720c031283d295c5c06a.tar.gz samba-620f2e608f70ba92f032720c031283d295c5c06a.tar.xz samba-620f2e608f70ba92f032720c031283d295c5c06a.zip |
r4088: Get medieval on our ass about malloc.... :-). Take control of all our allocation
functions so we can funnel through some well known functions. Should help greatly with
malloc checking.
HEAD patch to follow.
Jeremy.
Diffstat (limited to 'source/web')
-rw-r--r-- | source/web/cgi.c | 20 | ||||
-rw-r--r-- | source/web/neg_lang.c | 4 | ||||
-rw-r--r-- | source/web/statuspage.c | 4 |
3 files changed, 14 insertions, 14 deletions
diff --git a/source/web/cgi.c b/source/web/cgi.c index cf309c364e2..937e603f8cd 100644 --- a/source/web/cgi.c +++ b/source/web/cgi.c @@ -59,7 +59,7 @@ static char *grab_line(FILE *f, int *cl) char *ret2; if (len == 0) len = 1024; else len *= 2; - ret2 = (char *)Realloc(ret, len); + ret2 = (char *)SMB_REALLOC(ret, len); if (!ret2) return ret; ret = ret2; } @@ -135,8 +135,8 @@ void cgi_load_variables(void) *p = 0; - variables[num_variables].name = strdup(line); - variables[num_variables].value = strdup(p+1); + variables[num_variables].name = SMB_STRDUP(line); + variables[num_variables].value = SMB_STRDUP(p+1); SAFE_FREE(line); @@ -170,8 +170,8 @@ void cgi_load_variables(void) *p = 0; - variables[num_variables].name = strdup(tok); - variables[num_variables].value = strdup(p+1); + variables[num_variables].name = SMB_STRDUP(tok); + variables[num_variables].value = SMB_STRDUP(p+1); if (!variables[num_variables].name || !variables[num_variables].value) @@ -205,13 +205,13 @@ void cgi_load_variables(void) variables[i].name, -1, dest, sizeof(dest), True); free(variables[i].name); - variables[i].name = strdup(dest); + variables[i].name = SMB_STRDUP(dest); convert_string(CH_UTF8, CH_UNIX, variables[i].value, -1, dest, sizeof(dest), True); free(variables[i].value); - variables[i].value = strdup(dest); + variables[i].value = SMB_STRDUP(dest); } } @@ -366,7 +366,7 @@ static BOOL cgi_handle_authorization(char *line) become_user_permanently(pass->pw_uid, pass->pw_gid); /* Save the users name */ - C_user = strdup(user); + C_user = SMB_STRDUP(user); passwd_free(&pass); return True; } @@ -530,11 +530,11 @@ void cgi_setup(const char *rootdir, int auth_required) if (line[0] == '\r' || line[0] == '\n') break; if (strnequal(line,"GET ", 4)) { got_request = True; - url = strdup(&line[4]); + url = SMB_STRDUP(&line[4]); } else if (strnequal(line,"POST ", 5)) { got_request = True; request_post = 1; - url = strdup(&line[5]); + url = SMB_STRDUP(&line[5]); } else if (strnequal(line,"PUT ", 4)) { got_request = True; cgi_setup_error("400 Bad Request", "", diff --git a/source/web/neg_lang.c b/source/web/neg_lang.c index aa285745d6c..ca671822d87 100644 --- a/source/web/neg_lang.c +++ b/source/web/neg_lang.c @@ -85,7 +85,7 @@ void web_set_lang(const char *lang_string) count++; lang_num++; } - pl = (struct pri_list *)malloc(sizeof(struct pri_list) * lang_num); + pl = SMB_MALLOC_ARRAY(struct pri_list, lang_num); for (i = 0; i < lang_num; i++) { char *pri_code; if ((pri_code=strstr(lang_list[i], ";q="))) { @@ -95,7 +95,7 @@ void web_set_lang(const char *lang_string) } else { pl[i].pri = 1; } - pl[i].string = strdup(lang_list[i]); + pl[i].string = SMB_STRDUP(lang_list[i]); } str_list_free(&lang_list); diff --git a/source/web/statuspage.c b/source/web/statuspage.c index 953222c2fc1..57b5d0f7b73 100644 --- a/source/web/statuspage.c +++ b/source/web/statuspage.c @@ -61,14 +61,14 @@ static void addPid2Machine (pid_t pid, char *machine) if (PID_or_Machine) { PIDMAP *newmap; - if ((newmap = (PIDMAP *) malloc (sizeof (PIDMAP))) == NULL) { + if ((newmap = SMB_MALLOC_P(PIDMAP)) == NULL) { /* XXX need error message for this? if malloc fails, PID is always shown */ return; } newmap->pid = pid; - newmap->machine = strdup (machine); + newmap->machine = SMB_STRDUP(machine); DLIST_ADD(pidmap, newmap); } |