2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright (C) 1995,1996 Matthias Ettrich
9 *======================================================
10 A table for translating OS/2 API return code into errno.
11 Copied from emx library source. */
13 #ifndef _OS2_ERRORTABLE_H
14 #define _OS2_ERRORTABLE_H
19 static unsigned char const errno_tab
[] =
21 EINVAL
, EINVAL
, ENOENT
, ENOENT
, EMFILE
, /* 0..4 */
22 EACCES
, EBADF
, EIO
, ENOMEM
, EIO
, /* 5..9 */
23 EINVAL
, ENOEXEC
,EINVAL
, EINVAL
, EINVAL
, /* 10..14 */
24 ENOENT
, EBUSY
, EXDEV
, ENOENT
, EROFS
, /* 15..19 */
25 EIO
, EIO
, EIO
, EIO
, EIO
, /* 20..24 */
26 EIO
, EIO
, EIO
, ENOSPC
, EIO
, /* 25..29 */
27 EIO
, EIO
, EACCES
, EACCES
, EIO
, /* 30..34 */
28 EIO
, EIO
, EIO
, EIO
, ENOSPC
, /* 35..39 */
29 EIO
, EIO
, EIO
, EIO
, EIO
, /* 40..44 */
30 EIO
, EIO
, EIO
, EIO
, EIO
, /* 45..49 */
31 EIO
, EIO
, EIO
, EIO
, EBUSY
, /* 50..54 */
32 EIO
, EIO
, EIO
, EIO
, EIO
, /* 55..59 */
33 EIO
, ENOSPC
, ENOSPC
, EIO
, EIO
, /* 60..64 */
34 EACCES
, EIO
, EIO
, EIO
, EIO
, /* 65..69 */
35 EIO
, EIO
, EIO
, EROFS
, EIO
, /* 70..74 */
36 EIO
, EIO
, EIO
, EIO
, EIO
, /* 75..79 */
37 EEXIST
, EIO
, ENOENT
, EIO
, EIO
, /* 80..84 */
38 EIO
, EIO
, EINVAL
, EIO
, EAGAIN
, /* 85..89 */
39 EIO
, EIO
, EIO
, EIO
, EIO
, /* 90..94 */
40 EINTR
, EIO
, EIO
, EIO
, EACCES
, /* 95..99 */
41 ENOMEM
, EINVAL
, EINVAL
, ENOMEM
, EINVAL
, /* 100..104 */
42 EINVAL
, ENOMEM
, EIO
, EACCES
, EPIPE
, /* 105..109 */
43 ENOENT
, E2BIG
, ENOSPC
, ENOMEM
, EINVAL
, /* 110..114 */
44 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 115..119 */
45 EINVAL
, EINVAL
, EINVAL
, ENOENT
, EINVAL
, /* 120..124 */
46 ENOENT
, ENOENT
, ENOENT
, ECHILD
, ECHILD
, /* 125..129 */
47 EACCES
, EINVAL
, ESPIPE
, EINVAL
, EINVAL
, /* 130..134 */
48 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 135..139 */
49 EINVAL
, EINVAL
, EBUSY
, EINVAL
, EINVAL
, /* 140..144 */
50 EINVAL
, EINVAL
, EINVAL
, EBUSY
, EINVAL
, /* 145..149 */
51 EINVAL
, EINVAL
, ENOMEM
, EINVAL
, EINVAL
, /* 150..154 */
52 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 155..159 */
53 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EAGAIN
, /* 160..164 */
54 EINVAL
, EINVAL
, EACCES
, EINVAL
, EINVAL
, /* 165..169 */
55 EBUSY
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 170..174 */
56 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 175..179 */
57 EINVAL
, EINVAL
, EINVAL
, EINVAL
, ECHILD
, /* 180..184 */
58 EINVAL
, EINVAL
, ENOENT
, EINVAL
, EINVAL
, /* 185..189 */
59 ENOEXEC
,ENOEXEC
,ENOEXEC
,ENOEXEC
,ENOEXEC
, /* 190..194 */
60 ENOEXEC
,ENOEXEC
,ENOEXEC
,ENOEXEC
,ENOEXEC
, /* 195..199 */
61 ENOEXEC
,ENOEXEC
,ENOEXEC
,ENOENT
, EINVAL
, /* 200..204 */
62 EINVAL
, ENAMETOOLONG
, EINVAL
, EINVAL
, EINVAL
, /* 205..209 */
63 EINVAL
, EINVAL
, EACCES
, ENOEXEC
,ENOEXEC
, /* 210..214 */
64 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 215..219 */
65 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 220..224 */
66 EINVAL
, EINVAL
, EINVAL
, ECHILD
, EINVAL
, /* 225..229 */
67 EINVAL
, EBUSY
, EAGAIN
, ENOTCONN
, EINVAL
, /* 230..234 */
68 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 235..239 */
69 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 240..244 */
70 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 245..249 */
71 EACCES
, EACCES
, EINVAL
, ENOENT
, EINVAL
, /* 250..254 */
72 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 255..259 */
73 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 260..264 */
74 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 265..269 */
75 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 270..274 */
76 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 275..279 */
77 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EEXIST
, /* 280..284 */
78 EEXIST
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 285..289 */
79 ENOMEM
, EMFILE
, EINVAL
, EINVAL
, EINVAL
, /* 290..294 */
80 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EINVAL
, /* 295..299 */
81 EINVAL
, EBUSY
, EINVAL
, ESRCH
, EINVAL
, /* 300..304 */
82 ESRCH
, EINVAL
, EINVAL
, EINVAL
, ESRCH
, /* 305..309 */
83 EINVAL
, ENOMEM
, EINVAL
, EINVAL
, EINVAL
, /* 310..314 */
84 EINVAL
, E2BIG
, ENOENT
, EIO
, EIO
, /* 315..319 */
85 EINVAL
, EINVAL
, EINVAL
, EINVAL
, EAGAIN
, /* 320..324 */
86 EINVAL
, EINVAL
, EINVAL
, EIO
, ENOENT
, /* 325..329 */
87 EACCES
, EACCES
, EACCES
, ENOENT
, ENOMEM
/* 330..334 */
90 inline int TranslateOS2Error(unsigned long rc
)
92 if (rc
>= sizeof (errno_tab
))
98 #endif /* _OS2_ERRORTABLE_H */