1#!/bin/sh
2# SPDX-License-Identifier: GPL-2.0
3
4readonly NETNS="ns-$(mktemp -u XXXXXX)"
5
6ret=0
7
8cleanup() {
9	ip netns del $NETNS
10}
11
12trap cleanup EXIT
13
14fail() {
15    echo "ERROR: ${1:-unexpected return code} (ret: $_)" >&2
16    ret=1
17}
18
19ip netns add ${NETNS}
20ip netns exec ${NETNS} ip link add bond0 type bond mode 0
21ip netns exec ${NETNS} ip link add bond_slave_1 type veth peer veth2
22ip netns exec ${NETNS} ip link set bond_slave_1 master bond0
23ip netns exec ${NETNS} ethtool -K bond0 rx-vlan-filter off
24ip netns exec ${NETNS} ip link add link bond_slave_1 name bond_slave_1.0 type vlan id 0
25ip netns exec ${NETNS} ip link add link bond0 name bond0.0 type vlan id 0
26ip netns exec ${NETNS} ip link set bond_slave_1 nomaster
27ip netns exec ${NETNS} ip link del veth2 || fail "Please check vlan HW filter function"
28
29exit $ret
30