1 use crate::net::TcpKeepalive;
2 use std::io;
3 use std::net::{self, SocketAddr};
4 use std::time::Duration;
5 
6 pub(crate) type TcpSocket = i32;
7 
new_v4_socket() -> io::Result<TcpSocket>8 pub(crate) fn new_v4_socket() -> io::Result<TcpSocket> {
9     os_required!();
10 }
11 
new_v6_socket() -> io::Result<TcpSocket>12 pub(crate) fn new_v6_socket() -> io::Result<TcpSocket> {
13     os_required!();
14 }
15 
bind(_socket: TcpSocket, _addr: SocketAddr) -> io::Result<()>16 pub(crate) fn bind(_socket: TcpSocket, _addr: SocketAddr) -> io::Result<()> {
17     os_required!();
18 }
19 
connect(_: TcpSocket, _addr: SocketAddr) -> io::Result<net::TcpStream>20 pub(crate) fn connect(_: TcpSocket, _addr: SocketAddr) -> io::Result<net::TcpStream> {
21     os_required!();
22 }
23 
listen(_: TcpSocket, _: u32) -> io::Result<net::TcpListener>24 pub(crate) fn listen(_: TcpSocket, _: u32) -> io::Result<net::TcpListener> {
25     os_required!();
26 }
27 
close(_: TcpSocket)28 pub(crate) fn close(_: TcpSocket) {
29     os_required!();
30 }
31 
set_reuseaddr(_: TcpSocket, _: bool) -> io::Result<()>32 pub(crate) fn set_reuseaddr(_: TcpSocket, _: bool) -> io::Result<()> {
33     os_required!();
34 }
35 
get_reuseaddr(_: TcpSocket) -> io::Result<bool>36 pub(crate) fn get_reuseaddr(_: TcpSocket) -> io::Result<bool> {
37     os_required!();
38 }
39 
40 #[cfg(all(unix, not(any(target_os = "solaris", target_os = "illumos"))))]
set_reuseport(_: TcpSocket, _: bool) -> io::Result<()>41 pub(crate) fn set_reuseport(_: TcpSocket, _: bool) -> io::Result<()> {
42     os_required!();
43 }
44 
45 #[cfg(all(unix, not(any(target_os = "solaris", target_os = "illumos"))))]
get_reuseport(_: TcpSocket) -> io::Result<bool>46 pub(crate) fn get_reuseport(_: TcpSocket) -> io::Result<bool> {
47     os_required!();
48 }
49 
set_linger(_: TcpSocket, _: Option<Duration>) -> io::Result<()>50 pub(crate) fn set_linger(_: TcpSocket, _: Option<Duration>) -> io::Result<()> {
51     os_required!();
52 }
53 
get_linger(_: TcpSocket) -> io::Result<Option<Duration>>54 pub(crate) fn get_linger(_: TcpSocket) -> io::Result<Option<Duration>> {
55     os_required!();
56 }
57 
set_recv_buffer_size(_: TcpSocket, _: u32) -> io::Result<()>58 pub(crate) fn set_recv_buffer_size(_: TcpSocket, _: u32) -> io::Result<()> {
59     os_required!();
60 }
61 
get_recv_buffer_size(_: TcpSocket) -> io::Result<u32>62 pub(crate) fn get_recv_buffer_size(_: TcpSocket) -> io::Result<u32> {
63     os_required!();
64 }
65 
set_send_buffer_size(_: TcpSocket, _: u32) -> io::Result<()>66 pub(crate) fn set_send_buffer_size(_: TcpSocket, _: u32) -> io::Result<()> {
67     os_required!();
68 }
69 
get_send_buffer_size(_: TcpSocket) -> io::Result<u32>70 pub(crate) fn get_send_buffer_size(_: TcpSocket) -> io::Result<u32> {
71     os_required!();
72 }
73 
set_keepalive(_: TcpSocket, _: bool) -> io::Result<()>74 pub(crate) fn set_keepalive(_: TcpSocket, _: bool) -> io::Result<()> {
75     os_required!();
76 }
77 
get_keepalive(_: TcpSocket) -> io::Result<bool>78 pub(crate) fn get_keepalive(_: TcpSocket) -> io::Result<bool> {
79     os_required!();
80 }
81 
set_keepalive_params(_: TcpSocket, _: TcpKeepalive) -> io::Result<()>82 pub(crate) fn set_keepalive_params(_: TcpSocket, _: TcpKeepalive) -> io::Result<()> {
83     os_required!()
84 }
85 
86 #[cfg(any(
87     target_os = "android",
88     target_os = "linux",
89     target_os = "macos",
90     target_os = "ios",
91     target_os = "freebsd",
92     target_os = "netbsd",
93     target_os = "solaris",
94 ))]
get_keepalive_time(_: TcpSocket) -> io::Result<Option<Duration>>95 pub(crate) fn get_keepalive_time(_: TcpSocket) -> io::Result<Option<Duration>> {
96     os_required!()
97 }
98 
99 #[cfg(any(
100     target_os = "linux",
101     target_os = "macos",
102     target_os = "ios",
103     target_os = "freebsd",
104     target_os = "netbsd",
105 ))]
get_keepalive_interval(_: TcpSocket) -> io::Result<Option<Duration>>106 pub(crate) fn get_keepalive_interval(_: TcpSocket) -> io::Result<Option<Duration>> {
107     os_required!()
108 }
109 
110 #[cfg(any(
111     target_os = "linux",
112     target_os = "macos",
113     target_os = "ios",
114     target_os = "freebsd",
115     target_os = "netbsd",
116 ))]
get_keepalive_retries(_: TcpSocket) -> io::Result<Option<u32>>117 pub(crate) fn get_keepalive_retries(_: TcpSocket) -> io::Result<Option<u32>> {
118     os_required!()
119 }
120 
accept(_: &net::TcpListener) -> io::Result<(net::TcpStream, SocketAddr)>121 pub fn accept(_: &net::TcpListener) -> io::Result<(net::TcpStream, SocketAddr)> {
122     os_required!();
123 }
124 
get_localaddr(_: TcpSocket) -> io::Result<SocketAddr>125 pub(crate) fn get_localaddr(_: TcpSocket) -> io::Result<SocketAddr> {
126     os_required!();
127 }
128