-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy patherror_darwin.go
202 lines (197 loc) · 4.23 KB
/
error_darwin.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
package wasi
import (
"syscall"
)
func syscallErrnoToWASI(err syscall.Errno) Errno {
switch err {
case syscall.E2BIG:
return E2BIG
case syscall.EACCES:
return EACCES
case syscall.EADDRINUSE:
return EADDRINUSE
case syscall.EADDRNOTAVAIL:
return EADDRNOTAVAIL
case syscall.EAFNOSUPPORT:
return EAFNOSUPPORT
case syscall.EAGAIN:
return EAGAIN
case syscall.EALREADY:
return EALREADY
case syscall.EBADF:
return EBADF
case syscall.EBADMSG:
return EBADMSG
case syscall.EBUSY:
return EBUSY
case syscall.ECANCELED:
return ECANCELED
case syscall.ECHILD:
return ECHILD
case syscall.ECONNABORTED:
return ECONNABORTED
case syscall.ECONNREFUSED:
return ECONNREFUSED
case syscall.ECONNRESET:
return ECONNRESET
case syscall.EDEADLK:
return EDEADLK
case syscall.EDESTADDRREQ:
return EDESTADDRREQ
case syscall.EDOM:
return EDOM
case syscall.EDQUOT:
return EDQUOT
case syscall.EEXIST:
return EEXIST
case syscall.EFAULT:
return EFAULT
case syscall.EFBIG:
return EFBIG
case syscall.EHOSTUNREACH:
return EHOSTUNREACH
case syscall.EIDRM:
return EIDRM
case syscall.EILSEQ:
return EILSEQ
case syscall.EINPROGRESS:
return EINPROGRESS
case syscall.EINTR:
return EINTR
case syscall.EINVAL:
return EINVAL
case syscall.EIO:
return EIO
case syscall.EISCONN:
return EISCONN
case syscall.EISDIR:
return EISDIR
case syscall.ELOOP:
return ELOOP
case syscall.EMFILE:
return EMFILE
case syscall.EMLINK:
return EMLINK
case syscall.EMSGSIZE:
return EMSGSIZE
case syscall.EMULTIHOP:
return EMULTIHOP
case syscall.ENAMETOOLONG:
return ENAMETOOLONG
case syscall.ENETDOWN:
return ENETDOWN
case syscall.ENETRESET:
return ENETRESET
case syscall.ENETUNREACH:
return ENETUNREACH
case syscall.ENFILE:
return ENFILE
case syscall.ENOBUFS:
return ENOBUFS
case syscall.ENODEV:
return ENODEV
case syscall.ENOENT:
return ENOENT
case syscall.ENOEXEC:
return ENOEXEC
case syscall.ENOLCK:
return ENOLCK
case syscall.ENOLINK:
return ENOLINK
case syscall.ENOMEM:
return ENOMEM
case syscall.ENOMSG:
return ENOMSG
case syscall.ENOPROTOOPT:
return ENOPROTOOPT
case syscall.ENOSPC:
return ENOSPC
case syscall.ENOSYS:
return ENOSYS
case syscall.ENOTCONN:
return ENOTCONN
case syscall.ENOTDIR:
return ENOTDIR
case syscall.ENOTEMPTY:
return ENOTEMPTY
case syscall.ENOTRECOVERABLE:
return ENOTRECOVERABLE
case syscall.ENOTSOCK:
return ENOTSOCK
case syscall.ENOTSUP:
return ENOTSUP
case syscall.ENOTTY:
return ENOTTY
case syscall.ENXIO:
return ENXIO
case syscall.EOPNOTSUPP:
// There's no EOPNOTSUPP, but on Linux ENOTSUP==EOPNOTSUPP.
return ENOTSUP
case syscall.EOVERFLOW:
return EOVERFLOW
case syscall.EOWNERDEAD:
return EOWNERDEAD
case syscall.EPERM:
return EPERM
case syscall.EPIPE:
return EPIPE
case syscall.EPROTO:
return EPROTO
case syscall.EPROTONOSUPPORT:
return EPROTONOSUPPORT
case syscall.EPROTOTYPE:
return EPROTOTYPE
case syscall.ERANGE:
return ERANGE
case syscall.EROFS:
return EROFS
case syscall.ESPIPE:
return ESPIPE
case syscall.ESRCH:
return ESRCH
case syscall.ESTALE:
return ESTALE
case syscall.ETIMEDOUT:
return ETIMEDOUT
case syscall.ETXTBSY:
return ETXTBSY
case syscall.EXDEV:
return EXDEV
// Omitted because they're duplicates:
// case syscall.EWOULDBLOCK: (EAGAIN)
// Omitted because there's no equivalent Errno:
// case syscall.EAUTH:
// case syscall.EBADARCH:
// case syscall.EBADEXEC:
// case syscall.EBADMACHO:
// case syscall.EBADRPC:
// case syscall.EDEVERR:
// case syscall.EFTYPE:
// case syscall.EHOSTDOWN:
// case syscall.ELAST:
// case syscall.ENEEDAUTH:
// case syscall.ENOATTR:
// case syscall.ENODATA:
// case syscall.ENOPOLICY:
// case syscall.ENOSR:
// case syscall.ENOSTR:
// case syscall.ENOTBLK:
// case syscall.EPFNOSUPPORT:
// case syscall.EPROCLIM:
// case syscall.EPROCUNAVAIL:
// case syscall.EPROGMISMATCH:
// case syscall.EPROGUNAVAIL:
// case syscall.EPWROFF:
// case syscall.EQFULL:
// case syscall.EUSERS:
// case syscall.EREMOTE:
// case syscall.ERPCMISMATCH:
// case syscall.ESHLIBVERS:
// case syscall.ESHUTDOWN:
// case syscall.ESOCKTNOSUPPORT:
// case syscall.ETIME:
// case syscall.ETOOMANYREFS:
default:
panic("unsupported syscall errno: " + err.Error())
}
}