@@ -64,6 +64,7 @@ start_vnc() {
6464
6565start_IBC () {
6666 configure_ibc_login_dialog_timeout
67+ configure_ibc_second_factor_exit_interval
6768 echo " .> Starting IBC in ${TRADING_MODE} mode, with params:"
6869 echo " .> Version: ${TWS_MAJOR_VRSN} "
6970 echo " .> program: ${IBC_COMMAND:- gateway} "
@@ -83,8 +84,9 @@ start_IBC() {
8384 echo " $_p " > " /tmp/pid_${TRADING_MODE} "
8485}
8586
86- configure_ibc_login_dialog_timeout () {
87- local timeout=" ${IBC_LOGIN_DIALOG_DISPLAY_TIMEOUT:- 180} "
87+ set_ibc_config_value () {
88+ local key=" $1 "
89+ local value=" $2 "
8890 local files=(
8991 " ${IBC_INI:-/ home/ ibgateway/ ibc/ config.ini} "
9092 " /home/ibgateway/ibc/config.ini"
@@ -96,14 +98,24 @@ configure_ibc_login_dialog_timeout() {
9698 if [ ! -f " $file " ]; then
9799 continue
98100 fi
99- if grep -Eq ' ^LoginDialogDisplayTimeout\ s*=' " $file " ; then
100- sed -i -E " s/^LoginDialogDisplayTimeout\ s*=.*/LoginDialogDisplayTimeout =${timeout } /" " $file "
101+ if grep -Eq " ^ ${key} \\ s*=" " $file " ; then
102+ sed -i -E " s/^${key} \\ s*=.*/${key} =${value } /" " $file "
101103 else
102- printf ' \nLoginDialogDisplayTimeout =%s\n' " $timeout " >> " $file "
104+ printf ' \n%s =%s\n' " $key " " $value " >> " $file "
103105 fi
104106 done
105107}
106108
109+ configure_ibc_login_dialog_timeout () {
110+ local timeout=" ${IBC_LOGIN_DIALOG_DISPLAY_TIMEOUT:- 180} "
111+ set_ibc_config_value " LoginDialogDisplayTimeout" " $timeout "
112+ }
113+
114+ configure_ibc_second_factor_exit_interval () {
115+ local interval=" ${IBC_SECOND_FACTOR_AUTHENTICATION_EXIT_INTERVAL:- 180} "
116+ set_ibc_config_value " SecondFactorAuthenticationExitInterval" " $interval "
117+ }
118+
107119configure_ib_gateway_vmoptions () {
108120 local parallel_threads=" ${IB_GATEWAY_PARALLEL_GC_THREADS:- 2} "
109121 local conc_threads=" ${IB_GATEWAY_CONC_GC_THREADS:- 1} "
0 commit comments