summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2009-04-03 17:24:35 +0100
committerRichard Jones <rjones@redhat.com>2009-04-03 17:24:35 +0100
commit40ca9a57829f2e82362e391d7d998bf33c8bd671 (patch)
tree39990f925b9ae363af6d219a985a70adec9af016 /examples
parentcd2fd58da3f5648a62f3fb7586cdc910c09a31af (diff)
downloadlibguestfs-40ca9a57829f2e82362e391d7d998bf33c8bd671.tar.gz
libguestfs-40ca9a57829f2e82362e391d7d998bf33c8bd671.tar.xz
libguestfs-40ca9a57829f2e82362e391d7d998bf33c8bd671.zip
Daemon and library are mostly talking to each other now.
Diffstat (limited to 'examples')
-rw-r--r--examples/Makefile.am8
-rw-r--r--examples/hello.c33
2 files changed, 39 insertions, 2 deletions
diff --git a/examples/Makefile.am b/examples/Makefile.am
index 66a32d7b..9bac5f36 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -1,7 +1,11 @@
# libguestfs examples
-noinst_PROGRAMS = df
+noinst_PROGRAMS = df hello
df_SOURCES = df.c
-df_CFLAGS = -I$(top_builddir)/src
+df_CFLAGS = -I$(top_builddir)/src -Wall
df_LDADD = $(top_builddir)/src/libguestfs.la
+
+hello_SOURCES = hello.c
+hello_CFLAGS = -I$(top_builddir)/src -Wall
+hello_LDADD = $(top_builddir)/src/libguestfs.la
diff --git a/examples/hello.c b/examples/hello.c
new file mode 100644
index 00000000..5f1ab0ec
--- /dev/null
+++ b/examples/hello.c
@@ -0,0 +1,33 @@
+/* Create a "/hello" file on /dev/sda1. */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <guestfs.h>
+
+int
+main (int argc, char *argv[])
+{
+ guestfs_h *g;
+
+ if (argc != 2 || access (argv[1], F_OK) != 0) {
+ fprintf (stderr, "Usage: hello disk-image\n");
+ exit (1);
+ }
+
+ if (!(g = guestfs_create ())) exit (1);
+
+ guestfs_set_verbose (g, 1);
+ if (guestfs_add_drive (g, argv[1]) == -1) exit (1);
+
+ if (guestfs_launch (g) == -1) exit (1);
+ if (guestfs_wait_ready (g) == -1) exit (1);
+
+ if (guestfs_mount (g, "/dev/sda1", "/") == -1) exit (1);
+
+ if (guestfs_touch (g, "/hello") == -1) exit (1);
+
+ guestfs_sync (g);
+ guestfs_close (g);
+ return 0;
+}