Raymond Toy pushed to branch issue-386-generate-def-unix-error at cmucl / cmucl

Commits:

4 changed files:

Changes:

  • bin/create-errno.sh
    ... ... @@ -11,6 +11,7 @@ usage ()
    11 11
     create-erno.sh [-h?DS]
    
    12 12
         -h    This help
    
    13 13
         -?    This help
    
    14
    +    -U    Update the errno file    
    
    14 15
         -D	  Do not auto-generate; use default
    
    15 16
     
    
    16 17
         -S    Show the resulting generated file; the file is still created.
    
    ... ... @@ -21,61 +22,73 @@ EOF
    21 22
         exit 0
    
    22 23
     }
    
    23 24
     
    
    24
    -while getopts "h?DS" arg
    
    25
    +while getopts "h?DSU" arg
    
    25 26
     do
    
    26 27
         case $arg in
    
    27 28
     	h) usage ;;
    
    28 29
     	\?) usage ;;
    
    29 30
     	D) DEFAULT=yes ;;
    
    30 31
     	S) SHOW=yes ;;
    
    32
    +	U) UPDATE=yes ;;
    
    31 33
         esac
    
    32 34
     done
    
    33 35
     
    
    34
    -# Where the output should go.
    
    36
    +# Output file containing the final errno defintions
    
    35 37
     OUTPUT="src/code/errno.lisp"
    
    36 38
     
    
    39
    +# Default file containing errno definitions.
    
    40
    +ERRNO_FILE="bin/errno-default.lisp"
    
    41
    +
    
    37 42
     # Template file containing the default def-unix-error forms and other
    
    38 43
     # support code.
    
    39 44
     TEMPLATE="bin/errno-template.lisp"
    
    40 45
     
    
    41
    -# Set ERRNO_FILES to the files where we can find errno definitions.
    
    46
    +# Set ERRNO_HEADERS to the files where we can find errno definitions.
    
    42 47
     if [ -z "$DEFAULT" ]; then
    
    43 48
         case $(uname -s) in
    
    44
    -	Linux) ERRNO_FILES=/usr/include/asm-generic/errno*.h
    
    49
    +	Linux) ERRNO_HEADERS=/usr/include/asm-generic/errno*.h
    
    50
    +	       ERRNO_FILE="bin/errno-linux.lisp"
    
    45 51
     	       ;;
    
    46
    -	Darwin) ERRNO_FILES=/usr/include/sys/errno.h
    
    52
    +	Darwin) ERRNO_HEADERS=/usr/include/sys/errno.h
    
    53
    +		ERRNO_FILE="bin/errno-darwin.lisp"
    
    47 54
     		;;
    
    48
    -	SunOS) ERRNO_FILES=/usr/include/sys/errno.h
    
    55
    +	SunOS) ERRNO_HEADERS=/usr/include/sys/errno.h
    
    56
    +	       ERRNO_FILE="bin/errno-solaris.lisp"
    
    49 57
     	       ;;
    
    58
    +	*) # The default case where we use the defaults.  But also disable updating.
    
    59
    +	    UPDATE=""
    
    60
    +	    ;;
    
    50 61
         esac
    
    51 62
     fi
    
    52 63
     
    
    53
    -if [ -z "$ERRNO_FILES" ]; then
    
    54
    -    # Copy the main errno template to the output.  The template is a lisp
    
    55
    -    # file so we can read and modify it more easily.
    
    56
    -    cat "$TEMPLATE" > $OUTPUT
    
    57
    -else
    
    58
    -    # We can autogenerate the def-unix-error forms.  Copy just the
    
    59
    -    # initial part of the template, up to the first def-unix-error
    
    60
    -    # form.
    
    61
    -    {
    
    62
    -	sed '/^(def-unix-error ESUCCESS/q' "$TEMPLATE"
    
    63
    -	cat <<EOF
    
    64
    -
    
    65
    -;; Autogenerated def-unix-error forms
    
    66
    -EOF
    
    67
    -	
    
    68
    -	# Create appropriate DEF-UNIX-ERROR forms by reading header files
    
    69
    -	# containing the C definitions.
    
    64
    +if [ -n "$DEFAULT" ]; then
    
    65
    +    UPDATE=""
    
    66
    +fi
    
    67
    +
    
    68
    +find_errno ()
    
    69
    +{
    
    70
    +    # Create appropriate DEF-UNIX-ERROR forms by reading header files
    
    71
    +    # containing the C definitions.
    
    70 72
     
    
    71
    -	awk -f bin/create-def-unix-error.awk ${ERRNO_FILES}
    
    73
    +    awk -f bin/create-def-unix-error.awk ${ERRNO_HEADERS}
    
    74
    +}
    
    72 75
     
    
    73
    -	# The tail was also copied from code/unix.lisp.  It's needed to tell
    
    74
    -	# Lisp about the errno values.
    
    75
    -	sed '1,/^;;; End of default/d' "$TEMPLATE"
    
    76
    -    } > $OUTPUT
    
    76
    +if [ "$UPDATE" = "yes" ]; then
    
    77
    +   find_errno > "$ERRNO_FILE"
    
    78
    +   exit 0
    
    77 79
     fi
    
    78 80
     
    
    81
    +if [ -z "$DEFAULT" -a -n "$ERRNO_FILE" ]; then
    
    82
    +    # First check that the errno definitions haven't changed.  If they
    
    83
    +    # have, exit with an error.
    
    84
    +
    
    85
    +    (find_errno | diff -u "$ERRNO_FILE" - ) || exit 1
    
    86
    +fi
    
    87
    +
    
    88
    +# Create the src/code/errno.lisp file from the template and the
    
    89
    +# OS-specific errno values (or the default).
    
    90
    +cat "$TEMPLATE" "$ERRNO_FILE" > $OUTPUT
    
    91
    +
    
    79 92
     # If -S option given, cat the output file to stdout
    
    80 93
     if [ -n "$SHOW" ]; then
    
    81 94
         cat $OUTPUT
    

  • bin/errno-default.lisp
    1
    +;;; Default errno values.  These are used only if we could not
    
    2
    +;;; auto-generate these forms.
    
    3
    +(def-unix-error EPERM 1 _N"Operation not permitted")
    
    4
    +(def-unix-error ENOENT 2 _N"No such file or directory")
    
    5
    +(def-unix-error ESRCH 3 _N"No such process")
    
    6
    +(def-unix-error EINTR 4 _N"Interrupted system call")
    
    7
    +(def-unix-error EIO 5 _N"I/O error")
    
    8
    +(def-unix-error ENXIO 6 _N"Device not configured")
    
    9
    +(def-unix-error E2BIG 7 _N"Arg list too long")
    
    10
    +(def-unix-error ENOEXEC 8 _N"Exec format error")
    
    11
    +(def-unix-error EBADF 9 _N"Bad file descriptor")
    
    12
    +(def-unix-error ECHILD 10 _N"No child process")
    
    13
    +#+bsd(def-unix-error EDEADLK 11 _N"Resource deadlock avoided")
    
    14
    +#-bsd(def-unix-error EAGAIN 11 #-linux _N"No more processes" #+linux _N"Try again")
    
    15
    +(def-unix-error ENOMEM 12 _N"Out of memory")
    
    16
    +(def-unix-error EACCES 13 _N"Permission denied")
    
    17
    +(def-unix-error EFAULT 14 _N"Bad address")
    
    18
    +(def-unix-error ENOTBLK 15 _N"Block device required")
    
    19
    +(def-unix-error EBUSY 16 _N"Device or resource busy")
    
    20
    +(def-unix-error EEXIST 17 _N"File exists")
    
    21
    +(def-unix-error EXDEV 18 _N"Cross-device link")
    
    22
    +(def-unix-error ENODEV 19 _N"No such device")
    
    23
    +(def-unix-error ENOTDIR 20 _N"Not a director")
    
    24
    +(def-unix-error EISDIR 21 _N"Is a directory")
    
    25
    +(def-unix-error EINVAL 22 _N"Invalid argument")
    
    26
    +(def-unix-error ENFILE 23 _N"File table overflow")
    
    27
    +(def-unix-error EMFILE 24 _N"Too many open files")
    
    28
    +(def-unix-error ENOTTY 25 _N"Inappropriate ioctl for device")
    
    29
    +(def-unix-error ETXTBSY 26 _N"Text file busy")
    
    30
    +(def-unix-error EFBIG 27 _N"File too large")
    
    31
    +(def-unix-error ENOSPC 28 _N"No space left on device")
    
    32
    +(def-unix-error ESPIPE 29 _N"Illegal seek")
    
    33
    +(def-unix-error EROFS 30 _N"Read-only file system")
    
    34
    +(def-unix-error EMLINK 31 _N"Too many links")
    
    35
    +(def-unix-error EPIPE 32 _N"Broken pipe")
    
    36
    +;;; 
    
    37
    +;;; Math
    
    38
    +(def-unix-error EDOM 33 _N"Numerical argument out of domain")
    
    39
    +(def-unix-error ERANGE 34 #-linux _N"Result too large" #+linux _N"Math result not representable")
    
    40
    +
    
    41
    +;;; non-blocking and interrupt i/o
    
    42
    +(def-unix-error EWOULDBLOCK 35 _N"Operation would block")
    
    43
    +#-bsd(def-unix-error EDEADLK 35 _N"Operation would block") ; Ditto
    
    44
    +#+bsd(def-unix-error EAGAIN 35 _N"Resource temporarily unavailable")
    
    45
    +(def-unix-error EINPROGRESS 36 _N"Operation now in progress")
    
    46
    +(def-unix-error EALREADY 37 _N"Operation already in progress")
    
    47
    +;;;
    
    48
    +;;; ipc/network software
    
    49
    +(def-unix-error ENOTSOCK 38 _N"Socket operation on non-socket")
    
    50
    +(def-unix-error EDESTADDRREQ 39 _N"Destination address required")
    
    51
    +(def-unix-error EMSGSIZE 40 _N"Message too long")
    
    52
    +(def-unix-error EPROTOTYPE 41 _N"Protocol wrong type for socket")
    
    53
    +(def-unix-error ENOPROTOOPT 42 _N"Protocol not available")
    
    54
    +(def-unix-error EPROTONOSUPPORT 43 _N"Protocol not supported")
    
    55
    +(def-unix-error ESOCKTNOSUPPORT 44 _N"Socket type not supported")
    
    56
    +(def-unix-error EOPNOTSUPP 45 _N"Operation not supported on socket")
    
    57
    +(def-unix-error EPFNOSUPPORT 46 _N"Protocol family not supported")
    
    58
    +(def-unix-error EAFNOSUPPORT 47 _N"Address family not supported by protocol family")
    
    59
    +(def-unix-error EADDRINUSE 48 _N"Address already in use")
    
    60
    +(def-unix-error EADDRNOTAVAIL 49 _N"Can't assign requested address")
    
    61
    +;;;
    
    62
    +;;; operational errors
    
    63
    +(def-unix-error ENETDOWN 50 _N"Network is down")
    
    64
    +(def-unix-error ENETUNREACH 51 _N"Network is unreachable")
    
    65
    +(def-unix-error ENETRESET 52 _N"Network dropped connection on reset")
    
    66
    +(def-unix-error ECONNABORTED 53 _N"Software caused connection abort")
    
    67
    +(def-unix-error ECONNRESET 54 _N"Connection reset by peer")
    
    68
    +(def-unix-error ENOBUFS 55 _N"No buffer space available")
    
    69
    +(def-unix-error EISCONN 56 _N"Socket is already connected")
    
    70
    +(def-unix-error ENOTCONN 57 _N"Socket is not connected")
    
    71
    +(def-unix-error ESHUTDOWN 58 _N"Can't send after socket shutdown")
    
    72
    +(def-unix-error ETOOMANYREFS 59 _N"Too many references: can't splice")
    
    73
    +(def-unix-error ETIMEDOUT 60 _N"Connection timed out")
    
    74
    +(def-unix-error ECONNREFUSED 61 _N"Connection refused")
    
    75
    +;;; 
    
    76
    +(def-unix-error ELOOP 62 _N"Too many levels of symbolic links")
    
    77
    +(def-unix-error ENAMETOOLONG 63 _N"File name too long")
    
    78
    +;;; 
    
    79
    +(def-unix-error EHOSTDOWN 64 _N"Host is down")
    
    80
    +(def-unix-error EHOSTUNREACH 65 _N"No route to host")
    
    81
    +(def-unix-error ENOTEMPTY 66 _N"Directory not empty")
    
    82
    +;;; 
    
    83
    +;;; quotas & resource 
    
    84
    +(def-unix-error EPROCLIM 67 _N"Too many processes")
    
    85
    +(def-unix-error EUSERS 68 _N"Too many users")
    
    86
    +(def-unix-error EDQUOT 69 _N"Disc quota exceeded")
    
    87
    +;;;
    
    88
    +;;; CMU RFS
    
    89
    +(def-unix-error ELOCAL 126 _N"namei should continue locally")
    
    90
    +(def-unix-error EREMOTE 127 _N"namei was handled remotely")
    
    91
    +;;;
    
    92
    +;;; VICE
    
    93
    +(def-unix-error EVICEERR 70 _N"Remote file system error _N")
    
    94
    +(def-unix-error EVICEOP 71 _N"syscall was handled by Vice")

  • bin/errno-linux.lisp
    1
    +(def-unix-error EPERM 1)
    
    2
    +(def-unix-error ENOENT 2)
    
    3
    +(def-unix-error ESRCH 3)
    
    4
    +(def-unix-error EINTR 4)
    
    5
    +(def-unix-error EIO 5)
    
    6
    +(def-unix-error ENXIO 6)
    
    7
    +(def-unix-error E2BIG 7)
    
    8
    +(def-unix-error ENOEXEC 8)
    
    9
    +(def-unix-error EBADF 9)
    
    10
    +(def-unix-error ECHILD 10)
    
    11
    +(def-unix-error EAGAIN 11)
    
    12
    +(def-unix-error ENOMEM 12)
    
    13
    +(def-unix-error EACCES 13)
    
    14
    +(def-unix-error EFAULT 14)
    
    15
    +(def-unix-error ENOTBLK 15)
    
    16
    +(def-unix-error EBUSY 16)
    
    17
    +(def-unix-error EEXIST 17)
    
    18
    +(def-unix-error EXDEV 18)
    
    19
    +(def-unix-error ENODEV 19)
    
    20
    +(def-unix-error ENOTDIR 20)
    
    21
    +(def-unix-error EISDIR 21)
    
    22
    +(def-unix-error EINVAL 22)
    
    23
    +(def-unix-error ENFILE 23)
    
    24
    +(def-unix-error EMFILE 24)
    
    25
    +(def-unix-error ENOTTY 25)
    
    26
    +(def-unix-error ETXTBSY 26)
    
    27
    +(def-unix-error EFBIG 27)
    
    28
    +(def-unix-error ENOSPC 28)
    
    29
    +(def-unix-error ESPIPE 29)
    
    30
    +(def-unix-error EROFS 30)
    
    31
    +(def-unix-error EMLINK 31)
    
    32
    +(def-unix-error EPIPE 32)
    
    33
    +(def-unix-error EDOM 33)
    
    34
    +(def-unix-error ERANGE 34)
    
    35
    +(def-unix-error EDEADLK 35)
    
    36
    +(def-unix-error ENAMETOOLONG 36)
    
    37
    +(def-unix-error ENOLCK 37)
    
    38
    +(def-unix-error ENOSYS 38)
    
    39
    +(def-unix-error ENOTEMPTY 39)
    
    40
    +(def-unix-error ELOOP 40)
    
    41
    +(def-unix-error EWOULDBLOCK EAGAIN)
    
    42
    +(def-unix-error ENOMSG 42)
    
    43
    +(def-unix-error EIDRM 43)
    
    44
    +(def-unix-error ECHRNG 44)
    
    45
    +(def-unix-error EL2NSYNC 45)
    
    46
    +(def-unix-error EL3HLT 46)
    
    47
    +(def-unix-error EL3RST 47)
    
    48
    +(def-unix-error ELNRNG 48)
    
    49
    +(def-unix-error EUNATCH 49)
    
    50
    +(def-unix-error ENOCSI 50)
    
    51
    +(def-unix-error EL2HLT 51)
    
    52
    +(def-unix-error EBADE 52)
    
    53
    +(def-unix-error EBADR 53)
    
    54
    +(def-unix-error EXFULL 54)
    
    55
    +(def-unix-error ENOANO 55)
    
    56
    +(def-unix-error EBADRQC 56)
    
    57
    +(def-unix-error EBADSLT 57)
    
    58
    +(def-unix-error EDEADLOCK EDEADLK)
    
    59
    +(def-unix-error EBFONT 59)
    
    60
    +(def-unix-error ENOSTR 60)
    
    61
    +(def-unix-error ENODATA 61)
    
    62
    +(def-unix-error ETIME 62)
    
    63
    +(def-unix-error ENOSR 63)
    
    64
    +(def-unix-error ENONET 64)
    
    65
    +(def-unix-error ENOPKG 65)
    
    66
    +(def-unix-error EREMOTE 66)
    
    67
    +(def-unix-error ENOLINK 67)
    
    68
    +(def-unix-error EADV 68)
    
    69
    +(def-unix-error ESRMNT 69)
    
    70
    +(def-unix-error ECOMM 70)
    
    71
    +(def-unix-error EPROTO 71)
    
    72
    +(def-unix-error EMULTIHOP 72)
    
    73
    +(def-unix-error EDOTDOT 73)
    
    74
    +(def-unix-error EBADMSG 74)
    
    75
    +(def-unix-error EOVERFLOW 75)
    
    76
    +(def-unix-error ENOTUNIQ 76)
    
    77
    +(def-unix-error EBADFD 77)
    
    78
    +(def-unix-error EREMCHG 78)
    
    79
    +(def-unix-error ELIBACC 79)
    
    80
    +(def-unix-error ELIBBAD 80)
    
    81
    +(def-unix-error ELIBSCN 81)
    
    82
    +(def-unix-error ELIBMAX 82)
    
    83
    +(def-unix-error ELIBEXEC 83)
    
    84
    +(def-unix-error EILSEQ 84)
    
    85
    +(def-unix-error ERESTART 85)
    
    86
    +(def-unix-error ESTRPIPE 86)
    
    87
    +(def-unix-error EUSERS 87)
    
    88
    +(def-unix-error ENOTSOCK 88)
    
    89
    +(def-unix-error EDESTADDRREQ 89)
    
    90
    +(def-unix-error EMSGSIZE 90)
    
    91
    +(def-unix-error EPROTOTYPE 91)
    
    92
    +(def-unix-error ENOPROTOOPT 92)
    
    93
    +(def-unix-error EPROTONOSUPPORT 93)
    
    94
    +(def-unix-error ESOCKTNOSUPPORT 94)
    
    95
    +(def-unix-error EOPNOTSUPP 95)
    
    96
    +(def-unix-error EPFNOSUPPORT 96)
    
    97
    +(def-unix-error EAFNOSUPPORT 97)
    
    98
    +(def-unix-error EADDRINUSE 98)
    
    99
    +(def-unix-error EADDRNOTAVAIL 99)
    
    100
    +(def-unix-error ENETDOWN 100)
    
    101
    +(def-unix-error ENETUNREACH 101)
    
    102
    +(def-unix-error ENETRESET 102)
    
    103
    +(def-unix-error ECONNABORTED 103)
    
    104
    +(def-unix-error ECONNRESET 104)
    
    105
    +(def-unix-error ENOBUFS 105)
    
    106
    +(def-unix-error EISCONN 106)
    
    107
    +(def-unix-error ENOTCONN 107)
    
    108
    +(def-unix-error ESHUTDOWN 108)
    
    109
    +(def-unix-error ETOOMANYREFS 109)
    
    110
    +(def-unix-error ETIMEDOUT 110)
    
    111
    +(def-unix-error ECONNREFUSED 111)
    
    112
    +(def-unix-error EHOSTDOWN 112)
    
    113
    +(def-unix-error EHOSTUNREACH 113)
    
    114
    +(def-unix-error EALREADY 114)
    
    115
    +(def-unix-error EINPROGRESS 115)
    
    116
    +(def-unix-error ESTALE 116)
    
    117
    +(def-unix-error EUCLEAN 117)
    
    118
    +(def-unix-error ENOTNAM 118)
    
    119
    +(def-unix-error ENAVAIL 119)
    
    120
    +(def-unix-error EISNAM 120)
    
    121
    +(def-unix-error EREMOTEIO 121)
    
    122
    +(def-unix-error EDQUOT 122)
    
    123
    +(def-unix-error ENOMEDIUM 123)
    
    124
    +(def-unix-error EMEDIUMTYPE 124)
    
    125
    +(def-unix-error ECANCELED 125)
    
    126
    +(def-unix-error ENOKEY 126)
    
    127
    +(def-unix-error EKEYEXPIRED 127)
    
    128
    +(def-unix-error EKEYREVOKED 128)
    
    129
    +(def-unix-error EKEYREJECTED 129)
    
    130
    +(def-unix-error EOWNERDEAD 130)
    
    131
    +(def-unix-error ENOTRECOVERABLE 131)
    
    132
    +(def-unix-error ERFKILL 132)
    
    133
    +(def-unix-error EHWPOISON 133)

  • bin/errno-template.lisp
    ... ... @@ -34,104 +34,3 @@
    34 34
     ;;; 
    
    35 35
     (def-unix-error ESUCCESS 0 _N"Successful")
    
    36 36
     
    37
    -;;; Do NOT modify the ESUCCESS form above.  bin/create-errno.sh
    
    38
    -;;; depends on it.
    
    39
    -
    
    40
    -;;; Default errno values.  These are used only if we could not
    
    41
    -;;; auto-generate these forms.
    
    42
    -(def-unix-error EPERM 1 _N"Operation not permitted")
    
    43
    -(def-unix-error ENOENT 2 _N"No such file or directory")
    
    44
    -(def-unix-error ESRCH 3 _N"No such process")
    
    45
    -(def-unix-error EINTR 4 _N"Interrupted system call")
    
    46
    -(def-unix-error EIO 5 _N"I/O error")
    
    47
    -(def-unix-error ENXIO 6 _N"Device not configured")
    
    48
    -(def-unix-error E2BIG 7 _N"Arg list too long")
    
    49
    -(def-unix-error ENOEXEC 8 _N"Exec format error")
    
    50
    -(def-unix-error EBADF 9 _N"Bad file descriptor")
    
    51
    -(def-unix-error ECHILD 10 _N"No child process")
    
    52
    -#+bsd(def-unix-error EDEADLK 11 _N"Resource deadlock avoided")
    
    53
    -#-bsd(def-unix-error EAGAIN 11 #-linux _N"No more processes" #+linux _N"Try again")
    
    54
    -(def-unix-error ENOMEM 12 _N"Out of memory")
    
    55
    -(def-unix-error EACCES 13 _N"Permission denied")
    
    56
    -(def-unix-error EFAULT 14 _N"Bad address")
    
    57
    -(def-unix-error ENOTBLK 15 _N"Block device required")
    
    58
    -(def-unix-error EBUSY 16 _N"Device or resource busy")
    
    59
    -(def-unix-error EEXIST 17 _N"File exists")
    
    60
    -(def-unix-error EXDEV 18 _N"Cross-device link")
    
    61
    -(def-unix-error ENODEV 19 _N"No such device")
    
    62
    -(def-unix-error ENOTDIR 20 _N"Not a director")
    
    63
    -(def-unix-error EISDIR 21 _N"Is a directory")
    
    64
    -(def-unix-error EINVAL 22 _N"Invalid argument")
    
    65
    -(def-unix-error ENFILE 23 _N"File table overflow")
    
    66
    -(def-unix-error EMFILE 24 _N"Too many open files")
    
    67
    -(def-unix-error ENOTTY 25 _N"Inappropriate ioctl for device")
    
    68
    -(def-unix-error ETXTBSY 26 _N"Text file busy")
    
    69
    -(def-unix-error EFBIG 27 _N"File too large")
    
    70
    -(def-unix-error ENOSPC 28 _N"No space left on device")
    
    71
    -(def-unix-error ESPIPE 29 _N"Illegal seek")
    
    72
    -(def-unix-error EROFS 30 _N"Read-only file system")
    
    73
    -(def-unix-error EMLINK 31 _N"Too many links")
    
    74
    -(def-unix-error EPIPE 32 _N"Broken pipe")
    
    75
    -;;; 
    
    76
    -;;; Math
    
    77
    -(def-unix-error EDOM 33 _N"Numerical argument out of domain")
    
    78
    -(def-unix-error ERANGE 34 #-linux _N"Result too large" #+linux _N"Math result not representable")
    
    79
    -
    
    80
    -;;; non-blocking and interrupt i/o
    
    81
    -(def-unix-error EWOULDBLOCK 35 _N"Operation would block")
    
    82
    -#-bsd(def-unix-error EDEADLK 35 _N"Operation would block") ; Ditto
    
    83
    -#+bsd(def-unix-error EAGAIN 35 _N"Resource temporarily unavailable")
    
    84
    -(def-unix-error EINPROGRESS 36 _N"Operation now in progress")
    
    85
    -(def-unix-error EALREADY 37 _N"Operation already in progress")
    
    86
    -;;;
    
    87
    -;;; ipc/network software
    
    88
    -(def-unix-error ENOTSOCK 38 _N"Socket operation on non-socket")
    
    89
    -(def-unix-error EDESTADDRREQ 39 _N"Destination address required")
    
    90
    -(def-unix-error EMSGSIZE 40 _N"Message too long")
    
    91
    -(def-unix-error EPROTOTYPE 41 _N"Protocol wrong type for socket")
    
    92
    -(def-unix-error ENOPROTOOPT 42 _N"Protocol not available")
    
    93
    -(def-unix-error EPROTONOSUPPORT 43 _N"Protocol not supported")
    
    94
    -(def-unix-error ESOCKTNOSUPPORT 44 _N"Socket type not supported")
    
    95
    -(def-unix-error EOPNOTSUPP 45 _N"Operation not supported on socket")
    
    96
    -(def-unix-error EPFNOSUPPORT 46 _N"Protocol family not supported")
    
    97
    -(def-unix-error EAFNOSUPPORT 47 _N"Address family not supported by protocol family")
    
    98
    -(def-unix-error EADDRINUSE 48 _N"Address already in use")
    
    99
    -(def-unix-error EADDRNOTAVAIL 49 _N"Can't assign requested address")
    
    100
    -;;;
    
    101
    -;;; operational errors
    
    102
    -(def-unix-error ENETDOWN 50 _N"Network is down")
    
    103
    -(def-unix-error ENETUNREACH 51 _N"Network is unreachable")
    
    104
    -(def-unix-error ENETRESET 52 _N"Network dropped connection on reset")
    
    105
    -(def-unix-error ECONNABORTED 53 _N"Software caused connection abort")
    
    106
    -(def-unix-error ECONNRESET 54 _N"Connection reset by peer")
    
    107
    -(def-unix-error ENOBUFS 55 _N"No buffer space available")
    
    108
    -(def-unix-error EISCONN 56 _N"Socket is already connected")
    
    109
    -(def-unix-error ENOTCONN 57 _N"Socket is not connected")
    
    110
    -(def-unix-error ESHUTDOWN 58 _N"Can't send after socket shutdown")
    
    111
    -(def-unix-error ETOOMANYREFS 59 _N"Too many references: can't splice")
    
    112
    -(def-unix-error ETIMEDOUT 60 _N"Connection timed out")
    
    113
    -(def-unix-error ECONNREFUSED 61 _N"Connection refused")
    
    114
    -;;; 
    
    115
    -(def-unix-error ELOOP 62 _N"Too many levels of symbolic links")
    
    116
    -(def-unix-error ENAMETOOLONG 63 _N"File name too long")
    
    117
    -;;; 
    
    118
    -(def-unix-error EHOSTDOWN 64 _N"Host is down")
    
    119
    -(def-unix-error EHOSTUNREACH 65 _N"No route to host")
    
    120
    -(def-unix-error ENOTEMPTY 66 _N"Directory not empty")
    
    121
    -;;; 
    
    122
    -;;; quotas & resource 
    
    123
    -(def-unix-error EPROCLIM 67 _N"Too many processes")
    
    124
    -(def-unix-error EUSERS 68 _N"Too many users")
    
    125
    -(def-unix-error EDQUOT 69 _N"Disc quota exceeded")
    
    126
    -;;;
    
    127
    -;;; CMU RFS
    
    128
    -(def-unix-error ELOCAL 126 _N"namei should continue locally")
    
    129
    -(def-unix-error EREMOTE 127 _N"namei was handled remotely")
    
    130
    -;;;
    
    131
    -;;; VICE
    
    132
    -(def-unix-error EVICEERR 70 _N"Remote file system error _N")
    
    133
    -(def-unix-error EVICEOP 71 _N"syscall was handled by Vice")
    
    134
    -
    
    135
    -;;; Do NOT modify the line below.  bin/create-errno.sh depends on it.
    
    136
    -
    
    137
    -;;; End of default def-unix-error forms