route-change-netlink-gw.sh 745 B

123456789101112131415161718192021222324252627282930313233
  1. #!/bin/sh
  2. # SPDX-License-Identifier: GPL-2.0-or-later
  3. # Copyright (c) 2020 Petr Vorel <pvorel@suse.cz>
  4. #
  5. # Change route gateway via netlink
  6. # gw (on rhost): 10.23.1.x, rhost: 10.23.0.1
  7. # lhost (iface set, but not specified in Netlink API): 10.23.1.1
  8. TST_SETUP="setup"
  9. TST_CLEANUP="route_cleanup"
  10. TST_TESTFUNC="test_netlink"
  11. . route-lib.sh
  12. setup()
  13. {
  14. local cnt=0
  15. tst_res TINFO "change IPv$TST_IPVER route gateway $ROUTE_CHANGE_NETLINK times"
  16. check_max_ip
  17. setup_gw
  18. while [ $cnt -lt $ROUTE_MAX_IP ]; do
  19. gw="$(tst_ipaddr_un -h 2,$max_ip_limit 1 $(($cnt + 1)))"
  20. gw_all="$gw$IP_ADDR_DELIM$gw_all"
  21. tst_add_ipaddr -s -q -a $gw rhost
  22. cnt=$((cnt+1))
  23. done
  24. ROUTE_CHANGE_NETLINK_PARAMS="-d $(tst_iface) -g "$gw_all" -r $rhost"
  25. }
  26. tst_run