unshare argument buffers

This commit is contained in:
Andreas Steffen
2007-04-19 14:26:11 +00:00
parent b7ade11b16
commit 7ef4be2cb1
+4 -5
View File
@@ -100,6 +100,7 @@ starter_start_charon (starter_config_t *cfg, bool debug)
{ {
int pid, i; int pid, i;
struct stat stb; struct stat stb;
char buffer[BUF_LEN], buffer1[BUF_LEN];
int argc = 1; int argc = 1;
char *arg[] = { char *arg[] = {
CHARON_CMD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, CHARON_CMD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
@@ -122,11 +123,9 @@ starter_start_charon (starter_config_t *cfg, bool debug)
} }
if (cfg->setup.crlcheckinterval > 0) if (cfg->setup.crlcheckinterval > 0)
{ {
char buffer[BUF_LEN]; snprintf(buffer1, BUF_LEN, "%u", cfg->setup.crlcheckinterval);
snprintf(buffer, BUF_LEN, "%u", cfg->setup.crlcheckinterval);
arg[argc++] = "--crlcheckinterval"; arg[argc++] = "--crlcheckinterval";
arg[argc++] = buffer; arg[argc++] = buffer1;
} }
if (cfg->setup.eapdir) if (cfg->setup.eapdir)
{ {
@@ -135,7 +134,7 @@ starter_start_charon (starter_config_t *cfg, bool debug)
} }
{ /* parse debug string */ { /* parse debug string */
char *pos, *level, *buf_pos, type[4], buffer[BUF_LEN]; char *pos, *level, *buf_pos, type[4];
pos = cfg->setup.charondebug; pos = cfg->setup.charondebug;
buf_pos = buffer; buf_pos = buffer;
while (pos && sscanf(pos, "%4s %d,", type, &level) == 2) while (pos && sscanf(pos, "%4s %d,", type, &level) == 2)