qemuBlockStorageSourceGetRBDProps: Simplify generation of auth modes

The auth mode array is static, parse it from a JSON string.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Tim Wiederhake <twiederh@redhat.com>
This commit is contained in:
Peter Krempa 2021-12-20 14:22:06 +01:00
parent 4273b74b82
commit b58f88a919

View File

@ -881,7 +881,6 @@ qemuBlockStorageSourceGetRBDProps(virStorageSource *src,
const char *encformat;
const char *username = NULL;
g_autoptr(virJSONValue) authmodes = NULL;
g_autoptr(virJSONValue) mode = NULL;
const char *keysecret = NULL;
if (src->nhosts > 0 &&
@ -892,14 +891,7 @@ qemuBlockStorageSourceGetRBDProps(virStorageSource *src,
username = srcPriv->secinfo->username;
keysecret = srcPriv->secinfo->alias;
/* the auth modes are modelled after our old command line generator */
authmodes = virJSONValueNewArray();
if (!(mode = virJSONValueNewString("cephx")) ||
virJSONValueArrayAppend(authmodes, &mode) < 0)
return NULL;
if (!(mode = virJSONValueNewString("none")) ||
virJSONValueArrayAppend(authmodes, &mode) < 0)
if (!(authmodes = virJSONValueFromString("[\"cephx\",\"none\"]")))
return NULL;
}