47 lines
955 B
Markdown
47 lines
955 B
Markdown
# 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.
|