The Open Group Base Specifications Issue 7
IEEE Std 1003.1-2008, 2016 Edition
Copyright © 2001-2016 The IEEE and The Open Group

#### NAME

> aio_error - retrieve errors status for an asynchronous I/O operation

#### SYNOPSIS

> ``#include <aio.h>
> int aio_error(const struct aiocb *`aiocbp`);
> ``

#### DESCRIPTION

> The aio_error() function shall return the error status associated with the aiocb structure referenced by the aiocbp argument. The error status for an asynchronous I/O operation is the errno value that would be set by the corresponding read(), write(), [SIO] fdatasync(), or fsync() operation. If the operation has not yet completed, then the error status shall be equal to [EINPROGRESS].

> If the aiocb structure pointed to by aiocbp is not associated with an operation that has been scheduled, the results are undefined.

#### RETURN VALUE

> If the asynchronous I/O operation has completed successfully, then 0 shall be returned. If the asynchronous operation has completed unsuccessfully, then the error status, as described for read(), write(), [SIO] fdatasync(), and fsync(), shall be returned. If the asynchronous I/O operation has not yet completed, then [EINPROGRESS] shall be returned.

> If the aio_error() function fails, it shall return -1 and set errno to indicate the error.

#### ERRORS

> The aio_error() function may fail if:

> [EINVAL]
>   The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved.

The following sections are informative.

#### EXAMPLES

> None.

#### APPLICATION USAGE

> None.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> aio_cancel, aio_fsync, aio_read, aio_return, aio_write, close, exec, exit, fork, lio_listio, lseek, read

> XBD <aio.h>

#### CHANGE HISTORY

> First released in Issue 5. Included for alignment with the POSIX Realtime Extension.

#### Issue 6

> The [ENOSYS] error condition has been removed as stubs need not be provided if an implementation does not support the Asynchronous Input and Output option.

> The APPLICATION USAGE section is added.

#### Issue 7

> Austin Group Interpretation 1003.1-2001 #045 is applied.

> SD5-XSH-ERN-148 is applied.

> The aio_error() function is moved from the Asynchronous Input and Output option to the Base.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2016 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]