v2: - v1 missed the merge window, so while we're at it... - split changes into two patches instead of one for readability (#1 removes the ioam selftests, #2 adds the updated ioam selftests)
TL;DR This patch comes from a discussion we had with Jakub and Paolo on aligning the ioam selftests with its new "tunsrc" feature.
This patch updates the IOAM selftests to support the new "tunsrc" feature of IOAM. As a consequence, some changes were required. For example, the IPv6 header must be accessed to check some fields (i.e., the source address for the "tunsrc" feature), which is not possible AFAIK with IPv6 raw sockets. The latter is currently used with IPV6_RECVHOPOPTS and was introduced by commit 187bbb6968af ("selftests: ioam: refactoring to align with the fix") to fix an issue. But, we really need packet sockets actually... which is one of the changes in this patch (see the description of the topology at the top of ioam6.sh for explanations). Another change is that all IPv6 addresses used in the topology are now based on the documentation prefix (2001:db8::/32). Also, the tests have been improved and there are now many more of them. Overall, the script is more robust.
Justin Iurman (2): selftests: net: remove ioam tests selftests: net: add new ioam tests
tools/testing/selftests/net/ioam6.sh | 1832 +++++++++++++++----- tools/testing/selftests/net/ioam6_parser.c | 1087 ++++++++---- 2 files changed, 2129 insertions(+), 790 deletions(-)