The domsuspend example code is a really old and bad exmample of (how not
to use) the libvirt API. Remove it as it's apparent that nobody tried to
use it. It was broken and nobody complained.
---
.gitignore | 1 -
Makefile.am | 4 +-
examples/domsuspend/Makefile.am | 25 --------
examples/domsuspend/suspend.c | 136 ----------------------------------------
libvirt.spec.in | 3 +-
5 files changed, 3 insertions(+), 166 deletions(-)
delete mode 100644 examples/domsuspend/Makefile.am
delete mode 100644 examples/domsuspend/suspend.c
diff --git a/.gitignore b/.gitignore
index 8de0b26..24469a1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -71,7 +71,6 @@
/docs/todo.html.in
/examples/domain-events/events-c/event-test
/examples/dominfo/info1
-/examples/domsuspend/suspend
/examples/hellolibvirt/hellolibvirt
/examples/openauth/openauth
/gnulib/lib/*
diff --git a/Makefile.am b/Makefile.am
index d7ddd9d..2cbf71a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -21,8 +21,8 @@ GENHTML = genhtml
SUBDIRS = . gnulib/lib include src daemon tools docs gnulib/tests \
tests po examples/domain-events/events-c examples/hellolibvirt \
- examples/dominfo examples/domsuspend examples/apparmor \
- examples/xml/nwfilter examples/openauth examples/systemtap
+ examples/dominfo examples/apparmor examples/xml/nwfilter \
+ examples/openauth examples/systemtap
ACLOCAL_AMFLAGS = -I m4
diff --git a/examples/domsuspend/Makefile.am b/examples/domsuspend/Makefile.am
deleted file mode 100644
index d0d9368..0000000
--- a/examples/domsuspend/Makefile.am
+++ /dev/null
@@ -1,25 +0,0 @@
-## Copyright (C) 2005-2013 Red Hat, Inc.
-##
-## This library is free software; you can redistribute it and/or
-## modify it under the terms of the GNU Lesser General Public
-## License as published by the Free Software Foundation; either
-## version 2.1 of the License, or (at your option) any later version.
-##
-## This library is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-## Lesser General Public License for more details.
-##
-## You should have received a copy of the GNU Lesser General Public
-## License along with this library. If not, see
-## <
http://www.gnu.org/licenses/>.
-
-INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include
-LDADDS = $(STATIC_BINARIES) $(WARN_CFLAGS) $(top_builddir)/src/libvirt.la \
- $(COVERAGE_LDFLAGS)
-
-noinst_PROGRAMS=suspend
-
-suspend_SOURCES=suspend.c
-suspend_LDFLAGS=
-suspend_LDADD= $(LDADDS)
diff --git a/examples/domsuspend/suspend.c b/examples/domsuspend/suspend.c
deleted file mode 100644
index 6a0f5c9..0000000
--- a/examples/domsuspend/suspend.c
+++ /dev/null
@@ -1,136 +0,0 @@
-/**
- * section: Scheduling
- * synopsis: Suspend a domain and then resume its execution
- * purpose: Demonstrate the basic use of the library to suspend and
- * resume a domain. If no id is given on the command line
- * this script will suspend and resume the first domain found
- * which is not Domain 0.
- * usage: suspend [id]
- * test: suspend
- * author: Daniel Veillard
- * copy: see Copyright for the status of this software.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <libvirt/libvirt.h>
-
-static virConnectPtr conn = NULL; /* the hypervisor connection */
-
-/**
- * checkDomainState:
- * @dom: the domain
- *
- * Return the current state of a domain or -1 if non-exsitant
- */
-static int
-checkDomainState(virDomainPtr dom) {
- virDomainInfo info; /* the information being fetched */
- int ret;
-
- ret = virDomainGetInfo(dom, &info);
- if (ret < 0) {
- return -1;
- }
- return info.state;
-}
-
-/**
- * SuspendAndResumeDomain:
- * @id: the id of the domain
- *
- * extract the domain 0 information
- */
-static void
-SuspendAndResumeDomain(int id) {
- virDomainPtr dom = NULL; /* the domain being checked */
- int ret, state;
-
- /* Find the domain of the given id */
- dom = virDomainLookupByID(conn, id);
- if (dom == NULL) {
- fprintf(stderr, "Failed to find Domain %d\n", id);
- goto error;
- }
-
- /* Check state */
- state = checkDomainState(dom);
- if ((state == VIR_DOMAIN_RUNNING) ||
- (state == VIR_DOMAIN_NOSTATE) ||
- (state == VIR_DOMAIN_BLOCKED)) {
- printf("Suspending domain...\n");
- ret = virDomainSuspend(dom);
- if (ret < 0) {
- fprintf(stderr, "Failed to suspend Domain %d\n", id);
- goto error;
- }
- state = checkDomainState(dom);
- if (state != VIR_DOMAIN_PAUSED) {
- fprintf(stderr, "Domain %d state is not suspended\n", id);
- } else {
- printf("Domain suspended, resuming it...\n");
- }
- ret = virDomainResume(dom);
- if (ret < 0) {
- fprintf(stderr, "Failed to resume Domain %d\n", id);
- goto error;
- }
- state = checkDomainState(dom);
- if ((state == VIR_DOMAIN_RUNNING) ||
- (state == VIR_DOMAIN_NOSTATE) ||
- (state == VIR_DOMAIN_BLOCKED)) {
- printf("Domain resumed\n");
- } else {
- fprintf(stderr, "Domain %d state indicate it is not resumed\n",
id);
- }
- } else {
- fprintf(stderr, "Domain %d is not in a state where it should be
suspended\n", id);
- goto error;
- }
-
-error:
- if (dom != NULL)
- virDomainFree(dom);
-}
-
-int main(int argc, char **argv) {
- int id = 0;
-
- /* NULL means connect to local Xen hypervisor */
- conn = virConnectOpenReadOnly(NULL);
- if (conn == NULL) {
- fprintf(stderr, "Failed to connect to hypervisor\n");
- goto error;
- }
-
- if (argc > 1) {
- id = atoi(argv[1]);
- }
- if (id == 0) {
- int n;
- size_t i;
- int ids[10];
- n = virConnectListDomains(conn, &ids[0], 10);
- if (n < 0) {
- fprintf(stderr, "Failed to list the domains\n");
- goto error;
- }
- for (i = 0; i < n; i++) {
- if (ids[i] != 0) {
- id = ids[i];
- break;
- }
- }
- }
- if (id == 0) {
- fprintf(stderr, "Failed find a running guest domain\n");
- goto error;
- }
-
- SuspendAndResumeDomain(id);
-
-error:
- if (conn != NULL)
- virConnectClose(conn);
- return 0;
-}
diff --git a/libvirt.spec.in b/libvirt.spec.in
index cfd8890..eff7103 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -1428,7 +1428,7 @@ rm -fr %{buildroot}
# on RHEL 5, thus we need to expand it here.
make install DESTDIR=%{?buildroot} SYSTEMD_UNIT_DIR=%{_unitdir}
-for i in domain-events/events-c dominfo domsuspend hellolibvirt openauth xml/nwfilter
systemtap
+for i in domain-events/events-c dominfo hellolibvirt openauth xml/nwfilter systemtap
do
(cd examples/$i ; make clean ; rm -rf .deps .libs Makefile Makefile.in)
done
@@ -2094,7 +2094,6 @@ exit 0
%doc examples/hellolibvirt
%doc examples/domain-events/events-c
%doc examples/dominfo
-%doc examples/domsuspend
%doc examples/openauth
%doc examples/xml
%doc examples/systemtap
--
1.8.4.3