76 lines · bash
1#!/bin/bash2# SPDX-License-Identifier: GPL-2.03 4lib_dir=$(dirname $0)/forwarding5 6ALL_TESTS="altnames_test"7NUM_NETIFS=08source $lib_dir/lib.sh9 10DUMMY_DEV=dummytest11SHORT_NAME=shortname12LONG_NAME=someveryveryveryveryveryverylongname13 14altnames_test()15{16 RET=017 local output18 local name19 20 ip link property add $DUMMY_DEV altname $SHORT_NAME21 check_err $? "Failed to add short alternative name"22 23 output=$(ip -j -p link show $SHORT_NAME)24 check_err $? "Failed to do link show with short alternative name"25 26 name=$(echo $output | jq -e -r ".[0].altnames[0]")27 check_err $? "Failed to get short alternative name from link show JSON"28 29 [ "$name" == "$SHORT_NAME" ]30 check_err $? "Got unexpected short alternative name from link show JSON"31 32 ip -j -p link show $DUMMY_DEV &>/dev/null33 check_err $? "Failed to do link show with original name"34 35 ip link property add $DUMMY_DEV altname $LONG_NAME36 check_err $? "Failed to add long alternative name"37 38 output=$(ip -j -p link show $LONG_NAME)39 check_err $? "Failed to do link show with long alternative name"40 41 name=$(echo $output | jq -e -r ".[0].altnames[1]")42 check_err $? "Failed to get long alternative name from link show JSON"43 44 [ "$name" == "$LONG_NAME" ]45 check_err $? "Got unexpected long alternative name from link show JSON"46 47 ip link property del $DUMMY_DEV altname $SHORT_NAME48 check_err $? "Failed to delete short alternative name"49 50 ip -j -p link show $SHORT_NAME &>/dev/null51 check_fail $? "Unexpected success while trying to do link show with deleted short alternative name"52 53 # long name is left there on purpose to be removed alongside the device54 55 log_test "altnames test"56}57 58setup_prepare()59{60 ip link add name $DUMMY_DEV type dummy61}62 63cleanup()64{65 pre_cleanup66 ip link del name $DUMMY_DEV67}68 69trap cleanup EXIT70 71setup_prepare72 73tests_run74 75exit $EXIT_STATUS76