1 /*
2 Title: Error Messages.
3 Copyright (c) 2012, 2017, 2019 David C. J. Matthews
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License version 2.1 as published by the Free Software Foundation.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public
15 License along with this library; if not, write to the Free Software
16 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17
18 */
19
20 #ifdef HAVE_CONFIG_H
21 #include "config.h"
22 #elif defined(_WIN32)
23 #include "winconfig.h"
24 #else
25 #error "No configuration file"
26 #endif
27
28 #if (defined(_WIN32))
29 #include <winsock2.h>
30 #endif
31
32 #ifdef HAVE_WINDOWS_H
33 #include <windows.h>
34 #endif
35
36 #ifdef HAVE_ERRNO_H
37 #include <errno.h>
38 #endif
39
40 #ifdef HAVE_STRING_H
41 #include <string.h>
42 #endif
43
44 #include "errors.h"
45
46 static struct {
47 int errorNum;
48 const char* errorString;
49 } errortable[] =
50 {
51 #if (!defined(_WIN32))
52 #ifdef EPERM
53 { EPERM, "EPERM" },
54 #endif
55 #ifdef ENOENT
56 { ENOENT, "ENOENT" },
57 #endif
58 #ifdef ESRCH
59 { ESRCH, "ESRCH" },
60 #endif
61 #ifdef EINTR
62 { EINTR, "EINTR"},
63 #endif
64 #ifdef EIO
65 { EIO, "EIO"},
66 #endif
67 #ifdef ENXIO
68 { ENXIO, "ENXIO"},
69 #endif
70 #ifdef E2BIG
71 { E2BIG, "E2BIG"},
72 #endif
73 #ifdef ENOEXEC
74 { ENOEXEC, "ENOEXEC"},
75 #endif
76 #ifdef EBADF
77 { EBADF, "EBADF"},
78 #endif
79 #ifdef ECHILD
80 { ECHILD, "ECHILD"},
81 #endif
82 #ifdef EAGAIN
83 { EAGAIN, "EAGAIN"},
84 #endif
85 #ifdef EDEADLK
86 { EDEADLK, "EDEADLK"},
87 #endif
88 #ifdef ENOMEM
89 { ENOMEM, "ENOMEM"},
90 #endif
91 #ifdef EACCES
92 { EACCES, "EACCES"},
93 #endif
94 #ifdef EFAULT
95 { EFAULT, "EFAULT"},
96 #endif
97 #ifdef ENOTBLK
98 { ENOTBLK, "ENOTBLK"},
99 #endif
100 #ifdef EBUSY
101 { EBUSY, "EBUSY"},
102 #endif
103 #ifdef EEXIST
104 { EEXIST, "EEXIST"},
105 #endif
106 #ifdef EXDEV
107 { EXDEV, "EXDEV"},
108 #endif
109 #ifdef ENODEV
110 { ENODEV, "ENODEV"},
111 #endif
112 #ifdef ENOTDIR
113 { ENOTDIR, "ENOTDIR"},
114 #endif
115 #ifdef EISDIR
116 { EISDIR, "EISDIR"},
117 #endif
118 #ifdef EINVAL
119 { EINVAL, "EINVAL"},
120 #endif
121 #ifdef ENFILE
122 { ENFILE, "ENFILE"},
123 #endif
124 #ifdef EMFILE
125 { EMFILE, "EMFILE"},
126 #endif
127 #ifdef ENOTTY
128 { ENOTTY, "ENOTTY"},
129 #endif
130 #ifdef ETXTBSY
131 { ETXTBSY, "ETXTBSY"},
132 #endif
133 #ifdef EFBIG
134 { EFBIG, "EFBIG"},
135 #endif
136 #ifdef ENOSPC
137 { ENOSPC, "ENOSPC"},
138 #endif
139 #ifdef ESPIPE
140 { ESPIPE, "ESPIPE"},
141 #endif
142 #ifdef EROFS
143 { EROFS, "EROFS"},
144 #endif
145 #ifdef EMLINK
146 { EMLINK, "EMLINK"},
147 #endif
148 #ifdef EPIPE
149 { EPIPE, "EPIPE"},
150 #endif
151 #ifdef EDOM
152 { EDOM, "EDOM"},
153 #endif
154 #ifdef ERANGE
155 { ERANGE, "ERANGE"},
156 #endif
157 #ifdef ENOMSG
158 { ENOMSG, "ENOMSG"},
159 #endif
160 #ifdef EUCLEAN
161 { EUCLEAN, "EUCLEAN"},
162 #endif
163 #ifdef EWOULDBLOCK
164 { EWOULDBLOCK, "EWOULDBLOCK"},
165 #endif
166 #ifdef EIDRM
167 { EIDRM, "EIDRM"},
168 #endif
169 #ifdef EINPROGRESS
170 { EINPROGRESS, "EINPROGRESS"},
171 #endif
172 #ifdef ECHRNG
173 { ECHRNG, "ECHRNG"},
174 #endif
175 #ifdef EALREADY
176 { EALREADY, "EALREADY"},
177 #endif
178 #ifdef EL2NSYNC
179 { EL2NSYNC, "EL2NSYNC"},
180 #endif
181 #ifdef ENAMETOOLONG
182 { ENAMETOOLONG, "ENAMETOOLONG"},
183 #endif
184 #ifdef ENOTSOCK
185 { ENOTSOCK, "ENOTSOCK"},
186 #endif
187 #ifdef EL3HLT
188 { EL3HLT, "EL3HLT"},
189 #endif
190 #ifdef ENOLCK
191 { ENOLCK, "ENOLCK"},
192 #endif
193 #ifdef EDESTADDRREQ
194 { EDESTADDRREQ, "EDESTADDRREQ"},
195 #endif
196 #ifdef EL3RST
197 { EL3RST, "EL3RST"},
198 #endif
199 #ifdef ENOSYS
200 { ENOSYS, "ENOSYS"},
201 #endif
202 #ifdef EMSGSIZE
203 { EMSGSIZE, "EMSGSIZE"},
204 #endif
205 #ifdef ELNRNG
206 { ELNRNG, "ELNRNG"},
207 #endif
208 #ifdef ENOTEMPTY
209 { ENOTEMPTY, "ENOTEMPTY"},
210 #endif
211 #ifdef EPROTOTYPE
212 { EPROTOTYPE, "EPROTOTYPE"},
213 #endif
214 #ifdef EUNATCH
215 { EUNATCH, "EUNATCH"},
216 #endif
217 #ifdef EILSEQ
218 { EILSEQ, "EILSEQ"},
219 #endif
220 #ifdef ENOPROTOOPT
221 { ENOPROTOOPT, "ENOPROTOOPT"},
222 #endif
223 #ifdef ENOCSI
224 { ENOCSI, "ENOCSI"},
225 #endif
226 #ifdef EPROTONOSUPPORT
227 { EPROTONOSUPPORT, "EPROTONOSUPPORT"},
228 #endif
229 #ifdef EL2HLT
230 { EL2HLT, "EL2HLT"},
231 #endif
232 #ifdef ESOCKTNOSUPPORT
233 { ESOCKTNOSUPPORT, "ESOCKTNOSUPPORT"},
234 #endif
235 #ifdef EOPNOTSUPP
236 { EOPNOTSUPP, "EOPNOTSUPP"},
237 #endif
238 #ifdef ENOTREADY
239 { ENOTREADY, "ENOTREADY"},
240 #endif
241 #ifdef EPFNOSUPPORT
242 { EPFNOSUPPORT, "EPFNOSUPPORT"},
243 #endif
244 #ifdef EWRPROTECT
245 { EWRPROTECT, "EWRPROTECT"},
246 #endif
247 #ifdef EAFNOSUPPORT
248 { EAFNOSUPPORT, "EAFNOSUPPORT"},
249 #endif
250 #ifdef EFORMAT
251 { EFORMAT, "EFORMAT"},
252 #endif
253 #ifdef EADDRINUSE
254 { EADDRINUSE, "EADDRINUSE"},
255 #endif
256 #ifdef EADDRNOTAVAIL
257 { EADDRNOTAVAIL, "EADDRNOTAVAIL"},
258 #endif
259 #ifdef ENOCONNECT
260 { ENOCONNECT, "ENOCONNECT"},
261 #endif
262 #ifdef ENETDOWN
263 { ENETDOWN, "ENETDOWN"},
264 #endif
265 #ifdef ESTALE
266 { ESTALE, "ESTALE"},
267 #endif
268 #ifdef ENETUNREACH
269 { ENETUNREACH, "ENETUNREACH"},
270 #endif
271 #ifdef EDIST
272 { EDIST, "EDIST"},
273 #endif
274 #ifdef ENETRESET
275 { ENETRESET, "ENETRESET"},
276 #endif
277 #ifdef ECONNABORTED
278 { ECONNABORTED, "ECONNABORTED"},
279 #endif
280 #ifdef ECONNRESET
281 { ECONNRESET, "ECONNRESET"},
282 #endif
283 #ifdef ENOBUFS
284 { ENOBUFS, "ENOBUFS"},
285 #endif
286 #ifdef EISCONN
287 { EISCONN, "EISCONN"},
288 #endif
289 #ifdef ENOTCONN
290 { ENOTCONN, "ENOTCONN"},
291 #endif
292 #ifdef ESHUTDOWN
293 { ESHUTDOWN, "ESHUTDOWN"},
294 #endif
295 #ifdef ETOOMANYREFS
296 { ETOOMANYREFS, "ETOOMANYREFS"},
297 #endif
298 #ifdef ETIMEDOUT
299 { ETIMEDOUT, "ETIMEDOUT"},
300 #endif
301 #ifdef ECONNREFUSED
302 { ECONNREFUSED, "ECONNREFUSED"},
303 #endif
304 #ifdef ELOOP
305 { ELOOP, "ELOOP"},
306 #endif
307 #ifdef EHOSTDOWN
308 { EHOSTDOWN, "EHOSTDOWN"},
309 #endif
310 #ifdef EHOSTUNREACH
311 { EHOSTUNREACH, "EHOSTUNREACH"},
312 #endif
313 #ifdef EPROCLIM
314 { EPROCLIM, "EPROCLIM"},
315 #endif
316 #ifdef EUSERS
317 { EUSERS, "EUSERS"},
318 #endif
319 #ifdef EDQUOT
320 { EDQUOT, "EDQUOT"},
321 #endif
322 #ifdef EREMOTE
323 { EREMOTE, "EREMOTE"},
324 #endif
325 #ifdef ENOSTR
326 { ENOSTR, "ENOSTR"},
327 #endif
328 #ifdef EBADRPC
329 { EBADRPC, "EBADRPC"},
330 #endif
331 #ifdef ETIME
332 { ETIME, "ETIME"},
333 #endif
334 #ifdef ERPCMISMATCH
335 { ERPCMISMATCH, "ERPCMISMATCH"},
336 #endif
337 #ifdef ENOSR
338 { ENOSR, "ENOSR"},
339 #endif
340 #ifdef EPROGUNAVAIL
341 { EPROGUNAVAIL, "EPROGUNAVAIL"},
342 #endif
343 #ifdef EPROGMISMATCH
344 { EPROGMISMATCH, "EPROGMISMATCH"},
345 #endif
346 #ifdef EBADMSG
347 { EBADMSG, "EBADMSG"},
348 #endif
349 #ifdef EPROCUNAVAIL
350 { EPROCUNAVAIL, "EPROCUNAVAIL"},
351 #endif
352 #ifdef EFTYPE
353 { EFTYPE, "EFTYPE"},
354 #endif
355 #ifdef ENONET
356 { ENONET, "ENONET"},
357 #endif
358 #ifdef EAUTH
359 { EAUTH, "EAUTH"},
360 #endif
361 #ifdef ERESTART
362 { ERESTART, "ERESTART"},
363 #endif
364 #ifdef ERREMOTE
365 { ERREMOTE, "ERREMOTE"},
366 #endif
367 #ifdef ENEEDAUTH
368 { ENEEDAUTH, "ENEEDAUTH"},
369 #endif
370 #ifdef ENOLINK
371 { ENOLINK, "ENOLINK"},
372 #endif
373 #ifdef EADV
374 { EADV, "EADV"},
375 #endif
376 #ifdef ESRMNT
377 { ESRMNT, "ESRMNT"},
378 #endif
379 #ifdef ECOMM
380 { ECOMM, "ECOMM"},
381 #endif
382 #ifdef EPROTO
383 { EPROTO, "EPROTO"},
384 #endif
385 #ifdef EMULTIHOP
386 { EMULTIHOP, "EMULTIHOP"},
387 #endif
388 #ifdef EDOTDOT
389 { EDOTDOT, "EDOTDOT"},
390 #endif
391 #ifdef EREMCHG
392 { EREMCHG, "EREMCHG"},
393 #endif
394 #ifdef EMEDIA
395 { EMEDIA, "EMEDIA"},
396 #endif
397 #ifdef ESOFT
398 { ESOFT, "ESOFT"},
399 #endif
400 #ifdef ENOATTR
401 { ENOATTR, "ENOATTR"},
402 #endif
403 #ifdef ESAD
404 { ESAD, "ESAD"},
405 #endif
406 #ifdef ENOTRUST
407 { ENOTRUST, "ENOTRUST"},
408 #endif
409 #ifdef ECANCELED
410 { ECANCELED, "ECANCELED"},
411 #endif
412 #ifdef ENODATA
413 { ENODATA, "ENODATA"},
414 #endif
415 #ifdef EBADE
416 { EBADE, "EBADE"},
417 #endif
418 #ifdef EBADR
419 { EBADR, "EBADR"},
420 #endif
421 #ifdef EXFULL
422 { EXFULL, "EXFULL"},
423 #endif
424 #ifdef ENOANO
425 { ENOANO, "ENOANO"},
426 #endif
427 #ifdef EBADRQC
428 { EBADRQC, "EBADRQC"},
429 #endif
430 #ifdef EBADSLT
431 { EBADSLT, "EBADSLT"},
432 #endif
433 #ifdef EDEADLOCK
434 { EDEADLOCK, "EDEADLOCK"},
435 #endif
436 #ifdef EBFONT
437 { EBFONT, "EBFONT"},
438 #endif
439 #ifdef EBFONT
440 { EBFONT, "EBFONT"},
441 #endif
442 #ifdef ENOPKG
443 { ENOPKG, "ENOPKG"},
444 #endif
445 #ifdef ELBIN
446 { ELBIN, "ELBIN"},
447 #endif
448 #ifdef ENOTUNIQ
449 { ENOTUNIQ, "ENOTUNIQ"},
450 #endif
451 #ifdef EBADFD
452 { EBADFD, "EBADFD"},
453 #endif
454 #ifdef ELIBACC
455 { ELIBACC, "ELIBACC"},
456 #endif
457 #ifdef ELIBBAD
458 { ELIBBAD, "ELIBBAD"},
459 #endif
460 #ifdef ELIBSCN
461 { ELIBSCN, "ELIBSCN"},
462 #endif
463 #ifdef ELIBMAX
464 { ELIBMAX, "ELIBMAX"},
465 #endif
466 #ifdef ESTRPIPE
467 { ESTRPIPE, "ESTRPIPE"},
468 #endif
469 #ifdef ELIBEXEC
470 { ELIBEXEC, "ELIBEXEC"},
471 #endif
472 #ifdef ENMFILE
473 { ENMFILE, "ENMFILE"},
474 #endif
475 #ifdef ENOTNAM
476 { ENOTNAM, "ENOTNAM"},
477 #endif
478 #ifdef ENAVAIL
479 { ENAVAIL, "ENAVAIL"},
480 #endif
481 #ifdef EISNAM
482 { EISNAM, "EISNAM"},
483 #endif
484 #ifdef EREMOTEIO
485 { EREMOTEIO, "EREMOTEIO"},
486 #endif
487 #ifdef ENOMEDIUM
488 { ENOMEDIUM, "ENOMEDIUM"},
489 #endif
490 #ifdef EMEDIUMTYPE
491 { EMEDIUMTYPE, "EMEDIUMTYPE"},
492 #endif
493 #ifdef ENOKEY
494 { ENOKEY, "ENOKEY"},
495 #endif
496 #ifdef EKEYEXPIRED
497 { EKEYEXPIRED, "EKEYEXPIRED"},
498 #endif
499 #ifdef EKEYREVOKED
500 { EKEYREVOKED, "EKEYREVOKED"},
501 #endif
502 #ifdef EKEYREJECTED
503 { EKEYREJECTED, "EKEYREJECTED"},
504 #endif
505 #ifdef EOWNERDEAD
506 { EOWNERDEAD, "EOWNERDEAD"},
507 #endif
508 #ifdef ENOTRECOVERABLE
509 { ENOTRECOVERABLE, "ENOTRECOVERABLE"},
510 #endif
511 #ifdef ENOTSUP
512 { ENOTSUP, "ENOTSUP"},
513 #endif
514 #ifdef ENOMEDIUM
515 { ENOMEDIUM, "ENOMEDIUM"},
516 #endif
517 #ifdef ENOSHARE
518 { ENOSHARE, "ENOSHARE"},
519 #endif
520 #ifdef ECASECLASH
521 { ECASECLASH, "ECASECLASH"},
522 #endif
523 #ifdef EOVERFLOW
524 { EOVERFLOW, "EOVERFLOW"},
525 #endif
526
527 #else
528 { ERROR_INVALID_FUNCTION, "ERROR_INVALID_FUNCTION" },
529 { ERROR_FILE_NOT_FOUND, "ERROR_FILE_NOT_FOUND" },
530 { ERROR_PATH_NOT_FOUND, "ERROR_PATH_NOT_FOUND" },
531 { ERROR_TOO_MANY_OPEN_FILES, "ERROR_TOO_MANY_OPEN_FILES" },
532 { ERROR_ACCESS_DENIED, "ERROR_ACCESS_DENIED" },
533 { ERROR_INVALID_HANDLE, "ERROR_INVALID_HANDLE" },
534 { ERROR_ARENA_TRASHED, "ERROR_ARENA_TRASHED" },
535 { ERROR_NOT_ENOUGH_MEMORY, "ERROR_NOT_ENOUGH_MEMORY" },
536 { ERROR_INVALID_BLOCK, "ERROR_INVALID_BLOCK" },
537 { ERROR_BAD_ENVIRONMENT, "ERROR_BAD_ENVIRONMENT" },
538 { ERROR_BAD_FORMAT, "ERROR_BAD_FORMAT" },
539 { ERROR_INVALID_ACCESS, "ERROR_INVALID_ACCESS" },
540 { ERROR_INVALID_DATA, "ERROR_INVALID_DATA" },
541 { ERROR_OUTOFMEMORY, "ERROR_OUTOFMEMORY" },
542 { ERROR_INVALID_DRIVE, "ERROR_INVALID_DRIVE" },
543 { ERROR_CURRENT_DIRECTORY, "ERROR_CURRENT_DIRECTORY" },
544 { ERROR_NOT_SAME_DEVICE, "ERROR_NOT_SAME_DEVICE" },
545 { ERROR_NO_MORE_FILES, "ERROR_NO_MORE_FILES" },
546 { ERROR_WRITE_PROTECT, "ERROR_WRITE_PROTECT" },
547 { ERROR_BAD_UNIT, "ERROR_BAD_UNIT" },
548 { ERROR_NOT_READY, "ERROR_NOT_READY" },
549 { ERROR_BAD_COMMAND, "ERROR_BAD_COMMAND" },
550 { ERROR_CRC, "ERROR_CRC" },
551 { ERROR_BAD_LENGTH, "ERROR_BAD_LENGTH" },
552 { ERROR_SEEK, "ERROR_SEEK" },
553 { ERROR_NOT_DOS_DISK, "ERROR_NOT_DOS_DISK" },
554 { ERROR_SECTOR_NOT_FOUND, "ERROR_SECTOR_NOT_FOUND" },
555 { ERROR_OUT_OF_PAPER, "ERROR_OUT_OF_PAPER" },
556 { ERROR_WRITE_FAULT, "ERROR_WRITE_FAULT" },
557 { ERROR_READ_FAULT, "ERROR_READ_FAULT" },
558 { ERROR_GEN_FAILURE, "ERROR_GEN_FAILURE" },
559 { ERROR_SHARING_VIOLATION, "ERROR_SHARING_VIOLATION" },
560 { ERROR_LOCK_VIOLATION, "ERROR_LOCK_VIOLATION" },
561 { ERROR_WRONG_DISK, "ERROR_WRONG_DISK" },
562 { ERROR_SHARING_BUFFER_EXCEEDED, "ERROR_SHARING_BUFFER_EXCEEDED" },
563 { ERROR_HANDLE_EOF, "ERROR_HANDLE_EOF" },
564 { ERROR_HANDLE_DISK_FULL, "ERROR_HANDLE_DISK_FULL" },
565 { ERROR_NOT_SUPPORTED, "ERROR_NOT_SUPPORTED" },
566 { ERROR_REM_NOT_LIST, "ERROR_REM_NOT_LIST" },
567 { ERROR_DUP_NAME, "ERROR_DUP_NAME" },
568 { ERROR_BAD_NETPATH, "ERROR_BAD_NETPATH" },
569 { ERROR_NETWORK_BUSY, "ERROR_NETWORK_BUSY" },
570 { ERROR_DEV_NOT_EXIST, "ERROR_DEV_NOT_EXIST" },
571 { ERROR_TOO_MANY_CMDS, "ERROR_TOO_MANY_CMDS" },
572 { ERROR_ADAP_HDW_ERR, "ERROR_ADAP_HDW_ERR" },
573 { ERROR_BAD_NET_RESP, "ERROR_BAD_NET_RESP" },
574 { ERROR_UNEXP_NET_ERR, "ERROR_UNEXP_NET_ERR" },
575 { ERROR_BAD_REM_ADAP, "ERROR_BAD_REM_ADAP" },
576 { ERROR_PRINTQ_FULL, "ERROR_PRINTQ_FULL" },
577 { ERROR_NO_SPOOL_SPACE, "ERROR_NO_SPOOL_SPACE" },
578 { ERROR_PRINT_CANCELLED, "ERROR_PRINT_CANCELLED" },
579 { ERROR_NETNAME_DELETED, "ERROR_NETNAME_DELETED" },
580 { ERROR_NETWORK_ACCESS_DENIED, "ERROR_NETWORK_ACCESS_DENIED" },
581 { ERROR_BAD_DEV_TYPE, "ERROR_BAD_DEV_TYPE" },
582 { ERROR_BAD_NET_NAME, "ERROR_BAD_NET_NAME" },
583 { ERROR_TOO_MANY_NAMES, "ERROR_TOO_MANY_NAMES" },
584 { ERROR_TOO_MANY_SESS, "ERROR_TOO_MANY_SESS" },
585 { ERROR_SHARING_PAUSED, "ERROR_SHARING_PAUSED" },
586 { ERROR_REQ_NOT_ACCEP, "ERROR_REQ_NOT_ACCEP" },
587 { ERROR_REDIR_PAUSED, "ERROR_REDIR_PAUSED" },
588 { ERROR_FILE_EXISTS, "ERROR_FILE_EXISTS" },
589 { ERROR_CANNOT_MAKE, "ERROR_CANNOT_MAKE" },
590 { ERROR_FAIL_I24, "ERROR_FAIL_I24" },
591 { ERROR_OUT_OF_STRUCTURES, "ERROR_OUT_OF_STRUCTURES" },
592 { ERROR_ALREADY_ASSIGNED, "ERROR_ALREADY_ASSIGNED" },
593 { ERROR_INVALID_PASSWORD, "ERROR_INVALID_PASSWORD" },
594 { ERROR_INVALID_PARAMETER, "ERROR_INVALID_PARAMETER" },
595 { ERROR_NET_WRITE_FAULT, "ERROR_NET_WRITE_FAULT" },
596 { ERROR_NO_PROC_SLOTS, "ERROR_NO_PROC_SLOTS" },
597 { ERROR_TOO_MANY_SEMAPHORES, "ERROR_TOO_MANY_SEMAPHORES" },
598 { ERROR_EXCL_SEM_ALREADY_OWNED, "ERROR_EXCL_SEM_ALREADY_OWNED" },
599 { ERROR_SEM_IS_SET, "ERROR_SEM_IS_SET" },
600 { ERROR_TOO_MANY_SEM_REQUESTS, "ERROR_TOO_MANY_SEM_REQUESTS" },
601 { ERROR_INVALID_AT_INTERRUPT_TIME, "ERROR_INVALID_AT_INTERRUPT_TIME" },
602 { ERROR_SEM_OWNER_DIED, "ERROR_SEM_OWNER_DIED" },
603 { ERROR_SEM_USER_LIMIT, "ERROR_SEM_USER_LIMIT" },
604 { ERROR_DISK_CHANGE, "ERROR_DISK_CHANGE" },
605 { ERROR_DRIVE_LOCKED, "ERROR_DRIVE_LOCKED" },
606 { ERROR_BROKEN_PIPE, "ERROR_BROKEN_PIPE" },
607 { ERROR_OPEN_FAILED, "ERROR_OPEN_FAILED" },
608 { ERROR_BUFFER_OVERFLOW, "ERROR_BUFFER_OVERFLOW" },
609 { ERROR_DISK_FULL, "ERROR_DISK_FULL" },
610 { ERROR_NO_MORE_SEARCH_HANDLES, "ERROR_NO_MORE_SEARCH_HANDLES" },
611 { ERROR_INVALID_TARGET_HANDLE, "ERROR_INVALID_TARGET_HANDLE" },
612 { ERROR_INVALID_CATEGORY, "ERROR_INVALID_CATEGORY" },
613 { ERROR_INVALID_VERIFY_SWITCH, "ERROR_INVALID_VERIFY_SWITCH" },
614 { ERROR_BAD_DRIVER_LEVEL, "ERROR_BAD_DRIVER_LEVEL" },
615 { ERROR_CALL_NOT_IMPLEMENTED, "ERROR_CALL_NOT_IMPLEMENTED" },
616 { ERROR_SEM_TIMEOUT, "ERROR_SEM_TIMEOUT" },
617 { ERROR_INSUFFICIENT_BUFFER, "ERROR_INSUFFICIENT_BUFFER" },
618 { ERROR_INVALID_NAME, "ERROR_INVALID_NAME" },
619 { ERROR_INVALID_LEVEL, "ERROR_INVALID_LEVEL" },
620 { ERROR_NO_VOLUME_LABEL, "ERROR_NO_VOLUME_LABEL" },
621 { ERROR_MOD_NOT_FOUND, "ERROR_MOD_NOT_FOUND" },
622 { ERROR_PROC_NOT_FOUND, "ERROR_PROC_NOT_FOUND" },
623 { ERROR_WAIT_NO_CHILDREN, "ERROR_WAIT_NO_CHILDREN" },
624 { ERROR_CHILD_NOT_COMPLETE, "ERROR_CHILD_NOT_COMPLETE" },
625 { ERROR_DIRECT_ACCESS_HANDLE, "ERROR_DIRECT_ACCESS_HANDLE" },
626 { ERROR_NEGATIVE_SEEK, "ERROR_NEGATIVE_SEEK" },
627 { ERROR_SEEK_ON_DEVICE, "ERROR_SEEK_ON_DEVICE" },
628 { ERROR_IS_JOIN_TARGET, "ERROR_IS_JOIN_TARGET" },
629 { ERROR_IS_JOINED, "ERROR_IS_JOINED" },
630 { ERROR_IS_SUBSTED, "ERROR_IS_SUBSTED" },
631 { ERROR_NOT_JOINED, "ERROR_NOT_JOINED" },
632 { ERROR_NOT_SUBSTED, "ERROR_NOT_SUBSTED" },
633 { ERROR_JOIN_TO_JOIN, "ERROR_JOIN_TO_JOIN" },
634 { ERROR_SUBST_TO_SUBST, "ERROR_SUBST_TO_SUBST" },
635 { ERROR_JOIN_TO_SUBST, "ERROR_JOIN_TO_SUBST" },
636 { ERROR_SUBST_TO_JOIN, "ERROR_SUBST_TO_JOIN" },
637 { ERROR_BUSY_DRIVE, "ERROR_BUSY_DRIVE" },
638 { ERROR_SAME_DRIVE, "ERROR_SAME_DRIVE" },
639 { ERROR_DIR_NOT_ROOT, "ERROR_DIR_NOT_ROOT" },
640 { ERROR_DIR_NOT_EMPTY, "ERROR_DIR_NOT_EMPTY" },
641 { ERROR_IS_SUBST_PATH, "ERROR_IS_SUBST_PATH" },
642 { ERROR_IS_JOIN_PATH, "ERROR_IS_JOIN_PATH" },
643 { ERROR_PATH_BUSY, "ERROR_PATH_BUSY" },
644 { ERROR_IS_SUBST_TARGET, "ERROR_IS_SUBST_TARGET" },
645 { ERROR_SYSTEM_TRACE, "ERROR_SYSTEM_TRACE" },
646 { ERROR_INVALID_EVENT_COUNT, "ERROR_INVALID_EVENT_COUNT" },
647 { ERROR_TOO_MANY_MUXWAITERS, "ERROR_TOO_MANY_MUXWAITERS" },
648 { ERROR_INVALID_LIST_FORMAT, "ERROR_INVALID_LIST_FORMAT" },
649 { ERROR_LABEL_TOO_LONG, "ERROR_LABEL_TOO_LONG" },
650 { ERROR_TOO_MANY_TCBS, "ERROR_TOO_MANY_TCBS" },
651 { ERROR_SIGNAL_REFUSED, "ERROR_SIGNAL_REFUSED" },
652 { ERROR_DISCARDED, "ERROR_DISCARDED" },
653 { ERROR_NOT_LOCKED, "ERROR_NOT_LOCKED" },
654 { ERROR_BAD_THREADID_ADDR, "ERROR_BAD_THREADID_ADDR" },
655 { ERROR_BAD_ARGUMENTS, "ERROR_BAD_ARGUMENTS" },
656 { ERROR_BAD_PATHNAME, "ERROR_BAD_PATHNAME" },
657 { ERROR_SIGNAL_PENDING, "ERROR_SIGNAL_PENDING" },
658 { ERROR_MAX_THRDS_REACHED, "ERROR_MAX_THRDS_REACHED" },
659 { ERROR_LOCK_FAILED, "ERROR_LOCK_FAILED" },
660 { ERROR_BUSY, "ERROR_BUSY" },
661 { ERROR_CANCEL_VIOLATION, "ERROR_CANCEL_VIOLATION" },
662 { ERROR_ATOMIC_LOCKS_NOT_SUPPORTED, "ERROR_ATOMIC_LOCKS_NOT_SUPPORTED" },
663 { ERROR_INVALID_SEGMENT_NUMBER, "ERROR_INVALID_SEGMENT_NUMBER" },
664 { ERROR_INVALID_ORDINAL, "ERROR_INVALID_ORDINAL" },
665 { ERROR_ALREADY_EXISTS, "ERROR_ALREADY_EXISTS" },
666 { ERROR_INVALID_FLAG_NUMBER, "ERROR_INVALID_FLAG_NUMBER" },
667 { ERROR_SEM_NOT_FOUND, "ERROR_SEM_NOT_FOUND" },
668 { ERROR_INVALID_STARTING_CODESEG, "ERROR_INVALID_STARTING_CODESEG" },
669 { ERROR_INVALID_STACKSEG, "ERROR_INVALID_STACKSEG" },
670 { ERROR_INVALID_MODULETYPE, "ERROR_INVALID_MODULETYPE" },
671 { ERROR_INVALID_EXE_SIGNATURE, "ERROR_INVALID_EXE_SIGNATURE" },
672 { ERROR_EXE_MARKED_INVALID, "ERROR_EXE_MARKED_INVALID" },
673 { ERROR_BAD_EXE_FORMAT, "ERROR_BAD_EXE_FORMAT" },
674 { ERROR_ITERATED_DATA_EXCEEDS_64k, "ERROR_ITERATED_DATA_EXCEEDS_64k" },
675 { ERROR_INVALID_MINALLOCSIZE, "ERROR_INVALID_MINALLOCSIZE" },
676 { ERROR_DYNLINK_FROM_INVALID_RING, "ERROR_DYNLINK_FROM_INVALID_RING" },
677 { ERROR_IOPL_NOT_ENABLED, "ERROR_IOPL_NOT_ENABLED" },
678 { ERROR_INVALID_SEGDPL, "ERROR_INVALID_SEGDPL" },
679 { ERROR_AUTODATASEG_EXCEEDS_64k, "ERROR_AUTODATASEG_EXCEEDS_64k" },
680 { ERROR_RING2SEG_MUST_BE_MOVABLE, "ERROR_RING2SEG_MUST_BE_MOVABLE" },
681 { ERROR_RELOC_CHAIN_XEEDS_SEGLIM, "ERROR_RELOC_CHAIN_XEEDS_SEGLIM" },
682 { ERROR_INFLOOP_IN_RELOC_CHAIN, "ERROR_INFLOOP_IN_RELOC_CHAIN" },
683 { ERROR_ENVVAR_NOT_FOUND, "ERROR_ENVVAR_NOT_FOUND" },
684 { ERROR_NO_SIGNAL_SENT, "ERROR_NO_SIGNAL_SENT" },
685 { ERROR_FILENAME_EXCED_RANGE, "ERROR_FILENAME_EXCED_RANGE" },
686 { ERROR_RING2_STACK_IN_USE, "ERROR_RING2_STACK_IN_USE" },
687 { ERROR_META_EXPANSION_TOO_LONG, "ERROR_META_EXPANSION_TOO_LONG" },
688 { ERROR_INVALID_SIGNAL_NUMBER, "ERROR_INVALID_SIGNAL_NUMBER" },
689 { ERROR_THREAD_1_INACTIVE, "ERROR_THREAD_1_INACTIVE" },
690 { ERROR_LOCKED, "ERROR_LOCKED" },
691 { ERROR_TOO_MANY_MODULES, "ERROR_TOO_MANY_MODULES" },
692 { ERROR_NESTING_NOT_ALLOWED, "ERROR_NESTING_NOT_ALLOWED" },
693 #ifdef ERROR_EXE_MACHINE_TYPE_MISMATCH
694 { ERROR_EXE_MACHINE_TYPE_MISMATCH, "ERROR_EXE_MACHINE_TYPE_MISMATCH" },
695 #endif
696 { ERROR_BAD_PIPE, "ERROR_BAD_PIPE" },
697 { ERROR_PIPE_BUSY, "ERROR_PIPE_BUSY" },
698 { ERROR_NO_DATA, "ERROR_NO_DATA" },
699 { ERROR_PIPE_NOT_CONNECTED, "ERROR_PIPE_NOT_CONNECTED" },
700 { ERROR_MORE_DATA, "ERROR_MORE_DATA" },
701 { ERROR_VC_DISCONNECTED, "ERROR_VC_DISCONNECTED" },
702 { ERROR_INVALID_EA_NAME, "ERROR_INVALID_EA_NAME" },
703 { ERROR_EA_LIST_INCONSISTENT, "ERROR_EA_LIST_INCONSISTENT" },
704 { ERROR_NO_MORE_ITEMS, "ERROR_NO_MORE_ITEMS" },
705 { ERROR_CANNOT_COPY, "ERROR_CANNOT_COPY" },
706 { ERROR_DIRECTORY, "ERROR_DIRECTORY" },
707 { ERROR_EAS_DIDNT_FIT, "ERROR_EAS_DIDNT_FIT" },
708 { ERROR_EA_FILE_CORRUPT, "ERROR_EA_FILE_CORRUPT" },
709 { ERROR_EA_TABLE_FULL, "ERROR_EA_TABLE_FULL" },
710 { ERROR_INVALID_EA_HANDLE, "ERROR_INVALID_EA_HANDLE" },
711 { ERROR_EAS_NOT_SUPPORTED, "ERROR_EAS_NOT_SUPPORTED" },
712 { ERROR_NOT_OWNER, "ERROR_NOT_OWNER" },
713 { ERROR_TOO_MANY_POSTS, "ERROR_TOO_MANY_POSTS" },
714 { ERROR_PARTIAL_COPY, "ERROR_PARTIAL_COPY" },
715 { ERROR_MR_MID_NOT_FOUND, "ERROR_MR_MID_NOT_FOUND" },
716 { ERROR_INVALID_ADDRESS, "ERROR_INVALID_ADDRESS" },
717 { ERROR_ARITHMETIC_OVERFLOW, "ERROR_ARITHMETIC_OVERFLOW" },
718 { ERROR_PIPE_CONNECTED, "ERROR_PIPE_CONNECTED" },
719 { ERROR_PIPE_LISTENING, "ERROR_PIPE_LISTENING" },
720 { ERROR_EA_ACCESS_DENIED, "ERROR_EA_ACCESS_DENIED" },
721 { ERROR_OPERATION_ABORTED, "ERROR_OPERATION_ABORTED" },
722 { ERROR_IO_INCOMPLETE, "ERROR_IO_INCOMPLETE" },
723 { ERROR_IO_PENDING, "ERROR_IO_PENDING" },
724 { ERROR_NOACCESS, "ERROR_NOACCESS" },
725 { ERROR_SWAPERROR, "ERROR_SWAPERROR" },
726 { ERROR_STACK_OVERFLOW, "ERROR_STACK_OVERFLOW" },
727 { ERROR_INVALID_MESSAGE, "ERROR_INVALID_MESSAGE" },
728 { ERROR_CAN_NOT_COMPLETE, "ERROR_CAN_NOT_COMPLETE" },
729 { ERROR_INVALID_FLAGS, "ERROR_INVALID_FLAGS" },
730 { ERROR_UNRECOGNIZED_VOLUME, "ERROR_UNRECOGNIZED_VOLUME" },
731 { ERROR_FILE_INVALID, "ERROR_FILE_INVALID" },
732 { ERROR_FULLSCREEN_MODE, "ERROR_FULLSCREEN_MODE" },
733 { ERROR_NO_TOKEN, "ERROR_NO_TOKEN" },
734 { ERROR_BADDB, "ERROR_BADDB" },
735 { ERROR_BADKEY, "ERROR_BADKEY" },
736 { ERROR_CANTOPEN, "ERROR_CANTOPEN" },
737 { ERROR_CANTREAD, "ERROR_CANTREAD" },
738 { ERROR_CANTWRITE, "ERROR_CANTWRITE" },
739 { ERROR_REGISTRY_RECOVERED, "ERROR_REGISTRY_RECOVERED" },
740 { ERROR_REGISTRY_CORRUPT, "ERROR_REGISTRY_CORRUPT" },
741 { ERROR_REGISTRY_IO_FAILED, "ERROR_REGISTRY_IO_FAILED" },
742 { ERROR_NOT_REGISTRY_FILE, "ERROR_NOT_REGISTRY_FILE" },
743 { ERROR_KEY_DELETED, "ERROR_KEY_DELETED" },
744 { ERROR_NO_LOG_SPACE, "ERROR_NO_LOG_SPACE" },
745 { ERROR_KEY_HAS_CHILDREN, "ERROR_KEY_HAS_CHILDREN" },
746 { ERROR_CHILD_MUST_BE_VOLATILE, "ERROR_CHILD_MUST_BE_VOLATILE" },
747 { ERROR_NOTIFY_ENUM_DIR, "ERROR_NOTIFY_ENUM_DIR" },
748 { ERROR_DEPENDENT_SERVICES_RUNNING, "ERROR_DEPENDENT_SERVICES_RUNNING" },
749 { ERROR_INVALID_SERVICE_CONTROL, "ERROR_INVALID_SERVICE_CONTROL" },
750 { ERROR_SERVICE_REQUEST_TIMEOUT, "ERROR_SERVICE_REQUEST_TIMEOUT" },
751 { ERROR_SERVICE_NO_THREAD, "ERROR_SERVICE_NO_THREAD" },
752 { ERROR_SERVICE_DATABASE_LOCKED, "ERROR_SERVICE_DATABASE_LOCKED" },
753 { ERROR_SERVICE_ALREADY_RUNNING, "ERROR_SERVICE_ALREADY_RUNNING" },
754 { ERROR_INVALID_SERVICE_ACCOUNT, "ERROR_INVALID_SERVICE_ACCOUNT" },
755 { ERROR_SERVICE_DISABLED, "ERROR_SERVICE_DISABLED" },
756 { ERROR_CIRCULAR_DEPENDENCY, "ERROR_CIRCULAR_DEPENDENCY" },
757 { ERROR_SERVICE_DOES_NOT_EXIST, "ERROR_SERVICE_DOES_NOT_EXIST" },
758 { ERROR_SERVICE_CANNOT_ACCEPT_CTRL, "ERROR_SERVICE_CANNOT_ACCEPT_CTRL" },
759 { ERROR_SERVICE_NOT_ACTIVE, "ERROR_SERVICE_NOT_ACTIVE" },
760 { ERROR_FAILED_SERVICE_CONTROLLER_CONNECT, "ERROR_FAILED_SERVICE_CONTROLLER_CONNECT" },
761 { ERROR_EXCEPTION_IN_SERVICE, "ERROR_EXCEPTION_IN_SERVICE" },
762 { ERROR_DATABASE_DOES_NOT_EXIST, "ERROR_DATABASE_DOES_NOT_EXIST" },
763 { ERROR_SERVICE_SPECIFIC_ERROR, "ERROR_SERVICE_SPECIFIC_ERROR" },
764 { ERROR_PROCESS_ABORTED, "ERROR_PROCESS_ABORTED" },
765 { ERROR_SERVICE_DEPENDENCY_FAIL, "ERROR_SERVICE_DEPENDENCY_FAIL" },
766 { ERROR_SERVICE_LOGON_FAILED, "ERROR_SERVICE_LOGON_FAILED" },
767 { ERROR_SERVICE_START_HANG, "ERROR_SERVICE_START_HANG" },
768 { ERROR_INVALID_SERVICE_LOCK, "ERROR_INVALID_SERVICE_LOCK" },
769 { ERROR_SERVICE_MARKED_FOR_DELETE, "ERROR_SERVICE_MARKED_FOR_DELETE" },
770 { ERROR_SERVICE_EXISTS, "ERROR_SERVICE_EXISTS" },
771 { ERROR_ALREADY_RUNNING_LKG, "ERROR_ALREADY_RUNNING_LKG" },
772 { ERROR_SERVICE_DEPENDENCY_DELETED, "ERROR_SERVICE_DEPENDENCY_DELETED" },
773 { ERROR_BOOT_ALREADY_ACCEPTED, "ERROR_BOOT_ALREADY_ACCEPTED" },
774 { ERROR_SERVICE_NEVER_STARTED, "ERROR_SERVICE_NEVER_STARTED" },
775 { ERROR_DUPLICATE_SERVICE_NAME, "ERROR_DUPLICATE_SERVICE_NAME" },
776 #ifdef ERROR_DIFFERENT_SERVICE_ACCOUNT
777 { ERROR_DIFFERENT_SERVICE_ACCOUNT, "ERROR_DIFFERENT_SERVICE_ACCOUNT" },
778 #endif
779 { ERROR_END_OF_MEDIA, "ERROR_END_OF_MEDIA" },
780 { ERROR_FILEMARK_DETECTED, "ERROR_FILEMARK_DETECTED" },
781 { ERROR_BEGINNING_OF_MEDIA, "ERROR_BEGINNING_OF_MEDIA" },
782 { ERROR_SETMARK_DETECTED, "ERROR_SETMARK_DETECTED" },
783 { ERROR_NO_DATA_DETECTED, "ERROR_NO_DATA_DETECTED" },
784 { ERROR_PARTITION_FAILURE, "ERROR_PARTITION_FAILURE" },
785 { ERROR_INVALID_BLOCK_LENGTH, "ERROR_INVALID_BLOCK_LENGTH" },
786 { ERROR_DEVICE_NOT_PARTITIONED, "ERROR_DEVICE_NOT_PARTITIONED" },
787 { ERROR_UNABLE_TO_LOCK_MEDIA, "ERROR_UNABLE_TO_LOCK_MEDIA" },
788 { ERROR_UNABLE_TO_UNLOAD_MEDIA, "ERROR_UNABLE_TO_UNLOAD_MEDIA" },
789 { ERROR_MEDIA_CHANGED, "ERROR_MEDIA_CHANGED" },
790 { ERROR_BUS_RESET, "ERROR_BUS_RESET" },
791 { ERROR_NO_MEDIA_IN_DRIVE, "ERROR_NO_MEDIA_IN_DRIVE" },
792 { ERROR_NO_UNICODE_TRANSLATION, "ERROR_NO_UNICODE_TRANSLATION" },
793 { ERROR_DLL_INIT_FAILED, "ERROR_DLL_INIT_FAILED" },
794 { ERROR_SHUTDOWN_IN_PROGRESS, "ERROR_SHUTDOWN_IN_PROGRESS" },
795 { ERROR_NO_SHUTDOWN_IN_PROGRESS, "ERROR_NO_SHUTDOWN_IN_PROGRESS" },
796 { ERROR_IO_DEVICE, "ERROR_IO_DEVICE" },
797 { ERROR_SERIAL_NO_DEVICE, "ERROR_SERIAL_NO_DEVICE" },
798 { ERROR_IRQ_BUSY, "ERROR_IRQ_BUSY" },
799 { ERROR_MORE_WRITES, "ERROR_MORE_WRITES" },
800 { ERROR_COUNTER_TIMEOUT, "ERROR_COUNTER_TIMEOUT" },
801 { ERROR_FLOPPY_ID_MARK_NOT_FOUND, "ERROR_FLOPPY_ID_MARK_NOT_FOUND" },
802 { ERROR_FLOPPY_WRONG_CYLINDER, "ERROR_FLOPPY_WRONG_CYLINDER" },
803 { ERROR_FLOPPY_UNKNOWN_ERROR, "ERROR_FLOPPY_UNKNOWN_ERROR" },
804 { ERROR_FLOPPY_BAD_REGISTERS, "ERROR_FLOPPY_BAD_REGISTERS" },
805 { ERROR_DISK_RECALIBRATE_FAILED, "ERROR_DISK_RECALIBRATE_FAILED" },
806 { ERROR_DISK_OPERATION_FAILED, "ERROR_DISK_OPERATION_FAILED" },
807 { ERROR_DISK_RESET_FAILED, "ERROR_DISK_RESET_FAILED" },
808 { ERROR_EOM_OVERFLOW, "ERROR_EOM_OVERFLOW" },
809 { ERROR_NOT_ENOUGH_SERVER_MEMORY, "ERROR_NOT_ENOUGH_SERVER_MEMORY" },
810 { ERROR_POSSIBLE_DEADLOCK, "ERROR_POSSIBLE_DEADLOCK" },
811 { ERROR_MAPPED_ALIGNMENT, "ERROR_MAPPED_ALIGNMENT" },
812 { ERROR_SET_POWER_STATE_VETOED, "ERROR_SET_POWER_STATE_VETOED" },
813 { ERROR_SET_POWER_STATE_FAILED, "ERROR_SET_POWER_STATE_FAILED" },
814 #ifdef ERROR_TOO_MANY_LINKS
815 { ERROR_TOO_MANY_LINKS, "ERROR_TOO_MANY_LINKS" },
816 #endif
817 { ERROR_OLD_WIN_VERSION, "ERROR_OLD_WIN_VERSION" },
818 { ERROR_APP_WRONG_OS, "ERROR_APP_WRONG_OS" },
819 { ERROR_SINGLE_INSTANCE_APP, "ERROR_SINGLE_INSTANCE_APP" },
820 { ERROR_RMODE_APP, "ERROR_RMODE_APP" },
821 { ERROR_INVALID_DLL, "ERROR_INVALID_DLL" },
822 { ERROR_NO_ASSOCIATION, "ERROR_NO_ASSOCIATION" },
823 { ERROR_DDE_FAIL, "ERROR_DDE_FAIL" },
824 { ERROR_DLL_NOT_FOUND, "ERROR_DLL_NOT_FOUND" },
825 { ERROR_BAD_USERNAME, "ERROR_BAD_USERNAME" },
826 { ERROR_NOT_CONNECTED, "ERROR_NOT_CONNECTED" },
827 { ERROR_OPEN_FILES, "ERROR_OPEN_FILES" },
828 { ERROR_ACTIVE_CONNECTIONS, "ERROR_ACTIVE_CONNECTIONS" },
829 { ERROR_DEVICE_IN_USE, "ERROR_DEVICE_IN_USE" },
830 { ERROR_BAD_DEVICE, "ERROR_BAD_DEVICE" },
831 { ERROR_CONNECTION_UNAVAIL, "ERROR_CONNECTION_UNAVAIL" },
832 { ERROR_DEVICE_ALREADY_REMEMBERED, "ERROR_DEVICE_ALREADY_REMEMBERED" },
833 { ERROR_NO_NET_OR_BAD_PATH, "ERROR_NO_NET_OR_BAD_PATH" },
834 { ERROR_BAD_PROVIDER, "ERROR_BAD_PROVIDER" },
835 { ERROR_CANNOT_OPEN_PROFILE, "ERROR_CANNOT_OPEN_PROFILE" },
836 { ERROR_BAD_PROFILE, "ERROR_BAD_PROFILE" },
837 { ERROR_NOT_CONTAINER, "ERROR_NOT_CONTAINER" },
838 { ERROR_EXTENDED_ERROR, "ERROR_EXTENDED_ERROR" },
839 { ERROR_INVALID_GROUPNAME, "ERROR_INVALID_GROUPNAME" },
840 { ERROR_INVALID_COMPUTERNAME, "ERROR_INVALID_COMPUTERNAME" },
841 { ERROR_INVALID_EVENTNAME, "ERROR_INVALID_EVENTNAME" },
842 { ERROR_INVALID_DOMAINNAME, "ERROR_INVALID_DOMAINNAME" },
843 { ERROR_INVALID_SERVICENAME, "ERROR_INVALID_SERVICENAME" },
844 { ERROR_INVALID_NETNAME, "ERROR_INVALID_NETNAME" },
845 { ERROR_INVALID_SHARENAME, "ERROR_INVALID_SHARENAME" },
846 { ERROR_INVALID_PASSWORDNAME, "ERROR_INVALID_PASSWORDNAME" },
847 { ERROR_INVALID_MESSAGENAME, "ERROR_INVALID_MESSAGENAME" },
848 { ERROR_INVALID_MESSAGEDEST, "ERROR_INVALID_MESSAGEDEST" },
849 { ERROR_SESSION_CREDENTIAL_CONFLICT, "ERROR_SESSION_CREDENTIAL_CONFLICT" },
850 { ERROR_REMOTE_SESSION_LIMIT_EXCEEDED, "ERROR_REMOTE_SESSION_LIMIT_EXCEEDED" },
851 { ERROR_DUP_DOMAINNAME, "ERROR_DUP_DOMAINNAME" },
852 { ERROR_NO_NETWORK, "ERROR_NO_NETWORK" },
853 { ERROR_CANCELLED, "ERROR_CANCELLED" },
854 { ERROR_USER_MAPPED_FILE, "ERROR_USER_MAPPED_FILE" },
855 { ERROR_CONNECTION_REFUSED, "ERROR_CONNECTION_REFUSED" },
856 { ERROR_GRACEFUL_DISCONNECT, "ERROR_GRACEFUL_DISCONNECT" },
857 { ERROR_ADDRESS_ALREADY_ASSOCIATED, "ERROR_ADDRESS_ALREADY_ASSOCIATED" },
858 { ERROR_ADDRESS_NOT_ASSOCIATED, "ERROR_ADDRESS_NOT_ASSOCIATED" },
859 { ERROR_CONNECTION_INVALID, "ERROR_CONNECTION_INVALID" },
860 { ERROR_CONNECTION_ACTIVE, "ERROR_CONNECTION_ACTIVE" },
861 { ERROR_NETWORK_UNREACHABLE, "ERROR_NETWORK_UNREACHABLE" },
862 { ERROR_HOST_UNREACHABLE, "ERROR_HOST_UNREACHABLE" },
863 { ERROR_PROTOCOL_UNREACHABLE, "ERROR_PROTOCOL_UNREACHABLE" },
864 { ERROR_PORT_UNREACHABLE, "ERROR_PORT_UNREACHABLE" },
865 { ERROR_REQUEST_ABORTED, "ERROR_REQUEST_ABORTED" },
866 { ERROR_CONNECTION_ABORTED, "ERROR_CONNECTION_ABORTED" },
867 { ERROR_RETRY, "ERROR_RETRY" },
868 { ERROR_CONNECTION_COUNT_LIMIT, "ERROR_CONNECTION_COUNT_LIMIT" },
869 { ERROR_LOGIN_TIME_RESTRICTION, "ERROR_LOGIN_TIME_RESTRICTION" },
870 { ERROR_LOGIN_WKSTA_RESTRICTION, "ERROR_LOGIN_WKSTA_RESTRICTION" },
871 { ERROR_INCORRECT_ADDRESS, "ERROR_INCORRECT_ADDRESS" },
872 { ERROR_ALREADY_REGISTERED, "ERROR_ALREADY_REGISTERED" },
873 { ERROR_SERVICE_NOT_FOUND, "ERROR_SERVICE_NOT_FOUND" },
874 { ERROR_NOT_AUTHENTICATED, "ERROR_NOT_AUTHENTICATED" },
875 { ERROR_NOT_LOGGED_ON, "ERROR_NOT_LOGGED_ON" },
876 { ERROR_CONTINUE, "ERROR_CONTINUE" },
877 { ERROR_ALREADY_INITIALIZED, "ERROR_ALREADY_INITIALIZED" },
878 { ERROR_NO_MORE_DEVICES, "ERROR_NO_MORE_DEVICES" },
879 { ERROR_NOT_ALL_ASSIGNED, "ERROR_NOT_ALL_ASSIGNED" },
880 { ERROR_SOME_NOT_MAPPED, "ERROR_SOME_NOT_MAPPED" },
881 { ERROR_NO_QUOTAS_FOR_ACCOUNT, "ERROR_NO_QUOTAS_FOR_ACCOUNT" },
882 { ERROR_LOCAL_USER_SESSION_KEY, "ERROR_LOCAL_USER_SESSION_KEY" },
883 { ERROR_NULL_LM_PASSWORD, "ERROR_NULL_LM_PASSWORD" },
884 { ERROR_UNKNOWN_REVISION, "ERROR_UNKNOWN_REVISION" },
885 { ERROR_REVISION_MISMATCH, "ERROR_REVISION_MISMATCH" },
886 { ERROR_INVALID_OWNER, "ERROR_INVALID_OWNER" },
887 { ERROR_INVALID_PRIMARY_GROUP, "ERROR_INVALID_PRIMARY_GROUP" },
888 { ERROR_NO_IMPERSONATION_TOKEN, "ERROR_NO_IMPERSONATION_TOKEN" },
889 { ERROR_CANT_DISABLE_MANDATORY, "ERROR_CANT_DISABLE_MANDATORY" },
890 { ERROR_NO_LOGON_SERVERS, "ERROR_NO_LOGON_SERVERS" },
891 { ERROR_NO_SUCH_LOGON_SESSION, "ERROR_NO_SUCH_LOGON_SESSION" },
892 { ERROR_NO_SUCH_PRIVILEGE, "ERROR_NO_SUCH_PRIVILEGE" },
893 { ERROR_PRIVILEGE_NOT_HELD, "ERROR_PRIVILEGE_NOT_HELD" },
894 { ERROR_INVALID_ACCOUNT_NAME, "ERROR_INVALID_ACCOUNT_NAME" },
895 { ERROR_USER_EXISTS, "ERROR_USER_EXISTS" },
896 { ERROR_NO_SUCH_USER, "ERROR_NO_SUCH_USER" },
897 { ERROR_GROUP_EXISTS, "ERROR_GROUP_EXISTS" },
898 { ERROR_NO_SUCH_GROUP, "ERROR_NO_SUCH_GROUP" },
899 { ERROR_MEMBER_IN_GROUP, "ERROR_MEMBER_IN_GROUP" },
900 { ERROR_MEMBER_NOT_IN_GROUP, "ERROR_MEMBER_NOT_IN_GROUP" },
901 { ERROR_LAST_ADMIN, "ERROR_LAST_ADMIN" },
902 { ERROR_WRONG_PASSWORD, "ERROR_WRONG_PASSWORD" },
903 { ERROR_ILL_FORMED_PASSWORD, "ERROR_ILL_FORMED_PASSWORD" },
904 { ERROR_PASSWORD_RESTRICTION, "ERROR_PASSWORD_RESTRICTION" },
905 { ERROR_LOGON_FAILURE, "ERROR_LOGON_FAILURE" },
906 { ERROR_ACCOUNT_RESTRICTION, "ERROR_ACCOUNT_RESTRICTION" },
907 { ERROR_INVALID_LOGON_HOURS, "ERROR_INVALID_LOGON_HOURS" },
908 { ERROR_INVALID_WORKSTATION, "ERROR_INVALID_WORKSTATION" },
909 { ERROR_PASSWORD_EXPIRED, "ERROR_PASSWORD_EXPIRED" },
910 { ERROR_ACCOUNT_DISABLED, "ERROR_ACCOUNT_DISABLED" },
911 { ERROR_NONE_MAPPED, "ERROR_NONE_MAPPED" },
912 { ERROR_TOO_MANY_LUIDS_REQUESTED, "ERROR_TOO_MANY_LUIDS_REQUESTED" },
913 { ERROR_LUIDS_EXHAUSTED, "ERROR_LUIDS_EXHAUSTED" },
914 { ERROR_INVALID_SUB_AUTHORITY, "ERROR_INVALID_SUB_AUTHORITY" },
915 { ERROR_INVALID_ACL, "ERROR_INVALID_ACL" },
916 { ERROR_INVALID_SID, "ERROR_INVALID_SID" },
917 { ERROR_INVALID_SECURITY_DESCR, "ERROR_INVALID_SECURITY_DESCR" },
918 { ERROR_BAD_INHERITANCE_ACL, "ERROR_BAD_INHERITANCE_ACL" },
919 { ERROR_SERVER_DISABLED, "ERROR_SERVER_DISABLED" },
920 { ERROR_SERVER_NOT_DISABLED, "ERROR_SERVER_NOT_DISABLED" },
921 { ERROR_INVALID_ID_AUTHORITY, "ERROR_INVALID_ID_AUTHORITY" },
922 { ERROR_ALLOTTED_SPACE_EXCEEDED, "ERROR_ALLOTTED_SPACE_EXCEEDED" },
923 { ERROR_INVALID_GROUP_ATTRIBUTES, "ERROR_INVALID_GROUP_ATTRIBUTES" },
924 { ERROR_BAD_IMPERSONATION_LEVEL, "ERROR_BAD_IMPERSONATION_LEVEL" },
925 { ERROR_CANT_OPEN_ANONYMOUS, "ERROR_CANT_OPEN_ANONYMOUS" },
926 { ERROR_BAD_VALIDATION_CLASS, "ERROR_BAD_VALIDATION_CLASS" },
927 { ERROR_BAD_TOKEN_TYPE, "ERROR_BAD_TOKEN_TYPE" },
928 { ERROR_NO_SECURITY_ON_OBJECT, "ERROR_NO_SECURITY_ON_OBJECT" },
929 { ERROR_CANT_ACCESS_DOMAIN_INFO, "ERROR_CANT_ACCESS_DOMAIN_INFO" },
930 { ERROR_INVALID_SERVER_STATE, "ERROR_INVALID_SERVER_STATE" },
931 { ERROR_INVALID_DOMAIN_STATE, "ERROR_INVALID_DOMAIN_STATE" },
932 { ERROR_INVALID_DOMAIN_ROLE, "ERROR_INVALID_DOMAIN_ROLE" },
933 { ERROR_NO_SUCH_DOMAIN, "ERROR_NO_SUCH_DOMAIN" },
934 { ERROR_DOMAIN_EXISTS, "ERROR_DOMAIN_EXISTS" },
935 { ERROR_DOMAIN_LIMIT_EXCEEDED, "ERROR_DOMAIN_LIMIT_EXCEEDED" },
936 { ERROR_INTERNAL_DB_CORRUPTION, "ERROR_INTERNAL_DB_CORRUPTION" },
937 { ERROR_INTERNAL_ERROR, "ERROR_INTERNAL_ERROR" },
938 { ERROR_GENERIC_NOT_MAPPED, "ERROR_GENERIC_NOT_MAPPED" },
939 { ERROR_BAD_DESCRIPTOR_FORMAT, "ERROR_BAD_DESCRIPTOR_FORMAT" },
940 { ERROR_NOT_LOGON_PROCESS, "ERROR_NOT_LOGON_PROCESS" },
941 { ERROR_LOGON_SESSION_EXISTS, "ERROR_LOGON_SESSION_EXISTS" },
942 { ERROR_NO_SUCH_PACKAGE, "ERROR_NO_SUCH_PACKAGE" },
943 { ERROR_BAD_LOGON_SESSION_STATE, "ERROR_BAD_LOGON_SESSION_STATE" },
944 { ERROR_LOGON_SESSION_COLLISION, "ERROR_LOGON_SESSION_COLLISION" },
945 { ERROR_INVALID_LOGON_TYPE, "ERROR_INVALID_LOGON_TYPE" },
946 { ERROR_CANNOT_IMPERSONATE, "ERROR_CANNOT_IMPERSONATE" },
947 { ERROR_RXACT_INVALID_STATE, "ERROR_RXACT_INVALID_STATE" },
948 { ERROR_RXACT_COMMIT_FAILURE, "ERROR_RXACT_COMMIT_FAILURE" },
949 { ERROR_SPECIAL_ACCOUNT, "ERROR_SPECIAL_ACCOUNT" },
950 { ERROR_SPECIAL_GROUP, "ERROR_SPECIAL_GROUP" },
951 { ERROR_SPECIAL_USER, "ERROR_SPECIAL_USER" },
952 { ERROR_MEMBERS_PRIMARY_GROUP, "ERROR_MEMBERS_PRIMARY_GROUP" },
953 { ERROR_TOKEN_ALREADY_IN_USE, "ERROR_TOKEN_ALREADY_IN_USE" },
954 { ERROR_NO_SUCH_ALIAS, "ERROR_NO_SUCH_ALIAS" },
955 { ERROR_MEMBER_NOT_IN_ALIAS, "ERROR_MEMBER_NOT_IN_ALIAS" },
956 { ERROR_MEMBER_IN_ALIAS, "ERROR_MEMBER_IN_ALIAS" },
957 { ERROR_ALIAS_EXISTS, "ERROR_ALIAS_EXISTS" },
958 { ERROR_LOGON_NOT_GRANTED, "ERROR_LOGON_NOT_GRANTED" },
959 { ERROR_TOO_MANY_SECRETS, "ERROR_TOO_MANY_SECRETS" },
960 { ERROR_SECRET_TOO_LONG, "ERROR_SECRET_TOO_LONG" },
961 { ERROR_INTERNAL_DB_ERROR, "ERROR_INTERNAL_DB_ERROR" },
962 { ERROR_TOO_MANY_CONTEXT_IDS, "ERROR_TOO_MANY_CONTEXT_IDS" },
963 { ERROR_LOGON_TYPE_NOT_GRANTED, "ERROR_LOGON_TYPE_NOT_GRANTED" },
964 { ERROR_NT_CROSS_ENCRYPTION_REQUIRED, "ERROR_NT_CROSS_ENCRYPTION_REQUIRED" },
965 { ERROR_NO_SUCH_MEMBER, "ERROR_NO_SUCH_MEMBER" },
966 { ERROR_INVALID_MEMBER, "ERROR_INVALID_MEMBER" },
967 { ERROR_TOO_MANY_SIDS, "ERROR_TOO_MANY_SIDS" },
968 { ERROR_LM_CROSS_ENCRYPTION_REQUIRED, "ERROR_LM_CROSS_ENCRYPTION_REQUIRED" },
969 { ERROR_NO_INHERITANCE, "ERROR_NO_INHERITANCE" },
970 { ERROR_FILE_CORRUPT, "ERROR_FILE_CORRUPT" },
971 { ERROR_DISK_CORRUPT, "ERROR_DISK_CORRUPT" },
972 { ERROR_NO_USER_SESSION_KEY, "ERROR_NO_USER_SESSION_KEY" },
973 #ifdef ERROR_LICENSE_QUOTA_EXCEEDED
974 { ERROR_LICENSE_QUOTA_EXCEEDED, "ERROR_LICENSE_QUOTA_EXCEEDED" },
975 #endif
976 { ERROR_INVALID_WINDOW_HANDLE, "ERROR_INVALID_WINDOW_HANDLE" },
977 { ERROR_INVALID_MENU_HANDLE, "ERROR_INVALID_MENU_HANDLE" },
978 { ERROR_INVALID_CURSOR_HANDLE, "ERROR_INVALID_CURSOR_HANDLE" },
979 { ERROR_INVALID_ACCEL_HANDLE, "ERROR_INVALID_ACCEL_HANDLE" },
980 { ERROR_INVALID_HOOK_HANDLE, "ERROR_INVALID_HOOK_HANDLE" },
981 { ERROR_INVALID_DWP_HANDLE, "ERROR_INVALID_DWP_HANDLE" },
982 { ERROR_TLW_WITH_WSCHILD, "ERROR_TLW_WITH_WSCHILD" },
983 { ERROR_CANNOT_FIND_WND_CLASS, "ERROR_CANNOT_FIND_WND_CLASS" },
984 { ERROR_WINDOW_OF_OTHER_THREAD, "ERROR_WINDOW_OF_OTHER_THREAD" },
985 { ERROR_HOTKEY_ALREADY_REGISTERED, "ERROR_HOTKEY_ALREADY_REGISTERED" },
986 { ERROR_CLASS_ALREADY_EXISTS, "ERROR_CLASS_ALREADY_EXISTS" },
987 { ERROR_CLASS_DOES_NOT_EXIST, "ERROR_CLASS_DOES_NOT_EXIST" },
988 { ERROR_CLASS_HAS_WINDOWS, "ERROR_CLASS_HAS_WINDOWS" },
989 { ERROR_INVALID_INDEX, "ERROR_INVALID_INDEX" },
990 { ERROR_INVALID_ICON_HANDLE, "ERROR_INVALID_ICON_HANDLE" },
991 { ERROR_PRIVATE_DIALOG_INDEX, "ERROR_PRIVATE_DIALOG_INDEX" },
992 { ERROR_LISTBOX_ID_NOT_FOUND, "ERROR_LISTBOX_ID_NOT_FOUND" },
993 { ERROR_NO_WILDCARD_CHARACTERS, "ERROR_NO_WILDCARD_CHARACTERS" },
994 { ERROR_CLIPBOARD_NOT_OPEN, "ERROR_CLIPBOARD_NOT_OPEN" },
995 { ERROR_HOTKEY_NOT_REGISTERED, "ERROR_HOTKEY_NOT_REGISTERED" },
996 { ERROR_WINDOW_NOT_DIALOG, "ERROR_WINDOW_NOT_DIALOG" },
997 { ERROR_CONTROL_ID_NOT_FOUND, "ERROR_CONTROL_ID_NOT_FOUND" },
998 { ERROR_INVALID_COMBOBOX_MESSAGE, "ERROR_INVALID_COMBOBOX_MESSAGE" },
999 { ERROR_WINDOW_NOT_COMBOBOX, "ERROR_WINDOW_NOT_COMBOBOX" },
1000 { ERROR_INVALID_EDIT_HEIGHT, "ERROR_INVALID_EDIT_HEIGHT" },
1001 { ERROR_DC_NOT_FOUND, "ERROR_DC_NOT_FOUND" },
1002 { ERROR_INVALID_HOOK_FILTER, "ERROR_INVALID_HOOK_FILTER" },
1003 { ERROR_INVALID_FILTER_PROC, "ERROR_INVALID_FILTER_PROC" },
1004 { ERROR_HOOK_NEEDS_HMOD, "ERROR_HOOK_NEEDS_HMOD" },
1005 { ERROR_GLOBAL_ONLY_HOOK, "ERROR_GLOBAL_ONLY_HOOK" },
1006 { ERROR_JOURNAL_HOOK_SET, "ERROR_JOURNAL_HOOK_SET" },
1007 { ERROR_HOOK_NOT_INSTALLED, "ERROR_HOOK_NOT_INSTALLED" },
1008 { ERROR_INVALID_LB_MESSAGE, "ERROR_INVALID_LB_MESSAGE" },
1009 { ERROR_SETCOUNT_ON_BAD_LB, "ERROR_SETCOUNT_ON_BAD_LB" },
1010 { ERROR_LB_WITHOUT_TABSTOPS, "ERROR_LB_WITHOUT_TABSTOPS" },
1011 { ERROR_DESTROY_OBJECT_OF_OTHER_THREAD, "ERROR_DESTROY_OBJECT_OF_OTHER_THREAD" },
1012 { ERROR_CHILD_WINDOW_MENU, "ERROR_CHILD_WINDOW_MENU" },
1013 { ERROR_NO_SYSTEM_MENU, "ERROR_NO_SYSTEM_MENU" },
1014 { ERROR_INVALID_MSGBOX_STYLE, "ERROR_INVALID_MSGBOX_STYLE" },
1015 { ERROR_INVALID_SPI_VALUE, "ERROR_INVALID_SPI_VALUE" },
1016 { ERROR_SCREEN_ALREADY_LOCKED, "ERROR_SCREEN_ALREADY_LOCKED" },
1017 { ERROR_HWNDS_HAVE_DIFF_PARENT, "ERROR_HWNDS_HAVE_DIFF_PARENT" },
1018 { ERROR_NOT_CHILD_WINDOW, "ERROR_NOT_CHILD_WINDOW" },
1019 { ERROR_INVALID_GW_COMMAND, "ERROR_INVALID_GW_COMMAND" },
1020 { ERROR_INVALID_THREAD_ID, "ERROR_INVALID_THREAD_ID" },
1021 { ERROR_NON_MDICHILD_WINDOW, "ERROR_NON_MDICHILD_WINDOW" },
1022 { ERROR_POPUP_ALREADY_ACTIVE, "ERROR_POPUP_ALREADY_ACTIVE" },
1023 { ERROR_NO_SCROLLBARS, "ERROR_NO_SCROLLBARS" },
1024 { ERROR_INVALID_SCROLLBAR_RANGE, "ERROR_INVALID_SCROLLBAR_RANGE" },
1025 { ERROR_INVALID_SHOWWIN_COMMAND, "ERROR_INVALID_SHOWWIN_COMMAND" },
1026 #ifdef ERROR_NO_SYSTEM_RESOURCES
1027 { ERROR_NO_SYSTEM_RESOURCES, "ERROR_NO_SYSTEM_RESOURCES" },
1028 #endif
1029 #ifdef ERROR_NONPAGED_SYSTEM_RESOURCES
1030 { ERROR_NONPAGED_SYSTEM_RESOURCES, "ERROR_NONPAGED_SYSTEM_RESOURCES" },
1031 #endif
1032 #ifdef ERROR_PAGED_SYSTEM_RESOURCES
1033 { ERROR_PAGED_SYSTEM_RESOURCES, "ERROR_PAGED_SYSTEM_RESOURCES" },
1034 #endif
1035 #ifdef ERROR_WORKING_SET_QUOTA
1036 { ERROR_WORKING_SET_QUOTA, "ERROR_WORKING_SET_QUOTA" },
1037 #endif
1038 #ifdef ERROR_PAGEFILE_QUOTA
1039 { ERROR_PAGEFILE_QUOTA, "ERROR_PAGEFILE_QUOTA" },
1040 #endif
1041 #ifdef ERROR_COMMITMENT_LIMIT
1042 { ERROR_COMMITMENT_LIMIT, "ERROR_COMMITMENT_LIMIT" },
1043 #endif
1044 #ifdef ERROR_MENU_ITEM_NOT_FOUND
1045 { ERROR_MENU_ITEM_NOT_FOUND, "ERROR_MENU_ITEM_NOT_FOUND" },
1046 #endif
1047 #ifdef ERROR_INVALID_KEYBOARD_HANDLE
1048 { ERROR_INVALID_KEYBOARD_HANDLE, "ERROR_INVALID_KEYBOARD_HANDLE" },
1049 #endif
1050 #ifdef ERROR_HOOK_TYPE_NOT_ALLOWED
1051 { ERROR_HOOK_TYPE_NOT_ALLOWED, "ERROR_HOOK_TYPE_NOT_ALLOWED" },
1052 #endif
1053 #ifdef ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION
1054 { ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION, "ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION" },
1055 #endif
1056 #ifdef ERROR_TIMEOUT
1057 { ERROR_TIMEOUT, "ERROR_TIMEOUT" },
1058 #endif
1059 { ERROR_EVENTLOG_FILE_CORRUPT, "ERROR_EVENTLOG_FILE_CORRUPT" },
1060 { ERROR_EVENTLOG_CANT_START, "ERROR_EVENTLOG_CANT_START" },
1061 { ERROR_LOG_FILE_FULL, "ERROR_LOG_FILE_FULL" },
1062 { ERROR_EVENTLOG_FILE_CHANGED, "ERROR_EVENTLOG_FILE_CHANGED" },
1063 { RPC_S_INVALID_STRING_BINDING, "RPC_S_INVALID_STRING_BINDING" },
1064 { RPC_S_WRONG_KIND_OF_BINDING, "RPC_S_WRONG_KIND_OF_BINDING" },
1065 { RPC_S_INVALID_BINDING, "RPC_S_INVALID_BINDING" },
1066 { RPC_S_PROTSEQ_NOT_SUPPORTED, "RPC_S_PROTSEQ_NOT_SUPPORTED" },
1067 { RPC_S_INVALID_RPC_PROTSEQ, "RPC_S_INVALID_RPC_PROTSEQ" },
1068 { RPC_S_INVALID_STRING_UUID, "RPC_S_INVALID_STRING_UUID" },
1069 { RPC_S_INVALID_ENDPOINT_FORMAT, "RPC_S_INVALID_ENDPOINT_FORMAT" },
1070 { RPC_S_INVALID_NET_ADDR, "RPC_S_INVALID_NET_ADDR" },
1071 { RPC_S_NO_ENDPOINT_FOUND, "RPC_S_NO_ENDPOINT_FOUND" },
1072 { RPC_S_INVALID_TIMEOUT, "RPC_S_INVALID_TIMEOUT" },
1073 { RPC_S_OBJECT_NOT_FOUND, "RPC_S_OBJECT_NOT_FOUND" },
1074 { RPC_S_ALREADY_REGISTERED, "RPC_S_ALREADY_REGISTERED" },
1075 { RPC_S_TYPE_ALREADY_REGISTERED, "RPC_S_TYPE_ALREADY_REGISTERED" },
1076 { RPC_S_ALREADY_LISTENING, "RPC_S_ALREADY_LISTENING" },
1077 { RPC_S_NO_PROTSEQS_REGISTERED, "RPC_S_NO_PROTSEQS_REGISTERED" },
1078 { RPC_S_NOT_LISTENING, "RPC_S_NOT_LISTENING" },
1079 { RPC_S_UNKNOWN_MGR_TYPE, "RPC_S_UNKNOWN_MGR_TYPE" },
1080 { RPC_S_UNKNOWN_IF, "RPC_S_UNKNOWN_IF" },
1081 { RPC_S_NO_BINDINGS, "RPC_S_NO_BINDINGS" },
1082 { RPC_S_NO_PROTSEQS, "RPC_S_NO_PROTSEQS" },
1083 { RPC_S_CANT_CREATE_ENDPOINT, "RPC_S_CANT_CREATE_ENDPOINT" },
1084 { RPC_S_OUT_OF_RESOURCES, "RPC_S_OUT_OF_RESOURCES" },
1085 { RPC_S_SERVER_UNAVAILABLE, "RPC_S_SERVER_UNAVAILABLE" },
1086 { RPC_S_SERVER_TOO_BUSY, "RPC_S_SERVER_TOO_BUSY" },
1087 { RPC_S_INVALID_NETWORK_OPTIONS, "RPC_S_INVALID_NETWORK_OPTIONS" },
1088 { RPC_S_NO_CALL_ACTIVE, "RPC_S_NO_CALL_ACTIVE" },
1089 { RPC_S_CALL_FAILED, "RPC_S_CALL_FAILED" },
1090 { RPC_S_CALL_FAILED_DNE, "RPC_S_CALL_FAILED_DNE" },
1091 { RPC_S_PROTOCOL_ERROR, "RPC_S_PROTOCOL_ERROR" },
1092 { RPC_S_UNSUPPORTED_TRANS_SYN, "RPC_S_UNSUPPORTED_TRANS_SYN" },
1093 { RPC_S_UNSUPPORTED_TYPE, "RPC_S_UNSUPPORTED_TYPE" },
1094 { RPC_S_INVALID_TAG, "RPC_S_INVALID_TAG" },
1095 { RPC_S_INVALID_BOUND, "RPC_S_INVALID_BOUND" },
1096 { RPC_S_NO_ENTRY_NAME, "RPC_S_NO_ENTRY_NAME" },
1097 { RPC_S_INVALID_NAME_SYNTAX, "RPC_S_INVALID_NAME_SYNTAX" },
1098 { RPC_S_UNSUPPORTED_NAME_SYNTAX, "RPC_S_UNSUPPORTED_NAME_SYNTAX" },
1099 { RPC_S_UUID_NO_ADDRESS, "RPC_S_UUID_NO_ADDRESS" },
1100 { RPC_S_DUPLICATE_ENDPOINT, "RPC_S_DUPLICATE_ENDPOINT" },
1101 { RPC_S_UNKNOWN_AUTHN_TYPE, "RPC_S_UNKNOWN_AUTHN_TYPE" },
1102 { RPC_S_MAX_CALLS_TOO_SMALL, "RPC_S_MAX_CALLS_TOO_SMALL" },
1103 { RPC_S_STRING_TOO_LONG, "RPC_S_STRING_TOO_LONG" },
1104 { RPC_S_PROTSEQ_NOT_FOUND, "RPC_S_PROTSEQ_NOT_FOUND" },
1105 { RPC_S_PROCNUM_OUT_OF_RANGE, "RPC_S_PROCNUM_OUT_OF_RANGE" },
1106 { RPC_S_BINDING_HAS_NO_AUTH, "RPC_S_BINDING_HAS_NO_AUTH" },
1107 { RPC_S_UNKNOWN_AUTHN_SERVICE, "RPC_S_UNKNOWN_AUTHN_SERVICE" },
1108 { RPC_S_UNKNOWN_AUTHN_LEVEL, "RPC_S_UNKNOWN_AUTHN_LEVEL" },
1109 { RPC_S_INVALID_AUTH_IDENTITY, "RPC_S_INVALID_AUTH_IDENTITY" },
1110 { RPC_S_UNKNOWN_AUTHZ_SERVICE, "RPC_S_UNKNOWN_AUTHZ_SERVICE" },
1111 { EPT_S_INVALID_ENTRY, "EPT_S_INVALID_ENTRY" },
1112 { EPT_S_CANT_PERFORM_OP, "EPT_S_CANT_PERFORM_OP" },
1113 { EPT_S_NOT_REGISTERED, "EPT_S_NOT_REGISTERED" },
1114 { RPC_S_NOTHING_TO_EXPORT, "RPC_S_NOTHING_TO_EXPORT" },
1115 { RPC_S_INCOMPLETE_NAME, "RPC_S_INCOMPLETE_NAME" },
1116 { RPC_S_INVALID_VERS_OPTION, "RPC_S_INVALID_VERS_OPTION" },
1117 { RPC_S_NO_MORE_MEMBERS, "RPC_S_NO_MORE_MEMBERS" },
1118 { RPC_S_NOT_ALL_OBJS_UNEXPORTED, "RPC_S_NOT_ALL_OBJS_UNEXPORTED" },
1119 { RPC_S_INTERFACE_NOT_FOUND, "RPC_S_INTERFACE_NOT_FOUND" },
1120 { RPC_S_ENTRY_ALREADY_EXISTS, "RPC_S_ENTRY_ALREADY_EXISTS" },
1121 { RPC_S_ENTRY_NOT_FOUND, "RPC_S_ENTRY_NOT_FOUND" },
1122 { RPC_S_NAME_SERVICE_UNAVAILABLE, "RPC_S_NAME_SERVICE_UNAVAILABLE" },
1123 { RPC_S_INVALID_NAF_ID, "RPC_S_INVALID_NAF_ID" },
1124 { RPC_S_CANNOT_SUPPORT, "RPC_S_CANNOT_SUPPORT" },
1125 { RPC_S_NO_CONTEXT_AVAILABLE, "RPC_S_NO_CONTEXT_AVAILABLE" },
1126 { RPC_S_INTERNAL_ERROR, "RPC_S_INTERNAL_ERROR" },
1127 { RPC_S_ZERO_DIVIDE, "RPC_S_ZERO_DIVIDE" },
1128 { RPC_S_ADDRESS_ERROR, "RPC_S_ADDRESS_ERROR" },
1129 { RPC_S_FP_DIV_ZERO, "RPC_S_FP_DIV_ZERO" },
1130 { RPC_S_FP_UNDERFLOW, "RPC_S_FP_UNDERFLOW" },
1131 { RPC_S_FP_OVERFLOW, "RPC_S_FP_OVERFLOW" },
1132 { RPC_X_NO_MORE_ENTRIES, "RPC_X_NO_MORE_ENTRIES" },
1133 { RPC_X_SS_CHAR_TRANS_OPEN_FAIL, "RPC_X_SS_CHAR_TRANS_OPEN_FAIL" },
1134 { RPC_X_SS_CHAR_TRANS_SHORT_FILE, "RPC_X_SS_CHAR_TRANS_SHORT_FILE" },
1135 { RPC_X_SS_IN_NULL_CONTEXT, "RPC_X_SS_IN_NULL_CONTEXT" },
1136 { RPC_X_SS_CONTEXT_DAMAGED, "RPC_X_SS_CONTEXT_DAMAGED" },
1137 { RPC_X_SS_HANDLES_MISMATCH, "RPC_X_SS_HANDLES_MISMATCH" },
1138 { RPC_X_SS_CANNOT_GET_CALL_HANDLE, "RPC_X_SS_CANNOT_GET_CALL_HANDLE" },
1139 { RPC_X_NULL_REF_POINTER, "RPC_X_NULL_REF_POINTER" },
1140 { RPC_X_ENUM_VALUE_OUT_OF_RANGE, "RPC_X_ENUM_VALUE_OUT_OF_RANGE" },
1141 { RPC_X_BYTE_COUNT_TOO_SMALL, "RPC_X_BYTE_COUNT_TOO_SMALL" },
1142 { RPC_X_BAD_STUB_DATA, "RPC_X_BAD_STUB_DATA" },
1143 { ERROR_INVALID_USER_BUFFER, "ERROR_INVALID_USER_BUFFER" },
1144 { ERROR_UNRECOGNIZED_MEDIA, "ERROR_UNRECOGNIZED_MEDIA" },
1145 { ERROR_NO_TRUST_LSA_SECRET, "ERROR_NO_TRUST_LSA_SECRET" },
1146 { ERROR_NO_TRUST_SAM_ACCOUNT, "ERROR_NO_TRUST_SAM_ACCOUNT" },
1147 { ERROR_TRUSTED_DOMAIN_FAILURE, "ERROR_TRUSTED_DOMAIN_FAILURE" },
1148 { ERROR_TRUSTED_RELATIONSHIP_FAILURE, "ERROR_TRUSTED_RELATIONSHIP_FAILURE" },
1149 { ERROR_TRUST_FAILURE, "ERROR_TRUST_FAILURE" },
1150 { RPC_S_CALL_IN_PROGRESS, "RPC_S_CALL_IN_PROGRESS" },
1151 { ERROR_NETLOGON_NOT_STARTED, "ERROR_NETLOGON_NOT_STARTED" },
1152 { ERROR_ACCOUNT_EXPIRED, "ERROR_ACCOUNT_EXPIRED" },
1153 { ERROR_REDIRECTOR_HAS_OPEN_HANDLES, "ERROR_REDIRECTOR_HAS_OPEN_HANDLES" },
1154 { ERROR_PRINTER_DRIVER_ALREADY_INSTALLED, "ERROR_PRINTER_DRIVER_ALREADY_INSTALLED" },
1155 { ERROR_UNKNOWN_PORT, "ERROR_UNKNOWN_PORT" },
1156 { ERROR_UNKNOWN_PRINTER_DRIVER, "ERROR_UNKNOWN_PRINTER_DRIVER" },
1157 { ERROR_UNKNOWN_PRINTPROCESSOR, "ERROR_UNKNOWN_PRINTPROCESSOR" },
1158 { ERROR_INVALID_SEPARATOR_FILE, "ERROR_INVALID_SEPARATOR_FILE" },
1159 { ERROR_INVALID_PRIORITY, "ERROR_INVALID_PRIORITY" },
1160 { ERROR_INVALID_PRINTER_NAME, "ERROR_INVALID_PRINTER_NAME" },
1161 { ERROR_PRINTER_ALREADY_EXISTS, "ERROR_PRINTER_ALREADY_EXISTS" },
1162 { ERROR_INVALID_PRINTER_COMMAND, "ERROR_INVALID_PRINTER_COMMAND" },
1163 { ERROR_INVALID_DATATYPE, "ERROR_INVALID_DATATYPE" },
1164 { ERROR_INVALID_ENVIRONMENT, "ERROR_INVALID_ENVIRONMENT" },
1165 { RPC_S_NO_MORE_BINDINGS, "RPC_S_NO_MORE_BINDINGS" },
1166 { ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT, "ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT" },
1167 { ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT, "ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT" },
1168 { ERROR_NOLOGON_SERVER_TRUST_ACCOUNT, "ERROR_NOLOGON_SERVER_TRUST_ACCOUNT" },
1169 { ERROR_DOMAIN_TRUST_INCONSISTENT, "ERROR_DOMAIN_TRUST_INCONSISTENT" },
1170 { ERROR_SERVER_HAS_OPEN_HANDLES, "ERROR_SERVER_HAS_OPEN_HANDLES" },
1171 { ERROR_RESOURCE_DATA_NOT_FOUND, "ERROR_RESOURCE_DATA_NOT_FOUND" },
1172 { ERROR_RESOURCE_TYPE_NOT_FOUND, "ERROR_RESOURCE_TYPE_NOT_FOUND" },
1173 { ERROR_RESOURCE_NAME_NOT_FOUND, "ERROR_RESOURCE_NAME_NOT_FOUND" },
1174 { ERROR_RESOURCE_LANG_NOT_FOUND, "ERROR_RESOURCE_LANG_NOT_FOUND" },
1175 { ERROR_NOT_ENOUGH_QUOTA, "ERROR_NOT_ENOUGH_QUOTA" },
1176 { RPC_S_NO_INTERFACES, "RPC_S_NO_INTERFACES" },
1177 { RPC_S_CALL_CANCELLED, "RPC_S_CALL_CANCELLED" },
1178 { RPC_S_BINDING_INCOMPLETE, "RPC_S_BINDING_INCOMPLETE" },
1179 { RPC_S_COMM_FAILURE, "RPC_S_COMM_FAILURE" },
1180 { RPC_S_UNSUPPORTED_AUTHN_LEVEL, "RPC_S_UNSUPPORTED_AUTHN_LEVEL" },
1181 { RPC_S_NO_PRINC_NAME, "RPC_S_NO_PRINC_NAME" },
1182 { RPC_S_NOT_RPC_ERROR, "RPC_S_NOT_RPC_ERROR" },
1183 { RPC_S_UUID_LOCAL_ONLY, "RPC_S_UUID_LOCAL_ONLY" },
1184 { RPC_S_SEC_PKG_ERROR, "RPC_S_SEC_PKG_ERROR" },
1185 { RPC_S_NOT_CANCELLED, "RPC_S_NOT_CANCELLED" },
1186 { RPC_X_INVALID_ES_ACTION, "RPC_X_INVALID_ES_ACTION" },
1187 { RPC_X_WRONG_ES_VERSION, "RPC_X_WRONG_ES_VERSION" },
1188 { RPC_X_WRONG_STUB_VERSION, "RPC_X_WRONG_STUB_VERSION" },
1189 #ifdef RPC_X_INVALID_PIPE_OBJECT
1190 { RPC_X_INVALID_PIPE_OBJECT, "RPC_X_INVALID_PIPE_OBJECT" },
1191 #endif
1192 #ifdef RPC_X_INVALID_PIPE_OPERATION
1193 { RPC_X_INVALID_PIPE_OPERATION, "RPC_X_INVALID_PIPE_OPERATION" },
1194 #endif
1195 #ifdef RPC_X_WRONG_PIPE_VERSION
1196 { RPC_X_WRONG_PIPE_VERSION, "RPC_X_WRONG_PIPE_VERSION" },
1197 #endif
1198 { RPC_S_GROUP_MEMBER_NOT_FOUND, "RPC_S_GROUP_MEMBER_NOT_FOUND" },
1199 { EPT_S_CANT_CREATE, "EPT_S_CANT_CREATE" },
1200 { RPC_S_INVALID_OBJECT, "RPC_S_INVALID_OBJECT" },
1201 { ERROR_INVALID_TIME, "ERROR_INVALID_TIME" },
1202 { ERROR_INVALID_FORM_NAME, "ERROR_INVALID_FORM_NAME" },
1203 { ERROR_INVALID_FORM_SIZE, "ERROR_INVALID_FORM_SIZE" },
1204 { ERROR_ALREADY_WAITING, "ERROR_ALREADY_WAITING" },
1205 { ERROR_PRINTER_DELETED, "ERROR_PRINTER_DELETED" },
1206 { ERROR_INVALID_PRINTER_STATE, "ERROR_INVALID_PRINTER_STATE" },
1207 { ERROR_PASSWORD_MUST_CHANGE, "ERROR_PASSWORD_MUST_CHANGE" },
1208 { ERROR_DOMAIN_CONTROLLER_NOT_FOUND, "ERROR_DOMAIN_CONTROLLER_NOT_FOUND" },
1209 { ERROR_ACCOUNT_LOCKED_OUT, "ERROR_ACCOUNT_LOCKED_OUT" },
1210 #ifdef OR_INVALID_OXID
1211 { OR_INVALID_OXID, "OR_INVALID_OXID" },
1212 #endif
1213 #ifdef OR_INVALID_OID
1214 { OR_INVALID_OID, "OR_INVALID_OID" },
1215 #endif
1216 #ifdef OR_INVALID_SET
1217 { OR_INVALID_SET, "OR_INVALID_SET" },
1218 #endif
1219 #ifdef RPC_S_SEND_INCOMPLETE
1220 { RPC_S_SEND_INCOMPLETE, "RPC_S_SEND_INCOMPLETE" },
1221 #endif
1222 { ERROR_NO_BROWSER_SERVERS_FOUND, "ERROR_NO_BROWSER_SERVERS_FOUND" },
1223 { ERROR_INVALID_PIXEL_FORMAT, "ERROR_INVALID_PIXEL_FORMAT" },
1224 { ERROR_BAD_DRIVER, "ERROR_BAD_DRIVER" },
1225 { ERROR_INVALID_WINDOW_STYLE, "ERROR_INVALID_WINDOW_STYLE" },
1226 { ERROR_METAFILE_NOT_SUPPORTED, "ERROR_METAFILE_NOT_SUPPORTED" },
1227 { ERROR_TRANSFORM_NOT_SUPPORTED, "ERROR_TRANSFORM_NOT_SUPPORTED" },
1228 { ERROR_CLIPPING_NOT_SUPPORTED, "ERROR_CLIPPING_NOT_SUPPORTED" },
1229 { ERROR_UNKNOWN_PRINT_MONITOR, "ERROR_UNKNOWN_PRINT_MONITOR" },
1230 { ERROR_PRINTER_DRIVER_IN_USE, "ERROR_PRINTER_DRIVER_IN_USE" },
1231 { ERROR_SPOOL_FILE_NOT_FOUND, "ERROR_SPOOL_FILE_NOT_FOUND" },
1232 { ERROR_SPL_NO_STARTDOC, "ERROR_SPL_NO_STARTDOC" },
1233 { ERROR_SPL_NO_ADDJOB, "ERROR_SPL_NO_ADDJOB" },
1234 { ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED, "ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED" },
1235 { ERROR_PRINT_MONITOR_ALREADY_INSTALLED, "ERROR_PRINT_MONITOR_ALREADY_INSTALLED" },
1236 #ifdef ERROR_INVALID_PRINT_MONITOR
1237 { ERROR_INVALID_PRINT_MONITOR, "ERROR_INVALID_PRINT_MONITOR" },
1238 #endif
1239 #ifdef ERROR_PRINT_MONITOR_IN_USE
1240 { ERROR_PRINT_MONITOR_IN_USE, "ERROR_PRINT_MONITOR_IN_USE" },
1241 #endif
1242 #ifdef ERROR_PRINTER_HAS_JOBS_QUEUED
1243 { ERROR_PRINTER_HAS_JOBS_QUEUED, "ERROR_PRINTER_HAS_JOBS_QUEUED" },
1244 #endif
1245 #ifdef ERROR_SUCCESS_REBOOT_REQUIRED
1246 { ERROR_SUCCESS_REBOOT_REQUIRED, "ERROR_SUCCESS_REBOOT_REQUIRED" },
1247 #endif
1248 #ifdef ERROR_SUCCESS_RESTART_REQUIRED
1249 { ERROR_SUCCESS_RESTART_REQUIRED, "ERROR_SUCCESS_RESTART_REQUIRED" },
1250 #endif
1251 { ERROR_WINS_INTERNAL, "ERROR_WINS_INTERNAL" },
1252 { ERROR_CAN_NOT_DEL_LOCAL_WINS, "ERROR_CAN_NOT_DEL_LOCAL_WINS" },
1253 { ERROR_STATIC_INIT, "ERROR_STATIC_INIT" },
1254 { ERROR_INC_BACKUP, "ERROR_INC_BACKUP" },
1255 { ERROR_FULL_BACKUP, "ERROR_FULL_BACKUP" },
1256 { ERROR_REC_NON_EXISTENT, "ERROR_REC_NON_EXISTENT" },
1257 { ERROR_RPL_NOT_ALLOWED, "ERROR_RPL_NOT_ALLOWED" },
1258 { WSAEINTR, "WSAEINTR" },
1259 { WSAEBADF, "WSAEBADF" },
1260 { WSAEACCES, "WSAEACCES" },
1261 { WSAEFAULT, "WSAEFAULT" },
1262 { WSAEINVAL, "WSAEINVAL" },
1263 { WSAEMFILE, "WSAEMFILE" },
1264 { WSAEWOULDBLOCK, "WSAEWOULDBLOCK" },
1265 { WSAEINPROGRESS, "WSAEINPROGRESS" },
1266 { WSAEALREADY, "WSAEALREADY" },
1267 { WSAENOTSOCK, "WSAENOTSOCK" },
1268 { WSAEDESTADDRREQ, "WSAEDESTADDRREQ" },
1269 { WSAEMSGSIZE, "WSAEMSGSIZE" },
1270 { WSAEPROTOTYPE, "WSAEPROTOTYPE" },
1271 { WSAENOPROTOOPT, "WSAENOPROTOOPT" },
1272 { WSAEPROTONOSUPPORT, "WSAEPROTONOSUPPORT" },
1273 { WSAESOCKTNOSUPPORT, "WSAESOCKTNOSUPPORT" },
1274 { WSAEOPNOTSUPP, "WSAEOPNOTSUPP" },
1275 { WSAEPFNOSUPPORT, "WSAEPFNOSUPPORT" },
1276 { WSAEAFNOSUPPORT, "WSAEAFNOSUPPORT" },
1277 { WSAEADDRINUSE, "WSAEADDRINUSE" },
1278 { WSAEADDRNOTAVAIL, "WSAEADDRNOTAVAIL" },
1279 { WSAENETDOWN, "WSAENETDOWN" },
1280 { WSAENETUNREACH, "WSAENETUNREACH" },
1281 { WSAENETRESET, "WSAENETRESET" },
1282 { WSAECONNABORTED, "WSAECONNABORTED" },
1283 { WSAECONNRESET, "WSAECONNRESET" },
1284 { WSAENOBUFS, "WSAENOBUFS" },
1285 { WSAEISCONN, "WSAEISCONN" },
1286 { WSAENOTCONN, "WSAENOTCONN" },
1287 { WSAESHUTDOWN, "WSAESHUTDOWN" },
1288 { WSAETOOMANYREFS, "WSAETOOMANYREFS" },
1289 { WSAETIMEDOUT, "WSAETIMEDOUT" },
1290 { WSAECONNREFUSED, "WSAECONNREFUSED" },
1291 { WSAELOOP, "WSAELOOP" },
1292 { WSAENAMETOOLONG, "WSAENAMETOOLONG" },
1293 { WSAEHOSTDOWN, "WSAEHOSTDOWN" },
1294 { WSAEHOSTUNREACH, "WSAEHOSTUNREACH" },
1295 { WSAENOTEMPTY, "WSAENOTEMPTY" },
1296 { WSAEPROCLIM, "WSAEPROCLIM" },
1297 { WSAEUSERS, "WSAEUSERS" },
1298 { WSAEDQUOT, "WSAEDQUOT" },
1299 { WSAESTALE, "WSAESTALE" },
1300 { WSAEREMOTE, "WSAEREMOTE" },
1301 { WSAEDISCON, "WSAEDISCON" },
1302 { WSASYSNOTREADY, "WSASYSNOTREADY" },
1303 { WSAVERNOTSUPPORTED, "WSAVERNOTSUPPORTED" },
1304 { WSANOTINITIALISED, "WSANOTINITIALISED" },
1305 { WSAHOST_NOT_FOUND, "WSAHOST_NOT_FOUND" },
1306 { WSATRY_AGAIN, "WSATRY_AGAIN" },
1307 { WSANO_RECOVERY, "WSANO_RECOVERY" },
1308 { WSANO_DATA, "WSANO_DATA" },
1309 #endif
1310 };
1311
stringFromErrorCode(int err)1312 const char *stringFromErrorCode(int err)
1313 {
1314 for (unsigned i = 0; i < sizeof(errortable)/sizeof(errortable[0]); i++)
1315 {
1316 if (errortable[i].errorNum == err) {
1317 return errortable[i].errorString;
1318 }
1319 }
1320 return 0;
1321 }
1322
errorCodeFromString(const char * text,int * err)1323 bool errorCodeFromString(const char *text, int *err)
1324 {
1325 for (unsigned i = 0; i < sizeof(errortable)/sizeof(errortable[0]); i++)
1326 {
1327 if (strcmp(text, errortable[i].errorString) == 0)
1328 {
1329 *err = errortable[i].errorNum;
1330 return true;
1331 }
1332 }
1333 return false;
1334 }
1335