21.2.129. PMIx_Info_relayed
PMIx_Info_relayed — Mark a pmix_info_t(5)
as an identity being relayed for the process that made a request.
21.2.129.1. SYNOPSIS
#include <pmix.h>
void PMIx_Info_relayed(pmix_info_t *p);
21.2.129.1.1. Python Syntax
No Python equivalent
21.2.129.2. INPUT PARAMETERS
p: Pointer to the pmix_info_t(5) structure to be marked as relayed.
21.2.129.3. DESCRIPTION
The PMIx_Info_relayed function sets the PMIX_INFO_RELAYED directive bit
in the info structure’s flags field.
It is meant for a PMIX_USERID or PMIX_GRPID that a PMIx server is passing
on for someone else. When a server’s host relays a request - forwarding what one
of its own clients or tools asked for to another server - the PMIX_USERID
and PMIX_GRPID it was handed are those of the process that made the request.
The server where that request entered set them from what it authenticated. The
host marks them as relayed when it passes them on. The receiving server keeps
them, still marked, rather than replacing them with the relaying process’s own
identity - so the operation is attributed to the process that asked for it.
The mark is honored only when a PMIx server library sends it: any other process’s library clears it, so a process that is not a server speaks only for itself. It has no meaning on any other attribute.
Whether an info is marked as relayed can be tested with PMIx_Info_is_relayed(3).
21.2.129.4. RETURN VALUE
PMIx_Info_relayed returns no value (void).
21.2.129.5. NOTES
A server that does not know the mark - one from an older release - replaces the
values as usual, so the relayed request is attributed to the relaying process.
The PMIX_CAP_INFO_RELAYED capability flag says the library supports it.