1// Copyright 2020 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5//go:build zos && s390x
6// +build zos,s390x
7
8// Hand edited based on zerrors_linux_s390x.go
9// TODO: auto-generate.
10
11package unix
12
13const (
14	BRKINT                          = 0x0001
15	CLOCK_MONOTONIC                 = 0x1
16	CLOCK_PROCESS_CPUTIME_ID        = 0x2
17	CLOCK_REALTIME                  = 0x0
18	CLOCK_THREAD_CPUTIME_ID         = 0x3
19	CS8                             = 0x0030
20	CSIZE                           = 0x0030
21	ECHO                            = 0x00000008
22	ECHONL                          = 0x00000001
23	FD_CLOEXEC                      = 0x01
24	FD_CLOFORK                      = 0x02
25	FNDELAY                         = 0x04
26	F_CLOSFD                        = 9
27	F_CONTROL_CVT                   = 13
28	F_DUPFD                         = 0
29	F_DUPFD2                        = 8
30	F_GETFD                         = 1
31	F_GETFL                         = 259
32	F_GETLK                         = 5
33	F_GETOWN                        = 10
34	F_OK                            = 0x0
35	F_RDLCK                         = 1
36	F_SETFD                         = 2
37	F_SETFL                         = 4
38	F_SETLK                         = 6
39	F_SETLKW                        = 7
40	F_SETOWN                        = 11
41	F_SETTAG                        = 12
42	F_UNLCK                         = 3
43	F_WRLCK                         = 2
44	FSTYPE_ZFS                      = 0xe9 //"Z"
45	FSTYPE_HFS                      = 0xc8 //"H"
46	FSTYPE_NFS                      = 0xd5 //"N"
47	FSTYPE_TFS                      = 0xe3 //"T"
48	FSTYPE_AUTOMOUNT                = 0xc1 //"A"
49	IP6F_MORE_FRAG                  = 0x0001
50	IP6F_OFF_MASK                   = 0xfff8
51	IP6F_RESERVED_MASK              = 0x0006
52	IP6OPT_JUMBO                    = 0xc2
53	IP6OPT_JUMBO_LEN                = 6
54	IP6OPT_MUTABLE                  = 0x20
55	IP6OPT_NSAP_ADDR                = 0xc3
56	IP6OPT_PAD1                     = 0x00
57	IP6OPT_PADN                     = 0x01
58	IP6OPT_ROUTER_ALERT             = 0x05
59	IP6OPT_TUNNEL_LIMIT             = 0x04
60	IP6OPT_TYPE_DISCARD             = 0x40
61	IP6OPT_TYPE_FORCEICMP           = 0x80
62	IP6OPT_TYPE_ICMP                = 0xc0
63	IP6OPT_TYPE_SKIP                = 0x00
64	IP6_ALERT_AN                    = 0x0002
65	IP6_ALERT_MLD                   = 0x0000
66	IP6_ALERT_RSVP                  = 0x0001
67	IPPORT_RESERVED                 = 1024
68	IPPORT_USERRESERVED             = 5000
69	IPPROTO_AH                      = 51
70	SOL_AH                          = 51
71	IPPROTO_DSTOPTS                 = 60
72	SOL_DSTOPTS                     = 60
73	IPPROTO_EGP                     = 8
74	SOL_EGP                         = 8
75	IPPROTO_ESP                     = 50
76	SOL_ESP                         = 50
77	IPPROTO_FRAGMENT                = 44
78	SOL_FRAGMENT                    = 44
79	IPPROTO_GGP                     = 2
80	SOL_GGP                         = 2
81	IPPROTO_HOPOPTS                 = 0
82	SOL_HOPOPTS                     = 0
83	IPPROTO_ICMP                    = 1
84	SOL_ICMP                        = 1
85	IPPROTO_ICMPV6                  = 58
86	SOL_ICMPV6                      = 58
87	IPPROTO_IDP                     = 22
88	SOL_IDP                         = 22
89	IPPROTO_IP                      = 0
90	SOL_IP                          = 0
91	IPPROTO_IPV6                    = 41
92	SOL_IPV6                        = 41
93	IPPROTO_MAX                     = 256
94	SOL_MAX                         = 256
95	IPPROTO_NONE                    = 59
96	SOL_NONE                        = 59
97	IPPROTO_PUP                     = 12
98	SOL_PUP                         = 12
99	IPPROTO_RAW                     = 255
100	SOL_RAW                         = 255
101	IPPROTO_ROUTING                 = 43
102	SOL_ROUTING                     = 43
103	IPPROTO_TCP                     = 6
104	SOL_TCP                         = 6
105	IPPROTO_UDP                     = 17
106	SOL_UDP                         = 17
107	IPV6_ADDR_PREFERENCES           = 32
108	IPV6_CHECKSUM                   = 19
109	IPV6_DONTFRAG                   = 29
110	IPV6_DSTOPTS                    = 23
111	IPV6_HOPLIMIT                   = 11
112	IPV6_HOPOPTS                    = 22
113	IPV6_JOIN_GROUP                 = 5
114	IPV6_LEAVE_GROUP                = 6
115	IPV6_MULTICAST_HOPS             = 9
116	IPV6_MULTICAST_IF               = 7
117	IPV6_MULTICAST_LOOP             = 4
118	IPV6_NEXTHOP                    = 20
119	IPV6_PATHMTU                    = 12
120	IPV6_PKTINFO                    = 13
121	IPV6_PREFER_SRC_CGA             = 0x10
122	IPV6_PREFER_SRC_COA             = 0x02
123	IPV6_PREFER_SRC_HOME            = 0x01
124	IPV6_PREFER_SRC_NONCGA          = 0x20
125	IPV6_PREFER_SRC_PUBLIC          = 0x08
126	IPV6_PREFER_SRC_TMP             = 0x04
127	IPV6_RECVDSTOPTS                = 28
128	IPV6_RECVHOPLIMIT               = 14
129	IPV6_RECVHOPOPTS                = 26
130	IPV6_RECVPATHMTU                = 16
131	IPV6_RECVPKTINFO                = 15
132	IPV6_RECVRTHDR                  = 25
133	IPV6_RECVTCLASS                 = 31
134	IPV6_RTHDR                      = 21
135	IPV6_RTHDRDSTOPTS               = 24
136	IPV6_RTHDR_TYPE_0               = 0
137	IPV6_TCLASS                     = 30
138	IPV6_UNICAST_HOPS               = 3
139	IPV6_USE_MIN_MTU                = 18
140	IPV6_V6ONLY                     = 10
141	IP_ADD_MEMBERSHIP               = 5
142	IP_ADD_SOURCE_MEMBERSHIP        = 12
143	IP_BLOCK_SOURCE                 = 10
144	IP_DEFAULT_MULTICAST_LOOP       = 1
145	IP_DEFAULT_MULTICAST_TTL        = 1
146	IP_DROP_MEMBERSHIP              = 6
147	IP_DROP_SOURCE_MEMBERSHIP       = 13
148	IP_MAX_MEMBERSHIPS              = 20
149	IP_MULTICAST_IF                 = 7
150	IP_MULTICAST_LOOP               = 4
151	IP_MULTICAST_TTL                = 3
152	IP_OPTIONS                      = 1
153	IP_PKTINFO                      = 101
154	IP_RECVPKTINFO                  = 102
155	IP_TOS                          = 2
156	IP_TTL                          = 3
157	IP_UNBLOCK_SOURCE               = 11
158	ICANON                          = 0x0010
159	ICMP6_FILTER                    = 0x26
160	ICRNL                           = 0x0002
161	IEXTEN                          = 0x0020
162	IGNBRK                          = 0x0004
163	IGNCR                           = 0x0008
164	INLCR                           = 0x0020
165	ISIG                            = 0x0040
166	ISTRIP                          = 0x0080
167	IXON                            = 0x0200
168	IXOFF                           = 0x0100
169	LOCK_SH                         = 0x1 // Not exist on zOS
170	LOCK_EX                         = 0x2 // Not exist on zOS
171	LOCK_NB                         = 0x4 // Not exist on zOS
172	LOCK_UN                         = 0x8 // Not exist on zOS
173	POLLIN                          = 0x0003
174	POLLOUT                         = 0x0004
175	POLLPRI                         = 0x0010
176	POLLERR                         = 0x0020
177	POLLHUP                         = 0x0040
178	POLLNVAL                        = 0x0080
179	PROT_READ                       = 0x1 // mmap - page can be read
180	PROT_WRITE                      = 0x2 // page can be written
181	PROT_NONE                       = 0x4 // can't be accessed
182	PROT_EXEC                       = 0x8 // can be executed
183	MAP_PRIVATE                     = 0x1 // changes are private
184	MAP_SHARED                      = 0x2 // changes are shared
185	MAP_FIXED                       = 0x4 // place exactly
186	MCAST_JOIN_GROUP                = 40
187	MCAST_LEAVE_GROUP               = 41
188	MCAST_JOIN_SOURCE_GROUP         = 42
189	MCAST_LEAVE_SOURCE_GROUP        = 43
190	MCAST_BLOCK_SOURCE              = 44
191	MCAST_UNBLOCK_SOURCE            = 45
192	MS_SYNC                         = 0x1 // msync - synchronous writes
193	MS_ASYNC                        = 0x2 // asynchronous writes
194	MS_INVALIDATE                   = 0x4 // invalidate mappings
195	MTM_RDONLY                      = 0x80000000
196	MTM_RDWR                        = 0x40000000
197	MTM_UMOUNT                      = 0x10000000
198	MTM_IMMED                       = 0x08000000
199	MTM_FORCE                       = 0x04000000
200	MTM_DRAIN                       = 0x02000000
201	MTM_RESET                       = 0x01000000
202	MTM_SAMEMODE                    = 0x00100000
203	MTM_UNQSEFORCE                  = 0x00040000
204	MTM_NOSUID                      = 0x00000400
205	MTM_SYNCHONLY                   = 0x00000200
206	MTM_REMOUNT                     = 0x00000100
207	MTM_NOSECURITY                  = 0x00000080
208	NFDBITS                         = 0x20
209	O_ACCMODE                       = 0x03
210	O_APPEND                        = 0x08
211	O_ASYNCSIG                      = 0x0200
212	O_CREAT                         = 0x80
213	O_EXCL                          = 0x40
214	O_GETFL                         = 0x0F
215	O_LARGEFILE                     = 0x0400
216	O_NONBLOCK                      = 0x04
217	O_RDONLY                        = 0x02
218	O_RDWR                          = 0x03
219	O_SYNC                          = 0x0100
220	O_TRUNC                         = 0x10
221	O_WRONLY                        = 0x01
222	O_NOCTTY                        = 0x20
223	OPOST                           = 0x0001
224	ONLCR                           = 0x0004
225	PARENB                          = 0x0200
226	PARMRK                          = 0x0400
227	QUERYCVT                        = 3
228	RUSAGE_CHILDREN                 = -0x1
229	RUSAGE_SELF                     = 0x0 // RUSAGE_THREAD unsupported on z/OS
230	SEEK_CUR                        = 1
231	SEEK_END                        = 2
232	SEEK_SET                        = 0
233	SETAUTOCVTALL                   = 5
234	SETAUTOCVTON                    = 2
235	SETCVTALL                       = 4
236	SETCVTOFF                       = 0
237	SETCVTON                        = 1
238	AF_APPLETALK                    = 16
239	AF_CCITT                        = 10
240	AF_CHAOS                        = 5
241	AF_DATAKIT                      = 9
242	AF_DLI                          = 13
243	AF_ECMA                         = 8
244	AF_HYLINK                       = 15
245	AF_IMPLINK                      = 3
246	AF_INET                         = 2
247	AF_INET6                        = 19
248	AF_INTF                         = 20
249	AF_IUCV                         = 17
250	AF_LAT                          = 14
251	AF_LINK                         = 18
252	AF_MAX                          = 30
253	AF_NBS                          = 7
254	AF_NDD                          = 23
255	AF_NETWARE                      = 22
256	AF_NS                           = 6
257	AF_PUP                          = 4
258	AF_RIF                          = 21
259	AF_ROUTE                        = 20
260	AF_SNA                          = 11
261	AF_UNIX                         = 1
262	AF_UNSPEC                       = 0
263	IBMTCP_IMAGE                    = 1
264	MSG_ACK_EXPECTED                = 0x10
265	MSG_ACK_GEN                     = 0x40
266	MSG_ACK_TIMEOUT                 = 0x20
267	MSG_CONNTERM                    = 0x80
268	MSG_CTRUNC                      = 0x20
269	MSG_DONTROUTE                   = 0x4
270	MSG_EOF                         = 0x8000
271	MSG_EOR                         = 0x8
272	MSG_MAXIOVLEN                   = 16
273	MSG_NONBLOCK                    = 0x4000
274	MSG_OOB                         = 0x1
275	MSG_PEEK                        = 0x2
276	MSG_TRUNC                       = 0x10
277	MSG_WAITALL                     = 0x40
278	PRIO_PROCESS                    = 1
279	PRIO_PGRP                       = 2
280	PRIO_USER                       = 3
281	RLIMIT_CPU                      = 0
282	RLIMIT_FSIZE                    = 1
283	RLIMIT_DATA                     = 2
284	RLIMIT_STACK                    = 3
285	RLIMIT_CORE                     = 4
286	RLIMIT_AS                       = 5
287	RLIMIT_NOFILE                   = 6
288	RLIMIT_MEMLIMIT                 = 7
289	RLIM_INFINITY                   = 2147483647
290	SCM_RIGHTS                      = 0x01
291	SF_CLOSE                        = 0x00000002
292	SF_REUSE                        = 0x00000001
293	SHUT_RD                         = 0
294	SHUT_RDWR                       = 2
295	SHUT_WR                         = 1
296	SOCK_CONN_DGRAM                 = 6
297	SOCK_DGRAM                      = 2
298	SOCK_RAW                        = 3
299	SOCK_RDM                        = 4
300	SOCK_SEQPACKET                  = 5
301	SOCK_STREAM                     = 1
302	SOL_SOCKET                      = 0xffff
303	SOMAXCONN                       = 10
304	SO_ACCEPTCONN                   = 0x0002
305	SO_ACCEPTECONNABORTED           = 0x0006
306	SO_ACKNOW                       = 0x7700
307	SO_BROADCAST                    = 0x0020
308	SO_BULKMODE                     = 0x8000
309	SO_CKSUMRECV                    = 0x0800
310	SO_CLOSE                        = 0x01
311	SO_CLUSTERCONNTYPE              = 0x00004001
312	SO_CLUSTERCONNTYPE_INTERNAL     = 8
313	SO_CLUSTERCONNTYPE_NOCONN       = 0
314	SO_CLUSTERCONNTYPE_NONE         = 1
315	SO_CLUSTERCONNTYPE_SAME_CLUSTER = 2
316	SO_CLUSTERCONNTYPE_SAME_IMAGE   = 4
317	SO_DEBUG                        = 0x0001
318	SO_DONTROUTE                    = 0x0010
319	SO_ERROR                        = 0x1007
320	SO_IGNOREINCOMINGPUSH           = 0x1
321	SO_IGNORESOURCEVIPA             = 0x0002
322	SO_KEEPALIVE                    = 0x0008
323	SO_LINGER                       = 0x0080
324	SO_NONBLOCKLOCAL                = 0x8001
325	SO_NOREUSEADDR                  = 0x1000
326	SO_OOBINLINE                    = 0x0100
327	SO_OPTACK                       = 0x8004
328	SO_OPTMSS                       = 0x8003
329	SO_RCVBUF                       = 0x1002
330	SO_RCVLOWAT                     = 0x1004
331	SO_RCVTIMEO                     = 0x1006
332	SO_REUSEADDR                    = 0x0004
333	SO_REUSEPORT                    = 0x0200
334	SO_SECINFO                      = 0x00004002
335	SO_SET                          = 0x0200
336	SO_SNDBUF                       = 0x1001
337	SO_SNDLOWAT                     = 0x1003
338	SO_SNDTIMEO                     = 0x1005
339	SO_TYPE                         = 0x1008
340	SO_UNSET                        = 0x0400
341	SO_USELOOPBACK                  = 0x0040
342	SO_USE_IFBUFS                   = 0x0400
343	S_ISUID                         = 0x0800
344	S_ISGID                         = 0x0400
345	S_ISVTX                         = 0x0200
346	S_IRUSR                         = 0x0100
347	S_IWUSR                         = 0x0080
348	S_IXUSR                         = 0x0040
349	S_IRWXU                         = 0x01C0
350	S_IRGRP                         = 0x0020
351	S_IWGRP                         = 0x0010
352	S_IXGRP                         = 0x0008
353	S_IRWXG                         = 0x0038
354	S_IROTH                         = 0x0004
355	S_IWOTH                         = 0x0002
356	S_IXOTH                         = 0x0001
357	S_IRWXO                         = 0x0007
358	S_IREAD                         = S_IRUSR
359	S_IWRITE                        = S_IWUSR
360	S_IEXEC                         = S_IXUSR
361	S_IFDIR                         = 0x01000000
362	S_IFCHR                         = 0x02000000
363	S_IFREG                         = 0x03000000
364	S_IFFIFO                        = 0x04000000
365	S_IFIFO                         = 0x04000000
366	S_IFLNK                         = 0x05000000
367	S_IFBLK                         = 0x06000000
368	S_IFSOCK                        = 0x07000000
369	S_IFVMEXTL                      = 0xFE000000
370	S_IFVMEXTL_EXEC                 = 0x00010000
371	S_IFVMEXTL_DATA                 = 0x00020000
372	S_IFVMEXTL_MEL                  = 0x00030000
373	S_IFEXTL                        = 0x00000001
374	S_IFPROGCTL                     = 0x00000002
375	S_IFAPFCTL                      = 0x00000004
376	S_IFNOSHARE                     = 0x00000008
377	S_IFSHARELIB                    = 0x00000010
378	S_IFMT                          = 0xFF000000
379	S_IFMST                         = 0x00FF0000
380	TCP_KEEPALIVE                   = 0x8
381	TCP_NODELAY                     = 0x1
382	TCP_INFO                        = 0xb
383	TCP_USER_TIMEOUT                = 0x1
384	TIOCGWINSZ                      = 0x4008a368
385	TIOCSWINSZ                      = 0x8008a367
386	TIOCSBRK                        = 0x2000a77b
387	TIOCCBRK                        = 0x2000a77a
388	TIOCSTI                         = 0x8001a772
389	TIOCGPGRP                       = 0x4004a777 // _IOR(167, 119, int)
390	TCSANOW                         = 0
391	TCSETS                          = 0 // equivalent to TCSANOW for tcsetattr
392	TCSADRAIN                       = 1
393	TCSETSW                         = 1 // equivalent to TCSADRAIN for tcsetattr
394	TCSAFLUSH                       = 2
395	TCSETSF                         = 2 // equivalent to TCSAFLUSH for tcsetattr
396	TCGETS                          = 3 // not defined in ioctl.h -- zos golang only
397	TCIFLUSH                        = 0
398	TCOFLUSH                        = 1
399	TCIOFLUSH                       = 2
400	TCOOFF                          = 0
401	TCOON                           = 1
402	TCIOFF                          = 2
403	TCION                           = 3
404	TIOCSPGRP                       = 0x8004a776
405	TIOCNOTTY                       = 0x2000a771
406	TIOCEXCL                        = 0x2000a70d
407	TIOCNXCL                        = 0x2000a70e
408	TIOCGETD                        = 0x4004a700
409	TIOCSETD                        = 0x8004a701
410	TIOCPKT                         = 0x8004a770
411	TIOCSTOP                        = 0x2000a76f
412	TIOCSTART                       = 0x2000a76e
413	TIOCUCNTL                       = 0x8004a766
414	TIOCREMOTE                      = 0x8004a769
415	TIOCMGET                        = 0x4004a76a
416	TIOCMSET                        = 0x8004a76d
417	TIOCMBIC                        = 0x8004a76b
418	TIOCMBIS                        = 0x8004a76c
419	VINTR                           = 0
420	VQUIT                           = 1
421	VERASE                          = 2
422	VKILL                           = 3
423	VEOF                            = 4
424	VEOL                            = 5
425	VMIN                            = 6
426	VSTART                          = 7
427	VSTOP                           = 8
428	VSUSP                           = 9
429	VTIME                           = 10
430	WCONTINUED                      = 0x4
431	WNOHANG                         = 0x1
432	WUNTRACED                       = 0x2
433	_BPX_SWAP                       = 1
434	_BPX_NONSWAP                    = 2
435	MCL_CURRENT                     = 1  // for Linux compatibility -- no zos semantics
436	MCL_FUTURE                      = 2  // for Linux compatibility -- no zos semantics
437	MCL_ONFAULT                     = 3  // for Linux compatibility -- no zos semantics
438	MADV_NORMAL                     = 0  // for Linux compatibility -- no zos semantics
439	MADV_RANDOM                     = 1  // for Linux compatibility -- no zos semantics
440	MADV_SEQUENTIAL                 = 2  // for Linux compatibility -- no zos semantics
441	MADV_WILLNEED                   = 3  // for Linux compatibility -- no zos semantics
442	MADV_REMOVE                     = 4  // for Linux compatibility -- no zos semantics
443	MADV_DONTFORK                   = 5  // for Linux compatibility -- no zos semantics
444	MADV_DOFORK                     = 6  // for Linux compatibility -- no zos semantics
445	MADV_HWPOISON                   = 7  // for Linux compatibility -- no zos semantics
446	MADV_MERGEABLE                  = 8  // for Linux compatibility -- no zos semantics
447	MADV_UNMERGEABLE                = 9  // for Linux compatibility -- no zos semantics
448	MADV_SOFT_OFFLINE               = 10 // for Linux compatibility -- no zos semantics
449	MADV_HUGEPAGE                   = 11 // for Linux compatibility -- no zos semantics
450	MADV_NOHUGEPAGE                 = 12 // for Linux compatibility -- no zos semantics
451	MADV_DONTDUMP                   = 13 // for Linux compatibility -- no zos semantics
452	MADV_DODUMP                     = 14 // for Linux compatibility -- no zos semantics
453	MADV_FREE                       = 15 // for Linux compatibility -- no zos semantics
454	MADV_WIPEONFORK                 = 16 // for Linux compatibility -- no zos semantics
455	MADV_KEEPONFORK                 = 17 // for Linux compatibility -- no zos semantics
456	AT_SYMLINK_NOFOLLOW             = 1  // for Unix  compatibility -- no zos semantics
457	AT_FDCWD                        = 2  // for Unix  compatibility -- no zos semantics
458)
459
460const (
461	EDOM               = Errno(1)
462	ERANGE             = Errno(2)
463	EACCES             = Errno(111)
464	EAGAIN             = Errno(112)
465	EBADF              = Errno(113)
466	EBUSY              = Errno(114)
467	ECHILD             = Errno(115)
468	EDEADLK            = Errno(116)
469	EEXIST             = Errno(117)
470	EFAULT             = Errno(118)
471	EFBIG              = Errno(119)
472	EINTR              = Errno(120)
473	EINVAL             = Errno(121)
474	EIO                = Errno(122)
475	EISDIR             = Errno(123)
476	EMFILE             = Errno(124)
477	EMLINK             = Errno(125)
478	ENAMETOOLONG       = Errno(126)
479	ENFILE             = Errno(127)
480	ENODEV             = Errno(128)
481	ENOENT             = Errno(129)
482	ENOEXEC            = Errno(130)
483	ENOLCK             = Errno(131)
484	ENOMEM             = Errno(132)
485	ENOSPC             = Errno(133)
486	ENOSYS             = Errno(134)
487	ENOTDIR            = Errno(135)
488	ENOTEMPTY          = Errno(136)
489	ENOTTY             = Errno(137)
490	ENXIO              = Errno(138)
491	EPERM              = Errno(139)
492	EPIPE              = Errno(140)
493	EROFS              = Errno(141)
494	ESPIPE             = Errno(142)
495	ESRCH              = Errno(143)
496	EXDEV              = Errno(144)
497	E2BIG              = Errno(145)
498	ELOOP              = Errno(146)
499	EILSEQ             = Errno(147)
500	ENODATA            = Errno(148)
501	EOVERFLOW          = Errno(149)
502	EMVSNOTUP          = Errno(150)
503	ECMSSTORAGE        = Errno(151)
504	EMVSDYNALC         = Errno(151)
505	EMVSCVAF           = Errno(152)
506	EMVSCATLG          = Errno(153)
507	ECMSINITIAL        = Errno(156)
508	EMVSINITIAL        = Errno(156)
509	ECMSERR            = Errno(157)
510	EMVSERR            = Errno(157)
511	EMVSPARM           = Errno(158)
512	ECMSPFSFILE        = Errno(159)
513	EMVSPFSFILE        = Errno(159)
514	EMVSBADCHAR        = Errno(160)
515	ECMSPFSPERM        = Errno(162)
516	EMVSPFSPERM        = Errno(162)
517	EMVSSAFEXTRERR     = Errno(163)
518	EMVSSAF2ERR        = Errno(164)
519	EMVSTODNOTSET      = Errno(165)
520	EMVSPATHOPTS       = Errno(166)
521	EMVSNORTL          = Errno(167)
522	EMVSEXPIRE         = Errno(168)
523	EMVSPASSWORD       = Errno(169)
524	EMVSWLMERROR       = Errno(170)
525	EMVSCPLERROR       = Errno(171)
526	EMVSARMERROR       = Errno(172)
527	ELENOFORK          = Errno(200)
528	ELEMSGERR          = Errno(201)
529	EFPMASKINV         = Errno(202)
530	EFPMODEINV         = Errno(203)
531	EBUFLEN            = Errno(227)
532	EEXTLINK           = Errno(228)
533	ENODD              = Errno(229)
534	ECMSESMERR         = Errno(230)
535	ECPERR             = Errno(231)
536	ELEMULTITHREAD     = Errno(232)
537	ELEFENCE           = Errno(244)
538	EBADDATA           = Errno(245)
539	EUNKNOWN           = Errno(246)
540	ENOTSUP            = Errno(247)
541	EBADNAME           = Errno(248)
542	ENOTSAFE           = Errno(249)
543	ELEMULTITHREADFORK = Errno(257)
544	ECUNNOENV          = Errno(258)
545	ECUNNOCONV         = Errno(259)
546	ECUNNOTALIGNED     = Errno(260)
547	ECUNERR            = Errno(262)
548	EIBMBADCALL        = Errno(1000)
549	EIBMBADPARM        = Errno(1001)
550	EIBMSOCKOUTOFRANGE = Errno(1002)
551	EIBMSOCKINUSE      = Errno(1003)
552	EIBMIUCVERR        = Errno(1004)
553	EOFFLOADboxERROR   = Errno(1005)
554	EOFFLOADboxRESTART = Errno(1006)
555	EOFFLOADboxDOWN    = Errno(1007)
556	EIBMCONFLICT       = Errno(1008)
557	EIBMCANCELLED      = Errno(1009)
558	EIBMBADTCPNAME     = Errno(1011)
559	ENOTBLK            = Errno(1100)
560	ETXTBSY            = Errno(1101)
561	EWOULDBLOCK        = Errno(1102)
562	EINPROGRESS        = Errno(1103)
563	EALREADY           = Errno(1104)
564	ENOTSOCK           = Errno(1105)
565	EDESTADDRREQ       = Errno(1106)
566	EMSGSIZE           = Errno(1107)
567	EPROTOTYPE         = Errno(1108)
568	ENOPROTOOPT        = Errno(1109)
569	EPROTONOSUPPORT    = Errno(1110)
570	ESOCKTNOSUPPORT    = Errno(1111)
571	EOPNOTSUPP         = Errno(1112)
572	EPFNOSUPPORT       = Errno(1113)
573	EAFNOSUPPORT       = Errno(1114)
574	EADDRINUSE         = Errno(1115)
575	EADDRNOTAVAIL      = Errno(1116)
576	ENETDOWN           = Errno(1117)
577	ENETUNREACH        = Errno(1118)
578	ENETRESET          = Errno(1119)
579	ECONNABORTED       = Errno(1120)
580	ECONNRESET         = Errno(1121)
581	ENOBUFS            = Errno(1122)
582	EISCONN            = Errno(1123)
583	ENOTCONN           = Errno(1124)
584	ESHUTDOWN          = Errno(1125)
585	ETOOMANYREFS       = Errno(1126)
586	ETIMEDOUT          = Errno(1127)
587	ECONNREFUSED       = Errno(1128)
588	EHOSTDOWN          = Errno(1129)
589	EHOSTUNREACH       = Errno(1130)
590	EPROCLIM           = Errno(1131)
591	EUSERS             = Errno(1132)
592	EDQUOT             = Errno(1133)
593	ESTALE             = Errno(1134)
594	EREMOTE            = Errno(1135)
595	ENOSTR             = Errno(1136)
596	ETIME              = Errno(1137)
597	ENOSR              = Errno(1138)
598	ENOMSG             = Errno(1139)
599	EBADMSG            = Errno(1140)
600	EIDRM              = Errno(1141)
601	ENONET             = Errno(1142)
602	ERREMOTE           = Errno(1143)
603	ENOLINK            = Errno(1144)
604	EADV               = Errno(1145)
605	ESRMNT             = Errno(1146)
606	ECOMM              = Errno(1147)
607	EPROTO             = Errno(1148)
608	EMULTIHOP          = Errno(1149)
609	EDOTDOT            = Errno(1150)
610	EREMCHG            = Errno(1151)
611	ECANCELED          = Errno(1152)
612	EINTRNODATA        = Errno(1159)
613	ENOREUSE           = Errno(1160)
614	ENOMOVE            = Errno(1161)
615)
616
617// Signals
618const (
619	SIGHUP    = Signal(1)
620	SIGINT    = Signal(2)
621	SIGABRT   = Signal(3)
622	SIGILL    = Signal(4)
623	SIGPOLL   = Signal(5)
624	SIGURG    = Signal(6)
625	SIGSTOP   = Signal(7)
626	SIGFPE    = Signal(8)
627	SIGKILL   = Signal(9)
628	SIGBUS    = Signal(10)
629	SIGSEGV   = Signal(11)
630	SIGSYS    = Signal(12)
631	SIGPIPE   = Signal(13)
632	SIGALRM   = Signal(14)
633	SIGTERM   = Signal(15)
634	SIGUSR1   = Signal(16)
635	SIGUSR2   = Signal(17)
636	SIGABND   = Signal(18)
637	SIGCONT   = Signal(19)
638	SIGCHLD   = Signal(20)
639	SIGTTIN   = Signal(21)
640	SIGTTOU   = Signal(22)
641	SIGIO     = Signal(23)
642	SIGQUIT   = Signal(24)
643	SIGTSTP   = Signal(25)
644	SIGTRAP   = Signal(26)
645	SIGIOERR  = Signal(27)
646	SIGWINCH  = Signal(28)
647	SIGXCPU   = Signal(29)
648	SIGXFSZ   = Signal(30)
649	SIGVTALRM = Signal(31)
650	SIGPROF   = Signal(32)
651	SIGDANGER = Signal(33)
652	SIGTHSTOP = Signal(34)
653	SIGTHCONT = Signal(35)
654	SIGTRACE  = Signal(37)
655	SIGDCE    = Signal(38)
656	SIGDUMP   = Signal(39)
657)
658
659// Error table
660var errorList = [...]struct {
661	num  Errno
662	name string
663	desc string
664}{
665	{1, "EDC5001I", "A domain error occurred."},
666	{2, "EDC5002I", "A range error occurred."},
667	{111, "EDC5111I", "Permission denied."},
668	{112, "EDC5112I", "Resource temporarily unavailable."},
669	{113, "EDC5113I", "Bad file descriptor."},
670	{114, "EDC5114I", "Resource busy."},
671	{115, "EDC5115I", "No child processes."},
672	{116, "EDC5116I", "Resource deadlock avoided."},
673	{117, "EDC5117I", "File exists."},
674	{118, "EDC5118I", "Incorrect address."},
675	{119, "EDC5119I", "File too large."},
676	{120, "EDC5120I", "Interrupted function call."},
677	{121, "EDC5121I", "Invalid argument."},
678	{122, "EDC5122I", "Input/output error."},
679	{123, "EDC5123I", "Is a directory."},
680	{124, "EDC5124I", "Too many open files."},
681	{125, "EDC5125I", "Too many links."},
682	{126, "EDC5126I", "Filename too long."},
683	{127, "EDC5127I", "Too many open files in system."},
684	{128, "EDC5128I", "No such device."},
685	{129, "EDC5129I", "No such file or directory."},
686	{130, "EDC5130I", "Exec format error."},
687	{131, "EDC5131I", "No locks available."},
688	{132, "EDC5132I", "Not enough memory."},
689	{133, "EDC5133I", "No space left on device."},
690	{134, "EDC5134I", "Function not implemented."},
691	{135, "EDC5135I", "Not a directory."},
692	{136, "EDC5136I", "Directory not empty."},
693	{137, "EDC5137I", "Inappropriate I/O control operation."},
694	{138, "EDC5138I", "No such device or address."},
695	{139, "EDC5139I", "Operation not permitted."},
696	{140, "EDC5140I", "Broken pipe."},
697	{141, "EDC5141I", "Read-only file system."},
698	{142, "EDC5142I", "Invalid seek."},
699	{143, "EDC5143I", "No such process."},
700	{144, "EDC5144I", "Improper link."},
701	{145, "EDC5145I", "The parameter list is too long, or the message to receive was too large for the buffer."},
702	{146, "EDC5146I", "Too many levels of symbolic links."},
703	{147, "EDC5147I", "Illegal byte sequence."},
704	{148, "", ""},
705	{149, "EDC5149I", "Value Overflow Error."},
706	{150, "EDC5150I", "UNIX System Services is not active."},
707	{151, "EDC5151I", "Dynamic allocation error."},
708	{152, "EDC5152I", "Common VTOC access facility (CVAF) error."},
709	{153, "EDC5153I", "Catalog obtain error."},
710	{156, "EDC5156I", "Process initialization error."},
711	{157, "EDC5157I", "An internal error has occurred."},
712	{158, "EDC5158I", "Bad parameters were passed to the service."},
713	{159, "EDC5159I", "The Physical File System encountered a permanent file error."},
714	{160, "EDC5160I", "Bad character in environment variable name."},
715	{162, "EDC5162I", "The Physical File System encountered a system error."},
716	{163, "EDC5163I", "SAF/RACF extract error."},
717	{164, "EDC5164I", "SAF/RACF error."},
718	{165, "EDC5165I", "System TOD clock not set."},
719	{166, "EDC5166I", "Access mode argument on function call conflicts with PATHOPTS parameter on JCL DD statement."},
720	{167, "EDC5167I", "Access to the UNIX System Services version of the C RTL is denied."},
721	{168, "EDC5168I", "Password has expired."},
722	{169, "EDC5169I", "Password is invalid."},
723	{170, "EDC5170I", "An error was encountered with WLM."},
724	{171, "EDC5171I", "An error was encountered with CPL."},
725	{172, "EDC5172I", "An error was encountered with Application Response Measurement (ARM) component."},
726	{200, "EDC5200I", "The application contains a Language Environment member language that cannot tolerate a fork()."},
727	{201, "EDC5201I", "The Language Environment message file was not found in the hierarchical file system."},
728	{202, "EDC5202E", "DLL facilities are not supported under SPC environment."},
729	{203, "EDC5203E", "DLL facilities are not supported under POSIX environment."},
730	{227, "EDC5227I", "Buffer is not long enough to contain a path definition"},
731	{228, "EDC5228I", "The file referred to is an external link"},
732	{229, "EDC5229I", "No path definition for ddname in effect"},
733	{230, "EDC5230I", "ESM error."},
734	{231, "EDC5231I", "CP or the external security manager had an error"},
735	{232, "EDC5232I", "The function failed because it was invoked from a multithread environment."},
736	{244, "EDC5244I", "The program, module or DLL is not supported in this environment."},
737	{245, "EDC5245I", "Data is not valid."},
738	{246, "EDC5246I", "Unknown system state."},
739	{247, "EDC5247I", "Operation not supported."},
740	{248, "EDC5248I", "The object name specified is not correct."},
741	{249, "EDC5249I", "The function is not allowed."},
742	{257, "EDC5257I", "Function cannot be called in the child process of a fork() from a multithreaded process until exec() is called."},
743	{258, "EDC5258I", "A CUN_RS_NO_UNI_ENV error was issued by Unicode Services."},
744	{259, "EDC5259I", "A CUN_RS_NO_CONVERSION error was issued by Unicode Services."},
745	{260, "EDC5260I", "A CUN_RS_TABLE_NOT_ALIGNED error was issued by Unicode Services."},
746	{262, "EDC5262I", "An iconv() function encountered an unexpected error while using Unicode Services."},
747	{1000, "EDC8000I", "A bad socket-call constant was found in the IUCV header."},
748	{1001, "EDC8001I", "An error was found in the IUCV header."},
749	{1002, "EDC8002I", "A socket descriptor is out of range."},
750	{1003, "EDC8003I", "A socket descriptor is in use."},
751	{1004, "EDC8004I", "Request failed because of an IUCV error."},
752	{1005, "EDC8005I", "Offload box error."},
753	{1006, "EDC8006I", "Offload box restarted."},
754	{1007, "EDC8007I", "Offload box down."},
755	{1008, "EDC8008I", "Already a conflicting call outstanding on socket."},
756	{1009, "EDC8009I", "Request cancelled using a SOCKcallCANCEL request."},
757	{1011, "EDC8011I", "A name of a PFS was specified that either is not configured or is not a Sockets PFS."},
758	{1100, "EDC8100I", "Block device required."},
759	{1101, "EDC8101I", "Text file busy."},
760	{1102, "EDC8102I", "Operation would block."},
761	{1103, "EDC8103I", "Operation now in progress."},
762	{1104, "EDC8104I", "Connection already in progress."},
763	{1105, "EDC8105I", "Socket operation on non-socket."},
764	{1106, "EDC8106I", "Destination address required."},
765	{1107, "EDC8107I", "Message too long."},
766	{1108, "EDC8108I", "Protocol wrong type for socket."},
767	{1109, "EDC8109I", "Protocol not available."},
768	{1110, "EDC8110I", "Protocol not supported."},
769	{1111, "EDC8111I", "Socket type not supported."},
770	{1112, "EDC8112I", "Operation not supported on socket."},
771	{1113, "EDC8113I", "Protocol family not supported."},
772	{1114, "EDC8114I", "Address family not supported."},
773	{1115, "EDC8115I", "Address already in use."},
774	{1116, "EDC8116I", "Address not available."},
775	{1117, "EDC8117I", "Network is down."},
776	{1118, "EDC8118I", "Network is unreachable."},
777	{1119, "EDC8119I", "Network dropped connection on reset."},
778	{1120, "EDC8120I", "Connection ended abnormally."},
779	{1121, "EDC8121I", "Connection reset."},
780	{1122, "EDC8122I", "No buffer space available."},
781	{1123, "EDC8123I", "Socket already connected."},
782	{1124, "EDC8124I", "Socket not connected."},
783	{1125, "EDC8125I", "Can't send after socket shutdown."},
784	{1126, "EDC8126I", "Too many references; can't splice."},
785	{1127, "EDC8127I", "Connection timed out."},
786	{1128, "EDC8128I", "Connection refused."},
787	{1129, "EDC8129I", "Host is not available."},
788	{1130, "EDC8130I", "Host cannot be reached."},
789	{1131, "EDC8131I", "Too many processes."},
790	{1132, "EDC8132I", "Too many users."},
791	{1133, "EDC8133I", "Disk quota exceeded."},
792	{1134, "EDC8134I", "Stale file handle."},
793	{1135, "", ""},
794	{1136, "EDC8136I", "File is not a STREAM."},
795	{1137, "EDC8137I", "STREAMS ioctl() timeout."},
796	{1138, "EDC8138I", "No STREAMS resources."},
797	{1139, "EDC8139I", "The message identified by set_id and msg_id is not in the message catalog."},
798	{1140, "EDC8140I", "Bad message."},
799	{1141, "EDC8141I", "Identifier removed."},
800	{1142, "", ""},
801	{1143, "", ""},
802	{1144, "EDC8144I", "The link has been severed."},
803	{1145, "", ""},
804	{1146, "", ""},
805	{1147, "", ""},
806	{1148, "EDC8148I", "Protocol error."},
807	{1149, "EDC8149I", "Multihop not allowed."},
808	{1150, "", ""},
809	{1151, "", ""},
810	{1152, "EDC8152I", "The asynchronous I/O request has been canceled."},
811	{1159, "EDC8159I", "Function call was interrupted before any data was received."},
812	{1160, "EDC8160I", "Socket reuse is not supported."},
813	{1161, "EDC8161I", "The file system cannot currently be moved."},
814}
815
816// Signal table
817var signalList = [...]struct {
818	num  Signal
819	name string
820	desc string
821}{
822	{1, "SIGHUP", "hangup"},
823	{2, "SIGINT", "interrupt"},
824	{3, "SIGABT", "aborted"},
825	{4, "SIGILL", "illegal instruction"},
826	{5, "SIGPOLL", "pollable event"},
827	{6, "SIGURG", "urgent I/O condition"},
828	{7, "SIGSTOP", "stop process"},
829	{8, "SIGFPE", "floating point exception"},
830	{9, "SIGKILL", "killed"},
831	{10, "SIGBUS", "bus error"},
832	{11, "SIGSEGV", "segmentation fault"},
833	{12, "SIGSYS", "bad argument to routine"},
834	{13, "SIGPIPE", "broken pipe"},
835	{14, "SIGALRM", "alarm clock"},
836	{15, "SIGTERM", "terminated"},
837	{16, "SIGUSR1", "user defined signal 1"},
838	{17, "SIGUSR2", "user defined signal 2"},
839	{18, "SIGABND", "abend"},
840	{19, "SIGCONT", "continued"},
841	{20, "SIGCHLD", "child exited"},
842	{21, "SIGTTIN", "stopped (tty input)"},
843	{22, "SIGTTOU", "stopped (tty output)"},
844	{23, "SIGIO", "I/O possible"},
845	{24, "SIGQUIT", "quit"},
846	{25, "SIGTSTP", "stopped"},
847	{26, "SIGTRAP", "trace/breakpoint trap"},
848	{27, "SIGIOER", "I/O error"},
849	{28, "SIGWINCH", "window changed"},
850	{29, "SIGXCPU", "CPU time limit exceeded"},
851	{30, "SIGXFSZ", "file size limit exceeded"},
852	{31, "SIGVTALRM", "virtual timer expired"},
853	{32, "SIGPROF", "profiling timer expired"},
854	{33, "SIGDANGER", "danger"},
855	{34, "SIGTHSTOP", "stop thread"},
856	{35, "SIGTHCONT", "continue thread"},
857	{37, "SIGTRACE", "trace"},
858	{38, "", "DCE"},
859	{39, "SIGDUMP", "dump"},
860}
861