1 /* libguestfs-test-tool-helper
2 * Copyright (C) 2009 Red Hat Inc.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 /* NB. This program is intended to run inside the appliance. */
30 #include <sys/types.h>
32 char buffer[10 * 1024];
39 fprintf (stderr, "This is the libguestfs-test-tool helper program.\n");
41 /* This should fail immediately if we're not in the appliance. */
42 if (mkdir ("/tmp", 0700) == -1) {
44 fprintf (stderr, "This program should not be run directly. Use libguestfs-test-tool instead.\n");
48 if (geteuid () != 0) {
49 fprintf (stderr, "helper: This program doesn't appear to be running as root.\n");
53 if (mkdir ("/tmp/helper", 0700) == -1) {
54 perror ("/tmp/helper");
58 fd = open ("/tmp/helper/a", O_CREAT|O_EXCL|O_WRONLY, 0600);
60 perror ("create /tmp/helper/a");
63 if (write (fd, buffer, sizeof buffer) != sizeof buffer) {
67 if (close (fd) == -1) {