X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=src%2Flaunch.c;h=a7a86b97f135533a5ec2dfc5349e22d3f25cea19;hb=61a1a2b71c4811b9d6233a43db74229b9364f0c6;hp=48ddb8df21d51d9052d092b50f83f8c2b1f78815;hpb=1c29849e0bdc731c023cff00d2c2354a41fd2a92;p=libguestfs.git diff --git a/src/launch.c b/src/launch.c index 48ddb8d..a7a86b9 100644 --- a/src/launch.c +++ b/src/launch.c @@ -120,6 +120,30 @@ guestfs___rollback_cmdline (guestfs_h *g, int pos) g->cmdline_size = pos; } +/* Internal command to return the command line. */ +char ** +guestfs__debug_cmdline (guestfs_h *g) +{ + int i; + char **r; + + if (g->cmdline == NULL) { + r = safe_malloc (g, sizeof (char *) * 1); + r[0] = NULL; + return r; + } + + r = safe_malloc (g, sizeof (char *) * (g->cmdline_size + 1)); + r[0] = safe_strdup (g, g->qemu); /* g->cmdline[0] is always NULL */ + + for (i = 1; i < g->cmdline_size; ++i) + r[i] = safe_strdup (g, g->cmdline[i]); + + r[g->cmdline_size] = NULL; + + return r; /* caller frees */ +} + int guestfs__config (guestfs_h *g, const char *qemu_param, const char *qemu_value) @@ -328,7 +352,6 @@ guestfs__launch (guestfs_h *g) { int r; int wfd[2], rfd[2]; - int tries; char unixsock[256]; struct sockaddr_un addr; @@ -747,6 +770,7 @@ guestfs__launch (guestfs_h *g) /* Return the location of the tmpdir (eg. "/tmp") and allow users * to override it at runtime using $TMPDIR. + * http://www.pathname.com/fhs/pub/fhs-2.3.html#TMPTEMPORARYFILES */ const char * guestfs_tmpdir (void) @@ -765,6 +789,23 @@ guestfs_tmpdir (void) return tmpdir; } +/* Return the location of the persistent tmpdir (eg. "/var/tmp") and + * allow users to override it at runtime using $TMPDIR. + * http://www.pathname.com/fhs/pub/fhs-2.3.html#VARTMPTEMPORARYFILESPRESERVEDBETWEE + */ +const char * +guestfs___persistent_tmpdir (void) +{ + const char *tmpdir; + + tmpdir = "/var/tmp"; + + const char *t = getenv ("TMPDIR"); + if (t) tmpdir = t; + + return tmpdir; +} + /* Compute Y - X and return the result in milliseconds. * Approximately the same as this code: * http://www.mpp.mpg.de/~huber/util/timevaldiff.c