From 0fb0c62d742c0dd16a1db6c0d67ec6de215ef4da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= Date: Wed, 6 Nov 2019 13:36:28 +0100 Subject: [PATCH] ticket: use clinfo to get cluster name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit instead of parsing corosync.conf, and avoid coupling the access-control API with PVE::Corosync. if corosync.conf and pmxcfs don't agree on how the cluster is called, there is a bigger issue anyway.. Signed-off-by: Fabian Grünbichler --- PVE/API2/AccessControl.pm | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/PVE/API2/AccessControl.pm b/PVE/API2/AccessControl.pm index 6d0ea82..c2324e8 100644 --- a/PVE/API2/AccessControl.pm +++ b/PVE/API2/AccessControl.pm @@ -10,7 +10,6 @@ use PVE::Exception qw(raise raise_perm_exc); use PVE::SafeSyslog; use PVE::RPCEnvironment; use PVE::Cluster qw(cfs_read_file); -use PVE::Corosync; use PVE::RESTHandler; use PVE::AccessControl; use PVE::JSONSchema qw(get_standard_option); @@ -314,17 +313,9 @@ __PACKAGE__->register_method ({ $res->{cap} = &$compute_api_permission($rpcenv, $username) if !defined($res->{NeedTFA}); - if (PVE::Corosync::check_conf_exists(1)) { - if ($rpcenv->check($username, '/', ['Sys.Audit'], 1)) { - 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 $@; - } + my $clinfo = PVE::Cluster::get_clinfo(); + if ($clinfo->{cluster}->{name} && $rpcenv->check($username, '/', ['Sys.Audit'], 1)) { + $res->{clustername} = $clinfo->{cluster}->{name}; } PVE::Cluster::log_msg('info', 'root@pam', "successful auth for user '$username'");