Am 29.07.25 um 13:35 schrieb Friedrich Weber:
> Read the MAX_WORKERS value in /etc/default/<proxyname>. If it is not
> an integer, ignore and warn.
> 
> Signed-off-by: Friedrich Weber <f.we...@proxmox.com>
> ---
>  src/PVE/APIServer/Utils.pm | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/src/PVE/APIServer/Utils.pm b/src/PVE/APIServer/Utils.pm
> index 1430c98..f2c4892 100644
> --- a/src/PVE/APIServer/Utils.pm
> +++ b/src/PVE/APIServer/Utils.pm
> @@ -28,6 +28,7 @@ sub read_proxy_config {
>      $shcmd .= 'echo \"DISABLE_TLS_1_3:\$DISABLE_TLS_1_3\";';
>      $shcmd .= 'echo \"PROXY_REAL_IP_HEADER:\$PROXY_REAL_IP_HEADER\";';
>      $shcmd .= 'echo 
> \"PROXY_REAL_IP_ALLOW_FROM:\$PROXY_REAL_IP_ALLOW_FROM\";';
> +    $shcmd .= 'echo \"MAX_WORKERS:\$MAX_WORKERS\";';
>  
>      my $data = -f $conffile ? `bash -c "$shcmd"` : '';
>  
> @@ -77,6 +78,12 @@ sub read_proxy_config {
>                  push @$ips, Net::IP->new(normalize_v4_in_v6($ip)) || die 
> Net::IP::Error() . "\n";
>              }
>              $res->{$key} = $ips;
> +        } elsif ($key eq 'MAX_WORKERS') {
> +            if ($value =~ /^\d+$/) {
> +                $res->{$key} = int($value);

Could be great to do some basic range checks, like > 0 and < 128 (as not low, 
but
also not huge upper limit for starters).

FWIW, rest looks pretty straight forward and really not much extra code, so 
would
be fine for me to do it this way.

> +            } else {
> +                warn "MAX_WORKERS specified in $conffile is not an integer: 
> $value\n";
> +            }
>          } elsif (grep { $key eq $_ } @$boolean_options) {
>              die "unknown value '$value' - use 0 or 1\n" if $value !~ 
> m/^(0|1)$/;
>              $res->{$key} = $value;



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to