[Cluster-devel] [PATCH 08/41] cman_tool: don't use envp from main
Fabio M. Di Nitto
fdinitto at redhat.com
Wed Nov 23 10:15:27 UTC 2011
according to wikipedia it is a microsoft extensions. Use __environ
directly from unistd.h
Spotted by Coverity Scan
Signed-off-by: Fabio M. Di Nitto <fdinitto at redhat.com>
---
:100644 100644 60091c9... 6c5744e... M cman/cman_tool/cman_tool.h
:100644 100644 872528b... b92090c... M cman/cman_tool/join.c
:100644 100644 a336c42... 6d8a1eb... M cman/cman_tool/main.c
cman/cman_tool/cman_tool.h | 3 +--
cman/cman_tool/join.c | 13 +++++++------
cman/cman_tool/main.c | 10 +++++-----
3 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/cman/cman_tool/cman_tool.h b/cman/cman_tool/cman_tool.h
index 60091c9..6c5744e 100644
--- a/cman/cman_tool/cman_tool.h
+++ b/cman/cman_tool/cman_tool.h
@@ -19,7 +19,6 @@
#include <fcntl.h>
#include <netdb.h>
#include <limits.h>
-#include <unistd.h>
extern char *prog_name;
@@ -105,6 +104,6 @@ struct commandline
};
typedef struct commandline commandline_t;
-int join(commandline_t *comline, char *envp[]);
+int join(commandline_t *comline);
#endif /* __CMAN_TOOL_DOT_H__ */
diff --git a/cman/cman_tool/join.c b/cman/cman_tool/join.c
index 872528b..b92090c 100644
--- a/cman/cman_tool/join.c
+++ b/cman/cman_tool/join.c
@@ -1,4 +1,5 @@
#include <errno.h>
+#include <unistd.h>
#include <sys/wait.h>
#include <stdint.h>
#include <signal.h>
@@ -119,7 +120,7 @@ static int check_corosync_status(pid_t pid)
return status;
}
-int join(commandline_t *comline, char *main_envp[])
+int join(commandline_t *comline)
{
int i, err;
int envptr = 0;
@@ -205,9 +206,9 @@ int join(commandline_t *comline, char *main_envp[])
/* Copy any COROSYNC_* env variables to the new daemon */
i=0;
- while (i < MAX_ARGS && main_envp[i]) {
- if (strncmp(main_envp[i], "COROSYNC_", 9) == 0)
- envp[envptr++] = main_envp[i];
+ while (i < MAX_ARGS && __environ[i]) {
+ if (strncmp(__environ[i], "COROSYNC_", 9) == 0)
+ envp[envptr++] = __environ[i];
i++;
}
@@ -363,7 +364,7 @@ int join(commandline_t *comline, char *main_envp[])
res = confdb_object_create(confdb_handle, OBJECT_PARENT_HANDLE, "cman_private", strlen("cman_private"), &object_handle);
if (res == CS_OK) {
int envnum = 0;
- const char *envvar = main_envp[envnum];
+ const char *envvar = __environ[envnum];
const char *equal;
char envname[PATH_MAX];
@@ -381,7 +382,7 @@ int join(commandline_t *comline, char *main_envp[])
}
}
}
- envvar = main_envp[++envnum];
+ envvar = __environ[++envnum];
}
}
res = confdb_key_create_typed(confdb_handle, object_handle,
diff --git a/cman/cman_tool/main.c b/cman/cman_tool/main.c
index a336c42..6d8a1eb 100644
--- a/cman/cman_tool/main.c
+++ b/cman/cman_tool/main.c
@@ -1190,7 +1190,7 @@ static void check_arguments(commandline_t *comline)
}
-static void do_join(commandline_t *comline, char *envp[])
+static void do_join(commandline_t *comline)
{
int ret;
@@ -1212,18 +1212,18 @@ static void do_join(commandline_t *comline, char *envp[])
die("Not joining, configuration is not valid\n");
}
- join(comline, envp);
+ join(comline);
if (comline->wait_opt || comline->wait_quorate_opt) {
do {
ret = cluster_wait(comline);
if (ret == ENOTCONN)
- join(comline, envp);
+ join(comline);
} while (ret == ENOTCONN);
}
}
-int main(int argc, char *argv[], char *envp[])
+int main(int argc, char *argv[])
{
commandline_t comline;
@@ -1235,7 +1235,7 @@ int main(int argc, char *argv[], char *envp[])
switch (comline.operation) {
case OP_JOIN:
- do_join(&comline, envp);
+ do_join(&comline);
break;
case OP_LEAVE:
--
1.7.4.4
More information about the Cluster-devel
mailing list