From f1ca068666c5e002e789df2655e3c3bca1970e98 Mon Sep 17 00:00:00 2001 From: Cole Robinson Date: Wed, 5 Nov 2008 18:22:10 +0000 Subject: [PATCH] Move local argvToString to virArgvToString in util. --- ChangeLog | 5 +++++ src/iptables.c | 28 +--------------------------- src/util.c | 27 +++++++++++++++++++++++++++ src/util.h | 2 ++ 4 files changed, 35 insertions(+), 27 deletions(-) diff --git a/ChangeLog b/ChangeLog index 723fcafdf2..c268d90f6d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Nov 5 13:19:00 EST 2008 Cole Robinson + + * src/iptables.c, src/util.c, src/util.h: Move local argvToString to + virArgvToString. + Wed Nov 5 15:22:12 CET 2008 Jim Meyering plug two leaks and fix a diagnostic diff --git a/src/iptables.c b/src/iptables.c index 726141a88f..53e0f4130e 100644 --- a/src/iptables.c +++ b/src/iptables.c @@ -384,32 +384,6 @@ iptRulesNew(const char *table, return NULL; } -static char * -argvToString(const char *const *argv) -{ - int len, i; - char *ret, *p; - - for (len = 1, i = 0; argv[i]; i++) - len += strlen(argv[i]) + 1; - - if (VIR_ALLOC_N(ret, len) < 0) - return NULL; - p = ret; - - for (i = 0; argv[i]; i++) { - if (i != 0) - *(p++) = ' '; - - strcpy(p, argv[i]); - p += strlen(argv[i]); - } - - *p = '\0'; - - return ret; -} - static int iptablesAddRemoveRule(iptRules *rules, int action, const char *arg, ...) { @@ -464,7 +438,7 @@ iptablesAddRemoveRule(iptRules *rules, int action, const char *arg, ...) va_end(args); - if (!(rule = argvToString(&argv[command_idx]))) + if (!(rule = virArgvToString(&argv[command_idx]))) goto error; if (action == REMOVE) { diff --git a/src/util.c b/src/util.c index a750100c21..61ad6033a9 100644 --- a/src/util.c +++ b/src/util.c @@ -87,6 +87,33 @@ int virFileStripSuffix(char *str, return 1; } +char * +virArgvToString(const char *const *argv) +{ + int len, i; + char *ret, *p; + + for (len = 1, i = 0; argv[i]; i++) + len += strlen(argv[i]) + 1; + + if (VIR_ALLOC_N(ret, len) < 0) + return NULL; + p = ret; + + for (i = 0; argv[i]; i++) { + if (i != 0) + *(p++) = ' '; + + strcpy(p, argv[i]); + p += strlen(argv[i]); + } + + *p = '\0'; + + return ret; +} + + #ifndef __MINGW32__ static int virSetCloseExec(int fd) { diff --git a/src/util.h b/src/util.h index 689da60207..21e9ad3545 100644 --- a/src/util.h +++ b/src/util.h @@ -88,6 +88,8 @@ int virFileReadPid(const char *dir, int virFileDeletePid(const char *dir, const char *name); +char *virArgvToString(const char *const *argv); + int __virStrToLong_i(char const *s, char **end_ptr, int base,