From 996122d6bdbb45744eb9397679a9ef1f737d4e57 Mon Sep 17 00:00:00 2001 From: suyuan <175338101@qq.com> Date: Mon, 21 Aug 2023 03:10:40 +0800 Subject: [PATCH] fix --- 6in4/Makefile | 45 -- 6in4/files/6in4.sh | 149 ----- iproute2/Makefile | 282 ---------- iproute2/patches/100-configure.patch | 12 - iproute2/patches/110-darwin_fixes.patch | 59 -- .../patches/115-add-config-xtlibdir.patch | 12 - .../120-no_arpd_ifstat_rtacct_lnstat.patch | 20 - .../130-no_netem_tipc_dcb_man_vdpa.patch | 14 - iproute2/patches/140-allow_pfifo_fast.patch | 9 - .../patches/140-keep_libmnl_optional.patch | 11 - .../patches/145-keep_libelf_optional.patch | 11 - .../patches/150-keep_libcap_optional.patch | 11 - .../patches/155-keep_tirpc_optional.patch | 11 - iproute2/patches/160-libnetlink-pic.patch | 11 - iproute2/patches/170-ip_tiny.patch | 108 ---- .../patches/175-reduce-dynamic-syms.patch | 45 -- iproute2/patches/180-drop_FAILED_POLICY.patch | 41 -- iproute2/patches/190-fix-nls-rpath-link.patch | 20 - .../patches/195-build_variant_ip_tc.patch | 22 - .../patches/200-drop_libbsd_dependency.patch | 19 - .../patches/300-selinux-configurable.patch | 11 - net-tools/Makefile | 74 --- net-tools/patches/mptcp-support.patch | 338 ----------- netifd/Makefile | 52 -- netifd/files/etc/hotplug.d/iface/00-netstate | 6 - .../etc/hotplug.d/net/20-smp-packet-steering | 67 --- netifd/files/etc/init.d/network | 144 ----- .../etc/uci-defaults/14_migrate-dhcp-release | 23 - netifd/files/etc/udhcpc.user | 1 - netifd/files/lib/netifd/dhcp.script | 120 ---- netifd/files/lib/netifd/proto/dhcp.sh | 89 --- netifd/files/lib/network/config.sh | 76 --- netifd/files/sbin/devstatus | 12 - netifd/files/sbin/ifdown | 1 - netifd/files/sbin/ifstatus | 13 - netifd/files/sbin/ifup | 77 --- netifd/files/usr/share/udhcpc/default.script | 57 -- netmaker-openwrt/LICENSE | 8 - netmaker-openwrt/README.md | 111 ---- netmaker-openwrt/netmaker/Makefile | 93 --- .../netmaker/root/etc/init.d/netclient | 42 -- netmaker-openwrt/scripts/build_ipk.sh | 177 ------ nginx/Config.in | 247 -------- nginx/Config_ssl.in | 239 -------- nginx/Makefile | 532 ------------------ .../files-luci-support/60_nginx-luci-support | 28 - .../70_nginx-luci-support-ssl | 48 -- nginx/files-luci-support/luci_nginx.conf | 51 -- nginx/files-luci-support/luci_nginx_ssl.conf | 66 --- nginx/files-luci-support/luci_uwsgi.conf | 20 - nginx/files/nginx.init | 17 - .../100-no_by_lua_block.patch | 195 ------- nginx/patches/101-feature_test_fix.patch | 116 ---- nginx/patches/102-sizeof_test_fix.patch | 27 - nginx/patches/103-sys_nerr.patch | 12 - nginx/patches/200-config.patch | 18 - .../patches/201-ignore-invalid-options.patch | 12 - nginx/patches/300-max-processes.patch | 11 - 58 files changed, 4143 deletions(-) delete mode 100755 6in4/Makefile delete mode 100755 6in4/files/6in4.sh delete mode 100755 iproute2/Makefile delete mode 100755 iproute2/patches/100-configure.patch delete mode 100755 iproute2/patches/110-darwin_fixes.patch delete mode 100755 iproute2/patches/115-add-config-xtlibdir.patch delete mode 100755 iproute2/patches/120-no_arpd_ifstat_rtacct_lnstat.patch delete mode 100755 iproute2/patches/130-no_netem_tipc_dcb_man_vdpa.patch delete mode 100755 iproute2/patches/140-allow_pfifo_fast.patch delete mode 100755 iproute2/patches/140-keep_libmnl_optional.patch delete mode 100755 iproute2/patches/145-keep_libelf_optional.patch delete mode 100755 iproute2/patches/150-keep_libcap_optional.patch delete mode 100755 iproute2/patches/155-keep_tirpc_optional.patch delete mode 100755 iproute2/patches/160-libnetlink-pic.patch delete mode 100755 iproute2/patches/170-ip_tiny.patch delete mode 100755 iproute2/patches/175-reduce-dynamic-syms.patch delete mode 100755 iproute2/patches/180-drop_FAILED_POLICY.patch delete mode 100755 iproute2/patches/190-fix-nls-rpath-link.patch delete mode 100755 iproute2/patches/195-build_variant_ip_tc.patch delete mode 100755 iproute2/patches/200-drop_libbsd_dependency.patch delete mode 100755 iproute2/patches/300-selinux-configurable.patch delete mode 100755 net-tools/Makefile delete mode 100755 net-tools/patches/mptcp-support.patch delete mode 100755 netifd/Makefile delete mode 100755 netifd/files/etc/hotplug.d/iface/00-netstate delete mode 100755 netifd/files/etc/hotplug.d/net/20-smp-packet-steering delete mode 100755 netifd/files/etc/init.d/network delete mode 100755 netifd/files/etc/uci-defaults/14_migrate-dhcp-release delete mode 100755 netifd/files/etc/udhcpc.user delete mode 100755 netifd/files/lib/netifd/dhcp.script delete mode 100755 netifd/files/lib/netifd/proto/dhcp.sh delete mode 100755 netifd/files/lib/network/config.sh delete mode 100755 netifd/files/sbin/devstatus delete mode 120000 netifd/files/sbin/ifdown delete mode 100755 netifd/files/sbin/ifstatus delete mode 100755 netifd/files/sbin/ifup delete mode 100755 netifd/files/usr/share/udhcpc/default.script delete mode 100755 netmaker-openwrt/LICENSE delete mode 100755 netmaker-openwrt/README.md delete mode 100755 netmaker-openwrt/netmaker/Makefile delete mode 100755 netmaker-openwrt/netmaker/root/etc/init.d/netclient delete mode 100755 netmaker-openwrt/scripts/build_ipk.sh delete mode 100755 nginx/Config.in delete mode 100755 nginx/Config_ssl.in delete mode 100755 nginx/Makefile delete mode 100755 nginx/files-luci-support/60_nginx-luci-support delete mode 100755 nginx/files-luci-support/70_nginx-luci-support-ssl delete mode 100755 nginx/files-luci-support/luci_nginx.conf delete mode 100755 nginx/files-luci-support/luci_nginx_ssl.conf delete mode 100755 nginx/files-luci-support/luci_uwsgi.conf delete mode 100755 nginx/files/nginx.init delete mode 100755 nginx/patches-lua-nginx/100-no_by_lua_block.patch delete mode 100755 nginx/patches/101-feature_test_fix.patch delete mode 100755 nginx/patches/102-sizeof_test_fix.patch delete mode 100755 nginx/patches/103-sys_nerr.patch delete mode 100755 nginx/patches/200-config.patch delete mode 100755 nginx/patches/201-ignore-invalid-options.patch delete mode 100755 nginx/patches/300-max-processes.patch diff --git a/6in4/Makefile b/6in4/Makefile deleted file mode 100755 index d0f2ad30c..000000000 --- a/6in4/Makefile +++ /dev/null @@ -1,45 +0,0 @@ -# -# Copyright (C) 2010-2015 OpenWrt.org -# Copyright (C) 2018-2019 Ycarus (Yannick Chabanois) -# - Added gateway setting -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=6in4 -PKG_VERSION:=270 -PKG_RELEASE:=2 -PKG_LICENSE:=GPL-2.0 - -include $(INCLUDE_DIR)/package.mk - -define Package/6in4 - SECTION:=net - CATEGORY:=Network - DEPENDS:=@IPV6 +kmod-sit +uclient-fetch - TITLE:=IPv6-in-IPv4 configuration support - MAINTAINER:=Jo-Philipp Wich - PKGARCH:=all -endef - -define Package/6in4/description -Provides support for 6in4 tunnels in /etc/config/network. -Refer to http://wiki.openwrt.org/doc/uci/network for -configuration details. -endef - -define Build/Compile -endef - -define Build/Configure -endef - -define Package/6in4/install - $(INSTALL_DIR) $(1)/lib/netifd/proto - $(INSTALL_BIN) ./files/6in4.sh $(1)/lib/netifd/proto/6in4.sh -endef - -$(eval $(call BuildPackage,6in4)) diff --git a/6in4/files/6in4.sh b/6in4/files/6in4.sh deleted file mode 100755 index cf17c86d8..000000000 --- a/6in4/files/6in4.sh +++ /dev/null @@ -1,149 +0,0 @@ -#!/bin/sh -# 6in4.sh - IPv6-in-IPv4 tunnel backend -# Copyright (c) 2010-2015 OpenWrt.org - -[ -n "$INCLUDE_ONLY" ] || { - . /lib/functions.sh - . /lib/functions/network.sh - . ../netifd-proto.sh - init_proto "$@" -} - -proto_6in4_update() { - sh -c ' - timeout=5 - - (while [ $((timeout--)) -gt 0 ]; do - sleep 1 - kill -0 $$ || exit 0 - done; kill -9 $$) 2>/dev/null & - - exec "$@" - ' "$1" "$@" -} - -proto_6in4_add_prefix() { - append "$3" "$1" -} - -proto_6in4_setup() { - local cfg="$1" - local iface="$2" - local link="6in4-$cfg" - - local mtu ttl tos ipaddr peeraddr ip6addr ip6prefix ip6prefixes tunlink tunnelid username password updatekey gateway - json_get_vars mtu ttl tos ipaddr peeraddr ip6addr tunlink tunnelid username password updatekey gateway - json_for_each_item proto_6in4_add_prefix ip6prefix ip6prefixes - - [ -z "$peeraddr" ] && { - proto_notify_error "$cfg" "MISSING_ADDRESS" - proto_block_restart "$cfg" - return - } - - [ -n "$tunlink" ] && ( proto_add_host_dependency "$cfg" "$peeraddr" "$tunlink" ) - - [ -z "$ipaddr" ] && { - local wanif="$tunlink" - if [ -z "$wanif" ] && ! network_find_wan wanif; then - proto_notify_error "$cfg" "NO_WAN_LINK" - return - fi - - if ! network_get_ipaddr ipaddr "$wanif"; then - proto_notify_error "$cfg" "NO_WAN_LINK" - return - fi - } - - proto_init_update "$link" 1 - - [ -n "$ip6addr" ] && { - local local6="${ip6addr%%/*}" - local mask6="${ip6addr##*/}" - [[ "$local6" = "$mask6" ]] && mask6= - proto_add_ipv6_address "$local6" "$mask6" - proto_add_ipv6_route "::" 0 "" "" "" "$local6/$mask6" - } - - [ -n "$gateway" ] && { - proto_add_ipv6_route "::" 0 "$gateway" - } - - for ip6prefix in $ip6prefixes; do - proto_add_ipv6_prefix "$ip6prefix" - proto_add_ipv6_route "::" 0 "" "" "" "$ip6prefix" - done - - proto_add_tunnel - json_add_string mode sit - json_add_int mtu "${mtu:-1280}" - json_add_int ttl "${ttl:-64}" - [ -n "$tos" ] && json_add_string tos "$tos" - json_add_string local "$ipaddr" - json_add_string remote "$peeraddr" - [ -n "$tunlink" ] && json_add_string link "$tunlink" - proto_close_tunnel - - proto_send_update "$cfg" - - [ -n "$tunnelid" -a -n "$username" -a \( -n "$password" -o -n "$updatekey" \) ] && { - [ -n "$updatekey" ] && password="$updatekey" - - local http="http" - local urlget="uclient-fetch" - local urlget_opts="-qO-" - local ca_path="${SSL_CERT_DIR:-/etc/ssl/certs}" - - [ -f /lib/libustream-ssl.so ] && http=https - [ "$http" = "https" -a -z "$(find $ca_path -name "*.0" 2>/dev/null)" ] && { - urlget_opts="$urlget_opts --no-check-certificate" - } - - local url="$http://ipv4.tunnelbroker.net/nic/update?hostname=$tunnelid" - local try=0 - local max=3 - - ( - set -o pipefail - while [ $((++try)) -le $max ]; do - if proto_6in4_update $urlget $urlget_opts --user="$username" --password="$password" "$url" 2>&1 | \ - sed -e 's,^Killed$,timeout,' -e "s,^,update $try/$max: ," | \ - logger -t "$link"; - then - logger -t "$link" "updated" - return 0 - fi - sleep 5 - done - logger -t "$link" "update failed" - ) - } -} - -proto_6in4_teardown() { - local cfg="$1" -} - -proto_6in4_init_config() { - no_device=1 - available=1 - - proto_config_add_string "ipaddr" - proto_config_add_string "ip6addr" - proto_config_add_array "ip6prefix" - proto_config_add_string "peeraddr" - proto_config_add_string "tunlink" - proto_config_add_string "tunnelid" - proto_config_add_string "username" - proto_config_add_string "password" - proto_config_add_string "updatekey" - proto_config_add_string "gateway" - proto_config_add_int "mtu" - proto_config_add_int "ttl" - proto_config_add_string "tos" -} - -[ -n "$INCLUDE_ONLY" ] || { - add_protocol 6in4 -} diff --git a/iproute2/Makefile b/iproute2/Makefile deleted file mode 100755 index 302d57bf8..000000000 --- a/iproute2/Makefile +++ /dev/null @@ -1,282 +0,0 @@ -# -# Copyright (C) 2006-2015 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:=iproute2 -PKG_VERSION:=6.2.0 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=@KERNEL/linux/utils/net/iproute2 -PKG_HASH:=4d72730200ec5b2aabaa1a2f20553c6748292f065d9a154c7d5e22559df9fd62 -PKG_BUILD_PARALLEL:=1 -PKG_BUILD_DEPENDS:=iptables -PKG_LICENSE:=GPL-2.0 -PKG_CPE_ID:=cpe:/a:iproute2_project:iproute2 - -include $(INCLUDE_DIR)/kernel.mk -include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/nls.mk - -define Package/iproute2/Default - SECTION:=net - CATEGORY:=Network - URL:=http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2 - SUBMENU:=Routing and Redirection - MAINTAINER:=Russell Senior -endef - -define Package/ip-tiny -$(call Package/iproute2/Default) - TITLE:=Routing control utility (minimal) - VARIANT:=iptiny - DEFAULT_VARIANT:=1 - PROVIDES:=ip - ALTERNATIVES:=200:/sbin/ip:/usr/libexec/ip-tiny - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl -endef - -define Package/ip-full -$(call Package/iproute2/Default) - TITLE:=Routing control utility (full) - VARIANT:=ipfull - PROVIDES:=ip - ALTERNATIVES:=300:/sbin/ip:/usr/libexec/ip-full - DEPENDS:=+libnl-tiny +libbpf +(PACKAGE_devlink||PACKAGE_rdma):libmnl -endef - -define Package/tc-tiny -$(call Package/iproute2/Default) - TITLE:=Traffic control utility (minimal) - VARIANT:=tctiny - DEFAULT_VARIANT:=1 - PROVIDES:=tc - ALTERNATIVES:=200:/sbin/tc:/usr/libexec/tc-tiny - DEPENDS:=+kmod-sched-core +(PACKAGE_devlink||PACKAGE_rdma):libmnl -endef - -define Package/tc-bpf -$(call Package/iproute2/Default) - TITLE:=Traffic control utility (bpf) - VARIANT:=tcbpf - PROVIDES:=tc - ALTERNATIVES:=300:/sbin/tc:/usr/libexec/tc-bpf - DEPENDS:=+kmod-sched-core +(PACKAGE_devlink||PACKAGE_rdma):libmnl +libbpf -endef - -define Package/tc-full -$(call Package/iproute2/Default) - TITLE:=Traffic control utility (full) - VARIANT:=tcfull - PROVIDES:=tc - ALTERNATIVES:=400:/sbin/tc:/usr/libexec/tc-full - DEPENDS:=+kmod-sched-core +(PACKAGE_devlink||PACKAGE_rdma):libmnl +libbpf +libxtables +tc-mod-iptables -endef - -define Package/tc-mod-iptables -$(call Package/iproute2/Default) - TITLE:=Traffic control module - iptables action - VARIANT:=tcfull - DEPENDS:=+libxtables +libbpf -endef - -define Package/genl -$(call Package/iproute2/Default) - TITLE:=General netlink utility frontend - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl -endef - -define Package/ip-bridge -$(call Package/iproute2/Default) - TITLE:=Bridge configuration utility from iproute2 - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl -endef - -define Package/ss -$(call Package/iproute2/Default) - TITLE:=Socket statistics utility - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl +kmod-netlink-diag -endef - -define Package/nstat -$(call Package/iproute2/Default) - TITLE:=Network statistics utility - DEPENDS:=+libnl-tiny +(PACKAGE_devlink||PACKAGE_rdma):libmnl -endef - -define Package/devlink -$(call Package/iproute2/Default) - TITLE:=Network devlink utility - DEPENDS:=+libmnl -endef - -define Package/rdma -$(call Package/iproute2/Default) - TITLE:=Network rdma utility - DEPENDS:=+libmnl -endef - -ifeq ($(BUILD_VARIANT),iptiny) - IP_CONFIG_TINY:=y - LIBBPF_FORCE:=off -endif - -ifeq ($(BUILD_VARIANT),ipfull) - HAVE_ELF:=y - LIBBPF_FORCE:=on -endif - -ifeq ($(BUILD_VARIANT),tctiny) - LIBBPF_FORCE:=off -endif - -ifeq ($(BUILD_VARIANT),tcbpf) - HAVE_ELF:=y - LIBBPF_FORCE:=on - SHARED_LIBS:=y -endif - -ifeq ($(BUILD_VARIANT),tcfull) - #enable iptables/xtables requirement only if tciptables variant is selected - TC_CONFIG_XT:=y - TC_CONFIG_XT_OLD:=y - TC_CONFIG_XT_OLD_H:=y - TC_CONFIG_IPSET:=y - HAVE_ELF:=y - LIBBPF_FORCE:=on - SHARED_LIBS:=y -else - #disable iptables requirement by default - TC_CONFIG_XT:=n - TC_CONFIG_XT_OLD:=n - TC_CONFIG_XT_OLD_H:=n - TC_CONFIG_IPSET:=n -endif - -ifdef CONFIG_PACKAGE_devlink - HAVE_MNL:=y -endif - -ifdef CONFIG_PACKAGE_rdma - HAVE_MNL:=y -endif - -define Build/Configure - echo "static const char SNAPSHOT[] = \"$(PKG_VERSION)-$(PKG_RELEASE)-openwrt\";" \ - > $(PKG_BUILD_DIR)/include/SNAPSHOT.h -endef - -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections -Wl,--as-needed -TARGET_CPPFLAGS += -I$(STAGING_DIR)/usr/include/libnl-tiny - -MAKE_FLAGS += \ - KERNEL_INCLUDE="$(LINUX_DIR)/include/uapi" \ - SHARED_LIBS=$(SHARED_LIBS) \ - IP_CONFIG_TINY=$(IP_CONFIG_TINY) \ - BUILD_VARIANT=$(BUILD_VARIANT) \ - LIBBPF_FORCE=$(LIBBPF_FORCE) \ - HAVE_ELF=$(HAVE_ELF) \ - HAVE_MNL=$(HAVE_MNL) \ - HAVE_CAP=$(HAVE_CAP) \ - HAVE_TIRPC=n \ - IPT_LIB_DIR=/usr/lib/iptables \ - XT_LIB_DIR=/usr/lib/iptables \ - TC_CONFIG_XT=$(TC_CONFIG_XT) \ - TC_CONFIG_XT_OLD=$(TC_CONFIG_XT_OLD) \ - TC_CONFIG_XT_OLD_H=$(TC_CONFIG_XT_OLD_H) \ - TC_CONFIG_IPSET=$(TC_CONFIG_IPSET) \ - FPIC="$(FPIC)" \ - $(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') - -define Build/Compile - +$(MAKE_VARS) $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) $(MAKE_FLAGS) -endef - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include/iproute2 - $(CP) $(PKG_BUILD_DIR)/include/bpf_elf.h $(1)/usr/include/iproute2 - $(CP) $(PKG_BUILD_DIR)/include/{libgenl,libnetlink}.h $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/lib/libnetlink.a $(1)/usr/lib/ -endef - -define Package/ip-tiny/install - $(INSTALL_DIR) $(1)/usr/libexec - $(INSTALL_BIN) $(PKG_BUILD_DIR)/ip/ip $(1)/usr/libexec/ip-tiny -endef - -define Package/ip-full/install - $(INSTALL_DIR) $(1)/usr/libexec - $(INSTALL_BIN) $(PKG_BUILD_DIR)/ip/ip $(1)/usr/libexec/ip-full -endef - -define Package/tc-tiny/install - $(INSTALL_DIR) $(1)/usr/libexec - $(INSTALL_BIN) $(PKG_BUILD_DIR)/tc/tc $(1)/usr/libexec/tc-tiny -endef - -define Package/tc-bpf/install - $(INSTALL_DIR) $(1)/usr/libexec - $(INSTALL_BIN) $(PKG_BUILD_DIR)/tc/tc $(1)/usr/libexec/tc-bpf -endef - -define Package/tc-full/install - $(INSTALL_DIR) $(1)/usr/libexec - $(INSTALL_BIN) $(PKG_BUILD_DIR)/tc/tc $(1)/usr/libexec/tc-full -endef - -define Package/tc-mod-iptables/install - $(INSTALL_DIR) $(1)/usr/lib/tc - $(CP) $(PKG_BUILD_DIR)/tc/m_xt.so $(1)/usr/lib/tc -endef - -define Package/genl/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/genl/genl $(1)/usr/sbin/ -endef - -define Package/ip-bridge/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/bridge/bridge $(1)/usr/sbin/ -endef - -define Package/ss/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc/ss $(1)/usr/sbin/ -endef - -define Package/nstat/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc/nstat $(1)/usr/sbin/ -endef - -define Package/devlink/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/devlink/devlink $(1)/usr/sbin/ -endef - -define Package/rdma/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/rdma/rdma $(1)/usr/sbin/ -endef - -$(eval $(call BuildPackage,ip-tiny)) -$(eval $(call BuildPackage,ip-full)) -# build tc-mod-iptables before its dependents, to avoid -# spurious rebuilds when building multiple variants. -$(eval $(call BuildPackage,tc-mod-iptables)) -$(eval $(call BuildPackage,tc-tiny)) -$(eval $(call BuildPackage,tc-bpf)) -$(eval $(call BuildPackage,tc-full)) -$(eval $(call BuildPackage,genl)) -$(eval $(call BuildPackage,ip-bridge)) -$(eval $(call BuildPackage,ss)) -$(eval $(call BuildPackage,nstat)) -$(eval $(call BuildPackage,devlink)) -$(eval $(call BuildPackage,rdma)) diff --git a/iproute2/patches/100-configure.patch b/iproute2/patches/100-configure.patch deleted file mode 100755 index 0c19b2086..000000000 --- a/iproute2/patches/100-configure.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/configure -+++ b/configure -@@ -34,7 +34,8 @@ int main(int argc, char **argv) { - } - EOF - -- if $CC -I$INCLUDE -o $TMPDIR/atmtest $TMPDIR/atmtest.c -latm >/dev/null 2>&1; then -+# OpenWrt: disable ATM support even if present on host system -+ if [ 1 -eq 0 ]; then - echo "TC_CONFIG_ATM:=y" >>$CONFIG - echo yes - else diff --git a/iproute2/patches/110-darwin_fixes.patch b/iproute2/patches/110-darwin_fixes.patch deleted file mode 100755 index 1f3eb101e..000000000 --- a/iproute2/patches/110-darwin_fixes.patch +++ /dev/null @@ -1,59 +0,0 @@ ---- a/netem/maketable.c -+++ b/netem/maketable.c -@@ -10,7 +10,9 @@ - #include - #include - #include -+#if !defined(__APPLE__) && !defined(__FreeBSD__) - #include -+#endif - #include - #include - #include ---- a/netem/normal.c -+++ b/netem/normal.c -@@ -8,8 +8,12 @@ - #include - #include - -+#if !defined(__APPLE__) && !defined(__FreeBSD__) - #include - #include -+#else -+#define NETEM_DIST_SCALE 8192 -+#endif - - #define TABLESIZE 16384 - #define TABLEFACTOR NETEM_DIST_SCALE ---- a/netem/pareto.c -+++ b/netem/pareto.c -@@ -7,8 +7,12 @@ - #include - #include - -+#if !defined(__APPLE__) && !defined(__FreeBSD__) - #include - #include -+#else -+#define NETEM_DIST_SCALE 8192 -+#endif - - static const double a=3.0; - #define TABLESIZE 16384 ---- a/netem/paretonormal.c -+++ b/netem/paretonormal.c -@@ -14,10 +14,13 @@ - #include - #include - #include -+#if !defined(__APPLE__) && !defined(__FreeBSD__) - #include -- - #include - #include -+#else -+#define NETEM_DIST_SCALE 8192 -+#endif - - #define TABLESIZE 16384 - #define TABLEFACTOR NETEM_DIST_SCALE diff --git a/iproute2/patches/115-add-config-xtlibdir.patch b/iproute2/patches/115-add-config-xtlibdir.patch deleted file mode 100755 index 8702d5fd2..000000000 --- a/iproute2/patches/115-add-config-xtlibdir.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/tc/Makefile -+++ b/tc/Makefile -@@ -128,6 +128,9 @@ CFLAGS += -DCONFIG_GACT -DCONFIG_GACT_PR - ifneq ($(IPT_LIB_DIR),) - CFLAGS += -DIPT_LIB_DIR=\"$(IPT_LIB_DIR)\" - endif -+ifneq ($(XT_LIB_DIR),) -+ CFLAGS += -DXT_LIB_DIR=\"$(XT_LIB_DIR)\" -+endif - - LEX := flex - CFLAGS += -DYY_NO_INPUT diff --git a/iproute2/patches/120-no_arpd_ifstat_rtacct_lnstat.patch b/iproute2/patches/120-no_arpd_ifstat_rtacct_lnstat.patch deleted file mode 100755 index bb6a8d018..000000000 --- a/iproute2/patches/120-no_arpd_ifstat_rtacct_lnstat.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/misc/Makefile -+++ b/misc/Makefile -@@ -2,13 +2,13 @@ - SSOBJ=ss.o ssfilter_check.o ssfilter.tab.o - LNSTATOBJ=lnstat.o lnstat_util.o - --TARGETS=ss nstat ifstat rtacct lnstat -+TARGETS=ss nstat - - include ../config.mk - --ifeq ($(HAVE_BERKELEY_DB),y) -- TARGETS += arpd --endif -+#ifeq ($(HAVE_BERKELEY_DB),y) -+# TARGETS += arpd -+#endif - - all: $(TARGETS) - diff --git a/iproute2/patches/130-no_netem_tipc_dcb_man_vdpa.patch b/iproute2/patches/130-no_netem_tipc_dcb_man_vdpa.patch deleted file mode 100755 index 2a3f9eb90..000000000 --- a/iproute2/patches/130-no_netem_tipc_dcb_man_vdpa.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/Makefile -+++ b/Makefile -@@ -65,9 +65,9 @@ WFLAGS += -Wmissing-declarations -Wold-s - CFLAGS := $(WFLAGS) $(CCOPTS) -I../include -I../include/uapi $(DEFINES) $(CFLAGS) - YACCFLAGS = -d -t -v - --SUBDIRS=lib ip tc bridge misc netem genl man -+SUBDIRS=lib ip tc bridge misc genl - ifeq ($(HAVE_MNL),y) --SUBDIRS += tipc devlink rdma dcb vdpa -+SUBDIRS += devlink rdma - endif - - LIBNETLINK=../lib/libutil.a ../lib/libnetlink.a diff --git a/iproute2/patches/140-allow_pfifo_fast.patch b/iproute2/patches/140-allow_pfifo_fast.patch deleted file mode 100755 index 13de48f41..000000000 --- a/iproute2/patches/140-allow_pfifo_fast.patch +++ /dev/null @@ -1,9 +0,0 @@ ---- a/tc/q_fifo.c -+++ b/tc/q_fifo.c -@@ -95,5 +95,6 @@ struct qdisc_util pfifo_head_drop_qdisc_ - - struct qdisc_util pfifo_fast_qdisc_util = { - .id = "pfifo_fast", -+ .parse_qopt = fifo_parse_opt, - .print_qopt = prio_print_opt, - }; diff --git a/iproute2/patches/140-keep_libmnl_optional.patch b/iproute2/patches/140-keep_libmnl_optional.patch deleted file mode 100755 index ff7e9ca4e..000000000 --- a/iproute2/patches/140-keep_libmnl_optional.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure -+++ b/configure -@@ -387,7 +387,7 @@ check_selinux() - - check_mnl() - { -- if ${PKG_CONFIG} libmnl --exists; then -+ if [ "${HAVE_MNL}" = "y" ] && ${PKG_CONFIG} libmnl --exists; then - echo "HAVE_MNL:=y" >>$CONFIG - echo "yes" - diff --git a/iproute2/patches/145-keep_libelf_optional.patch b/iproute2/patches/145-keep_libelf_optional.patch deleted file mode 100755 index 079ca0512..000000000 --- a/iproute2/patches/145-keep_libelf_optional.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure -+++ b/configure -@@ -255,7 +255,7 @@ EOF - - check_elf() - { -- if ${PKG_CONFIG} libelf --exists; then -+ if [ "${HAVE_ELF}" = "y" ] && ${PKG_CONFIG} libelf --exists; then - echo "HAVE_ELF:=y" >>$CONFIG - echo "yes" - diff --git a/iproute2/patches/150-keep_libcap_optional.patch b/iproute2/patches/150-keep_libcap_optional.patch deleted file mode 100755 index 68e162416..000000000 --- a/iproute2/patches/150-keep_libcap_optional.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure -+++ b/configure -@@ -445,7 +445,7 @@ EOF - - check_cap() - { -- if ${PKG_CONFIG} libcap --exists; then -+ if [ "${HAVE_CAP}" = "y" ] && ${PKG_CONFIG} libcap --exists; then - echo "HAVE_CAP:=y" >>$CONFIG - echo "yes" - diff --git a/iproute2/patches/155-keep_tirpc_optional.patch b/iproute2/patches/155-keep_tirpc_optional.patch deleted file mode 100755 index 28ba7e521..000000000 --- a/iproute2/patches/155-keep_tirpc_optional.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure -+++ b/configure -@@ -398,7 +398,7 @@ check_selinux() - - check_tirpc() - { -- if ${PKG_CONFIG} libtirpc --exists; then -+ if [ "${HAVE_TIRPC}" = "y" ] && ${PKG_CONFIG} libtirpc --exists; then - echo "HAVE_RPC:=y" >>$CONFIG - echo "yes" - diff --git a/iproute2/patches/160-libnetlink-pic.patch b/iproute2/patches/160-libnetlink-pic.patch deleted file mode 100755 index 145ec7a9e..000000000 --- a/iproute2/patches/160-libnetlink-pic.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/lib/Makefile -+++ b/lib/Makefile -@@ -1,7 +1,7 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk - --CFLAGS += -fPIC -+CFLAGS += $(FPIC) - - UTILOBJ = utils.o utils_math.o rt_names.o ll_map.o ll_types.o ll_proto.o ll_addr.o \ - inet_proto.o namespace.o json_writer.o json_print.o json_print_math.o \ diff --git a/iproute2/patches/170-ip_tiny.patch b/iproute2/patches/170-ip_tiny.patch deleted file mode 100755 index 71081c36b..000000000 --- a/iproute2/patches/170-ip_tiny.patch +++ /dev/null @@ -1,108 +0,0 @@ ---- a/ip/Makefile -+++ b/ip/Makefile -@@ -19,6 +19,13 @@ RTMONOBJ=rtmon.o - - include ../config.mk - -+STATIC_SYM_FILTER:= -+ifeq ($(IP_CONFIG_TINY),y) -+ STATIC_SYM_FILTER:=iplink_can.c iplink_ipoib.c iplink_vxlan.c -+ CFLAGS += -DIPROUTE2_TINY -+endif -+STATIC_SYM_SOURCES:=$(filter-out $(STATIC_SYM_FILTER),$(wildcard *.c)) -+ - ALLOBJ=$(IPOBJ) $(RTMONOBJ) - SCRIPTS=routel - TARGETS=ip rtmon -@@ -48,7 +55,7 @@ else - - ip: static-syms.o - static-syms.o: static-syms.h --static-syms.h: $(wildcard *.c) -+static-syms.h: $(STATIC_SYM_SOURCES) - files="$^" ; \ - for s in `grep -B 3 '\ $@ - -+else -+ -+tc: dynsyms.list -+m_xt.so: dynsyms.list -+dynsyms.list: $(wildcard *.c) -+ files="$(filter-out $(patsubst %.so,%.c,$(TCSO)), $^)" ; \ -+ echo "{" > $@ ; \ -+ for s in `grep -B 3 '\> $@ ; \ -+ echo "show_stats; print_nl; print_tm; parse_rtattr; parse_rtattr_flags; get_u32; matches; addattr_l; addattr_nest; addattr_nest_end; };" >> $@ -+ - endif diff --git a/iproute2/patches/180-drop_FAILED_POLICY.patch b/iproute2/patches/180-drop_FAILED_POLICY.patch deleted file mode 100755 index 07d5230a6..000000000 --- a/iproute2/patches/180-drop_FAILED_POLICY.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 4e7dbf76227e8c7be7897dc81def3011f637864d Mon Sep 17 00:00:00 2001 -From: Jonas Gorski -Date: Thu, 30 May 2013 11:54:04 +0200 -Subject: [PATCH] add support for dropping with FAILED_POLICY - ---- - include/linux/fib_rules.h | 4 ++++ - include/linux/rtnetlink.h | 1 + - ip/rtm_map.c | 4 ++++ - 3 files changed, 9 insertions(+) - ---- a/ip/rtm_map.c -+++ b/ip/rtm_map.c -@@ -54,6 +54,8 @@ char *rtnl_rtntype_n2a(int id, char *buf - return "nat"; - case RTN_XRESOLVE: - return "xresolve"; -+ case RTN_FAILED_POLICY: -+ return "failed_policy"; - default: - snprintf(buf, len, "%d", id); - return buf; -@@ -89,6 +91,8 @@ int rtnl_rtntype_a2n(int *id, char *arg) - res = RTN_UNICAST; - else if (strcmp(arg, "throw") == 0) - res = RTN_THROW; -+ else if (strcmp(arg, "failed_policy") == 0) -+ res = RTN_FAILED_POLICY; - else { - res = strtoul(arg, &end, 0); - if (!end || end == arg || *end || res > 255) ---- a/include/uapi/linux/rtnetlink.h -+++ b/include/uapi/linux/rtnetlink.h -@@ -256,6 +256,7 @@ enum { - RTN_THROW, /* Not in this table */ - RTN_NAT, /* Translate this address */ - RTN_XRESOLVE, /* Use external resolver */ -+ RTN_FAILED_POLICY, /* Source address failed policy */ - __RTN_MAX - }; - diff --git a/iproute2/patches/190-fix-nls-rpath-link.patch b/iproute2/patches/190-fix-nls-rpath-link.patch deleted file mode 100755 index 92d02b9a4..000000000 --- a/iproute2/patches/190-fix-nls-rpath-link.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/configure -+++ b/configure -@@ -279,7 +279,7 @@ int main(int argc, char **argv) { - } - EOF - -- $CC -o $TMPDIR/libbpf_test $TMPDIR/libbpf_test.c $LIBBPF_CFLAGS $LIBBPF_LDLIBS >/dev/null 2>&1 -+ $CC -o $TMPDIR/libbpf_test $TMPDIR/libbpf_test.c $LIBBPF_CFLAGS $LIBBPF_LDLIBS $LDFLAGS >/dev/null 2>&1 - local ret=$? - - rm -f $TMPDIR/libbpf_test.c $TMPDIR/libbpf_test -@@ -297,7 +297,7 @@ int main(int argc, char **argv) { - } - EOF - -- $CC -o $TMPDIR/libbpf_sec_test $TMPDIR/libbpf_sec_test.c $LIBBPF_CFLAGS $LIBBPF_LDLIBS >/dev/null 2>&1 -+ $CC -o $TMPDIR/libbpf_sec_test $TMPDIR/libbpf_sec_test.c $LIBBPF_CFLAGS $LIBBPF_LDLIBS $LDFLAGS >/dev/null 2>&1 - local ret=$? - - rm -f $TMPDIR/libbpf_sec_test.c $TMPDIR/libbpf_sec_test diff --git a/iproute2/patches/195-build_variant_ip_tc.patch b/iproute2/patches/195-build_variant_ip_tc.patch deleted file mode 100755 index 141763460..000000000 --- a/iproute2/patches/195-build_variant_ip_tc.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/ip/Makefile -+++ b/ip/Makefile -@@ -28,7 +28,7 @@ STATIC_SYM_SOURCES:=$(filter-out $(STATI - - ALLOBJ=$(IPOBJ) $(RTMONOBJ) - SCRIPTS=routel --TARGETS=ip rtmon -+TARGETS=$(findstring ip,$(BUILD_VARIANT)) rtmon - - all: $(TARGETS) $(SCRIPTS) - ---- a/tc/Makefile -+++ b/tc/Makefile -@@ -140,7 +140,7 @@ MODDESTDIR := $(DESTDIR)$(LIBDIR)/tc - $(QUIET_CC)$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -shared -fpic $< -o $@ - - --all: tc $(TCSO) -+all: $(findstring tc,$(BUILD_VARIANT)) $(TCSO) - - tc: $(TCOBJ) $(LIBNETLINK) libtc.a - $(QUIET_LINK)$(CC) $(filter-out dynsyms.list, $^) $(LDFLAGS) $(LDLIBS) -o $@ diff --git a/iproute2/patches/200-drop_libbsd_dependency.patch b/iproute2/patches/200-drop_libbsd_dependency.patch deleted file mode 100755 index 12a1ccfa3..000000000 --- a/iproute2/patches/200-drop_libbsd_dependency.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- a/configure -+++ b/configure -@@ -431,14 +431,8 @@ EOF - if $CC -I$INCLUDE -o $TMPDIR/strtest $TMPDIR/strtest.c >/dev/null 2>&1; then - echo "no" - else -- if ${PKG_CONFIG} libbsd --exists; then -- echo 'CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG -- echo 'LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG -- echo "no" -- else -- echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG -- echo "yes" -- fi -+ echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG -+ echo "yes" - fi - rm -f $TMPDIR/strtest.c $TMPDIR/strtest - } diff --git a/iproute2/patches/300-selinux-configurable.patch b/iproute2/patches/300-selinux-configurable.patch deleted file mode 100755 index b7e61fd3b..000000000 --- a/iproute2/patches/300-selinux-configurable.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure -+++ b/configure -@@ -374,7 +374,7 @@ check_libbpf() - check_selinux() - # SELinux is a compile time option in the ss utility - { -- if ${PKG_CONFIG} libselinux --exists; then -+ if [ "${HAVE_SELINUX}" = "y" ] && ${PKG_CONFIG} libselinux --exists; then - echo "HAVE_SELINUX:=y" >>$CONFIG - echo "yes" - diff --git a/net-tools/Makefile b/net-tools/Makefile deleted file mode 100755 index 6336c57e5..000000000 --- a/net-tools/Makefile +++ /dev/null @@ -1,74 +0,0 @@ -# -# Copyright (C) 2006-2010 OpenWrt.org -# Copyright (C) 2016 Stijn Segers -# Copyright (C) 2020 Ycarus (Yannick Chabanois) for OpenMPTCProuter -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=net-tools -PKG_SOURCE_DATE:=2018-11-03 -PKG_SOURCE_VERSION:=0eebece8c964e3cfa8a018f42b2e7e751a7009a0 -PKG_RELEASE:=2 - -PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL:=https://git.code.sf.net/p/net-tools/code -PKG_MIRROR_HASH:=9d978b9f8ccae4af623a299155c62d9b3d31213182c785f925bf8704d48a04c9 - -PKG_MAINTAINER:=Yannick Chabanois -PKG_LICENSE:=GPL-2.0-or-later -PKG_LICENSE_FILES:=COPYING - -include $(INCLUDE_DIR)/package.mk - -define Package/mii-tool - SECTION:=net - CATEGORY:=Network - TITLE:=configure media type using MII commands - URL:=http://net-tools.sourceforge.net/ -endef - -define Package/mii-tool/description - The mii-tool command allows you to set or autodetect the media type - or mii chipset-based ethernet devices. It traditionally had been - distributed in the net-tools package. This is a single distribution - optimized for embedded systems and fully automated cross/-sysroot-builds -endef - -define Package/net-tools-route - SECTION:=net - CATEGORY:=Network - TITLE:=net-tools - route utility - URL:=http://net-tools.sourceforge.net/ - PROVIDES:=route - ALTERNATIVES:=300:/sbin/route:/usr/libexec/net-tools-route -endef - -define Package/net-tools-route/description - Replace busybox version of the route command with the full net-tools - version. This is normally not needed as busybox is smaller and provides - sufficient functionality, but some users may want or need the full - functionality of the net-tools variant (e.g. AF_X25). -endef - -define Build/Configure - # Failed configure.sh leaves stub config.h around. - rm -f $(PKG_BUILD_DIR)/config.h - ( cd $(PKG_BUILD_DIR); yes $$$$'\n' | ./configure.sh config.in ) -endef - -define Package/mii-tool/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/mii-tool $(1)/usr/sbin/ -endef - -define Package/net-tools-route/install - $(INSTALL_DIR) $(1)/usr/libexec - $(INSTALL_BIN) $(PKG_BUILD_DIR)/route $(1)/usr/libexec/net-tools-route -endef - -$(eval $(call BuildPackage,mii-tool)) -$(eval $(call BuildPackage,net-tools-route)) diff --git a/net-tools/patches/mptcp-support.patch b/net-tools/patches/mptcp-support.patch deleted file mode 100755 index b9f69d0f8..000000000 --- a/net-tools/patches/mptcp-support.patch +++ /dev/null @@ -1,338 +0,0 @@ -diff -aurN net-tools-code-0eebece8c964e3cfa8a018f42b2e7e751a7009a0/lib/pathnames.h net-tools-mptcp_v0.95/lib/pathnames.h ---- net-tools-code-0eebece8c964e3cfa8a018f42b2e7e751a7009a0/lib/pathnames.h 2018-11-03 14:23:32.000000000 +0100 -+++ net-tools-mptcp_v0.95/lib/pathnames.h 2019-06-22 22:52:42.000000000 +0200 -@@ -14,6 +14,7 @@ - #define _PATH_PROCNET_IGMP6 "/proc/net/igmp6" - #define _PATH_PROCNET_TCP "/proc/net/tcp" - #define _PATH_PROCNET_TCP6 "/proc/net/tcp6" -+#define _PATH_PROCNET_MPTCP "/proc/net/mptcp_net/mptcp" - #define _PATH_PROCNET_UDP "/proc/net/udp" - #define _PATH_PROCNET_UDP6 "/proc/net/udp6" - #define _PATH_PROCNET_UDPLITE "/proc/net/udplite" -diff -aurN net-tools-code-0eebece8c964e3cfa8a018f42b2e7e751a7009a0/netstat.c net-tools-mptcp_v0.95/netstat.c ---- net-tools-code-0eebece8c964e3cfa8a018f42b2e7e751a7009a0/netstat.c 2018-11-03 14:23:32.000000000 +0100 -+++ net-tools-mptcp_v0.95/netstat.c 2019-06-22 22:52:42.000000000 +0200 -@@ -115,7 +115,7 @@ - #endif - - /* prototypes for statistics.c */ --void parsesnmp(int, int, int, int); -+void parsesnmp(int, int, int, int, int); - void parsesnmp6(int, int, int); - - typedef enum { -@@ -155,6 +155,7 @@ - int flag_opt = 0; - int flag_raw = 0; - int flag_tcp = 0; -+int flag_mptcp = 0; - int flag_sctp= 0; - int flag_udp = 0; - int flag_udplite = 0; -@@ -1206,6 +1207,83 @@ - tcp_do_one, "tcp", "tcp6"); - } - -+static void mptcp_do_one(int lnr, const char *line, const char *prot) -+{ -+ int d, ipv6, num, local_port, rem_port, state, nsub; -+ unsigned long txq, rxq, local_token, remote_token, inode; -+ char rem_addr[128], local_addr[128]; -+ struct sockaddr_storage localsas, remsas; -+ struct sockaddr_in *localaddr = (struct sockaddr_in *)&localsas; -+ struct sockaddr_in *remaddr = (struct sockaddr_in *)&remsas; -+ const struct aftype *ap; -+#if HAVE_AFINET6 -+ char addr6[INET6_ADDRSTRLEN]; -+ struct in6_addr in6; -+ extern struct aftype inet6_aftype; -+#endif -+ -+ if (lnr == 0) -+ return; -+ -+ num = sscanf(line, "%d: %lX %lX %d %64[0-9A-Fa-f]:%X %64[0-9A-Fa-f]:%X " -+ "%X %X %lX:%lX %lu\n", &d, &local_token, &remote_token, -+ &ipv6, local_addr, &local_port, rem_addr, &rem_port, -+ &state, &nsub, &txq, &rxq, &inode); -+ -+ if (strlen(local_addr) > 8) { -+#if HAVE_AFINET6 -+ /* Demangle what the kernel gives us */ -+ sscanf(local_addr, "%08X%08X%08X%08X", -+ &in6.s6_addr32[0], &in6.s6_addr32[1], -+ &in6.s6_addr32[2], &in6.s6_addr32[3]); -+ inet_ntop(AF_INET6, &in6, addr6, sizeof(addr6)); -+ inet6_aftype.input(1, addr6, &localsas); -+ sscanf(rem_addr, "%08X%08X%08X%08X", -+ &in6.s6_addr32[0], &in6.s6_addr32[1], -+ &in6.s6_addr32[2], &in6.s6_addr32[3]); -+ inet_ntop(AF_INET6, &in6, addr6, sizeof(addr6)); -+ inet6_aftype.input(1, addr6, &remsas); -+ localsas.ss_family = AF_INET6; -+ remsas.ss_family = AF_INET6; -+#endif -+ } else { -+ sscanf(local_addr, "%X", -+ &((struct sockaddr_in *) &localaddr)->sin_addr.s_addr); -+ sscanf(rem_addr, "%X", -+ &((struct sockaddr_in *) &remaddr)->sin_addr.s_addr); -+ localsas.ss_family = AF_INET; -+ remsas.ss_family = AF_INET; -+ } -+ -+ if (num < 12) { -+ fprintf(stderr, _("warning, got bogus mptcp line.\n")); -+ return; -+ } -+ -+ if ((ap = get_afntype(localsas.ss_family)) == NULL) { -+ fprintf(stderr, _("netstat: unsupported address family %d !\n"), -+ localsas.ss_family); -+ return; -+ } -+ -+ addr_do_one(local_addr, sizeof(local_addr), 22, ap, &localsas, local_port, "tcp"); -+ addr_do_one(rem_addr, sizeof(rem_addr), 22, ap, &remsas, rem_port, "tcp"); -+ -+ printf("%-4s %6ld %6ld %-*s %-*s %-11s", -+ prot, rxq, txq, (int)netmax(23,strlen(local_addr)), local_addr, -+ (int)netmax(23,strlen(rem_addr)), rem_addr, _(tcp_state[state])); -+ -+ if (flag_mptcp) -+ printf(" %-11lu %-12lu", local_token, remote_token); -+ -+ finish_this_one(0, inode, NULL); -+} -+ -+static int mptcp_info(void) -+{ -+ INFO_GUTS(_PATH_PROCNET_MPTCP, "AF INET (mptcp)", mptcp_do_one, "mptcp"); -+} -+ - static int notnull(const struct sockaddr_storage *sas) - { - const struct sockaddr_in *sin = (const struct sockaddr_in *)sas; -@@ -1994,7 +2072,7 @@ - fprintf(fp, _(" -Z, --context display SELinux security context for sockets\n")); - #endif - -- fprintf(fp, _("\n ={-t|--tcp} {-u|--udp} {-U|--udplite} {-S|--sctp} {-w|--raw}\n")); -+ fprintf(fp, _("\n ={-t|--tcp} {-m|--mptcp} {-u|--udp} {-U|--udplite} {-S|--sctp} {-w|--raw}\n")); - fprintf(fp, _(" {-x|--unix} --ax25 --ipx --netrom\n")); - fprintf(fp, _(" =Use '-6|-4' or '-A ' or '--'; default: %s\n"), DFLT_AF); - fprintf(fp, _(" List of possible address families (which support routing):\n")); -@@ -2019,6 +2097,7 @@ - #endif - {"protocol", 1, 0, 'A'}, - {"tcp", 0, 0, 't'}, -+ {"mptcp", 0, 0, 'm'}, - {"sctp", 0, 0, 'S'}, - {"udp", 0, 0, 'u'}, - {"udplite", 0, 0, 'U'}, -@@ -2055,7 +2134,7 @@ - getroute_init(); /* Set up AF routing support */ - - afname[0] = '\0'; -- while ((i = getopt_long(argc, argv, "A:CFMacdeghilnNoprsStuUvVWw2fx64?Z", longopts, &lop)) != EOF) -+ while ((i = getopt_long(argc, argv, "A:CFMacdeghilnNoprsStmuUvVWw2fx64?Z", longopts, &lop)) != EOF) - switch (i) { - case -1: - break; -@@ -2146,6 +2225,9 @@ - case 't': - flag_tcp++; - break; -+ case 'm': -+ flag_mptcp++; -+ break; - case 'S': - flag_sctp++; - break; -@@ -2194,17 +2276,17 @@ - usage(E_OPTERR); - - if ((flag_inet || flag_inet6 || flag_sta) && -- !(flag_tcp || flag_sctp || flag_udp || flag_udplite || flag_raw)) -- flag_noprot = flag_tcp = flag_sctp = flag_udp = flag_udplite = flag_raw = 1; -+ !(flag_tcp || flag_sctp || flag_mptcp || flag_udp || flag_udplite || flag_raw)) -+ flag_noprot = flag_tcp = flag_mptcp = flag_sctp = flag_udp = flag_udplite = flag_raw = 1; - -- if ((flag_tcp || flag_sctp || flag_udp || flag_udplite || flag_raw || flag_igmp) && -+ if ((flag_tcp || flag_sctp || flag_mptcp || flag_udp || flag_udplite || flag_raw || flag_igmp) && - !(flag_inet || flag_inet6)) - flag_inet = flag_inet6 = 1; - - if (flag_bluetooth && !(flag_l2cap || flag_rfcomm)) - flag_l2cap = flag_rfcomm = 1; - -- flag_arg = flag_tcp + flag_sctp + flag_udplite + flag_udp + flag_raw + flag_unx -+ flag_arg = flag_tcp + flag_mptcp +flag_sctp + flag_udplite + flag_udp + flag_raw + flag_unx - + flag_ipx + flag_ax25 + flag_netrom + flag_igmp + flag_x25 + flag_rose - + flag_l2cap + flag_rfcomm; - -@@ -2234,7 +2316,7 @@ - - if (!strcmp(afname, "inet")) { - #if HAVE_AFINET -- parsesnmp(flag_raw, flag_tcp, flag_udp, flag_sctp); -+ parsesnmp(flag_raw, flag_tcp, flag_udp, flag_sctp, flag_mptcp); - #else - ENOSUPP("netstat", "AF INET"); - #endif -@@ -2284,7 +2366,7 @@ - return (i); - } - for (;;) { -- if (!flag_arg || flag_tcp || flag_sctp || flag_udp || flag_udplite || flag_raw) { -+ if (!flag_arg || flag_tcp || flag_mptcp || flag_sctp || flag_udp || flag_udplite || flag_raw) { - #if HAVE_AFINET - prg_cache_load(); - printf(_("Active Internet connections ")); /* xxx */ -@@ -2298,6 +2380,8 @@ - printf(_("(w/o servers)")); - } - printf(_("\nProto Recv-Q Send-Q Local Address Foreign Address State ")); /* xxx */ -+ if (flag_mptcp) -+ printf(_(" Local Token Remote Token ")); - if (flag_exp > 1) - printf(_(" User Inode ")); - print_progname_banner(); -@@ -2318,6 +2402,12 @@ - if (i) - return (i); - } -+ -+ if (!flag_arg || flag_mptcp) { -+ i = mptcp_info(); -+ if (i) -+ return (i); -+ } - - if (!flag_arg || flag_sctp) { - i = sctp_info(); -diff -aurN net-tools-code-0eebece8c964e3cfa8a018f42b2e7e751a7009a0/statistics.c net-tools-mptcp_v0.95/statistics.c ---- net-tools-code-0eebece8c964e3cfa8a018f42b2e7e751a7009a0/statistics.c 2018-11-03 14:23:32.000000000 +0100 -+++ net-tools-mptcp_v0.95/statistics.c 2019-06-22 22:52:42.000000000 +0200 -@@ -13,7 +13,7 @@ - #include "intl.h" - #include "proc.h" - --static int print_static,f_raw,f_tcp,f_udp,f_sctp,f_unknown = 1; -+static int print_static,f_raw,f_tcp,f_udp,f_sctp,f_mptcp,f_unknown = 1; - - enum State { - number = 0, opt_number, i_forward, i_inp_icmp, i_outp_icmp, i_rto_alg, -@@ -295,6 +295,51 @@ - {"SctpShutdowns", N_("%llu Number of Graceful Terminations"), number}, - }; - -+static const struct entry Mptcptab[] = -+{ /* Keep the entries sorted! */ -+ {"AddAddrRx", N_("%llu Number of ADD_ADDRs received"), number}, -+ {"AddAddrTx", N_("%llu Number of ADD_ADDRs sent"), number}, -+ {"DSSNoMatchTCP", N_("%llu Number of DSS-mapping/TCP sequence number mismatches"), number}, -+ {"DSSNotMatching", N_("%llu Number of new mismatched mappings"), number}, -+ {"DSSPurgeOldSubSegs", N_("%llu Number of skbs removed from the rcv-queue due to missing DSS-mapping"), number}, -+ {"DSSSplitTail", N_("%llu Number of trimmed segments at the tail"), number}, -+ {"DSSTrimHead", N_("%llu Number of trimmed segments at the head"), number}, -+ {"InfiniteMapRx", N_("%llu Number of infinite mappings received"), number}, -+ {"MPCapableACKRX", N_("%llu Number of received third ACKs with MP_CAPABLE"), number}, -+ {"MPCapableFallbackACK", N_("%llu Number of server-side fallbacks during the 3-way handshake"), number}, -+ {"MPCapableFallbackSYNACK", N_("%llu Number of client-side fallbacks during the 3-way handshake"), number}, -+ {"MPCapableRetransFallback", N_("%llu Number of times the client-side stopped sending MP_CAPABLE after too many SYN-retransmissions"), -+ number}, -+ {"MPCapableSYNACKRX", N_("%llu Number of received SYN/ACKs with MP_CAPABLE"), number}, -+ {"MPCapableSYNRX", N_("%llu Number of received SYNs with MP_CAPABLE"), number}, -+ {"MPCapableSYNTX", N_("%llu Number of sent SYNs with MP_CAPABLE"), number}, -+ {"MPCsumFail", N_("%llu Number of received segments with an invalid checksum"), number}, -+ {"MPFailRX", N_("%llu Number of MP_FAILs received"), number}, -+ {"MPFallbackAckInit", N_("%llu Number of fallbacks upon ack without data-ack on initial subflow"), number}, -+ {"MPFallbackAckSub", N_("%llu Number of fallbacks upon ack without data-ack on new subflow"), number}, -+ {"MPFallbackDataInit", N_("%llu Number of fallbacks upon data without DSS at the beginning on initial subflow"), number}, -+ {"MPFallbackDataSub", N_("%llu Number of fallbacks upon data without DSS at the beginning on new subflow"), number}, -+ {"MPFastcloseRX", N_("%llu Number of FAST_CLOSEs received"), number}, -+ {"MPFastcloseTX", N_("%llu Number of FAST_CLOSEs sent"), number}, -+ {"MPJoinAckHMacFailure", N_("%llu Number of HMAC mismatches on ACK + MP_JOIN"), number}, -+ {"MPJoinAckMissing", N_("%llu Number of third ACKs on a new subflow not containing a MP_JOIN"), number}, -+ {"MPJoinAckRTO", N_("%llu Number of retransmission timeouts for third ACK + MP_JOIN"), number}, -+ {"MPJoinAckRexmit", N_("%llu Number of retransmitted ACK + MP_JOINs"), number}, -+ {"MPJoinAckRx", N_("%llu Number of ACK + MP_JOINs received"), number}, -+ {"MPJoinAlreadyFallenback", N_("%llu Number of received MP_JOINs on a session that has fallen back to reg. TCP"), number}, -+ {"MPJoinNoTokenFound", N_("%llu Number of received MP_JOINs without a token"), number}, -+ {"MPJoinSynAckHMacFailure", N_("%llu Number of received SYN/ACK + MP_JOINs with a HMAC mismatch"), number}, -+ {"MPJoinSynAckRx", N_("%llu Number of SYN/ACK + MP_JOINs received"), number}, -+ {"MPJoinSynRx", N_("%llu Number of SYN + MP_JOINs received"), number}, -+ {"MPJoinSynTx", N_("%llu Number of SYN + MP_JOINs sent"), number}, -+ {"MPRemoveAddrSubDelete", N_("%llu Number of subflows removed due to REMOVE_ADDR"), number}, -+ {"MPTCPCsumEnabled", N_("%llu Number of MPTCP connections created with DSS-checksum enabled"), number}, -+ {"MPTCPRetrans", N_("%llu Number of segments retransmitted at the MPTCP level"), number}, -+ {"NoDSSInWindow", N_("%llu Number of too many packets received without a DSS option errors"), number}, -+ {"RemAddrRx", N_("%llu Number of REMOVE_ADDRs received"), number}, -+ {"RemAddrTx", N_("%llu Number of REMOVE_ADDRs sent"), number}, -+}; -+ - struct tabtab { - const char *title; - const struct entry *tab; -@@ -310,6 +355,7 @@ - {"Udp", Udptab, sizeof(Udptab), &f_udp}, - {"Sctp", Sctptab, sizeof(Sctptab), &f_sctp}, - {"TcpExt", Tcpexttab, sizeof(Tcpexttab), &f_tcp}, -+ {"Mptcp", Mptcptab, sizeof(Mptcptab), &f_mptcp}, - {NULL} - }; - -@@ -503,13 +549,13 @@ - } - - /* Process a file with name-value lines (like /proc/net/sctp/snmp) */ --static void process_fd2(FILE *f, const char *filename) -+static void process_fd2(FILE *f, const char *filename, const char *tablename) - { - char buf1[1024]; - char *sp; - const struct tabtab *tab; - -- tab = newtable(snmptabs, "Sctp"); -+ tab = newtable(snmptabs, tablename); - - while (fgets(buf1, sizeof buf1, f)) { - sp = buf1 + strcspn(buf1, " \t\n"); -@@ -527,11 +573,11 @@ - } - } - --void parsesnmp(int flag_raw, int flag_tcp, int flag_udp, int flag_sctp) -+void parsesnmp(int flag_raw, int flag_tcp, int flag_udp, int flag_sctp, int flag_mptcp) - { - FILE *f; - -- f_raw = flag_raw; f_tcp = flag_tcp; f_udp = flag_udp; f_sctp = flag_sctp; -+ f_raw = flag_raw; f_tcp = flag_tcp; f_udp = flag_udp; f_sctp = flag_sctp; f_mptcp = flag_mptcp; - - f = proc_fopen("/proc/net/snmp"); - if (!f) { -@@ -561,12 +607,21 @@ - - f = proc_fopen("/proc/net/sctp/snmp"); - if (f) { -- process_fd2(f,"/proc/net/sctp/snmp"); -+ process_fd2(f,"/proc/net/sctp/snmp", "Sctp"); - if (ferror(f)) { - perror("/proc/net/sctp/snmp"); - fclose(f); - } - } -+ -+ f = proc_fopen("/proc/net/mptcp_net/snmp"); -+ if (f) { -+ process_fd2(f,"/proc/net/mptcp_net/snmp", "Mptcp"); -+ if (ferror(f)) { -+ perror("/proc/net/mptcp_net/snmp"); -+ fclose(f); -+ } -+ } - } - - void parsesnmp6(int flag_raw, int flag_tcp, int flag_udp) diff --git a/netifd/Makefile b/netifd/Makefile deleted file mode 100755 index 4b5f110da..000000000 --- a/netifd/Makefile +++ /dev/null @@ -1,52 +0,0 @@ -include $(TOPDIR)/rules.mk - -PKG_NAME:=netifd -PKG_RELEASE:=1 - -PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL=$(PROJECT_GIT)/project/netifd.git -PKG_SOURCE_DATE:=2021-07-26 -PKG_SOURCE_VERSION:=440eb0647708274cc8d7d9e7c2bb0cfdfba90023 -PKG_MIRROR_HASH:=eed957036ab608fdc49bdf801fc5b4405fcd2a3a5e5d3343ec39898e156c10e9 -PKG_MAINTAINER:=Felix Fietkau - -PKG_LICENSE:=GPL-2.0 -PKG_LICENSE_FILES:= - -PKG_BUILD_PARALLEL:=1 - -include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/cmake.mk - -define Package/netifd - SECTION:=base - CATEGORY:=Base system - DEPENDS:=+libuci +libnl-tiny +libubus +ubus +ubusd +jshn +libubox - TITLE:=OpenWrt Network Interface Configuration Daemon -endef - -define Package/netifd/conffiles -/etc/udhcpc.user -/etc/udhcpc.user.d/ -endef - -TARGET_CFLAGS += \ - -I$(STAGING_DIR)/usr/include/libnl-tiny \ - -I$(STAGING_DIR)/usr/include \ - -flto - -TARGET_LDFLAGS += -flto -fuse-linker-plugin - -CMAKE_OPTIONS += \ - -DLIBNL_LIBS=-lnl-tiny \ - -DDEBUG=1 - -define Package/netifd/install - $(INSTALL_DIR) $(1)/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/netifd $(1)/sbin/ - $(CP) ./files/* $(1)/ - $(INSTALL_DIR) $(1)/etc/udhcpc.user.d/ - $(CP) $(PKG_BUILD_DIR)/scripts/* $(1)/lib/netifd/ -endef - -$(eval $(call BuildPackage,netifd)) diff --git a/netifd/files/etc/hotplug.d/iface/00-netstate b/netifd/files/etc/hotplug.d/iface/00-netstate deleted file mode 100755 index 71ccb0191..000000000 --- a/netifd/files/etc/hotplug.d/iface/00-netstate +++ /dev/null @@ -1,6 +0,0 @@ -[ ifup = "$ACTION" ] && { - uci_toggle_state network "$INTERFACE" up 1 - [ -n "$DEVICE" ] && { - uci_toggle_state network "$INTERFACE" ifname "$DEVICE" - } -} diff --git a/netifd/files/etc/hotplug.d/net/20-smp-packet-steering b/netifd/files/etc/hotplug.d/net/20-smp-packet-steering deleted file mode 100755 index 8a86bf75f..000000000 --- a/netifd/files/etc/hotplug.d/net/20-smp-packet-steering +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh -[ "$ACTION" = add ] || exit - -NPROCS="$(grep -c "^processor.*:" /proc/cpuinfo)" -[ "$NPROCS" -gt 1 ] || exit - -PROC_MASK="$(( (1 << $NPROCS) - 1 ))" - -find_irq_cpu() { - local dev="$1" - local match="$(grep -m 1 "$dev\$" /proc/interrupts)" - local cpu=0 - - [ -n "$match" ] && { - set -- $match - shift - for cur in $(seq 1 $NPROCS); do - [ "$1" -gt 0 ] && { - cpu=$(($cur - 1)) - break - } - shift - done - } - - echo "$cpu" -} - -set_hex_val() { - local file="$1" - local val="$2" - val="$(printf %x "$val")" - [ -n "$DEBUG" ] && echo "$file = $val" - echo "$val" > "$file" -} - -packet_steering="$(uci get "network.@globals[0].packet_steering")" -[ "$packet_steering" != 1 ] && exit 0 - -exec 512>/var/lock/smp_tune.lock -flock 512 || exit 1 - -for dev in /sys/class/net/*; do - [ -d "$dev" ] || continue - - # ignore virtual interfaces - [ -n "$(ls "${dev}/" | grep '^lower_')" ] && continue - [ -d "${dev}/device" ] || continue - - device="$(readlink "${dev}/device")" - device="$(basename "$device")" - irq_cpu="$(find_irq_cpu "$device")" - irq_cpu_mask="$((1 << $irq_cpu))" - - for q in ${dev}/queues/tx-*; do - set_hex_val "$q/xps_cpus" "$PROC_MASK" - done - - # ignore dsa slave ports for RPS - subsys="$(readlink "${dev}/device/subsystem")" - subsys="$(basename "$subsys")" - [ "$subsys" = "mdio_bus" ] && continue - - for q in ${dev}/queues/rx-*; do - set_hex_val "$q/rps_cpus" "$PROC_MASK" - done -done diff --git a/netifd/files/etc/init.d/network b/netifd/files/etc/init.d/network deleted file mode 100755 index dc208c4ce..000000000 --- a/netifd/files/etc/init.d/network +++ /dev/null @@ -1,144 +0,0 @@ -#!/bin/sh /etc/rc.common - -START=20 -STOP=90 - -USE_PROCD=1 - -init_switch() { - setup_switch() { return 0; } - - include /lib/network - setup_switch -} - -start_service() { - init_switch - - procd_open_instance - procd_set_param command /sbin/netifd - procd_set_param respawn - procd_set_param watch network.interface - [ -e /proc/sys/kernel/core_pattern ] && { - procd_set_param limits core="unlimited" - } - procd_close_instance -} - -reload_service() { - local rv=0 - - init_switch - ubus call network reload || rv=1 - /sbin/wifi reload_legacy - return $rv -} - -stop_service() { - /sbin/wifi down - ifdown -a - sleep 1 -} - -validate_atm_bridge_section() -{ - uci_validate_section network "atm-bridge" "${1}" \ - 'unit:uinteger:0' \ - 'vci:range(32, 65535):35' \ - 'vpi:range(0, 255):8' \ - 'atmdev:uinteger:0' \ - 'encaps:or("llc", "vc"):llc' \ - 'payload:or("bridged", "routed"):bridged' -} - -validate_route_section() -{ - uci_validate_section network route "${1}" \ - 'interface:string' \ - 'target:cidr4' \ - 'netmask:netmask4' \ - 'gateway:ip4addr' \ - 'metric:uinteger' \ - 'mtu:uinteger' \ - 'table:or(range(0,65535),string)' -} - -validate_route6_section() -{ - uci_validate_section network route6 "${1}" \ - 'interface:string' \ - 'target:cidr6' \ - 'gateway:ip6addr' \ - 'metric:uinteger' \ - 'mtu:uinteger' \ - 'table:or(range(0,65535),string)' -} - -validate_rule_section() -{ - uci_validate_section network rule "${1}" \ - 'in:string' \ - 'out:string' \ - 'src:cidr4' \ - 'dest:cidr4' \ - 'tos:range(0,31)' \ - 'mark:string' \ - 'invert:bool' \ - 'lookup:or(range(0,65535),string)' \ - 'goto:range(0,65535)' \ - 'action:or("prohibit", "unreachable", "blackhole", "throw")' -} - -validate_rule6_section() -{ - uci_validate_section network rule6 "${1}" \ - 'in:string' \ - 'out:string' \ - 'src:cidr6' \ - 'dest:cidr6' \ - 'tos:range(0,31)' \ - 'mark:string' \ - 'invert:bool' \ - 'lookup:or(range(0,65535),string)' \ - 'goto:range(0,65535)' \ - 'action:or("prohibit", "unreachable", "blackhole", "throw")' -} - -validate_switch_section() -{ - uci_validate_section network switch "${1}" \ - 'name:string' \ - 'enable:bool' \ - 'enable_vlan:bool' \ - 'reset:bool' \ - 'ar8xxx_mib_poll_interval:uinteger' \ - 'ar8xxx_mib_type:range(0,1)' -} - -validate_switch_vlan() -{ - uci_validate_section network switch_vlan "${1}" \ - 'device:string' \ - 'vlan:uinteger' \ - 'ports:list(ports)' -} - -service_triggers() -{ - procd_add_reload_trigger network wireless - - procd_open_validate - validate_atm_bridge_section - validate_route_section - [ -e /proc/sys/net/ipv6 ] && validate_route6_section - validate_rule_section - [ -e /proc/sys/net/ipv6 ] && validate_rule6_section - validate_switch_section - validate_switch_vlan - procd_close_validate -} - -shutdown() { - ifdown -a - sleep 1 -} diff --git a/netifd/files/etc/uci-defaults/14_migrate-dhcp-release b/netifd/files/etc/uci-defaults/14_migrate-dhcp-release deleted file mode 100755 index f1b384eec..000000000 --- a/netifd/files/etc/uci-defaults/14_migrate-dhcp-release +++ /dev/null @@ -1,23 +0,0 @@ -. /lib/functions.sh - -migrate_release() { - local config="$1" - local proto - local release - - config_get proto "$config" proto - config_get release "$config" release - - [ "$proto" = "dhcp" ] && [ -n "$release" ] && { - norelease="$((!$release))" - uci_set network "$config" norelease "$norelease" - uci_remove network "$config" release - } - -} - -config_load network -config_foreach migrate_release interface -uci commit network - -exit 0 diff --git a/netifd/files/etc/udhcpc.user b/netifd/files/etc/udhcpc.user deleted file mode 100755 index 78e2ba5f1..000000000 --- a/netifd/files/etc/udhcpc.user +++ /dev/null @@ -1 +0,0 @@ -# This script is sourced by udhcpc's dhcp.script at every DHCP event. diff --git a/netifd/files/lib/netifd/dhcp.script b/netifd/files/lib/netifd/dhcp.script deleted file mode 100755 index c857c9fc0..000000000 --- a/netifd/files/lib/netifd/dhcp.script +++ /dev/null @@ -1,120 +0,0 @@ -#!/bin/sh -[ -z "$1" ] && echo "Error: should be run by udhcpc" && exit 1 - -. /lib/functions.sh -. /lib/netifd/netifd-proto.sh - -set_classless_routes() { - local max=128 - while [ -n "$1" -a -n "$2" -a $max -gt 0 ]; do - proto_add_ipv4_route "${1%%/*}" "${1##*/}" "$2" "$ip" - max=$(($max-1)) - shift 2 - done -} - -setup_interface() { - proto_init_update "*" 1 - proto_add_ipv4_address "$ip" "${subnet:-255.255.255.0}" - # TODO: apply $broadcast - - local ip_net - eval "$(ipcalc.sh "$ip/$mask")";ip_net="$NETWORK" - - local i - for i in $router; do - local gw_net - eval "$(ipcalc.sh "$i/$mask")";gw_net="$NETWORK" - - [ "$ip_net" != "$gw_net" ] && proto_add_ipv4_route "$i" 32 "" "$ip" - #[ "$DEFAULTROUTE" = 0 ] || proto_add_ipv4_route 0.0.0.0 0 "$i" "$ip" - proto_add_ipv4_route 0.0.0.0 0 "$i" "$ip" - - local r - for r in $CUSTOMROUTES; do - proto_add_ipv4_route "${r%%/*}" "${r##*/}" "$i" "$ip" - done - done - - # CIDR STATIC ROUTES (rfc3442) - [ -n "$staticroutes" ] && set_classless_routes $staticroutes - [ -n "$msstaticroutes" ] && set_classless_routes $msstaticroutes - - for i in $dns; do - proto_add_dns_server "$i" - done - for i in $domain; do - proto_add_dns_search "$i" - done - - # TODO: Deprecate timesvr in favor of timesrv - if [ -n "$timesvr" -a -z "$timesrv" ]; then - timesrv="$timesvr" - echo "Environment variable 'timesvr' will be deprecated; use 'timesrv' instead." - fi - - proto_add_data - [ -n "$ZONE" ] && json_add_string zone "$ZONE" - [ -n "$ntpsrv" ] && json_add_string ntpserver "$ntpsrv" - [ -n "$timesrv" ] && json_add_string timeserver "$timesrv" - [ -n "$hostname" ] && json_add_string hostname "$hostname" - [ -n "$message" ] && json_add_string message "$message" - [ -n "$timezone" ] && json_add_int timezone "$timezone" - [ -n "$lease" ] && json_add_int leasetime "$lease" - proto_close_data - - proto_send_update "$INTERFACE" - - - if [ "$IFACE6RD" != 0 -a -n "$ip6rd" ]; then - local v4mask="${ip6rd%% *}" - ip6rd="${ip6rd#* }" - local ip6rdprefixlen="${ip6rd%% *}" - ip6rd="${ip6rd#* }" - local ip6rdprefix="${ip6rd%% *}" - ip6rd="${ip6rd#* }" - local ip6rdbr="${ip6rd%% *}" - - [ -n "$ZONE" ] || ZONE=$(fw3 -q network $INTERFACE 2>/dev/null) - [ -z "$IFACE6RD" -o "$IFACE6RD" = 1 ] && IFACE6RD=${INTERFACE}_6 - - json_init - json_add_string name "$IFACE6RD" - json_add_string ifname "@$INTERFACE" - json_add_string proto "6rd" - json_add_string peeraddr "$ip6rdbr" - json_add_int ip4prefixlen "$v4mask" - json_add_string ip6prefix "$ip6rdprefix" - json_add_int ip6prefixlen "$ip6rdprefixlen" - json_add_string tunlink "$INTERFACE" - [ -n "$IFACE6RD_DELEGATE" ] && json_add_boolean delegate "$IFACE6RD_DELEGATE" - [ -n "$ZONE6RD" ] || ZONE6RD=$ZONE - [ -n "$ZONE6RD" ] && json_add_string zone "$ZONE6RD" - [ -n "$MTU6RD" ] && json_add_string mtu "$MTU6RD" - json_close_object - - ubus call network add_dynamic "$(json_dump)" - fi -} - -deconfig_interface() { - proto_init_update "*" 0 - proto_send_update "$INTERFACE" -} - -case "$1" in - deconfig) - deconfig_interface - ;; - renew|bound) - setup_interface - ;; -esac - -# user rules -[ -f /etc/udhcpc.user ] && . /etc/udhcpc.user "$@" -for f in /etc/udhcpc.user.d/*; do - [ -f "$f" ] && (. "$f" "$@") -done - -exit 0 diff --git a/netifd/files/lib/netifd/proto/dhcp.sh b/netifd/files/lib/netifd/proto/dhcp.sh deleted file mode 100755 index 8db848260..000000000 --- a/netifd/files/lib/netifd/proto/dhcp.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/sh - -[ -L /sbin/udhcpc ] || exit 0 - -. /lib/functions.sh -. ../netifd-proto.sh -init_proto "$@" - -proto_dhcp_init_config() { - renew_handler=1 - - proto_config_add_string 'ipaddr:ipaddr' - proto_config_add_string 'hostname:hostname' - proto_config_add_string clientid - proto_config_add_string vendorid - proto_config_add_boolean 'broadcast:bool' - proto_config_add_boolean 'norelease:bool' - proto_config_add_string 'reqopts:list(string)' - proto_config_add_boolean 'defaultreqopts:bool' - proto_config_add_string iface6rd - proto_config_add_array 'sendopts:list(string)' - proto_config_add_boolean delegate - proto_config_add_string zone6rd - proto_config_add_string zone - proto_config_add_string mtu6rd - proto_config_add_string customroutes - proto_config_add_boolean classlessroute -} - -proto_dhcp_add_sendopts() { - [ -n "$1" ] && append "$3" "-x $1" -} - -proto_dhcp_setup() { - local config="$1" - local iface="$2" - - local ipaddr hostname clientid vendorid broadcast norelease reqopts defaultreqopts iface6rd sendopts delegate zone6rd zone mtu6rd customroutes classlessroute defaultroute - json_get_vars ipaddr hostname clientid vendorid broadcast norelease reqopts defaultreqopts iface6rd delegate zone6rd zone mtu6rd customroutes classlessroute defaultroute - - local opt dhcpopts - for opt in $reqopts; do - append dhcpopts "-O $opt" - done - - json_for_each_item proto_dhcp_add_sendopts sendopts dhcpopts - - [ -z "$hostname" ] && hostname="$(cat /proc/sys/kernel/hostname)" - [ "$hostname" = "*" ] && hostname= - - [ "$defaultreqopts" = 0 ] && defaultreqopts="-o" || defaultreqopts= - [ "$broadcast" = 1 ] && broadcast="-B" || broadcast= - [ "$norelease" = 1 ] && norelease="" || norelease="-R" - [ -n "$clientid" ] && clientid="-x 0x3d:${clientid//:/}" || clientid="-C" - [ -n "$iface6rd" ] && proto_export "IFACE6RD=$iface6rd" - [ "$iface6rd" != 0 -a -f /lib/netifd/proto/6rd.sh ] && append dhcpopts "-O 212" - [ -n "$zone6rd" ] && proto_export "ZONE6RD=$zone6rd" - [ -n "$zone" ] && proto_export "ZONE=$zone" - [ -n "$mtu6rd" ] && proto_export "MTU6RD=$mtu6rd" - [ -n "$customroutes" ] && proto_export "CUSTOMROUTES=$customroutes" - [ -n "$defaultroute" ] && proto_export "DEFAULTROUTE=$defaultroute" - [ "$delegate" = "0" ] && proto_export "IFACE6RD_DELEGATE=0" - # Request classless route option (see RFC 3442) by default - [ "$classlessroute" = "0" ] || append dhcpopts "-O 121" - - proto_export "INTERFACE=$config" - proto_run_command "$config" udhcpc \ - -p /var/run/udhcpc-$iface.pid \ - -s /lib/netifd/dhcp.script \ - -f -t 0 -i "$iface" \ - ${ipaddr:+-r $ipaddr} \ - ${hostname:+-x "hostname:$hostname"} \ - ${vendorid:+-V "$vendorid"} \ - $clientid $defaultreqopts $broadcast $norelease $dhcpopts -} - -proto_dhcp_renew() { - local interface="$1" - # SIGUSR1 forces udhcpc to renew its lease - local sigusr1="$(kill -l SIGUSR1)" - [ -n "$sigusr1" ] && proto_kill_command "$interface" $sigusr1 -} - -proto_dhcp_teardown() { - local interface="$1" - proto_kill_command "$interface" -} - -add_protocol dhcp diff --git a/netifd/files/lib/network/config.sh b/netifd/files/lib/network/config.sh deleted file mode 100755 index 4cd28e4ce..000000000 --- a/netifd/files/lib/network/config.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh -# Copyright (C) 2011 OpenWrt.org - -. /usr/share/libubox/jshn.sh - -find_config() { - local device="$1" - local ifdev ifl3dev ifobj - for ifobj in $(ubus list network.interface.\*); do - interface="${ifobj##network.interface.}" - ( - json_load "$(ifstatus $interface)" - json_get_var ifdev device - json_get_var ifl3dev l3_device - if [ "$device" = "$ifdev" ] || [ "$device" = "$ifl3dev" ]; then - echo "$interface" - exit 0 - else - exit 1 - fi - ) && return - done -} - -unbridge() { - return -} - -ubus_call() { - json_init - local _data="$(ubus -S call "$1" "$2")" - [ -z "$_data" ] && return 1 - json_load "$_data" - return 0 -} - - -fixup_interface() { - local config="$1" - local ifname type device l3dev - - config_get type "$config" type - config_get ifname "$config" ifname - [ "bridge" = "$type" ] && ifname="br-$config" - ubus_call "network.interface.$config" status || return 0 - json_get_var l3dev l3_device - [ -n "$l3dev" ] && ifname="$l3dev" - json_init - config_set "$config" ifname "$ifname" -} - -scan_interfaces() { - config_load network - config_foreach fixup_interface interface -} - -prepare_interface_bridge() { - local config="$1" - - [ -n "$config" ] || return 0 - ubus call network.interface."$config" prepare -} - -setup_interface() { - local iface="$1" - local config="$2" - - [ -n "$config" ] || return 0 - ubus call network.interface."$config" add_device "{ \"name\": \"$iface\" }" -} - -do_sysctl() { - [ -n "$2" ] && \ - sysctl -n -e -w "$1=$2" >/dev/null || \ - sysctl -n -e "$1" -} diff --git a/netifd/files/sbin/devstatus b/netifd/files/sbin/devstatus deleted file mode 100755 index 3c35b26a4..000000000 --- a/netifd/files/sbin/devstatus +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -. /usr/share/libubox/jshn.sh -DEVICE="$1" - -[ -n "$DEVICE" ] || { - echo "Usage: $0 " - exit 1 -} - -json_init -json_add_string name "$DEVICE" -ubus call network.device status "$(json_dump)" diff --git a/netifd/files/sbin/ifdown b/netifd/files/sbin/ifdown deleted file mode 120000 index a0e5c176a..000000000 --- a/netifd/files/sbin/ifdown +++ /dev/null @@ -1 +0,0 @@ -ifup \ No newline at end of file diff --git a/netifd/files/sbin/ifstatus b/netifd/files/sbin/ifstatus deleted file mode 100755 index 8a951e6e1..000000000 --- a/netifd/files/sbin/ifstatus +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -INTERFACE="$1" - -[ -n "$INTERFACE" ] || { - echo "Usage: $0 " - exit 1 -} - -ubus -S list "network.interface.$INTERFACE" >/dev/null || { - echo "Interface $INTERFACE not found" - exit 1 -} -ubus call network.interface status "{ \"interface\" : \"$INTERFACE\" }" diff --git a/netifd/files/sbin/ifup b/netifd/files/sbin/ifup deleted file mode 100755 index 15be535bb..000000000 --- a/netifd/files/sbin/ifup +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/sh - -ifup_all= -setup_wifi= - -if_call() { - local interface="$1" - for mode in $modes; do - ubus call network.interface $mode "{ \"interface\" : \"$interface\" }" - done -} - -case "$0" in - *ifdown) modes=down;; - *ifup) - modes="down up" - setup_wifi=1 - ;; - *) echo "Invalid command: $0";; -esac - -while :; do - case "$1" in - -a) - ifup_all=1 - shift - ;; - -w) - setup_wifi= - shift - ;; - *) - break - ;; - esac -done - -[ "$modes" = "down up" ] && ubus call network reload -if [ -n "$ifup_all" ]; then - for interface in $(ubus -S list 'network.interface.*'); do - if_call "${interface##network.interface.}" - done - [ -n "$setup_wifi" ] && /sbin/wifi up - exit -else - ubus -S list "network.interface.$1" > /dev/null || { - echo "Interface $1 not found" - exit - } - if_call "$1" -fi - -if [ -n "$setup_wifi" ] && grep -sq config /etc/config/wireless; then - . /lib/functions.sh - - find_related_radios() { - local wdev wnet - config_get wdev "$1" device - config_get wnet "$1" network - - if [ -n "$wdev" ]; then - for wnet in $wnet; do - if [ "$wnet" = "$network" ]; then - append radio_devs "$wdev" "$N" - fi - done - fi - } - - network="$1" - config_load wireless - config_foreach find_related_radios wifi-iface - - for dev in $(echo "$radio_devs" | sort -u); do - /sbin/wifi up "$dev" - done -fi diff --git a/netifd/files/usr/share/udhcpc/default.script b/netifd/files/usr/share/udhcpc/default.script deleted file mode 100755 index 0a9eb0180..000000000 --- a/netifd/files/usr/share/udhcpc/default.script +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh -[ -z "$1" ] && echo "Error: should be run by udhcpc" && exit 1 - -set_classless_routes() { - local max=128 - local type - while [ -n "$1" -a -n "$2" -a $max -gt 0 ]; do - [ ${1##*/} -eq 32 ] && type=host || type=net - echo "udhcpc: adding route for $type $1 via $2" - route add -$type "$1" gw "$2" dev "$interface" - max=$(($max-1)) - shift 2 - done -} - -setup_interface() { - echo "udhcpc: ip addr add $ip/${subnet:-255.255.255.0} broadcast ${broadcast:-+} dev $interface" - ip addr add $ip/${subnet:-255.255.255.0} broadcast ${broadcast:-+} dev $interface - - [ -n "$router" ] && [ "$router" != "0.0.0.0" ] && [ "$router" != "255.255.255.255" ] && { - echo "udhcpc: setting default routers: $router" - - local valid_gw="" - for i in $router ; do - route add default gw $i dev $interface - valid_gw="${valid_gw:+$valid_gw|}$i" - done - - eval $(route -n | awk ' - /^0.0.0.0\W{9}('$valid_gw')\W/ {next} - /^0.0.0.0/ {print "route del -net "$1" gw "$2";"} - ') - } - - # CIDR STATIC ROUTES (rfc3442) - [ -n "$staticroutes" ] && set_classless_routes $staticroutes - [ -n "$msstaticroutes" ] && set_classless_routes $msstaticroutes -} - - -applied= -case "$1" in - deconfig) - ip -4 addr flush dev "$interface" - ;; - renew) - setup_interface update - ;; - bound) - setup_interface ifup - ;; -esac - -# user rules -[ -f /etc/udhcpc.user ] && . /etc/udhcpc.user - -exit 0 diff --git a/netmaker-openwrt/LICENSE b/netmaker-openwrt/LICENSE deleted file mode 100755 index 472ac2361..000000000 --- a/netmaker-openwrt/LICENSE +++ /dev/null @@ -1,8 +0,0 @@ -MIT License -Copyright (c) - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/netmaker-openwrt/README.md b/netmaker-openwrt/README.md deleted file mode 100755 index 60b189cce..000000000 --- a/netmaker-openwrt/README.md +++ /dev/null @@ -1,111 +0,0 @@ -# Netmaker-OpenWRT - -[Netmaker](https://github.com/gravitl/netmaker) is a platform for creating and managing fast, secure, and dynamic virtual overlay networks using WireGuard. This project offers OpenWRT packages for Netmaker. - -## Installing package - -Download the prebuild package and copy it onto your OpenWRT installation, preferably into the `/tmp` folder. - -Then install the ipk package file: - -```bash -opkg install netmaker_*.ipk -``` - -Now start `netclient` of Netmaker: - -```bash -/etc/init.d/netclient start -``` - -## Compiling from Sources - -To include Netmaker into your OpenWRT image or to create an `.ipk` package (equivalent to Debians .deb files), you have to build an OpenWRT image. - -Now prepare OpenWRT: - -```bash -git clone https://github.com/openwrt/openwrt -cd openwrt - -./scripts/feeds update -a -./scripts/feeds install -a -``` - -To build Netmaker for OpenWRT, you need to have Golang with OpenWRT build envirment. Then, you can insert the Netmaker package using a package feed or add the package manually. - -### Add package by feed - -A feed is the standard way packages are made available to the OpenWRT build system. - -Put this line in your feeds list file (e.g. feeds.conf.default) - -```bash -src-git netmaker http://github.com/sbilly/netmaker-openwrt.git -``` - -Update and install the new feed - -```bash -./scripts/feeds update netmaker -./scripts/feeds install netmaker -``` - -Now continue with the building packages section. - -## Building Packages - -Configure packages: - -```bash -make menuconfig -``` - -Now select the appropiate "Target System" and "Target Profile" depending on what target chipset/router you want to build for. Also mark the Netmaker package under `Network ---> VPN ---> <*> netmaker`. - -Now compile/build everything: - -```bash -make -``` - -The images and all *.ipk packages are now inside the bin/ folder, including the netmaker package. You can install the Netmaker .ipk on the target device using opkg install . - -For details please check the OpenWRT documentation. - -## Build bulk packages - -For a release, it is useful the build packages at a bulk for multiple targets: - -```shell -#!/bin/sh - -# dump-target-info.pl is used to get all targets configurations: -# https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=scripts/dump-target-info.pl - -./scripts/dump-target-info.pl architectures | while read pkgarch target1 rest; do - echo "CONFIG_TARGET_${target1%/*}=y" > .config - echo "CONFIG_TARGET_${target1%/*}_${target1#*/}=y" >> .config - echo "CONFIG_PACKAGE_example1=y" >> .config - - # Debug output - echo "pkgarch: $pkgarch, target1: $target1" - - make defconfig - make -j4 tools/install - make -j4 toolchain/install - - # Build package - make package/netmaker/{clean,compile} - - # Free space (optional) - rm -rf build_dir/target-* - rm -rf build_dir/toolchain-* -done -``` - -## Thanks - -- [netmaker](https://github.com/gravitl/netmaker) -- [zerotier-openwrt](https://github.com/mwarning/zerotier-openwrt) -- [openwrt-golang-package-test-feed](https://github.com/jefferyto/openwrt-golang-package-test-feed) diff --git a/netmaker-openwrt/netmaker/Makefile b/netmaker-openwrt/netmaker/Makefile deleted file mode 100755 index 903dd2beb..000000000 --- a/netmaker-openwrt/netmaker/Makefile +++ /dev/null @@ -1,93 +0,0 @@ -# -# Copyright (C) 2019 sbilly -# -# This is free software, licensed under the MIT License. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=netmaker -PKG_VERSION:=0.9.4 -PKG_RELEASE:=1 - -PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL:=https://github.com/gravitl/netmaker.git -PKG_SOURCE_VERSION:=e9bce264719f88c30e252ecc754d08f422f4c080 -PKG_SOURCE_DATE:=20220117 -PKG_MIRROR_HASH:=skip - -PKG_LICENSE:=MIT -PKG_LICENSE_FILES:=LICENSE -PKG_MAINTAINER:=sbilly - -PKG_BUILD_DEPENDS:=golang/host -PKG_BUILD_PARALLEL:=1 -PKG_USE_MIPS16:=0 - -GO_PKG:=github.com/gravitl/netmaker -GO_PKG_INSTALL_EXTRA:=extra/file extra/dir -GO_PKG_EXCLUDES:=excluded -GO_PKG_LDFLAGS:=-s -w - -include $(INCLUDE_DIR)/package.mk -include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk - -define Package/netmaker -$(call Package/netmaker/Default) -$(call GoPackage/GoSubMenu) - SECTION:=net - CATEGORY:=Network - SUBMENU:=VPN -endef - -define Package/netmaker/Default - TITLE:=Netmaker for OpenWRT - URL:=https://github.com/gravitl/netmaker - DEPENDS:=$(GO_ARCH_DEPENDS) - MAINTAINER:=sbilly -endef - -define Package/netmaker/Default/description -Netmaker is a platform for creating and managing fast, secure, and -dynamic virtual overlay networks using WireGuard. This project offers -OpenWRT packages for Netmaker. -endef - -define Package/netmaker/description -$(call Package/netmaker/Default/description) - -This package contains the binaries. -endef - -define Package/netmaker-dev - TITLE+= (source files) - SECTION:=net - CATEGORY:=Network - SUBMENU:=VPN - PKGARCH:=all -endef - -define Package/netmaker-dev/description -$(call Package/netmaker/Default/description) - -This package provides the source files. -endef - -define Package/netmaker/install - $(INSTALL_DIR) $(1)/etc/netclient/ - $(INSTALL_DIR) $(1)/etc/netclient/config - $(INSTALL_DIR) $(1)/etc/systemd/ - $(INSTALL_DIR) $(1)/etc/systemd/system - $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/netmaker $(1)/usr/bin/ - $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/netclient $(1)/usr/bin/ - $(CP) ./root/* $(1)/ - $(LN) netclient $(1)/etc/netclient/netclient -endef - -$(eval $(call GoBinPackage,netmaker)) -$(eval $(call BuildPackage,netmaker)) - -$(eval $(call GoSrcPackage,netmaker-dev)) -$(eval $(call BuildPackage,netmaker-dev)) diff --git a/netmaker-openwrt/netmaker/root/etc/init.d/netclient b/netmaker-openwrt/netmaker/root/etc/init.d/netclient deleted file mode 100755 index c04977f24..000000000 --- a/netmaker-openwrt/netmaker/root/etc/init.d/netclient +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh /etc/rc.common -#Created by oycol - -EXTRA_COMMANDS="status" -EXTRA_HELP=" status Check service is running" -START=99 - -LOG_FILE="/tmp/netclient.logs" - -start() { - mkdir -p /etc/netclient/config - mkdir -p /etc/systemd/system - - if [ ! -f "${LOG_FILE}" ];then - touch "${LOG_FILE}" - fi - local PID=$(ps|grep "netclient checkin -n all"|grep -v grep|awk '{print $1}') - if [ "${PID}" ];then - echo "service is running" - return - fi - /bin/sh -c "while [ 1 ]; do netclient checkin -n all >> ${LOG_FILE} 2>&1;sleep 15;\ - if [ $(ls -l ${LOG_FILE}|awk '{print $5}') -gt 10240000 ];then tar zcf "${LOG_FILE}.tar" -C / "tmp/netclient.logs" && > $LOG_FILE;fi;done &" - echo "start" -} - -stop() { - local PID=$(ps|grep "netclient checkin -n all"|grep -v grep|awk '{print $1}') - if [ "${PID}" ];then - kill "${PID}" - fi - echo "stop" -} - -status() { - local PID=$(ps|grep "netclient checkin -n all"|grep -v grep|awk '{print $1}') - if [ "${PID}" ];then - echo -e "netclient[${PID}] is running \n" - else - echo -e "netclient is not running \n" - fi -} diff --git a/netmaker-openwrt/scripts/build_ipk.sh b/netmaker-openwrt/scripts/build_ipk.sh deleted file mode 100755 index 1ee25de06..000000000 --- a/netmaker-openwrt/scripts/build_ipk.sh +++ /dev/null @@ -1,177 +0,0 @@ -#!/bin/bash - -# setting working directory -WORK_DIR="/home/user" - -# setting branch -if [ "${OPENWRT_BRANCH}" = "" ] -then - DEFAULT_OPENWRT_BRANCH="openwrt-21.02" -else - DEFAULT_OPENWRT_BRANCH="${OPENWRT_BRANCH}" -fi - -download_openwrt() { - cd ${WORK_DIR} - - # pull code - if [ ! -d "openwrt" ]; then - git clone https://git.openwrt.org/openwrt/openwrt.git - fi -} - -change_openwrt_branch() { - cd ${WORK_DIR}/openwrt - - if [ "${1}" = "" ] - then - echo "Building ${DEFAULT_OPENWRT_BRANCH}" - git checkout -B ${DEFAULT_OPENWRT_BRANCH} origin/${DEFAULT_OPENWRT_BRANCH} - else - echo "Building ${1}" - git checkout -B ${1} origin/${1} - fi -} - -init_openwrt_branch() { - cd ${WORK_DIR}/openwrt - - git stash - git pull --all - git pull --tags -} - -init_openwrt_link() { - cd ${WORK_DIR}/openwrt - - sudo chown 1000:1000 /src -R - - mkdir -p /src/dl - mkdir -p /src/staging_dir - mkdir -p /src/build_dir - mkdir -p /src/tmp - mkdir -p /src/bin - - ln -s /src/dl ${WORK_DIR}/openwrt/dl - ln -s /src/staging_dir ${WORK_DIR}/openwrt/staging_dir - ln -s /src/build_dir ${WORK_DIR}/openwrt/build_dir - ln -s /src/tmp ${WORK_DIR}/openwrt/tmp -} - -update_install_openwrt_feeds() { - cd ${WORK_DIR}/openwrt - - ./scripts/feeds update -a - ./scripts/feeds install -a -} - -openwrt_init_config() { - cd ${WORK_DIR}/openwrt - - echo "CONFIG_TARGET_x86=y" > ${WORK_DIR}/openwrt/.config - echo "CONFIG_TARGET_x86_64=y" >> ${WORK_DIR}/openwrt/.config -} - -openwrt_make_build_env() { - cd ${WORK_DIR}/openwrt - - make defconfig - make -j4 download - make -j4 tools/install - make -j4 toolchain/install -} - -openwrt_make() { - cd ${WORK_DIR}/openwrt - - make -j4 -} - -openwrt_install_netmaker_feeds() { - cd ${WORK_DIR}/openwrt - - echo "src-git netmaker http://github.com/sbilly/netmaker-openwrt.git" >> feeds.conf.default - - ./scripts/feeds update netmaker - ./scripts/feeds install netmaker -} - -openwrt_install_package_netmaker_config() { - cd ${WORK_DIR}/openwrt - - echo "CONFIG_FEED_netmaker=y" >> ${WORK_DIR}/openwrt/.config - echo "CONFIG_PACKAGE_netmaker=m" >> ${WORK_DIR}/openwrt/.config - echo "CONFIG_PACKAGE_netmaker-dev=m" >> ${WORK_DIR}/openwrt/.config -} - - -openwrt_patch_golang_host() { - cd ${WORK_DIR}/openwrt - echo "patching ${1}" - - if [ "${1}" = "openwrt-19.07" ] - then - sed -i 's/5fb43171046cf8784325e67913d55f88a683435071eef8e9da1aa8a1588fcf5d/2255eb3e4e824dd7d5fcdc2e7f84534371c186312e546fb1086a34c17752f431/g' ${WORK_DIR}/openwrt/feeds/packages/lang/golang/golang/Makefile - sed -i 's/1.13/1.17/g' ${WORK_DIR}/openwrt/feeds/packages/lang/golang/golang-version.mk - sed -i 's/15/2/g' ${WORK_DIR}/openwrt/feeds/packages/lang/golang/golang-version.mk - fi - - if [ "${1}" = "openwrt-18.06" ] - then - sed -i 's/6faf74046b5e24c2c0b46e78571cca4d65e1b89819da1089e53ea57539c63491/2255eb3e4e824dd7d5fcdc2e7f84534371c186312e546fb1086a34c17752f431/g' ${WORK_DIR}/openwrt/feeds/packages/lang/golang/golang/Makefile - sed -i 's/1.10/1.17/g' ${WORK_DIR}/openwrt/feeds/packages/lang/golang/golang-version.mk - sed -i 's/8/2/g' ${WORK_DIR}/openwrt/feeds/packages/lang/golang/golang-version.mk - fi -} - -openwrt_make_netmaker_package() { - cd ${WORK_DIR}/openwrt - - make defconfig - make toolchain/gcc/final/compile - make package/netmaker/clean - find ./ -type d | xargs -n1 sudo chmod 755 -R - make package/netmaker/compile V=s -} - - -openwrt_copy_pacage() { - echo ${1} - echo > /tmp/copy.sh - - cd ${WORK_DIR}/openwrt/bin/packages/x86_64/netmaker/ - - for ipk in ./*.ipk - do - if [ -f "$ipk" ] - then - echo ${ipk} | gawk -F".ipk" -v BRANCH=${1} '{ print "cp -rfv "$0" /src/bin/"$1"-"BRANCH".ipk" }' >> /tmp/copy.sh - fi - done - - /bin/bash /tmp/copy.sh -} - -download_openwrt - -change_openwrt_branch ${DEFAULT_OPENWRT_BRANCH} - -init_openwrt_branch - -init_openwrt_link - -openwrt_install_netmaker_feeds - -update_install_openwrt_feeds - -openwrt_init_config - -openwrt_install_package_netmaker_config - -openwrt_patch_golang_host ${DEFAULT_OPENWRT_BRANCH} - -openwrt_make_netmaker_package - -openwrt_copy_pacage ${DEFAULT_OPENWRT_BRANCH} - -ls -alF ${WORK_DIR}/openwrt/bin/ /src/bin diff --git a/nginx/Config.in b/nginx/Config.in deleted file mode 100755 index 68b037098..000000000 --- a/nginx/Config.in +++ /dev/null @@ -1,247 +0,0 @@ -# -# Copyright (C) 2010-2016 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -menu "Configuration" - depends on PACKAGE_nginx - -config NGINX_SSL - bool - prompt "Enable SSL module" - help - Enable HTTPS/SSL support. - default n - -config NGINX_DAV - bool - prompt "Enable WebDAV module" - help - Enable the HTTP and WebDAV methods PUT, DELETE, MKCOL, COPY and MOVE. - default n - -config NGINX_FLV - bool - prompt "Enable FLV module" - help - Provides the ability to seek within FLV (Flash) files using time-based offsets. - default n - -config NGINX_STUB_STATUS - bool - prompt "Enable stub status module" - help - Enable the stub status module which gives some status from the server. - default n - -config NGINX_HTTP_CHARSET - bool - prompt "Enable HTTP charset module" - default y - -config NGINX_HTTP_GZIP - bool - prompt "Enable HTTP gzip module" - default y - -config NGINX_HTTP_SSI - bool - prompt "Enable HTTP ssi module" - default y - -config NGINX_HTTP_USERID - bool - prompt "Enable HTTP userid module" - default y - -config NGINX_HTTP_ACCESS - bool - prompt "Enable HTTP access module" - default y - -config NGINX_HTTP_AUTH_BASIC - bool - prompt "Enable HTTP auth basic" - default y - -config NGINX_HTTP_AUTH_REQUEST - bool - prompt "Enable HTTP auth request module" - default n - -config NGINX_HTTP_AUTOINDEX - bool - prompt "Enable HTTP autoindex module" - default y - -config NGINX_HTTP_GEO - bool - prompt "Enable HTTP geo module" - default y - -config NGINX_HTTP_MAP - bool - prompt "Enable HTTP map module" - default y - -config NGINX_HTTP_SPLIT_CLIENTS - bool - prompt "Enable HTTP split clients" - default y - -config NGINX_HTTP_REFERER - bool - prompt "Enable HTTP referer module" - default y - -config NGINX_HTTP_REWRITE - bool - prompt "Enable HTTP rewrite module" - select NGINX_PCRE - default y - -config NGINX_HTTP_PROXY - bool - prompt "Enable HTTP proxy module" - default y - -config NGINX_HTTP_FASTCGI - bool - prompt "Enable HTTP fastcgi module" - default y - -config NGINX_HTTP_UWSGI - bool - prompt "Enable HTTP uwsgi module" - default y - -config NGINX_HTTP_SCGI - bool - prompt "Enable HTTP scgi module" - default y - -config NGINX_HTTP_MEMCACHED - bool - prompt "Enable HTTP memcached module" - default y - -config NGINX_HTTP_LIMIT_CONN - bool - prompt "Enable HTTP limit conn" - default y - -config NGINX_HTTP_LIMIT_REQ - bool - prompt "Enable HTTP limit req" - default y - -config NGINX_HTTP_EMPTY_GIF - bool - prompt "Enable HTTP empty gif" - default y - -config NGINX_HTTP_BROWSER - bool - prompt "Enable HTTP browser module" - default y - -config NGINX_HTTP_UPSTREAM_HASH - bool - prompt "Enable HTTP hash module" - default y - -config NGINX_HTTP_UPSTREAM_IP_HASH - bool - prompt "Enable HTTP IP hash module" - default y - -config NGINX_HTTP_UPSTREAM_LEAST_CONN - bool - prompt "Enable HTTP least conn module" - default y - -config NGINX_HTTP_UPSTREAM_KEEPALIVE - bool - prompt "Enable HTTP keepalive module" - default y - -config NGINX_HTTP_CACHE - bool - prompt "Enable HTTP cache" - default y - -config NGINX_HTTP_V2 - bool - prompt "Enable HTTP_V2 module" - default n - -config NGINX_PCRE - bool - prompt "Enable PCRE library usage" - default y - -config NGINX_NAXSI - bool - prompt "Enable NAXSI module" - default y - -config NGINX_LUA - bool - prompt "Enable Lua module" - default n - -config NGINX_HTTP_REAL_IP - bool - prompt "Enable HTTP real ip module" - default n - -config NGINX_HTTP_SECURE_LINK - bool - prompt "Enable HTTP secure link module" - default n - -config NGINX_HTTP_SUB - bool - prompt "Enable HTTP sub module" - default n - -config NGINX_HEADERS_MORE - bool - prompt "Enable Headers_more module" - help - Set and clear input and output headers...more than "add"! - default y - -config NGINX_HTTP_BROTLI - bool - prompt "Enable Brotli compression module" - help - Add support for brotli compression module. - default n - -config NGINX_STREAM_CORE_MODULE - bool - prompt "Enable stream support" - help - Add support for NGINX request streaming. - default y - -config NGINX_RTMP_MODULE - bool - prompt "Enable RTMP module" - depends on NGINX_SSL - help - Add support for NGINX-based Media Streaming Server module. - DASH enhanced - https://github.com/ut0mt8/nginx-rtmp-module - default n - -config NGINX_TS_MODULE - bool - prompt "Enable TS module" - help - Add support for MPEG-TS Live Module module. - default n - -endmenu diff --git a/nginx/Config_ssl.in b/nginx/Config_ssl.in deleted file mode 100755 index 9325fba51..000000000 --- a/nginx/Config_ssl.in +++ /dev/null @@ -1,239 +0,0 @@ -# -# Copyright (C) 2010-2016 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -menu "Configuration" - depends on PACKAGE_nginx-ssl - -config NGINX_DAV - bool - prompt "Enable WebDAV module" - help - Enable the HTTP and WebDAV methods PUT, DELETE, MKCOL, COPY and MOVE. - default n - -config NGINX_FLV - bool - prompt "Enable FLV module" - help - Provides the ability to seek within FLV (Flash) files using time-based offsets. - default n - -config NGINX_STUB_STATUS - bool - prompt "Enable stub status module" - help - Enable the stub status module which gives some status from the server. - default n - -config NGINX_HTTP_CHARSET - bool - prompt "Enable HTTP charset module" - default y - -config NGINX_HTTP_GZIP - bool - prompt "Enable HTTP gzip module" - default y - -config NGINX_HTTP_SSI - bool - prompt "Enable HTTP ssi module" - default y - -config NGINX_HTTP_USERID - bool - prompt "Enable HTTP userid module" - default y - -config NGINX_HTTP_ACCESS - bool - prompt "Enable HTTP access module" - default y - -config NGINX_HTTP_AUTH_BASIC - bool - prompt "Enable HTTP auth basic" - default y - -config NGINX_HTTP_AUTH_REQUEST - bool - prompt "Enable HTTP auth request module" - default n - -config NGINX_HTTP_AUTOINDEX - bool - prompt "Enable HTTP autoindex module" - default y - -config NGINX_HTTP_GEO - bool - prompt "Enable HTTP geo module" - default y - -config NGINX_HTTP_MAP - bool - prompt "Enable HTTP map module" - default y - -config NGINX_HTTP_SPLIT_CLIENTS - bool - prompt "Enable HTTP split clients" - default y - -config NGINX_HTTP_REFERER - bool - prompt "Enable HTTP referer module" - default y - -config NGINX_HTTP_REWRITE - bool - prompt "Enable HTTP rewrite module" - select NGINX_PCRE - default y - -config NGINX_HTTP_PROXY - bool - prompt "Enable HTTP proxy module" - default y - -config NGINX_HTTP_FASTCGI - bool - prompt "Enable HTTP fastcgi module" - default y - -config NGINX_HTTP_UWSGI - bool - prompt "Enable HTTP uwsgi module" - default y - -config NGINX_HTTP_SCGI - bool - prompt "Enable HTTP scgi module" - default y - -config NGINX_HTTP_MEMCACHED - bool - prompt "Enable HTTP memcached module" - default y - -config NGINX_HTTP_LIMIT_CONN - bool - prompt "Enable HTTP limit conn" - default y - -config NGINX_HTTP_LIMIT_REQ - bool - prompt "Enable HTTP limit req" - default y - -config NGINX_HTTP_EMPTY_GIF - bool - prompt "Enable HTTP empty gif" - default y - -config NGINX_HTTP_BROWSER - bool - prompt "Enable HTTP browser module" - default y - -config NGINX_HTTP_UPSTREAM_HASH - bool - prompt "Enable HTTP hash module" - default y - -config NGINX_HTTP_UPSTREAM_IP_HASH - bool - prompt "Enable HTTP IP hash module" - default y - -config NGINX_HTTP_UPSTREAM_LEAST_CONN - bool - prompt "Enable HTTP least conn module" - default y - -config NGINX_HTTP_UPSTREAM_KEEPALIVE - bool - prompt "Enable HTTP keepalive module" - default y - -config NGINX_HTTP_CACHE - bool - prompt "Enable HTTP cache" - default y - -config NGINX_HTTP_V2 - bool - prompt "Enable HTTP_V2 module" - default n - -config NGINX_PCRE - bool - prompt "Enable PCRE library usage" - default y - -config NGINX_NAXSI - bool - prompt "Enable NAXSI module" - default y - -config NGINX_LUA - bool - prompt "Enable Lua module" - default n - -config NGINX_HTTP_REAL_IP - bool - prompt "Enable HTTP real ip module" - default n - -config NGINX_HTTP_SECURE_LINK - bool - prompt "Enable HTTP secure link module" - default n - -config NGINX_HTTP_SUB - bool - prompt "Enable HTTP sub module" - default n - -config NGINX_HEADERS_MORE - bool - prompt "Enable Headers_more module" - help - Set and clear input and output headers...more than "add"! - default y - -config NGINX_HTTP_BROTLI - bool - prompt "Enable Brotli compression module" - help - Add support for brotli compression module. - default n - -config NGINX_STREAM_CORE_MODULE - bool - prompt "Enable stream support" - help - Add support for NGINX request streaming. - default n - -config NGINX_RTMP_MODULE - bool - prompt "Enable RTMP module" - help - Add support for NGINX-based Media Streaming Server module. - DASH enhanced - https://github.com/ut0mt8/nginx-rtmp-module - default n - -config NGINX_TS_MODULE - bool - prompt "Enable TS module" - help - Add support for MPEG-TS Live Module module. - default n - -endmenu diff --git a/nginx/Makefile b/nginx/Makefile deleted file mode 100755 index dc32fbb04..000000000 --- a/nginx/Makefile +++ /dev/null @@ -1,532 +0,0 @@ -# -# Copyright (C) 2012-2016 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:=nginx -PKG_VERSION:=1.16.1 -PKG_RELEASE:=2 - -PKG_SOURCE:=nginx-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://nginx.org/download/ -PKG_HASH:=f11c2a6dd1d3515736f0324857957db2de98be862461b5a542a3ac6188dbe32b - -PKG_MAINTAINER:=Thomas Heil \ - Ansuel Smith -PKG_LICENSE:=2-clause BSD-like license - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) - -PKG_FIXUP:=autoreconf -PKG_BUILD_PARALLEL:=1 -PKG_INSTALL:=1 - -PKG_CONFIG_DEPENDS := \ - CONFIG_NGINX_SSL \ - CONFIG_NGINX_DAV \ - CONFIG_NGINX_FLV \ - CONFIG_NGINX_STUB_STATUS \ - CONFIG_NGINX_HTTP_CHARSET \ - CONFIG_NGINX_HTTP_GZIP \ - CONFIG_NGINX_HTTP_SSI \ - CONFIG_NGINX_HTTP_USERID \ - CONFIG_NGINX_HTTP_ACCESS \ - CONFIG_NGINX_HTTP_AUTH_BASIC \ - CONFIG_NGINX_HTTP_AUTH_REQUEST \ - CONFIG_NGINX_HTTP_AUTOINDEX \ - CONFIG_NGINX_HTTP_GEO \ - CONFIG_NGINX_HTTP_MAP \ - CONFIG_NGINX_HTTP_SPLIT_CLIENTS \ - CONFIG_NGINX_HTTP_REFERER \ - CONFIG_NGINX_HTTP_REWRITE \ - CONFIG_NGINX_HTTP_PROXY \ - CONFIG_NGINX_HTTP_FASTCGI \ - CONFIG_NGINX_HTTP_UWSGI \ - CONFIG_NGINX_HTTP_SCGI \ - CONFIG_NGINX_HTTP_MEMCACHED \ - CONFIG_NGINX_HTTP_LIMIT_CONN \ - CONFIG_NGINX_HTTP_LIMIT_REQ \ - CONFIG_NGINX_HTTP_EMPTY_GIF \ - CONFIG_NGINX_HTTP_BROWSER \ - CONFIG_NGINX_HTTP_UPSTREAM_HASH \ - CONFIG_NGINX_HTTP_UPSTREAM_IP_HASH \ - CONFIG_NGINX_HTTP_UPSTREAM_LEAST_CONN \ - CONFIG_NGINX_HTTP_UPSTREAM_KEEPALIVE \ - CONFIG_NGINX_HTTP_UPSTREAM_ZONE \ - CONFIG_NGINX_HTTP_CACHE \ - CONFIG_NGINX_HTTP_V2 \ - CONFIG_NGINX_PCRE \ - CONFIG_NGINX_NAXSI \ - CONFIG_NGINX_LUA \ - CONFIG_NGINX_HTTP_REAL_IP \ - CONFIG_NGINX_HTTP_SECURE_LINK \ - CONFIG_NGINX_HTTP_BROTLI \ - CONFIG_NGINX_HEADERS_MORE \ - CONFIG_NGINX_STREAM_CORE_MODULE \ - CONFIG_NGINX_RTMP_MODULE \ - CONFIG_NGINX_TS_MODULE \ - -include $(INCLUDE_DIR)/package.mk - -define Package/nginx/default - SECTION:=net - CATEGORY:=Network - SUBMENU:=Web Servers/Proxies - TITLE:=Nginx web server - URL:=http://nginx.org/ - DEPENDS:=+NGINX_PCRE:libpcre +(NGINX_SSL||NGINX_HTTP_CACHE||NGINX_HTTP_AUTH_BASIC):libopenssl \ - +NGINX_HTTP_GZIP:zlib +NGINX_LUA:liblua +libpthread +NGINX_DAV:libexpat -endef - -define Package/nginx/description - nginx is an HTTP and reverse proxy server, as well as a mail proxy server, \ - written by Igor Sysoev. (Some module require SSL module enable to show up in \ - config menu) -endef - -define Package/nginx - $(Package/nginx/default) - VARIANT:=no-ssl -endef - -define Package/nginx-ssl - $(Package/nginx/default) - TITLE += with SSL support - DEPENDS +=+libopenssl - VARIANT:=ssl - PROVIDES:=nginx -endef - -Package/nginx-ssl/description = $(Package/nginx/description) \ - This varian is compiled with SSL support enabled. To enable additional module \ - select them in the nginx default configuration menu. - -define Package/nginx-all-module - $(Package/nginx/default) - TITLE += with ALL module selected - DEPENDS:=+libpcre +libopenssl +zlib +liblua +libpthread +libexpat - VARIANT:=all-module - PROVIDES:=nginx -endef - -Package/nginx-all-module/description = $(Package/nginx/description) \ - This varian is compiled with ALL module selected. - -define Package/nginx/config - source "$(SOURCE)/Config.in" -endef - -define Package/nginx-ssl/config - source "$(SOURCE)/Config_ssl.in" -endef - -config_files=nginx.conf mime.types - -define Package/nginx/conffiles -/etc/nginx/ -endef - -Package/nginx-ssl/conffiles = $(Package/nginx/conffiles) -Package/nginx-all-module/conffiles = $(Package/nginx/conffiles) - - -ADDITIONAL_MODULES:= - -ifneq ($(BUILD_VARIANT),all-module) - ifneq ($(CONFIG_NGINX_HTTP_CACHE),y) - ADDITIONAL_MODULES += --without-http-cache - endif - ifneq ($(CONFIG_NGINX_PCRE),y) - ADDITIONAL_MODULES += --without-pcre - endif - ifneq ($(CONFIG_NGINX_HTTP_CHARSET),y) - ADDITIONAL_MODULES += --without-http_charset_module - else - config_files += koi-utf koi-win win-utf - endif - ifneq ($(CONFIG_NGINX_HTTP_GZIP),y) - ADDITIONAL_MODULES += --without-http_gzip_module - endif - ifneq ($(CONFIG_NGINX_HTTP_SSI),y) - ADDITIONAL_MODULES += --without-http_ssi_module - endif - ifneq ($(CONFIG_NGINX_HTTP_USERID),y) - ADDITIONAL_MODULES += --without-http_userid_module - endif - ifneq ($(CONFIG_NGINX_HTTP_ACCESS),y) - ADDITIONAL_MODULES += --without-http_access_module - endif - ifneq ($(CONFIG_NGINX_HTTP_AUTH_BASIC),y) - ADDITIONAL_MODULES += --without-http_auth_basic_module - endif - ifneq ($(CONFIG_NGINX_HTTP_AUTOINDEX),y) - ADDITIONAL_MODULES += --without-http_autoindex_module - endif - ifneq ($(CONFIG_NGINX_HTTP_GEO),y) - ADDITIONAL_MODULES += --without-http_geo_module - endif - ifneq ($(CONFIG_NGINX_HTTP_MAP),y) - ADDITIONAL_MODULES += --without-http_map_module - endif - ifneq ($(CONFIG_NGINX_HTTP_SPLIT_CLIENTS),y) - ADDITIONAL_MODULES += --without-http_split_clients_module - endif - ifneq ($(CONFIG_NGINX_HTTP_REFERER),y) - ADDITIONAL_MODULES += --without-http_referer_module - endif - ifneq ($(CONFIG_NGINX_HTTP_REWRITE),y) - ADDITIONAL_MODULES += --without-http_rewrite_module - endif - ifneq ($(CONFIG_NGINX_HTTP_PROXY),y) - ADDITIONAL_MODULES += --without-http_proxy_module - endif - ifneq ($(CONFIG_NGINX_HTTP_FASTCGI),y) - ADDITIONAL_MODULES += --without-http_fastcgi_module - else - config_files += fastcgi_params - endif - ifneq ($(CONFIG_NGINX_HTTP_UWSGI),y) - ADDITIONAL_MODULES += --without-http_uwsgi_module - endif - ifneq ($(CONFIG_NGINX_HTTP_SCGI),y) - ADDITIONAL_MODULES += --without-http_scgi_module - endif - ifneq ($(CONFIG_NGINX_HTTP_MEMCACHED),y) - ADDITIONAL_MODULES += --without-http_memcached_module - endif - ifneq ($(CONFIG_NGINX_HTTP_LIMIT_CONN),y) - ADDITIONAL_MODULES += --without-http_limit_conn_module - endif - ifneq ($(CONFIG_NGINX_HTTP_LIMIT_REQ),y) - ADDITIONAL_MODULES += --without-http_limit_req_module - endif - ifneq ($(CONFIG_NGINX_HTTP_EMPTY_GIF),y) - ADDITIONAL_MODULES += --without-http_empty_gif_module - endif - ifneq ($(CONFIG_NGINX_HTTP_BROWSER),y) - ADDITIONAL_MODULES += --without-http_browser_module - endif - ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_HASH),y) - ADDITIONAL_MODULES += --without-http_upstream_hash_module - endif - ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_IP_HASH),y) - ADDITIONAL_MODULES += --without-http_upstream_ip_hash_module - endif - ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_LEAST_CONN),y) - ADDITIONAL_MODULES += --without-http_upstream_least_conn_module - endif - ifneq ($(CONFIG_NGINX_HTTP_UPSTREAM_KEEPALIVE),y) - ADDITIONAL_MODULES += --without-http_upstream_keepalive_module - endif - - ifeq ($(BUILD_VARIANT),ssl) - ifneq ($(CONFIG_NGINX_SSL),y) - ADDITIONAL_MODULES += --with-http_ssl_module - endif - endif - - ifeq ($(CONFIG_NGINX_SSL),y) - ADDITIONAL_MODULES += --with-http_ssl_module - endif - ifeq ($(CONFIG_NGINX_NAXSI),y) - ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-naxsi/naxsi_src - endif - ifeq ($(CONFIG_NGINX_LUA),y) - ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/lua-nginx - endif - ifeq ($(CONFIG_IPV6),y) - ADDITIONAL_MODULES += --with-ipv6 - endif - ifeq ($(CONFIG_NGINX_STUB_STATUS),y) - ADDITIONAL_MODULES += --with-http_stub_status_module - endif - ifeq ($(CONFIG_NGINX_FLV),y) - ADDITIONAL_MODULES += --with-http_flv_module - endif - ifeq ($(CONFIG_NGINX_DAV),y) - ADDITIONAL_MODULES += --with-http_dav_module --add-module=$(PKG_BUILD_DIR)/nginx-dav-ext-module - endif - ifeq ($(CONFIG_NGINX_HTTP_AUTH_REQUEST),y) - ADDITIONAL_MODULES += --with-http_auth_request_module - endif - ifeq ($(CONFIG_NGINX_HTTP_V2),y) - ADDITIONAL_MODULES += --with-http_v2_module - endif - ifeq ($(CONFIG_NGINX_HTTP_REAL_IP),y) - ADDITIONAL_MODULES += --with-http_realip_module - endif - ifeq ($(CONFIG_NGINX_HTTP_SECURE_LINK),y) - ADDITIONAL_MODULES += --with-http_secure_link_module - endif - ifeq ($(CONFIG_NGINX_HTTP_SUB),y) - ADDITIONAL_MODULES += --with-http_sub_module - endif - ifeq ($(CONFIG_NGINX_STREAM_CORE_MODULE),y) - ADDITIONAL_MODULES += --with-stream - endif - ifeq ($(CONFIG_NGINX_HEADERS_MORE),y) - ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-headers-more - endif - ifeq ($(CONFIG_NGINX_HTTP_BROTLI),y) - ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-brotli - endif - ifeq ($(CONFIG_NGINX_RTMP_MODULE),y) - ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-rtmp - endif - ifeq ($(CONFIG_NGINX_TS_MODULE),y) - ADDITIONAL_MODULES += --add-module=$(PKG_BUILD_DIR)/nginx-ts - endif -else - CONFIG_NGINX_HEADERS_MORE:=y - CONFIG_NGINX_HTTP_BROTLI:=y - CONFIG_NGINX_RTMP_MODULE:=y - CONFIG_NGINX_TS_MODULE:=y - CONFIG_NGINX_NAXSI:=y - CONFIG_NGINX_LUA:=y - CONFIG_NGINX_DAV:=y - ADDITIONAL_MODULES += --with-http_ssl_module --add-module=$(PKG_BUILD_DIR)/nginx-naxsi/naxsi_src \ - --add-module=$(PKG_BUILD_DIR)/lua-nginx --with-ipv6 --with-http_stub_status_module --with-http_flv_module \ - --with-http_dav_module --add-module=$(PKG_BUILD_DIR)/nginx-dav-ext-module \ - --with-http_auth_request_module --with-http_v2_module --with-http_realip_module \ - --with-http_secure_link_module --with-http_sub_module --add-module=$(PKG_BUILD_DIR)/nginx-headers-more \ - --with-stream \ - --add-module=$(PKG_BUILD_DIR)/nginx-brotli --add-module=$(PKG_BUILD_DIR)/nginx-rtmp \ - --add-module=$(PKG_BUILD_DIR)/nginx-ts - config_files += koi-utf koi-win win-utf fastcgi_params -endif - -define Package/nginx-mod-luci/default - TITLE:=Nginx on LuCI - SECTION:=net - CATEGORY:=Network - SUBMENU:=Web Servers/Proxies - TITLE:=Support file for Nginx - URL:=http://nginx.org/ - DEPENDS:=+uwsgi-cgi +uwsgi-cgi-luci-support -endef - -define Package/nginx-mod-luci - $(Package/nginx-mod-luci/default) - DEPENDS += +nginx -endef - -define Package/nginx-mod-luci/description - Support file for LuCI in nginx. Include custom nginx configuration, autostart script for uwsgi. -endef - -define Package/nginx-mod-luci-ssl - $(Package/nginx-mod-luci/default) - TITLE += with HTTPS support - DEPENDS += +nginx-ssl -endef - -Package/nginx-mod-luci-ssl/description = $(define Package/nginx-mod-luci/description) \ - This also include redirect from http to https and cert autogeneration. - -TARGET_CFLAGS += -fvisibility=hidden -ffunction-sections -fdata-sections -DNGX_LUA_NO_BY_LUA_BLOCK -TARGET_LDFLAGS += -Wl,--gc-sections - -ifeq ($(CONFIG_NGINX_LUA),y) - CONFIGURE_VARS += LUA_INC=$(STAGING_DIR)/usr/include \ - LUA_LIB=$(STAGING_DIR)/usr/lib -endif - -CONFIGURE_ARGS += \ - --crossbuild=Linux::$(ARCH) \ - --prefix=/usr \ - --conf-path=/etc/nginx/nginx.conf \ - $(ADDITIONAL_MODULES) \ - --error-log-path=/var/log/nginx/error.log \ - --pid-path=/var/run/nginx.pid \ - --lock-path=/var/lock/nginx.lock \ - --http-log-path=/var/log/nginx/access.log \ - --http-client-body-temp-path=/var/lib/nginx/body \ - --http-proxy-temp-path=/var/lib/nginx/proxy \ - --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \ - --with-cc="$(TARGET_CC)" \ - --with-cc-opt="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \ - --with-ld-opt="$(TARGET_LDFLAGS)" \ - --without-http_upstream_zone_module - -define Package/nginx-mod-luci/install - $(INSTALL_DIR) $(1)/etc/nginx - $(INSTALL_BIN) ./files-luci-support/luci_uwsgi.conf $(1)/etc/nginx/luci_uwsgi.conf - $(INSTALL_BIN) ./files-luci-support/luci_nginx.conf $(1)/etc/nginx/luci_nginx.conf - $(INSTALL_DIR) $(1)/etc/uci-defaults - $(INSTALL_BIN) ./files-luci-support/60_nginx-luci-support $(1)/etc/uci-defaults/60_nginx-luci-support -endef - -define Package/nginx-mod-luci-ssl/install - $(Package/nginx-mod-luci/install) - $(INSTALL_DIR) $(1)/etc/nginx - $(INSTALL_BIN) ./files-luci-support/luci_nginx_ssl.conf $(1)/etc/nginx/luci_nginx_ssl.conf - $(INSTALL_DIR) $(1)/etc/uci-defaults - $(INSTALL_BIN) ./files-luci-support/70_nginx-luci-support-ssl $(1)/etc/uci-defaults/70_nginx-luci-support-ssl -endef - -define Package/nginx/install - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/nginx $(1)/usr/sbin/ - $(INSTALL_DIR) $(1)/etc/nginx - $(INSTALL_DATA) $(addprefix $(PKG_INSTALL_DIR)/etc/nginx/,$(config_files)) $(1)/etc/nginx/ - $(INSTALL_DIR) $(1)/etc/init.d - $(INSTALL_BIN) ./files/nginx.init $(1)/etc/init.d/nginx -ifeq ($(CONFIG_NGINX_NAXSI),y) - $(INSTALL_DIR) $(1)/etc/nginx - $(INSTALL_BIN) $(PKG_BUILD_DIR)/nginx-naxsi/naxsi_config/naxsi_core.rules $(1)/etc/nginx - chmod 0640 $(1)/etc/nginx/naxsi_core.rules -endif - $(if $(CONFIG_NGINX_NAXSI),$($(INSTALL_BIN) $(PKG_BUILD_DIR)/nginx-naxsi/naxsi_config/naxsi_core.rules $(1)/etc/nginx)) - $(if $(CONFIG_NGINX_NAXSI),$(chmod 0640 $(1)/etc/nginx/naxsi_core.rules)) -endef - -Package/nginx-ssl/install = $(Package/nginx/install) -Package/nginx-all-module/install = $(Package/nginx/install) - -define Build/Prepare - $(Build/Prepare/Default) - $(Prepare/nginx-naxsi) - $(Prepare/lua-nginx) - $(Prepare/nginx-brotli) - $(Prepare/nginx-headers-more) - $(Prepare/nginx-rtmp) - $(Prepare/nginx-ts) - $(Prepare/nginx-dav-ext-module) -endef - - -ifeq ($(CONFIG_NGINX_HEADERS_MORE),y) - define Download/nginx-headers-more - VERSION:=a9f7c7e86cc7441d04e2f11f01c2e3a9c4b0301d - SUBDIR:=nginx-headers-more - FILE:=headers-more-nginx-module-$(PKG_VERSION)-$$(VERSION).tar.gz - URL:=https://github.com/openresty/headers-more-nginx-module.git - MIRROR_HASH:=432609015719aaa7241e5166c7cda427acbe004f725887f78ef629d51bd9cb3f - PROTO:=git - endef - $(eval $(call Download,nginx-headers-more)) - - define Prepare/nginx-headers-more - $(eval $(Download/nginx-headers-more)) - gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) - endef -endif - - -ifeq ($(CONFIG_NGINX_HTTP_BROTLI),y) - define Download/nginx-brotli - VERSION:=e26248ee361c04e25f581b92b85d95681bdffb39 - SUBDIR:=nginx-brotli - FILE:=ngx-brotli-module-$(PKG_VERSION)-$$(VERSION).tar.gz - URL:=https://github.com/eustas/ngx_brotli.git - MIRROR_HASH:=76b891ba49f82f0cfbc9cba875646e26ee986b522373e0aa2698a9923a4adcdb - PROTO:=git - endef - $(eval $(call Download,nginx-brotli)) - - define Prepare/nginx-brotli - $(eval $(Download/nginx-brotli)) - gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) - endef -endif - - -ifeq ($(CONFIG_NGINX_RTMP_MODULE),y) - define Download/nginx-rtmp - VERSION:=f0ea62342a4eca504b311cd5df910d026c3ea4cf - SUBDIR:=nginx-rtmp - FILE:=ngx-rtmp-module-$(PKG_VERSION)-$$(VERSION).tar.gz - URL:=https://github.com/ut0mt8/nginx-rtmp-module.git - MIRROR_HASH:=9ba7625718d21f658c4878729271832a07bd989165f1d1c720b3a9b54cf738cc - PROTO:=git - endef - $(eval $(call Download,nginx-rtmp)) - - define Prepare/nginx-rtmp - $(eval $(Download/nginx-rtmp)) - gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) - endef -endif - - -ifeq ($(CONFIG_NGINX_TS_MODULE),y) - define Download/nginx-ts - VERSION:=ef2f874d95cc75747eb625a292524a702aefb0fd - SUBDIR:=nginx-ts - FILE:=ngx-ts-module-$(PKG_VERSION)-$$(VERSION).tar.gz - URL:=https://github.com/arut/nginx-ts-module.git - MIRROR_HASH:=31ecc9968b928886b54884138eafe2fa747648bca5094d4c3132e8ae9509d1d3 - PROTO:=git - endef - $(eval $(call Download,nginx-ts)) - - define Prepare/nginx-ts - $(eval $(Download/nginx-ts)) - gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) - endef -endif - - -ifeq ($(CONFIG_NGINX_NAXSI),y) - define Download/nginx-naxsi - VERSION:=951123ad456bdf5ac94e8d8819342fe3d49bc002 - SUBDIR:=nginx-naxsi - FILE:=nginx-naxsi-module-$(PKG_VERSION)-$$(VERSION).tar.gz - URL:=https://github.com/nbs-system/naxsi.git - MIRROR_HASH:=7ab791f2ff38096f48013141bbfe20ba213d5e04dcac08ca82e0cac07d5c30f0 - PROTO:=git - endef - $(eval $(call Download,nginx-naxsi)) - - define Prepare/nginx-naxsi - $(eval $(Download/nginx-naxsi)) - gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) - endef -endif - - -ifeq ($(CONFIG_NGINX_LUA),y) - define Download/lua-nginx - VERSION:=e94f2e5d64daa45ff396e262d8dab8e56f5f10e0 - SUBDIR:=lua-nginx - FILE:=lua-nginx-module-$(PKG_VERSION)-$$(VERSION).tar.gz - URL:=https://github.com/openresty/lua-nginx-module.git - MIRROR_HASH:=ae439f9a8b3c34d7240735b844db72ee721af4791bbaff5692bca20e6785f541 - PROTO:=git - endef - $(eval $(call Download,lua-nginx)) - - define Prepare/lua-nginx - $(eval $(Download/lua-nginx)) - gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) - $(call PatchDir,$(PKG_BUILD_DIR),./patches-lua-nginx) - endef -endif - - -ifeq ($(CONFIG_NGINX_DAV),y) - define Download/nginx-dav-ext-module - VERSION:=430fd774fe838a04f1a5defbf1dd571d42300cf9 - SUBDIR:=nginx-dav-ext-module - FILE:=nginx-dav-ext-module-$(PKG_VERSION)-$$(VERSION).tar.gz - URL:=https://github.com/arut/nginx-dav-ext-module.git - MIRROR_HASH:=0566053a8756423ecab455fd9d218cec1e017598fcbb3d6415a06f816851611e - PROTO:=git - endef - $(eval $(call Download,nginx-dav-ext-module)) - - define Prepare/nginx-dav-ext-module - $(eval $(Download/nginx-dav-ext-module)) - gzip -dc $(DL_DIR)/$(FILE) | tar -C $(PKG_BUILD_DIR) $(TAR_OPTIONS) - endef -endif - -$(eval $(call BuildPackage,nginx)) -$(eval $(call BuildPackage,nginx-ssl)) -$(eval $(call BuildPackage,nginx-all-module)) -#$(eval $(call BuildPackage,nginx-mod-luci)) -#$(eval $(call BuildPackage,nginx-mod-luci-ssl)) diff --git a/nginx/files-luci-support/60_nginx-luci-support b/nginx/files-luci-support/60_nginx-luci-support deleted file mode 100755 index dd076d260..000000000 --- a/nginx/files-luci-support/60_nginx-luci-support +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -if [ -f "/etc/nginx/luci_nginx.conf" ] && [ -f "/etc/nginx/nginx.conf" ]; then - if [ ! "$(cat '/etc/nginx/nginx.conf' | grep 'luci_uwsgi.conf')" ]; then - mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf_old - mv /etc/nginx/luci_nginx.conf /etc/nginx/nginx.conf - core_number=$(grep -c ^processor /proc/cpuinfo) - sed -i "3s/.*/worker_processes "$core_number";/" /etc/nginx/nginx.conf - if [ -n "$(pgrep uhttpd)" ]; then - /etc/init.d/uhttpd stop - /etc/init.d/uhttpd disable - fi - if [ -n "$(pgrep nginx)" ]; then - /etc/init.d/nginx restart - else - /etc/init.d/nginx start - fi - if [ -n "$(pgrep uwsgi)" ]; then - /etc/init.d/uwsgi restart - else - /etc/init.d/uwsgi start - fi - else - rm /etc/nginx/luci_nginx.conf - fi -fi - -exit 0 diff --git a/nginx/files-luci-support/70_nginx-luci-support-ssl b/nginx/files-luci-support/70_nginx-luci-support-ssl deleted file mode 100755 index 76ce3a819..000000000 --- a/nginx/files-luci-support/70_nginx-luci-support-ssl +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - - -if [ -f "/etc/nginx/luci_nginx_ssl.conf" ] && [ -f "/etc/nginx/nginx.conf" ]; then - if [ ! "$(cat '/etc/nginx/nginx.conf' | grep 'return 301 https://$host$request_uri;')" ]; then - if [ -f "/etc/nginx/nginx.conf_old" ]; then - rm /etc/nginx/nginx.conf - else - mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf_old - fi - mv /etc/nginx/luci_nginx_ssl.conf /etc/nginx/nginx.conf - core_number=$(grep -c ^processor /proc/cpuinfo) - sed -i "3s/.*/worker_processes "$core_number";/" /etc/nginx/nginx.conf - if [ -n "$(pgrep nginx)" ]; then - /etc/init.d/nginx restart - else - /etc/init.d/nginx start - fi - else - rm /etc/nginx/luci_nginx_ssl.conf - fi -fi - - -if [ ! -f "/etc/nginx/nginx.key" ]; then - - NGINX_KEY=/etc/nginx/nginx.key - NGINX_CER=/etc/nginx/nginx.cer - OPENSSL_BIN=/usr/bin/openssl - PX5G_BIN=/usr/sbin/px5g - - # Prefer px5g for certificate generation (existence evaluated last) - GENKEY_CMD="" - UNIQUEID=$(dd if=/dev/urandom bs=1 count=4 | hexdump -e '1/1 "%02x"') - [ -x "$OPENSSL_BIN" ] && GENKEY_CMD="$OPENSSL_BIN req -x509 -nodes" - [ -x "$PX5G_BIN" ] && GENKEY_CMD="$PX5G_BIN selfsigned" - [ -n "$GENKEY_CMD" ] && { - $GENKEY_CMD \ - -days 730 -newkey rsa:2048 -keyout "${NGINX_KEY}.new" -out "${NGINX_CER}.new" \ - -subj /C="ZZ"/ST="Somewhere"/L="Unknown"/O="OpenWrt""$UNIQUEID"/CN="OpenWrt" - sync - mv "${NGINX_KEY}.new" "${NGINX_KEY}" - mv "${NGINX_CER}.new" "${NGINX_CER}" - } -fi - - -exit 0 diff --git a/nginx/files-luci-support/luci_nginx.conf b/nginx/files-luci-support/luci_nginx.conf deleted file mode 100755 index 31af664a2..000000000 --- a/nginx/files-luci-support/luci_nginx.conf +++ /dev/null @@ -1,51 +0,0 @@ - -user nobody nogroup; -worker_processes 1; - -#error_log logs/error.log; -#error_log logs/error.log notice; -#error_log logs/error.log info; - -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include mime.types; - default_type application/octet-stream; - - sendfile on; - keepalive_timeout 0; - - client_body_buffer_size 10K; - client_header_buffer_size 1k; - client_max_body_size 1G; - large_client_header_buffers 2 1k; - - gzip on; - gzip_http_version 1.1; - gzip_vary on; - gzip_comp_level 1; - gzip_proxied any; - - root /www; - - server { - listen 80 default_server; - listen [::]:80 default_server; - server_name localhost; - - location ~* .(jpg|jpeg|png|gif|ico|css|js)$ { - expires 365d; - } - - include luci_uwsgi.conf; - - } - - include /etc/nginx/conf.d/*.conf; -} diff --git a/nginx/files-luci-support/luci_nginx_ssl.conf b/nginx/files-luci-support/luci_nginx_ssl.conf deleted file mode 100755 index 318453b54..000000000 --- a/nginx/files-luci-support/luci_nginx_ssl.conf +++ /dev/null @@ -1,66 +0,0 @@ - -user root; -worker_processes 1; - -#error_log logs/error.log; -#error_log logs/error.log notice; -#error_log logs/error.log info; - -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include mime.types; - default_type application/octet-stream; - - sendfile on; - keepalive_timeout 0; - - client_body_buffer_size 10K; - client_header_buffer_size 1k; - client_max_body_size 1G; - large_client_header_buffers 2 1k; - - gzip on; - gzip_http_version 1.1; - gzip_vary on; - gzip_comp_level 1; - gzip_proxied any; - - root /www; - - server { - listen 80 default_server; - listen [::]:80 default_server; - server_name _; - return 301 https://$host$request_uri; - } - - server { - listen 443 ssl default_server; - listen [::]:443 ssl default_server; - server_name localhost; - - ssl_protocols TLSv1 TLSv1.1 TLSv1.2; - ssl_prefer_server_ciphers on; - ssl_ciphers "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:DHE+AESGCM:DHE:!RSA!aNULL:!eNULL:!LOW:!RC4:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!CAMELLIA:!SEED"; - ssl_session_tickets off; - - ssl_certificate /etc/nginx/nginx.cer; - ssl_certificate_key /etc/nginx/nginx.key; - - location ~* .(jpg|jpeg|png|gif|ico|css|js)$ { - expires 365d; - } - - include luci_uwsgi.conf; - - } - - include /etc/nginx/conf.d/*.conf; -} diff --git a/nginx/files-luci-support/luci_uwsgi.conf b/nginx/files-luci-support/luci_uwsgi.conf deleted file mode 100755 index 6211db74a..000000000 --- a/nginx/files-luci-support/luci_uwsgi.conf +++ /dev/null @@ -1,20 +0,0 @@ -location /cgi-bin/luci { - index index.html; - uwsgi_param QUERY_STRING $query_string; - uwsgi_param REQUEST_METHOD $request_method; - uwsgi_param CONTENT_TYPE $content_type; - uwsgi_param CONTENT_LENGTH $content_length if_not_empty; - uwsgi_param REQUEST_URI $request_uri; - uwsgi_param PATH_INFO $document_uri; - uwsgi_param SERVER_PROTOCOL $server_protocol; - uwsgi_param REMOTE_ADDR $remote_addr; - uwsgi_param REMOTE_PORT $remote_port; - uwsgi_param SERVER_ADDR $server_addr; - uwsgi_param SERVER_PORT $server_port; - uwsgi_param SERVER_NAME $server_name; - uwsgi_modifier1 9; - uwsgi_pass unix:////var/run/uwsgi.sock; -} - -location /luci-static { -} diff --git a/nginx/files/nginx.init b/nginx/files/nginx.init deleted file mode 100755 index 40d389719..000000000 --- a/nginx/files/nginx.init +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh /etc/rc.common -# Copyright (C) 2015 OpenWrt.org - -START=80 - -USE_PROCD=1 - -start_service() { - [ -d /var/log/nginx ] || mkdir -p /var/log/nginx - [ -d /var/lib/nginx ] || mkdir -p /var/lib/nginx - - procd_open_instance - procd_set_param command /usr/sbin/nginx -c /etc/nginx/nginx.conf -g 'daemon off;' - procd_set_param file /etc/nginx/nginx.conf - procd_set_param respawn - procd_close_instance -} diff --git a/nginx/patches-lua-nginx/100-no_by_lua_block.patch b/nginx/patches-lua-nginx/100-no_by_lua_block.patch deleted file mode 100755 index 968e12d58..000000000 --- a/nginx/patches-lua-nginx/100-no_by_lua_block.patch +++ /dev/null @@ -1,195 +0,0 @@ ---- a/lua-nginx/src/ngx_http_lua_module.c -+++ b/lua-nginx/src/ngx_http_lua_module.c -@@ -165,14 +165,14 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - offsetof(ngx_http_lua_loc_conf_t, log_socket_errors), - NULL }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - { ngx_string("init_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_CONF_BLOCK|NGX_CONF_NOARGS, - ngx_http_lua_init_by_lua_block, - NGX_HTTP_MAIN_CONF_OFFSET, - 0, - (void *) ngx_http_lua_init_by_inline }, -- -+#endif - { ngx_string("init_by_lua"), - NGX_HTTP_MAIN_CONF|NGX_CONF_TAKE1, - ngx_http_lua_init_by_lua, -@@ -186,14 +186,14 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_MAIN_CONF_OFFSET, - 0, - (void *) ngx_http_lua_init_by_file }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - { ngx_string("init_worker_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_CONF_BLOCK|NGX_CONF_NOARGS, - ngx_http_lua_init_worker_by_lua_block, - NGX_HTTP_MAIN_CONF_OFFSET, - 0, - (void *) ngx_http_lua_init_worker_by_inline }, -- -+#endif - { ngx_string("init_worker_by_lua"), - NGX_HTTP_MAIN_CONF|NGX_CONF_TAKE1, - ngx_http_lua_init_worker_by_lua, -@@ -209,6 +209,7 @@ static ngx_command_t ngx_http_lua_cmds[] - (void *) ngx_http_lua_init_worker_by_file }, - - #if defined(NDK) && NDK -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - /* set_by_lua $res { inline Lua code } [$arg1 [$arg2 [...]]] */ - { ngx_string("set_by_lua_block"), - NGX_HTTP_SRV_CONF|NGX_HTTP_SIF_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -217,7 +218,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_filter_set_by_lua_inline }, -- -+#endif - /* set_by_lua $res [$arg1 [$arg2 [...]]] */ - { ngx_string("set_by_lua"), - NGX_HTTP_SRV_CONF|NGX_HTTP_SIF_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -245,7 +246,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_rewrite_handler_inline }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - /* rewrite_by_lua_block { } */ - { ngx_string("rewrite_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -254,7 +255,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_rewrite_handler_inline }, -- -+#endif - /* access_by_lua "" */ - { ngx_string("access_by_lua"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -263,7 +264,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_access_handler_inline }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - /* access_by_lua_block { } */ - { ngx_string("access_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -272,7 +273,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_access_handler_inline }, -- -+#endif - /* content_by_lua "" */ - { ngx_string("content_by_lua"), - NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF|NGX_CONF_TAKE1, -@@ -280,7 +281,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_content_handler_inline }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - /* content_by_lua_block { } */ - { ngx_string("content_by_lua_block"), - NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF|NGX_CONF_BLOCK|NGX_CONF_NOARGS, -@@ -288,7 +289,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_content_handler_inline }, -- -+#endif - /* log_by_lua */ - { ngx_string("log_by_lua"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -297,7 +298,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_log_handler_inline }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - /* log_by_lua_block { } */ - { ngx_string("log_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -306,7 +307,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_log_handler_inline }, -- -+#endif - { ngx_string("rewrite_by_lua_file"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF - |NGX_CONF_TAKE1, -@@ -361,7 +362,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_header_filter_inline }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - /* header_filter_by_lua_block { } */ - { ngx_string("header_filter_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -370,7 +371,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_header_filter_inline }, -- -+#endif - { ngx_string("header_filter_by_lua_file"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF - |NGX_CONF_TAKE1, -@@ -386,7 +387,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_body_filter_inline }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - /* body_filter_by_lua_block { } */ - { ngx_string("body_filter_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF -@@ -395,7 +396,7 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_body_filter_inline }, -- -+#endif - { ngx_string("body_filter_by_lua_file"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF - |NGX_CONF_TAKE1, -@@ -403,14 +404,14 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - 0, - (void *) ngx_http_lua_body_filter_file }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - { ngx_string("balancer_by_lua_block"), - NGX_HTTP_UPS_CONF|NGX_CONF_BLOCK|NGX_CONF_NOARGS, - ngx_http_lua_balancer_by_lua_block, - NGX_HTTP_SRV_CONF_OFFSET, - 0, - (void *) ngx_http_lua_balancer_handler_inline }, -- -+#endif - { ngx_string("balancer_by_lua_file"), - NGX_HTTP_UPS_CONF|NGX_CONF_TAKE1, - ngx_http_lua_balancer_by_lua, -@@ -517,14 +518,14 @@ static ngx_command_t ngx_http_lua_cmds[] - NGX_HTTP_LOC_CONF_OFFSET, - offsetof(ngx_http_lua_loc_conf_t, ssl_ciphers), - NULL }, -- -+#ifndef NGX_LUA_NO_BY_LUA_BLOCK - { ngx_string("ssl_certificate_by_lua_block"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_CONF_BLOCK|NGX_CONF_NOARGS, - ngx_http_lua_ssl_cert_by_lua_block, - NGX_HTTP_SRV_CONF_OFFSET, - 0, - (void *) ngx_http_lua_ssl_cert_handler_inline }, -- -+#endif - { ngx_string("ssl_certificate_by_lua_file"), - NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_CONF_TAKE1, - ngx_http_lua_ssl_cert_by_lua, diff --git a/nginx/patches/101-feature_test_fix.patch b/nginx/patches/101-feature_test_fix.patch deleted file mode 100755 index b867c88dd..000000000 --- a/nginx/patches/101-feature_test_fix.patch +++ /dev/null @@ -1,116 +0,0 @@ ---- a/auto/cc/name -+++ b/auto/cc/name -@@ -7,7 +7,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then - - ngx_feature="C compiler" - ngx_feature_name= -- ngx_feature_run=yes -+ ngx_feature_run= - ngx_feature_incs= - ngx_feature_path= - ngx_feature_libs= ---- a/auto/cc/conf -+++ b/auto/cc/conf -@@ -183,7 +183,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then - else - ngx_feature="gcc builtin atomic operations" - ngx_feature_name=NGX_HAVE_GCC_ATOMIC -- ngx_feature_run=yes -+ ngx_feature_run=no - ngx_feature_incs= - ngx_feature_path= - ngx_feature_libs= -@@ -204,7 +204,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then - else - ngx_feature="C99 variadic macros" - ngx_feature_name="NGX_HAVE_C99_VARIADIC_MACROS" -- ngx_feature_run=yes -+ ngx_feature_run=no - ngx_feature_incs="#include - #define var(dummy, ...) sprintf(__VA_ARGS__)" - ngx_feature_path= -@@ -218,7 +218,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then - - ngx_feature="gcc variadic macros" - ngx_feature_name="NGX_HAVE_GCC_VARIADIC_MACROS" -- ngx_feature_run=yes -+ ngx_feature_run=no - ngx_feature_incs="#include - #define var(dummy, args...) sprintf(args)" - ngx_feature_path= ---- a/auto/os/linux -+++ b/auto/os/linux -@@ -36,7 +36,7 @@ fi - - ngx_feature="epoll" - ngx_feature_name="NGX_HAVE_EPOLL" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include " - ngx_feature_path= - ngx_feature_libs= -@@ -110,7 +110,7 @@ ngx_feature_test="int fd; struct stat sb - CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE" - ngx_feature="sendfile()" - ngx_feature_name="NGX_HAVE_SENDFILE" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include - #include " - ngx_feature_path= -@@ -131,7 +131,7 @@ fi - CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" - ngx_feature="sendfile64()" - ngx_feature_name="NGX_HAVE_SENDFILE64" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include - #include " - ngx_feature_path= -@@ -149,7 +149,7 @@ ngx_include="sys/prctl.h"; . auto/includ - - ngx_feature="prctl(PR_SET_DUMPABLE)" - ngx_feature_name="NGX_HAVE_PR_SET_DUMPABLE" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include " - ngx_feature_path= - ngx_feature_libs= ---- a/auto/unix -+++ b/auto/unix -@@ -840,7 +840,7 @@ ngx_feature_test="void *p; p = memalign( - - ngx_feature="mmap(MAP_ANON|MAP_SHARED)" - ngx_feature_name="NGX_HAVE_MAP_ANON" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include " - ngx_feature_path= - ngx_feature_libs= -@@ -853,7 +853,7 @@ ngx_feature_test="void *p; - - ngx_feature='mmap("/dev/zero", MAP_SHARED)' - ngx_feature_name="NGX_HAVE_MAP_DEVZERO" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include - #include - #include " -@@ -868,7 +868,7 @@ ngx_feature_test='void *p; int fd; - - ngx_feature="System V shared memory" - ngx_feature_name="NGX_HAVE_SYSVSHM" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include - #include " - ngx_feature_path= -@@ -882,7 +882,7 @@ ngx_feature_test="int id; - - ngx_feature="POSIX semaphores" - ngx_feature_name="NGX_HAVE_POSIX_SEM" --ngx_feature_run=yes -+ngx_feature_run=no - ngx_feature_incs="#include " - ngx_feature_path= - ngx_feature_libs= diff --git a/nginx/patches/102-sizeof_test_fix.patch b/nginx/patches/102-sizeof_test_fix.patch deleted file mode 100755 index 7d2430eab..000000000 --- a/nginx/patches/102-sizeof_test_fix.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- a/auto/types/sizeof -+++ b/auto/types/sizeof -@@ -25,8 +25,14 @@ $NGX_INCLUDE_UNISTD_H - $NGX_INCLUDE_INTTYPES_H - $NGX_INCLUDE_AUTO_CONFIG_H - -+char object_code_block[] = { -+ '\n', 'e', '4', 'V', 'A', -+ '0', 'x', ('0' + sizeof($ngx_type)), -+ 'Y', '3', 'p', 'M', '\n' -+}; -+ - int main(void) { -- printf("%d", (int) sizeof($ngx_type)); -+ printf("dummy use of object_code_block to avoid gc-section: %c", object_code_block[0]); - return 0; - } - -@@ -40,7 +46,7 @@ eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>& - - - if [ -x $NGX_AUTOTEST ]; then -- ngx_size=`$NGX_AUTOTEST` -+ ngx_size=`sed -ne 's/^e4VA0x\(.\)Y3pM$/\1/p' < $NGX_AUTOTEST` - echo " $ngx_size bytes" - fi - diff --git a/nginx/patches/103-sys_nerr.patch b/nginx/patches/103-sys_nerr.patch deleted file mode 100755 index 5f5d106fe..000000000 --- a/nginx/patches/103-sys_nerr.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/src/os/unix/ngx_errno.c -+++ b/src/os/unix/ngx_errno.c -@@ -8,6 +8,9 @@ - #include - #include - -+#ifndef NGX_SYS_NERR -+#define NGX_SYS_NERR 128 -+#endif - - /* - * The strerror() messages are copied because: diff --git a/nginx/patches/200-config.patch b/nginx/patches/200-config.patch deleted file mode 100755 index f35009576..000000000 --- a/nginx/patches/200-config.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/conf/nginx.conf -+++ b/conf/nginx.conf -@@ -1,5 +1,5 @@ - --#user nobody; -+user nobody nogroup; - worker_processes 1; - - #error_log logs/error.log; -@@ -16,7 +16,7 @@ events { - - http { - include mime.types; -- default_type application/octet-stream; -+ #default_type application/octet-stream; - - #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - # '$status $body_bytes_sent "$http_referer" ' diff --git a/nginx/patches/201-ignore-invalid-options.patch b/nginx/patches/201-ignore-invalid-options.patch deleted file mode 100755 index 28be2fb71..000000000 --- a/nginx/patches/201-ignore-invalid-options.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/auto/options -+++ b/auto/options -@@ -397,8 +397,7 @@ $0: warning: the \"--with-sha1-asm\" opt - --test-build-solaris-sendfilev) NGX_TEST_BUILD_SOLARIS_SENDFILEV=YES ;; - - *) -- echo "$0: error: invalid option \"$option\"" -- exit 1 -+ echo "$0: error: ignoring invalid option \"$option\"" - ;; - esac - done diff --git a/nginx/patches/300-max-processes.patch b/nginx/patches/300-max-processes.patch deleted file mode 100755 index f7465d434..000000000 --- a/nginx/patches/300-max-processes.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/os/unix/ngx_process.h -+++ b/src/os/unix/ngx_process.h -@@ -44,7 +44,7 @@ typedef struct { - } ngx_exec_ctx_t; - - --#define NGX_MAX_PROCESSES 1024 -+#define NGX_MAX_PROCESSES 8 - - #define NGX_PROCESS_NORESPAWN -1 - #define NGX_PROCESS_JUST_SPAWN -2