summaryrefslogtreecommitdiff
path: root/src/socket/options.h
diff options
context:
space:
mode:
authormniip <mniip@mniip.com>2013-05-02 18:41:01 (GMT)
committer mniip <mniip@mniip.com>2013-05-02 18:41:01 (GMT)
commite7b29ab9b5e037a8896c62f0473cae8d353d5114 (patch)
tree503fc881969e57cb521fbf551fcede513c1f12fe /src/socket/options.h
parent2eaed9c9d478292f18d8a6aea9d2c9c869b26911 (diff)
downloadpowder-e7b29ab9b5e037a8896c62f0473cae8d353d5114.zip
powder-e7b29ab9b5e037a8896c62f0473cae8d353d5114.tar.gz
statically linked, or better to say, builtin luasocket
Diffstat (limited to 'src/socket/options.h')
-rw-r--r--src/socket/options.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/socket/options.h b/src/socket/options.h
new file mode 100644
index 0000000..4981cf2
--- /dev/null
+++ b/src/socket/options.h
@@ -0,0 +1,39 @@
+#ifndef OPTIONS_H
+#define OPTIONS_H
+/*=========================================================================*\
+* Common option interface
+* LuaSocket toolkit
+*
+* This module provides a common interface to socket options, used mainly by
+* modules UDP and TCP.
+*
+* RCS ID: $Id: options.h,v 1.4 2005/10/07 04:40:59 diego Exp $
+\*=========================================================================*/
+
+#include "lua.h"
+#include "socket.h"
+
+/* option registry */
+typedef struct t_opt {
+ const char *name;
+ int (*func)(lua_State *L, p_socket ps);
+} t_opt;
+typedef t_opt *p_opt;
+
+/* supported options */
+int opt_dontroute(lua_State *L, p_socket ps);
+int opt_broadcast(lua_State *L, p_socket ps);
+int opt_reuseaddr(lua_State *L, p_socket ps);
+int opt_tcp_nodelay(lua_State *L, p_socket ps);
+int opt_keepalive(lua_State *L, p_socket ps);
+int opt_linger(lua_State *L, p_socket ps);
+int opt_reuseaddr(lua_State *L, p_socket ps);
+int opt_ip_multicast_ttl(lua_State *L, p_socket ps);
+int opt_ip_multicast_loop(lua_State *L, p_socket ps);
+int opt_ip_add_membership(lua_State *L, p_socket ps);
+int opt_ip_drop_membersip(lua_State *L, p_socket ps);
+
+/* invokes the appropriate option handler */
+int opt_meth_setoption(lua_State *L, p_opt opt, p_socket ps);
+
+#endif