1#[allow(unused_imports)]
2use self::super::root;
3
4#[repr(C)]
5pub struct InAddr {
6 pub addr: u32,
7}
8
9#[repr(C)]
10pub struct SockAddrIn {
11 pub sin_len: u8,
12 pub sin_family: u8,
13 pub sin_port: u16,
14 pub sin_addr: [u8;4],
15 pub padding: u64,
16}
17
18extern "C" {
19 #[link_name = "\u{1}_ZN2nn6socket10InitializeEPvmmi"]
20 pub fn Initialize(
21 pool: *mut u8,
22 poolSize: root::ulong,
23 allocPoolSize: root::ulong,
24 concurLimit: i32,
25 ) -> root::Result;
26}
27extern "C" {
28 #[link_name = "\u{1}_ZN2nn6socket10InitializeERKNS0_6ConfigE"]
29 pub fn Initialize_Config(config: *mut u8) -> root::Result;
30}
31extern "C" {
32 #[link_name = "\u{1}_ZN2nn6socket8FinalizeEv"]
33 pub fn Finalize() -> root::Result;
34}
35extern "C" {
36 #[link_name = "\u{1}_ZN2nn6socket10SetSockOptEiiiPKvj"]
37 pub fn SetSockOpt(
38 socket: root::s32,
39 socketLevel: root::s32,
40 option: root::s32,
41 arg1: *const u8,
42 len: u32,
43 ) -> root::s32;
44}
45extern "C" {
46 #[link_name = "\u{1}_ZN2nn6socket4SendEiPKvmi"]
47 pub fn Send(
48 socket: root::s32,
49 buffer: *const u8,
50 bufferLength: u64,
51 flags: root::s32,
52 ) -> u64;
53}
54extern "C" {
55 #[link_name = "\u{1}_ZN2nn6socket6SocketEiii"]
56 pub fn Socket(domain: root::s32, type_: root::s32, proto: root::s32) -> root::s32;
57}
58extern "C" {
59 #[link_name = "\u{1}_ZN2nn6socket9InetHtonsEt"]
60 pub fn InetHtons(arg1: u16) -> u16;
61}
62extern "C" {
63 #[link_name = "\u{1}_ZN2nn6socket8InetAtonEPKcPNS0_6InAddrE"]
64 pub fn InetAton(
65 str: *const u8,
66 arg1: *mut root::nn::socket::InAddr,
67 ) -> u32;
68}
69
70extern "C" {
71 #[link_name = "\u{1}_ZN2nn6socket7ConnectEiPKNS0_8SockAddrEj"]
72 pub fn Connect(socket: i32, sockaddrin: *const SockAddrIn, sockaddr_len: u32) -> i32;
73}
74
75extern "C" {
76 #[link_name = "\u{1}_ZN2nn6socket12GetLastErrorEv"]
77 pub fn GetLastError() -> u32;
78}
79
80extern "C" {
81 #[link_name = "\u{1}_ZN2nn6socket4BindEiPK8sockaddrj"]
82 pub fn Bind(socket: root::s32, addr: *const root::sockaddr, addrLen: u32) -> u32;
83}
84extern "C" {
85 #[link_name = "\u{1}_ZN2nn6socket6ListenEii"]
86 pub fn Listen(socket: root::s32, backlog: root::s32) -> u32;
87}
88extern "C" {
89 #[link_name = "\u{1}_ZN2nn6socket6AcceptEiP8sockaddrPj"]
90 pub fn Accept(
91 socket: root::s32,
92 addrOut: *mut root::sockaddr,
93 addrLenOut: *mut u32,
94 ) -> u32;
95}
96