[pve-devel] [PATCH access-control] api/ticket: move getting cluster name into an eval

Dominik Csapak d.csapak at proxmox.com
Mon Nov 26 15:35:19 CET 2018


Reviewed-by: Dominik Csapak <d.csapak at proxmox.com>
Tested-by: Dominik Csapak <d.csapak at proxmox.com>

On 11/26/18 2:55 PM, Thomas Lamprecht wrote:
> to avoid a failed login if a broken corosync config is setup
> 
> Signed-off-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
> ---
>   PVE/API2/AccessControl.pm | 13 ++++++++-----
>   1 file changed, 8 insertions(+), 5 deletions(-)
> 
> diff --git a/PVE/API2/AccessControl.pm b/PVE/API2/AccessControl.pm
> index 93f384a..7e6ad39 100644
> --- a/PVE/API2/AccessControl.pm
> +++ b/PVE/API2/AccessControl.pm
> @@ -281,11 +281,14 @@ __PACKAGE__->register_method ({
>   
>   	if (PVE::Corosync::check_conf_exists(1)) {
>   	    if ($rpcenv->check($username, '/', ['Sys.Audit'], 1)) {
> -		my $conf = cfs_read_file('corosync.conf');
> -		my $totem = PVE::Corosync::totem_config($conf);
> -		if ($totem->{cluster_name}) {
> -		    $res->{clustername} = $totem->{cluster_name};
> -		}
> +		eval {
> +		    my $conf = cfs_read_file('corosync.conf');
> +		    my $totem = PVE::Corosync::totem_config($conf);
> +		    if ($totem->{cluster_name}) {
> +			$res->{clustername} = $totem->{cluster_name};
> +		    }
> +		};
> +		warn "$@\n" if $@;
>   	    }
>   	}
>   
> 





More information about the pve-devel mailing list