Source code

Revision control

Copy as Markdown

Other Tools

# PR_Read
Reads bytes from a file or socket.
## Syntax
```{code}
#include <prio.h>
PRInt32 PR_Read(PRFileDesc *fd,
void *buf,
PRInt32 amount);
```
### Parameters
The function has the following parameters:
`fd`
: A pointer to a {ref}`PRFileDesc` object for the file or socket.
`buf`
: A pointer to a buffer to hold the data read in. On output, the buffer
contains the data.
`amount`
: The size of `buf` (in bytes).
### Returns
One of the following values:
- A positive number indicates the number of bytes actually read in.
- The value 0 means end of file is reached or the network connection is
closed.
- The value -1 indicates a failure. To get the reason for the failure,
call {ref}`PR_GetError`.
## Description
The thread invoking {ref}`PR_Read` blocks until it encounters an
end-of-stream indication, some positive number of bytes (but no more
than `amount` bytes) are read in, or an error occurs.