mirror of
https://github.com/systemd/systemd.git
synced 2024-11-27 04:03:36 +08:00
detect-virt: add --list-cvm option
The --list-cvm option reports the known types of confidential virtualization technology that can be detected. Related: https://github.com/systemd/systemd/issues/27604 Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
5e0c61f64d
commit
f460fec915
@ -281,6 +281,12 @@
|
||||
<listitem><para>Output all currently known and detectable container and VM environments.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--list-cvm</option></term>
|
||||
|
||||
<listitem><para>Output all currently known and detectable confidential virtualization technologies.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
@ -29,7 +29,7 @@ _systemd_detect_virt() {
|
||||
|
||||
local -A OPTS=(
|
||||
[STANDALONE]='-h --help --version -c --container -v --vm -q --quiet --cvm
|
||||
--private-users'
|
||||
--private-users --list --list-cvm'
|
||||
)
|
||||
|
||||
_init_completion || return
|
||||
|
@ -42,6 +42,8 @@ static int help(void) {
|
||||
" --cvm Only detect whether we are run in a confidential VM\n"
|
||||
" -q --quiet Don't output anything, just set return value\n"
|
||||
" --list List all known and detectable types of virtualization\n"
|
||||
" --list-cvm List all known and detectable types of confidential \n"
|
||||
" virtualization\n"
|
||||
"\nSee the %s for details.\n",
|
||||
program_invocation_short_name,
|
||||
link);
|
||||
@ -56,6 +58,7 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
ARG_PRIVATE_USERS,
|
||||
ARG_LIST,
|
||||
ARG_CVM,
|
||||
ARG_LIST_CVM,
|
||||
};
|
||||
|
||||
static const struct option options[] = {
|
||||
@ -68,6 +71,7 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
{ "quiet", no_argument, NULL, 'q' },
|
||||
{ "cvm", no_argument, NULL, ARG_CVM },
|
||||
{ "list", no_argument, NULL, ARG_LIST },
|
||||
{ "list-cvm", no_argument, NULL, ARG_LIST_CVM },
|
||||
{}
|
||||
};
|
||||
|
||||
@ -114,6 +118,10 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
arg_mode = ONLY_CVM;
|
||||
return 1;
|
||||
|
||||
case ARG_LIST_CVM:
|
||||
DUMP_STRING_TABLE(confidential_virtualization, ConfidentialVirtualization, _CONFIDENTIAL_VIRTUALIZATION_MAX);
|
||||
return 0;
|
||||
|
||||
case '?':
|
||||
return -EINVAL;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user