Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a1bbb0e6 authored by David S. Miller's avatar David S. Miller
Browse files

netfilter: Use flowi4 and flowi6 in xt_TCPMSS

parent 5a49d0e0
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -148,16 +148,21 @@ tcpmss_mangle_packet(struct sk_buff *skb,
static u_int32_t tcpmss_reverse_mtu(const struct sk_buff *skb,
				    unsigned int family)
{
	struct flowi fl = {};
	struct flowi fl;
	const struct nf_afinfo *ai;
	struct rtable *rt = NULL;
	u_int32_t mtu     = ~0U;

	if (family == PF_INET)
		fl.fl4_dst = ip_hdr(skb)->saddr;
	else
		fl.fl6_dst = ipv6_hdr(skb)->saddr;
	if (family == PF_INET) {
		struct flowi4 *fl4 = &fl.u.ip4;
		memset(fl4, 0, sizeof(*fl4));
		fl4->daddr = ip_hdr(skb)->saddr;
	} else {
		struct flowi6 *fl6 = &fl.u.ip6;

		memset(fl6, 0, sizeof(*fl6));
		ipv6_addr_copy(&fl6->daddr, &ipv6_hdr(skb)->saddr);
	}
	rcu_read_lock();
	ai = nf_get_afinfo(family);
	if (ai != NULL)