Rather than using a special mwan3 user to manage mwan3track's tracking packets, this commit implements a small helper library to bind to device and to set a fwmark so that the tracking packets can be routed out of the correct interface. This provides a consistent method for binding to a device rather than relying on various packages potentially buggy implementations. For example: #8139 and #12836 This helper issue also allows for more tracking methods to be added even if they do not have a command line option to bind to device, such as iperf3 (eg #13050). Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
74 lines
1.6 KiB
Makefile
74 lines
1.6 KiB
Makefile
#
|
|
# Copyright (C) 2006-2014 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=mwan3
|
|
PKG_VERSION:=2.10.0
|
|
PKG_RELEASE:=1
|
|
PKG_MAINTAINER:=Florian Eckert <fe@dev.tdt.de>
|
|
PKG_LICENSE:=GPL-2.0
|
|
PKG_CONFIG_DEPENDS:=CONFIG_IPV6
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/mwan3
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
SUBMENU:=Routing and Redirection
|
|
DEPENDS:= \
|
|
+ip \
|
|
+ipset \
|
|
+iptables \
|
|
+iptables-mod-conntrack-extra \
|
|
+iptables-mod-ipopt \
|
|
+jshn
|
|
TITLE:=Multiwan hotplug script with connection tracking support
|
|
MAINTAINER:=Florian Eckert <fe@dev.tdt.de>
|
|
PKGARCH:=all
|
|
endef
|
|
|
|
define Package/mwan3/description
|
|
Hotplug script which makes configuration of multiple WAN interfaces simple
|
|
and manageable. With loadbalancing/failover support for up to 250 wan
|
|
interfaces, connection tracking and an easy to manage traffic ruleset.
|
|
endef
|
|
|
|
define Package/mwan3/conffiles
|
|
/etc/config/mwan3
|
|
/etc/mwan3.user
|
|
endef
|
|
|
|
define Build/Compile
|
|
endef
|
|
|
|
define Package/mwan3/postinst
|
|
#!/bin/sh
|
|
if [ -z "$${IPKG_INSTROOT}" ]; then
|
|
/etc/init.d/rpcd restart
|
|
fi
|
|
exit 0
|
|
endef
|
|
|
|
define Package/mwan3/postrm
|
|
#!/bin/sh
|
|
if [ -z "$${IPKG_INSTROOT}" ]; then
|
|
/etc/init.d/rpcd restart
|
|
fi
|
|
exit 0
|
|
endef
|
|
|
|
define Build/Compile
|
|
$(TARGET_CC) $(CFLAGS) $(LDFLAGS) $(FPIC) -shared -o $(PKG_BUILD_DIR)/libwrap_mwan3_sockopt.so.1.0 $(if $(CONFIG_IPV6),-DCONFIG_IPV6) $(PKG_BUILD_DIR)/sockopt_wrap.c -ldl
|
|
endef
|
|
|
|
define Package/mwan3/install
|
|
$(CP) ./files/* $(1)
|
|
$(CP) $(PKG_BUILD_DIR)/libwrap_mwan3_sockopt.so.1.0 $(1)/lib/mwan3/
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,mwan3))
|