mirror of
https://github.com/Waujito/youtubeUnblock.git
synced 2025-12-30 19:28:08 +03:00
Add skeleton for module and userspace iptables management
Special thanks to https://github.com/drivenets/iptables_extensions repository with detailed explanations of iptables userspace interaction with the kernel module.
This commit is contained in:
38
kmake.mk
38
kmake.mk
@@ -1,26 +1,42 @@
|
||||
#Kernel module makes here
|
||||
PWD := $(CURDIR)
|
||||
|
||||
override CC := $(OCC)
|
||||
override LD := $(OLD)
|
||||
override CFLAGS :=
|
||||
override LDFLAGS :=
|
||||
CC := gcc
|
||||
CCLD := $(CC)
|
||||
LD := ld
|
||||
CFLAGS :=
|
||||
LDFLAGS :=
|
||||
|
||||
export CC LD CFLAGS LDFLAGS
|
||||
IPT_CFLAGS := -Wall -Wpedantic -O2
|
||||
|
||||
.PHONY: kmake kload kunload kreload kclean
|
||||
kmake:
|
||||
.PHONY: kmake kload kunload kreload kclean kmclean xclean
|
||||
kmake: kmod xmod
|
||||
|
||||
kmod:
|
||||
$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
|
||||
|
||||
xmod: libipt_YTUNBLOCK.so
|
||||
|
||||
libipt_YTUNBLOCK.so: libipt_YTUNBLOCK.o
|
||||
$(CCLD) -shared -fPIC ${IPT_CFLAGS} -o $@ $^;
|
||||
|
||||
libipt_YTUNBLOCK.o: libipt_YTUNBLOCK.c
|
||||
$(CC) ${IPT_CFLAGS} -D_INIT=lib$*_init -fPIC -c -o $@ $<;
|
||||
|
||||
kload:
|
||||
insmod youtubeKUnblock.ko
|
||||
insmod ipt_YTUNBLOCK.ko
|
||||
cp ./libipt_YTUNBLOCK.so /usr/lib/xtables/
|
||||
|
||||
kunload:
|
||||
-rmmod youtubeKUnblock
|
||||
-rmmod ipt_YTUNBLOCK
|
||||
-/bin/rm /usr/lib/xtables/libipt_YTUNBLOCK.so
|
||||
|
||||
kreload: kunload kload
|
||||
|
||||
kclean:
|
||||
$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
|
||||
kclean: xtclean kmclean
|
||||
|
||||
kmclean:
|
||||
-$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
|
||||
|
||||
xtclean:
|
||||
-/bin/rm -f libipt_YTUNBLOCK.so libipt_YTUNBLOCK.o
|
||||
|
||||
Reference in New Issue
Block a user