diff options
| author | Eric Dumazet <edumazet@google.com> | 2026-02-06 17:34:21 +0000 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2026-02-10 20:57:49 -0800 |
| commit | 3d3f075e80f201b5ce3446beccb0d7dfd72078f5 (patch) | |
| tree | 5742ade269d0f17936c196d2f522f99eb1d23d65 | |
| parent | 03ff0cb1a9269a12c648e69e8b6ae6c2a723977c (diff) | |
ipv6: use np->final in inet6_sk_rebuild_header()
Instead of using an automatic variable, use np->final
to get rid of the stack canary in inet6_sk_rebuild_header().
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Kuniyuki Iwashima <kuniyu@google.com>
Link: https://patch.msgid.link/20260206173426.1638518-3-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
| -rw-r--r-- | net/ipv6/af_inet6.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c index 0476dbc8edb2..31ba677d0442 100644 --- a/net/ipv6/af_inet6.c +++ b/net/ipv6/af_inet6.c @@ -825,7 +825,7 @@ int inet6_sk_rebuild_header(struct sock *sk) { struct ipv6_pinfo *np = inet6_sk(sk); struct inet_sock *inet = inet_sk(sk); - struct in6_addr *final_p, final; + struct in6_addr *final_p; struct dst_entry *dst; struct flowi6 *fl6; @@ -847,7 +847,7 @@ int inet6_sk_rebuild_header(struct sock *sk) security_sk_classify_flow(sk, flowi6_to_flowi_common(fl6)); rcu_read_lock(); - final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &final); + final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &np->final); rcu_read_unlock(); dst = ip6_dst_lookup_flow(sock_net(sk), sk, fl6, final_p); |
