Commit Graph

22 Commits

Author SHA1 Message Date
Marek Marczykowski-Górecki
8dda7cf884 core: improve VM name validation
Do not allow 'special' names.
2014-01-21 00:41:01 +01:00
Marek Marczykowski-Górecki
76aa93e94b hvm: start stubdom guid regardless of guiagent_installed (#60 pro)
Alway start stubdom guid, then if guiagent_installed set - start the
target one and when connects, kill stubdom one. This allow the user to
see startup messages so prevent the impression of hang VM.

Note 1: this doesn't work when VM disables SVGA output (just after
windows boot splash screen).
Note 2: gui-daemon sometimes hangs after receiving SIGTERM (libvchan_wait
during libvchan_close). This looks to be stubdom gui agent problem.
2013-12-03 06:18:23 +01:00
Marek Marczykowski-Górecki
4ce3acd64d hvm: always use qrexec for clipboard operations
This is temporary solution until Windows GUI agent will handle
MSG_CLIPBOARD_* commands.

Also fix code style - wrap long lines
2013-12-02 03:47:49 +01:00
Marek Marczykowski-Górecki
27f6f0e64e Merge branch 'new-backups'
Conflicts:
	core-modules/000QubesVm.py
2013-11-29 04:00:58 +01:00
Marek Marczykowski-Górecki
3c99ac1d07 Performance optimization regarding xenstore access
Reduce number of xenstore access during checking current domain XID.
2013-11-26 20:16:10 +01:00
Marek Marczykowski-Górecki
09393734a3 core: refuse to set template for standalone VM 2013-11-25 07:18:01 +01:00
Marek Marczykowski-Górecki
a457b62728 core: more flexible mechanism for template compatibility check
Using class method allow the users (Qubes Manager at least) to check
for compatibility without having any particular VM instance - useful
while creating the VM.
2013-11-21 03:42:31 +01:00
Marek Marczykowski-Górecki
efeb284ab1 core: do not call resize2fs on private.img in dom0
Do not parse VM data (filesystem metadata in this case) in dom0, as this
expose dom0 for potential attack.
2013-11-21 03:38:12 +01:00
Marek Marczykowski-Górecki
6fddae3b9b Support for autostart VMs (#724) 2013-11-20 02:57:17 +01:00
Marek Marczykowski-Górecki
2005207462 Template support for HVM (#719)
Any HVM (which isn't already template-based) can be a template for
another HVM. For now do not allow simultaneous run of template and its
VM (this assumption simplify the implementation, as no root-cow.img is
needed).
2013-11-19 18:42:59 +01:00
Marek Marczykowski-Górecki
a9a8335403 Merge remote-tracking branch 'oliv/master' into new-backups
Conflicts:
	core/qubesutils.py
	dom0/qvm-core/qubes.py
2013-11-07 22:41:16 +01:00
Marek Marczykowski-Górecki
dfe0b18382 core: call ACPI S3 emulation only for VMs with PCI devices
Actually it looks to be needed only there.
But also another problem: this suspend doesn't work for firewallvm, for
unknown reason.
2013-10-24 04:10:07 +02:00
Marek Marczykowski-Górecki
149971ae2e core: add methods to trigger ACPI S3 of VM
Those methods should be called during dom0 suspend/resume.
2013-10-23 21:56:50 +02:00
Marek Marczykowski
5e0d8c1155 Pass domain name to qrexec daemon 2013-10-18 03:39:02 +02:00
Marek Marczykowski-Górecki
41ba079eb8 Force the first character of VM name to be a letter
Especially don't allow numeric-only name (our deserializer of qubes.xml
will convert it to int instead of str...).
2013-10-08 22:47:56 +02:00
Marek Marczykowski-Górecki
5da7a520c4 core: move pci_add/pci_remove to QubesVM, add support for live add/remove (#708)
This additionally requires qubes.DetachPciDevice service in VM.
2013-09-01 01:26:43 +02:00
Marek Marczykowski
19982da9d2 QubesVm: drop evals already covered by generic deserializer 2013-08-13 00:33:54 +02:00
Marek Marczykowski
28b8eb0445 Send monitor layout at VM startup.
Gui daemon isn't aware of multihead parameters, also gui protocol
doesn't support such information - currently by design it is configured
via Qubes RPC service.
At GUI startup send monitor layout to the VM.
2013-08-11 04:11:34 +02:00
Marek Marczykowski
a1e9e3bf1a Fix domain clone/rename 2013-05-25 22:18:37 +02:00
Marek Marczykowski
48098accc5 core: fix datetime handling with new imports
Now it is 'import datetime', not 'from datetime import datetime', so use
explicit datetime class from datetime module.
2013-03-26 02:15:34 +01:00
Marek Marczykowski
f7d868bff8 Missing imports once again... 2013-03-19 13:36:35 +01:00
Marek Marczykowski
a84886db07 Move all files one level up 2013-03-16 19:56:51 +01:00