diff --git a/platform/broadcom/docker-syncd-brcm/bcmsh b/platform/broadcom/docker-syncd-brcm/bcmsh index 9dfa7874a0..7488e63c64 100755 --- a/platform/broadcom/docker-syncd-brcm/bcmsh +++ b/platform/broadcom/docker-syncd-brcm/bcmsh @@ -1,24 +1,29 @@ #!/bin/bash -usage="$(basename "$0") [-h] [-q] -- interactive shell for bcm service +usage="$(basename "$0") [-h] [-q] [-t timeout] -- interactive shell for bcm service where: -h show this help text + -t inactivity timeout in seconds (default 300 seconds, 0 for no timeout) -q quite, no banner (default: verbose)" banner="Press Enter to show prompt. Press Ctrl+C to exit. +NOTICE: Only one bcmsh or bcmcmd can connect to the shell at same time. " # Default verbose quiet=false +timeout=300 -while getopts 'hq' option; do +while getopts 'hqt:' option; do case "$option" in h) echo "$usage" exit ;; q) quiet=true ;; + t) timeout=$OPTARG + ;; \?) printf "illegal option: -%s\n" "$OPTARG" >&2 echo "$usage" >&2 exit 1 @@ -31,5 +36,5 @@ if [ "$quiet" = false ]; then echo "$banner" fi -/usr/bin/socat readline UNIX-CONNECT:/var/run/sswsyncd/sswsyncd.socket +/usr/bin/socat -T$timeout readline UNIX-CONNECT:/var/run/sswsyncd/sswsyncd.socket