custom_runner() { # $1 - function name # $2+ - params local n script FUNC=$1 shift [ -d "$CUSTOM_DIR/custom.d" ] && { dir_is_not_empty "$CUSTOM_DIR/custom.d" && { for script in "$CUSTOM_DIR/custom.d/"*; do [ -f "$script" ] || continue unset -f $FUNC . "$script" existf $FUNC && $FUNC "$@" done } } } alloc_tpws_port() { # $1 - target var name alloc_num NUMPOOL_TPWS_PORT $1 910 979 } alloc_qnum() { # $1 - target var name alloc_num NUMPOOL_QNUM $1 65400 65499 } alloc_dnum() { # alloc daemon number # $1 - target var name alloc_num NUMPOOL_DNUM $1 1000 1999 }