2 Error Handling
2.1 Filesystem Exceptions
Provides an exception structure and utility functions.
|
The exception type used to signal 9P errors, both from backends to
the generic server code and from the client code to frontends.
Raises an exception of type exn:fail:filesystem:9p with
the 9P error name ename as its message.
2.2 Error Messages
Provides error messages for standard POSIX.1 and ISO C99 error
conditions. 9P transmits error conditions as strings over the
network, but most operating systems use numeric error codes in
their APIs. Therefore it is useful to help protocol conversion
code and use well known messages.
| E2BIG : string? |
Argument list too long
| EACCESS : string? |
Permission denied
| EADDRINUSE : string? |
Address already in use
| EADDRNOTAVAIL : string? |
Address not available
| EAFNOSUPPORT : string? |
Address family not supported
| EAGAIN : string? |
Resource temporarily unavailable
| EALREADY : string? |
Connection already in progress
| EBADF : string? |
Bad file descriptor
| EBADMSG : string? |
Bad message
| EBUSY : string? |
Device or resource busy
| ECANCELED : string? |
Operation canceled
| ECHILD : string? |
No child processes
| ECONNABORTED : string? |
Connection aborted
| ECONNREFUSED : string? |
Connection refused
| ECONNRESET : string? |
Connection reset
| EDEADLOCK : string? |
Resource deadlock avoided
| EDESTADDRREQ : string? |
Destination address required
| EDOM : string? |
Mathematics argument out of domain of function
| EDQUOT : string? |
Disk quota exceeded
| EEXIST : string? |
File exists
| EFAULT : string? |
Bad address
| EFBIG : string? |
File too large
| EHOSTUNREACH : string? |
Host is unreachable
| EIDRM : string? |
Identifier removed
| EILSEQ : string? |
Illegal byte sequence
| EINPROGRESS : string? |
Operation in progress
| EINTR : string? |
Interrupted function call
| EINVAL : string? |
Invalid argument
| EIO : string? |
Input/output error
| EISCONN : string? |
Socket is connected
| EISDIR : string? |
Is a directory
| ELOOP : string? |
Too many levels of symbolic links
| EMFILE : string? |
Too many open files
| EMLINK : string? |
Too many links
| EMSGSIZE : string? |
Message too long
| EMULTIHOP : string? |
Multihop attempted
| ENAMETOOLONG : string? |
Filename too long
| ENETDOWN : string? |
Network is down
| ENETRESET : string? |
Connection aborted by network
| ENETUNREACH : string? |
Network unreachable
| ENFILE : string? |
Too many open files in system
| ENOBUFS : string? |
No buffer space available
| ENODATA : string? |
No message is available on the STREAM head read queue
| ENODEV : string? |
No such device
| ENOENT : string? |
No such file or directory
| ENOEXEC : string? |
Exec format error
| ENOLCK : string? |
No locks available
| ENOLINK : string? |
Link has been severed
| ENOMEM : string? |
Not enough space
| ENOMSG : string? |
No message of the desired type
| ENOPROTOOPT : string? |
Protocol not available
| ENOSPC : string? |
No space left on device
| ENOSR : string? |
No STREAM resources
| ENOSTR : string? |
Not a STREAM
| ENOSYS : string? |
Function not implemented
| ENOTCONN : string? |
The socket is not connected
| ENOTDIR : string? |
Not a directory
| ENOTEMPTY : string? |
Directory not empty
| ENOTSOCK : string? |
Not a socket
| ENOTSUP : string? |
Operation not supported
| ENOTTY : string? |
Inappropriate I/O control operation
| ENXIO : string? |
No such device or address
| EOPNOTSUPP : string? |
Operation not supported on socket
| EOVERFLOW : string? |
Value too large to be stored in data type
| EPERM : string? |
Operation not permitted
| EPIPE : string? |
Broken pipe
| EPROTO : string? |
Protocol error
| EPROTONOSUPPORT : string? |
Protocol not supported
| EPROTOTYPE : string? |
Protocol wrong type for socket
| ERANGE : string? |
Result too large
| EROFS : string? |
Read-only file system
| ESPIPE : string? |
Invalid seek
| ESRCH : string? |
No such process
| ESTALE : string? |
Stale file handle
| ETIME : string? |
Timer expired
| ETIMEDOUT : string? |
Connection timed out
| ETXTBSY : string? |
Text file busy
| EWOULDBLOCK : string? |
Operation would block
| EXDEV : string? |
Improper link