From: Jonatan Schlag Date: Wed, 16 Aug 2017 09:46:57 +0000 (+0200) Subject: ipsec-connection: add color support X-Git-Tag: 010~252 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5bcadc60d02e5a7eca9271df27d56cd5a9b5e07d;p=network.git ipsec-connection: add color support Signed-off-by: Jonatan Schlag Signed-off-by: Michael Tremer --- diff --git a/src/bash-completion/network b/src/bash-completion/network index 15bb9e8a..807f0039 100644 --- a/src/bash-completion/network +++ b/src/bash-completion/network @@ -413,7 +413,7 @@ _network_vpn_ipsec_connection_subcommands() { shift local words=( $@ ) - local commands="authentication down inactivity-timeout local mode peer remote security-policy show up" + local commands="authentication color down inactivity-timeout local mode peer remote security-policy show up" local cmd="$(_network_find_on_cmdline "${commands}")" if [[ -z "${cmd}" ]]; then COMPREPLY=( $(compgen -W "${commands}" -- "${cur}") ) @@ -426,6 +426,9 @@ _network_vpn_ipsec_connection_subcommands() { authentication) _network_vpn_ipsec_connection_subcommands_authentication ${connection} ${args} ;; + color) + _network_color ${args} + ;; local) _network_vpn_ipsec_connection_subcommands_local_remote ${connection} "local" ${args} ;; diff --git a/src/functions/functions.colors b/src/functions/functions.colors index 121d7366..816af487 100644 --- a/src/functions/functions.colors +++ b/src/functions/functions.colors @@ -151,6 +151,9 @@ color_format_filename() { local type=${1} local name=${2} case ${type} in + ipsec-connection) + echo "${NETWORK_IPSEC_CONNS_DIR}/${name}/color" + ;; zone) echo "$(zone_dir ${name})/color" ;; diff --git a/src/functions/functions.ipsec b/src/functions/functions.ipsec index 4a8bb600..73c7e873 100644 --- a/src/functions/functions.ipsec +++ b/src/functions/functions.ipsec @@ -83,6 +83,9 @@ cli_ipsec_connection() { authentication|down|disable|dpd|enable|inactivity_timeout|local|mode|peer|pool|remote|security_policy|start_action|up) ipsec_connection_${key} ${connection} "$@" ;; + color) + color_cli "ipsec-connection" "${connection}" "$@" + ;; show) cli_ipsec_connection_show "${connection}" exit $? @@ -127,6 +130,14 @@ cli_ipsec_connection_destroy() { ipsec_strongswan_autostart } +ipsec_connection_get_color() { + # This function return the color of a zone + assert [ $# -eq 1 ] + + local name=${1} + color_read "ipsec-connection" ${name} +} + cli_ipsec_connection_show() { local connection="${1}" @@ -140,6 +151,9 @@ cli_ipsec_connection_show() { cli_headline 0 "IPsec VPN Connection: ${connection}" cli_space + cli_print_fmt1 1 "Color" "$(cli_color_bar $(ipsec_connection_get_color ${connection}))" + cli_space + # Peer if isset PEER; then cli_print_fmt1 1 "Peer" "${PEER}"