Re: [PATCH net V3] net: ping6: Fix ping -6 with interface name
From: Aya Levin <hidden>
Date: 2022-06-01 09:41:11
On 5/31/2022 5:31 PM, David Ahern wrote:
On 5/31/22 2:45 AM, Tariq Toukan wrote:quoted
From: Aya Levin <redacted> When passing interface parameter to ping -6: $ ping -6 ::11:141:84:9 -I eth2 Results in: PING ::11:141:84:10(::11:141:84:10) from ::11:141:84:9 eth2: 56 data bytes ping: sendmsg: Invalid argument ping: sendmsg: Invalid argument Initialize the fl6's outgoing interface (OIF) before triggering ip6_datagram_send_ctl. Don't wipe fl6 after ip6_datagram_send_ctl() as changes in fl6 that may happen in the function are overwritten explicitly. Update comment accordingly. Fixes: 13651224c00b ("net: ping6: support setting basic SOL_IPV6 options via cmsg") Signed-off-by: Aya Levin <redacted> Reviewed-by: Gal Pressman <redacted> Reviewed-by: Saeed Mahameed <saeedm@nvidia.com> Signed-off-by: Tariq Toukan <tariqt@nvidia.com> --- net/ipv6/ping.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) V3: Per David Ahern's comment, moved fl6.flowi6_oif init to the shared flow right after the memset. V2: Per David Ahern's comment, moved memset before if (msg->msg_controllen), and updated the code comment accordingly.Reviewed-by: David Ahern <dsahern@kernel.org>
Thanks for the review.
The patch set with the Fixes tag added selftests using cmsg_sender.c. You can extend it to support IPV6_PKTINFO and submit a selftest for this case to -next when it opens.
I'll submit the selftest extension in the coming window Aya