aboutsummaryrefslogtreecommitdiffstats
path: root/domain.c
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2012-08-16 09:42:48 +0200
committerGerd Hoffmann <kraxel@redhat.com>2012-08-16 09:42:48 +0200
commite2add4678330ac78666ab572f6cf21705aec9300 (patch)
tree0ae7d4927b403229232cac3deafe7c9d01d7b361 /domain.c
parentbb27e16b7fe2eebb8ca2001152e82eb1fe00f2df (diff)
downloadvconsole-e2add4678330ac78666ab572f6cf21705aec9300.tar.gz
add pause/unpause
Diffstat (limited to 'domain.c')
-rw-r--r--domain.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/domain.c b/domain.c
index 80e7874..b1ce595 100644
--- a/domain.c
+++ b/domain.c
@@ -179,8 +179,25 @@ void domain_start(struct vconsole_domain *dom)
virDomainPtr d = virDomainLookupByUUIDString(dom->conn->ptr, dom->uuid);
virDomainGetInfo(d, &dom->info);
- if (dom->info.state == VIR_DOMAIN_SHUTOFF) {
+ switch (dom->info.state) {
+ case VIR_DOMAIN_SHUTOFF:
virDomainCreate(d);
+ break;
+ case VIR_DOMAIN_PAUSED:
+ virDomainResume(d);
+ break;
+ }
+}
+
+void domain_pause(struct vconsole_domain *dom)
+{
+ virDomainPtr d = virDomainLookupByUUIDString(dom->conn->ptr, dom->uuid);
+
+ virDomainGetInfo(d, &dom->info);
+ switch (dom->info.state) {
+ case VIR_DOMAIN_RUNNING:
+ virDomainSuspend(d);
+ break;
}
}