Skip to content

Commit cf79874

Browse files
authored
Merge pull request #2250 from rhc54/topic/attrs
Update attribute support tables
2 parents 5f10eba + a9e52be commit cf79874

File tree

5 files changed

+210
-38
lines changed

5 files changed

+210
-38
lines changed

src/client/pmix_client.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -863,7 +863,8 @@ PMIX_EXPORT pmix_status_t PMIx_Init(pmix_proc_t *proc, pmix_info_t info[], size_
863863
}
864864

865865
/* store our server's ID */
866-
if (NULL != pmix_client_globals.myserver && NULL != pmix_client_globals.myserver->info) {
866+
if (NULL != pmix_client_globals.myserver &&
867+
NULL != pmix_client_globals.myserver->info) {
867868
kptr = PMIX_NEW(pmix_kval_t);
868869
kptr->key = strdup(PMIX_SERVER_NSPACE);
869870
PMIX_VALUE_CREATE(kptr->value, 1);

src/common/pmix_attributes.c

Lines changed: 161 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -137,8 +137,37 @@ PMIX_EXPORT void pmix_release_registered_attrs(void)
137137
* manually maintain the list */
138138
static pmix_attr_init_t client_fns[] = {
139139
{.function = "PMIx_Init",
140-
.attrs = (char *[]){"PMIX_GDS_MODULE", "PMIX_EVENT_BASE", "PMIX_HOSTNAME", "PMIX_NODEID",
141-
"PMIX_DEBUG_STOP_IN_INIT", NULL}},
140+
.attrs = (char *[]){"PMIX_GDS_MODULE",
141+
"PMIX_EVENT_BASE",
142+
"PMIX_HOSTNAME",
143+
"PMIX_NODEID",
144+
"PMIX_PROGRAMMING_MODEL",
145+
"PMIX_MODEL_LIBRARY_NAME",
146+
"PMIX_MODEL_LIBRARY_VERSION",
147+
"PMIX_THREADING_MODEL",
148+
"PMIX_NODE_INFO_ARRAY",
149+
"PMIX_EXTERNAL_PROGRESS",
150+
"PMIX_HOSTNAME_KEEP_FQDN",
151+
"PMIX_TOPOLOGY2",
152+
"PMIX_SERVER_URI",
153+
"PMIX_DEBUG_STOP_IN_INIT",
154+
"PMIX_IOF_TAG_OUTPUT",
155+
"PMIX_TAG_OUTPUT",
156+
"PMIX_IOF_RANK_OUTPUT",
157+
"PMIX_IOF_TIMESTAMP_OUTPUT",
158+
"PMIX_TIMESTAMP_OUTPUT",
159+
"PMIX_IOF_XML_OUTPUT",
160+
"PMIX_IOF_OUTPUT_TO_FILE",
161+
"PMIX_OUTPUT_TO_FILE",
162+
"PMIX_IOF_OUTPUT_TO_DIRECTORY",
163+
"PMIX_OUTPUT_TO_DIRECTORY",
164+
"PMIX_IOF_FILE_ONLY",
165+
"PMIX_OUTPUT_NOCOPY",
166+
"PMIX_IOF_MERGE_STDERR_STDOUT",
167+
"PMIX_MERGE_STDERR_STDOUT",
168+
"PMIX_IOF_LOCAL_OUTPUT",
169+
"PMIX_IOF_FILE_PATTERN",
170+
NULL}},
142171
{.function = "PMIx_Finalize", .attrs = (char *[]){"PMIX_EMBED_BARRIER", NULL}},
143172
{.function = "PMIx_Initialized", .attrs = (char *[]){"N/A", NULL}},
144173
{.function = "PMIx_Abort", .attrs = (char *[]){"N/A", NULL}},
@@ -148,11 +177,27 @@ static pmix_attr_init_t client_fns[] = {
148177
{.function = "PMIx_Fence", .attrs = (char *[]){"NONE", NULL}},
149178
{.function = "PMIx_Fence_nb", .attrs = (char *[]){"NONE", NULL}},
150179
{.function = "PMIx_Get",
151-
.attrs = (char *[]){"PMIX_NODE_INFO", "PMIX_HOSTNAME", "PMIX_NODEID", "PMIX_APP_INFO",
152-
"PMIX_APPNUM", "PMIX_SESSION_INFO", "PMIX_GET_REFRESH_CACHE", NULL}},
180+
.attrs = (char *[]){"PMIX_NODE_INFO",
181+
"PMIX_HOSTNAME",
182+
"PMIX_NODEID",
183+
"PMIX_APP_INFO",
184+
"PMIX_APPNUM",
185+
"PMIX_SESSION_INFO",
186+
"PMIX_GET_REFRESH_CACHE",
187+
"PMIX_OPTIONAL",
188+
"PMIX_DATA_SCOPE",
189+
NULL}},
153190
{.function = "PMIx_Get_nb",
154-
.attrs = (char *[]){"PMIX_NODE_INFO", "PMIX_HOSTNAME", "PMIX_NODEID", "PMIX_APP_INFO",
155-
"PMIX_APPNUM", "PMIX_SESSION_INFO", "PMIX_GET_REFRESH_CACHE", NULL}},
191+
.attrs = (char *[]){"PMIX_NODE_INFO",
192+
"PMIX_HOSTNAME",
193+
"PMIX_NODEID",
194+
"PMIX_APP_INFO",
195+
"PMIX_APPNUM",
196+
"PMIX_SESSION_INFO",
197+
"PMIX_GET_REFRESH_CACHE",
198+
"PMIX_OPTIONAL",
199+
"PMIX_DATA_SCOPE",
200+
NULL}},
156201
{.function = "PMIx_Publish", .attrs = (char *[]){"NONE", NULL}},
157202
{.function = "PMIx_Publish_nb", .attrs = (char *[]){"NONE", NULL}},
158203
{.function = "PMIx_Lookup", .attrs = (char *[]){"NONE", NULL}},
@@ -168,15 +213,19 @@ static pmix_attr_init_t client_fns[] = {
168213
{.function = "PMIx_Resolve_peers", .attrs = (char *[]){"N/A", NULL}},
169214
{.function = "PMIx_Resolve_nodes", .attrs = (char *[]){"N/A", NULL}},
170215
{.function = "PMIx_Query_info",
171-
.attrs = (char *[]){"PMIX_QUERY_SUPPORTED_KEYS", "PMIX_QUERY_NAMESPACES",
172-
"PMIX_QUERY_ATTRIBUTE_SUPPORT", "PMIX_QUERY_AVAIL_SERVERS",
173-
"PMIX_QUERY_REFRESH_CACHE", "PMIX_QUERY_SUPPORTED_KEYS",
174-
"PMIX_QUERY_SUPPORTED_QUALIFIERS", "PMIX_TIME_REMAINING", NULL}},
216+
.attrs = (char *[]){"PMIX_QUERY_ATTRIBUTE_SUPPORT",
217+
"PMIX_QUERY_AVAIL_SERVERS",
218+
"PMIX_QUERY_REFRESH_CACHE",
219+
"PMIX_QUERY_SUPPORTED_KEYS",
220+
"PMIX_QUERY_SUPPORTED_QUALIFIERS",
221+
NULL}},
175222
{.function = "PMIx_Query_info_nb",
176-
.attrs = (char *[]){"PMIX_QUERY_SUPPORTED_KEYS", "PMIX_QUERY_NAMESPACES",
177-
"PMIX_QUERY_ATTRIBUTE_SUPPORT", "PMIX_QUERY_AVAIL_SERVERS",
178-
"PMIX_QUERY_REFRESH_CACHE", "PMIX_QUERY_SUPPORTED_KEYS",
179-
"PMIX_QUERY_SUPPORTED_QUALIFIERS", "PMIX_TIME_REMAINING", NULL}},
223+
.attrs = (char *[]){"PMIX_QUERY_ATTRIBUTE_SUPPORT",
224+
"PMIX_QUERY_AVAIL_SERVERS",
225+
"PMIX_QUERY_REFRESH_CACHE",
226+
"PMIX_QUERY_SUPPORTED_KEYS",
227+
"PMIX_QUERY_SUPPORTED_QUALIFIERS",
228+
NULL}},
180229
{.function = "PMIx_Log",
181230
.attrs = (char *[]){"PMIX_LOG_GENERATE_TIMESTAMP", "PMIX_LOG_SOURCE", NULL}},
182231
{.function = "PMIx_Log_nb",
@@ -202,16 +251,28 @@ static pmix_attr_init_t client_fns[] = {
202251
{.function = "PMIx_Group_destruct", .attrs = (char *[]){"NONE", NULL}},
203252
{.function = "PMIx_Group_destruct_nb", .attrs = (char *[]){"NONE", NULL}},
204253
{.function = "PMIx_Register_event_handler",
205-
.attrs = (char *[]){"PMIX_EVENT_HDLR_FIRST", "PMIX_EVENT_HDLR_LAST", "PMIX_EVENT_HDLR_PREPEND",
206-
"PMIX_EVENT_HDLR_APPEND", "PMIX_EVENT_HDLR_NAME",
207-
"PMIX_EVENT_RETURN_OBJECT", "PMIX_EVENT_HDLR_FIRST_IN_CATEGORY",
208-
"PMIX_EVENT_HDLR_LAST_IN_CATEGORY", "PMIX_EVENT_HDLR_BEFORE",
209-
"PMIX_EVENT_HDLR_AFTER", "PMIX_RANGE", "PMIX_EVENT_CUSTOM_RANGE",
210-
"PMIX_EVENT_AFFECTED_PROC", "PMIX_EVENT_AFFECTED_PROCS", NULL}},
254+
.attrs = (char *[]){"PMIX_EVENT_HDLR_FIRST",
255+
"PMIX_EVENT_HDLR_LAST",
256+
"PMIX_EVENT_HDLR_PREPEND",
257+
"PMIX_EVENT_HDLR_APPEND",
258+
"PMIX_EVENT_HDLR_NAME",
259+
"PMIX_EVENT_RETURN_OBJECT",
260+
"PMIX_EVENT_HDLR_FIRST_IN_CATEGORY",
261+
"PMIX_EVENT_HDLR_LAST_IN_CATEGORY",
262+
"PMIX_EVENT_HDLR_BEFORE",
263+
"PMIX_EVENT_HDLR_AFTER",
264+
"PMIX_RANGE",
265+
"PMIX_EVENT_CUSTOM_RANGE",
266+
"PMIX_EVENT_AFFECTED_PROC",
267+
"PMIX_EVENT_AFFECTED_PROCS",
268+
NULL}},
211269
{.function = "PMIx_Deregister_event_handler", .attrs = (char *[]){"N/A", NULL}},
212270
{.function = "PMIx_Notify_event",
213-
.attrs = (char *[]){"PMIX_EVENT_NON_DEFAULT", "PMIX_EVENT_CUSTOM_RANGE",
214-
"PMIX_EVENT_AFFECTED_PROC", "PMIX_EVENT_AFFECTED_PROCS", NULL}},
271+
.attrs = (char *[]){"PMIX_EVENT_NON_DEFAULT",
272+
"PMIX_EVENT_CUSTOM_RANGE",
273+
"PMIX_EVENT_AFFECTED_PROC",
274+
"PMIX_EVENT_AFFECTED_PROCS",
275+
NULL}},
215276
{.function = "PMIx_Error_string", .attrs = (char *[]){"N/A", NULL}},
216277
{.function = "PMIx_Proc_state_string", .attrs = (char *[]){"N/A", NULL}},
217278
{.function = "PMIx_Scope_string", .attrs = (char *[]){"N/A", NULL}},
@@ -263,11 +324,16 @@ static pmix_attr_init_t server_fns[] = {
263324
"PMIX_SYSTEM_TMPDIR",
264325
"PMIX_SERVER_NSPACE",
265326
"PMIX_SERVER_RANK",
327+
"PMIX_SERVER_SHARE_TOPOLOGY",
328+
"PMIX_TOPOLOGY2",
329+
"PMIX_TOPOLOGY",
330+
"PMIX_IOF_LOCAL_OUTPUT",
266331
"PMIX_GDS_MODULE",
267332
"PMIX_EVENT_BASE",
268333
"PMIX_HOSTNAME",
269334
"PMIX_NODEID",
270335
"PMIX_TCP_IF_INCLUDE",
336+
"PMIX_TCP_IF_EXCLUDE",
271337
"PMIX_TCP_IPV4_PORT",
272338
"PMIX_TCP_IPV6_PORT",
273339
"PMIX_TCP_DISABLE_IPV4",
@@ -279,7 +345,23 @@ static pmix_attr_init_t server_fns[] = {
279345
"PMIX_SERVER_TOOL_SUPPORT",
280346
"PMIX_LAUNCHER_RENDEZVOUS_FILE",
281347
"PMIX_SERVER_ENABLE_MONITORING",
282-
NULL}},
348+
"PMIX_IOF_TAG_OUTPUT",
349+
"PMIX_TAG_OUTPUT",
350+
"PMIX_IOF_RANK_OUTPUT",
351+
"PMIX_IOF_TIMESTAMP_OUTPUT",
352+
"PMIX_TIMESTAMP_OUTPUT",
353+
"PMIX_IOF_XML_OUTPUT",
354+
"PMIX_IOF_OUTPUT_TO_FILE",
355+
"PMIX_OUTPUT_TO_FILE",
356+
"PMIX_IOF_OUTPUT_TO_DIRECTORY",
357+
"PMIX_OUTPUT_TO_DIRECTORY",
358+
"PMIX_IOF_FILE_ONLY",
359+
"PMIX_OUTPUT_NOCOPY",
360+
"PMIX_IOF_MERGE_STDERR_STDOUT",
361+
"PMIX_MERGE_STDERR_STDOUT",
362+
"PMIX_IOF_LOCAL_OUTPUT",
363+
"PMIX_IOF_FILE_PATTERN",
364+
NULL}},
283365
{.function = "PMIx_server_finalize", .attrs = (char *[]){"NONE", NULL}},
284366
{.function = "PMIx_generate_regex", .attrs = (char *[]){"N/A", NULL}},
285367
{.function = "PMIx_generate_ppn", .attrs = (char *[]){"N/A", NULL}},
@@ -290,25 +372,37 @@ static pmix_attr_init_t server_fns[] = {
290372
{.function = "PMIx_server_setup_fork", .attrs = (char *[]){"N/A", NULL}},
291373
{.function = "PMIx_server_dmodex_request", .attrs = (char *[]){"N/A", NULL}},
292374
{.function = "PMIx_server_setup_application",
293-
.attrs = (char *[]){"PMIX_SETUP_APP_ENVARS", "PMIX_SETUP_APP_ALL", "PMIX_SETUP_APP_NONENVARS",
294-
"PMIX_ALLOC_FABRIC", "PMIX_ALLOC_FABRIC_SEC_KEY", "PMIX_ALLOC_FABRIC_ID",
295-
"PMIX_ALLOC_FABRIC_TYPE", "PMIX_ALLOC_FABRIC_PLANE",
296-
"PMIX_ALLOC_FABRIC_ENDPTS", NULL}},
375+
.attrs = (char *[]){"PMIX_SETUP_APP_ENVARS",
376+
"PMIX_SETUP_APP_ALL",
377+
"PMIX_SETUP_APP_NONENVARS",
378+
"PMIX_ALLOC_FABRIC",
379+
"PMIX_ALLOC_FABRIC_SEC_KEY",
380+
"PMIX_ALLOC_FABRIC_ID",
381+
"PMIX_ALLOC_FABRIC_TYPE",
382+
"PMIX_ALLOC_FABRIC_PLANE",
383+
"PMIX_ALLOC_FABRIC_ENDPTS",
384+
NULL}},
297385
{.function = "PMIx_server_setup_local_support", .attrs = (char *[]){"NONE", NULL}},
298386
{.function = "PMIx_server_IOF_deliver", .attrs = (char *[]){"NONE", NULL}},
299387
{.function = "PMIx_server_collect_inventory", .attrs = (char *[]){"NONE", NULL}},
300388
{.function = "PMIx_server_deliver_inventory", .attrs = (char *[]){"NONE", NULL}},
301389
{.function = "PMIx_Register_attributes", .attrs = (char *[]){"N/A", NULL}},
302390
{.function = "PMIx_server_register_fabric",
303-
.attrs = (char *[]){"PMIX_FABRIC_PLANE", "PMIX_FABRIC_IDENTIFIER", "PMIX_FABRIC_VENDOR",
391+
.attrs = (char *[]){"PMIX_FABRIC_PLANE",
392+
"PMIX_FABRIC_IDENTIFIER",
393+
"PMIX_FABRIC_VENDOR",
304394
NULL}},
305395
{.function = "PMIx_server_update_fabric", .attrs = (char *[]){"N/A", NULL}},
306396
{.function = "PMIx_server_deregister_fabric", .attrs = (char *[]){"N/A", NULL}},
307397
{.function = "PMIx_server_get_vertex_info", .attrs = (char *[]){"N/A", NULL}},
308398
{.function = "PMIx_server_get_index",
309-
.attrs = (char *[]){"PMIX_HOSTNAME", "PMIX_NODEID", "PMIX_FABRIC_DEVICE_NAME",
310-
"PMIX_FABRIC_DEVICE_VENDOR", "PMIX_FABRIC_DEVICE_BUS_TYPE",
311-
"PMIX_FABRIC_DEVICE_PCI_DEVID", NULL}},
399+
.attrs = (char *[]){"PMIX_HOSTNAME",
400+
"PMIX_NODEID",
401+
"PMIX_FABRIC_DEVICE_NAME",
402+
"PMIX_FABRIC_DEVICE_VENDOR",
403+
"PMIX_FABRIC_DEVICE_BUS_TYPE",
404+
"PMIX_FABRIC_DEVICE_PCI_DEVID",
405+
NULL}},
312406
{.function = ""}};
313407

314408
/***** REGISTER SERVER ATTRS *****/
@@ -341,6 +435,7 @@ static pmix_attr_init_t tool_fns[]
341435
"PMIX_HOSTNAME",
342436
"PMIX_NODEID",
343437
"PMIX_TOOL_DO_NOT_CONNECT",
438+
"PMIX_DEBUG_STOP_IN_INIT",
344439
"PMIX_TOOL_NSPACE",
345440
"PMIX_TOOL_RANK",
346441
"PMIX_FWD_STDIN",
@@ -357,17 +452,47 @@ static pmix_attr_init_t tool_fns[]
357452
"PMIX_SERVER_PIDINFO",
358453
"PMIX_SERVER_NSPACE",
359454
"PMIX_SERVER_URI",
455+
"PMIX_TCP_IF_INCLUDE",
456+
"PMIX_TCP_IF_EXCLUDE",
457+
"PMIX_TCP_IPV4_PORT",
458+
"PMIX_TCP_IPV6_PORT",
459+
"PMIX_TCP_DISABLE_IPV4",
460+
"PMIX_TCP_DISABLE_IPV6",
461+
"PMIX_IOF_TAG_OUTPUT",
462+
"PMIX_TAG_OUTPUT",
463+
"PMIX_IOF_RANK_OUTPUT",
464+
"PMIX_IOF_TIMESTAMP_OUTPUT",
465+
"PMIX_TIMESTAMP_OUTPUT",
466+
"PMIX_IOF_XML_OUTPUT",
467+
"PMIX_IOF_OUTPUT_TO_FILE",
468+
"PMIX_OUTPUT_TO_FILE",
469+
"PMIX_IOF_OUTPUT_TO_DIRECTORY",
470+
"PMIX_OUTPUT_TO_DIRECTORY",
471+
"PMIX_IOF_FILE_ONLY",
472+
"PMIX_OUTPUT_NOCOPY",
473+
"PMIX_IOF_MERGE_STDERR_STDOUT",
474+
"PMIX_MERGE_STDERR_STDOUT",
475+
"PMIX_IOF_LOCAL_OUTPUT",
476+
"PMIX_IOF_FILE_PATTERN",
360477
NULL}},
361478
{.function = "PMIx_tool_finalize", .attrs = (char *[]){"N/A", NULL}},
362479
{.function = "PMIx_tool_connect_to_server",
363-
.attrs = (char *[]){"PMIX_CONNECT_TO_SYSTEM", "PMIX_CONNECT_SYSTEM_FIRST",
364-
"PMIX_SERVER_PIDINFO", "PMIX_SERVER_NSPACE", "PMIX_SERVER_URI",
365-
"PMIX_CONNECT_RETRY_DELAY", "PMIX_CONNECT_MAX_RETRIES",
366-
"PMIX_RECONNECT_SERVER", "PMIX_TOOL_ATTACHMENT_FILE", NULL}},
480+
.attrs = (char *[]){"PMIX_CONNECT_TO_SYSTEM",
481+
"PMIX_CONNECT_SYSTEM_FIRST",
482+
"PMIX_SERVER_PIDINFO",
483+
"PMIX_SERVER_NSPACE",
484+
"PMIX_SERVER_URI",
485+
"PMIX_CONNECT_RETRY_DELAY",
486+
"PMIX_CONNECT_MAX_RETRIES",
487+
"PMIX_RECONNECT_SERVER",
488+
"PMIX_TOOL_ATTACHMENT_FILE",
489+
NULL}},
367490
{.function = "PMIx_IOF_pull", .attrs = (char *[]){"NONE", NULL}},
368491
{.function = "PMIx_IOF_deregister", .attrs = (char *[]){"NONE", NULL}},
369492
{.function = "PMIx_IOF_push",
370-
.attrs = (char *[]){"PMIX_IOF_PUSH_STDIN", "PMIX_IOF_COMPLETE", NULL}},
493+
.attrs = (char *[]){"PMIX_IOF_PUSH_STDIN",
494+
"PMIX_IOF_COMPLETE",
495+
NULL}},
371496
{.function = ""}};
372497

373498
/***** REGISTER TOOL ATTRS *****/

src/mca/ptl/client/ptl_client.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,10 @@
6767

6868
static pmix_status_t connect_to_peer(struct pmix_peer_t *peer, pmix_info_t *info, size_t ninfo);
6969

70-
pmix_ptl_module_t pmix_ptl_client_module = {.name = "client", .connect_to_peer = connect_to_peer};
70+
pmix_ptl_module_t pmix_ptl_client_module = {
71+
.name = "client",
72+
.connect_to_peer = connect_to_peer
73+
};
7174

7275
static pmix_status_t connect_to_peer(struct pmix_peer_t *pr, pmix_info_t *info, size_t ninfo)
7376
{

src/mca/ptl/server/ptl_server.c

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include "src/include/pmix_config.h"
2828
#include "src/include/pmix_globals.h"
2929

30+
#include "src/util/show_help.h"
3031
#include "ptl_server.h"
3132
#include "src/mca/ptl/base/base.h"
3233

@@ -51,9 +52,27 @@ static pmix_status_t setup_listener(pmix_info_t info[], size_t ninfo)
5152
pmix_ptl_base.tool_support = PMIX_INFO_TRUE(&info[n]);
5253
} else if (PMIX_CHECK_KEY(&info[n], PMIX_SERVER_REMOTE_CONNECTIONS)) {
5354
pmix_ptl_base.remote_connections = PMIX_INFO_TRUE(&info[n]);
55+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IF_INCLUDE)) {
56+
pmix_ptl_base.if_include = strdup(info[n].value.data.string);
57+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IF_EXCLUDE)) {
58+
pmix_ptl_base.if_exclude = strdup(info[n].value.data.string);
59+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IPV4_PORT)) {
60+
pmix_ptl_base.ipv4_port = info[n].value.data.integer;
61+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IPV6_PORT)) {
62+
pmix_ptl_base.ipv6_port = info[n].value.data.integer;
63+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_DISABLE_IPV4)) {
64+
pmix_ptl_base.disable_ipv4_family = PMIX_INFO_TRUE(&info[n]);
65+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_DISABLE_IPV6)) {
66+
pmix_ptl_base.disable_ipv6_family = PMIX_INFO_TRUE(&info[n]);
5467
}
5568
}
5669

70+
if (NULL != pmix_ptl_base.if_include && NULL != pmix_ptl_base.if_exclude) {
71+
pmix_show_help("help-ptl-base.txt", "include-exclude", true, pmix_ptl_base.if_include,
72+
pmix_ptl_base.if_exclude);
73+
return PMIX_ERR_SILENT;
74+
}
75+
5776
rc = pmix_ptl_base_setup_listener();
5877
return rc;
5978
}

src/mca/ptl/tool/ptl_tool.c

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include "src/include/pmix_config.h"
2828
#include "src/include/pmix_globals.h"
2929

30+
#include "src/util/show_help.h"
3031
#include "ptl_tool.h"
3132
#include "src/mca/ptl/base/base.h"
3233

@@ -42,6 +43,29 @@ static pmix_status_t setup_listener(pmix_info_t info[], size_t ninfo)
4243
pmix_status_t rc;
4344
char **clnup = NULL, *cptr = NULL;
4445
pmix_info_t dir;
46+
size_t n;
47+
48+
for (n = 0; n < ninfo; n++) {
49+
if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IF_INCLUDE)) {
50+
pmix_ptl_base.if_include = strdup(info[n].value.data.string);
51+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IF_EXCLUDE)) {
52+
pmix_ptl_base.if_exclude = strdup(info[n].value.data.string);
53+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IPV4_PORT)) {
54+
pmix_ptl_base.ipv4_port = info[n].value.data.integer;
55+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_IPV6_PORT)) {
56+
pmix_ptl_base.ipv6_port = info[n].value.data.integer;
57+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_DISABLE_IPV4)) {
58+
pmix_ptl_base.disable_ipv4_family = PMIX_INFO_TRUE(&info[n]);
59+
} else if (PMIX_CHECK_KEY(&info[n], PMIX_TCP_DISABLE_IPV6)) {
60+
pmix_ptl_base.disable_ipv6_family = PMIX_INFO_TRUE(&info[n]);
61+
}
62+
}
63+
64+
if (NULL != pmix_ptl_base.if_include && NULL != pmix_ptl_base.if_exclude) {
65+
pmix_show_help("help-ptl-base.txt", "include-exclude", true, pmix_ptl_base.if_include,
66+
pmix_ptl_base.if_exclude);
67+
return PMIX_ERR_SILENT;
68+
}
4569

4670
rc = pmix_ptl_base_setup_listener();
4771
if (PMIX_SUCCESS != rc) {

0 commit comments

Comments
 (0)