On 1/24/22 12:26, Fabian Ebner wrote:
Am 26.11.21 um 16:02 schrieb Aaron Lauterer:
Ensure that the user provided $secret ends in a newline. Otherwise we
will have Input/output errors from rados_connect.
Reviewed-by: Fabian Ebner <[email protected]>
Tested-by: Fabian Ebner <[email protected]>
Signed-off-by: Aaron Lauterer <[email protected]>
---
PVE/CephConfig.pm | 1 +
1 file changed, 1 insertion(+)
diff --git a/PVE/CephConfig.pm b/PVE/CephConfig.pm
index 5c94a04..ac28e76 100644
--- a/PVE/CephConfig.pm
+++ b/PVE/CephConfig.pm
@@ -227,6 +227,7 @@ sub ceph_create_keyfile {
eval {
if (defined($secret)) {
mkdir '/etc/pve/priv/ceph';
+ $secret = "${secret}\n" if $secret !~ m/\n$/;
PVE::Tools::file_set_contents($ceph_storage_keyring, $secret, 0400);
} elsif ($type eq 'rbd') {
mkdir '/etc/pve/priv/ceph';
Just one thing I'm wondering: AFAIU there is no problem for CephFS currently,
but for consistency/future-proving, we might put a newline there as well when
the $secret is not user-provided. I.e. below, $cephfs_secret isn't
newline-terminated:
} elsif ($type eq 'cephfs') {
my $cephfs_secret = $ceph_get_key->($ceph_admin_keyring,
'admin');
mkdir '/etc/pve/priv/ceph';
PVE::Tools::file_set_contents($ceph_storage_keyring,
$cephfs_secret, 0400);
}
Good idea. I did some initial tests in a user provided (external) storage
config and adding creating a CephFS in a hyperconverged setup and did not run
into issues.
I will add that in the v2
_______________________________________________
pve-devel mailing list
[email protected]
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel