core-admin/qubes
Marek Marczykowski-Górecki 732231efb0
vm: refuse to start a VM not present in a collection
Check early (but after grabbing a startup_lock) if VM isn't just
removed. This could happen if someone grabs its reference from other
places (netvm of something else?) or just before removing it.
This commit makes the simple removal from the collection (done as the
first step in admin.vm.Remove implementation) efficient way to block
further VM startups, without introducing extra properties.

For this to be effective, removing from the collection, needs to happen
with the startup_lock held. Modify admin.vm.Remove accordingly.
2019-09-29 06:14:21 +02:00
..
api vm: refuse to start a VM not present in a collection 2019-09-29 06:14:21 +02:00
ext factor out utils.coro_maybe() 2019-06-28 10:29:24 +00:00
qmemman qmemman: fix early crash 2018-01-18 17:36:37 +01:00
storage Make pylint happy 2019-09-27 16:29:20 +02:00
tests tests: add workaround for Whonix re-starting VMs 2019-09-29 06:14:21 +02:00
tools app: setup_pools() must be a coroutine 2019-06-28 10:29:26 +00:00
vm vm: refuse to start a VM not present in a collection 2019-09-29 06:14:21 +02:00
__init__.py Fixed unexpected error on empty default template and incorrect error handling 2019-09-19 20:20:36 +02:00
app.py app: re-register event handler after libvirt daemon restart 2019-09-26 01:57:59 +02:00
backup.py Remove unused core2migration.py 2018-12-04 16:12:33 +01:00
config.py vm/adminvm: add run_service* functions 2019-06-09 21:00:02 +02:00
devices.py Make pylint happy 2019-09-27 16:29:20 +02:00
dochelpers.py Fix issues found by pylint 2.0 2018-07-15 23:51:15 +02:00
events.py Fix issues found by pylint 2.0 2018-07-15 23:51:15 +02:00
exc.py Prevent removal of in-use storage pool 2019-02-27 06:03:57 +01:00
features.py qubes/features: check_with_(template_and_)adminvm 2018-12-20 18:28:33 +01:00
firewall.py Make pylint happy 2019-09-27 16:29:20 +02:00
log.py Change license to LGPL v2.1+ 2017-10-12 00:11:50 +02:00
rngdoc.py Fix issues found by pylint 2.0 2018-07-15 23:51:15 +02:00
tarwriter.py Change license to LGPL v2.1+ 2017-10-12 00:11:50 +02:00
utils.py Fix invalid timezone 2019-08-06 18:23:00 -03:00