psp_net/
netc.rs

1#[allow(unused)]
2pub const AF_INET: u8 = 2;
3/// Stream socket (TCP)
4#[allow(unused)]
5pub const SOCK_STREAM: i32 = 1;
6/// Datagram socket (UDP)
7#[allow(unused)]
8pub const SOCK_DGRAM: i32 = 2;
9
10pub use psp::sys::in_addr;
11
12pub use psp::sys::sockaddr;
13
14/// A structure like Linux's `sockaddr_in`
15#[repr(C)]
16#[allow(nonstandard_style)]
17pub struct sockaddr_in {
18    pub sin_len: u8,
19    pub sin_family: u8,
20    pub sin_port: u16,
21    pub sin_addr: in_addr,
22    pub sin_zero: [u8; 8],
23}
24
25impl Clone for sockaddr_in {
26    fn clone(&self) -> Self {
27        sockaddr_in {
28            sin_len: self.sin_len,
29            sin_family: self.sin_family,
30            sin_port: self.sin_port,
31            sin_addr: in_addr(self.sin_addr.0),
32            sin_zero: self.sin_zero,
33        }
34    }
35}