diff options
author | Caleb Maclennan <caleb@alerque.com> | 2023-11-10 09:12:04 +0300 |
---|---|---|
committer | Caleb Maclennan <caleb@alerque.com> | 2023-11-10 09:12:04 +0300 |
commit | 5c4fc93d5f4137bf4c22ddf1a048c907a4a26727 (patch) | |
tree | a9a68e1f6a9c3bfe2b64fa1c3a4098865b7d3b5d /src/options.h | |
parent | ccef3bc4e2aa6ee5b997a80aabb58f4ff0b0e98f (diff) | |
parent | 43a97b7f0053313b43906371dbdc226271e6c8ab (diff) | |
download | luasocket-hjelmeland-patch-1.tar.gz luasocket-hjelmeland-patch-1.tar.bz2 luasocket-hjelmeland-patch-1.zip |
Merge branch 'master' into hjelmeland-patch-1hjelmeland-patch-1
Diffstat (limited to '')
-rw-r--r-- | src/options.h | 110 |
1 files changed, 82 insertions, 28 deletions
diff --git a/src/options.h b/src/options.h index ad1b00d..26d6f02 100644 --- a/src/options.h +++ b/src/options.h | |||
@@ -8,7 +8,7 @@ | |||
8 | * modules UDP and TCP. | 8 | * modules UDP and TCP. |
9 | \*=========================================================================*/ | 9 | \*=========================================================================*/ |
10 | 10 | ||
11 | #include "lua.h" | 11 | #include "luasocket.h" |
12 | #include "socket.h" | 12 | #include "socket.h" |
13 | 13 | ||
14 | /* option registry */ | 14 | /* option registry */ |
@@ -18,45 +18,99 @@ typedef struct t_opt { | |||
18 | } t_opt; | 18 | } t_opt; |
19 | typedef t_opt *p_opt; | 19 | typedef t_opt *p_opt; |
20 | 20 | ||
21 | /* supported options for setoption */ | 21 | #ifndef _WIN32 |
22 | int opt_set_dontroute(lua_State *L, p_socket ps); | 22 | #pragma GCC visibility push(hidden) |
23 | int opt_set_broadcast(lua_State *L, p_socket ps); | 23 | #endif |
24 | |||
25 | int opt_meth_setoption(lua_State *L, p_opt opt, p_socket ps); | ||
26 | int opt_meth_getoption(lua_State *L, p_opt opt, p_socket ps); | ||
27 | |||
24 | int opt_set_reuseaddr(lua_State *L, p_socket ps); | 28 | int opt_set_reuseaddr(lua_State *L, p_socket ps); |
29 | int opt_get_reuseaddr(lua_State *L, p_socket ps); | ||
30 | |||
31 | int opt_set_reuseport(lua_State *L, p_socket ps); | ||
32 | int opt_get_reuseport(lua_State *L, p_socket ps); | ||
33 | |||
25 | int opt_set_tcp_nodelay(lua_State *L, p_socket ps); | 34 | int opt_set_tcp_nodelay(lua_State *L, p_socket ps); |
35 | int opt_get_tcp_nodelay(lua_State *L, p_socket ps); | ||
36 | |||
37 | #ifdef TCP_KEEPIDLE | ||
38 | int opt_set_tcp_keepidle(lua_State *L, p_socket ps); | ||
39 | int opt_get_tcp_keepidle(lua_State *L, p_socket ps); | ||
40 | #endif | ||
41 | |||
42 | #ifdef TCP_KEEPCNT | ||
43 | int opt_set_tcp_keepcnt(lua_State *L, p_socket ps); | ||
44 | int opt_get_tcp_keepcnt(lua_State *L, p_socket ps); | ||
45 | #endif | ||
46 | |||
47 | #ifdef TCP_KEEPINTVL | ||
48 | int opt_set_tcp_keepintvl(lua_State *L, p_socket ps); | ||
49 | int opt_get_tcp_keepintvl(lua_State *L, p_socket ps); | ||
50 | #endif | ||
51 | |||
52 | #ifdef TCP_DEFER_ACCEPT | ||
53 | int opt_set_tcp_defer_accept(lua_State *L, p_socket ps); | ||
54 | #endif | ||
55 | |||
56 | int opt_set_bindtodevice(lua_State *L, p_socket ps); | ||
57 | int opt_get_bindtodevice(lua_State *L, p_socket ps); | ||
58 | |||
26 | int opt_set_keepalive(lua_State *L, p_socket ps); | 59 | int opt_set_keepalive(lua_State *L, p_socket ps); |
60 | int opt_get_keepalive(lua_State *L, p_socket ps); | ||
61 | |||
62 | int opt_set_dontroute(lua_State *L, p_socket ps); | ||
63 | int opt_get_dontroute(lua_State *L, p_socket ps); | ||
64 | |||
65 | int opt_set_broadcast(lua_State *L, p_socket ps); | ||
66 | int opt_get_broadcast(lua_State *L, p_socket ps); | ||
67 | |||
68 | int opt_set_recv_buf_size(lua_State *L, p_socket ps); | ||
69 | int opt_get_recv_buf_size(lua_State *L, p_socket ps); | ||
70 | |||
71 | int opt_set_send_buf_size(lua_State *L, p_socket ps); | ||
72 | int opt_get_send_buf_size(lua_State *L, p_socket ps); | ||
73 | |||
74 | #ifdef TCP_FASTOPEN | ||
75 | int opt_set_tcp_fastopen(lua_State *L, p_socket ps); | ||
76 | #endif | ||
77 | #ifdef TCP_FASTOPEN_CONNECT | ||
78 | int opt_set_tcp_fastopen_connect(lua_State *L, p_socket ps); | ||
79 | #endif | ||
80 | |||
81 | int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps); | ||
82 | int opt_get_ip6_unicast_hops(lua_State *L, p_socket ps); | ||
83 | |||
84 | int opt_set_ip6_multicast_hops(lua_State *L, p_socket ps); | ||
85 | int opt_get_ip6_multicast_hops(lua_State *L, p_socket ps); | ||
86 | |||
87 | int opt_set_ip_multicast_loop(lua_State *L, p_socket ps); | ||
88 | int opt_get_ip_multicast_loop(lua_State *L, p_socket ps); | ||
89 | |||
90 | int opt_set_ip6_multicast_loop(lua_State *L, p_socket ps); | ||
91 | int opt_get_ip6_multicast_loop(lua_State *L, p_socket ps); | ||
92 | |||
27 | int opt_set_linger(lua_State *L, p_socket ps); | 93 | int opt_set_linger(lua_State *L, p_socket ps); |
28 | int opt_set_reuseaddr(lua_State *L, p_socket ps); | 94 | int opt_get_linger(lua_State *L, p_socket ps); |
29 | int opt_set_reuseport(lua_State *L, p_socket ps); | 95 | |
30 | int opt_set_ip_multicast_if(lua_State *L, p_socket ps); | ||
31 | int opt_set_ip_multicast_ttl(lua_State *L, p_socket ps); | 96 | int opt_set_ip_multicast_ttl(lua_State *L, p_socket ps); |
32 | int opt_set_ip_multicast_loop(lua_State *L, p_socket ps); | 97 | |
98 | int opt_set_ip_multicast_if(lua_State *L, p_socket ps); | ||
99 | int opt_get_ip_multicast_if(lua_State *L, p_socket ps); | ||
100 | |||
33 | int opt_set_ip_add_membership(lua_State *L, p_socket ps); | 101 | int opt_set_ip_add_membership(lua_State *L, p_socket ps); |
34 | int opt_set_ip_drop_membersip(lua_State *L, p_socket ps); | 102 | int opt_set_ip_drop_membersip(lua_State *L, p_socket ps); |
35 | int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps); | 103 | |
36 | int opt_set_ip6_multicast_hops(lua_State *L, p_socket ps); | ||
37 | int opt_set_ip6_multicast_loop(lua_State *L, p_socket ps); | ||
38 | int opt_set_ip6_add_membership(lua_State *L, p_socket ps); | 104 | int opt_set_ip6_add_membership(lua_State *L, p_socket ps); |
39 | int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps); | 105 | int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps); |
106 | |||
40 | int opt_set_ip6_v6only(lua_State *L, p_socket ps); | 107 | int opt_set_ip6_v6only(lua_State *L, p_socket ps); |
108 | int opt_get_ip6_v6only(lua_State *L, p_socket ps); | ||
41 | 109 | ||
42 | /* supported options for getoption */ | ||
43 | int opt_get_dontroute(lua_State *L, p_socket ps); | ||
44 | int opt_get_broadcast(lua_State *L, p_socket ps); | ||
45 | int opt_get_reuseaddr(lua_State *L, p_socket ps); | ||
46 | int opt_get_tcp_nodelay(lua_State *L, p_socket ps); | ||
47 | int opt_get_keepalive(lua_State *L, p_socket ps); | ||
48 | int opt_get_linger(lua_State *L, p_socket ps); | ||
49 | int opt_get_ip_multicast_loop(lua_State *L, p_socket ps); | ||
50 | int opt_get_ip_multicast_if(lua_State *L, p_socket ps); | ||
51 | int opt_get_error(lua_State *L, p_socket ps); | 110 | int opt_get_error(lua_State *L, p_socket ps); |
52 | int opt_get_ip6_multicast_loop(lua_State *L, p_socket ps); | ||
53 | int opt_get_ip6_multicast_hops(lua_State *L, p_socket ps); | ||
54 | int opt_get_ip6_unicast_hops(lua_State *L, p_socket ps); | ||
55 | int opt_get_ip6_v6only(lua_State *L, p_socket ps); | ||
56 | int opt_get_reuseport(lua_State *L, p_socket ps); | ||
57 | 111 | ||
58 | /* invokes the appropriate option handler */ | 112 | #ifndef _WIN32 |
59 | int opt_meth_setoption(lua_State *L, p_opt opt, p_socket ps); | 113 | #pragma GCC visibility pop |
60 | int opt_meth_getoption(lua_State *L, p_opt opt, p_socket ps); | 114 | #endif |
61 | 115 | ||
62 | #endif | 116 | #endif |