| ... | ... | @@ -482,91 +482,98 @@ pub const NOTE_MACH_CONTINUOUS_TIME = 0x00000080; |
| 482 | 482 | /// data is mach absolute time units |
| 483 | 483 | pub const NOTE_MACHTIME = 0x00000100; |
| 484 | 484 | |
| 485 | | pub const AF_UNSPEC: c_int = 0; |
| 486 | | pub const AF_LOCAL: c_int = 1; |
| 487 | | pub const AF_UNIX: c_int = AF_LOCAL; |
| 488 | | pub const AF_INET: c_int = 2; |
| 489 | | pub const AF_SYS_CONTROL: c_int = 2; |
| 490 | | pub const AF_IMPLINK: c_int = 3; |
| 491 | | pub const AF_PUP: c_int = 4; |
| 492 | | pub const AF_CHAOS: c_int = 5; |
| 493 | | pub const AF_NS: c_int = 6; |
| 494 | | pub const AF_ISO: c_int = 7; |
| 495 | | pub const AF_OSI: c_int = AF_ISO; |
| 496 | | pub const AF_ECMA: c_int = 8; |
| 497 | | pub const AF_DATAKIT: c_int = 9; |
| 498 | | pub const AF_CCITT: c_int = 10; |
| 499 | | pub const AF_SNA: c_int = 11; |
| 500 | | pub const AF_DECnet: c_int = 12; |
| 501 | | pub const AF_DLI: c_int = 13; |
| 502 | | pub const AF_LAT: c_int = 14; |
| 503 | | pub const AF_HYLINK: c_int = 15; |
| 504 | | pub const AF_APPLETALK: c_int = 16; |
| 505 | | pub const AF_ROUTE: c_int = 17; |
| 506 | | pub const AF_LINK: c_int = 18; |
| 507 | | pub const AF_XTP: c_int = 19; |
| 508 | | pub const AF_COIP: c_int = 20; |
| 509 | | pub const AF_CNT: c_int = 21; |
| 510 | | pub const AF_RTIP: c_int = 22; |
| 511 | | pub const AF_IPX: c_int = 23; |
| 512 | | pub const AF_SIP: c_int = 24; |
| 513 | | pub const AF_PIP: c_int = 25; |
| 514 | | pub const AF_ISDN: c_int = 28; |
| 515 | | pub const AF_E164: c_int = AF_ISDN; |
| 516 | | pub const AF_KEY: c_int = 29; |
| 517 | | pub const AF_INET6: c_int = 30; |
| 518 | | pub const AF_NATM: c_int = 31; |
| 519 | | pub const AF_SYSTEM: c_int = 32; |
| 520 | | pub const AF_NETBIOS: c_int = 33; |
| 521 | | pub const AF_PPP: c_int = 34; |
| 522 | | pub const AF_MAX: c_int = 40; |
| 523 | | |
| 524 | | pub const PF_UNSPEC: c_int = AF_UNSPEC; |
| 525 | | pub const PF_LOCAL: c_int = AF_LOCAL; |
| 526 | | pub const PF_UNIX: c_int = PF_LOCAL; |
| 527 | | pub const PF_INET: c_int = AF_INET; |
| 528 | | pub const PF_IMPLINK: c_int = AF_IMPLINK; |
| 529 | | pub const PF_PUP: c_int = AF_PUP; |
| 530 | | pub const PF_CHAOS: c_int = AF_CHAOS; |
| 531 | | pub const PF_NS: c_int = AF_NS; |
| 532 | | pub const PF_ISO: c_int = AF_ISO; |
| 533 | | pub const PF_OSI: c_int = AF_ISO; |
| 534 | | pub const PF_ECMA: c_int = AF_ECMA; |
| 535 | | pub const PF_DATAKIT: c_int = AF_DATAKIT; |
| 536 | | pub const PF_CCITT: c_int = AF_CCITT; |
| 537 | | pub const PF_SNA: c_int = AF_SNA; |
| 538 | | pub const PF_DECnet: c_int = AF_DECnet; |
| 539 | | pub const PF_DLI: c_int = AF_DLI; |
| 540 | | pub const PF_LAT: c_int = AF_LAT; |
| 541 | | pub const PF_HYLINK: c_int = AF_HYLINK; |
| 542 | | pub const PF_APPLETALK: c_int = AF_APPLETALK; |
| 543 | | pub const PF_ROUTE: c_int = AF_ROUTE; |
| 544 | | pub const PF_LINK: c_int = AF_LINK; |
| 545 | | pub const PF_XTP: c_int = AF_XTP; |
| 546 | | pub const PF_COIP: c_int = AF_COIP; |
| 547 | | pub const PF_CNT: c_int = AF_CNT; |
| 548 | | pub const PF_SIP: c_int = AF_SIP; |
| 549 | | pub const PF_IPX: c_int = AF_IPX; |
| 550 | | pub const PF_RTIP: c_int = AF_RTIP; |
| 551 | | pub const PF_PIP: c_int = AF_PIP; |
| 552 | | pub const PF_ISDN: c_int = AF_ISDN; |
| 553 | | pub const PF_KEY: c_int = AF_KEY; |
| 554 | | pub const PF_INET6: c_int = AF_INET6; |
| 555 | | pub const PF_NATM: c_int = AF_NATM; |
| 556 | | pub const PF_SYSTEM: c_int = AF_SYSTEM; |
| 557 | | pub const PF_NETBIOS: c_int = AF_NETBIOS; |
| 558 | | pub const PF_PPP: c_int = AF_PPP; |
| 559 | | pub const PF_MAX: c_int = AF_MAX; |
| 560 | | |
| 561 | | pub const SYSPROTO_EVENT: c_int = 1; |
| 562 | | pub const SYSPROTO_CONTROL: c_int = 2; |
| 563 | | |
| 564 | | pub const SOCK_STREAM: c_int = 1; |
| 565 | | pub const SOCK_DGRAM: c_int = 2; |
| 566 | | pub const SOCK_RAW: c_int = 3; |
| 567 | | pub const SOCK_RDM: c_int = 4; |
| 568 | | pub const SOCK_SEQPACKET: c_int = 5; |
| 569 | | pub const SOCK_MAXADDRLEN: c_int = 255; |
| 485 | pub const AF_UNSPEC = 0; |
| 486 | pub const AF_LOCAL = 1; |
| 487 | pub const AF_UNIX = AF_LOCAL; |
| 488 | pub const AF_INET = 2; |
| 489 | pub const AF_SYS_CONTROL = 2; |
| 490 | pub const AF_IMPLINK = 3; |
| 491 | pub const AF_PUP = 4; |
| 492 | pub const AF_CHAOS = 5; |
| 493 | pub const AF_NS = 6; |
| 494 | pub const AF_ISO = 7; |
| 495 | pub const AF_OSI = AF_ISO; |
| 496 | pub const AF_ECMA = 8; |
| 497 | pub const AF_DATAKIT = 9; |
| 498 | pub const AF_CCITT = 10; |
| 499 | pub const AF_SNA = 11; |
| 500 | pub const AF_DECnet = 12; |
| 501 | pub const AF_DLI = 13; |
| 502 | pub const AF_LAT = 14; |
| 503 | pub const AF_HYLINK = 15; |
| 504 | pub const AF_APPLETALK = 16; |
| 505 | pub const AF_ROUTE = 17; |
| 506 | pub const AF_LINK = 18; |
| 507 | pub const AF_XTP = 19; |
| 508 | pub const AF_COIP = 20; |
| 509 | pub const AF_CNT = 21; |
| 510 | pub const AF_RTIP = 22; |
| 511 | pub const AF_IPX = 23; |
| 512 | pub const AF_SIP = 24; |
| 513 | pub const AF_PIP = 25; |
| 514 | pub const AF_ISDN = 28; |
| 515 | pub const AF_E164 = AF_ISDN; |
| 516 | pub const AF_KEY = 29; |
| 517 | pub const AF_INET6 = 30; |
| 518 | pub const AF_NATM = 31; |
| 519 | pub const AF_SYSTEM = 32; |
| 520 | pub const AF_NETBIOS = 33; |
| 521 | pub const AF_PPP = 34; |
| 522 | pub const AF_MAX = 40; |
| 523 | |
| 524 | pub const PF_UNSPEC = AF_UNSPEC; |
| 525 | pub const PF_LOCAL = AF_LOCAL; |
| 526 | pub const PF_UNIX = PF_LOCAL; |
| 527 | pub const PF_INET = AF_INET; |
| 528 | pub const PF_IMPLINK = AF_IMPLINK; |
| 529 | pub const PF_PUP = AF_PUP; |
| 530 | pub const PF_CHAOS = AF_CHAOS; |
| 531 | pub const PF_NS = AF_NS; |
| 532 | pub const PF_ISO = AF_ISO; |
| 533 | pub const PF_OSI = AF_ISO; |
| 534 | pub const PF_ECMA = AF_ECMA; |
| 535 | pub const PF_DATAKIT = AF_DATAKIT; |
| 536 | pub const PF_CCITT = AF_CCITT; |
| 537 | pub const PF_SNA = AF_SNA; |
| 538 | pub const PF_DECnet = AF_DECnet; |
| 539 | pub const PF_DLI = AF_DLI; |
| 540 | pub const PF_LAT = AF_LAT; |
| 541 | pub const PF_HYLINK = AF_HYLINK; |
| 542 | pub const PF_APPLETALK = AF_APPLETALK; |
| 543 | pub const PF_ROUTE = AF_ROUTE; |
| 544 | pub const PF_LINK = AF_LINK; |
| 545 | pub const PF_XTP = AF_XTP; |
| 546 | pub const PF_COIP = AF_COIP; |
| 547 | pub const PF_CNT = AF_CNT; |
| 548 | pub const PF_SIP = AF_SIP; |
| 549 | pub const PF_IPX = AF_IPX; |
| 550 | pub const PF_RTIP = AF_RTIP; |
| 551 | pub const PF_PIP = AF_PIP; |
| 552 | pub const PF_ISDN = AF_ISDN; |
| 553 | pub const PF_KEY = AF_KEY; |
| 554 | pub const PF_INET6 = AF_INET6; |
| 555 | pub const PF_NATM = AF_NATM; |
| 556 | pub const PF_SYSTEM = AF_SYSTEM; |
| 557 | pub const PF_NETBIOS = AF_NETBIOS; |
| 558 | pub const PF_PPP = AF_PPP; |
| 559 | pub const PF_MAX = AF_MAX; |
| 560 | |
| 561 | pub const SYSPROTO_EVENT = 1; |
| 562 | pub const SYSPROTO_CONTROL = 2; |
| 563 | |
| 564 | pub const SOCK_STREAM = 1; |
| 565 | pub const SOCK_DGRAM = 2; |
| 566 | pub const SOCK_RAW = 3; |
| 567 | pub const SOCK_RDM = 4; |
| 568 | pub const SOCK_SEQPACKET = 5; |
| 569 | pub const SOCK_MAXADDRLEN = 255; |
| 570 | |
| 571 | pub const IPPROTO_ICMP = 1; |
| 572 | pub const IPPROTO_ICMPV6 = 58; |
| 573 | pub const IPPROTO_TCP = 6; |
| 574 | pub const IPPROTO_UDP = 17; |
| 575 | pub const IPPROTO_IP = 0; |
| 576 | pub const IPPROTO_IPV6 = 41; |
| 570 | 577 | |
| 571 | 578 | fn wstatus(x: i32) i32 { |
| 572 | 579 | return x & 0o177; |
| ... | ... | @@ -605,6 +612,11 @@ pub fn abort() noreturn { |
| 605 | 612 | c.abort(); |
| 606 | 613 | } |
| 607 | 614 | |
| 615 | // bind(int socket, const struct sockaddr *address, socklen_t address_len) |
| 616 | pub fn bind(fd: i32, addr: *const sockaddr, len: socklen_t) usize { |
| 617 | return errnoWrap(c.bind(@bitCast(c_int, fd), addr, len)); |
| 618 | } |
| 619 | |
| 608 | 620 | pub fn exit(code: i32) noreturn { |
| 609 | 621 | c.exit(code); |
| 610 | 622 | } |
| ... | ... | @@ -805,6 +817,20 @@ pub fn sigaction(sig: u5, noalias act: *const Sigaction, noalias oact: ?*Sigacti |
| 805 | 817 | return result; |
| 806 | 818 | } |
| 807 | 819 | |
| 820 | pub fn socket(domain: u32, socket_type: u32, protocol: u32) usize { |
| 821 | return errnoWrap(c.socket(@bitCast(c_int, domain), @bitCast(c_int, socket_type), @bitCast(c_int, protocol))); |
| 822 | } |
| 823 | |
| 824 | pub const iovec = extern struct { |
| 825 | iov_base: [*]u8, |
| 826 | iov_len: usize, |
| 827 | }; |
| 828 | |
| 829 | pub const iovec_const = extern struct { |
| 830 | iov_base: [*]const u8, |
| 831 | iov_len: usize, |
| 832 | }; |
| 833 | |
| 808 | 834 | pub const sigset_t = c.sigset_t; |
| 809 | 835 | pub const empty_sigset = sigset_t(0); |
| 810 | 836 | |
| ... | ... | @@ -812,8 +838,13 @@ pub const timespec = c.timespec; |
| 812 | 838 | pub const Stat = c.Stat; |
| 813 | 839 | pub const dirent = c.dirent; |
| 814 | 840 | |
| 841 | pub const in_port_t = c.in_port_t; |
| 815 | 842 | pub const sa_family_t = c.sa_family_t; |
| 843 | pub const socklen_t = c.socklen_t; |
| 844 | |
| 816 | 845 | pub const sockaddr = c.sockaddr; |
| 846 | pub const sockaddr_in = c.sockaddr_in; |
| 847 | pub const sockaddr_in6 = c.sockaddr_in6; |
| 817 | 848 | |
| 818 | 849 | /// Renamed from `kevent` to `Kevent` to avoid conflict with the syscall. |
| 819 | 850 | pub const Kevent = c.Kevent; |