Skip to content
Snippets Groups Projects
Commit c4b68d3e authored by Matt Ezell's avatar Matt Ezell Committed by Brian Christiansen
Browse files

Refactor function to return early

In preparation for next commit.

Bug 5680
parent 8458a75b
No related branches found
No related tags found
No related merge requests found
......@@ -844,37 +844,35 @@ static void _pty_restore(void)
static void _setup_env_working_cluster(void)
{
char *working_env = NULL;
char *working_env, *addr_ptr, *port_ptr, *rpc_ptr;
if ((working_env = xstrdup(getenv("SLURM_WORKING_CLUSTER")))) {
char *addr_ptr, *port_ptr, *rpc_ptr;
if ((working_env = xstrdup(getenv("SLURM_WORKING_CLUSTER"))) == NULL)
return;
if (!(addr_ptr = strchr(working_env, ':')) ||
!(port_ptr = strchr(addr_ptr + 1, ':')) ||
!(rpc_ptr = strchr(port_ptr + 1, ':'))) {
error("malformed cluster addr and port in SLURM_WORKING_CLUSTER env var: '%s'",
working_env);
exit(1);
}
/* Format is cluster_name:address:port:rpc[:plugin_id_select] */
if (!(addr_ptr = strchr(working_env, ':')) ||
!(port_ptr = strchr(addr_ptr + 1, ':')) ||
!(rpc_ptr = strchr(port_ptr + 1, ':'))) {
error("malformed cluster addr and port in SLURM_WORKING_CLUSTER env var: '%s'",
working_env);
exit(1);
}
*addr_ptr++ = '\0';
*port_ptr++ = '\0';
*rpc_ptr++ = '\0';
if (xstrcmp(slurmctld_conf.cluster_name, working_env)) {
working_cluster_rec =
xmalloc(sizeof(slurmdb_cluster_rec_t));
slurmdb_init_cluster_rec(working_cluster_rec, false);
working_cluster_rec->control_host = xstrdup(addr_ptr);;
working_cluster_rec->control_port = strtol(port_ptr,
NULL, 10);
working_cluster_rec->rpc_version = strtol(rpc_ptr,
NULL, 10);
slurm_set_addr(&working_cluster_rec->control_addr,
working_cluster_rec->control_port,
working_cluster_rec->control_host);
}
xfree(working_env);
*addr_ptr++ = '\0';
*port_ptr++ = '\0';
*rpc_ptr++ = '\0';
if (xstrcmp(slurmctld_conf.cluster_name, working_env)) {
working_cluster_rec = xmalloc(sizeof(slurmdb_cluster_rec_t));
slurmdb_init_cluster_rec(working_cluster_rec, false);
working_cluster_rec->name = xstrdup(working_env);
working_cluster_rec->control_host = xstrdup(addr_ptr);
working_cluster_rec->control_port = strtol(port_ptr, NULL, 10);
working_cluster_rec->rpc_version = strtol(rpc_ptr, NULL, 10);
slurm_set_addr(&working_cluster_rec->control_addr,
working_cluster_rec->control_port,
working_cluster_rec->control_host);
}
xfree(working_env);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment