nnsdk/nn/
socket.rs

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