PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/f00b4r0/uspot.git
-PKG_SOURCE_DATE:=2025-01-20
-PKG_SOURCE_VERSION:=644fd6f52a8e7b1a72e0937ad0d4cea8e86186a9
-PKG_MIRROR_HASH:=284513ba40547ce6f05c0eeb6adfdba72c23cb151db8807e5a022b374b39db07
+PKG_SOURCE_DATE:=2025-08-07
+PKG_SOURCE_VERSION:=8599a968877b55b0ce29f37d4b2d78036b257787
+PKG_MIRROR_HASH:=011a42c3ed0ef36f454121da8044959f9481dafd6277a73f4fc2f4b53a54f160
CMAKE_SOURCE_SUBDIR:=src
+PKG_BUILD_DEPENDS:=bpf-headers
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
+include $(INCLUDE_DIR)/bpf.mk
define Package/uspot
SUBMENU:=Captive Portals
DEPENDS:=+conntrack \
+libblobmsg-json +liblucihttp-ucode +libradcli +libubox +libubus +libuci \
+uspotfilter \
- +ucode +ucode-mod-log +ucode-mod-math +ucode-mod-nl80211 +ucode-mod-rtnl +uhttpd-mod-ucode +ucode-mod-uloop
+ +ucode +ucode-mod-log +ucode-mod-math +ucode-mod-nl80211 +ucode-mod-rtnl +uhttpd-mod-ucode +ucode-mod-uloop \
+ +ucode-mod-bpf +ucode-mod-struct +kmod-sched-core +kmod-sched-bpf $(BPF_DEPENDS)
endef
CATEGORY:=Network
TITLE:=uspot firewall interface
EXTRA_DEPENDS:=ucode (>= 2023-11-07)
- DEPENDS:=+conntrack +nftables-json +ucode +ucode-mod-rtnl +ucode-mod-uloop
+ DEPENDS:=+conntrack +nftables-json +ucode +ucode-mod-rtnl +ucode-mod-uloop +ucode-mod-log
PKGARCH:=all
endef
It is compatible with firewall4.
endef
+define Build/Compile
+ $(call CompileBPF,$(PKG_BUILD_DIR)/src/uspot-bpf.c)
+ $(call Build/Compile/Default,)
+endef
+
define Package/uspot/install
- $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/share $(1)/usr/lib/ucode $(1)/etc/init.d $(1)/etc/config
+ $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/share $(1)/usr/lib/ucode $(1)/etc/init.d $(1)/etc/config $(1)/lib/bpf
$(INSTALL_BIN) $(PKG_BUILD_DIR)/radius-client $(1)/usr/bin/radius-client
$(INSTALL_BIN) $(PKG_BUILD_DIR)/uspot-das $(1)/usr/bin/uspot-das
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libuam.so $(1)/usr/lib/ucode/uam.so
+ $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/uspot-bpf.o $(1)/lib/bpf/uspot.o
$(INSTALL_CONF) $(PKG_BUILD_DIR)/files/etc/config/uspot $(1)/etc/config/uspot
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/etc/init.d/uspot $(1)/etc/init.d/uspot
$(CP) $(PKG_BUILD_DIR)/files/usr/bin $(1)/usr/