Commit Graph

4127 Commits

Author SHA1 Message Date
Rafal Wojtczuk
7f6a06c354 qrexec: in write_stdin, remove dependency on write size
Previous code could barf when write was partial; probably can happen
only if we increase vchan buffer size, but it is better isolated now.
2011-03-18 11:16:05 +01:00
Rafal Wojtczuk
1d24ef9d1a qrexec: when forgetting about a client/process, flush buffered data
We need to spawn a child to take care of buffered data flushing, if there
is any. Expensive, but should be needed rarely.
2011-03-17 18:15:04 +01:00
Rafal Wojtczuk
53b517f6a5 qrexec: move set_nonblock function to write_stdin
It will be needed there.
2011-03-17 17:53:33 +01:00
Rafal Wojtczuk
fb71bf968c qrexec_agent: when receiving close from daemon, check buffered data
We need to wait for buffer flush, so that buffered data is not lost,
and only then close pipe to the child.
2011-03-17 17:37:35 +01:00
Rafal Wojtczuk
af7fefa73f qrexec: handle buffered writes correctly
In case when we have a buffered write, always append to the
buffer, even if the pipe happens to be writable now. If not,
in case of certain tight race we might end up writing buffered data in
wrong order.
2011-03-17 16:53:29 +01:00
Marek Marczykowski
33e7ee3623 Reduce duplicated code in qubes.xml load
Parse common attrs in separate function.
Side effect: possibility to set custom TemplateVM label
2011-03-16 20:40:15 -04:00
Marek Marczykowski
bef1ea4c92 Reduce duplicated code in create_xml_entries 2011-03-16 19:42:01 -04:00
Marek Marczykowski
4e68c4cde9 Standalone VM (#98)
'updateable' property is now read-onlyr; updateable=True means that VM has own
root.img, not persistent root-cow.img.
2011-03-16 18:45:02 -04:00
Joanna Rutkowska
4c5d9f56c7 Tag RPMs with dist info 2011-03-16 19:14:42 +01:00
Marek Marczykowski
ef6a3e576b Parse tags %MEM% and %VCPUS% in {app,net}vm-template.conf (#115) 2011-03-16 13:39:54 -04:00
Marek Marczykowski
379a5620c8 Fix netvm creation from template
Missing netvms_conf_file parameter in template
2011-03-16 13:38:16 -04:00
Rafal Wojtczuk
4087b1d052 Package qvm-copy-to-vm2*, too. 2011-03-16 16:47:32 +01:00
Marek Marczykowski
1892bef66f Require xen 3.4.3-6 with fixed /etc/xen/scripts/block 2011-03-16 11:32:51 -04:00
Marek Marczykowski
2b78538376 Merge git://git.qubes-os.org/joanna/core 2011-03-16 11:29:55 -04:00
Rafal Wojtczuk
e410ad52ba Bloody perror messes with errno; need to save errno. 2011-03-16 16:24:54 +01:00
Marek Marczykowski
343e23d459 Version 1.4.1 2011-03-16 11:20:00 -04:00
Rafal Wojtczuk
d40fb3a2e1 Fifo semantics is hard to get right.
Finally: we need to close the command pipe at EOF.
2011-03-16 16:11:05 +01:00
Joanna Rutkowska
e659710d62 version 1.4.1 2011-03-16 15:57:54 +01:00
Rafal Wojtczuk
15bab70eae Handle pipe io in qrexec_agent properly
Don't reopen pipe after each read - no need, and it could lose events.
2011-03-16 15:18:37 +01:00
Rafal Wojtczuk
769eedd33a Make qrexec_client wait for its local child before exiting
If we do not wait and exit imemdiately, qrexec_daemon will decrease
the children count and continue spawning processes, while e.g.
qfile-daemon still waits for kdialog - so dom0 will be DoSed by
multiple processes.
2011-03-16 14:52:35 +01:00
Rafal Wojtczuk
27cfd6111a qrexec_daemon limits the number of its children
So that evil VM cannot just send flood of exec qfile-daemon requests,
and DoS dom0.
2011-03-16 14:21:45 +01:00
Rafal Wojtczuk
777eaa2168 In read_all()/write_all(), continue upon EINTR. 2011-03-16 12:58:40 +01:00
Rafal Wojtczuk
a195f436b7 In qfile-unpacker, set perms on the directory only on second pass.
It solves problem with transferring r.x directory. Originally, it
would fail when creating files in the directory (as it is not
writable). Now, we will create it rwx, create files in it, and fix
perms and utimes on the second pass.
[user@devel fcopy]$ ls -ald /boot
dr-xr-xr-x 4 root root 4096 Sep  1  2010 /boot
2011-03-16 12:48:29 +01:00
Rafal Wojtczuk
821f707053 Added qvm-copy-to-vm2.kde 2011-03-16 12:00:22 +01:00
Marek Marczykowski
5e2dd1c6ce Revert "Do not add new vm to xen storage in qvm-create - it is done by core"
This reverts commit 72ddb5aae1.
2011-03-16 11:44:25 +01:00
Marek Marczykowski
d89c2fd37c Merge branch 'master' of ssh://git.qubes-os.org/var/lib/qubes/git/marmarek/core 2011-03-16 11:43:58 +01:00
Marek Marczykowski
1c505589c1 Move xenstore-watch for VM from AppVM to common. Add to core-common.spec 2011-03-16 11:41:18 +01:00
Marek Marczykowski
72ddb5aae1 Do not add new vm to xen storage in qvm-create - it is done by core 2011-03-16 11:41:18 +01:00
Marek Marczykowski
5acc4610b4 Allow installed_by_rpm=False in NetVM and ProxyVM 2011-03-16 11:41:18 +01:00
Marek Marczykowski
01a1aeb403 Do not try to disable 'reboot' service 2011-03-16 11:41:18 +01:00
Marek Marczykowski
33ed1ecad8 Drop forced fedora version from requires 2011-03-16 11:41:18 +01:00
Marek Marczykowski
7dbe6e1731 Create NetVM xen config from separate template (netvm-template.conf) 2011-03-16 11:41:18 +01:00
Rafal Wojtczuk
2938ee5356 removed set -x from qvm-copy-to-vm2 2011-03-16 11:07:27 +01:00
Rafal Wojtczuk
ecf007b3a2 qfile-agent writes DONE to the status file at the end of work. 2011-03-16 11:06:27 +01:00
Rafal Wojtczuk
b01464670b New qvm-copy-to-vm, aka qvm-copy-to-vm2 2011-03-16 10:50:11 +01:00
Rafal Wojtczuk
5230c12934 qfile-agent: Handle filenames with trailing slash properly. 2011-03-16 10:48:27 +01:00
Rafal Wojtczuk
e6da61cb5e Scan filecopy sppool properly. 2011-03-16 10:14:39 +01:00
Rafal Wojtczuk
2ea7a0e77a Build filecopy tools with -g. 2011-03-16 10:11:55 +01:00
Joanna Rutkowska
fa7e13c602 Merge branch 'master' of git.qubes-os.org:/var/lib/qubes/git/marmarek/core 2011-03-15 22:57:27 +01:00
Marek Marczykowski
2818f6dfe1 Move xenstore-watch for VM from AppVM to common. Add to core-common.spec 2011-03-15 19:47:26 +01:00
Marek Marczykowski
63b06516b7 Do not add new vm to xen storage in qvm-create - it is done by core 2011-03-15 18:51:31 +01:00
Marek Marczykowski
14c48f5253 Merge commit '00ba6dd5b7441cf10f87f527f4ac7eb459cb0a08' 2011-03-15 18:33:01 +01:00
Marek Marczykowski
993d34e7d5 Allow labels for NetVM/ProxyVM. Require it in qvm-create. 2011-03-15 18:28:28 +01:00
Joanna Rutkowska
5e1a808648 Merge branch 'master' of git.qubes-os.org:/var/lib/qubes/git/marmarek/core 2011-03-15 18:16:33 +01:00
Marek Marczykowski
588f4b91c8 Fix Firewall -> Proxy... 2011-03-15 17:40:23 +01:00
Rafal Wojtczuk
8ce0e0f39b Fixed permissions of qfile-daemon 2011-03-15 16:48:17 +01:00
Rafal Wojtczuk
84b1a186ff Added qfile-unpacker and qfile-daemon 2011-03-15 16:43:43 +01:00
Rafal Wojtczuk
f0a7620449 Package qfile-agent-dvm, too. 2011-03-15 16:19:42 +01:00
Rafal Wojtczuk
b8d983cfa9 Added qfile-agent 2011-03-15 16:07:00 +01:00
Rafal Wojtczuk
66bf0abb53 Use gui_fatal in qfile-agent-dvm.c 2011-03-15 13:12:21 +01:00