
:mod:`errno` --- Standard errno system symbols
==============================================

.. module:: errno
   :synopsis: Standard errno system symbols.


This module makes available standard ``errno`` system symbols. The value of each
symbol is the corresponding integer value. The names and descriptions are
borrowed from :file:`linux/include/errno.h`, which should be pretty
all-inclusive.


.. data:: errorcode

   Dictionary providing a mapping from the errno value to the string name in the
   underlying system.  For instance, ``errno.errorcode[errno.EPERM]`` maps to
   ``'EPERM'``.

To translate a numeric error code to an error message, use :func:`os.strerror`.

Of the following list, symbols that are not used on the current platform are not
defined by the module.  The specific list of defined symbols is available as
``errno.errorcode.keys()``.  Symbols available can include:


.. data:: EPERM

   Operation not permitted


.. data:: ENOENT

   No such file or directory


.. data:: ESRCH

   No such process


.. data:: EINTR

   Interrupted system call


.. data:: EIO

   I/O error


.. data:: ENXIO

   No such device or address


.. data:: E2BIG

   Arg list too long


.. data:: ENOEXEC

   Exec format error


.. data:: EBADF

   Bad file number


.. data:: ECHILD

   No child processes


.. data:: EAGAIN

   Try again


.. data:: ENOMEM

   Out of memory


.. data:: EACCES

   Permission denied


.. data:: EFAULT

   Bad address


.. data:: ENOTBLK

   Block device required


.. data:: EBUSY

   Device or resource busy


.. data:: EEXIST

   File exists


.. data:: EXDEV

   Cross-device link


.. data:: ENODEV

   No such device


.. data:: ENOTDIR

   Not a directory


.. data:: EISDIR

   Is a directory


.. data:: EINVAL

   Invalid argument


.. data:: ENFILE

   File table overflow


.. data:: EMFILE

   Too many open files


.. data:: ENOTTY

   Not a typewriter


.. data:: ETXTBSY

   Text file busy


.. data:: EFBIG

   File too large


.. data:: ENOSPC

   No space left on device


.. data:: ESPIPE

   Illegal seek


.. data:: EROFS

   Read-only file system


.. data:: EMLINK

   Too many links


.. data:: EPIPE

   Broken pipe


.. data:: EDOM

   Math argument out of domain of func


.. data:: ERANGE

   Math result not representable


.. data:: EDEADLK

   Resource deadlock would occur


.. data:: ENAMETOOLONG

   File name too long


.. data:: ENOLCK

   No record locks available


.. data:: ENOSYS

   Function not implemented


.. data:: ENOTEMPTY

   Directory not empty


.. data:: ELOOP

   Too many symbolic links encountered


.. data:: EWOULDBLOCK

   Operation would block


.. data:: ENOMSG

   No message of desired type


.. data:: EIDRM

   Identifier removed


.. data:: ECHRNG

   Channel number out of range


.. data:: EL2NSYNC

   Level 2 not synchronized


.. data:: EL3HLT

   Level 3 halted


.. data:: EL3RST

   Level 3 reset


.. data:: ELNRNG

   Link number out of range


.. data:: EUNATCH

   Protocol driver not attached


.. data:: ENOCSI

   No CSI structure available


.. data:: EL2HLT

   Level 2 halted


.. data:: EBADE

   Invalid exchange


.. data:: EBADR

   Invalid request descriptor


.. data:: EXFULL

   Exchange full


.. data:: ENOANO

   No anode


.. data:: EBADRQC

   Invalid request code


.. data:: EBADSLT

   Invalid slot


.. data:: EDEADLOCK

   File locking deadlock error


.. data:: EBFONT

   Bad font file format


.. data:: ENOSTR

   Device not a stream


.. data:: ENODATA

   No data available


.. data:: ETIME

   Timer expired


.. data:: ENOSR

   Out of streams resources


.. data:: ENONET

   Machine is not on the network


.. data:: ENOPKG

   Package not installed


.. data:: EREMOTE

   Object is remote


.. data:: ENOLINK

   Link has been severed


.. data:: EADV

   Advertise error


.. data:: ESRMNT

   Srmount error


.. data:: ECOMM

   Communication error on send


.. data:: EPROTO

   Protocol error


.. data:: EMULTIHOP

   Multihop attempted


.. data:: EDOTDOT

   RFS specific error


.. data:: EBADMSG

   Not a data message


.. data:: EOVERFLOW

   Value too large for defined data type


.. data:: ENOTUNIQ

   Name not unique on network


.. data:: EBADFD

   File descriptor in bad state


.. data:: EREMCHG

   Remote address changed


.. data:: ELIBACC

   Can not access a needed shared library


.. data:: ELIBBAD

   Accessing a corrupted shared library


.. data:: ELIBSCN

   .lib section in a.out corrupted


.. data:: ELIBMAX

   Attempting to link in too many shared libraries


.. data:: ELIBEXEC

   Cannot exec a shared library directly


.. data:: EILSEQ

   Illegal byte sequence


.. data:: ERESTART

   Interrupted system call should be restarted


.. data:: ESTRPIPE

   Streams pipe error


.. data:: EUSERS

   Too many users


.. data:: ENOTSOCK

   Socket operation on non-socket


.. data:: EDESTADDRREQ

   Destination address required


.. data:: EMSGSIZE

   Message too long


.. data:: EPROTOTYPE

   Protocol wrong type for socket


.. data:: ENOPROTOOPT

   Protocol not available


.. data:: EPROTONOSUPPORT

   Protocol not supported


.. data:: ESOCKTNOSUPPORT

   Socket type not supported


.. data:: EOPNOTSUPP

   Operation not supported on transport endpoint


.. data:: EPFNOSUPPORT

   Protocol family not supported


.. data:: EAFNOSUPPORT

   Address family not supported by protocol


.. data:: EADDRINUSE

   Address already in use


.. data:: EADDRNOTAVAIL

   Cannot assign requested address


.. data:: ENETDOWN

   Network is down


.. data:: ENETUNREACH

   Network is unreachable


.. data:: ENETRESET

   Network dropped connection because of reset


.. data:: ECONNABORTED

   Software caused connection abort


.. data:: ECONNRESET

   Connection reset by peer


.. data:: ENOBUFS

   No buffer space available


.. data:: EISCONN

   Transport endpoint is already connected


.. data:: ENOTCONN

   Transport endpoint is not connected


.. data:: ESHUTDOWN

   Cannot send after transport endpoint shutdown


.. data:: ETOOMANYREFS

   Too many references: cannot splice


.. data:: ETIMEDOUT

   Connection timed out


.. data:: ECONNREFUSED

   Connection refused


.. data:: EHOSTDOWN

   Host is down


.. data:: EHOSTUNREACH

   No route to host


.. data:: EALREADY

   Operation already in progress


.. data:: EINPROGRESS

   Operation now in progress


.. data:: ESTALE

   Stale NFS file handle


.. data:: EUCLEAN

   Structure needs cleaning


.. data:: ENOTNAM

   Not a XENIX named type file


.. data:: ENAVAIL

   No XENIX semaphores available


.. data:: EISNAM

   Is a named type file


.. data:: EREMOTEIO

   Remote I/O error


.. data:: EDQUOT

   Quota exceeded

