From 86f26e2fd3ef960399da007e8c813402be18d56c Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Sun, 10 Apr 2022 19:43:13 -0700 Subject: [PATCH] UI for editing max process lifetime --- webmin/change_bind.cgi | 8 ++++++++ webmin/edit_bind.cgi | 6 ++++++ webmin/lang/en | 4 ++++ 3 files changed, 18 insertions(+) diff --git a/webmin/change_bind.cgi b/webmin/change_bind.cgi index cab2dbae8..97cfe86c5 100755 --- a/webmin/change_bind.cgi +++ b/webmin/change_bind.cgi @@ -122,6 +122,14 @@ else { &error($text{'bind_emaxconns_per_net'}); $miniserv{'maxconns_per_net'} = $in{'maxconns_per_net'}; } +if ($in{'maxlifetime_def'}) { + delete($miniserv{'maxlifetime'}); + } +else { + $in{'maxlifetime'} =~ /^\d+$/ && $in{'maxlifetime'} > 60 || + &error($text{'bind_emaxlifetime'}); + $miniserv{'maxlifetime'} = $in{'maxlifetime'}; + } &put_miniserv_config(\%miniserv); &unlock_file($ENV{'MINISERV_CONFIG'}); diff --git a/webmin/edit_bind.cgi b/webmin/edit_bind.cgi index 21c3b6445..c1daf86ec 100755 --- a/webmin/edit_bind.cgi +++ b/webmin/edit_bind.cgi @@ -76,6 +76,12 @@ print &ui_table_row($text{'bind_maxconns_per_net'}, &ui_opt_textbox("maxconns_per_net", $miniserv{'maxconns_per_net'}, 5, $text{'default'}." (35)")); +# Max subprocess lifetime +print &ui_table_row($text{'bind_maxlifetime'}, + &ui_opt_textbox("maxlifetime", $miniserv{'maxlifetime'}, 5, + $text{'bind_maxlifetime_def'})." ". + $text{'bind_maxlifetime_secs'}); + print &ui_table_end(); print &ui_form_end([ [ "save", $text{'save'} ] ]); diff --git a/webmin/lang/en b/webmin/lang/en index 0817023af..def668e26 100644 --- a/webmin/lang/en +++ b/webmin/lang/en @@ -69,6 +69,10 @@ bind_maxconns_per_net=Maximum concurrent connections per network bind_emaxconns=Maximum concurrent connections must be a number greater than 1 bind_emaxconns_per_ip=Maximum concurrent connections per IP must be a number greater than 1 bind_emaxconns_per_net=Maximum concurrent connections per network must be a number greater than 1 +bind_maxlifetime=Maximum Webmin process lifetime +bind_maxlifetime_def=Unlimited +bind_maxlifetime_secs=seconds +bind_emaxlifetime=Maximum process lifetime must be a number greater than 60 seconds log_title=Logging log_desc=Webmin can be configured to write a log of web server hits, in the standard CLF log file format. If logging is enabled, you can also choose whether IP addresses or hostnames are recorded, and how often the log file is cleared. When enabled, logs are written to the file $1.