1 /* SPDX-License-Identifier: LGPL-2.1+ */
5 Copyright 2011 Lennart Poettering
13 VIRTUALIZATION_NONE = 0,
15 VIRTUALIZATION_VM_FIRST,
16 VIRTUALIZATION_KVM = VIRTUALIZATION_VM_FIRST,
21 VIRTUALIZATION_VMWARE,
22 VIRTUALIZATION_ORACLE,
23 VIRTUALIZATION_MICROSOFT,
25 VIRTUALIZATION_PARALLELS,
28 VIRTUALIZATION_VM_OTHER,
29 VIRTUALIZATION_VM_LAST = VIRTUALIZATION_VM_OTHER,
31 VIRTUALIZATION_CONTAINER_FIRST,
32 VIRTUALIZATION_SYSTEMD_NSPAWN = VIRTUALIZATION_CONTAINER_FIRST,
33 VIRTUALIZATION_LXC_LIBVIRT,
35 VIRTUALIZATION_OPENVZ,
36 VIRTUALIZATION_DOCKER,
38 VIRTUALIZATION_CONTAINER_OTHER,
39 VIRTUALIZATION_CONTAINER_LAST = VIRTUALIZATION_CONTAINER_OTHER,
42 _VIRTUALIZATION_INVALID = -1
45 #if 0 /// UNNEEDED by elogind
46 static inline bool VIRTUALIZATION_IS_VM(int x) {
47 return x >= VIRTUALIZATION_VM_FIRST && x <= VIRTUALIZATION_VM_LAST;
50 static inline bool VIRTUALIZATION_IS_CONTAINER(int x) {
51 return x >= VIRTUALIZATION_CONTAINER_FIRST && x <= VIRTUALIZATION_CONTAINER_LAST;
56 int detect_container(void);
57 #if 0 /// UNNEEDED by elogind
58 int detect_virtualization(void);
60 int running_in_userns(void);
62 int running_in_chroot(void);
64 const char *virtualization_to_string(int v) _const_;
65 int virtualization_from_string(const char *s) _pure_;