svn commit: r266556 - head/usr.bin/mkimg
Marcel Moolenaar
marcel at FreeBSD.org
Thu May 22 20:24:31 UTC 2014
Author: marcel
Date: Thu May 22 20:24:30 2014
New Revision: 266556
URL: http://svnweb.freebsd.org/changeset/base/266556
Log:
Create our temporary file in $TMPDIR, if the environment variable
is set. /tmp otherwise.
Submitted by: Dan McGregor <danismostlikely at gmail.com>
Modified:
head/usr.bin/mkimg/image.c
head/usr.bin/mkimg/mkimg.1
Modified: head/usr.bin/mkimg/image.c
==============================================================================
--- head/usr.bin/mkimg/image.c Thu May 22 19:36:29 2014 (r266555)
+++ head/usr.bin/mkimg/image.c Thu May 22 20:24:30 2014 (r266556)
@@ -30,6 +30,9 @@ __FBSDID("$FreeBSD$");
#include <sys/types.h>
#include <assert.h>
#include <errno.h>
+#include <limits.h>
+#include <paths.h>
+#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
@@ -38,7 +41,7 @@ __FBSDID("$FreeBSD$");
#define BUFFER_SIZE (1024*1024)
-static char image_tmpfile[] = "/tmp/mkimg-XXXXXX";
+static char image_tmpfile[PATH_MAX];
static int image_fd = -1;
static lba_t image_size;
@@ -161,9 +164,14 @@ image_write(lba_t blk, void *buf, ssize_
int
image_init(void)
{
+ const char *tmpdir;
if (atexit(cleanup) == -1)
return (errno);
+ if ((tmpdir = getenv("TMPDIR")) == NULL || *tmpdir == '\0')
+ tmpdir = _PATH_TMP;
+ snprintf(image_tmpfile, sizeof(image_tmpfile), "%s/mkimg-XXXXXX",
+ tmpdir);
image_fd = mkstemp(image_tmpfile);
if (image_fd == -1)
return (errno);
Modified: head/usr.bin/mkimg/mkimg.1
==============================================================================
--- head/usr.bin/mkimg/mkimg.1 Thu May 22 19:36:29 2014 (r266555)
+++ head/usr.bin/mkimg/mkimg.1 Thu May 22 20:24:30 2014 (r266556)
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 27, 2014
+.Dd May 22, 2014
.Dt MKIMG 1
.Os
.Sh NAME
@@ -159,6 +159,11 @@ For partitioning schemes that feature pa
utility supports assigning labels to the partitions specified.
In the following example the file system partition is labeled as 'backup':
.Dl % mkimg -s gpt -p freebsd-ufs/backup:=file-system.ufs -o gpt.img
+.Sh ENVIRONMENT
+.Bl -tag -width "TMPDIR" -compact
+.It Ev TMPDIR
+Directory to put temporary files in; default is
+.Pa /tmp .
.Sh SEE ALSO
.Xr gpart 8
.Xr makefs 8
More information about the svn-src-head
mailing list