This struct contains utility methods for platform-independent named pipe operations.
static bool bdls::PipeUtil::isOpenForReading |
( |
const bsl::string_view & |
pipeName | ) |
|
|
static |
Return true
if the pipe with the specified UTF-8 pipeName
exists, the calling process has permission to write to it, and some process is able to read the bytes written to it, and false
otherwise. On Windows, this function may block and may write an "empty message", consisting of a single newline. The behavior is undefined unless pipeName
is a valid UTF-8 string. Note that even though a process might have the pipe open for reading, this function might still return false
because there are not sufficient resources available.
Load into the specified pipeName
the system-dependent canonical pipe name corresponding to the specified baseName
. Return 0 on success, and a nonzero value if baseName
cannot be part of a pipe name on this system.
On Unix systems, the canonical name is defined by prefixing baseName
with the directory specified by the SOCKDIR
environment variable if it is set, otherwise with the directory specified by the TMPDIR
environment variable if it is set, and otherwise by the current directory.
On Windows systems, the canonical name is defined by prefixing baseName
with "\\.\pipe\".