diff options
author | Eric Dumazet <edumazet@google.com> | 2023-03-16 18:31:55 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-03-17 11:56:37 +0300 |
commit | abc17a11ed29b0471e428d86189acca8d1a213c6 (patch) | |
tree | da8ab312279911b367d333f13e1880dfd3c30386 /include/net/inet_sock.h | |
parent | 82b3297009b6831dfe47f0f38ed4043e39f58c9f (diff) | |
download | linux-abc17a11ed29b0471e428d86189acca8d1a213c6.tar.xz |
inet: preserve const qualifier in inet_sk()
We can change inet_sk() to propagate const qualifier of its argument.
This should avoid some potential errors caused by accidental
(const -> not_const) promotion.
Other helpers like tcp_sk(), udp_sk(), raw_sk() will be handled
in separate patch series.
v2: use container_of_const() as advised by Jakub and Linus
Signed-off-by: Eric Dumazet <edumazet@google.com>
Link: https://lore.kernel.org/netdev/20230315142841.3a2ac99a@kernel.org/
Link: https://lore.kernel.org/netdev/CAHk-=wiOf12nrYEF2vJMcucKjWPN-Ns_SW9fA7LwST_2Dzp7rw@mail.gmail.com/
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/inet_sock.h')
-rw-r--r-- | include/net/inet_sock.h | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/include/net/inet_sock.h b/include/net/inet_sock.h index 51857117ac09..caa20a905531 100644 --- a/include/net/inet_sock.h +++ b/include/net/inet_sock.h @@ -305,10 +305,7 @@ static inline struct sock *skb_to_full_sk(const struct sk_buff *skb) return sk_to_full_sk(skb->sk); } -static inline struct inet_sock *inet_sk(const struct sock *sk) -{ - return (struct inet_sock *)sk; -} +#define inet_sk(ptr) container_of_const(ptr, struct inet_sock, sk) static inline void __inet_sk_copy_descendant(struct sock *sk_to, const struct sock *sk_from, |