aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Nehab <diego.nehab@gmail.com>2015-08-21 15:51:52 -0300
committerDiego Nehab <diego.nehab@gmail.com>2015-08-21 15:51:52 -0300
commit9322eacefd719878ccfbc3220873a2a07af41291 (patch)
tree5698f654f43af5700e6b799737d54ab68dba35ee
parente75444ccd1f30a3b5fbc7cec4a85e831bd0560ed (diff)
parent67abaf89eb9f3de8d7e00f310c502fc7534af2b7 (diff)
downloadluasocket-9322eacefd719878ccfbc3220873a2a07af41291.tar.gz
luasocket-9322eacefd719878ccfbc3220873a2a07af41291.tar.bz2
luasocket-9322eacefd719878ccfbc3220873a2a07af41291.zip
Merge pull request #141 from cjtallman/master
Added missing options for UDP getoption.
-rw-r--r--src/options.c10
-rw-r--r--src/options.h3
-rw-r--r--src/udp.c4
3 files changed, 16 insertions, 1 deletions
diff --git a/src/options.c b/src/options.c
index f41a5e5..20f4c28 100644
--- a/src/options.c
+++ b/src/options.c
@@ -105,11 +105,21 @@ int opt_set_dontroute(lua_State *L, p_socket ps)
105 return opt_setboolean(L, ps, SOL_SOCKET, SO_DONTROUTE); 105 return opt_setboolean(L, ps, SOL_SOCKET, SO_DONTROUTE);
106} 106}
107 107
108int opt_get_dontroute(lua_State *L, p_socket ps)
109{
110 return opt_getboolean(L, ps, SOL_SOCKET, SO_DONTROUTE);
111}
112
108int opt_set_broadcast(lua_State *L, p_socket ps) 113int opt_set_broadcast(lua_State *L, p_socket ps)
109{ 114{
110 return opt_setboolean(L, ps, SOL_SOCKET, SO_BROADCAST); 115 return opt_setboolean(L, ps, SOL_SOCKET, SO_BROADCAST);
111} 116}
112 117
118int opt_get_broadcast(lua_State *L, p_socket ps)
119{
120 return opt_getboolean(L, ps, SOL_SOCKET, SO_BROADCAST);
121}
122
113int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps) 123int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps)
114{ 124{
115 return opt_setint(L, ps, IPPROTO_IPV6, IPV6_UNICAST_HOPS); 125 return opt_setint(L, ps, IPPROTO_IPV6, IPV6_UNICAST_HOPS);
diff --git a/src/options.h b/src/options.h
index b75db37..ad1b00d 100644
--- a/src/options.h
+++ b/src/options.h
@@ -40,11 +40,12 @@ int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps);
40int opt_set_ip6_v6only(lua_State *L, p_socket ps); 40int opt_set_ip6_v6only(lua_State *L, p_socket ps);
41 41
42/* supported options for getoption */ 42/* supported options for getoption */
43int opt_get_dontroute(lua_State *L, p_socket ps);
44int opt_get_broadcast(lua_State *L, p_socket ps);
43int opt_get_reuseaddr(lua_State *L, p_socket ps); 45int opt_get_reuseaddr(lua_State *L, p_socket ps);
44int opt_get_tcp_nodelay(lua_State *L, p_socket ps); 46int opt_get_tcp_nodelay(lua_State *L, p_socket ps);
45int opt_get_keepalive(lua_State *L, p_socket ps); 47int opt_get_keepalive(lua_State *L, p_socket ps);
46int opt_get_linger(lua_State *L, p_socket ps); 48int opt_get_linger(lua_State *L, p_socket ps);
47int opt_get_reuseaddr(lua_State *L, p_socket ps);
48int opt_get_ip_multicast_loop(lua_State *L, p_socket ps); 49int opt_get_ip_multicast_loop(lua_State *L, p_socket ps);
49int opt_get_ip_multicast_if(lua_State *L, p_socket ps); 50int opt_get_ip_multicast_if(lua_State *L, p_socket ps);
50int opt_get_error(lua_State *L, p_socket ps); 51int opt_get_error(lua_State *L, p_socket ps);
diff --git a/src/udp.c b/src/udp.c
index f02f4c4..7ff00f5 100644
--- a/src/udp.c
+++ b/src/udp.c
@@ -90,6 +90,10 @@ static t_opt optset[] = {
90 90
91/* socket options for getoption */ 91/* socket options for getoption */
92static t_opt optget[] = { 92static t_opt optget[] = {
93 {"dontroute", opt_get_dontroute},
94 {"broadcast", opt_get_broadcast},
95 {"reuseaddr", opt_get_reuseaddr},
96 {"reuseport", opt_get_reuseport},
93 {"ip-multicast-if", opt_get_ip_multicast_if}, 97 {"ip-multicast-if", opt_get_ip_multicast_if},
94 {"ip-multicast-loop", opt_get_ip_multicast_loop}, 98 {"ip-multicast-loop", opt_get_ip_multicast_loop},
95 {"error", opt_get_error}, 99 {"error", opt_get_error},