block/qcow2: refactor qcow2_update_options_prepare error paths
Keep setting ret close to setting errp and don't merge different error paths into one. This way it's more obvious that we don't return error without setting errp. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Alberto Garcia <berto@igalia.com> Message-Id: <20210202124956.63146-15-vsementsov@virtuozzo.com> Signed-off-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
parent
15ce94a68c
commit
1184b41101
@ -1158,6 +1158,10 @@ static int qcow2_update_options_prepare(BlockDriverState *bs,
|
||||
}
|
||||
qdict_put_str(encryptopts, "format", "qcow");
|
||||
r->crypto_opts = block_crypto_open_opts_init(encryptopts, errp);
|
||||
if (!r->crypto_opts) {
|
||||
ret = -EINVAL;
|
||||
goto fail;
|
||||
}
|
||||
break;
|
||||
|
||||
case QCOW_CRYPT_LUKS:
|
||||
@ -1170,14 +1174,15 @@ static int qcow2_update_options_prepare(BlockDriverState *bs,
|
||||
}
|
||||
qdict_put_str(encryptopts, "format", "luks");
|
||||
r->crypto_opts = block_crypto_open_opts_init(encryptopts, errp);
|
||||
if (!r->crypto_opts) {
|
||||
ret = -EINVAL;
|
||||
goto fail;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
error_setg(errp, "Unsupported encryption method %d",
|
||||
s->crypt_method_header);
|
||||
break;
|
||||
}
|
||||
if (s->crypt_method_header != QCOW_CRYPT_NONE && !r->crypto_opts) {
|
||||
ret = -EINVAL;
|
||||
goto fail;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user