Source code
Revision control
Copy as Markdown
Other Tools
PR_GetSpecialFD
===============
Gets the file descriptor that represents the standard input, output, or
error stream.
Syntax
------
.. code::
#include <prio.h>
PRFileDesc* PR_GetSpecialFD(PRSpecialFD id);
Parameter
~~~~~~~~~
The function has the following parameter:
``id``
A pointer to an enumerator of type ``PRSpecialFD``, indicating the
type of I/O stream desired: ``PR_StandardInput``,
``PR_StandardOutput``, or ``PR_StandardError``.
Returns
~~~~~~~
If the ``id`` parameter is valid, :ref:`PR_GetSpecialFD` returns a file
descriptor that represents the corresponding standard I/O stream.
Otherwise, :ref:`PR_GetSpecialFD` returns ``NULL`` and sets the error to
``PR_INVALID_ARGUMENT_ERROR``.
Description
-----------
Type ``PRSpecialFD`` is defined as follows:
.. code::
typedef enum PRSpecialFD{
PR_StandardInput,
PR_StandardOutput,
PR_StandardError
} PRSpecialFD;
``#define PR_STDIN PR_GetSpecialFD(PR_StandardInput)``
``#define PR_STDOUT PR_GetSpecialFD(PR_StandardOutput)``
``#define PR_STDERR PR_GetSpecialFD(PR_StandardError)``
File descriptors returned by :ref:`PR_GetSpecialFD` are owned by the
runtime and should not be closed by the caller.