1 #!/bin/bash 2 # SPDX-License-Identifier: GPL-2.0 3 4 lib_dir=$(dirname $0)/forwarding 5 6 ALL_TESTS="altnames_test" 7 NUM_NETIFS=0 8 source $lib_dir/lib.sh 9 10 DUMMY_DEV=dummytest 11 SHORT_NAME=shortname 12 LONG_NAME=someveryveryveryveryveryverylongname 13 14 altnames_test() 15 { 16 RET=0 17 local output 18 local name 19 20 ip link property add $DUMMY_DEV altname $SHORT_NAME 21 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/null 33 check_err $? "Failed to do link show with original name" 34 35 ip link property add $DUMMY_DEV altname $LONG_NAME 36 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_NAME 48 check_err $? "Failed to delete short alternative name" 49 50 ip -j -p link show $SHORT_NAME &>/dev/null 51 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 device 54 55 log_test "altnames test" 56 } 57 58 setup_prepare() 59 { 60 ip link add name $DUMMY_DEV type dummy 61 } 62 63 cleanup() 64 { 65 pre_cleanup 66 ip link del name $DUMMY_DEV 67 } 68 69 trap cleanup EXIT 70 71 setup_prepare 72 73 tests_run 74 75 exit $EXIT_STATUS
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.