Document umask (RHBZ#582548, RHBZ#583554).
[libguestfs.git] / examples / hello.c
1 /* Create a "/hello" file on chosen partition.
2  * eg:
3  *   hello guest.img /dev/sda1
4  *   hello guest.img /dev/VolGroup00/LogVol00
5  */
6
7 #if HAVE_CONFIG_H
8 # include <config.h>
9 #endif
10 #include <stdio.h>
11 #include <stdlib.h>
12 #include <unistd.h>
13 #include <guestfs.h>
14
15 int
16 main (int argc, char *argv[])
17 {
18   guestfs_h *g;
19
20   if (argc != 3 || access (argv[1], F_OK) != 0) {
21     fprintf (stderr, "Usage: hello disk-image partition\n");
22     exit (EXIT_FAILURE);
23   }
24
25   if (!(g = guestfs_create ())) exit (EXIT_FAILURE);
26
27   if (guestfs_add_drive (g, argv[1]) == -1) exit (EXIT_FAILURE);
28
29   if (guestfs_launch (g) == -1) exit (EXIT_FAILURE);
30
31   if (guestfs_mount (g, argv[2], "/") == -1) exit (EXIT_FAILURE);
32
33   if (guestfs_touch (g, "/hello") == -1) exit (EXIT_FAILURE);
34
35   guestfs_sync (g);
36   guestfs_close (g);
37   return 0;
38 }