optstring=hi while getopts "$optstring" option;do
case "$option" in "h")
usage "$0"
exit ${KSFT_PASS}
;; "i")
mptcp_lib_set_ip_mptcp
;; "?")
usage "$0"
exit ${KSFT_FAIL}
;;
esac done
ns1=""
err=$(mktemp)
# This function is used in the cleanup trap #shellcheck disable=SC2317,SC2329
cleanup()
{ rm -f "${err}"
mptcp_lib_ns_exit "${ns1}"
}
mptcp_lib_check_mptcp
mptcp_lib_check_tools ip
trap cleanup EXIT
mptcp_lib_ns_init ns1
format_limits() {
local accept="${1}"
local subflows="${2}"
if mptcp_lib_is_ip_mptcp; then # with a space at the end
printf "add_addr_accepted %d subflows %d \n""${accept}""${subflows}" else
printf "accept %d\nsubflows %d\n""${accept}""${subflows}" fi
}
get_limits() { if mptcp_lib_is_ip_mptcp; then
ip -n "${ns1}" mptcp limits else
ip netns exec "${ns1}" ./pm_nl_ctl limits fi
}
# This function is invoked indirectly #shellcheck disable=SC2317,SC2329
get_endpoint() {
mptcp_lib_pm_nl_get_endpoint "${ns1}""${@}"
}
change_address() {
local addr=${1}
local flags=${2}
if mptcp_lib_is_ip_mptcp; then
ip -n "${ns1}" mptcp endpoint change "${addr}""${flags}" else
ip netns exec "${ns1}" ./pm_nl_ctl set "${addr}" flags "${flags}" fi
}
add_endpoint 10.0.1.4 flags signal
check "get_endpoint 4""$(format_endpoints "4,10.0.1.4,signal")""id addr increment"
for i in $(seq 5 9); do
add_endpoint "10.0.1.${i}" flags signal >/dev/null 2>&1 done
check "get_endpoint 9""$(format_endpoints "9,10.0.1.9,signal")""hard addr limit"
check "get_endpoint 10""""above hard addr limit"
del_endpoint 9 for i in $(seq 10 255); do
add_endpoint 10.0.0.9 id "${i}"
del_endpoint "${i}" done
check "show_endpoints" \ "$(format_endpoints "1,10.0.1.1" \ "3,10.0.1.3,signal backup" \ "4,10.0.1.4,signal" \ "5,10.0.1.5,signal" \ "6,10.0.1.6,signal" \ "7,10.0.1.7,signal" \ "8,10.0.1.8,signal")" "id limit"
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.