mirror_ubuntu-kernels/tools/testing/selftests/net/ipv6_flowlabel.sh

38 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
# SPDX-License-Identifier: GPL-2.0
#
# Regression tests for IPv6 flowlabels
#
# run in separate namespaces to avoid mgmt db conflicts betweent tests
set -e
echo "TEST management"
./in_netns.sh ./ipv6_flowlabel_mgr
echo "TEST datapath"
./in_netns.sh \
sh -c 'sysctl -q -w net.ipv6.auto_flowlabels=0 && ./ipv6_flowlabel -l 1'
echo "TEST datapath (with auto-flowlabels)"
./in_netns.sh \
sh -c 'sysctl -q -w net.ipv6.auto_flowlabels=1 && ./ipv6_flowlabel -l 1'
echo "TEST datapath (with ping-sockets)"
./in_netns.sh \
sh -c 'sysctl -q -w net.ipv6.flowlabel_reflect=4 && \
sysctl -q -w net.ipv4.ping_group_range="0 2147483647" && \
./ipv6_flowlabel -l 1 -p'
echo "TEST datapath (with flowinfo-send)"
./in_netns.sh \
sh -c './ipv6_flowlabel -l 1 -s'
echo "TEST datapath (with ping-sockets flowinfo-send)"
./in_netns.sh \
sh -c 'sysctl -q -w net.ipv6.flowlabel_reflect=4 && \
sysctl -q -w net.ipv4.ping_group_range="0 2147483647" && \
./ipv6_flowlabel -l 1 -p -s'
echo OK. All tests passed