Merge Official Source

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
Tianling Shen
2024-11-17 15:43:43 +08:00
15 changed files with 269 additions and 78 deletions
+1
View File
@@ -251,6 +251,7 @@ ifneq ($(CONFIG_USE_APK),)
$(VERSION_SED_SCRIPT) $(1)/etc/apk/repositories
rm -f $(1)/etc/uci-defaults/13_fix-group-user
rm -f $(1)/sbin/pkg_check
else
$(if $(CONFIG_CLEAN_IPKG),, \
mkdir -p $(1)/etc/opkg; \
@@ -3,10 +3,16 @@
json_init
json_load "$(cat /etc/board.json)"
json_select credentials
json_get_vars root_password_hash root_password_hash
[ -z "$root_password_hash" ] || sed -i "s|^root:[^:]*|root:$root_password_hash|g" /etc/shadow
if json_is_a credentials object; then
json_select credentials
json_get_vars root_password_hash root_password_hash
if [ -n "$root_password_hash" ]; then
sed -i "s|^root:[^:]*|root:$root_password_hash|g" /etc/shadow
fi
json_get_vars root_password_plain root_password_plain
[ -z "$root_password_plain" ] || { (echo "$root_password_plain"; sleep 1; echo "$root_password_plain") | passwd root }
json_select ..
json_get_vars root_password_plain root_password_plain
if [ -n "$root_password_plain" ]; then
(echo "$root_password_plain"; sleep 1; echo "$root_password_plain") | passwd root
fi
json_select ..
fi
+1
View File
@@ -163,6 +163,7 @@ ruckus,zf7372)
ubootenv_add_uci_config "/dev/mtd2" "0x0" "0x40000" "0x10000"
;;
sophos,ap15|\
sophos,ap15c|\
sophos,ap55|\
sophos,ap55c|\
sophos,ap100|\
+3 -3
View File
@@ -8,9 +8,9 @@ PKG_LICENSE_FILES:=
PKG_SOURCE_URL:=https://github.com/openwrt/mt76
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2024-10-11.1
PKG_SOURCE_VERSION:=ecca0e77b4bce629ec1f79d83bbd14a68f919188
PKG_MIRROR_HASH:=770823f282c76532567a651bb020208c3ddd5a728c656fcde43129fc95edf538
PKG_SOURCE_DATE:=2024-10-28
PKG_SOURCE_VERSION:=c246fa545119abe5097682316700f13c91399042
PKG_MIRROR_HASH:=ff59d9588e6b114be8fe08013b55da975bc6bb4219b97b6fedb72246e9337c18
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
PKG_USE_NINJA:=0
+2 -2
View File
@@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libnftnl
PKG_CPE_ID:=cpe:/a:netfilter:libnftnl
PKG_VERSION:=1.2.6
PKG_VERSION:=1.2.8
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
PKG_HASH:=ceeaea2cd92147da19f13a35a7f1a4bc2767ff897e838e4b479cf54b59c777f4
PKG_HASH:=37fea5d6b5c9b08de7920d298de3cdc942e7ae64b1a3e8b880b2d390ae67ad95
PKG_MAINTAINER:=Steven Barth <steven@midlink.org>
PKG_LICENSE:=GPL-2.0-or-later
@@ -15,13 +15,14 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
--- a/include/libnftnl/expr.h
+++ b/include/libnftnl/expr.h
@@ -245,6 +245,12 @@ enum {
@@ -272,6 +272,13 @@ enum {
};
enum {
+ NFTNL_EXPR_FULLCONE_FLAGS = NFTNL_EXPR_BASE,
+ NFTNL_EXPR_FULLCONE_REG_PROTO_MIN,
+ NFTNL_EXPR_FULLCONE_REG_PROTO_MAX,
+ __NFTNL_EXPR_FULLCONE_MAX
+};
+
+enum {
@@ -65,7 +66,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
expr/socket.c \
--- /dev/null
+++ b/src/expr/fullcone.c
@@ -0,0 +1,167 @@
@@ -0,0 +1,172 @@
+/*
+ * (C) 2022 wongsyrone
+ *
@@ -102,16 +103,14 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
+
+ switch (type) {
+ case NFTNL_EXPR_FULLCONE_FLAGS:
+ memcpy(&fullcone->flags, data, sizeof(fullcone->flags));
+ memcpy(&fullcone->flags, data, data_len);
+ break;
+ case NFTNL_EXPR_FULLCONE_REG_PROTO_MIN:
+ memcpy(&fullcone->sreg_proto_min, data, sizeof(fullcone->sreg_proto_min));
+ memcpy(&fullcone->sreg_proto_min, data, data_len);
+ break;
+ case NFTNL_EXPR_FULLCONE_REG_PROTO_MAX:
+ memcpy(&fullcone->sreg_proto_max, data, sizeof(fullcone->sreg_proto_max));
+ memcpy(&fullcone->sreg_proto_max, data, data_len);
+ break;
+ default:
+ return -1;
+ }
+ return 0;
+}
@@ -223,10 +222,17 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
+ return offset;
+}
+
+static struct attr_policy fullcone_attr_policy[__NFTNL_EXPR_FULLCONE_MAX] = {
+ [NFTNL_EXPR_FULLCONE_FLAGS] = { .maxlen = sizeof(uint32_t) },
+ [NFTNL_EXPR_FULLCONE_REG_PROTO_MIN] = { .maxlen = sizeof(uint32_t) },
+ [NFTNL_EXPR_FULLCONE_REG_PROTO_MAX] = { .maxlen = sizeof(uint32_t) },
+};
+
+struct expr_ops expr_ops_fullcone = {
+ .name = "fullcone",
+ .alloc_len = sizeof(struct nftnl_expr_fullcone),
+ .max_attr = NFTA_FULLCONE_MAX,
+ .nftnl_max_attr = __NFTNL_EXPR_FULLCONE_MAX - 1,
+ .attr_policy = fullcone_attr_policy,
+ .set = nftnl_expr_fullcone_set,
+ .get = nftnl_expr_fullcone_get,
+ .parse = nftnl_expr_fullcone_parse,
+3 -3
View File
@@ -5,9 +5,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/netifd.git
PKG_SOURCE_DATE:=2024-10-06
PKG_SOURCE_VERSION:=3c6265fdbd02ebd35fa3e7a58d6dfeed081a09d7
PKG_MIRROR_HASH:=00b01243b99995dc52a047e5663cf5c7732f8defd6b726f73ac15e142b02b4fa
PKG_SOURCE_DATE:=2024-11-08
PKG_SOURCE_VERSION:=34eb11eb6f5c62de480d6192f0ca840093127fee
PKG_MIRROR_HASH:=c4c2bc626426d2cd73c9ece54b22ada6ed6254afa992f51b8725312aca240cfd
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
PKG_LICENSE:=GPL-2.0
@@ -379,6 +379,7 @@ _wdev_common_device_config() {
_wdev_common_iface_config() {
config_add_string mode ssid encryption 'key:wpakey'
config_add_boolean bridge_isolate
config_add_array tags
}
_wdev_common_vlan_config() {
+2 -2
View File
@@ -6,12 +6,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=nftables
PKG_VERSION:=1.0.9
PKG_VERSION:=1.1.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
PKG_HASH:=a3c304cd9ba061239ee0474f9afb938a9bb99d89b960246f66f0c3a0a85e14cd
PKG_HASH:=6358830f3a64f31e39b0ad421d7dadcd240b72343ded48d8ef13b8faf204865a
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0
@@ -0,0 +1,18 @@
--- a/tests/shell/run-tests.sh.rej
+++ /dev/null
@@ -1,15 +0,0 @@
---- run-tests.sh
-+++ run-tests.sh
-@@ -565,11 +565,8 @@ feature_probe()
- fi
-
- if [ -x "$with_path.sh" ] ; then
-- echo $with_path
- NFT="$NFT_REAL" $NFT_TEST_UNSHARE_CMD "$with_path.sh" &>/dev/null
-- RET=$?
-- echo $?
-- return $RET
-+ return $?
- fi
-
- return 1
@@ -51,7 +51,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
--- a/src/netlink_delinearize.c
+++ b/src/netlink_delinearize.c
@@ -1473,6 +1473,53 @@ out_err:
@@ -1467,6 +1467,53 @@ out_err:
stmt_free(stmt);
}
@@ -105,7 +105,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
static void netlink_parse_redir(struct netlink_parse_ctx *ctx,
const struct location *loc,
const struct nftnl_expr *nle)
@@ -1901,6 +1948,7 @@ static const struct expr_handler netlink
@@ -1897,6 +1944,7 @@ static const struct expr_handler netlink
{ .name = "tproxy", .parse = netlink_parse_tproxy },
{ .name = "notrack", .parse = netlink_parse_notrack },
{ .name = "masq", .parse = netlink_parse_masq },
@@ -115,7 +115,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
{ .name = "queue", .parse = netlink_parse_queue },
--- a/src/netlink_linearize.c
+++ b/src/netlink_linearize.c
@@ -1221,6 +1221,13 @@ static void netlink_gen_nat_stmt(struct
@@ -1226,6 +1226,13 @@ static void netlink_gen_nat_stmt(struct
nftnl_reg_pmin = NFTNL_EXPR_MASQ_REG_PROTO_MIN;
nftnl_reg_pmax = NFTNL_EXPR_MASQ_REG_PROTO_MAX;
break;
@@ -131,7 +131,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
--- a/src/parser_bison.y
+++ b/src/parser_bison.y
@@ -621,6 +621,7 @@ int nft_lex(void *, void *, void *);
@@ -643,6 +643,7 @@ int nft_lex(void *, void *, void *);
%token SNAT "snat"
%token DNAT "dnat"
%token MASQUERADE "masquerade"
@@ -139,7 +139,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
%token REDIRECT "redirect"
%token RANDOM "random"
%token FULLY_RANDOM "fully-random"
@@ -755,8 +756,8 @@ int nft_lex(void *, void *, void *);
@@ -784,8 +785,8 @@ int nft_lex(void *, void *, void *);
%type <val> limit_burst_pkts limit_burst_bytes limit_mode limit_bytes time_unit quota_mode
%type <stmt> reject_stmt reject_stmt_alloc
%destructor { stmt_free($$); } reject_stmt reject_stmt_alloc
@@ -150,7 +150,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
%type <val> nf_nat_flags nf_nat_flag offset_opt
%type <stmt> tproxy_stmt
%destructor { stmt_free($$); } tproxy_stmt
@@ -3064,6 +3065,7 @@ stmt : verdict_stmt
@@ -3216,6 +3217,7 @@ stmt : verdict_stmt
| queue_stmt
| ct_stmt
| masq_stmt close_scope_nat
@@ -158,7 +158,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
| redir_stmt close_scope_nat
| dup_stmt close_scope_dup
| fwd_stmt close_scope_fwd
@@ -3976,6 +3978,28 @@ masq_stmt_args : TO COLON stmt_expr
@@ -3999,6 +4001,28 @@ masq_stmt_args : TO COLON stmt_expr
{
$<stmt>0->nat.proto = $3;
}
@@ -189,7 +189,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
$<stmt>0->nat.proto = $3;
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -460,6 +460,7 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr
@@ -462,6 +462,7 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr
"snat" { scanner_push_start_cond(yyscanner, SCANSTATE_STMT_NAT); return SNAT; }
"dnat" { scanner_push_start_cond(yyscanner, SCANSTATE_STMT_NAT); return DNAT; }
"masquerade" { scanner_push_start_cond(yyscanner, SCANSTATE_STMT_NAT); return MASQUERADE; }
@@ -199,7 +199,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
<SCANSTATE_STMT_NAT>{
--- a/src/statement.c
+++ b/src/statement.c
@@ -681,6 +681,7 @@ const char *nat_etype2str(enum nft_nat_e
@@ -674,6 +674,7 @@ const char *nat_etype2str(enum nft_nat_e
[NFT_NAT_SNAT] = "snat",
[NFT_NAT_DNAT] = "dnat",
[NFT_NAT_MASQ] = "masquerade",
@@ -0,0 +1,159 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "qca955x.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
/ {
compatible = "sophos,ap15c", "qca,qca9557";
model = "Sophos AP15C";
aliases {
led-boot = &led_status_green;
led-failsafe = &led_status_yellow;
led-running = &led_status_green;
led-upgrade = &led_status_yellow;
label-mac-device = &eth0;
};
chosen {
bootargs = "console=ttyS0,115200n8";
};
keys {
compatible = "gpio-keys";
reset {
label = "reset";
linux,code = <KEY_RESTART>;
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
debounce-interval = <60>;
};
};
leds {
compatible = "gpio-leds";
led_status_green: status_green {
function = LED_FUNCTION_STATUS;
color = <LED_COLOR_ID_GREEN>;
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
default-state = "on";
};
led_status_yellow: status_yellow {
function = LED_FUNCTION_STATUS;
color = <LED_COLOR_ID_YELLOW>;
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
};
};
};
&spi {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <25000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x000000 0x040000>;
read-only;
};
partition@40000 {
label = "u-boot-env";
reg = <0x040000 0x010000>;
};
partition@50000 {
label = "art";
reg = <0x050000 0x010000>;
read-only;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
cal_art_1000: calibration@1000 {
reg = <0x1000 0x440>;
};
};
};
partition@60000 {
label = "config";
reg = <0x060000 0x010000>;
read-only;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
macaddr_config_201a: macaddr@201a {
reg = <0x201a 0x6>;
};
};
};
partition@70000 {
compatible = "denx,uimage";
label = "firmware";
reg = <0x070000 0xf90000>;
};
};
};
};
&mdio0 {
status = "okay";
phy-mask = <0x10>;
phy4: ethernet-phy@4 {
reg = <4>;
eee-broken-100tx;
eee-broken-1000t;
};
};
&eth0 {
status = "okay";
pll-data = <0xa6000000 0xa0000101 0xa0001313>;
nvmem-cells = <&macaddr_config_201a>;
nvmem-cell-names = "mac-address";
phy-mode = "rgmii-id";
phy-handle = <&phy4>;
gmac_config: gmac-config {
device = <&gmac>;
rgmii-enabled = <1>;
rxdv-delay = <3>;
rxd-delay = <3>;
txen-delay = <3>;
txd-delay = <3>;
};
};
&wmac {
status = "okay";
nvmem-cells = <&cal_art_1000>;
nvmem-cell-names = "calibration";
};
@@ -76,6 +76,7 @@ ath79_setup_interfaces()
ruckus,zf7351|\
siemens,ws-ap3610|\
sophos,ap15|\
sophos,ap15c|\
sophos,ap55|\
sophos,ap55c|\
sophos,ap100|\
+8
View File
@@ -2977,6 +2977,14 @@ define Device/sophos_ap15
endef
TARGET_DEVICES += sophos_ap15
define Device/sophos_ap15c
SOC := qca9557
DEVICE_VENDOR := Sophos
DEVICE_MODEL := AP15C
IMAGE_SIZE := 15936k
endef
TARGET_DEVICES += sophos_ap15c
define Device/sophos_ap55
SOC := qca9558
DEVICE_VENDOR := Sophos
@@ -207,15 +207,6 @@
stock_partition@1340000 {
label = "stock_rootfs";
reg = <0x1340000 0x4000000>;
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "extra";
reg = <0x0 0x4000000>;
};
};
partition@5340000 {
label = "0:BOOTCONFIG";
@@ -265,42 +256,6 @@
stock_partition@6400000 {
label = "stock_rootfs_1";
reg = <0x6400000 0x4000000>;
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "fw_env";
reg = <0x0 0x100000>;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
macaddr_fw_env_0: macaddr@0 {
reg = <0x00 0x6>;
};
macaddr_fw_env_6: macaddr@6 {
reg = <0x06 0x6>;
};
macaddr_fw_env_c: macaddr@c {
reg = <0x0c 0x6>;
};
macaddr_fw_env_12: macaddr@12 {
reg = <0x12 0x6>;
};
macaddr_fw_env_18: macaddr@18 {
reg = <0x18 0x6>;
};
};
};
partition@100000 {
label = "ubi";
reg = <0x100000 0x9b00000>;
};
};
stock_partition@a400000 {
label = "stock_fw_env";
@@ -318,6 +273,41 @@
label = "stock_scfgmgr";
reg = <0xaf00000 0x0100000>;
};
partition@6400000 {
label = "fw_env";
reg = <0x6400000 0x0100000>;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
macaddr_fw_env_0: macaddr@0 {
reg = <0x00 0x6>;
};
macaddr_fw_env_6: macaddr@6 {
reg = <0x06 0x6>;
};
macaddr_fw_env_c: macaddr@c {
reg = <0x0c 0x6>;
};
macaddr_fw_env_12: macaddr@12 {
reg = <0x12 0x6>;
};
macaddr_fw_env_18: macaddr@18 {
reg = <0x18 0x6>;
};
};
};
partition@6500000 {
label = "ubi";
reg = <0x6500000 0x9b00000>;
};
partition@1340000 {
label = "extra";
reg = <0x1340000 0x4000000>;
};
};
};
};