|
Warning
|
The Lua bindings for libnetfilter_queue provided here are not complete and in
a very early stage of development, thus do not use them in a production
environment!
|
Clone the git repository
git clone git://github.com/morfoh/lua-netfilter_queue.git
cd lua-netfilter_queue
Prepare a dedicated build directory
mkdir build
cd build
Generate Makefiles and related build infrastructure
cmake ../
Alternatively you can specify the path where to install the module
cmake ../ -DINSTALL_CMOD=/usr/local/lib/lua/5.1
Compile the module
make
Install the module
sudo make install
queue all incoming ICMP
iptables -A INPUT --protocol icmp -j NFQUEUE --queue-num 0
queue all outgoing ICMP
iptables -A OUTPUT --protocol icmp -j NFQUEUE --queue-num 0
run the test as superuser
sudo lua test.lua
If you are going to use ping to send ICMP echo packets to some host, you
should see log output.
By default CMake will use the pre-generated bindings that are include in the project.
To be able to re-generate the bindings, you will need to install
LuaNativeObjects and set the
CMake variable USE_PRE_GENERATED_BINDINGS to FALSE.
cmake ../ -DUSE_PRE_GENERATED_BINDINGS=FALSE
Mandantory for re-generating Lua bindings from *.nobj.lua files:
-
LuaNativeObjects, this is the bindings generator used to convert the
*.nobj.luafiles into a native Lua module.
Optional for re-generating documentation
To not re-generate documentation by luadocs when re-generating the bindings
you have to to set the CMake variable GENERATE_LUADOCS to FALSE.
cmake ../ -DUSE_PRE_GENERATED_BINDINGS=FALSE -DGENERATE_LUADOCS=FALSE