1 /** 2 D header file for C99. 3 4 $(C_HEADER_DESCRIPTION pubs.opengroup.org/onlinepubs/009695399/basedefs/_errno.h.html, _errno.h) 5 6 Copyright: Copyright Sean Kelly 2005 - 2009. 7 License: Distributed under the 8 $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0). 9 (See accompanying file LICENSE) 10 Authors: Sean Kelly, Alex Rønne Petersen 11 Source: $(DRUNTIMESRC core/stdc/_errno.d) 12 Standards: ISO/IEC 9899:1999 (E) 13 */ 14 module nulib.posix.errno; 15 16 version (OSX) 17 version = Darwin; 18 else version (iOS) 19 version = Darwin; 20 else version (TVOS) 21 version = Darwin; 22 else version (WatchOS) 23 version = Darwin; 24 25 version (ARM) version = ARM_Any; 26 version (AArch64) version = ARM_Any; 27 version (HPPA) version = HPPA_Any; 28 version (MIPS32) version = MIPS_Any; 29 version (MIPS64) version = MIPS_Any; 30 version (PPC) version = PPC_Any; 31 version (PPC64) version = PPC_Any; 32 version (RISCV32) version = RISCV_Any; 33 version (RISCV64) version = RISCV_Any; 34 version (S390) version = IBMZ_Any; 35 version (SPARC) version = SPARC_Any; 36 version (SPARC64) version = SPARC_Any; 37 version (SystemZ) version = IBMZ_Any; 38 version (X86) version = X86_Any; 39 version (X86_64) version = X86_Any; 40 41 @trusted: // Only manipulates errno. 42 nothrow: 43 @nogc: 44 45 version (CRuntime_Microsoft) 46 { 47 extern (C) 48 { 49 ref int _errno(); 50 alias errno = _errno; 51 } 52 } 53 else version (CRuntime_Glibc) 54 { 55 extern (C) 56 { 57 ref int __errno_location(); 58 alias errno = __errno_location; 59 } 60 } 61 else version (CRuntime_Musl) 62 { 63 extern (C) 64 { 65 ref int __errno_location(); 66 alias errno = __errno_location; 67 } 68 } 69 else version (CRuntime_Newlib) 70 { 71 extern (C) 72 { 73 ref int __errno(); 74 alias errno = __errno; 75 } 76 } 77 else version (OpenBSD) 78 { 79 // https://github.com/openbsd/src/blob/master/include/errno.h 80 extern (C) 81 { 82 ref int __errno(); 83 alias errno = __errno; 84 } 85 } 86 else version (NetBSD) 87 { 88 // https://github.com/NetBSD/src/blob/trunk/include/errno.h 89 extern (C) 90 { 91 ref int __errno(); 92 alias errno = __errno; 93 } 94 } 95 else version (FreeBSD) 96 { 97 extern (C) 98 { 99 ref int __error(); 100 alias errno = __error; 101 } 102 } 103 else version (DragonFlyBSD) 104 { 105 extern (C) 106 { 107 pragma(mangle, "errno") int __errno; 108 ref int __error() { 109 return __errno; 110 } 111 alias errno = __error; 112 } 113 } 114 else version (CRuntime_Bionic) 115 { 116 extern (C) 117 { 118 ref int __errno(); 119 alias errno = __errno; 120 } 121 } 122 else version (CRuntime_UClibc) 123 { 124 extern (C) 125 { 126 ref int __errno_location(); 127 alias errno = __errno_location; 128 } 129 } 130 else version (Darwin) 131 { 132 extern (C) 133 { 134 ref int __error(); 135 alias errno = __error; 136 } 137 } 138 else version (Solaris) 139 { 140 extern (C) 141 { 142 ref int ___errno(); 143 alias errno = ___errno; 144 } 145 } 146 else version (Haiku) 147 { 148 // https://github.com/haiku/haiku/blob/master/headers/posix/errno.h 149 extern (C) 150 { 151 ref int _errnop(); 152 alias errno = _errnop; 153 } 154 } 155 else 156 { 157 /// 158 extern(C) pragma(mangle, "getErrno") @property int errno(); 159 /// 160 extern(C) pragma(mangle, "setErrno") @property int errno(int n); 161 } 162 163 extern (C): 164 165 166 version (CRuntime_Microsoft) 167 { 168 enum EPERM = 1; /// Operation not permitted 169 enum ENOENT = 2; /// No such file or directory 170 enum ESRCH = 3; /// No such process 171 enum EINTR = 4; /// Interrupted system call 172 enum EIO = 5; /// I/O error 173 enum ENXIO = 6; /// No such device or address 174 enum E2BIG = 7; /// Argument list too long 175 enum ENOEXEC = 8; /// Exec format error 176 enum EBADF = 9; /// Bad file number 177 enum ECHILD = 10; /// No child processes 178 enum EAGAIN = 11; /// Try again 179 enum ENOMEM = 12; /// Out of memory 180 enum EACCES = 13; /// Permission denied 181 enum EFAULT = 14; /// Bad address 182 enum EBUSY = 16; /// Device or resource busy 183 enum EEXIST = 17; /// File exists 184 enum EXDEV = 18; /// Cross-device link 185 enum ENODEV = 19; /// No such device 186 enum ENOTDIR = 20; /// Not a directory 187 enum EISDIR = 21; /// Is a directory 188 enum EINVAL = 22; /// Invalid argument 189 enum ENFILE = 23; /// File table overflow 190 enum EMFILE = 24; /// Too many open files 191 enum ENOTTY = 25; /// Not a typewriter 192 enum EFBIG = 27; /// File too large 193 enum ENOSPC = 28; /// No space left on device 194 enum ESPIPE = 29; /// Illegal seek 195 enum EROFS = 30; /// Read-only file system 196 enum EMLINK = 31; /// Too many links 197 enum EPIPE = 32; /// Broken pipe 198 enum EDOM = 33; /// Math argument out of domain of func 199 enum ERANGE = 34; /// Math result not representable 200 enum EDEADLK = 36; /// Resource deadlock would occur 201 enum ENAMETOOLONG = 38; /// File name too long 202 enum ENOLCK = 39; /// No record locks available 203 enum ENOSYS = 40; /// Function not implemented 204 enum ENOTEMPTY = 41; /// Directory not empty 205 enum EILSEQ = 42; /// Illegal byte sequence 206 enum EDEADLOCK = EDEADLK; /// Resource deadlock would occur 207 208 // POSIX compatibility 209 // See_Also: https://docs.microsoft.com/en-us/cpp/c-runtime-library/errno-constants 210 enum EADDRINUSE = 100; 211 enum EADDRNOTAVAIL = 101; 212 enum EAFNOSUPPORT = 102; 213 enum EALREADY = 103; 214 enum EBADMSG = 104; 215 enum ECANCELED = 105; 216 enum ECONNABORTED = 106; 217 enum ECONNREFUSED = 107; 218 enum ECONNRESET = 108; 219 enum EDESTADDRREQ = 109; 220 enum EHOSTUNREACH = 110; 221 enum EIDRM = 111; 222 enum EINPROGRESS = 112; 223 enum EISCONN = 113; 224 enum ELOOP = 114; 225 enum EMSGSIZE = 115; 226 enum ENETDOWN = 116; 227 enum ENETRESET = 117; 228 enum ENETUNREACH = 118; 229 enum ENOBUFS = 119; 230 enum ENODATA = 120; 231 enum ENOLINK = 121; 232 enum ENOMSG = 122; 233 enum ENOPROTOOPT = 123; 234 enum ENOSR = 124; 235 enum ENOSTR = 125; 236 enum ENOTCONN = 126; 237 enum ENOTRECOVERABLE = 127; 238 enum ENOTSOCK = 128; 239 enum ENOTSUP = 129; 240 enum EOPNOTSUPP = 130; 241 enum EOTHER = 131; 242 enum EOVERFLOW = 132; 243 enum EOWNERDEAD = 133; 244 enum EPROTO = 134; 245 enum EPROTONOSUPPORT = 135; 246 enum EPROTOTYPE = 136; 247 enum ETIME = 137; 248 enum ETIMEDOUT = 138; 249 enum ETXTBSY = 139; 250 enum EWOULDBLOCK = 140; 251 } 252 else version (CRuntime_Newlib) 253 { 254 enum EPERM = 1; 255 enum ENOENT = 2; 256 enum ESRCH = 3; 257 enum EINTR = 4; 258 enum EIO = 5; 259 enum ENXIO = 6; 260 enum E2BIG = 7; 261 enum ENOEXEC = 8; 262 enum EBADF = 9; 263 enum ECHILD = 10; 264 enum EAGAIN = 11; 265 enum ENOMEM = 12; 266 enum EACCES = 13; 267 enum EFAULT = 14; 268 enum EBUSY = 16; 269 enum EEXIST = 17; 270 enum EXDEV = 18; 271 enum ENODEV = 19; 272 enum ENOTDIR = 20; 273 enum EISDIR = 21; 274 enum EINVAL = 22; 275 enum ENFILE = 23; 276 enum EMFILE = 24; 277 enum ENOTTY = 25; 278 enum ETXTBSY = 26; 279 enum EFBIG = 27; 280 enum ENOSPC = 28; 281 enum ESPIPE = 29; 282 enum EROFS = 30; 283 enum EMLINK = 31; 284 enum EPIPE = 32; 285 enum EDOM = 33; 286 enum ERANGE = 34; 287 enum ENOMSG = 35; 288 enum EIDRM = 36; 289 enum EDEADLK = 45; 290 enum ENOLCK = 46; 291 enum ENOSTR = 60; 292 enum ENODATA = 61; 293 enum ETIME = 62; 294 enum ENOSR = 63; 295 enum ENOLINK = 67; 296 enum EPROTO = 71; 297 enum EMULTIHOP = 74; 298 enum EBADMSG = 77; 299 enum EFTYPE = 79; 300 enum ENOSYS = 88; 301 enum ENOTEMPTY = 90; 302 enum ENAMETOOLONG = 91; 303 enum ELOOP = 92; 304 enum EOPNOTSUPP = 95; 305 enum EPFNOSUPPORT = 96; 306 enum ECONNRESET = 104; 307 enum ENOBUFS = 105; 308 enum EAFNOSUPPORT = 106; 309 enum EPROTOTYPE = 107; 310 enum ENOTSOCK = 108; 311 enum ENOPROTOOPT = 109; 312 enum ECONNREFUSED = 111; 313 enum EADDRINUSE = 112; 314 enum ECONNABORTED = 113; 315 enum ENETUNREACH = 114; 316 enum ENETDOWN = 115; 317 enum ETIMEDOUT = 116; 318 enum EHOSTDOWN = 117; 319 enum EHOSTUNREACH = 118; 320 enum EINPROGRESS = 119; 321 enum EALREADY = 120; 322 enum EDESTADDRREQ = 121; 323 enum EMSGSIZE = 122; 324 enum EPROTONOSUPPORT = 123; 325 enum EADDRNOTAVAIL = 125; 326 enum ENETRESET = 126; 327 enum EISCONN = 127; 328 enum ENOTCONN = 128; 329 enum ETOOMANYREFS = 129; 330 enum EDQUOT = 132; 331 enum ESTALE = 133; 332 enum ENOTSUP = 134; 333 enum EILSEQ = 138; 334 enum EOVERFLOW = 139; 335 enum ECANCELED = 140; 336 enum ENOTRECOVERABLE = 141; 337 enum EOWNERDEAD = 142; 338 339 enum EWOULDBLOCK = EAGAIN; 340 341 enum __ELASTERROR = 2000; 342 343 // Linux errno extensions 344 version (Cygwin) 345 { 346 enum ENOTBLK = 15; 347 enum ECHRNG = 37; 348 enum EL2NSYNC = 38; 349 enum EL3HLT = 39; 350 enum EL3RST = 40; 351 enum ELNRNG = 41; 352 enum EUNATCH = 42; 353 enum ENOCSI = 43; 354 enum EL2HLT = 44; 355 enum EBADE = 50; 356 enum EBADR = 51; 357 enum EXFULL = 52; 358 enum ENOANO = 53; 359 enum EBADRQC = 54; 360 enum EBADSLT = 55; 361 enum EDEADLOCK = 56; 362 enum EBFONT = 57; 363 enum ENONET = 64; 364 enum ENOPKG = 65; 365 enum EREMOTE = 66; 366 enum EADV = 68; 367 enum ESRMNT = 69; 368 enum ECOMM = 70; 369 enum ELBIN = 75; 370 enum EDOTDOT = 76; 371 enum ENOTUNIQ = 80; 372 enum EBADFD = 81; 373 enum EREMCHG = 82; 374 enum ELIBACC = 83; 375 enum ELIBBAD = 84; 376 enum ELIBSCN = 85; 377 enum ELIBMAX = 86; 378 enum ELIBEXEC = 87; 379 enum ENMFILE = 89; 380 enum ESHUTDOWN = 110; 381 enum ESOCKTNOSUPPORT = 124; 382 enum EPROCLIM = 130; 383 enum EUSERS = 131; 384 enum ENOMEDIUM = 135; 385 enum ENOSHARE = 136; 386 enum ECASECLASH = 137; 387 enum ESTRPIPE = 143; 388 } 389 } 390 else version (linux) 391 { 392 enum EPERM = 1; /// 393 enum ENOENT = 2; /// 394 enum ESRCH = 3; /// 395 enum EINTR = 4; /// 396 enum EIO = 5; /// 397 enum ENXIO = 6; /// 398 enum E2BIG = 7; /// 399 enum ENOEXEC = 8; /// 400 enum EBADF = 9; /// 401 enum ECHILD = 10; /// 402 enum EAGAIN = 11; /// 403 enum ENOMEM = 12; /// 404 enum EACCES = 13; /// 405 enum EFAULT = 14; /// 406 enum ENOTBLK = 15; /// 407 enum EBUSY = 16; /// 408 enum EEXIST = 17; /// 409 enum EXDEV = 18; /// 410 enum ENODEV = 19; /// 411 enum ENOTDIR = 20; /// 412 enum EISDIR = 21; /// 413 enum EINVAL = 22; /// 414 enum ENFILE = 23; /// 415 enum EMFILE = 24; /// 416 enum ENOTTY = 25; /// 417 enum ETXTBSY = 26; /// 418 enum EFBIG = 27; /// 419 enum ENOSPC = 28; /// 420 enum ESPIPE = 29; /// 421 enum EROFS = 30; /// 422 enum EMLINK = 31; /// 423 enum EPIPE = 32; /// 424 enum EDOM = 33; /// 425 enum ERANGE = 34; /// 426 427 version (X86_Any) 428 { 429 enum EDEADLK = 35; /// 430 enum ENAMETOOLONG = 36; /// 431 enum ENOLCK = 37; /// 432 enum ENOSYS = 38; /// 433 enum ENOTEMPTY = 39; /// 434 enum ELOOP = 40; /// 435 enum EWOULDBLOCK = EAGAIN; /// 436 enum ENOMSG = 42; /// 437 enum EIDRM = 43; /// 438 enum ECHRNG = 44; /// 439 enum EL2NSYNC = 45; /// 440 enum EL3HLT = 46; /// 441 enum EL3RST = 47; /// 442 enum ELNRNG = 48; /// 443 enum EUNATCH = 49; /// 444 enum ENOCSI = 50; /// 445 enum EL2HLT = 51; /// 446 enum EBADE = 52; /// 447 enum EBADR = 53; /// 448 enum EXFULL = 54; /// 449 enum ENOANO = 55; /// 450 enum EBADRQC = 56; /// 451 enum EBADSLT = 57; /// 452 enum EDEADLOCK = EDEADLK; /// 453 enum EBFONT = 59; /// 454 enum ENOSTR = 60; /// 455 enum ENODATA = 61; /// 456 enum ETIME = 62; /// 457 enum ENOSR = 63; /// 458 enum ENONET = 64; /// 459 enum ENOPKG = 65; /// 460 enum EREMOTE = 66; /// 461 enum ENOLINK = 67; /// 462 enum EADV = 68; /// 463 enum ESRMNT = 69; /// 464 enum ECOMM = 70; /// 465 enum EPROTO = 71; /// 466 enum EMULTIHOP = 72; /// 467 enum EDOTDOT = 73; /// 468 enum EBADMSG = 74; /// 469 enum EOVERFLOW = 75; /// 470 enum ENOTUNIQ = 76; /// 471 enum EBADFD = 77; /// 472 enum EREMCHG = 78; /// 473 enum ELIBACC = 79; /// 474 enum ELIBBAD = 80; /// 475 enum ELIBSCN = 81; /// 476 enum ELIBMAX = 82; /// 477 enum ELIBEXEC = 83; /// 478 enum EILSEQ = 84; /// 479 enum ERESTART = 85; /// 480 enum ESTRPIPE = 86; /// 481 enum EUSERS = 87; /// 482 enum ENOTSOCK = 88; /// 483 enum EDESTADDRREQ = 89; /// 484 enum EMSGSIZE = 90; /// 485 enum EPROTOTYPE = 91; /// 486 enum ENOPROTOOPT = 92; /// 487 enum EPROTONOSUPPORT = 93; /// 488 enum ESOCKTNOSUPPORT = 94; /// 489 enum EOPNOTSUPP = 95; /// 490 enum ENOTSUP = EOPNOTSUPP; /// 491 enum EPFNOSUPPORT = 96; /// 492 enum EAFNOSUPPORT = 97; /// 493 enum EADDRINUSE = 98; /// 494 enum EADDRNOTAVAIL = 99; /// 495 enum ENETDOWN = 100; /// 496 enum ENETUNREACH = 101; /// 497 enum ENETRESET = 102; /// 498 enum ECONNABORTED = 103; /// 499 enum ECONNRESET = 104; /// 500 enum ENOBUFS = 105; /// 501 enum EISCONN = 106; /// 502 enum ENOTCONN = 107; /// 503 enum ESHUTDOWN = 108; /// 504 enum ETOOMANYREFS = 109; /// 505 enum ETIMEDOUT = 110; /// 506 enum ECONNREFUSED = 111; /// 507 enum EHOSTDOWN = 112; /// 508 enum EHOSTUNREACH = 113; /// 509 enum EALREADY = 114; /// 510 enum EINPROGRESS = 115; /// 511 enum ESTALE = 116; /// 512 enum EUCLEAN = 117; /// 513 enum ENOTNAM = 118; /// 514 enum ENAVAIL = 119; /// 515 enum EISNAM = 120; /// 516 enum EREMOTEIO = 121; /// 517 enum EDQUOT = 122; /// 518 enum ENOMEDIUM = 123; /// 519 enum EMEDIUMTYPE = 124; /// 520 enum ECANCELED = 125; /// 521 enum ENOKEY = 126; /// 522 enum EKEYEXPIRED = 127; /// 523 enum EKEYREVOKED = 128; /// 524 enum EKEYREJECTED = 129; /// 525 enum EOWNERDEAD = 130; /// 526 enum ENOTRECOVERABLE = 131; /// 527 enum ERFKILL = 132; /// 528 enum EHWPOISON = 133; /// 529 } 530 else version (ARM_Any) 531 { 532 enum EDEADLK = 35; /// 533 enum ENAMETOOLONG = 36; /// 534 enum ENOLCK = 37; /// 535 enum ENOSYS = 38; /// 536 enum ENOTEMPTY = 39; /// 537 enum ELOOP = 40; /// 538 enum EWOULDBLOCK = EAGAIN; /// 539 enum ENOMSG = 42; /// 540 enum EIDRM = 43; /// 541 enum ECHRNG = 44; /// 542 enum EL2NSYNC = 45; /// 543 enum EL3HLT = 46; /// 544 enum EL3RST = 47; /// 545 enum ELNRNG = 48; /// 546 enum EUNATCH = 49; /// 547 enum ENOCSI = 50; /// 548 enum EL2HLT = 51; /// 549 enum EBADE = 52; /// 550 enum EBADR = 53; /// 551 enum EXFULL = 54; /// 552 enum ENOANO = 55; /// 553 enum EBADRQC = 56; /// 554 enum EBADSLT = 57; /// 555 enum EDEADLOCK = EDEADLK; /// 556 enum EBFONT = 59; /// 557 enum ENOSTR = 60; /// 558 enum ENODATA = 61; /// 559 enum ETIME = 62; /// 560 enum ENOSR = 63; /// 561 enum ENONET = 64; /// 562 enum ENOPKG = 65; /// 563 enum EREMOTE = 66; /// 564 enum ENOLINK = 67; /// 565 enum EADV = 68; /// 566 enum ESRMNT = 69; /// 567 enum ECOMM = 70; /// 568 enum EPROTO = 71; /// 569 enum EMULTIHOP = 72; /// 570 enum EDOTDOT = 73; /// 571 enum EBADMSG = 74; /// 572 enum EOVERFLOW = 75; /// 573 enum ENOTUNIQ = 76; /// 574 enum EBADFD = 77; /// 575 enum EREMCHG = 78; /// 576 enum ELIBACC = 79; /// 577 enum ELIBBAD = 80; /// 578 enum ELIBSCN = 81; /// 579 enum ELIBMAX = 82; /// 580 enum ELIBEXEC = 83; /// 581 enum EILSEQ = 84; /// 582 enum ERESTART = 85; /// 583 enum ESTRPIPE = 86; /// 584 enum EUSERS = 87; /// 585 enum ENOTSOCK = 88; /// 586 enum EDESTADDRREQ = 89; /// 587 enum EMSGSIZE = 90; /// 588 enum EPROTOTYPE = 91; /// 589 enum ENOPROTOOPT = 92; /// 590 enum EPROTONOSUPPORT = 93; /// 591 enum ESOCKTNOSUPPORT = 94; /// 592 enum EOPNOTSUPP = 95; /// 593 enum ENOTSUP = EOPNOTSUPP; /// 594 enum EPFNOSUPPORT = 96; /// 595 enum EAFNOSUPPORT = 97; /// 596 enum EADDRINUSE = 98; /// 597 enum EADDRNOTAVAIL = 99; /// 598 enum ENETDOWN = 100; /// 599 enum ENETUNREACH = 101; /// 600 enum ENETRESET = 102; /// 601 enum ECONNABORTED = 103; /// 602 enum ECONNRESET = 104; /// 603 enum ENOBUFS = 105; /// 604 enum EISCONN = 106; /// 605 enum ENOTCONN = 107; /// 606 enum ESHUTDOWN = 108; /// 607 enum ETOOMANYREFS = 109; /// 608 enum ETIMEDOUT = 110; /// 609 enum ECONNREFUSED = 111; /// 610 enum EHOSTDOWN = 112; /// 611 enum EHOSTUNREACH = 113; /// 612 enum EALREADY = 114; /// 613 enum EINPROGRESS = 115; /// 614 enum ESTALE = 116; /// 615 enum EUCLEAN = 117; /// 616 enum ENOTNAM = 118; /// 617 enum ENAVAIL = 119; /// 618 enum EISNAM = 120; /// 619 enum EREMOTEIO = 121; /// 620 enum EDQUOT = 122; /// 621 enum ENOMEDIUM = 123; /// 622 enum EMEDIUMTYPE = 124; /// 623 enum ECANCELED = 125; /// 624 enum ENOKEY = 126; /// 625 enum EKEYEXPIRED = 127; /// 626 enum EKEYREVOKED = 128; /// 627 enum EKEYREJECTED = 129; /// 628 enum EOWNERDEAD = 130; /// 629 enum ENOTRECOVERABLE = 131; /// 630 enum ERFKILL = 132; /// 631 enum EHWPOISON = 133; /// 632 } 633 else version (HPPA_Any) 634 { 635 enum ENOMSG = 35; /// 636 enum EIDRM = 36; /// 637 enum ECHRNG = 37; /// 638 enum EL2NSYNC = 38; /// 639 enum EL3HLT = 39; /// 640 enum EL3RST = 40; /// 641 enum ELNRNG = 41; /// 642 enum EUNATCH = 42; /// 643 enum ENOCSI = 43; /// 644 enum EL2HLT = 44; /// 645 enum EDEADLK = 45; /// 646 enum EDEADLOCK = EDEADLK; /// 647 enum ENOLCK = 46; /// 648 enum EILSEQ = 47; /// 649 enum ENONET = 50; /// 650 enum ENODATA = 51; /// 651 enum ETIME = 52; /// 652 enum ENOSR = 53; /// 653 enum ENOSTR = 54; /// 654 enum ENOPKG = 55; /// 655 enum ENOLINK = 57; /// 656 enum EADV = 58; /// 657 enum ESRMNT = 59; /// 658 enum ECOMM = 60; /// 659 enum EPROTO = 61; /// 660 enum EMULTIHOP = 64; /// 661 enum EDOTDOT = 66; /// 662 enum EBADMSG = 67; /// 663 enum EUSERS = 68; /// 664 enum EDQUOT = 69; /// 665 enum ESTALE = 70; /// 666 enum EREMOTE = 71; /// 667 enum EOVERFLOW = 72; /// 668 enum EBADE = 160; /// 669 enum EBADR = 161; /// 670 enum EXFULL = 162; /// 671 enum ENOANO = 163; /// 672 enum EBADRQC = 164; /// 673 enum EBADSLT = 165; /// 674 enum EBFONT = 166; /// 675 enum ENOTUNIQ = 167; /// 676 enum EBADFD = 168; /// 677 enum EREMCHG = 169; /// 678 enum ELIBACC = 170; /// 679 enum ELIBBAD = 171; /// 680 enum ELIBSCN = 172; /// 681 enum ELIBMAX = 173; /// 682 enum ELIBEXEC = 174; /// 683 enum ERESTART = 175; /// 684 enum ESTRPIPE = 176; /// 685 enum EUCLEAN = 177; /// 686 enum ENOTNAM = 178; /// 687 enum ENAVAIL = 179; /// 688 enum EISNAM = 180; /// 689 enum EREMOTEIO = 181; /// 690 enum ENOMEDIUM = 182; /// 691 enum EMEDIUMTYPE = 183; /// 692 enum ENOKEY = 184; /// 693 enum EKEYEXPIRED = 185; /// 694 enum EKEYREVOKED = 186; /// 695 enum EKEYREJECTED = 187; /// 696 enum ENOSYM = 215; /// 697 enum ENOTSOCK = 216; /// 698 enum EDESTADDRREQ = 217; /// 699 enum EMSGSIZE = 218; /// 700 enum EPROTOTYPE = 219; /// 701 enum ENOPROTOOPT = 220; /// 702 enum EPROTONOSUPPORT = 221; /// 703 enum ESOCKTNOSUPPORT = 221; /// 704 enum EOPNOTSUPP = 223; /// 705 enum EPFNOSUPPORT = 224; /// 706 enum EAFNOSUPPORT = 225; /// 707 enum EADDRINUSE = 226; /// 708 enum EADDRNOTAVAIL = 227; /// 709 enum ENETDOWN = 228; /// 710 enum ENETUNREACH = 229; /// 711 enum ENETRESET = 230; /// 712 enum ECONNABORTED = 231; /// 713 enum ECONNRESET = 232; /// 714 enum ENOBUFS = 233; /// 715 enum EISCONN = 234; /// 716 enum ENOTCONN = 235; /// 717 enum ESHUTDOWN = 236; /// 718 enum ETOOMANYREFS = 237; /// 719 enum ETIMEDOUT = 238; /// 720 enum ECONNREFUSED = 239; /// 721 enum EREFUSED = ECONNREFUSED; /// 722 enum EREMOTERELEASE = 240; /// 723 enum EHOSTDOWN = 241; /// 724 enum EHOSTUNREACH = 242; /// 725 enum EALREADY = 244; /// 726 enum EINPROGRESS = 245; /// 727 enum EWOULDBLOCK = EAGAIN; /// 728 enum ENOTEMPTY = 247; /// 729 enum ENAMETOOLONG = 248; /// 730 enum ELOOP = 249; /// 731 enum ENOSYS = 251; /// 732 enum ECANCELLED = 253; /// 733 enum ECANCELED = ECANCELLED; /// 734 enum EOWNERDEAD = 254; /// 735 enum ENOTRECOVERABLE = 255; /// 736 enum ERFKILL = 256; /// 737 enum EHWPOISON = 257; /// 738 } 739 else version (MIPS_Any) 740 { 741 enum ENOMSG = 35; /// 742 enum EIDRM = 36; /// 743 enum ECHRNG = 37; /// 744 enum EL2NSYNC = 38; /// 745 enum EL3HLT = 39; /// 746 enum EL3RST = 40; /// 747 enum ELNRNG = 41; /// 748 enum EUNATCH = 42; /// 749 enum ENOCSI = 43; /// 750 enum EL2HLT = 44; /// 751 enum EDEADLK = 45; /// 752 enum ENOLCK = 46; /// 753 enum EBADE = 50; /// 754 enum EBADR = 51; /// 755 enum EXFULL = 52; /// 756 enum ENOANO = 53; /// 757 enum EBADRQC = 54; /// 758 enum EBADSLT = 55; /// 759 enum EDEADLOCK = 56; /// 760 enum EBFONT = 59; /// 761 enum ENOSTR = 60; /// 762 enum ENODATA = 61; /// 763 enum ETIME = 62; /// 764 enum ENOSR = 63; /// 765 enum ENONET = 64; /// 766 enum ENOPKG = 65; /// 767 enum EREMOTE = 66; /// 768 enum ENOLINK = 67; /// 769 enum EADV = 68; /// 770 enum ESRMNT = 69; /// 771 enum ECOMM = 70; /// 772 enum EPROTO = 71; /// 773 enum EDOTDOT = 73; /// 774 enum EMULTIHOP = 74; /// 775 enum EBADMSG = 77; /// 776 enum ENAMETOOLONG = 78; /// 777 enum EOVERFLOW = 79; /// 778 enum ENOTUNIQ = 80; /// 779 enum EBADFD = 81; /// 780 enum EREMCHG = 82; /// 781 enum ELIBACC = 83; /// 782 enum ELIBBAD = 84; /// 783 enum ELIBSCN = 85; /// 784 enum ELIBMAX = 86; /// 785 enum ELIBEXEC = 87; /// 786 enum EILSEQ = 88; /// 787 enum ENOSYS = 89; /// 788 enum ELOOP = 90; /// 789 enum ERESTART = 91; /// 790 enum ESTRPIPE = 92; /// 791 enum ENOTEMPTY = 93; /// 792 enum EUSERS = 94; /// 793 enum ENOTSOCK = 95; /// 794 enum EDESTADDRREQ = 96; /// 795 enum EMSGSIZE = 97; /// 796 enum EPROTOTYPE = 98; /// 797 enum ENOPROTOOPT = 99; /// 798 enum EPROTONOSUPPORT = 120; /// 799 enum ESOCKTNOSUPPORT = 121; /// 800 enum EOPNOTSUPP = 122; /// 801 enum ENOTSUP = EOPNOTSUPP; /// 802 enum EPFNOSUPPORT = 123; /// 803 enum EAFNOSUPPORT = 124; /// 804 enum EADDRINUSE = 125; /// 805 enum EADDRNOTAVAIL = 126; /// 806 enum ENETDOWN = 127; /// 807 enum ENETUNREACH = 128; /// 808 enum ENETRESET = 129; /// 809 enum ECONNABORTED = 130; /// 810 enum ECONNRESET = 131; /// 811 enum ENOBUFS = 132; /// 812 enum EISCONN = 133; /// 813 enum ENOTCONN = 134; /// 814 enum EUCLEAN = 135; /// 815 enum ENOTNAM = 137; /// 816 enum ENAVAIL = 138; /// 817 enum EISNAM = 139; /// 818 enum EREMOTEIO = 140; /// 819 enum EINIT = 141; /// 820 enum EREMDEV = 142; /// 821 enum ESHUTDOWN = 143; /// 822 enum ETOOMANYREFS = 144; /// 823 enum ETIMEDOUT = 145; /// 824 enum ECONNREFUSED = 146; /// 825 enum EHOSTDOWN = 147; /// 826 enum EHOSTUNREACH = 148; /// 827 enum EWOULDBLOCK = EAGAIN; /// 828 enum EALREADY = 149; /// 829 enum EINPROGRESS = 150; /// 830 enum ESTALE = 151; /// 831 enum ECANCELED = 158; /// 832 enum ENOMEDIUM = 159; /// 833 enum EMEDIUMTYPE = 160; /// 834 enum ENOKEY = 161; /// 835 enum EKEYEXPIRED = 162; /// 836 enum EKEYREVOKED = 163; /// 837 enum EKEYREJECTED = 164; /// 838 enum EOWNERDEAD = 165; /// 839 enum ENOTRECOVERABLE = 166; /// 840 enum ERFKILL = 167; /// 841 enum EHWPOISON = 168; /// 842 enum EDQUOT = 1133; /// 843 } 844 else version (PPC_Any) 845 { 846 enum EDEADLK = 35; /// 847 enum ENAMETOOLONG = 36; /// 848 enum ENOLCK = 37; /// 849 enum ENOSYS = 38; /// 850 enum ENOTEMPTY = 39; /// 851 enum ELOOP = 40; /// 852 enum EWOULDBLOCK = EAGAIN; /// 853 enum ENOMSG = 42; /// 854 enum EIDRM = 43; /// 855 enum ECHRNG = 44; /// 856 enum EL2NSYNC = 45; /// 857 enum EL3HLT = 46; /// 858 enum EL3RST = 47; /// 859 enum ELNRNG = 48; /// 860 enum EUNATCH = 49; /// 861 enum ENOCSI = 50; /// 862 enum EL2HLT = 51; /// 863 enum EBADE = 52; /// 864 enum EBADR = 53; /// 865 enum EXFULL = 54; /// 866 enum ENOANO = 55; /// 867 enum EBADRQC = 56; /// 868 enum EBADSLT = 57; /// 869 enum EDEADLOCK = 58; /// 870 enum EBFONT = 59; /// 871 enum ENOSTR = 60; /// 872 enum ENODATA = 61; /// 873 enum ETIME = 62; /// 874 enum ENOSR = 63; /// 875 enum ENONET = 64; /// 876 enum ENOPKG = 65; /// 877 enum EREMOTE = 66; /// 878 enum ENOLINK = 67; /// 879 enum EADV = 68; /// 880 enum ESRMNT = 69; /// 881 enum ECOMM = 70; /// 882 enum EPROTO = 71; /// 883 enum EMULTIHOP = 72; /// 884 enum EDOTDOT = 73; /// 885 enum EBADMSG = 74; /// 886 enum EOVERFLOW = 75; /// 887 enum ENOTUNIQ = 76; /// 888 enum EBADFD = 77; /// 889 enum EREMCHG = 78; /// 890 enum ELIBACC = 79; /// 891 enum ELIBBAD = 80; /// 892 enum ELIBSCN = 81; /// 893 enum ELIBMAX = 82; /// 894 enum ELIBEXEC = 83; /// 895 enum EILSEQ = 84; /// 896 enum ERESTART = 85; /// 897 enum ESTRPIPE = 86; /// 898 enum EUSERS = 87; /// 899 enum ENOTSOCK = 88; /// 900 enum EDESTADDRREQ = 89; /// 901 enum EMSGSIZE = 90; /// 902 enum EPROTOTYPE = 91; /// 903 enum ENOPROTOOPT = 92; /// 904 enum EPROTONOSUPPORT = 93; /// 905 enum ESOCKTNOSUPPORT = 94; /// 906 enum EOPNOTSUPP = 95; /// 907 enum ENOTSUP = EOPNOTSUPP; /// 908 enum EPFNOSUPPORT = 96; /// 909 enum EAFNOSUPPORT = 97; /// 910 enum EADDRINUSE = 98; /// 911 enum EADDRNOTAVAIL = 99; /// 912 enum ENETDOWN = 100; /// 913 enum ENETUNREACH = 101; /// 914 enum ENETRESET = 102; /// 915 enum ECONNABORTED = 103; /// 916 enum ECONNRESET = 104; /// 917 enum ENOBUFS = 105; /// 918 enum EISCONN = 106; /// 919 enum ENOTCONN = 107; /// 920 enum ESHUTDOWN = 108; /// 921 enum ETOOMANYREFS = 109; /// 922 enum ETIMEDOUT = 110; /// 923 enum ECONNREFUSED = 111; /// 924 enum EHOSTDOWN = 112; /// 925 enum EHOSTUNREACH = 113; /// 926 enum EALREADY = 114; /// 927 enum EINPROGRESS = 115; /// 928 enum ESTALE = 116; /// 929 enum EUCLEAN = 117; /// 930 enum ENOTNAM = 118; /// 931 enum ENAVAIL = 119; /// 932 enum EISNAM = 120; /// 933 enum EREMOTEIO = 121; /// 934 enum EDQUOT = 122; /// 935 enum ENOMEDIUM = 123; /// 936 enum EMEDIUMTYPE = 124; /// 937 enum ECANCELED = 125; /// 938 enum ENOKEY = 126; /// 939 enum EKEYEXPIRED = 127; /// 940 enum EKEYREVOKED = 128; /// 941 enum EKEYREJECTED = 129; /// 942 enum EOWNERDEAD = 130; /// 943 enum ENOTRECOVERABLE = 131; /// 944 enum ERFKILL = 132; /// 945 enum EHWPOISON = 133; /// 946 } 947 else version (RISCV_Any) 948 { 949 enum EDEADLK = 35; /// 950 enum ENAMETOOLONG = 36; /// 951 enum ENOLCK = 37; /// 952 enum ENOSYS = 38; /// 953 enum ENOTEMPTY = 39; /// 954 enum ELOOP = 40; /// 955 enum EWOULDBLOCK = EAGAIN; /// 956 enum ENOMSG = 42; /// 957 enum EIDRM = 43; /// 958 enum ECHRNG = 44; /// 959 enum EL2NSYNC = 45; /// 960 enum EL3HLT = 46; /// 961 enum EL3RST = 47; /// 962 enum ELNRNG = 48; /// 963 enum EUNATCH = 49; /// 964 enum ENOCSI = 50; /// 965 enum EL2HLT = 51; /// 966 enum EBADE = 52; /// 967 enum EBADR = 53; /// 968 enum EXFULL = 54; /// 969 enum ENOANO = 55; /// 970 enum EBADRQC = 56; /// 971 enum EBADSLT = 57; /// 972 enum EDEADLOCK = EDEADLK; /// 973 enum EBFONT = 59; /// 974 enum ENOSTR = 60; /// 975 enum ENODATA = 61; /// 976 enum ETIME = 62; /// 977 enum ENOSR = 63; /// 978 enum ENONET = 64; /// 979 enum ENOPKG = 65; /// 980 enum EREMOTE = 66; /// 981 enum ENOLINK = 67; /// 982 enum EADV = 68; /// 983 enum ESRMNT = 69; /// 984 enum ECOMM = 70; /// 985 enum EPROTO = 71; /// 986 enum EMULTIHOP = 72; /// 987 enum EDOTDOT = 73; /// 988 enum EBADMSG = 74; /// 989 enum EOVERFLOW = 75; /// 990 enum ENOTUNIQ = 76; /// 991 enum EBADFD = 77; /// 992 enum EREMCHG = 78; /// 993 enum ELIBACC = 79; /// 994 enum ELIBBAD = 80; /// 995 enum ELIBSCN = 81; /// 996 enum ELIBMAX = 82; /// 997 enum ELIBEXEC = 83; /// 998 enum EILSEQ = 84; /// 999 enum ERESTART = 85; /// 1000 enum ESTRPIPE = 86; /// 1001 enum EUSERS = 87; /// 1002 enum ENOTSOCK = 88; /// 1003 enum EDESTADDRREQ = 89; /// 1004 enum EMSGSIZE = 90; /// 1005 enum EPROTOTYPE = 91; /// 1006 enum ENOPROTOOPT = 92; /// 1007 enum EPROTONOSUPPORT = 93; /// 1008 enum ESOCKTNOSUPPORT = 94; /// 1009 enum EOPNOTSUPP = 95; /// 1010 enum EPFNOSUPPORT = 96; /// 1011 enum EAFNOSUPPORT = 97; /// 1012 enum EADDRINUSE = 98; /// 1013 enum EADDRNOTAVAIL = 99; /// 1014 enum ENETDOWN = 100; /// 1015 enum ENETUNREACH = 101; /// 1016 enum ENETRESET = 102; /// 1017 enum ECONNABORTED = 103; /// 1018 enum ECONNRESET = 104; /// 1019 enum ENOBUFS = 105; /// 1020 enum EISCONN = 106; /// 1021 enum ENOTCONN = 107; /// 1022 enum ESHUTDOWN = 108; /// 1023 enum ETOOMANYREFS = 109; /// 1024 enum ETIMEDOUT = 110; /// 1025 enum ECONNREFUSED = 111; /// 1026 enum EHOSTDOWN = 112; /// 1027 enum EHOSTUNREACH = 113; /// 1028 enum EALREADY = 114; /// 1029 enum EINPROGRESS = 115; /// 1030 enum ESTALE = 116; /// 1031 enum EUCLEAN = 117; /// 1032 enum ENOTNAM = 118; /// 1033 enum ENAVAIL = 119; /// 1034 enum EISNAM = 120; /// 1035 enum EREMOTEIO = 121; /// 1036 enum EDQUOT = 122; /// 1037 enum ENOMEDIUM = 123; /// 1038 enum EMEDIUMTYPE = 124; /// 1039 enum ECANCELED = 125; /// 1040 enum ENOKEY = 126; /// 1041 enum EKEYEXPIRED = 127; /// 1042 enum EKEYREVOKED = 128; /// 1043 enum EKEYREJECTED = 129; /// 1044 enum EOWNERDEAD = 130; /// 1045 enum ENOTRECOVERABLE = 131; /// 1046 enum ERFKILL = 132; /// 1047 enum EHWPOISON = 133; /// 1048 } 1049 else version (SPARC_Any) 1050 { 1051 enum EWOULDBLOCK = EAGAIN; /// 1052 enum EINPROGRESS = 36; /// 1053 enum EALREADY = 37; /// 1054 enum ENOTSOCK = 38; /// 1055 enum EDESTADDRREQ = 39; /// 1056 enum EMSGSIZE = 40; /// 1057 enum EPROTOTYPE = 41; /// 1058 enum ENOPROTOOPT = 42; /// 1059 enum EPROTONOSUPPORT = 43; /// 1060 enum ESOCKTNOSUPPORT = 44; /// 1061 enum EOPNOTSUPP = 45; /// 1062 enum ENOTSUP = EOPNOTSUPP; /// 1063 enum EPFNOSUPPORT = 46; /// 1064 enum EAFNOSUPPORT = 47; /// 1065 enum EADDRINUSE = 48; /// 1066 enum EADDRNOTAVAIL = 49; /// 1067 enum ENETDOWN = 50; /// 1068 enum ENETUNREACH = 51; /// 1069 enum ENETRESET = 52; /// 1070 enum ECONNABORTED = 53; /// 1071 enum ECONNRESET = 54; /// 1072 enum ENOBUFS = 55; /// 1073 enum EISCONN = 56; /// 1074 enum ENOTCONN = 57; /// 1075 enum ESHUTDOWN = 58; /// 1076 enum ETOOMANYREFS = 59; /// 1077 enum ETIMEDOUT = 60; /// 1078 enum ECONNREFUSED = 61; /// 1079 enum ELOOP = 62; /// 1080 enum ENAMETOOLONG = 63; /// 1081 enum EHOSTDOWN = 64; /// 1082 enum EHOSTUNREACH = 65; /// 1083 enum ENOTEMPTY = 66; /// 1084 enum EPROCLIM = 67; /// 1085 enum EUSERS = 68; /// 1086 enum EDQUOT = 69; /// 1087 enum ESTALE = 70; /// 1088 enum EREMOTE = 71; /// 1089 enum ENOSTR = 72; /// 1090 enum ETIME = 73; /// 1091 enum ENOSR = 74; /// 1092 enum ENOMSG = 75; /// 1093 enum EBADMSG = 76; /// 1094 enum EIDRM = 77; /// 1095 enum EDEADLK = 78; /// 1096 enum ENOLCK = 79; /// 1097 enum ENONET = 80; /// 1098 enum ERREMOTE = 81; /// 1099 enum ENOLINK = 82; /// 1100 enum EADV = 83; /// 1101 enum ESRMNT = 84; /// 1102 enum ECOMM = 85; /// 1103 enum EPROTO = 86; /// 1104 enum EMULTIHOP = 87; /// 1105 enum EDOTDOT = 88; /// 1106 enum EREMCHG = 89; /// 1107 enum ENOSYS = 90; /// 1108 enum ESTRPIPE = 91; /// 1109 enum EOVERFLOW = 92; /// 1110 enum EBADFD = 93; /// 1111 enum ECHRNG = 94; /// 1112 enum EL2NSYNC = 95; /// 1113 enum EL3HLT = 96; /// 1114 enum EL3RST = 97; /// 1115 enum ELNRNG = 98; /// 1116 enum EUNATCH = 99; /// 1117 enum ENOCSI = 100; /// 1118 enum EL2HLT = 101; /// 1119 enum EBADE = 102; /// 1120 enum EBADR = 103; /// 1121 enum EXFULL = 104; /// 1122 enum ENOANO = 105; /// 1123 enum EBADRQC = 106; /// 1124 enum EBADSLT = 107; /// 1125 enum EDEADLOCK = 108; /// 1126 enum EBFONT = 109; /// 1127 enum ELIBEXEC = 110; /// 1128 enum ENODATA = 111; /// 1129 enum ELIBBAD = 112; /// 1130 enum ENOPKG = 113; /// 1131 enum ELIBACC = 114; /// 1132 enum ENOTUNIQ = 115; /// 1133 enum ERESTART = 116; /// 1134 enum EUCLEAN = 117; /// 1135 enum ENOTNAM = 118; /// 1136 enum ENAVAIL = 119; /// 1137 enum EISNAM = 120; /// 1138 enum EREMOTEIO = 121; /// 1139 enum EILSEQ = 122; /// 1140 enum ELIBMAX = 123; /// 1141 enum ELIBSCN = 124; /// 1142 enum ENOMEDIUM = 125; /// 1143 enum EMEDIUMTYPE = 126; /// 1144 enum ECANCELED = 127; /// 1145 enum ENOKEY = 128; /// 1146 enum EKEYEXPIRED = 129; /// 1147 enum EKEYREVOKED = 130; /// 1148 enum EKEYREJECTED = 131; /// 1149 enum EOWNERDEAD = 132; /// 1150 enum ENOTRECOVERABLE = 133; /// 1151 enum ERFKILL = 134; /// 1152 enum EHWPOISON = 135; /// 1153 } 1154 else version (IBMZ_Any) 1155 { 1156 enum EDEADLK = 35; /// 1157 enum ENAMETOOLONG = 36; /// 1158 enum ENOLCK = 37; /// 1159 enum ENOSYS = 38; /// 1160 enum ENOTEMPTY = 39; /// 1161 enum ELOOP = 40; /// 1162 enum EWOULDBLOCK = EAGAIN; /// 1163 enum ENOMSG = 42; /// 1164 enum EIDRM = 43; /// 1165 enum ECHRNG = 44; /// 1166 enum EL2NSYNC = 45; /// 1167 enum EL3HLT = 46; /// 1168 enum EL3RST = 47; /// 1169 enum ELNRNG = 48; /// 1170 enum EUNATCH = 49; /// 1171 enum ENOCSI = 50; /// 1172 enum EL2HLT = 51; /// 1173 enum EBADE = 52; /// 1174 enum EBADR = 53; /// 1175 enum EXFULL = 54; /// 1176 enum ENOANO = 55; /// 1177 enum EBADRQC = 56; /// 1178 enum EBADSLT = 57; /// 1179 enum EDEADLOCK = EDEADLK; /// 1180 enum EBFONT = 59; /// 1181 enum ENOSTR = 60; /// 1182 enum ENODATA = 61; /// 1183 enum ETIME = 62; /// 1184 enum ENOSR = 63; /// 1185 enum ENONET = 64; /// 1186 enum ENOPKG = 65; /// 1187 enum EREMOTE = 66; /// 1188 enum ENOLINK = 67; /// 1189 enum EADV = 68; /// 1190 enum ESRMNT = 69; /// 1191 enum ECOMM = 70; /// 1192 enum EPROTO = 71; /// 1193 enum EMULTIHOP = 72; /// 1194 enum EDOTDOT = 73; /// 1195 enum EBADMSG = 74; /// 1196 enum EOVERFLOW = 75; /// 1197 enum ENOTUNIQ = 76; /// 1198 enum EBADFD = 77; /// 1199 enum EREMCHG = 78; /// 1200 enum ELIBACC = 79; /// 1201 enum ELIBBAD = 80; /// 1202 enum ELIBSCN = 81; /// 1203 enum ELIBMAX = 82; /// 1204 enum ELIBEXEC = 83; /// 1205 enum EILSEQ = 84; /// 1206 enum ERESTART = 85; /// 1207 enum ESTRPIPE = 86; /// 1208 enum EUSERS = 87; /// 1209 enum ENOTSOCK = 88; /// 1210 enum EDESTADDRREQ = 89; /// 1211 enum EMSGSIZE = 90; /// 1212 enum EPROTOTYPE = 91; /// 1213 enum ENOPROTOOPT = 92; /// 1214 enum EPROTONOSUPPORT = 93; /// 1215 enum ESOCKTNOSUPPORT = 94; /// 1216 enum EOPNOTSUPP = 95; /// 1217 enum ENOTSUP = EOPNOTSUPP; /// 1218 enum EPFNOSUPPORT = 96; /// 1219 enum EAFNOSUPPORT = 97; /// 1220 enum EADDRINUSE = 98; /// 1221 enum EADDRNOTAVAIL = 99; /// 1222 enum ENETDOWN = 100; /// 1223 enum ENETUNREACH = 101; /// 1224 enum ENETRESET = 102; /// 1225 enum ECONNABORTED = 103; /// 1226 enum ECONNRESET = 104; /// 1227 enum ENOBUFS = 105; /// 1228 enum EISCONN = 106; /// 1229 enum ENOTCONN = 107; /// 1230 enum ESHUTDOWN = 108; /// 1231 enum ETOOMANYREFS = 109; /// 1232 enum ETIMEDOUT = 110; /// 1233 enum ECONNREFUSED = 111; /// 1234 enum EHOSTDOWN = 112; /// 1235 enum EHOSTUNREACH = 113; /// 1236 enum EALREADY = 114; /// 1237 enum EINPROGRESS = 115; /// 1238 enum ESTALE = 116; /// 1239 enum EUCLEAN = 117; /// 1240 enum ENOTNAM = 118; /// 1241 enum ENAVAIL = 119; /// 1242 enum EISNAM = 120; /// 1243 enum EREMOTEIO = 121; /// 1244 enum EDQUOT = 122; /// 1245 enum ENOMEDIUM = 123; /// 1246 enum EMEDIUMTYPE = 124; /// 1247 enum ECANCELED = 125; /// 1248 enum ENOKEY = 126; /// 1249 enum EKEYEXPIRED = 127; /// 1250 enum EKEYREVOKED = 128; /// 1251 enum EKEYREJECTED = 129; /// 1252 enum EOWNERDEAD = 130; /// 1253 enum ENOTRECOVERABLE = 131; /// 1254 enum ERFKILL = 132; /// 1255 enum EHWPOISON = 133; /// 1256 } 1257 else version (LoongArch64) 1258 { 1259 enum EDEADLK = 35; /// 1260 enum ENAMETOOLONG = 36; /// 1261 enum ENOLCK = 37; /// 1262 enum ENOSYS = 38; /// 1263 enum ENOTEMPTY = 39; /// 1264 enum ELOOP = 40; /// 1265 enum EWOULDBLOCK = EAGAIN; /// 1266 enum ENOMSG = 42; /// 1267 enum EIDRM = 43; /// 1268 enum ECHRNG = 44; /// 1269 enum EL2NSYNC = 45; /// 1270 enum EL3HLT = 46; /// 1271 enum EL3RST = 47; /// 1272 enum ELNRNG = 48; /// 1273 enum EUNATCH = 49; /// 1274 enum ENOCSI = 50; /// 1275 enum EL2HLT = 51; /// 1276 enum EBADE = 52; /// 1277 enum EBADR = 53; /// 1278 enum EXFULL = 54; /// 1279 enum ENOANO = 55; /// 1280 enum EBADRQC = 56; /// 1281 enum EBADSLT = 57; /// 1282 enum EDEADLOCK = EDEADLK; /// 1283 enum EBFONT = 59; /// 1284 enum ENOSTR = 60; /// 1285 enum ENODATA = 61; /// 1286 enum ETIME = 62; /// 1287 enum ENOSR = 63; /// 1288 enum ENONET = 64; /// 1289 enum ENOPKG = 65; /// 1290 enum EREMOTE = 66; /// 1291 enum ENOLINK = 67; /// 1292 enum EADV = 68; /// 1293 enum ESRMNT = 69; /// 1294 enum ECOMM = 70; /// 1295 enum EPROTO = 71; /// 1296 enum EMULTIHOP = 72; /// 1297 enum EDOTDOT = 73; /// 1298 enum EBADMSG = 74; /// 1299 enum EOVERFLOW = 75; /// 1300 enum ENOTUNIQ = 76; /// 1301 enum EBADFD = 77; /// 1302 enum EREMCHG = 78; /// 1303 enum ELIBACC = 79; /// 1304 enum ELIBBAD = 80; /// 1305 enum ELIBSCN = 81; /// 1306 enum ELIBMAX = 82; /// 1307 enum ELIBEXEC = 83; /// 1308 enum EILSEQ = 84; /// 1309 enum ERESTART = 85; /// 1310 enum ESTRPIPE = 86; /// 1311 enum EUSERS = 87; /// 1312 enum ENOTSOCK = 88; /// 1313 enum EDESTADDRREQ = 89; /// 1314 enum EMSGSIZE = 90; /// 1315 enum EPROTOTYPE = 91; /// 1316 enum ENOPROTOOPT = 92; /// 1317 enum EPROTONOSUPPORT = 93; /// 1318 enum ESOCKTNOSUPPORT = 94; /// 1319 enum EOPNOTSUPP = 95; /// 1320 enum ENOTSUP = EOPNOTSUPP; /// 1321 enum EPFNOSUPPORT = 96; /// 1322 enum EAFNOSUPPORT = 97; /// 1323 enum EADDRINUSE = 98; /// 1324 enum EADDRNOTAVAIL = 99; /// 1325 enum ENETDOWN = 100; /// 1326 enum ENETUNREACH = 101; /// 1327 enum ENETRESET = 102; /// 1328 enum ECONNABORTED = 103; /// 1329 enum ECONNRESET = 104; /// 1330 enum ENOBUFS = 105; /// 1331 enum EISCONN = 106; /// 1332 enum ENOTCONN = 107; /// 1333 enum ESHUTDOWN = 108; /// 1334 enum ETOOMANYREFS = 109; /// 1335 enum ETIMEDOUT = 110; /// 1336 enum ECONNREFUSED = 111; /// 1337 enum EHOSTDOWN = 112; /// 1338 enum EHOSTUNREACH = 113; /// 1339 enum EALREADY = 114; /// 1340 enum EINPROGRESS = 115; /// 1341 enum ESTALE = 116; /// 1342 enum EUCLEAN = 117; /// 1343 enum ENOTNAM = 118; /// 1344 enum ENAVAIL = 119; /// 1345 enum EISNAM = 120; /// 1346 enum EREMOTEIO = 121; /// 1347 enum EDQUOT = 122; /// 1348 enum ENOMEDIUM = 123; /// 1349 enum EMEDIUMTYPE = 124; /// 1350 enum ECANCELED = 125; /// 1351 enum ENOKEY = 126; /// 1352 enum EKEYEXPIRED = 127; /// 1353 enum EKEYREVOKED = 128; /// 1354 enum EKEYREJECTED = 129; /// 1355 enum EOWNERDEAD = 130; /// 1356 enum ENOTRECOVERABLE = 131; /// 1357 enum ERFKILL = 132; /// 1358 enum EHWPOISON = 133; /// 1359 } 1360 else 1361 { 1362 static assert(false, "Architecture not supported."); 1363 } 1364 } 1365 else version (Darwin) 1366 { 1367 enum EPERM = 1; /// Operation not permitted 1368 enum ENOENT = 2; /// No such file or directory 1369 enum ESRCH = 3; /// No such process 1370 enum EINTR = 4; /// Interrupted system call 1371 enum EIO = 5; /// Input/output error 1372 enum ENXIO = 6; /// Device not configured 1373 enum E2BIG = 7; /// Argument list too long 1374 enum ENOEXEC = 8; /// Exec format error 1375 enum EBADF = 9; /// Bad file descriptor 1376 enum ECHILD = 10; /// No child processes 1377 enum EDEADLK = 11; /// Resource deadlock avoided 1378 enum ENOMEM = 12; /// Cannot allocate memory 1379 enum EACCES = 13; /// Permission denied 1380 enum EFAULT = 14; /// Bad address 1381 enum EBUSY = 16; /// Device busy 1382 enum EEXIST = 17; /// File exists 1383 enum EXDEV = 18; /// Cross-device link 1384 enum ENODEV = 19; /// Operation not supported by device 1385 enum ENOTDIR = 20; /// Not a directory 1386 enum EISDIR = 21; /// Is a directory 1387 enum EINVAL = 22; /// Invalid argument 1388 enum ENFILE = 23; /// Too many open files in system 1389 enum EMFILE = 24; /// Too many open files 1390 enum ENOTTY = 25; /// Inappropriate ioctl for device 1391 enum ETXTBSY = 26; /// Text file busy 1392 enum EFBIG = 27; /// File too large 1393 enum ENOSPC = 28; /// No space left on device 1394 enum ESPIPE = 29; /// Illegal seek 1395 enum EROFS = 30; /// Read-only file system 1396 enum EMLINK = 31; /// Too many links 1397 enum EPIPE = 32; /// Broken pipe 1398 enum EDOM = 33; /// Numerical argument out of domain 1399 enum ERANGE = 34; /// Result too large 1400 enum EAGAIN = 35; /// Resource temporarily unavailable 1401 enum EWOULDBLOCK = EAGAIN; /// Operation would block 1402 enum EINPROGRESS = 36; /// Operation now in progress 1403 enum EALREADY = 37; /// Operation already in progress 1404 enum ENOTSOCK = 38; /// Socket operation on non-socket 1405 enum EDESTADDRREQ = 39; /// Destination address required 1406 enum EMSGSIZE = 40; /// Message too long 1407 enum EPROTOTYPE = 41; /// Protocol wrong type for socket 1408 enum ENOPROTOOPT = 42; /// Protocol not available 1409 enum EPROTONOSUPPORT = 43; /// Protocol not supported 1410 enum ENOTSUP = 45; /// Operation not supported 1411 enum EOPNOTSUPP = ENOTSUP; /// Operation not supported on socket 1412 enum EAFNOSUPPORT = 47; /// Address family not supported by protocol family 1413 enum EADDRINUSE = 48; /// Address already in use 1414 enum EADDRNOTAVAIL = 49; /// Can't assign requested address 1415 enum ENETDOWN = 50; /// Network is down 1416 enum ENETUNREACH = 51; /// Network is unreachable 1417 enum ENETRESET = 52; /// Network dropped connection on reset 1418 enum ECONNABORTED = 53; /// Software caused connection abort 1419 enum ECONNRESET = 54; /// Connection reset by peer 1420 enum ENOBUFS = 55; /// No buffer space available 1421 enum EISCONN = 56; /// Socket is already connected 1422 enum ENOTCONN = 57; /// Socket is not connected 1423 enum ETIMEDOUT = 60; /// Operation timed out 1424 enum ECONNREFUSED = 61; /// Connection refused 1425 enum ELOOP = 62; /// Too many levels of symbolic links 1426 enum ENAMETOOLONG = 63; /// File name too long 1427 enum EHOSTUNREACH = 65; /// No route to host 1428 enum ENOTEMPTY = 66; /// Directory not empty 1429 enum EDQUOT = 69; /// Disc quota exceeded 1430 enum ESTALE = 70; /// Stale NFS file handle 1431 enum ENOLCK = 77; /// No locks available 1432 enum ENOSYS = 78; /// Function not implemented 1433 enum EOVERFLOW = 84; /// Value too large to be stored in data type 1434 enum ECANCELED = 89; /// Operation canceled 1435 enum EIDRM = 90; /// Identifier removed 1436 enum ENOMSG = 91; /// No message of desired type 1437 enum EILSEQ = 92; /// Illegal byte sequence 1438 enum EBADMSG = 94; /// Bad message 1439 enum EMULTIHOP = 95; /// Reserved 1440 enum ENODATA = 96; /// No message available on STREAM 1441 enum ENOLINK = 97; /// Reserved 1442 enum ENOSR = 98; /// No STREAM resources 1443 enum ENOSTR = 99; /// Not a STREAM 1444 enum EPROTO = 100; /// Protocol error 1445 enum ETIME = 101; /// STREAM ioctl timeout 1446 enum ELAST = 101; /// Must be equal largest errno 1447 } 1448 else version (FreeBSD) 1449 { 1450 enum EPERM = 1; /// Operation not permitted 1451 enum ENOENT = 2; /// No such file or directory 1452 enum ESRCH = 3; /// No such process 1453 enum EINTR = 4; /// Interrupted system call 1454 enum EIO = 5; /// Input/output error 1455 enum ENXIO = 6; /// Device not configured 1456 enum E2BIG = 7; /// Argument list too long 1457 enum ENOEXEC = 8; /// Exec format error 1458 enum EBADF = 9; /// Bad file descriptor 1459 enum ECHILD = 10; /// No child processes 1460 enum EDEADLK = 11; /// Resource deadlock avoided 1461 enum ENOMEM = 12; /// Cannot allocate memory 1462 enum EACCES = 13; /// Permission denied 1463 enum EFAULT = 14; /// Bad address 1464 enum ENOTBLK = 15; /// Block device required 1465 enum EBUSY = 16; /// Device busy 1466 enum EEXIST = 17; /// File exists 1467 enum EXDEV = 18; /// Cross-device link 1468 enum ENODEV = 19; /// Operation not supported by device 1469 enum ENOTDIR = 20; /// Not a directory 1470 enum EISDIR = 21; /// Is a directory 1471 enum EINVAL = 22; /// Invalid argument 1472 enum ENFILE = 23; /// Too many open files in system 1473 enum EMFILE = 24; /// Too many open files 1474 enum ENOTTY = 25; /// Inappropriate ioctl for device 1475 enum ETXTBSY = 26; /// Text file busy 1476 enum EFBIG = 27; /// File too large 1477 enum ENOSPC = 28; /// No space left on device 1478 enum ESPIPE = 29; /// Illegal seek 1479 enum EROFS = 30; /// Read-only file system 1480 enum EMLINK = 31; /// Too many links 1481 enum EPIPE = 32; /// Broken pipe 1482 enum EDOM = 33; /// Numerical argument out of domain 1483 enum ERANGE = 34; /// Result too large 1484 enum EAGAIN = 35; /// Resource temporarily unavailable 1485 enum EWOULDBLOCK = EAGAIN; /// Operation would block 1486 enum EINPROGRESS = 36; /// Operation now in progress 1487 enum EALREADY = 37; /// Operation already in progress 1488 enum ENOTSOCK = 38; /// Socket operation on non-socket 1489 enum EDESTADDRREQ = 39; /// Destination address required 1490 enum EMSGSIZE = 40; /// Message too long 1491 enum EPROTOTYPE = 41; /// Protocol wrong type for socket 1492 enum ENOPROTOOPT = 42; /// Protocol not available 1493 enum EPROTONOSUPPORT = 43; /// Protocol not supported 1494 enum ENOTSUP = 45; /// Operation not supported 1495 enum EOPNOTSUPP = ENOTSUP; /// Operation not supported on socket 1496 enum EAFNOSUPPORT = 47; /// Address family not supported by protocol family 1497 enum EADDRINUSE = 48; /// Address already in use 1498 enum EADDRNOTAVAIL = 49; /// Can't assign requested address 1499 enum ENETDOWN = 50; /// Network is down 1500 enum ENETUNREACH = 51; /// Network is unreachable 1501 enum ENETRESET = 52; /// Network dropped connection on reset 1502 enum ECONNABORTED = 53; /// Software caused connection abort 1503 enum ECONNRESET = 54; /// Connection reset by peer 1504 enum ENOBUFS = 55; /// No buffer space available 1505 enum EISCONN = 56; /// Socket is already connected 1506 enum ENOTCONN = 57; /// Socket is not connected 1507 enum ESHUTDOWN = 58; /// Can't send after socket shutdown 1508 enum ETOOMANYREFS = 59; /// Too many refrences; can't splice 1509 enum ETIMEDOUT = 60; /// Operation timed out 1510 enum ECONNREFUSED = 61; /// Connection refused 1511 enum ELOOP = 62; /// Too many levels of symbolic links 1512 enum ENAMETOOLONG = 63; /// File name too long 1513 enum EHOSTUNREACH = 65; /// No route to host 1514 enum ENOTEMPTY = 66; /// Directory not empty 1515 enum EPROCLIM = 67; /// Too many processes 1516 enum EUSERS = 68; /// Too many users 1517 enum EDQUOT = 69; /// Disc quota exceeded 1518 enum ESTALE = 70; /// Stale NFS file handle 1519 enum EREMOTE = 71; /// Too many levels of remote in path 1520 enum EBADRPC = 72; /// RPC struct is bad 1521 enum ERPCMISMATCH = 73; /// RPC version wrong 1522 enum EPROGUNAVAIL = 74; /// RPC prog. not avail 1523 enum EPROGMISMATCH = 75; /// Program version wrong 1524 enum EPROCUNAVAIL = 76; /// Bad procedure for program 1525 enum ENOLCK = 77; /// No locks available 1526 enum ENOSYS = 78; /// Function not implemented 1527 enum EFTYPE = 79; /// Inappropriate file type or format 1528 enum EAUTH = 80; /// Authentication error 1529 enum ENEEDAUTH = 81; /// Need authenticator 1530 enum EIDRM = 82; /// Itendifier removed 1531 enum ENOMSG = 83; /// No message of desired type 1532 enum EOVERFLOW = 84; /// Value too large to be stored in data type 1533 enum ECANCELED = 85; /// Operation canceled 1534 enum EILSEQ = 86; /// Illegal byte sequence 1535 enum ENOATTR = 87; /// Attribute not found 1536 enum EDOOFUS = 88; /// Programming error 1537 enum EBADMSG = 89; /// Bad message 1538 enum EMULTIHOP = 90; /// Multihop attempted 1539 enum ENOLINK = 91; /// Link has been severed 1540 enum EPROTO = 92; /// Protocol error 1541 enum ELAST = 92; /// Must be equal largest errno 1542 } 1543 else version (NetBSD) 1544 { 1545 // http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/sys/errno.h 1546 enum EPERM = 1; 1547 enum ENOENT = 2; 1548 enum ESRCH = 3; 1549 enum EINTR = 4; 1550 enum EIO = 5; 1551 enum ENXIO = 6; 1552 enum E2BIG = 7; 1553 enum ENOEXEC = 8; 1554 enum EBADF = 9; 1555 enum ECHILD = 10; 1556 enum EDEADLK = 11; 1557 /// 1558 enum ENOMEM = 12; 1559 enum EACCES = 13; 1560 enum EFAULT = 14; 1561 enum ENOTBLK = 15; 1562 enum EBUSY = 16; 1563 enum EEXIST = 17; 1564 enum EXDEV = 18; 1565 enum ENODEV = 19; 1566 enum ENOTDIR = 20; 1567 enum EISDIR = 21; 1568 enum EINVAL = 22; 1569 enum ENFILE = 23; 1570 enum EMFILE = 24; 1571 enum ENOTTY = 25; 1572 enum ETXTBSY = 26; 1573 enum EFBIG = 27; 1574 enum ENOSPC = 28; 1575 enum ESPIPE = 29; 1576 enum EROFS = 30; 1577 enum EMLINK = 31; 1578 enum EPIPE = 32; 1579 /// 1580 enum EDOM = 33; 1581 enum ERANGE = 34; 1582 1583 /// 1584 enum EAGAIN = 35; 1585 enum EWOULDBLOCK = EAGAIN; 1586 enum EINPROGRESS = 36; 1587 enum EALREADY = 37; 1588 1589 /// 1590 enum ENOTSOCK = 38; 1591 enum EDESTADDRREQ = 39; 1592 enum EMSGSIZE = 40; 1593 enum EPROTOTYPE = 41; 1594 enum ENOPROTOOPT = 42; 1595 enum EPROTONOSUPPORT = 43; 1596 enum ESOCKTNOSUPPORT = 44; 1597 enum EOPNOTSUPP = 45; 1598 enum EPFNOSUPPORT = 46; 1599 enum EAFNOSUPPORT = 47; 1600 enum EADDRINUSE = 48; 1601 enum EADDRNOTAVAIL = 49; 1602 1603 /// 1604 enum ENETDOWN = 50; 1605 enum ENETUNREACH = 51; 1606 enum ENETRESET = 52; 1607 enum ECONNABORTED = 53; 1608 enum ECONNRESET = 54; 1609 enum ENOBUFS = 55; 1610 enum EISCONN = 56; 1611 enum ENOTCONN = 57; 1612 enum ESHUTDOWN = 58; 1613 enum ETOOMANYREFS = 59; 1614 enum ETIMEDOUT = 60; 1615 enum ECONNREFUSED = 61; 1616 enum ELOOP = 62; 1617 enum ENAMETOOLONG = 63; 1618 1619 /// 1620 enum EHOSTDOWN = 64; 1621 enum EHOSTUNREACH = 65; 1622 enum ENOTEMPTY = 66; 1623 1624 /// 1625 enum EPROCLIM = 67; 1626 enum EUSERS = 68; 1627 enum EDQUOT = 69; 1628 1629 /// 1630 enum ESTALE = 70; 1631 enum EREMOTE = 71; 1632 enum EBADRPC = 72; 1633 enum ERPCMISMATCH = 73; 1634 enum EPROGUNAVAIL = 74; 1635 enum EPROGMISMATCH = 75; 1636 enum EPROCUNAVAIL = 76; 1637 1638 enum ENOLCK = 77; 1639 enum ENOSYS = 78; 1640 1641 enum EFTYPE = 79; 1642 enum EAUTH = 80; 1643 enum ENEEDAUTH = 81; 1644 1645 /// 1646 enum EIDRM = 82; 1647 enum ENOMSG = 83; 1648 enum EOVERFLOW = 84; 1649 /// 1650 enum EILSEQ = 85; 1651 1652 /// 1653 enum ENOTSUP = 86; 1654 1655 /// 1656 enum ECANCELED = 87; 1657 1658 /// 1659 enum EBADMSG = 88; 1660 1661 /// 1662 enum ENODATA = 89; 1663 enum ENOSR = 90; 1664 enum ENOSTR = 91; 1665 enum ETIME = 92; 1666 1667 /// 1668 enum ENOATTR = 93; 1669 1670 /// 1671 enum EMULTIHOP = 94; 1672 enum ENOLINK = 95; 1673 enum EPROTO = 96; 1674 } 1675 else version (OpenBSD) 1676 { 1677 enum EPERM = 1; /// Operation not permitted 1678 enum ENOENT = 2; /// No such file or directory 1679 enum ESRCH = 3; /// No such process 1680 enum EINTR = 4; /// Interrupted system call 1681 enum EIO = 5; /// Input/output error 1682 enum ENXIO = 6; /// Device not configured 1683 enum E2BIG = 7; /// Argument list too long 1684 enum ENOEXEC = 8; /// Exec format error 1685 enum EBADF = 9; /// Bad file descriptor 1686 enum ECHILD = 10; /// No child processes 1687 enum EDEADLK = 11; /// Resource deadlock avoided 1688 enum ENOMEM = 12; /// Cannot allocate memory 1689 enum EACCES = 13; /// Permission denied 1690 enum EFAULT = 14; /// Bad address 1691 enum ENOTBLK = 15; /// Block device required 1692 enum EBUSY = 16; /// Device busy 1693 enum EEXIST = 17; /// File exists 1694 enum EXDEV = 18; /// Cross-device link 1695 enum ENODEV = 19; /// Operation not supported by device 1696 enum ENOTDIR = 20; /// Not a directory 1697 enum EISDIR = 21; /// Is a directory 1698 enum EINVAL = 22; /// Invalid argument 1699 enum ENFILE = 23; /// Too many open files in system 1700 enum EMFILE = 24; /// Too many open files 1701 enum ENOTTY = 25; /// Inappropriate ioctl for device 1702 enum ETXTBSY = 26; /// Text file busy 1703 enum EFBIG = 27; /// File too large 1704 enum ENOSPC = 28; /// No space left on device 1705 enum ESPIPE = 29; /// Illegal seek 1706 enum EROFS = 30; /// Read-only file system 1707 enum EMLINK = 31; /// Too many links 1708 enum EPIPE = 32; /// Broken pipe 1709 enum EDOM = 33; /// Numerical argument out of domain 1710 enum ERANGE = 34; /// Result too large 1711 enum EAGAIN = 35; /// Resource temporarily unavailable 1712 enum EWOULDBLOCK = EAGAIN; /// Operation would block 1713 enum EINPROGRESS = 36; /// Operation now in progress 1714 enum EALREADY = 37; /// Operation already in progress 1715 enum ENOTSOCK = 38; /// Socket operation on non-socket 1716 enum EDESTADDRREQ = 39; /// Destination address required 1717 enum EMSGSIZE = 40; /// Message too long 1718 enum EPROTOTYPE = 41; /// Protocol wrong type for socket 1719 enum ENOPROTOOPT = 42; /// Protocol not available 1720 enum EPROTONOSUPPORT = 43; /// Protocol not supported 1721 enum ESOCKTNOSUPPORT = 44; /// Socket type not supported 1722 enum EOPNOTSUPP = 45; /// Operation not supported 1723 enum EPFNOSUPPORT = 46; /// Protocol family not supported 1724 enum EAFNOSUPPORT = 47; /// Address family not supported by protocol family 1725 enum EADDRINUSE = 48; /// Address already in use 1726 enum EADDRNOTAVAIL = 49; /// Can't assign requested address 1727 enum ENETDOWN = 50; /// Network is down 1728 enum ENETUNREACH = 51; /// Network is unreachable 1729 enum ENETRESET = 52; /// Network dropped connection on reset 1730 enum ECONNABORTED = 53; /// Software caused connection abort 1731 enum ECONNRESET = 54; /// Connection reset by peer 1732 enum ENOBUFS = 55; /// No buffer space available 1733 enum EISCONN = 56; /// Socket is already connected 1734 enum ENOTCONN = 57; /// Socket is not connected 1735 enum ESHUTDOWN = 58; /// Can't send after socket shutdown 1736 enum ETOOMANYREFS = 59; /// Too many references: can't splice 1737 enum ETIMEDOUT = 60; /// Operation timed out 1738 enum ECONNREFUSED = 61; /// Connection refused 1739 enum ELOOP = 62; /// Too many levels of symbolic links 1740 enum ENAMETOOLONG = 63; /// File name too long 1741 enum EHOSTDOWN = 64; /// Host is down 1742 enum EHOSTUNREACH = 65; /// No route to host 1743 enum ENOTEMPTY = 66; /// Directory not empty 1744 enum EPROCLIM = 67; /// Too many processes 1745 enum EUSERS = 68; /// Too many users 1746 enum EDQUOT = 69; /// Disk quota exceeded 1747 enum ESTALE = 70; /// Stale NFS file handle 1748 enum EREMOTE = 71; /// Too many levels of remote in path 1749 enum EBADRPC = 72; /// RPC struct is bad 1750 enum ERPCMISMATCH = 73; /// RPC version wrong 1751 enum EPROGUNAVAIL = 74; /// RPC program not available 1752 enum EPROGMISMATCH = 75; /// Program version wrong 1753 enum EPROCUNAVAIL = 76; /// Bad procedure for program 1754 enum ENOLCK = 77; /// No locks available 1755 enum ENOSYS = 78; /// Function not implemented 1756 enum EFTYPE = 79; /// Inappropriate file type or format 1757 enum EAUTH = 80; /// Authentication error 1758 enum ENEEDAUTH = 81; /// Need authenticator 1759 enum EIPSEC = 82; /// IPsec processing failure 1760 enum ENOATTR = 83; /// Attribute not found 1761 enum EILSEQ = 84; /// Illegal byte sequence 1762 enum ENOMEDIUM = 85; /// No medium found 1763 enum EMEDIUMTYPE = 86; /// Wrong medium type 1764 enum EOVERFLOW = 87; /// Value too large to be stored in data type 1765 enum ECANCELED = 88; /// Operation canceled 1766 enum EIDRM = 89; /// Identifier removed 1767 enum ENOMSG = 90; /// No message of desired type 1768 enum ENOTSUP = 91; /// Not supported 1769 enum EBADMSG = 92; /// Bad message 1770 enum ENOTRECOVERABLE = 93; /// State not recoverable 1771 enum EOWNERDEAD = 94; /// Previous owner died 1772 enum EPROTO = 95; /// Protocol error 1773 enum ELAST = 95; /// Must be equal largest errno 1774 } 1775 else version (DragonFlyBSD) 1776 { 1777 enum EPERM = 1; 1778 enum ENOENT = 2; 1779 enum ESRCH = 3; 1780 enum EINTR = 4; 1781 enum EIO = 5; 1782 enum ENXIO = 6; 1783 enum E2BIG = 7; 1784 enum ENOEXEC = 8; 1785 enum EBADF = 9; 1786 enum ECHILD = 10; 1787 enum EDEADLK = 11; 1788 enum ENOMEM = 12; 1789 enum EACCES = 13; 1790 enum EFAULT = 14; 1791 enum ENOTBLK = 15; 1792 enum EBUSY = 16; 1793 enum EEXIST = 17; 1794 enum EXDEV = 18; 1795 enum ENODEV = 19; 1796 enum ENOTDIR = 20; 1797 enum EISDIR = 21; 1798 enum EINVAL = 22; 1799 enum ENFILE = 23; 1800 enum EMFILE = 24; 1801 enum ENOTTY = 25; 1802 enum ETXTBSY = 26; 1803 enum EFBIG = 27; 1804 enum ENOSPC = 28; 1805 enum ESPIPE = 29; 1806 enum EROFS = 30; 1807 enum EMLINK = 31; 1808 enum EPIPE = 32; 1809 enum EDOM = 33; 1810 enum ERANGE = 34; 1811 enum EAGAIN = 35; 1812 enum EWOULDBLOCK = EAGAIN; 1813 enum EINPROGRESS = 36; 1814 enum EALREADY = 37; 1815 enum ENOTSOCK = 38; 1816 enum EDESTADDRREQ = 39; 1817 enum EMSGSIZE = 40; 1818 enum EPROTOTYPE = 41; 1819 enum ENOPROTOOPT = 42; 1820 enum EPROTONOSUPPORT = 43; 1821 enum ENOTSUP = 45; 1822 enum EOPNOTSUPP = ENOTSUP; 1823 enum EPFNOSUPPORT = 46; 1824 enum EAFNOSUPPORT = 47; 1825 enum EADDRINUSE = 48; 1826 enum EADDRNOTAVAIL = 49; 1827 enum ENETDOWN = 50; 1828 enum ENETUNREACH = 51; 1829 enum ENETRESET = 52; 1830 enum ECONNABORTED = 53; 1831 enum ECONNRESET = 54; 1832 enum ENOBUFS = 55; 1833 enum EISCONN = 56; 1834 enum ENOTCONN = 57; 1835 enum ESHUTDOWN = 58; 1836 enum ETOOMANYREFS = 59; 1837 enum ETIMEDOUT = 60; 1838 enum ECONNREFUSED = 61; 1839 enum ELOOP = 62; 1840 enum ENAMETOOLONG = 63; 1841 enum EHOSTUNREACH = 65; 1842 enum ENOTEMPTY = 66; 1843 enum EPROCLIM = 67; 1844 enum EUSERS = 68; 1845 enum EDQUOT = 69; 1846 enum ESTALE = 70; 1847 enum EREMOTE = 71; 1848 enum EBADRPC = 72; 1849 enum ERPCMISMATCH = 73; 1850 enum EPROGUNAVAIL = 74; 1851 enum EPROGMISMATCH = 75; 1852 enum EPROCUNAVAIL = 76; 1853 enum ENOLCK = 77; 1854 enum ENOSYS = 78; 1855 enum EFTYPE = 79; 1856 enum EAUTH = 80; 1857 enum ENEEDAUTH = 81; 1858 enum EIDRM = 82; 1859 enum ENOMSG = 83; 1860 enum EOVERFLOW = 84; 1861 enum ECANCELED = 85; 1862 enum EILSEQ = 86; 1863 enum ENOATTR = 87; 1864 enum EDOOFUS = 88; 1865 enum EBADMSG = 89; 1866 enum EMULTIHOP = 90; 1867 enum ENOLINK = 91; 1868 enum EPROTO = 92; 1869 enum ENOMEDIUM = 93; 1870 enum EUNUSED94 = 94; 1871 enum EUNUSED95 = 95; 1872 enum EUNUSED96 = 96; 1873 enum EUNUSED97 = 97; 1874 enum EUNUSED98 = 98; 1875 enum EASYNC = 99; 1876 enum ELAST = 99; 1877 } 1878 else version (Solaris) 1879 { 1880 enum EPERM = 1; /// Not super-user 1881 enum ENOENT = 2; /// No such file or directory 1882 enum ESRCH = 3; /// No such process 1883 enum EINTR = 4; /// interrupted system call 1884 enum EIO = 5; /// I/O error 1885 enum ENXIO = 6; /// No such device or address 1886 enum E2BIG = 7; /// Arg list too long 1887 enum ENOEXEC = 8; /// Exec format error 1888 enum EBADF = 9; /// Bad file number 1889 enum ECHILD = 10; /// No children 1890 enum EAGAIN = 11; /// Resource temporarily unavailable 1891 enum ENOMEM = 12; /// Not enough core 1892 enum EACCES = 13; /// Permission denied 1893 enum EFAULT = 14; /// Bad address 1894 enum ENOTBLK = 15; /// Block device required 1895 enum EBUSY = 16; /// Mount device busy 1896 enum EEXIST = 17; /// File exists 1897 enum EXDEV = 18; /// Cross-device link 1898 enum ENODEV = 19; /// No such device 1899 enum ENOTDIR = 20; /// Not a directory 1900 enum EISDIR = 21; /// Is a directory 1901 enum EINVAL = 22; /// Invalid argument 1902 enum ENFILE = 23; /// File table overflow 1903 enum EMFILE = 24; /// Too many open files 1904 enum ENOTTY = 25; /// Inappropriate ioctl for device 1905 enum ETXTBSY = 26; /// Text file busy 1906 enum EFBIG = 27; /// File too large 1907 enum ENOSPC = 28; /// No space left on device 1908 enum ESPIPE = 29; /// Illegal seek 1909 enum EROFS = 30; /// Read only file system 1910 enum EMLINK = 31; /// Too many links 1911 enum EPIPE = 32; /// Broken pipe 1912 enum EDOM = 33; /// Math arg out of domain of func 1913 enum ERANGE = 34; /// Math result not representable 1914 enum ENOMSG = 35; /// No message of desired type 1915 enum EIDRM = 36; /// Identifier removed 1916 enum ECHRNG = 37; /// Channel number out of range 1917 enum EL2NSYNC = 38; /// Level 2 not synchronized 1918 enum EL3HLT = 39; /// Level 3 halted 1919 enum EL3RST = 40; /// Level 3 reset 1920 enum ELNRNG = 41; /// Link number out of range 1921 enum EUNATCH = 42; /// Protocol driver not attached 1922 enum ENOCSI = 43; /// No CSI structure available 1923 enum EL2HLT = 44; /// Level 2 halted 1924 enum EDEADLK = 45; /// Deadlock condition. 1925 enum ENOLCK = 46; /// No record locks available. 1926 enum ECANCELED = 47; /// Operation canceled 1927 enum ENOTSUP = 48; /// Operation not supported 1928 enum EDQUOT = 49; /// Disc quota exceeded 1929 enum EBADE = 50; /// invalid exchange 1930 enum EBADR = 51; /// invalid request descriptor 1931 enum EXFULL = 52; /// exchange full 1932 enum ENOANO = 53; /// no anode 1933 enum EBADRQC = 54; /// invalid request code 1934 enum EBADSLT = 55; /// invalid slot 1935 enum EDEADLOCK = 56; /// file locking deadlock error 1936 enum EBFONT = 57; /// bad font file fmt 1937 enum EOWNERDEAD = 58; /// process died with the lock 1938 enum ENOTRECOVERABLE = 59; /// lock is not recoverable 1939 enum ENOSTR = 60; /// Device not a stream 1940 enum ENODATA = 61; /// no data (for no delay io) 1941 enum ETIME = 62; /// timer expired 1942 enum ENOSR = 63; /// out of streams resources 1943 enum ENONET = 64; /// Machine is not on the network 1944 enum ENOPKG = 65; /// Package not installed 1945 enum EREMOTE = 66; /// The object is remote 1946 enum ENOLINK = 67; /// the link has been severed 1947 enum EADV = 68; /// advertise error 1948 enum ESRMNT = 69; /// srmount error 1949 enum ECOMM = 70; /// Communication error on send 1950 enum EPROTO = 71; /// Protocol error 1951 enum ELOCKUNMAPPED = 72; /// locked lock was unmapped 1952 enum ENOTACTIVE = 73; /// Facility is not active 1953 enum EMULTIHOP = 74; /// multihop attempted 1954 enum EBADMSG = 77; /// trying to read unreadable message 1955 enum ENAMETOOLONG = 78; /// path name is too long 1956 enum EOVERFLOW = 79; /// value too large to be stored in data type 1957 enum ENOTUNIQ = 80; /// given log. name not unique 1958 enum EBADFD = 81; /// f.d. invalid for this operation 1959 enum EREMCHG = 82; /// Remote address changed 1960 enum ELIBACC = 83; /// Can't access a needed shared lib. 1961 enum ELIBBAD = 84; /// Accessing a corrupted shared lib. 1962 enum ELIBSCN = 85; /// .lib section in a.out corrupted. 1963 enum ELIBMAX = 86; /// Attempting to link in too many libs. 1964 enum ELIBEXEC = 87; /// Attempting to exec a shared library. 1965 enum EILSEQ = 88; /// Illegal byte sequence. 1966 enum ENOSYS = 89; /// Unsupported file system operation 1967 enum ELOOP = 90; /// Symbolic link loop 1968 enum ERESTART = 91; /// Restartable system call 1969 enum ESTRPIPE = 92; /// if pipe/FIFO, don't sleep in stream head 1970 enum ENOTEMPTY = 93; /// directory not empty 1971 enum EUSERS = 94; /// Too many users (for UFS) 1972 enum ENOTSOCK = 95; /// Socket operation on non-socket 1973 enum EDESTADDRREQ = 96; /// Destination address required 1974 enum EMSGSIZE = 97; /// Message too long 1975 enum EPROTOTYPE = 98; /// Protocol wrong type for socket 1976 enum ENOPROTOOPT = 99; /// Protocol not available 1977 enum EPROTONOSUPPORT = 120; /// Protocol not supported 1978 enum ESOCKTNOSUPPORT = 121; /// Socket type not supported 1979 enum EOPNOTSUPP = 122; /// Operation not supported on socket 1980 enum EPFNOSUPPORT = 123; /// Protocol family not supported 1981 enum EAFNOSUPPORT = 124; /// Address family not supported by the protocol family 1982 enum EADDRINUSE = 125; /// Address already in use 1983 enum EADDRNOTAVAIL = 126; /// Can't assign requested address 1984 enum ENETDOWN = 127; /// Network is down 1985 enum ENETUNREACH = 128; /// Network is unreachable 1986 enum ENETRESET = 129; /// Network dropped connection because of reset 1987 enum ECONNABORTED = 130; /// Software caused connection abort 1988 enum ECONNRESET = 131; /// Connection reset by peer 1989 enum ENOBUFS = 132; /// No buffer space available 1990 enum EISCONN = 133; /// Socket is already connected 1991 enum ENOTCONN = 134; /// Socket is not connected 1992 enum ESHUTDOWN = 143; /// Can't send after socket shutdown 1993 enum ETOOMANYREFS = 144; /// Too many references: can't splice 1994 enum ETIMEDOUT = 145; /// Connection timed out 1995 enum ECONNREFUSED = 146; /// Connection refused 1996 enum EHOSTDOWN = 147; /// Host is down 1997 enum EHOSTUNREACH = 148; /// No route to host 1998 enum EWOULDBLOCK = EAGAIN; /// Resource temporarily unavailable 1999 enum EALREADY = 149; /// operation already in progress 2000 enum EINPROGRESS = 150; /// operation now in progress 2001 enum ESTALE = 151; /// Stale NFS file handle 2002 } 2003 else version (Haiku) 2004 { 2005 // https://github.com/haiku/haiku/blob/master/headers/os/support/Errors.h 2006 // https://github.com/haiku/haiku/blob/master/headers/build/os/support/Errors.h 2007 import core.stdc.limits : INT_MIN; 2008 enum B_GENERAL_ERROR_BASE = INT_MIN; 2009 enum B_OS_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x1000); 2010 enum B_APP_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x2000); 2011 enum B_INTERFACE_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x3000); 2012 enum B_MEDIA_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x4000); 2013 /* - 0x41ff */ 2014 enum B_TRANSLATION_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x4800); 2015 /* - 0x48ff */ 2016 enum B_MIDI_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x5000); 2017 enum B_STORAGE_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x6000); 2018 enum B_POSIX_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x7000); 2019 enum B_MAIL_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x8000); 2020 enum B_PRINT_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0x9000); 2021 enum B_DEVICE_ERROR_BASE = (B_GENERAL_ERROR_BASE + 0xa000); 2022 2023 /* General Errors */ 2024 enum B_NO_MEMORY = (B_GENERAL_ERROR_BASE + 0); 2025 enum B_IO_ERROR = (B_GENERAL_ERROR_BASE + 1); 2026 enum B_PERMISSION_DENIED = (B_GENERAL_ERROR_BASE + 2); 2027 enum B_BAD_INDEX = (B_GENERAL_ERROR_BASE + 3); 2028 enum B_BAD_TYPE = (B_GENERAL_ERROR_BASE + 4); 2029 enum B_BAD_VALUE = (B_GENERAL_ERROR_BASE + 5); 2030 enum B_MISMATCHED_VALUES = (B_GENERAL_ERROR_BASE + 6); 2031 enum B_NAME_NOT_FOUND = (B_GENERAL_ERROR_BASE + 7); 2032 enum B_NAME_IN_USE = (B_GENERAL_ERROR_BASE + 8); 2033 enum B_TIMED_OUT = (B_GENERAL_ERROR_BASE + 9); 2034 enum B_INTERRUPTED = (B_GENERAL_ERROR_BASE + 10); 2035 enum B_WOULD_BLOCK = (B_GENERAL_ERROR_BASE + 11); 2036 enum B_CANCELED = (B_GENERAL_ERROR_BASE + 12); 2037 enum B_NO_INIT = (B_GENERAL_ERROR_BASE + 13); 2038 enum B_NOT_INITIALIZED = (B_GENERAL_ERROR_BASE + 13); 2039 enum B_BUSY = (B_GENERAL_ERROR_BASE + 14); 2040 enum B_NOT_ALLOWED = (B_GENERAL_ERROR_BASE + 15); 2041 enum B_BAD_DATA = (B_GENERAL_ERROR_BASE + 16); 2042 enum B_DONT_DO_THAT = (B_GENERAL_ERROR_BASE + 17); 2043 2044 enum B_ERROR = (-1); 2045 enum B_OK = (int(0)); 2046 enum B_NO_ERROR = (int(0)); 2047 2048 /* Kernel Kit Errors */ 2049 enum B_BAD_SEM_ID = (B_OS_ERROR_BASE + 0); 2050 enum B_NO_MORE_SEMS = (B_OS_ERROR_BASE + 1); 2051 2052 enum B_BAD_THREAD_ID = (B_OS_ERROR_BASE + 0x100); 2053 enum B_NO_MORE_THREADS = (B_OS_ERROR_BASE + 0x101); 2054 enum B_BAD_THREAD_STATE = (B_OS_ERROR_BASE + 0x102); 2055 enum B_BAD_TEAM_ID = (B_OS_ERROR_BASE + 0x103); 2056 enum B_NO_MORE_TEAMS = (B_OS_ERROR_BASE + 0x104); 2057 2058 enum B_BAD_PORT_ID = (B_OS_ERROR_BASE + 0x200); 2059 enum B_NO_MORE_PORTS = (B_OS_ERROR_BASE + 0x201); 2060 2061 enum B_BAD_IMAGE_ID = (B_OS_ERROR_BASE + 0x300); 2062 enum B_BAD_ADDRESS = (B_OS_ERROR_BASE + 0x301); 2063 enum B_NOT_AN_EXECUTABLE = (B_OS_ERROR_BASE + 0x302); 2064 enum B_MISSING_LIBRARY = (B_OS_ERROR_BASE + 0x303); 2065 enum B_MISSING_SYMBOL = (B_OS_ERROR_BASE + 0x304); 2066 enum B_UNKNOWN_EXECUTABLE = (B_OS_ERROR_BASE + 0x305); 2067 enum B_LEGACY_EXECUTABLE = (B_OS_ERROR_BASE + 0x306); 2068 2069 enum B_DEBUGGER_ALREADY_INSTALLED = (B_OS_ERROR_BASE + 0x400); 2070 2071 /* Application Kit Errors */ 2072 enum B_BAD_REPLY = (B_APP_ERROR_BASE + 0); 2073 enum B_DUPLICATE_REPLY = (B_APP_ERROR_BASE + 1); 2074 enum B_MESSAGE_TO_SELF = (B_APP_ERROR_BASE + 2); 2075 enum B_BAD_HANDLER = (B_APP_ERROR_BASE + 3); 2076 enum B_ALREADY_RUNNING = (B_APP_ERROR_BASE + 4); 2077 enum B_LAUNCH_FAILED = (B_APP_ERROR_BASE + 5); 2078 enum B_AMBIGUOUS_APP_LAUNCH = (B_APP_ERROR_BASE + 6); 2079 enum B_UNKNOWN_MIME_TYPE = (B_APP_ERROR_BASE + 7); 2080 enum B_BAD_SCRIPT_SYNTAX = (B_APP_ERROR_BASE + 8); 2081 enum B_LAUNCH_FAILED_NO_RESOLVE_LINK = (B_APP_ERROR_BASE + 9); 2082 enum B_LAUNCH_FAILED_EXECUTABLE = (B_APP_ERROR_BASE + 10); 2083 enum B_LAUNCH_FAILED_APP_NOT_FOUND = (B_APP_ERROR_BASE + 11); 2084 enum B_LAUNCH_FAILED_APP_IN_TRASH = (B_APP_ERROR_BASE + 12); 2085 enum B_LAUNCH_FAILED_NO_PREFERRED_APP = (B_APP_ERROR_BASE + 13); 2086 enum B_LAUNCH_FAILED_FILES_APP_NOT_FOUND = (B_APP_ERROR_BASE + 14); 2087 enum B_BAD_MIME_SNIFFER_RULE = (B_APP_ERROR_BASE + 15); 2088 enum B_NOT_A_MESSAGE = (B_APP_ERROR_BASE + 16); 2089 enum B_SHUTDOWN_CANCELLED = (B_APP_ERROR_BASE + 17); 2090 enum B_SHUTTING_DOWN = (B_APP_ERROR_BASE + 18); 2091 2092 /* Storage Kit/File System Errors */ 2093 enum B_FILE_ERROR = (B_STORAGE_ERROR_BASE + 0); 2094 enum B_FILE_NOT_FOUND = (B_STORAGE_ERROR_BASE + 1); 2095 /* deprecated: use B_ENTRY_NOT_FOUND instead */ 2096 enum B_FILE_EXISTS = (B_STORAGE_ERROR_BASE + 2); 2097 enum B_ENTRY_NOT_FOUND = (B_STORAGE_ERROR_BASE + 3); 2098 enum B_NAME_TOO_LONG = (B_STORAGE_ERROR_BASE + 4); 2099 enum B_NOT_A_DIRECTORY = (B_STORAGE_ERROR_BASE + 5); 2100 enum B_DIRECTORY_NOT_EMPTY = (B_STORAGE_ERROR_BASE + 6); 2101 enum B_DEVICE_FULL = (B_STORAGE_ERROR_BASE + 7); 2102 enum B_READ_ONLY_DEVICE = (B_STORAGE_ERROR_BASE + 8); 2103 enum B_IS_A_DIRECTORY = (B_STORAGE_ERROR_BASE + 9); 2104 enum B_NO_MORE_FDS = (B_STORAGE_ERROR_BASE + 10); 2105 enum B_CROSS_DEVICE_LINK = (B_STORAGE_ERROR_BASE + 11); 2106 enum B_LINK_LIMIT = (B_STORAGE_ERROR_BASE + 12); 2107 enum B_BUSTED_PIPE = (B_STORAGE_ERROR_BASE + 13); 2108 enum B_UNSUPPORTED = (B_STORAGE_ERROR_BASE + 14); 2109 enum B_PARTITION_TOO_SMALL = (B_STORAGE_ERROR_BASE + 15); 2110 enum B_PARTIAL_READ = (B_STORAGE_ERROR_BASE + 16); 2111 enum B_PARTIAL_WRITE = (B_STORAGE_ERROR_BASE + 17); 2112 2113 /* POSIX Errors */ 2114 enum B_USE_POSITIVE_POSIX_ERRORS = false; 2115 2116 static if (B_USE_POSITIVE_POSIX_ERRORS) 2117 { 2118 enum B_TO_POSIX_ERROR(int code) = -code; 2119 } 2120 else 2121 { 2122 enum B_TO_POSIX_ERROR(int code) = code; 2123 } 2124 alias B_FROM_POSIX_ERROR = B_TO_POSIX_ERROR; 2125 2126 enum B_POSIX_ENOMEM = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 0); 2127 enum E2BIG = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 1); 2128 enum ECHILD = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 2); 2129 enum EDEADLK = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 3); 2130 enum EFBIG = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 4); 2131 enum EMLINK = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 5); 2132 enum ENFILE = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 6); 2133 enum ENODEV = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 7); 2134 enum ENOLCK = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 8); 2135 enum ENOSYS = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 9); 2136 enum ENOTTY = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 10); 2137 enum ENXIO = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 11); 2138 enum ESPIPE = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 12); 2139 enum ESRCH = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 13); 2140 enum EFPOS = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 14); 2141 enum ESIGPARM = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 15); 2142 enum EDOM = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 16); 2143 enum ERANGE = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 17); 2144 enum EPROTOTYPE = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 18); 2145 enum EPROTONOSUPPORT = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 19); 2146 enum EPFNOSUPPORT = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 20); 2147 enum EAFNOSUPPORT = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 21); 2148 enum EADDRINUSE = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 22); 2149 enum EADDRNOTAVAIL = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 23); 2150 enum ENETDOWN = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 24); 2151 enum ENETUNREACH = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 25); 2152 enum ENETRESET = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 26); 2153 enum ECONNABORTED = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 27); 2154 enum ECONNRESET = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 28); 2155 enum EISCONN = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 29); 2156 enum ENOTCONN = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 30); 2157 enum ESHUTDOWN = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 31); 2158 enum ECONNREFUSED = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 32); 2159 enum EHOSTUNREACH = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 33); 2160 enum ENOPROTOOPT = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 34); 2161 enum ENOBUFS = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 35); 2162 enum EINPROGRESS = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 36); 2163 enum EALREADY = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 37); 2164 enum EILSEQ = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 38); 2165 enum ENOMSG = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 39); 2166 enum ESTALE = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 40); 2167 enum EOVERFLOW = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 41); 2168 enum EMSGSIZE = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 42); 2169 enum EOPNOTSUPP = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 43); 2170 enum ENOTSOCK = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 44); 2171 enum EHOSTDOWN = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 45); 2172 enum EBADMSG = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 46); 2173 enum ECANCELED = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 47); 2174 enum EDESTADDRREQ = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 48); 2175 enum EDQUOT = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 49); 2176 enum EIDRM = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 50); 2177 enum EMULTIHOP = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 51); 2178 enum ENODATA = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 52); 2179 enum ENOLINK = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 53); 2180 enum ENOSR = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 54); 2181 enum ENOSTR = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 55); 2182 enum ENOTSUP = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 56); 2183 enum EPROTO = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 57); 2184 enum ETIME = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 58); 2185 enum ETXTBSY = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 59); 2186 enum ENOATTR = B_TO_POSIX_ERROR!(B_POSIX_ERROR_BASE + 60); 2187 2188 /* B_NO_MEMORY (0x80000000) can't be negated, so it needs special handling */ 2189 static if (B_USE_POSITIVE_POSIX_ERRORS) 2190 enum ENOMEM = B_POSIX_ENOMEM; 2191 else 2192 enum ENOMEM = B_NO_MEMORY; 2193 2194 /* POSIX errors that can be mapped to BeOS error codes */ 2195 enum EACCES = B_TO_POSIX_ERROR!(B_PERMISSION_DENIED); 2196 enum EINTR = B_TO_POSIX_ERROR!(B_INTERRUPTED); 2197 enum EIO = B_TO_POSIX_ERROR!(B_IO_ERROR); 2198 enum EBUSY = B_TO_POSIX_ERROR!(B_BUSY); 2199 enum EFAULT = B_TO_POSIX_ERROR!(B_BAD_ADDRESS); 2200 enum ETIMEDOUT = B_TO_POSIX_ERROR!(B_TIMED_OUT); 2201 enum EAGAIN = B_TO_POSIX_ERROR!(B_WOULD_BLOCK) /* SysV compatibility */; 2202 enum EWOULDBLOCK = B_TO_POSIX_ERROR!(B_WOULD_BLOCK) /* BSD compatibility */; 2203 enum EBADF = B_TO_POSIX_ERROR!(B_FILE_ERROR); 2204 enum EEXIST = B_TO_POSIX_ERROR!(B_FILE_EXISTS); 2205 enum EINVAL = B_TO_POSIX_ERROR!(B_BAD_VALUE); 2206 enum ENAMETOOLONG = B_TO_POSIX_ERROR!(B_NAME_TOO_LONG); 2207 enum ENOENT = B_TO_POSIX_ERROR!(B_ENTRY_NOT_FOUND); 2208 enum EPERM = B_TO_POSIX_ERROR!(B_NOT_ALLOWED); 2209 enum ENOTDIR = B_TO_POSIX_ERROR!(B_NOT_A_DIRECTORY); 2210 enum EISDIR = B_TO_POSIX_ERROR!(B_IS_A_DIRECTORY); 2211 enum ENOTEMPTY = B_TO_POSIX_ERROR!(B_DIRECTORY_NOT_EMPTY); 2212 enum ENOSPC = B_TO_POSIX_ERROR!(B_DEVICE_FULL); 2213 enum EROFS = B_TO_POSIX_ERROR!(B_READ_ONLY_DEVICE); 2214 enum EMFILE = B_TO_POSIX_ERROR!(B_NO_MORE_FDS); 2215 enum EXDEV = B_TO_POSIX_ERROR!(B_CROSS_DEVICE_LINK); 2216 enum ELOOP = B_TO_POSIX_ERROR!(B_LINK_LIMIT); 2217 enum ENOEXEC = B_TO_POSIX_ERROR!(B_NOT_AN_EXECUTABLE); 2218 enum EPIPE = B_TO_POSIX_ERROR!(B_BUSTED_PIPE); 2219 2220 /* new error codes that can be mapped to POSIX errors */ 2221 enum B_BUFFER_OVERFLOW = B_FROM_POSIX_ERROR!(EOVERFLOW); 2222 enum B_TOO_MANY_ARGS = B_FROM_POSIX_ERROR!(E2BIG); 2223 enum B_FILE_TOO_LARGE = B_FROM_POSIX_ERROR!(EFBIG); 2224 enum B_RESULT_NOT_REPRESENTABLE = B_FROM_POSIX_ERROR!(ERANGE); 2225 enum B_DEVICE_NOT_FOUND = B_FROM_POSIX_ERROR!(ENODEV); 2226 enum B_NOT_SUPPORTED = B_FROM_POSIX_ERROR!(EOPNOTSUPP); 2227 2228 /* Media Kit Errors */ 2229 enum B_STREAM_NOT_FOUND = (B_MEDIA_ERROR_BASE + 0); 2230 enum B_SERVER_NOT_FOUND = (B_MEDIA_ERROR_BASE + 1); 2231 enum B_RESOURCE_NOT_FOUND = (B_MEDIA_ERROR_BASE + 2); 2232 enum B_RESOURCE_UNAVAILABLE = (B_MEDIA_ERROR_BASE + 3); 2233 enum B_BAD_SUBSCRIBER = (B_MEDIA_ERROR_BASE + 4); 2234 enum B_SUBSCRIBER_NOT_ENTERED = (B_MEDIA_ERROR_BASE + 5); 2235 enum B_BUFFER_NOT_AVAILABLE = (B_MEDIA_ERROR_BASE + 6); 2236 enum B_LAST_BUFFER_ERROR = (B_MEDIA_ERROR_BASE + 7); 2237 2238 enum B_MEDIA_SYSTEM_FAILURE = (B_MEDIA_ERROR_BASE + 100); 2239 enum B_MEDIA_BAD_NODE = (B_MEDIA_ERROR_BASE + 101); 2240 enum B_MEDIA_NODE_BUSY = (B_MEDIA_ERROR_BASE + 102); 2241 enum B_MEDIA_BAD_FORMAT = (B_MEDIA_ERROR_BASE + 103); 2242 enum B_MEDIA_BAD_BUFFER = (B_MEDIA_ERROR_BASE + 104); 2243 enum B_MEDIA_TOO_MANY_NODES = (B_MEDIA_ERROR_BASE + 105); 2244 enum B_MEDIA_TOO_MANY_BUFFERS = (B_MEDIA_ERROR_BASE + 106); 2245 enum B_MEDIA_NODE_ALREADY_EXISTS = (B_MEDIA_ERROR_BASE + 107); 2246 enum B_MEDIA_BUFFER_ALREADY_EXISTS = (B_MEDIA_ERROR_BASE + 108); 2247 enum B_MEDIA_CANNOT_SEEK = (B_MEDIA_ERROR_BASE + 109); 2248 enum B_MEDIA_CANNOT_CHANGE_RUN_MODE = (B_MEDIA_ERROR_BASE + 110); 2249 enum B_MEDIA_APP_ALREADY_REGISTERED = (B_MEDIA_ERROR_BASE + 111); 2250 enum B_MEDIA_APP_NOT_REGISTERED = (B_MEDIA_ERROR_BASE + 112); 2251 enum B_MEDIA_CANNOT_RECLAIM_BUFFERS = (B_MEDIA_ERROR_BASE + 113); 2252 enum B_MEDIA_BUFFERS_NOT_RECLAIMED = (B_MEDIA_ERROR_BASE + 114); 2253 enum B_MEDIA_TIME_SOURCE_STOPPED = (B_MEDIA_ERROR_BASE + 115); 2254 enum B_MEDIA_TIME_SOURCE_BUSY = (B_MEDIA_ERROR_BASE + 116); 2255 enum B_MEDIA_BAD_SOURCE = (B_MEDIA_ERROR_BASE + 117); 2256 enum B_MEDIA_BAD_DESTINATION = (B_MEDIA_ERROR_BASE + 118); 2257 enum B_MEDIA_ALREADY_CONNECTED = (B_MEDIA_ERROR_BASE + 119); 2258 enum B_MEDIA_NOT_CONNECTED = (B_MEDIA_ERROR_BASE + 120); 2259 enum B_MEDIA_BAD_CLIP_FORMAT = (B_MEDIA_ERROR_BASE + 121); 2260 enum B_MEDIA_ADDON_FAILED = (B_MEDIA_ERROR_BASE + 122); 2261 enum B_MEDIA_ADDON_DISABLED = (B_MEDIA_ERROR_BASE + 123); 2262 enum B_MEDIA_CHANGE_IN_PROGRESS = (B_MEDIA_ERROR_BASE + 124); 2263 enum B_MEDIA_STALE_CHANGE_COUNT = (B_MEDIA_ERROR_BASE + 125); 2264 enum B_MEDIA_ADDON_RESTRICTED = (B_MEDIA_ERROR_BASE + 126); 2265 enum B_MEDIA_NO_HANDLER = (B_MEDIA_ERROR_BASE + 127); 2266 enum B_MEDIA_DUPLICATE_FORMAT = (B_MEDIA_ERROR_BASE + 128); 2267 enum B_MEDIA_REALTIME_DISABLED = (B_MEDIA_ERROR_BASE + 129); 2268 enum B_MEDIA_REALTIME_UNAVAILABLE = (B_MEDIA_ERROR_BASE + 130); 2269 2270 /* Mail Kit Errors */ 2271 enum B_MAIL_NO_DAEMON = (B_MAIL_ERROR_BASE + 0); 2272 enum B_MAIL_UNKNOWN_USER = (B_MAIL_ERROR_BASE + 1); 2273 enum B_MAIL_WRONG_PASSWORD = (B_MAIL_ERROR_BASE + 2); 2274 enum B_MAIL_UNKNOWN_HOST = (B_MAIL_ERROR_BASE + 3); 2275 enum B_MAIL_ACCESS_ERROR = (B_MAIL_ERROR_BASE + 4); 2276 enum B_MAIL_UNKNOWN_FIELD = (B_MAIL_ERROR_BASE + 5); 2277 enum B_MAIL_NO_RECIPIENT = (B_MAIL_ERROR_BASE + 6); 2278 enum B_MAIL_INVALID_MAIL = (B_MAIL_ERROR_BASE + 7); 2279 2280 /* Printing Errors */ 2281 enum B_NO_PRINT_SERVER = (B_PRINT_ERROR_BASE + 0); 2282 2283 /* Device Kit Errors */ 2284 enum B_DEV_INVALID_IOCTL = (B_DEVICE_ERROR_BASE + 0); 2285 enum B_DEV_NO_MEMORY = (B_DEVICE_ERROR_BASE + 1); 2286 enum B_DEV_BAD_DRIVE_NUM = (B_DEVICE_ERROR_BASE + 2); 2287 enum B_DEV_NO_MEDIA = (B_DEVICE_ERROR_BASE + 3); 2288 enum B_DEV_UNREADABLE = (B_DEVICE_ERROR_BASE + 4); 2289 enum B_DEV_FORMAT_ERROR = (B_DEVICE_ERROR_BASE + 5); 2290 enum B_DEV_TIMEOUT = (B_DEVICE_ERROR_BASE + 6); 2291 enum B_DEV_RECALIBRATE_ERROR = (B_DEVICE_ERROR_BASE + 7); 2292 enum B_DEV_SEEK_ERROR = (B_DEVICE_ERROR_BASE + 8); 2293 enum B_DEV_ID_ERROR = (B_DEVICE_ERROR_BASE + 9); 2294 enum B_DEV_READ_ERROR = (B_DEVICE_ERROR_BASE + 10); 2295 enum B_DEV_WRITE_ERROR = (B_DEVICE_ERROR_BASE + 11); 2296 enum B_DEV_NOT_READY = (B_DEVICE_ERROR_BASE + 12); 2297 enum B_DEV_MEDIA_CHANGED = (B_DEVICE_ERROR_BASE + 13); 2298 enum B_DEV_MEDIA_CHANGE_REQUESTED = (B_DEVICE_ERROR_BASE + 14); 2299 enum B_DEV_RESOURCE_CONFLICT = (B_DEVICE_ERROR_BASE + 15); 2300 enum B_DEV_CONFIGURATION_ERROR = (B_DEVICE_ERROR_BASE + 16); 2301 enum B_DEV_DISABLED_BY_USER = (B_DEVICE_ERROR_BASE + 17); 2302 enum B_DEV_DOOR_OPEN = (B_DEVICE_ERROR_BASE + 18); 2303 2304 enum B_DEV_INVALID_PIPE = (B_DEVICE_ERROR_BASE + 19); 2305 enum B_DEV_CRC_ERROR = (B_DEVICE_ERROR_BASE + 20); 2306 enum B_DEV_STALLED = (B_DEVICE_ERROR_BASE + 21); 2307 enum B_DEV_BAD_PID = (B_DEVICE_ERROR_BASE + 22); 2308 enum B_DEV_UNEXPECTED_PID = (B_DEVICE_ERROR_BASE + 23); 2309 enum B_DEV_DATA_OVERRUN = (B_DEVICE_ERROR_BASE + 24); 2310 enum B_DEV_DATA_UNDERRUN = (B_DEVICE_ERROR_BASE + 25); 2311 enum B_DEV_FIFO_OVERRUN = (B_DEVICE_ERROR_BASE + 26); 2312 enum B_DEV_FIFO_UNDERRUN = (B_DEVICE_ERROR_BASE + 27); 2313 enum B_DEV_PENDING = (B_DEVICE_ERROR_BASE + 28); 2314 enum B_DEV_MULTIPLE_ERRORS = (B_DEVICE_ERROR_BASE + 29); 2315 enum B_DEV_TOO_LATE = (B_DEVICE_ERROR_BASE + 30); 2316 2317 /* Translation Kit Errors */ 2318 enum B_TRANSLATION_BASE_ERROR = (B_TRANSLATION_ERROR_BASE + 0); 2319 enum B_NO_TRANSLATOR = (B_TRANSLATION_ERROR_BASE + 1); 2320 enum B_ILLEGAL_DATA = (B_TRANSLATION_ERROR_BASE + 2); 2321 } 2322 else version (WASI) 2323 { 2324 enum EPERM = 1; 2325 enum ENOENT = 2; 2326 enum ESRCH = 3; 2327 enum EINTR = 4; 2328 enum EIO = 5; 2329 enum ENXIO = 6; 2330 enum E2BIG = 7; 2331 enum ENOEXEC = 8; 2332 enum EBADF = 9; 2333 enum ECHILD = 10; 2334 enum EAGAIN = 11; 2335 enum ENOMEM = 12; 2336 enum EACCES = 13; 2337 enum EFAULT = 14; 2338 enum ENOTBLK = 15; 2339 enum EBUSY = 16; 2340 enum EEXIST = 17; 2341 enum EXDEV = 18; 2342 enum ENODEV = 19; 2343 enum ENOTDIR = 20; 2344 enum EISDIR = 21; 2345 enum EINVAL = 22; 2346 enum ENFILE = 23; 2347 enum EMFILE = 24; 2348 enum ENOTTY = 25; 2349 enum ETXTBSY = 26; 2350 enum EFBIG = 27; 2351 enum ENOSPC = 28; 2352 enum ESPIPE = 29; 2353 enum EROFS = 30; 2354 enum EMLINK = 31; 2355 enum EPIPE = 32; 2356 enum EDOM = 33; 2357 enum ERANGE = 34; 2358 enum EDEADLK = 35; 2359 enum ENAMETOOLONG = 36; 2360 enum ENOLCK = 37; 2361 enum ENOSYS = 38; 2362 enum ENOTEMPTY = 39; 2363 enum ELOOP = 40; 2364 enum EWOULDBLOCK = EAGAIN; 2365 enum ENOMSG = 42; 2366 enum EIDRM = 43; 2367 enum ECHRNG = 44; 2368 enum EL2NSYNC = 45; 2369 enum EL3HLT = 46; 2370 enum EL3RST = 47; 2371 enum ELNRNG = 48; 2372 enum EUNATCH = 49; 2373 enum ENOCSI = 50; 2374 enum EL2HLT = 51; 2375 enum EBADE = 52; 2376 enum EBADR = 53; 2377 enum EXFULL = 54; 2378 enum ENOANO = 55; 2379 enum EBADRQC = 56; 2380 enum EBADSLT = 57; 2381 enum EDEADLOCK = EDEADLK; 2382 enum EBFONT = 59; 2383 enum ENOSTR = 60; 2384 enum ENODATA = 61; 2385 enum ETIME = 62; 2386 enum ENOSR = 63; 2387 enum ENONET = 64; 2388 enum ENOPKG = 65; 2389 enum EREMOTE = 66; 2390 enum ENOLINK = 67; 2391 enum EADV = 68; 2392 enum ESRMNT = 69; 2393 enum ECOMM = 70; 2394 enum EPROTO = 71; 2395 enum EMULTIHOP = 72; 2396 enum EDOTDOT = 73; 2397 enum EBADMSG = 74; 2398 enum EOVERFLOW = 75; 2399 enum ENOTUNIQ = 76; 2400 enum EBADFD = 77; 2401 enum EREMCHG = 78; 2402 enum ELIBACC = 79; 2403 enum ELIBBAD = 80; 2404 enum ELIBSCN = 81; 2405 enum ELIBMAX = 82; 2406 enum ELIBEXEC = 83; 2407 enum EILSEQ = 84; 2408 enum ERESTART = 85; 2409 enum ESTRPIPE = 86; 2410 enum EUSERS = 87; 2411 enum ENOTSOCK = 88; 2412 enum EDESTADDRREQ = 89; 2413 enum EMSGSIZE = 90; 2414 enum EPROTOTYPE = 91; 2415 enum ENOPROTOOPT = 92; 2416 enum EPROTONOSUPPORT = 93; 2417 enum ESOCKTNOSUPPORT = 94; 2418 enum EOPNOTSUPP = 95; 2419 enum ENOTSUP = EOPNOTSUPP; 2420 enum EPFNOSUPPORT = 96; 2421 enum EAFNOSUPPORT = 97; 2422 enum EADDRINUSE = 98; 2423 enum EADDRNOTAVAIL = 99; 2424 enum ENETDOWN = 100; 2425 enum ENETUNREACH = 101; 2426 enum ENETRESET = 102; 2427 enum ECONNABORTED = 103; 2428 enum ECONNRESET = 104; 2429 enum ENOBUFS = 105; 2430 enum EISCONN = 106; 2431 enum ENOTCONN = 107; 2432 enum ESHUTDOWN = 108; 2433 enum ETOOMANYREFS = 109; 2434 enum ETIMEDOUT = 110; 2435 enum ECONNREFUSED = 111; 2436 enum EHOSTDOWN = 112; 2437 enum EHOSTUNREACH = 113; 2438 enum EALREADY = 114; 2439 enum EINPROGRESS = 115; 2440 enum ESTALE = 116; 2441 enum EUCLEAN = 117; 2442 enum ENOTNAM = 118; 2443 enum ENAVAIL = 119; 2444 enum EISNAM = 120; 2445 enum EREMOTEIO = 121; 2446 enum EDQUOT = 122; 2447 enum ENOMEDIUM = 123; 2448 enum EMEDIUMTYPE = 124; 2449 enum ECANCELED = 125; 2450 enum ENOKEY = 126; 2451 enum EKEYEXPIRED = 127; 2452 enum EKEYREVOKED = 128; 2453 enum EKEYREJECTED = 129; 2454 enum EOWNERDEAD = 130; 2455 enum ENOTRECOVERABLE = 131; 2456 enum ERFKILL = 132; 2457 enum EHWPOISON = 133; 2458 } 2459 else 2460 { 2461 static assert(false, "Unsupported platform"); 2462 }