summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ipa-client/ipa-join.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/ipa-client/ipa-join.c b/ipa-client/ipa-join.c
index 16d8604e7..217ebce1e 100644
--- a/ipa-client/ipa-join.c
+++ b/ipa-client/ipa-join.c
@@ -134,9 +134,12 @@ callRPC(xmlrpc_env * const envP,
struct xmlrpc_curl_xportparms * curlXportParmsP = NULL;
xmlrpc_client * clientP = NULL;
+ memset(&clientparms, 0, sizeof(clientparms));
+
XMLRPC_ASSERT(xmlrpc_value_type(paramArrayP) == XMLRPC_TYPE_ARRAY);
curlXportParmsP = malloc(sizeof(*curlXportParmsP));
+ memset(curlXportParmsP, 0, sizeof(*curlXportParmsP));
/* Have curl do SSL certificate validation */
curlXportParmsP->no_ssl_verifypeer = 1;
@@ -148,7 +151,7 @@ callRPC(xmlrpc_env * const envP,
curlXportParmsP;
clientparms.transportparm_size = XMLRPC_CXPSIZE(cainfo);
xmlrpc_client_create(envP, XMLRPC_CLIENT_NO_FLAGS, NAME, VERSION,
- &clientparms, XMLRPC_CPSIZE(transportparm_size),
+ &clientparms, sizeof(clientparms),
&clientP);
/* Set up kerberos negotiate authentication in curl. */
@@ -585,7 +588,6 @@ join(const char *server, const char *hostname, const char *bindpw, const char *k
int status = 0;
char *ipaserver = NULL;
char *iparealm = NULL;
- char * conf_data = NULL;
const char * princ = NULL;
const char * subject = NULL;
const char * hostdn = NULL;
@@ -598,18 +600,14 @@ join(const char *server, const char *hostname, const char *bindpw, const char *k
if (server) {
ipaserver = strdup(server);
- } else if ((ipaserver = getIPAserver(conf_data)) == NULL) {
- conf_data = read_config_file(IPA_CONFIG);
- fprintf(stderr, "Unable to determine IPA server from %s\n", IPA_CONFIG);
- exit(1);
- }
-#if 0
- if ((iparealm = getIPArealm(conf_data)) == NULL) {
- fprintf(stderr, "Unable to determine IPA realm from %s\n", IPA_CONFIG);
- exit(1);
+ } else {
+ char * conf_data = read_config_file(IPA_CONFIG);
+ if ((ipaserver = getIPAserver(conf_data)) == NULL) {
+ fprintf(stderr, "Unable to determine IPA server from %s\n", IPA_CONFIG);
+ exit(1);
+ }
+ free(conf_data);
}
-#endif
- free(conf_data);
if (NULL == hostname) {
uname(&uinfo);