|
#
|
|
# Copyright (C) 2018-2019 Luiz Angelo Daros de Luca
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=trafficshaper
|
|
PKG_VERSION:=1.0.0
|
|
PKG_RELEASE:=2
|
|
PKG_MAINTAINER:=Luiz Angelo Daros de Luca <luizluca@gmail.com>
|
|
|
|
PKG_LICENSE:=GPL-2.0-or-later
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/trafficshaper
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
TITLE:=WAN traffic shaper based on LAN addresses
|
|
DEPENDS:=+tc +kmod-sched-core +kmod-sched-connmark +kmod-ifb +iptables +kmod-sched-cake +iptables-mod-conntrack-extra
|
|
PKGARCH:=all
|
|
endef
|
|
|
|
define Package/trafficshaper/description
|
|
Setup QoS rules to limit (or reserve) traffic used by classes of clients.
|
|
Uplink and downlink can be controled (or not controlled) independently.
|
|
Client classes are defined by its network addresses (IPv4 or IPv6). Each
|
|
client class can define absolute or relative (to wan) bandwith, and also
|
|
the use (or not) of spare wan bandwidth when avaiable.
|
|
endef
|
|
|
|
define Package/trafficshaper/conffiles
|
|
/etc/config/trafficshaper
|
|
endef
|
|
|
|
define Build/Compile
|
|
endef
|
|
|
|
define Package/trafficshaper/install
|
|
$(INSTALL_DIR) $(1)/etc/config
|
|
$(INSTALL_CONF) ./files/trafficshaper.conf $(1)/etc/config/trafficshaper
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/trafficshaper.init $(1)/etc/init.d/trafficshaper
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,trafficshaper))
|