fi\_errno(3) #VERSION# fi\_errno(3)

# [NAME](#NAME)

fi\_errno - fabric errors

fi\_strerror - Convert fabric error into a printable string

# [SYNOPSIS](#SYNOPSIS)

```
#include <rdma/fi_errno.h>
const char *fi_strerror(int errno);
    
```

# [ERRORS](#ERRORS)

[*FI\_ENOENT*](#FI_ENOENT)

No such file or directory.

[*FI\_EIO*](#FI_EIO)

I/O error

[*FI\_E2BIG*](#FI_E2BIG)

Argument list too long.

[*FI\_EBADF*](#FI_EBADF)

Bad file number.

[*FI\_EAGAIN*](#FI_EAGAIN)

Try again.

[*FI\_ENOMEM*](#FI_ENOMEM)

Out of memory.

[*FI\_EACCES*](#FI_EACCES)

Permission denied.

[*FI\_EBUSY*](#FI_EBUSY)

Device or resource busy

[*FI\_ENODEV*](#FI_ENODEV)

No such device

[*FI\_EINVAL*](#FI_EINVAL)

Invalid argument

[*FI\_EMFILE*](#FI_EMFILE)

Too many open files

[*FI\_ENOSPC*](#FI_ENOSPC)

No space left on device

[*FI\_ENOSYS*](#FI_ENOSYS)

Function not implemented

[*FI\_EWOULDBLOCK*](#FI_EWOULDBLOCK)

Operation would block

[*FI\_ENOMSG*](#FI_ENOMSG)

No message of desired type

[*FI\_ENODATA*](#FI_ENODATA)

No data available

[*FI\_EOVERFLOW*](#FI_EOVERFLOW)

Value too large for defined data type

[*FI\_EMSGSIZE*](#FI_EMSGSIZE)

Message too long

[*FI\_ENOPROTOOPT*](#FI_ENOPROTOOPT)

Protocol not available

[*FI\_EOPNOTSUPP*](#FI_EOPNOTSUPP)

Operation not supported on transport endpoint

[*FI\_EADDRINUSE*](#FI_EADDRINUSE)

Address already in use

[*FI\_EADDRNOTAVAIL*](#FI_EADDRNOTAVAIL)

Cannot assign requested address

[*FI\_ENETDOWN*](#FI_ENETDOWN)

Network is down

[*FI\_ENETUNREACH*](#FI_ENETUNREACH)

Network is unreachable

[*FI\_ECONNABORTED*](#FI_ECONNABORTED)

Software caused connection abort

[*FI\_ECONNRESET*](#FI_ECONNRESET)

Connection reset by peer

[*FI\_ENOBUFS*](#FI_ENOBUFS)

No buffer space available

[*FI\_EISCONN*](#FI_EISCONN)

Transport endpoint is already connected

[*FI\_ENOTCONN*](#FI_ENOTCONN)

Transport endpoint is not connected

[*FI\_ESHUTDOWN*](#FI_ESHUTDOWN)

Cannot send after transport endpoint shutdown

[*FI\_ETIMEDOUT*](#FI_ETIMEDOUT)

Operation timed out

[*FI\_ECONNREFUSED*](#FI_ECONNREFUSED)

Connection refused

[*FI\_EHOSTDOWN*](#FI_EHOSTDOWN)

Host is down

[*FI\_EHOSTUNREACH*](#FI_EHOSTUNREACH)

No route to host

[*FI\_EALREADY*](#FI_EALREADY)

Operation already in progress

[*FI\_EINPROGRESS*](#FI_EINPROGRESS)

Operation now in progress

[*FI\_EREMOTEIO*](#FI_EREMOTEIO)

Remote I/O error

[*FI\_ECANCELED*](#FI_ECANCELED)

Operation Canceled

[*FI\_ENOKEY*](#FI_ENOKEY)

Required key not available

[*FI\_EKEYREJECTED*](#FI_EKEYREJECTED)

Key was rejected by service

[*FI\_EOTHER*](#FI_EOTHER)

Unspecified error

[*FI\_ETOOSMALL*](#FI_ETOOSMALL)

Provided buffer is too small

[*FI\_EOPBADSTATE*](#FI_EOPBADSTATE)

Operation not permitted in current state

[*FI\_EAVAIL*](#FI_EAVAIL)

Error available

[*FI\_EBADFLAGS*](#FI_EBADFLAGS)

Flags not supported

[*FI\_ENOEQ*](#FI_ENOEQ)

Missing or unavailable event queue

[*FI\_EDOMAIN*](#FI_EDOMAIN)

Invalid resource domain

[*FI\_ENOCQ*](#FI_ENOCQ)

Missing or unavailable completion queue

[*FI\_ECRC*](#FI_ECRC)

CRC error

[*FI\_ETRUNC*](#FI_ETRUNC)

Truncation error

[*FI\_ENOKEY*](#FI_ENOKEY~2)

Required key not available

[*FI\_ENOAV*](#FI_ENOAV)

Missing or unavailable address vector

[*FI\_EOVERRUN*](#FI_EOVERRUN)

Queue has been overrun

[*FI\_ENORX*](#FI_ENORX)

Receiver not ready, no receive buffers available

[*FI\_ENOMR*](#FI_ENOMR)

Memory registration limit exceeded

[*FI\_EFIREWALLADDR*](#FI_EFIREWALLADDR)

Host address unreachable due to firewall

# [SEE ALSO](#SEE_ALSO)

[fabric(7)](/man/enterprise-packages/libfabric/fabric.7)

# [AUTHORS](#AUTHORS)

OpenFabrics.

2025-04-09 Libfabric Programmer’s Manual

---

Document: fi_strerror(3) from libfabric 2.7.0-r1 (Chainguard OS)
Source: https://github.com/ofiwg/libfabric
