Browse Source

Merge remote-tracking branch 'openwrt/master' into libdmapsharing

lilik-openwrt-22.03
W. Michael Petullo 10 years ago
parent
commit
adb3c66d7d
40 changed files with 208 additions and 159 deletions
  1. +3
    -1
      admin/debootstrap/Makefile
  2. +2
    -2
      admin/htop/Makefile
  3. +1
    -1
      admin/monit/Makefile
  4. +2
    -0
      admin/muninlite/Makefile
  5. +2
    -2
      admin/zabbix/Makefile
  6. +2
    -0
      devel/patch/Makefile
  7. +2
    -0
      ipv6/aiccu/Makefile
  8. +3
    -1
      ipv6/tayga/Makefile
  9. +1
    -0
      libs/engine_pkcs11/Makefile
  10. +1
    -1
      libs/flac/Makefile
  11. +4
    -1
      libs/libexif/Makefile
  12. +1
    -1
      libs/libid3tag/Makefile
  13. +1
    -1
      libs/libogg/Makefile
  14. +2
    -0
      libs/libowfat/Makefile
  15. +2
    -0
      libs/libp11/Makefile
  16. +4
    -1
      libs/libssh2/Makefile
  17. +1
    -1
      libs/libvorbis/Makefile
  18. +1
    -1
      libs/libvorbisidec/Makefile
  19. +6
    -3
      libs/libxslt/Makefile
  20. +4
    -1
      libs/tiff/Makefile
  21. +2
    -0
      mail/dovecot/Makefile
  22. +1
    -1
      multimedia/ffmpeg/Makefile
  23. +2
    -2
      multimedia/minidlna/Makefile
  24. +2
    -0
      net/freeradius2/Makefile
  25. +5
    -4
      net/mwan3-luci/Makefile
  26. +5
    -3
      net/mwan3/Makefile
  27. +93
    -93
      net/mwan3/files/etc/hotplug.d/iface/15-mwan3
  28. +0
    -1
      net/mwan3/files/etc/init.d/mwan3
  29. +33
    -34
      net/mwan3/files/usr/sbin/mwan3
  30. +1
    -0
      net/opentracker/Makefile
  31. +2
    -0
      net/rsync/Makefile
  32. +2
    -0
      net/xl2tpd/Makefile
  33. +1
    -1
      sound/lame/Makefile
  34. +2
    -0
      sound/mpc/Makefile
  35. +3
    -1
      sound/pulseaudio/Makefile
  36. +1
    -1
      sound/sox/Makefile
  37. +2
    -0
      utils/ccid/Makefile
  38. +2
    -0
      utils/mktorrent/Makefile
  39. +2
    -0
      utils/opensc/Makefile
  40. +2
    -0
      utils/pcsc-lite/Makefile

+ 3
- 1
admin/debootstrap/Makefile View File

@ -1,6 +1,6 @@
# #
# Copyright (C) 2010 Gianluigi Tiesi <sherpya@netfarm.it> # Copyright (C) 2010 Gianluigi Tiesi <sherpya@netfarm.it>
# Copyright (C) 2011-2013 OpenWrt.org
# Copyright (C) 2011-2014 OpenWrt.org
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -16,6 +16,8 @@ PKG_MAINTAINER=Daniel Golle <daniel@makrotopia.org>
PKG_SOURCE:=$(PKG_NAME)-udeb_$(PKG_VERSION)_all.udeb PKG_SOURCE:=$(PKG_NAME)-udeb_$(PKG_VERSION)_all.udeb
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/d/debootstrap PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/d/debootstrap
PKG_MD5SUM:=6d4e3b97981b9e0bb86f49d8edac91af PKG_MD5SUM:=6d4e3b97981b9e0bb86f49d8edac91af
PKG_LICENSE:=Unique
PKG_LICENSE_FILES:=debian/copyright
UNPACK_CMD=ar -p "$(DL_DIR)/$(PKG_SOURCE)" data.tar.xz | xzcat | tar -C $(1) -xf - UNPACK_CMD=ar -p "$(DL_DIR)/$(PKG_SOURCE)" data.tar.xz | xzcat | tar -C $(1) -xf -


+ 2
- 2
admin/htop/Makefile View File

@ -1,5 +1,5 @@
# #
# Copyright (C) 2007-2012 OpenWrt.org
# Copyright (C) 2007-2014 OpenWrt.org
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -16,7 +16,7 @@ PKG_SOURCE_URL:=http://hisham.hm/htop/releases/$(PKG_VERSION)/
PKG_MD5SUM:=e768b9b55c033d9c1dffda72db3a6ac7 PKG_MD5SUM:=e768b9b55c033d9c1dffda72db3a6ac7
PKG_LICENSE:=GPL-2.0 PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=
PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1


+ 1
- 1
admin/monit/Makefile View File

@ -16,7 +16,7 @@ PKG_SOURCE_URL:=http://mmonit.com/monit/dist
PKG_MD5SUM:=9467328f1da0b644a766a387443db2ea PKG_MD5SUM:=9467328f1da0b644a766a387443db2ea
PKG_LICENSE:=AGPL-3.0 PKG_LICENSE:=AGPL-3.0
PKG_LICENSE_FILES:=
PKG_LICENSE_FILES:=COPYING
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
PKG_INSTALL:=1 PKG_INSTALL:=1


+ 2
- 0
admin/muninlite/Makefile View File

@ -14,6 +14,8 @@ PKG_RELEASE:=5
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/$(PKG_NAME) PKG_SOURCE_URL:=@SF/$(PKG_NAME)
PKG_MD5SUM:=a8cc86f0cc536a6c22dc298f4ed55339 PKG_MD5SUM:=a8cc86f0cc536a6c22dc298f4ed55339
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk


+ 2
- 2
admin/zabbix/Makefile View File

@ -15,8 +15,8 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/zabbix PKG_SOURCE_URL:=@SF/zabbix
PKG_MD5SUM:=e7b74a0208743f743585d9cc1d46eccf PKG_MD5SUM:=e7b74a0208743f743585d9cc1d46eccf
PKG_LICENSE:=GPLv2
PKG_LICENSE_FILES:=
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING
PKG_INSTALL:=1 PKG_INSTALL:=1


+ 2
- 0
devel/patch/Makefile View File

@ -14,6 +14,8 @@ PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/patch PKG_SOURCE_URL:=@GNU/patch
PKG_MD5SUM:=e9ae5393426d3ad783a300a338c09b72 PKG_MD5SUM:=e9ae5393426d3ad783a300a338c09b72
PKG_LICENSE:=GPL-3.0+
PKG_LICENSE_FILES:=COPYING
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk


+ 2
- 0
ipv6/aiccu/Makefile View File

@ -14,6 +14,8 @@ PKG_RELEASE:=11
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.sixxs.net/archive/sixxs/aiccu/unix PKG_SOURCE_URL:=http://www.sixxs.net/archive/sixxs/aiccu/unix
PKG_MD5SUM:=c9bcc83644ed788e22a7c3f3d4021350 PKG_MD5SUM:=c9bcc83644ed788e22a7c3f3d4021350
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=doc/LICENSE
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)


+ 3
- 1
ipv6/tayga/Makefile View File

@ -9,8 +9,10 @@ PKG_RELEASE:=2
PKG_SOURCE:=tayga-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=tayga-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://www.litech.org/tayga/ PKG_SOURCE_URL:=http://www.litech.org/tayga/
PKG_MD5SUM:=7a7b24165ce008df772f398d86fa280e PKG_MD5SUM:=7a7b24165ce008df772f398d86fa280e
PKG_CAT:=bzcat
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING
PKG_CAT:=bzcat
PKG_BUILD_DIR:=$(BUILD_DIR)/tayga-$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/tayga-$(PKG_VERSION)
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf


+ 1
- 0
libs/engine_pkcs11/Makefile View File

@ -11,6 +11,7 @@ PKG_NAME:=engine_pkcs11
PKG_VERSION:=20131021 PKG_VERSION:=20131021
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=LGPL-2.1+
PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_RELEASE=$(PKG_SOURCE_VERSION)


+ 1
- 1
libs/flac/Makefile View File

@ -18,7 +18,7 @@ PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_LICENSE:=GFDLv1.2 GPLv2 LGPLv2.1 BSD-3c
PKG_LICENSE:=GFDL-1.2 GPL-2 LGPL-2.1 BSD-3-Clause
PKG_LICENSE_FILES:=README COPYING.FDL COPYING.GPL COPYING.LGPL COPYING.Xiph PKG_LICENSE_FILES:=README COPYING.FDL COPYING.GPL COPYING.LGPL COPYING.Xiph
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf


+ 4
- 1
libs/libexif/Makefile View File

@ -1,5 +1,5 @@
# #
# Copyright (C) 2006-2010 OpenWrt.org
# Copyright (C) 2006-2014 OpenWrt.org
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -15,6 +15,9 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/libexif PKG_SOURCE_URL:=@SF/libexif
PKG_MD5SUM:=27339b89850f28c8f1c237f233e05b27 PKG_MD5SUM:=27339b89850f28c8f1c237f233e05b27
PKG_LICENSE:=LGPL-2.1
PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1


+ 1
- 1
libs/libid3tag/Makefile View File

@ -16,7 +16,7 @@ PKG_SOURCE_URL:=@SF/mad
PKG_MD5SUM:=e5808ad997ba32c498803822078748c3 PKG_MD5SUM:=e5808ad997ba32c498803822078748c3
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=GPLv2
PKG_LICENSE:=GPL-2
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf


+ 1
- 1
libs/libogg/Makefile View File

@ -16,7 +16,7 @@ PKG_SOURCE_URL:=http://downloads.xiph.org/releases/ogg/
PKG_MD5SUM:=5c3a34309d8b98640827e5d0991a4015 PKG_MD5SUM:=5c3a34309d8b98640827e5d0991a4015
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=BSD-3c
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf


+ 2
- 0
libs/libowfat/Makefile View File

@ -17,6 +17,8 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://dl.fefe.de PKG_SOURCE_URL:=http://dl.fefe.de
PKG_MD5SUM:=6bbee9a86506419657d87123b7a6f2c1 PKG_MD5SUM:=6bbee9a86506419657d87123b7a6f2c1
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk


+ 2
- 0
libs/libp11/Makefile View File

@ -11,6 +11,8 @@ PKG_NAME:=libp11
PKG_VERSION:=20131021 PKG_VERSION:=20131021
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=LGPL-2.1+
PKG_LICENSE_FILES:=COPYING
PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_RELEASE=$(PKG_SOURCE_VERSION)


+ 4
- 1
libs/libssh2/Makefile View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libssh2 PKG_NAME:=libssh2
PKG_VERSION:=1.4.3 PKG_VERSION:=1.4.3
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.libssh2.org/download PKG_SOURCE_URL:=http://www.libssh2.org/download
@ -17,6 +17,9 @@ PKG_MD5SUM:=071004c60c5d6f90354ad1b701013a0b
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_LICENSE:=BSD
PKG_LICENSE_FILES:=COPYING
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
define Package/libssh2 define Package/libssh2


+ 1
- 1
libs/libvorbis/Makefile View File

@ -16,7 +16,7 @@ PKG_SOURCE_URL:=http://downloads.xiph.org/releases/vorbis/
PKG_MD5SUM:=55f2288055e44754275a17c9a2497391 PKG_MD5SUM:=55f2288055e44754275a17c9a2497391
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=BSD-3c
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf


+ 1
- 1
libs/libvorbisidec/Makefile View File

@ -16,7 +16,7 @@ PKG_SOURCE_URL:=http://ftp.de.debian.org/debian/pool/main/libv/libvorbisidec/
PKG_MD5SUM:=4190859414c5d6760e316b5cf00fe7c5 PKG_MD5SUM:=4190859414c5d6760e316b5cf00fe7c5
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=BSD-3c
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf


+ 6
- 3
libs/libxslt/Makefile View File

@ -9,14 +9,17 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libxslt PKG_NAME:=libxslt
PKG_VERSION:=1.1.28 PKG_VERSION:=1.1.28
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:= \ PKG_SOURCE_URL:= \
¨ http://xmlsoft.org/sources/ \
http://xmlsoft.org/sources/ \
ftp://fr.rpmfind.net/pub/libxml/ ftp://fr.rpmfind.net/pub/libxml/
PKG_MD5SUM:=9667bf6f9310b957254fdcf6596600b7 PKG_MD5SUM:=9667bf6f9310b957254fdcf6596600b7
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=Jiri Slachta <slachta@cesnet.cz> PKG_MAINTAINER:=Jiri Slachta <slachta@cesnet.cz>
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
@ -45,7 +48,7 @@ define Package/libexslt
endef endef
define Package/libexslt/description define Package/libexslt/description
A extention for XSLT.
An extension for XSLT.
endef endef
define Package/xsltproc define Package/xsltproc


+ 4
- 1
libs/tiff/Makefile View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=tiff PKG_NAME:=tiff
PKG_VERSION:=4.0.3 PKG_VERSION:=4.0.3
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://download.osgeo.org/libtiff PKG_SOURCE_URL:=http://download.osgeo.org/libtiff
@ -18,6 +18,9 @@ PKG_MD5SUM:=051c1068e6a0627f461948c365290410
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_REMOVE_FILES:=autogen.sh aclocal.m4 PKG_REMOVE_FILES:=autogen.sh aclocal.m4
PKG_LICENSE:=BSD
PKG_LICENSE_FILES:=COPYRIGHT
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_CONFIG_DEPENDS:=CONFIG_PACKAGE_libtiffxx PKG_CONFIG_DEPENDS:=CONFIG_PACKAGE_libtiffxx


+ 2
- 0
mail/dovecot/Makefile View File

@ -14,6 +14,8 @@ PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.dovecot.org/releases/2.2 PKG_SOURCE_URL:=http://www.dovecot.org/releases/2.2
PKG_MD5SUM:=a3eb1c0b1822c4f2b0fe9247776baa71 PKG_MD5SUM:=a3eb1c0b1822c4f2b0fe9247776baa71
PKG_LICENSE:=LGPL-2.1 MIT BSD-3-Clause Unique
PKG_LICENSE_FILES:=COPYING COPYING.LGPL COPYING.MIT
PKG_BUILD_DEPENDS:=libiconv PKG_BUILD_DEPENDS:=libiconv


+ 1
- 1
multimedia/ffmpeg/Makefile View File

@ -16,7 +16,7 @@ PKG_SOURCE_URL:=http://ffmpeg.org/releases/
PKG_MD5SUM:=ea25fc252c132141f12988ed5506bfe8 PKG_MD5SUM:=ea25fc252c132141f12988ed5506bfe8
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=LGPLv2.1+ GPLv2+ LGPLv3
PKG_LICENSE:=LGPL-2.1+ GPL-2+ LGPL-3
PKG_LICENSE_FILES:=COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 COPYING.LGPLv3 PKG_LICENSE_FILES:=COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 COPYING.LGPLv3
FFMPEG_CUSTOM_ENCODERS:= \ FFMPEG_CUSTOM_ENCODERS:= \


+ 2
- 2
multimedia/minidlna/Makefile View File

@ -14,11 +14,11 @@ PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/minidlna PKG_SOURCE_URL:=@SF/minidlna
PKG_MD5SUM:=879027192c89e5376cdd2ae2d1aa33b4 PKG_MD5SUM:=879027192c89e5376cdd2ae2d1aa33b4
PKG_LICENSE:=GPL-2.0 BSD-3-Clause
PKG_LICENSE_FILES:=COPYING LICENCE.miniupnpd
PKG_MAINTAINER:=Knyazkov Dmitry <medavedik@gmail.com> PKG_MAINTAINER:=Knyazkov Dmitry <medavedik@gmail.com>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILE:=COPYING
PKG_BUILD_PARALLEL:=0 PKG_BUILD_PARALLEL:=0
PKG_BUILD_DEPENDS:=util-linux PKG_BUILD_DEPENDS:=util-linux


+ 2
- 0
net/freeradius2/Makefile View File

@ -15,6 +15,8 @@ PKG_SOURCE:=freeradius-server-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/freeradius/ PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/freeradius/
PKG_MD5SUM:=40535bace507d7a3134c3d858f3cbc5a PKG_MD5SUM:=40535bace507d7a3134c3d858f3cbc5a
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYRIGHT LICENSE
PKG_BUILD_DIR:=$(BUILD_DIR)/freeradius-server-$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/freeradius-server-$(PKG_VERSION)
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf


+ 5
- 4
net/mwan3-luci/Makefile View File

@ -8,8 +8,8 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-mwan3 PKG_NAME:=luci-app-mwan3
PKG_VERSION:=1.2
PKG_RELEASE:=19
PKG_VERSION:=1.3
PKG_RELEASE:=1
PKG_MAINTAINER:=Aedan Renner <chipdankly@gmail.com> PKG_MAINTAINER:=Aedan Renner <chipdankly@gmail.com>
PKG_LICENSE:=GPLv2 PKG_LICENSE:=GPLv2
@ -19,14 +19,15 @@ define Package/luci-app-mwan3
SECTION:=LuCI SECTION:=LuCI
CATEGORY:=LuCI CATEGORY:=LuCI
SUBMENU:=3. Applications SUBMENU:=3. Applications
TITLE:=LuCI support for MWAN3 Multiwan hotplug script with connection tracking support
TITLE:=LuCI support for the MWAN3 multiwan hotplug script
DEPENDS:=+mwan3 DEPENDS:=+mwan3
PKGARCH:=all PKGARCH:=all
MAINTAINER:=Aedan Renner <chipdankly@gmail.com> MAINTAINER:=Aedan Renner <chipdankly@gmail.com>
endef endef
define Package/luci-app-mwan3/description define Package/luci-app-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.
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 endef
define Build/Compile define Build/Compile


+ 5
- 3
net/mwan3/Makefile View File

@ -8,8 +8,8 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=mwan3 PKG_NAME:=mwan3
PKG_VERSION:=1.4
PKG_RELEASE:=22
PKG_VERSION:=1.5
PKG_RELEASE:=1
PKG_MAINTAINER:=Jeroen Louwes <jeroen.louwes@gmail.com> PKG_MAINTAINER:=Jeroen Louwes <jeroen.louwes@gmail.com>
PKG_LICENSE:=GPLv2 PKG_LICENSE:=GPLv2
@ -26,7 +26,9 @@ define Package/mwan3
endef endef
define Package/mwan3/description 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.
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 endef
define Package/mwan3/conffiles define Package/mwan3/conffiles


+ 93
- 93
net/mwan3/files/etc/hotplug.d/iface/15-mwan3 View File

@ -6,68 +6,61 @@ mwan3_get_iface_id()
[ "$1" == "$INTERFACE" ] && iface_id=$iface_count [ "$1" == "$INTERFACE" ] && iface_id=$iface_count
} }
mwan3_get_route_args()
{
route_args=$(ip -4 route list dev $DEVICE default | head -1 | sed '/.*via \([^ ]*\) .*$/!d;s//\1/;q' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}')
[ -n "$route_args" ] && route_args="via $route_args"
route_args="nexthop $route_args dev $DEVICE"
}
mwan3_set_general_iptables() mwan3_set_general_iptables()
{ {
if ! iptables -S mwan3_ifaces -t mangle &> /dev/null; then
iptables -N mwan3_ifaces -t mangle
if ! $IPT -S mwan3_ifaces &> /dev/null; then
$IPT -N mwan3_ifaces
fi fi
if ! iptables -S mwan3_rules -t mangle &> /dev/null; then
iptables -N mwan3_rules -t mangle
if ! $IPT -S mwan3_rules &> /dev/null; then
$IPT -N mwan3_rules
fi fi
if ! iptables -S mwan3_connected -t mangle &> /dev/null; then
iptables -N mwan3_connected -t mangle
if ! $IPT -S mwan3_connected &> /dev/null; then
$IPT -N mwan3_connected
fi fi
if ! iptables -S mwan3_hook -t mangle &> /dev/null; then
iptables -N mwan3_hook -t mangle
iptables -A mwan3_hook -t mangle -j CONNMARK --restore-mark --nfmask 0xff00 --ctmask 0xff00
iptables -A mwan3_hook -t mangle -m mark --mark 0x0/0xff00 -j mwan3_ifaces
iptables -A mwan3_hook -t mangle -m mark --mark 0x0/0xff00 -j mwan3_connected
iptables -A mwan3_hook -t mangle -m mark --mark 0x0/0xff00 -j mwan3_rules
iptables -A mwan3_hook -t mangle -j CONNMARK --save-mark --nfmask 0xff00 --ctmask 0xff00
if ! $IPT -S mwan3_hook &> /dev/null; then
$IPT -N mwan3_hook
$IPT -A mwan3_hook -j CONNMARK --restore-mark --nfmask 0xff00 --ctmask 0xff00
$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_ifaces
$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_connected
$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_rules
$IPT -A mwan3_hook -j CONNMARK --save-mark --nfmask 0xff00 --ctmask 0xff00
fi fi
if ! iptables -S mwan3_track_hook -t mangle &> /dev/null; then
iptables -N mwan3_track_hook -t mangle
if ! $IPT -S mwan3_track_hook &> /dev/null; then
$IPT -N mwan3_track_hook
fi fi
if ! iptables -S PREROUTING -t mangle | grep mwan3_hook &> /dev/null; then
iptables -A PREROUTING -t mangle -j mwan3_hook
if ! $IPT -S PREROUTING | grep mwan3_hook &> /dev/null; then
$IPT -A PREROUTING -j mwan3_hook
fi fi
if ! iptables -S OUTPUT -t mangle | grep mwan3_hook &> /dev/null; then
iptables -A OUTPUT -t mangle -j mwan3_hook
if ! $IPT -S OUTPUT | grep mwan3_hook &> /dev/null; then
$IPT -A OUTPUT -j mwan3_hook
fi fi
if ! iptables -S OUTPUT -t mangle | grep mwan3_track_hook &> /dev/null; then
iptables -A OUTPUT -t mangle -j mwan3_track_hook
if ! $IPT -S OUTPUT | grep mwan3_track_hook &> /dev/null; then
$IPT -A OUTPUT -j mwan3_track_hook
fi fi
iptables -F mwan3_rules -t mangle
$IPT -F mwan3_rules
} }
mwan3_set_connected_iptables() mwan3_set_connected_iptables()
{ {
local connected_networks local connected_networks
if iptables -S mwan3_connected -t mangle &> /dev/null; then
iptables -F mwan3_connected -t mangle
if $IPT -S mwan3_connected &> /dev/null; then
$IPT -F mwan3_connected
for connected_networks in $(ip -4 route | awk '{print $1}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do
iptables -A mwan3_connected -t mangle -d $connected_networks -m mark --mark 0x0/0xff00 -j MARK --set-xmark 0xff00/0xff00
for connected_networks in $($IP route | awk '{print $1}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do
$IPT -A mwan3_connected -d $connected_networks -m mark --mark 0x0/0xff00 -j MARK --set-xmark 0xff00/0xff00
done done
iptables -I mwan3_connected -t mangle -d 224.0.0.0/3 -m mark --mark 0x0/0xff00 -j MARK --set-xmark 0xff00/0xff00
iptables -I mwan3_connected -t mangle -d 127.0.0.0/8 -m mark --mark 0x0/0xff00 -j MARK --set-xmark 0xff00/0xff00
$IPT -I mwan3_connected -d 224.0.0.0/3 -m mark --mark 0x0/0xff00 -j MARK --set-xmark 0xff00/0xff00
$IPT -I mwan3_connected -d 127.0.0.0/8 -m mark --mark 0x0/0xff00 -j MARK --set-xmark 0xff00/0xff00
fi fi
} }
@ -75,56 +68,56 @@ mwan3_set_iface_iptables()
{ {
local local_net local_nets local local_net local_nets
local_net=$(ip -4 route list dev $DEVICE scope link | awk '{print $1}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}')
local_net=$($IP route list dev $DEVICE scope link | awk '{print $1}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}')
if ! iptables -S mwan3_iface_$INTERFACE -t mangle &> /dev/null; then
iptables -N mwan3_iface_$INTERFACE -t mangle
if ! $IPT -S mwan3_iface_$INTERFACE &> /dev/null; then
$IPT -N mwan3_iface_$INTERFACE
fi fi
iptables -F mwan3_iface_$INTERFACE -t mangle
iptables -D mwan3_ifaces -t mangle -i $DEVICE -m mark --mark 0x0/0xff00 -j mwan3_iface_$INTERFACE &> /dev/null
$IPT -F mwan3_iface_$INTERFACE
$IPT -D mwan3_ifaces -i $DEVICE -m mark --mark 0x0/0xff00 -j mwan3_iface_$INTERFACE &> /dev/null
if [ $ACTION == "ifup" ]; then if [ $ACTION == "ifup" ]; then
if [ -n "$local_net" ]; then if [ -n "$local_net" ]; then
for local_nets in $local_net ; do for local_nets in $local_net ; do
if [ $ACTION == "ifup" ]; then if [ $ACTION == "ifup" ]; then
iptables -I mwan3_iface_$INTERFACE -t mangle -s $local_net -m mark --mark 0x0/0xff00 -m comment --comment "$INTERFACE" -j MARK --set-xmark 0xff00/0xff00
$IPT -I mwan3_iface_$INTERFACE -s $local_net -m mark --mark 0x0/0xff00 -m comment --comment "$INTERFACE" -j MARK --set-xmark 0xff00/0xff00
fi fi
done done
fi fi
iptables -A mwan3_iface_$INTERFACE -t mangle -m mark --mark 0x0/0xff00 -m comment --comment "$INTERFACE" -j MARK --set-xmark $(($iface_id*256))/0xff00
iptables -A mwan3_ifaces -t mangle -i $DEVICE -m mark --mark 0x0/0xff00 -j mwan3_iface_$INTERFACE
$IPT -A mwan3_iface_$INTERFACE -m mark --mark 0x0/0xff00 -m comment --comment "$INTERFACE" -j MARK --set-xmark $(($iface_id*256))/0xff00
$IPT -A mwan3_ifaces -i $DEVICE -m mark --mark 0x0/0xff00 -j mwan3_iface_$INTERFACE
fi fi
if [ $ACTION == "ifdown" ]; then if [ $ACTION == "ifdown" ]; then
iptables -X mwan3_iface_$INTERFACE -t mangle
$IPT -X mwan3_iface_$INTERFACE
fi fi
} }
mwan3_set_iface_route() mwan3_set_iface_route()
{ {
ip -4 route flush table $iface_id
[ $ACTION == "ifup" ] && ip -4 route add table $iface_id default $route_args
$IP route flush table $iface_id
[ $ACTION == "ifup" ] && $IP route add table $iface_id default $route_args
} }
mwan3_set_iface_rules() mwan3_set_iface_rules()
{ {
while [ -n "$(ip -4 rule list | awk '$1 == "'$(($iface_id+1000)):'"')" ]; do
ip -4 rule del pref $(($iface_id+1000))
while [ -n "$($IP rule list | awk '$1 == "'$(($iface_id+1000)):'"')" ]; do
$IP rule del pref $(($iface_id+1000))
done done
while [ -n "$(ip -4 rule list | awk '$1 == "'$(($iface_id+2000)):'"')" ]; do
ip -4 rule del pref $(($iface_id+2000))
while [ -n "$($IP rule list | awk '$1 == "'$(($iface_id+2000)):'"')" ]; do
$IP rule del pref $(($iface_id+2000))
done done
while [ -n "$(ip -4 rule list | awk '$1 == "2254:"')" ]; do
ip -4 rule del pref 2254
while [ -n "$($IP rule list | awk '$1 == "2254:"')" ]; do
$IP rule del pref 2254
done done
[ $ACTION == "ifup" ] && ip -4 rule add pref $(($iface_id+1000)) iif $DEVICE lookup main
[ $ACTION == "ifup" ] && ip -4 rule add pref $(($iface_id+2000)) fwmark $(($iface_id*256))/0xff00 lookup $iface_id
ip rule add pref 2254 fwmark 0xfe00/0xff00 unreachable
[ $ACTION == "ifup" ] && $IP rule add pref $(($iface_id+1000)) iif $DEVICE lookup main
[ $ACTION == "ifup" ] && $IP rule add pref $(($iface_id+2000)) fwmark $(($iface_id*256))/0xff00 lookup $iface_id
$IP rule add pref 2254 fwmark 0xfe00/0xff00 unreachable
} }
mwan3_track() mwan3_track()
@ -145,28 +138,28 @@ mwan3_track()
config_get down $INTERFACE down 5 config_get down $INTERFACE down 5
config_get up $INTERFACE up 5 config_get up $INTERFACE up 5
if ! iptables -S mwan3_track_$INTERFACE -t mangle &> /dev/null; then
iptables -N mwan3_track_$INTERFACE -t mangle
iptables -A mwan3_track_hook -t mangle -p icmp -m icmp --icmp-type 8 -m length --length 32 -j mwan3_track_$INTERFACE
if ! $IPT -S mwan3_track_$INTERFACE &> /dev/null; then
$IPT -N mwan3_track_$INTERFACE
$IPT -A mwan3_track_hook -p icmp -m icmp --icmp-type 8 -m length --length 32 -j mwan3_track_$INTERFACE
fi fi
iptables -F mwan3_track_$INTERFACE -t mangle
$IPT -F mwan3_track_$INTERFACE
for track_ip in $track_ips; do for track_ip in $track_ips; do
iptables -A mwan3_track_$INTERFACE -t mangle -d $track_ip -j MARK --set-xmark 0xff00/0xff00
$IPT -A mwan3_track_$INTERFACE -d $track_ip -j MARK --set-xmark 0xff00/0xff00
done done
[ -x /usr/sbin/mwan3track ] && /usr/sbin/mwan3track $INTERFACE $DEVICE $reliability $count $timeout $interval $down $up $track_ips & [ -x /usr/sbin/mwan3track ] && /usr/sbin/mwan3track $INTERFACE $DEVICE $reliability $count $timeout $interval $down $up $track_ips &
else else
iptables -D mwan3_track_hook -t mangle -p icmp -m icmp --icmp-type 8 -m length --length 32 -j mwan3_track_$INTERFACE &> /dev/null
iptables -F mwan3_track_$INTERFACE -t mangle &> /dev/null
iptables -X mwan3_track_$INTERFACE -t mangle &> /dev/null
$IPT -D mwan3_track_hook -p icmp -m icmp --icmp-type 8 -m length --length 32 -j mwan3_track_$INTERFACE &> /dev/null
$IPT -F mwan3_track_$INTERFACE &> /dev/null
$IPT -X mwan3_track_$INTERFACE &> /dev/null
fi fi
} }
mwan3_set_policy() mwan3_set_policy()
{ {
local iface_count iface_id metric probability weight
local iface_count iface_id INTERFACE metric probability weight
config_get INTERFACE $1 interface config_get INTERFACE $1 interface
config_get metric $1 metric 1 config_get metric $1 metric 1
@ -178,12 +171,12 @@ mwan3_set_policy()
[ -n "$iface_id" ] || return 0 [ -n "$iface_id" ] || return 0
if iptables -S mwan3_iface_$INTERFACE -t mangle &> /dev/null; then
if $IPT -S mwan3_iface_$INTERFACE &> /dev/null; then
if [ "$metric" -lt "$lowest_metric" ]; then if [ "$metric" -lt "$lowest_metric" ]; then
total_weight=$weight total_weight=$weight
iptables -F mwan3_policy_$policy -t mangle
iptables -A mwan3_policy_$policy -t mangle -m mark --mark 0x0/0xff00 -m comment --comment "$INTERFACE $weight $weight" -j MARK --set-xmark $(($iface_id*256))/0xff00
$IPT -F mwan3_policy_$policy
$IPT -A mwan3_policy_$policy -m mark --mark 0x0/0xff00 -m comment --comment "$INTERFACE $weight $weight" -j MARK --set-xmark $(($iface_id*256))/0xff00
lowest_metric=$metric lowest_metric=$metric
@ -204,7 +197,7 @@ mwan3_set_policy()
probability="-m statistic --mode random --probability $probability" probability="-m statistic --mode random --probability $probability"
iptables -I mwan3_policy_$policy -t mangle -m mark --mark 0x0/0xff00 $probability -m comment --comment "$INTERFACE $weight $total_weight" -j MARK --set-xmark $(($iface_id*256))/0xff00
$IPT -I mwan3_policy_$policy -m mark --mark 0x0/0xff00 $probability -m comment --comment "$INTERFACE $weight $total_weight" -j MARK --set-xmark $(($iface_id*256))/0xff00
fi fi
fi fi
} }
@ -216,22 +209,22 @@ mwan3_set_policies_iptables()
policy=$1 policy=$1
if [ "$policy" != $(echo "$policy" | cut -c1-15) ]; then if [ "$policy" != $(echo "$policy" | cut -c1-15) ]; then
logger -t mwan3 -p warn "Policy $policy exceeds max of 15 chars. Not setting policy" && return 0
$LOG warn "Policy $policy exceeds max of 15 chars. Not setting policy" && return 0
fi fi
if ! iptables -S mwan3_policy_$policy -t mangle &> /dev/null; then
iptables -N mwan3_policy_$policy -t mangle
if ! $IPT -S mwan3_policy_$policy &> /dev/null; then
$IPT -N mwan3_policy_$policy
fi fi
iptables -F mwan3_policy_$policy -t mangle
iptables -A mwan3_policy_$policy -t mangle -m mark --mark 0x0/0xff00 -m comment --comment "unreachable" -j MARK --set-xmark 0xfe00/0xff00
$IPT -F mwan3_policy_$policy
$IPT -A mwan3_policy_$policy -m mark --mark 0x0/0xff00 -m comment --comment "unreachable" -j MARK --set-xmark 0xfe00/0xff00
lowest_metric=256 lowest_metric=256
total_weight=0 total_weight=0
config_list_foreach $policy use_member mwan3_set_policy config_list_foreach $policy use_member mwan3_set_policy
iptables -X $policy -t mangle &> /dev/null
$IPT -X $policy &> /dev/null
} }
mwan3_set_user_rules_iptables() mwan3_set_user_rules_iptables()
@ -256,10 +249,10 @@ mwan3_set_user_rules_iptables()
case $proto in case $proto in
tcp|udp) tcp|udp)
iptables -A mwan3_rules -t mangle -p $proto -s $src_ip -d $dest_ip -m multiport --sports $src_port -m multiport --dports $dest_port -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null
$IPT -A mwan3_rules -p $proto -s $src_ip -d $dest_ip -m multiport --sports $src_port -m multiport --dports $dest_port -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null
;; ;;
*) *)
iptables -A mwan3_rules -t mangle -p $proto -s $src_ip -d $dest_ip -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null
$IPT -A mwan3_rules -p $proto -s $src_ip -d $dest_ip -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null
;; ;;
esac esac
fi fi
@ -269,45 +262,41 @@ mwan3_ifupdown()
{ {
local counter enabled iface_count iface_id route_args wan_metric local counter enabled iface_count iface_id route_args wan_metric
[ -n "$DEVICE" ] || exit 0
[ -n "$INTERFACE" ] || exit 0
[ "$(uci get -P /var/state mwan3.$INTERFACE 2> /dev/null)" == "interface" ] || return 0
config_load mwan3 config_load mwan3
config_foreach mwan3_get_iface_id interface
[ -n "$iface_id" ] || return 0
[ "$iface_count" -le 250 ] || return 0
unset iface_count
config_get enabled $INTERFACE enabled 0 config_get enabled $INTERFACE enabled 0
counter=0 counter=0
if [ $ACTION == "ifup" ]; then if [ $ACTION == "ifup" ]; then
[ "$enabled" -eq 1 ] || exit 0
[ "$enabled" -eq 1 ] || return 0
while [ -z "$(ip -4 route list dev $DEVICE default | head -1)" -a "$counter" -lt 10 ]; do
while [ -z "$($IP route list dev $DEVICE default | head -1)" -a "$counter" -lt 10 ]; do
sleep 1 sleep 1
let counter++ let counter++
if [ "$counter" -ge 10 ]; then if [ "$counter" -ge 10 ]; then
logger -t mwan3 -p warn "Could not find gateway for interface $INTERFACE ($DEVICE)" && exit 0
$LOG warn "Could not find gateway for interface $INTERFACE ($DEVICE)" && return 0
fi fi
done done
mwan3_get_route_args
route_args=$($IP route list dev $DEVICE default | head -1 | sed '/.*via \([^ ]*\) .*$/!d;s//via \1/;q' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}')
route_args="nexthop $route_args dev $DEVICE"
fi fi
while [ "$(pgrep -f -o hotplug-call)" -ne $$ -a "$counter" -lt 60 ]; do while [ "$(pgrep -f -o hotplug-call)" -ne $$ -a "$counter" -lt 60 ]; do
sleep 1 sleep 1
let counter++ let counter++
if [ "$counter" -ge 60 ]; then if [ "$counter" -ge 60 ]; then
logger -t mwan3 -p warn "Timeout waiting for older hotplug processes to finish. $ACTION interface $INTERFACE ($DEVICE) aborted" && exit 0
$LOG warn "Timeout waiting for older hotplug processes to finish. $ACTION interface $INTERFACE ($DEVICE) aborted" && return 0
fi fi
done done
config_foreach mwan3_get_iface_id interface
[ -n "$iface_id" ] || exit 0
[ "$iface_count" -le 250 ] || exit 0
unset iface_count
unset counter
logger -t mwan3 -p notice "$ACTION interface $INTERFACE ($DEVICE)"
$LOG notice "$ACTION interface $INTERFACE ($DEVICE)"
mwan3_set_general_iptables mwan3_set_general_iptables
mwan3_set_iface_iptables mwan3_set_iface_iptables
@ -320,9 +309,20 @@ mwan3_ifupdown()
config_foreach mwan3_set_user_rules_iptables rule config_foreach mwan3_set_user_rules_iptables rule
} }
[ -n "$DEVICE" ] || exit 0
[ -n "$INTERFACE" ] || exit 0
local IP IPT LOG
IP="/usr/sbin/ip -4"
IPT="/usr/sbin/iptables -t mangle -w"
LOG="/usr/bin/logger -t mwan3 -p"
case "$ACTION" in case "$ACTION" in
ifup|ifdown) ifup|ifdown)
mwan3_ifupdown mwan3_ifupdown
mwan3_set_connected_iptables mwan3_set_connected_iptables
;; ;;
esac esac
exit 0

+ 0
- 1
net/mwan3/files/etc/init.d/mwan3 View File

@ -15,6 +15,5 @@ restart() {
} }
boot() { boot() {
# Don't start on boot, mwan3 is started by hotplug event.
return 0 return 0
} }

+ 33
- 34
net/mwan3/files/usr/sbin/mwan3 View File

@ -16,10 +16,13 @@ EOF
EXTRA_COMMANDS="ifdown ifup interfaces policies rules status" EXTRA_COMMANDS="ifdown ifup interfaces policies rules status"
EXTRA_HELP="$(extra_help)" EXTRA_HELP="$(extra_help)"
IP="/usr/sbin/ip -4"
IPT="/usr/sbin/iptables -t mangle -w"
ifdown() ifdown()
{ {
local device
if [ -z "$1" ]; then if [ -z "$1" ]; then
echo "Error: Expecting interface. Usage: mwan3 ifdown <interface>" && exit 0 echo "Error: Expecting interface. Usage: mwan3 ifdown <interface>" && exit 0
fi fi
@ -28,8 +31,6 @@ ifdown()
echo "Error: Too many arguments. Usage: mwan3 ifdown <interface>" && exit 0 echo "Error: Too many arguments. Usage: mwan3 ifdown <interface>" && exit 0
fi fi
local device
device=$(uci get -p /var/state network.$1.ifname) &> /dev/null device=$(uci get -p /var/state network.$1.ifname) &> /dev/null
if [ -e /var/run/mwan3track-$1.pid ] ; then if [ -e /var/run/mwan3track-$1.pid ] ; then
@ -44,6 +45,8 @@ ifdown()
ifup() ifup()
{ {
local device enabled
config_load mwan3 config_load mwan3
if [ -z "$1" ]; then if [ -z "$1" ]; then
@ -53,8 +56,6 @@ ifup()
if [ -n "$2" ]; then if [ -n "$2" ]; then
echo "Too many arguments. Usage: mwan3 ifup <interface>" && exit 0 echo "Too many arguments. Usage: mwan3 ifup <interface>" && exit 0
fi fi
local device enabled
config_get enabled "$1" enabled 0 config_get enabled "$1" enabled 0
@ -67,10 +68,10 @@ ifup()
interfaces() interfaces()
{ {
config_load mwan3
local device enabled iface_id tracking local device enabled iface_id tracking
config_load mwan3
echo "Interface status:" echo "Interface status:"
check_iface_status() check_iface_status()
@ -91,13 +92,13 @@ interfaces()
tracking="down" tracking="down"
fi fi
if [ -n "$(ip rule | awk '$5 == ("'$device'")')" -a -n "$(iptables -S mwan3_iface_$1 -t mangle 2> /dev/null)" -a -n "$(ip -4 route list table $iface_id default dev $device 2> /dev/null)" ]; then
if [ -n "$($IP rule | awk '$5 == ("'$device'")')" -a -n "$($IPT -S mwan3_iface_$1 2> /dev/null)" -a -n "$($IP route list table $iface_id default dev $device 2> /dev/null)" ]; then
if [ -n "$(uci get -p /var/state mwan3.$1.track_ip 2> /dev/null)" ]; then if [ -n "$(uci get -p /var/state mwan3.$1.track_ip 2> /dev/null)" ]; then
echo "Interface $1 is online (tracking $tracking)" echo "Interface $1 is online (tracking $tracking)"
else else
echo "Interface $1 is online" echo "Interface $1 is online"
fi fi
elif [ -n "$(ip rule | awk '$5 == ("'$device'")')" -o -n "$(iptables -S mwan3_iface_$1 -t mangle 2> /dev/null)" -o -n "$(ip -4 route list table $iface_id default dev $device 2> /dev/null)" ]; then
elif [ -n "$($IP rule | awk '$5 == ("'$device'")')" -o -n "$($IPT -S mwan3_iface_$1 2> /dev/null)" -o -n "$($IP route list table $iface_id default dev $device 2> /dev/null)" ]; then
echo "Interface $1 error" echo "Interface $1 error"
else else
if [ "$enabled" -eq 1 ]; then if [ "$enabled" -eq 1 ]; then
@ -119,21 +120,21 @@ policies()
{ {
local percent policy share total_weight weight iface local percent policy share total_weight weight iface
for policy in $(iptables -S -t mangle | awk '{print $2}' | grep mwan3_policy_ | sort -u); do
for policy in $($IPT -S | awk '{print $2}' | grep mwan3_policy_ | sort -u); do
echo "Policy $policy:" | sed 's/mwan3_policy_//g' echo "Policy $policy:" | sed 's/mwan3_policy_//g'
for iface in $(iptables -S $policy -t mangle | cut -s -d'"' -f2 | awk '{print $1}'); do
[ -n "$total_weight" ] || total_weight=$(iptables -S $policy -t mangle | grep "$iface " | cut -s -d'"' -f2 | awk '{print $3}')
for iface in $($IPT -S $policy | cut -s -d'"' -f2 | awk '{print $1}'); do
[ -n "$total_weight" ] || total_weight=$($IPT -S $policy | grep "$iface " | cut -s -d'"' -f2 | awk '{print $3}')
done done
if [ ! -z "${total_weight##*[!0-9]*}" ]; then if [ ! -z "${total_weight##*[!0-9]*}" ]; then
for iface in $(iptables -S $policy -t mangle | cut -s -d'"' -f2 | awk '{print $1}'); do
weight=$(iptables -S $policy -t mangle | grep "$iface " | cut -s -d'"' -f2 | awk '{print $2}')
for iface in $($IPT -S $policy | cut -s -d'"' -f2 | awk '{print $1}'); do
weight=$($IPT -S $policy | grep "$iface " | cut -s -d'"' -f2 | awk '{print $2}')
percent=$(($weight*100/$total_weight)) percent=$(($weight*100/$total_weight))
echo " $iface ($percent%)" echo " $iface ($percent%)"
done done
else else
echo " $(iptables -S $policy -t mangle | sed '/.*--comment \([^ ]*\) .*$/!d;s//\1/;q')"
echo " $($IPT -S $policy | sed '/.*--comment \([^ ]*\) .*$/!d;s//\1/;q')"
fi fi
echo -e echo -e
@ -144,19 +145,17 @@ policies()
} }
rules() rules()
{ {
if [ -n "$(iptables -S mwan3_connected -t mangle 2> /dev/null)" ]; then
if [ -n "$($IPT -S mwan3_connected 2> /dev/null)" ]; then
echo "Known networks:" echo "Known networks:"
echo "destination policy hits" | awk '{ printf "%-19s%-19s%-9s%s\n",$1,$2,$3}'
echo "------------------------------------------------"
iptables -L mwan3_connected -t mangle -n -v 2> /dev/null | tail -n+3 | sed 's/mark.*//' | sed 's/mwan3_policy_//g' | awk '{printf "%-19s%-19s%-9s%s\n",$9,"default",$1}'
echo "destination policy hits" | awk '{ printf "%-19s%-19s%-9s%s\n",$1,$2,$3}' | awk '1; {gsub(".","-")}1'
$IPT -L mwan3_connected -n -v 2> /dev/null | tail -n+3 | sed 's/mark.*//' | sed 's/mwan3_policy_//g' | awk '{printf "%-19s%-19s%-9s%s\n",$9,"default",$1}'
echo -e echo -e
fi fi
if [ -n "$(iptables -S mwan3_rules -t mangle 2> /dev/null)" ]; then
if [ -n "$($IPT -S mwan3_rules 2> /dev/null)" ]; then
echo "Active rules:" echo "Active rules:"
echo "source destination proto src-port dest-port policy hits" | awk '{ printf "%-19s%-19s%-7s%-14s%-14s%-16s%-9s%s\n",$1,$2,$3,$4,$5,$6,$7}'
echo "---------------------------------------------------------------------------------------------------"
iptables -L mwan3_rules -t mangle -n -v 2> /dev/null | tail -n+3 | sed 's/mark.*//' | sed 's/mwan3_policy_//g' | awk '{ printf "%-19s%-19s%-7s%-14s%-14s%-16s%-9s%s\n",$8,$9,$4,$12,$15,$3,$1}'
echo "source destination proto src-port dest-port policy hits" | awk '{ printf "%-19s%-19s%-7s%-14s%-14s%-16s%-9s%s\n",$1,$2,$3,$4,$5,$6,$7}' | awk '1; {gsub(".","-")}1'
$IPT -L mwan3_rules -n -v 2> /dev/null | tail -n+3 | sed 's/mark.*//' | sed 's/mwan3_policy_//g' | awk '{ printf "%-19s%-19s%-7s%-14s%-14s%-16s%-9s%s\n",$8,$9,$4,$12,$15,$3,$1}'
echo -e echo -e
fi fi
} }
@ -181,24 +180,24 @@ stop()
killall mwan3track &> /dev/null killall mwan3track &> /dev/null
rm /var/run/mwan3track-* &> /dev/null rm /var/run/mwan3track-* &> /dev/null
for route in $(ip route list table all | sed 's/.*table \([^ ]*\) .*/\1/' | awk '{print $1}' | awk '{for(i=1;i<=NF;i++) if($i+0>0) if($i+0<255) {print;break}}'); do
ip -4 route flush table $route &> /dev/null
for route in $($IP route list table all | sed 's/.*table \([^ ]*\) .*/\1/' | awk '{print $1}' | awk '{for(i=1;i<=NF;i++) if($i+0>0) if($i+0<255) {print;break}}'); do
$IP route flush table $route &> /dev/null
done done
for rule in $(ip -4 rule list | egrep '^[1-2][0-9]{3}\:' | cut -d ':' -f 1); do
ip -4 rule del pref $rule &> /dev/null
for rule in $($IP rule list | egrep '^[1-2][0-9]{3}\:' | cut -d ':' -f 1); do
$IP rule del pref $rule &> /dev/null
done done
iptables -D PREROUTING -t mangle -j mwan3_hook &> /dev/null
iptables -D OUTPUT -t mangle -j mwan3_hook &> /dev/null
iptables -D OUTPUT -t mangle -j mwan3_track_hook &> /dev/null
$IPT -D PREROUTING -j mwan3_hook &> /dev/null
$IPT -D OUTPUT -j mwan3_hook &> /dev/null
$IPT -D OUTPUT -j mwan3_track_hook &> /dev/null
for table in $(iptables -S -t mangle | awk '{print $2}' | grep mwan3 | sort -u); do
iptables -F $table -t mangle &> /dev/null
for table in $($IPT -S | awk '{print $2}' | grep mwan3 | sort -u); do
$IPT -F $table &> /dev/null
done done
for table in $(iptables -S -t mangle | awk '{print $2}' | grep mwan3 | sort -u); do
iptables -X $table -t mangle &> /dev/null
for table in $($IPT -S | awk '{print $2}' | grep mwan3 | sort -u); do
$IPT -X $table &> /dev/null
done done
} }


+ 1
- 0
net/opentracker/Makefile View File

@ -12,6 +12,7 @@ PKG_VERSION:=20130804
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_REV:=954f5029dfa17734dc408336ef710c192268e8a4 PKG_REV:=954f5029dfa17734dc408336ef710c192268e8a4
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=Beerware
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=git://erdgeist.org/opentracker PKG_SOURCE_URL:=git://erdgeist.org/opentracker


+ 2
- 0
net/rsync/Makefile View File

@ -14,6 +14,8 @@ PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://rsync.samba.org/ftp/rsync/src PKG_SOURCE_URL:=http://rsync.samba.org/ftp/rsync/src
PKG_MD5SUM:=43bd6676f0b404326eee2d63be3cdcfe PKG_MD5SUM:=43bd6676f0b404326eee2d63be3cdcfe
PKG_LICENSE:=GPL-3.0
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=Maxim Storchak <m.storchak@gmail.com> PKG_MAINTAINER:=Maxim Storchak <m.storchak@gmail.com>
PKG_LICENSE:=GPL-3.0 PKG_LICENSE:=GPL-3.0


+ 2
- 0
net/xl2tpd/Makefile View File

@ -11,6 +11,8 @@ PKG_NAME:=xl2tpd
PKG_VERSION:=1.3.6 PKG_VERSION:=1.3.6
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=LICENSE
PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_RELEASE=$(PKG_SOURCE_VERSION)


+ 1
- 1
sound/lame/Makefile View File

@ -19,7 +19,7 @@ PKG_FIXUP:=autoreconf
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=LGPLv2
PKG_LICENSE:=LGPL-2.0
PKG_LICENSE_FILES:=COPYING LICENSE PKG_LICENSE_FILES:=COPYING LICENSE
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk


+ 2
- 0
sound/mpc/Makefile View File

@ -14,6 +14,8 @@ PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://www.musicpd.org/download/mpc/0 PKG_SOURCE_URL:=http://www.musicpd.org/download/mpc/0
PKG_MD5SUM:=d4f37e7e6b32c804a870192d1eb86199 PKG_MD5SUM:=d4f37e7e6b32c804a870192d1eb86199
PKG_LICENSE:=GPL-2.0+
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk


+ 3
- 1
sound/pulseaudio/Makefile View File

@ -1,5 +1,5 @@
# #
# Copyright (C) 2011 OpenWrt.org
# Copyright (C) 2011-2014 OpenWrt.org
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -14,6 +14,8 @@ PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://freedesktop.org/software/pulseaudio/releases/ PKG_SOURCE_URL:=http://freedesktop.org/software/pulseaudio/releases/
PKG_MD5SUM:=c43749838612f4860465e83ed62ca38e PKG_MD5SUM:=c43749838612f4860465e83ed62ca38e
PKG_LICENSE:=LGPL-2.1+
PKG_LICENSE_FILES:=GPL LICENSE
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
PKG_BUILD_DEPENDS:=intltool/host PKG_BUILD_DEPENDS:=intltool/host


+ 1
- 1
sound/sox/Makefile View File

@ -16,7 +16,7 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/sox PKG_SOURCE_URL:=@SF/sox
PKG_MD5SUM:=ff9ca6aca972549de0e80e8e30ed379c PKG_MD5SUM:=ff9ca6aca972549de0e80e8e30ed379c
PKG_LICENSE:=LGPLv2.1 GPLv2
PKG_LICENSE:=LGPL-2.1 GPL-2.0
PKG_LICENSE_FILES:=COPYING LICENSE.LGPL LICENSE.GPL PKG_LICENSE_FILES:=COPYING LICENSE.LGPL LICENSE.GPL
PKG_INSTALL:=1 PKG_INSTALL:=1


+ 2
- 0
utils/ccid/Makefile View File

@ -15,6 +15,8 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/4091 PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/4091
PKG_MD5SUM:=a227a20a0dd034cd4bb7400806a0a2d0 PKG_MD5SUM:=a227a20a0dd034cd4bb7400806a0a2d0
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=LGPL-2.1+
PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=libtool PKG_FIXUP:=libtool
PKG_INSTALL:=1 PKG_INSTALL:=1


+ 2
- 0
utils/mktorrent/Makefile View File

@ -11,6 +11,8 @@ PKG_NAME:=mktorrent
PKG_VERSION:=1.0 PKG_VERSION:=1.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://downloads.sourceforge.net/$(PKG_NAME)/ PKG_SOURCE_URL:=http://downloads.sourceforge.net/$(PKG_NAME)/


+ 2
- 0
utils/opensc/Makefile View File

@ -10,6 +10,8 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=opensc PKG_NAME:=opensc
PKG_VERSION:=20140317 PKG_VERSION:=20140317
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_LICENSE:=LGPL-2.1+
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_RELEASE=$(PKG_SOURCE_VERSION)


+ 2
- 0
utils/pcsc-lite/Makefile View File

@ -15,6 +15,8 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/3991 PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/3991
PKG_MD5SUM:=73502ca4ba6526727f9f49c63d805408 PKG_MD5SUM:=73502ca4ba6526727f9f49c63d805408
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1


Loading…
Cancel
Save