From e3fb828fb7950a171bfe9963bffe38f7d66877f8 Mon Sep 17 00:00:00 2001 From: Andrew Robbins Date: Thu, 24 Aug 2023 12:04:29 -0400 Subject: [PATCH] refresh patches for 5.15.127 --- ...99-203-qca-nss-clients-ppptp-support.patch | 50 ++++++++----------- ...99-205-qca-nss-clients-vxlan-support.patch | 4 +- 2 files changed, 22 insertions(+), 32 deletions(-) diff --git a/target/linux/ipq806x/patches-5.15/999-203-qca-nss-clients-ppptp-support.patch b/target/linux/ipq806x/patches-5.15/999-203-qca-nss-clients-ppptp-support.patch index 86200a8e15..47fe5ac0f2 100644 --- a/target/linux/ipq806x/patches-5.15/999-203-qca-nss-clients-ppptp-support.patch +++ b/target/linux/ipq806x/patches-5.15/999-203-qca-nss-clients-ppptp-support.patch @@ -51,7 +51,7 @@ #endif /* !(__LINUX_IF_PPPOX_H) */ --- a/drivers/net/ppp/ppp_generic.c +++ b/drivers/net/ppp/ppp_generic.c -@@ -2970,6 +2970,20 @@ char *ppp_dev_name(struct ppp_channel *c +@@ -2972,6 +2972,20 @@ char *ppp_dev_name(struct ppp_channel *c return name; } @@ -72,7 +72,7 @@ /* * Disconnect a channel from the generic layer. -@@ -3678,6 +3692,28 @@ void ppp_update_stats(struct net_device +@@ -3680,6 +3694,28 @@ void ppp_update_stats(struct net_device ppp_recv_unlock(ppp); } @@ -101,7 +101,7 @@ /* Returns >0 if the device is a multilink PPP netdevice, 0 if not or < 0 if * the device is not PPP. */ -@@ -3869,6 +3905,7 @@ EXPORT_SYMBOL(ppp_unregister_channel); +@@ -3871,6 +3907,7 @@ EXPORT_SYMBOL(ppp_unregister_channel); EXPORT_SYMBOL(ppp_channel_index); EXPORT_SYMBOL(ppp_unit_number); EXPORT_SYMBOL(ppp_dev_name); @@ -131,7 +131,7 @@ --- a/drivers/net/ppp/pptp.c +++ b/drivers/net/ppp/pptp.c -@@ -49,6 +49,8 @@ static struct proto pptp_sk_proto __read +@@ -50,6 +50,8 @@ static struct proto pptp_sk_proto __read static const struct ppp_channel_ops pptp_chan_ops; static const struct proto_ops pptp_ops; @@ -140,7 +140,7 @@ static struct pppox_sock *lookup_chan(u16 call_id, __be32 s_addr) { struct pppox_sock *sock; -@@ -90,6 +92,79 @@ static int lookup_chan_dst(u16 call_id, +@@ -91,6 +93,79 @@ static int lookup_chan_dst(u16 call_id, return i < MAX_CALLID; } @@ -220,7 +220,16 @@ static int add_chan(struct pppox_sock *sock, struct pptp_addr *sa) { -@@ -145,8 +220,11 @@ static int pptp_xmit(struct ppp_channel +@@ -136,7 +211,7 @@ static struct rtable *pptp_route_output( + struct net *net; + + net = sock_net(sk); +- flowi4_init_output(fl4, sk->sk_bound_dev_if, sk->sk_mark, 0, ++ flowi4_init_output(fl4, 0, sk->sk_mark, 0, + RT_SCOPE_UNIVERSE, IPPROTO_GRE, 0, + po->proto.pptp.dst_addr.sin_addr.s_addr, + po->proto.pptp.src_addr.sin_addr.s_addr, +@@ -163,8 +238,11 @@ static int pptp_xmit(struct ppp_channel struct rtable *rt; struct net_device *tdev; @@ -232,16 +241,7 @@ if (sk_pppox(po)->sk_state & PPPOX_DEAD) goto tx_error; -@@ -155,7 +233,7 @@ static int pptp_xmit(struct ppp_channel - opt->dst_addr.sin_addr.s_addr, - opt->src_addr.sin_addr.s_addr, - 0, 0, IPPROTO_GRE, -- RT_TOS(0), sk->sk_bound_dev_if); -+ RT_TOS(0), 0); - if (IS_ERR(rt)) - goto tx_error; - -@@ -244,7 +322,32 @@ static int pptp_xmit(struct ppp_channel +@@ -258,7 +336,32 @@ static int pptp_xmit(struct ppp_channel ip_select_ident(net, skb, NULL); ip_send_check(iph); @@ -275,7 +275,7 @@ return 1; tx_error: -@@ -300,6 +403,13 @@ static int pptp_rcv_core(struct sock *sk +@@ -314,6 +417,13 @@ static int pptp_rcv_core(struct sock *sk goto drop; payload = skb->data + headersize; @@ -289,7 +289,7 @@ /* check for expected sequence number */ if (seq < opt->seq_recv + 1 || WRAPPED(opt->seq_recv, seq)) { if ((payload[0] == PPP_ALLSTATIONS) && (payload[1] == PPP_UI) && -@@ -357,6 +467,7 @@ static int pptp_rcv(struct sk_buff *skb) +@@ -371,6 +481,7 @@ static int pptp_rcv(struct sk_buff *skb) if (po) { skb_dst_drop(skb); nf_reset_ct(skb); @@ -297,17 +297,7 @@ return sk_receive_skb(sk_pppox(po), skb, 0); } drop: -@@ -442,8 +553,7 @@ static int pptp_connect(struct socket *s - opt->dst_addr.sin_addr.s_addr, - opt->src_addr.sin_addr.s_addr, - 0, 0, -- IPPROTO_GRE, RT_CONN_FLAGS(sk), -- sk->sk_bound_dev_if); -+ IPPROTO_GRE, RT_CONN_FLAGS(sk), 0); - if (IS_ERR(rt)) { - error = -EHOSTUNREACH; - goto end; -@@ -464,7 +574,7 @@ static int pptp_connect(struct socket *s +@@ -473,7 +584,7 @@ static int pptp_connect(struct socket *s opt->dst_addr = sp->sa_addr.pptp; sk->sk_state |= PPPOX_CONNECTED; @@ -316,7 +306,7 @@ end: release_sock(sk); return error; -@@ -594,9 +704,169 @@ static int pptp_ppp_ioctl(struct ppp_cha +@@ -603,9 +714,169 @@ static int pptp_ppp_ioctl(struct ppp_cha return err; } diff --git a/target/linux/ipq806x/patches-5.15/999-205-qca-nss-clients-vxlan-support.patch b/target/linux/ipq806x/patches-5.15/999-205-qca-nss-clients-vxlan-support.patch index 536ee60573..e09fae2ec4 100644 --- a/target/linux/ipq806x/patches-5.15/999-205-qca-nss-clients-vxlan-support.patch +++ b/target/linux/ipq806x/patches-5.15/999-205-qca-nss-clients-vxlan-support.patch @@ -1,5 +1,5 @@ ---- a/drivers/net/vxlan.c -+++ b/drivers/net/vxlan.c +--- a/drivers/net/vxlan/vxlan_core.c ++++ b/drivers/net/vxlan/vxlan_core.c @@ -90,6 +90,20 @@ struct vxlan_fdb { /* salt for hash table */ static u32 vxlan_salt __read_mostly;