-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
selftest: net: add alternative names test
Add a simple test for recently added netdevice alternative names. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
- Loading branch information
Jiri Pirko
authored and
David S. Miller
committed
Nov 8, 2019
1 parent
b756ad9
commit f95e6c9
Showing
1 changed file
with
75 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
#!/bin/bash | ||
# SPDX-License-Identifier: GPL-2.0 | ||
|
||
lib_dir=$(dirname $0)/forwarding | ||
|
||
ALL_TESTS="altnames_test" | ||
NUM_NETIFS=0 | ||
source $lib_dir/lib.sh | ||
|
||
DUMMY_DEV=dummytest | ||
SHORT_NAME=shortname | ||
LONG_NAME=someveryveryveryveryveryverylongname | ||
|
||
altnames_test() | ||
{ | ||
RET=0 | ||
local output | ||
local name | ||
|
||
ip link property add $DUMMY_DEV altname $SHORT_NAME | ||
check_err $? "Failed to add short alternative name" | ||
|
||
output=$(ip -j -p link show $SHORT_NAME) | ||
check_err $? "Failed to do link show with short alternative name" | ||
|
||
name=$(echo $output | jq -e -r ".[0].altnames[0]") | ||
check_err $? "Failed to get short alternative name from link show JSON" | ||
|
||
[ "$name" == "$SHORT_NAME" ] | ||
check_err $? "Got unexpected short alternative name from link show JSON" | ||
|
||
ip -j -p link show $DUMMY_DEV &>/dev/null | ||
check_err $? "Failed to do link show with original name" | ||
|
||
ip link property add $DUMMY_DEV altname $LONG_NAME | ||
check_err $? "Failed to add long alternative name" | ||
|
||
output=$(ip -j -p link show $LONG_NAME) | ||
check_err $? "Failed to do link show with long alternative name" | ||
|
||
name=$(echo $output | jq -e -r ".[0].altnames[1]") | ||
check_err $? "Failed to get long alternative name from link show JSON" | ||
|
||
[ "$name" == "$LONG_NAME" ] | ||
check_err $? "Got unexpected long alternative name from link show JSON" | ||
|
||
ip link property del $DUMMY_DEV altname $SHORT_NAME | ||
check_err $? "Failed to add short alternative name" | ||
|
||
ip -j -p link show $SHORT_NAME &>/dev/null | ||
check_fail $? "Unexpected success while trying to do link show with deleted short alternative name" | ||
|
||
# long name is left there on purpose to be removed alongside the device | ||
|
||
log_test "altnames test" | ||
} | ||
|
||
setup_prepare() | ||
{ | ||
ip link add name $DUMMY_DEV type dummy | ||
} | ||
|
||
cleanup() | ||
{ | ||
pre_cleanup | ||
ip link del name $DUMMY_DEV | ||
} | ||
|
||
trap cleanup EXIT | ||
|
||
setup_prepare | ||
|
||
tests_run | ||
|
||
exit $EXIT_STATUS |