#

KVERSION = 4.2.5-258
KDIR = /lib/modules/4.2.5-258/build
IPTABLES_CFLAGS = -DXTABLES -I/include
IPTABLES_MODULES = /lib/iptables

obj-m = ipt_NETFLOW.o

ipt_NETFLOW.ko: ipt_NETFLOW.c ipt_NETFLOW.h
	@echo Compiling for kernel $(KVERSION)
	make -C $(KDIR) M=$(CURDIR) modules
all: ipt_NETFLOW.ko libipt_NETFLOW.so
minstall: ipt_NETFLOW.ko
	make -C $(KDIR) M=$(CURDIR) modules_install
mclean:
	make -C $(KDIR) M=$(CURDIR) clean
lclean:
	-rm -f *.so *_sh.o
clean: mclean lclean
	-rm -f *.so *.o modules.order

libipt_NETFLOW.so: libipt_NETFLOW.c
	gcc -O2 -Wall -Wunused -I$(KDIR)/include $(IPTABLES_CFLAGS) -fPIC -o libipt_NETFLOW_sh.o -c libipt_NETFLOW.c
	gcc -shared  -o libipt_NETFLOW.so libipt_NETFLOW_sh.o

linstall: libipt_NETFLOW.so
	install -D libipt_NETFLOW.so $(DESTDIR)$(IPTABLES_MODULES)/libipt_NETFLOW.so

install: minstall linstall

Makefile: Makefile.in configure
	./configure --make

load: all
	insmod ipt_NETFLOW.ko active_timeout=5
	iptables -A OUTPUT -d 0/0 -j NETFLOW
	iptables -A INPUT -d 0/0 -j NETFLOW

unload:
	iptables -D OUTPUT -d 0/0 -j NETFLOW
	iptables -D INPUT -d 0/0 -j NETFLOW
	rmmod ipt_NETFLOW.ko
