This is a first build demonstrating one way to incorporate Allow2 into a router firmware.
This was built and tested with OpenWRT on a Netgear WNDR3700.
The solution has been built with 3 primary components.
-
allow2d - daemon process
User-space daemon responsible for managing the cached settings via the allow2deviceAPI and responding to requests from the kernel module.
-
allow2 - kernel module
Kernel module responsible for intercepting packets and requesting directions from the userspace component
-
liballow2
(under development) - extracted library for leveraging the allow2 platform within other processes
-
download and configure the OpenWrt Buildroot
Follow the instructions:
http://wiki.openwrt.org/doc/howto/build
(This will be the <openWRTBuildroot> directory)
-
clone this repo
git clone https://github.com/Allow2/Allow2OpenWRT.git
into a suitable location outside of the openwrt home directory.
(This will be the <Allow2OpenWRT> directory)
- link the allow2 packages into the openwrt/packages directory
cd <openWRTBuildroot>/Packages
ln -s <Allow2OpenWRT>/allow2/ .
ln -s <Allow2OpenWRT>/allow2d/ .
ln -s <Allow2OpenWRT>/liballow2/ .
-
follow the instructions for building OpenWrt or individual packages
Use "make menuconfig" to configure the allow2 packages to build:
- Kernel Modules -> Netfilter Extensions -> kmod-allow2
- Libraries -> liballow2
- Utilities -> allow2d
Alternately, making individual packages would be:
make package/allow2/compile
make package/allow2d/compile
- Install on your router
- install luci-allow2
TBA - write this bit
-
add openWRT packages
-
compile
make V=99
- install on your router