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