diff --git a/package/network/services/dnsmasq/Makefile b/package/network/services/dnsmasq/Makefile index 53080cb95b..90a81b5f65 100644 --- a/package/network/services/dnsmasq/Makefile +++ b/package/network/services/dnsmasq/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dnsmasq -PKG_UPSTREAM_VERSION:=2.86test3 +PKG_UPSTREAM_VERSION:=2.85 PKG_VERSION:=$(subst test,~~test,$(subst rc,~rc,$(PKG_UPSTREAM_VERSION))) PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_UPSTREAM_VERSION).tar.xz -PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq/test-releases -PKG_HASH:=0d0b465db89390e9f518f1239dec88b458c84489e7fd38586af6a5781f85e7db +PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq +PKG_HASH:=ad98d3803df687e5b938080f3d25c628fe41c878752d03fbc6199787fee312fa PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING diff --git a/package/network/services/dnsmasq/files/dnsmasq.init b/package/network/services/dnsmasq/files/dnsmasq.init index 55a73d75f1..6a849f2459 100644 --- a/package/network/services/dnsmasq/files/dnsmasq.init +++ b/package/network/services/dnsmasq/files/dnsmasq.init @@ -172,10 +172,6 @@ append_ipset() { xappend "--ipset=$1" } -append_connmark_allowlist() { - xappend "--connmark-allowlist=$1" -} - append_interface() { network_get_device ifname "$1" || ifname="$1" xappend "--interface=$ifname" @@ -921,14 +917,6 @@ dnsmasq_start() config_list_foreach "$cfg" "rev_server" append_rev_server config_list_foreach "$cfg" "address" append_address config_list_foreach "$cfg" "ipset" append_ipset - - local connmark_allowlist_enable - config_get connmark_allowlist_enable "$cfg" connmark_allowlist_enable 0 - [ "$connmark_allowlist_enable" -gt 0 ] && { - append_parm "$cfg" "connmark_allowlist_enable" "--connmark-allowlist-enable" - config_list_foreach "$cfg" "connmark_allowlist" append_connmark_allowlist - } - [ -n "$BOOT" ] || { config_list_foreach "$cfg" "interface" append_interface config_list_foreach "$cfg" "notinterface" append_notinterface diff --git a/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch b/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch index 5670808afc..b601bce1a9 100644 --- a/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch +++ b/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch @@ -26,7 +26,7 @@ Signed-off-by: Kevin Darbyshire-Bryant --- a/src/dnsmasq.h +++ b/src/dnsmasq.h -@@ -1185,7 +1185,7 @@ extern struct daemon { +@@ -1144,7 +1144,7 @@ extern struct daemon { int inotifyfd; #endif #if defined(HAVE_LINUX_NETWORK) @@ -35,7 +35,7 @@ Signed-off-by: Kevin Darbyshire-Bryant #elif defined(HAVE_BSD_NETWORK) int dhcp_raw_fd, dhcp_icmp_fd, routefd; #endif -@@ -1368,9 +1368,6 @@ int read_write(int fd, unsigned char *pa +@@ -1326,9 +1326,6 @@ int read_write(int fd, unsigned char *pa void close_fds(long max_fd, int spare1, int spare2, int spare3); int wildcard_match(const char* wildcard, const char* match); int wildcard_matchn(const char* wildcard, const char* match, int num); diff --git a/package/network/utils/dante/Makefile b/package/network/utils/dante/Makefile deleted file mode 100644 index 15bd6d2afc..0000000000 --- a/package/network/utils/dante/Makefile +++ /dev/null @@ -1,118 +0,0 @@ -# -# Copyright (C) 2011 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:=dante -PKG_VERSION:=1.4.1 -PKG_RELEASE:=4 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://www.inet.no/dante/files/ -PKG_HASH:=b6d232bd6fefc87d14bf97e447e4fcdeef4b28b16b048d804b50b48f261c4f53 - -PKG_MAINTAINER:=Jo-Philipp Wich -PKG_LICENSE:=BSD-4-Clause - -PKG_FIXUP:=autoreconf -PKG_INSTALL:=1 - -include $(INCLUDE_DIR)/package.mk - -CONFIGURE_ARGS += \ - --without-upnp \ - --without-pam \ - --disable-libwrap - -CONFIGURE_VARS += \ - ac_cv_search_pam_start="" \ - ac_cv_func_sched_setscheduler=no - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{a,so*,la} $(1)/usr/lib/ -endef - - -define Package/dante/default - TITLE:=Dante SOCKS - URL:=http://www.inet.no/dante/ -endef - -define Package/dante/default/description -Dante is a circuit-level firewall/proxy that can be used to provide convenient -and secure network connectivity, requiring only that the server Dante runs on -has external network connectivity. Dante is used daily by Fortune 100 companies -and large international organizations, either as a standard SOCKS server or as -a "reverse proxy". -endef - -define Package/libsocks - $(call Package/dante/default) - SECTION:=libs - CATEGORY:=Libraries - TITLE+= Library - ABI_VERSION:=0 -endef - -define Package/libsocks/description -$(call Package/dante/default/description) -This package provides the shared libsocks library. -endef - -define Package/libsocks/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsocks.so.* $(1)/usr/lib/ -endef - - -define Package/sockd - $(call Package/dante/default) - SUBMENU:=Web Servers/Proxies - SECTION:=net - CATEGORY:=Network - TITLE+= Daemon -endef - -define Package/sockd/description -$(call Package/dante/default/description) -This package provides the Dante sockd daemon. -endef - -define Package/sockd/install - $(INSTALL_DIR) $(1)/usr/sbin - $(CP) $(PKG_INSTALL_DIR)/usr/sbin/sockd $(1)/usr/sbin/ -endef - - -define Package/socksify - $(call Package/dante/default) - SECTION:=net - CATEGORY:=Network - SUBMENU:=Web Servers/Proxies - TITLE+= Client -endef - -define Package/socksify/description -$(call Package/dante/default/description) -This package provides the Dante socksify client. -endef - -define Package/socksify/install - $(INSTALL_DIR) $(1)/usr/bin - $(CP) $(PKG_INSTALL_DIR)/usr/bin/socksify $(1)/usr/bin/ - - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdsocks.so* $(1)/usr/lib/ -endef - - -$(eval $(call BuildPackage,libsocks)) -$(eval $(call BuildPackage,sockd)) -$(eval $(call BuildPackage,socksify)) diff --git a/package/network/utils/dante/patches/200-fix-RTLD_NEXT.patch b/package/network/utils/dante/patches/200-fix-RTLD_NEXT.patch deleted file mode 100644 index 594a6f900b..0000000000 --- a/package/network/utils/dante/patches/200-fix-RTLD_NEXT.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- a/lib/address.c -+++ b/lib/address.c -@@ -48,11 +48,12 @@ - - #include "upnp.h" - --#ifndef __USE_GNU --#define __USE_GNU /* XXX for RTLD_NEXT on Linux */ --#endif /* !__USE_GNU */ - #include - -+#ifndef RTLD_NEXT -+#define RTLD_NEXT ((void *) -1l) -+#endif -+ - static const char rcsid[] = - "$Id: address.c,v 1.288.4.4 2014/08/15 18:16:40 karls Exp $"; - ---- a/dlib/interposition.c -+++ b/dlib/interposition.c -@@ -93,11 +93,12 @@ write$NOCANCEL(HAVE_PROT_WRITE_1, HAVE_P - - #endif /* HAVE_DARWIN */ - --#ifndef __USE_GNU --#define __USE_GNU /* XXX for RTLD_NEXT on Linux */ --#endif /* !__USE_GNU */ - #include - -+#ifndef RTLD_NEXT -+#define RTLD_NEXT ((void *) -1l) -+#endif -+ - #ifdef __COVERITY__ - /* - * Coverity naturally has no idea what the function sys_foo calls does, diff --git a/package/network/utils/dante/patches/210-deactivate-sched_setscheduler.patch b/package/network/utils/dante/patches/210-deactivate-sched_setscheduler.patch deleted file mode 100644 index e711189c59..0000000000 --- a/package/network/utils/dante/patches/210-deactivate-sched_setscheduler.patch +++ /dev/null @@ -1,53 +0,0 @@ -When compiled with glibc the config_scan.c wants to use the -cpupolicy2numeric() function which is only available when -HAVE_SCHED_SETSCHEDULER is set. It looks like the wrong define was used here. - -This fixes a build problem with glibc in combination with the force -ac_cv_func_sched_setscheduler=no in the OpenWrt CONFIGURE_VARS. - ---- a/lib/config_scan.c -+++ b/lib/config_scan.c -@@ -3891,7 +3891,7 @@ YY_RULE_SETUP - SERRX(0); - - #else /* !SOCKS_CLIENT */ --#if HAVE_SCHED_SETAFFINITY -+#if HAVE_SCHED_SETSCHEDULER - - BEGIN(0); - -@@ -3899,9 +3899,9 @@ YY_RULE_SETUP - yyerrorx("unknown scheduling policy \"%s\"", yytext); - - return SCHEDULEPOLICY; --#else /* !HAVE_SCHED_SETAFFINITY */ -+#else /* !HAVE_SCHED_SETSCHEDULER */ - yyerrorx("setting cpu scheduling policy is not supported on this platform"); --#endif /* !HAVE_SCHED_SETAFFINITY */ -+#endif /* !HAVE_SCHED_SETSCHEDULER */ - - #endif /* SOCKS_CLIENT */ - } ---- a/lib/config_scan.l -+++ b/lib/config_scan.l -@@ -456,7 +456,7 @@ cpu { - SERRX(0); - - #else /* !SOCKS_CLIENT */ --#if HAVE_SCHED_SETAFFINITY -+#if HAVE_SCHED_SETSCHEDULER - - BEGIN(0); - -@@ -464,9 +464,9 @@ cpu { - yyerrorx("unknown scheduling policy \"%s\"", yytext); - - return SCHEDULEPOLICY; --#else /* !HAVE_SCHED_SETAFFINITY */ -+#else /* !HAVE_SCHED_SETSCHEDULER */ - yyerrorx("setting cpu scheduling policy is not supported on this platform"); --#endif /* !HAVE_SCHED_SETAFFINITY */ -+#endif /* !HAVE_SCHED_SETSCHEDULER */ - - #endif /* SOCKS_CLIENT */ - } diff --git a/target/linux/generic/pending-5.10/730-net-phy-at803x-fix-feature-detection.patch b/target/linux/generic/pending-5.10/730-net-phy-at803x-fix-feature-detection.patch new file mode 100644 index 0000000000..1d4783e382 --- /dev/null +++ b/target/linux/generic/pending-5.10/730-net-phy-at803x-fix-feature-detection.patch @@ -0,0 +1,66 @@ +From 97ca310aa18a93329ef5cd68c20de89761962f45 Mon Sep 17 00:00:00 2001 +From: David Bauer +Date: Sun, 13 Jun 2021 12:19:36 +0200 +Subject: [PATCH] net: phy: at803x: fix feature detection + +AR8031/AR8033 have different status registers for copper +and fiber operation. However, the extended status register +is the same for both operation modes. + +As a result of that, ESTATUS_1000_XFULL is set to 1 even when +operating in copper TP mode. + +Remove this mode from the supported link modes, as this driver +currently only supports copper operation. + +Signed-off-by: David Bauer +--- + drivers/net/phy/at803x.c | 30 +++++++++++++++++++++++++++++- + 1 file changed, 29 insertions(+), 1 deletion(-) + +--- a/drivers/net/phy/at803x.c ++++ b/drivers/net/phy/at803x.c +@@ -935,6 +935,34 @@ static int at803x_set_tunable(struct phy + } + } + ++static int at803x_get_features(struct phy_device *phydev) ++{ ++ int err; ++ ++ err = genphy_read_abilities(phydev); ++ if (err) ++ return err; ++ ++ if (!at803x_match_phy_id(phydev, ATH8031_PHY_ID)) ++ return 0; ++ ++ /* AR8031/AR8033 have different status registers ++ * for copper and fiber operation. However, the ++ * extended status register is the same for both ++ * operation modes. ++ * ++ * As a result of that, ESTATUS_1000_XFULL is set ++ * to 1 even when operating in copper TP mode. ++ * ++ * Remove this mode from the supported link modes, ++ * as this driver currently only supports copper ++ * operation. ++ */ ++ linkmode_clear_bit(ETHTOOL_LINK_MODE_1000baseX_Full_BIT, ++ phydev->supported); ++ return 0; ++} ++ + static int at803x_cable_test_result_trans(u16 status) + { + switch (FIELD_GET(AT803X_CDT_STATUS_STAT_MASK, status)) { +@@ -1156,7 +1184,7 @@ static struct phy_driver at803x_driver[] + .resume = at803x_resume, + .read_page = at803x_read_page, + .write_page = at803x_write_page, +- /* PHY_GBIT_FEATURES */ ++ .get_features = at803x_get_features, + .read_status = at803x_read_status, + .aneg_done = at803x_aneg_done, + .ack_interrupt = &at803x_ack_interrupt, diff --git a/target/linux/generic/pending-5.4/730-net-phy-at803x-fix-feature-detection.patch b/target/linux/generic/pending-5.4/730-net-phy-at803x-fix-feature-detection.patch new file mode 100644 index 0000000000..f25952a2cc --- /dev/null +++ b/target/linux/generic/pending-5.4/730-net-phy-at803x-fix-feature-detection.patch @@ -0,0 +1,66 @@ +From 97ca310aa18a93329ef5cd68c20de89761962f45 Mon Sep 17 00:00:00 2001 +From: David Bauer +Date: Sun, 13 Jun 2021 12:19:36 +0200 +Subject: [PATCH] net: phy: at803x: fix feature detection + +AR8031/AR8033 have different status registers for copper +and fiber operation. However, the extended status register +is the same for both operation modes. + +As a result of that, ESTATUS_1000_XFULL is set to 1 even when +operating in copper TP mode. + +Remove this mode from the supported link modes, as this driver +currently only supports copper operation. + +Signed-off-by: David Bauer +--- + drivers/net/phy/at803x.c | 30 +++++++++++++++++++++++++++++- + 1 file changed, 29 insertions(+), 1 deletion(-) + +--- a/drivers/net/phy/at803x.c ++++ b/drivers/net/phy/at803x.c +@@ -411,6 +411,34 @@ static int at803x_aneg_done(struct phy_d + return aneg_done; + } + ++static int at803x_get_features(struct phy_device *phydev) ++{ ++ int err; ++ ++ err = genphy_read_abilities(phydev); ++ if (err) ++ return err; ++ ++ if (!(phydev->phy_id & phydev->drv->phy_id_mask) == (ATH8031_PHY_ID & phydev->drv->phy_id_mask)) ++ return 0; ++ ++ /* AR8031/AR8033 have different status registers ++ * for copper and fiber operation. However, the ++ * extended status register is the same for both ++ * operation modes. ++ * ++ * As a result of that, ESTATUS_1000_XFULL is set ++ * to 1 even when operating in copper TP mode. ++ * ++ * Remove this mode from the supported link modes, ++ * as this driver currently only supports copper ++ * operation. ++ */ ++ linkmode_clear_bit(ETHTOOL_LINK_MODE_1000baseX_Full_BIT, ++ phydev->supported); ++ return 0; ++} ++ + static int at803x_read_status(struct phy_device *phydev) + { + int ss, err, old_link = phydev->link; +@@ -513,7 +541,7 @@ static struct phy_driver at803x_driver[] + .resume = at803x_resume, + .read_page = at803x_read_page, + .write_page = at803x_write_page, +- /* PHY_GBIT_FEATURES */ ++ .get_features = at803x_get_features, + .read_status = at803x_read_status, + .aneg_done = at803x_aneg_done, + .ack_interrupt = &at803x_ack_interrupt, diff --git a/target/linux/ramips/patches-5.10/710-at803x.patch b/target/linux/ramips/patches-5.10/710-at803x.patch index d15dd92965..ec8f3ba55f 100644 --- a/target/linux/ramips/patches-5.10/710-at803x.patch +++ b/target/linux/ramips/patches-5.10/710-at803x.patch @@ -118,7 +118,23 @@ Signed-off-by: René van Dorst priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM; -@@ -744,6 +818,10 @@ static int at803x_read_status(struct phy +@@ -554,6 +628,7 @@ static int at803x_probe(struct phy_devic + return ret; + } + ++#if 0 + /* Some bootloaders leave the fiber page selected. + * Switch to the copper page, as otherwise we read + * the PHY capabilities from the fiber side. +@@ -565,6 +640,7 @@ static int at803x_probe(struct phy_devic + if (ret) + goto err; + } ++#endif + + return 0; + +@@ -744,6 +820,10 @@ static int at803x_read_status(struct phy { int ss, err, old_link = phydev->link; @@ -129,7 +145,7 @@ Signed-off-by: René van Dorst /* Update the link, but return if there was an error */ err = genphy_update_link(phydev); if (err) -@@ -844,6 +922,12 @@ static int at803x_config_aneg(struct phy +@@ -844,6 +924,12 @@ static int at803x_config_aneg(struct phy { int ret; @@ -142,7 +158,23 @@ Signed-off-by: René van Dorst ret = at803x_config_mdix(phydev, phydev->mdix_ctrl); if (ret < 0) return ret; -@@ -1145,6 +1229,7 @@ static struct phy_driver at803x_driver[] +@@ -943,6 +1029,7 @@ static int at803x_get_features(struct ph + if (err) + return err; + ++#if 0 + if (!at803x_match_phy_id(phydev, ATH8031_PHY_ID)) + return 0; + +@@ -960,6 +1047,7 @@ static int at803x_get_features(struct ph + */ + linkmode_clear_bit(ETHTOOL_LINK_MODE_1000baseX_Full_BIT, + phydev->supported); ++#endif + return 0; + } + +@@ -1173,6 +1261,7 @@ static struct phy_driver at803x_driver[] /* Qualcomm Atheros AR8031/AR8033 */ PHY_ID_MATCH_EXACT(ATH8031_PHY_ID), .name = "Qualcomm Atheros AR8031/AR8033", diff --git a/target/linux/ramips/patches-5.4/991-at803x.patch b/target/linux/ramips/patches-5.4/991-at803x.patch index 4de3118547..a0d9a03fcf 100644 --- a/target/linux/ramips/patches-5.4/991-at803x.patch +++ b/target/linux/ramips/patches-5.4/991-at803x.patch @@ -42,7 +42,7 @@ Signed-off-by: René van Dorst #define AT803X_DEBUG_REG_0 0x00 #define AT803X_DEBUG_RX_CLK_DLY_EN BIT(15) -@@ -274,12 +285,73 @@ static int at803x_resume(struct phy_devi +@@ -274,18 +285,80 @@ static int at803x_resume(struct phy_devi return phy_modify(phydev, MII_BMCR, BMCR_PDOWN | BMCR_ISOLATE, 0); } @@ -116,7 +116,38 @@ Signed-off-by: René van Dorst priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM; -@@ -415,6 +487,10 @@ static int at803x_read_status(struct phy + + phydev->priv = priv; + ++#if 0 + /* Some bootloaders leave the fiber page selected. + * Switch to the copper page, as otherwise we read + * the PHY capabilities from the fiber side. +@@ -295,6 +368,7 @@ static int at803x_probe(struct phy_devic + ret = at803x_write_page(phydev, AT803X_PAGE_COPPER); + mutex_unlock(&phydev->mdio.bus->mdio_lock); + } ++#endif + + return ret; + } +@@ -419,6 +493,7 @@ static int at803x_get_features(struct ph + if (err) + return err; + ++#if 0 + if (!(phydev->phy_id & phydev->drv->phy_id_mask) == (ATH8031_PHY_ID & phydev->drv->phy_id_mask)) + return 0; + +@@ -436,6 +511,7 @@ static int at803x_get_features(struct ph + */ + linkmode_clear_bit(ETHTOOL_LINK_MODE_1000baseX_Full_BIT, + phydev->supported); ++#endif + return 0; + } + +@@ -443,6 +519,10 @@ static int at803x_read_status(struct phy { int ss, err, old_link = phydev->link; @@ -127,7 +158,7 @@ Signed-off-by: René van Dorst /* Update the link, but return if there was an error */ err = genphy_update_link(phydev); if (err) -@@ -469,6 +545,19 @@ static int at803x_read_status(struct phy +@@ -497,6 +577,19 @@ static int at803x_read_status(struct phy return 0; } @@ -147,7 +178,7 @@ Signed-off-by: René van Dorst static struct phy_driver at803x_driver[] = { { /* ATHEROS 8035 */ -@@ -504,6 +593,7 @@ static struct phy_driver at803x_driver[] +@@ -532,6 +625,7 @@ static struct phy_driver at803x_driver[] /* ATHEROS 8031 */ .phy_id = ATH8031_PHY_ID, .name = "Atheros 8031 ethernet", diff --git a/toolchain/glibc/common.mk b/toolchain/glibc/common.mk index b88a456ce7..ec0621494f 100644 --- a/toolchain/glibc/common.mk +++ b/toolchain/glibc/common.mk @@ -12,8 +12,8 @@ PKG_RELEASE:=2 PKG_SOURCE_PROTO:=git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=0ef0e6de7fdfa18328b09ba2afb4f0112d4bdab4 -PKG_MIRROR_HASH:=1f2cfa8bd69f6286f2449317758e3ef29fc55cd420dfe8cd9327f149b0e9ac62 +PKG_SOURCE_VERSION:=58b90461ae100c95e0bc53d29d2187bad290ecaf +PKG_MIRROR_HASH:=33fc6ec88cbf9235b151bea67db8922ef6f42dd5c1f4ff462077224fa3916be4 PKG_SOURCE_URL:=https://sourceware.org/git/glibc.git PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz