[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: [PATCH] mktemp: add tmpdir option
From: Andy <andy () skyrain ! eu>
Date: 2021-06-24 17:18:10
Message-ID: ee60f9b2-5502-6e62-ae35-a7b668ce0e2f () skyrain ! eu
[Download RAW message or body]
From 13fee87081ca828806607ea3cfe15b7ab86ddcd2 Mon Sep 17 00:00:00 2001
From: Andrej Valek <andrej.valek@siemens.com>
Date: Thu, 24 Jun 2021 19:13:22 +0200
Subject: [PATCH] mktemp: add tmpdir option
Make mktemp more compatible with coreutils.
- add "--tmpdir" option
- add long variants for "d,q,u" options
Note: Upstream ca-certificate update script started using this option.
Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Peter Marko <peter.marko@siemens.com>
---
coreutils/mktemp.c | 26 ++++++++++++++++++--------
1 file changed, 18 insertions(+), 8 deletions(-)
diff --git a/coreutils/mktemp.c b/coreutils/mktemp.c
index 5393320a5..05c6d98c6 100644
--- a/coreutils/mktemp.c
+++ b/coreutils/mktemp.c
@@ -39,16 +39,17 @@
//kbuild:lib-$(CONFIG_MKTEMP) += mktemp.o
//usage:#define mktemp_trivial_usage
-//usage: "[-dt] [-p DIR] [TEMPLATE]"
+//usage: "[-dt] [-p DIR, --tmpdir[=DIR]] [TEMPLATE]"
//usage:#define mktemp_full_usage "\n\n"
//usage: "Create a temporary file with name based on TEMPLATE
and print its name.\n"
//usage: "TEMPLATE must end with XXXXXX (e.g. [/dir/]nameXXXXXX).\n"
//usage: "Without TEMPLATE, -t tmp.XXXXXX is assumed.\n"
-//usage: "\n -d Make directory, not file"
-//usage: "\n -q Fail silently on errors"
-//usage: "\n -t Prepend base directory name to TEMPLATE"
-//usage: "\n -p DIR Use DIR as a base directory (implies -t)"
-//usage: "\n -u Do not create anything; print a name"
+//usage: "\n -d Make directory, not file"
+//usage: "\n -q Fail silently on errors"
+//usage: "\n -t Prepend base directory name to TEMPLATE"
+//usage: "\n -p DIR, --tmpdir[=DIR] Use DIR as a base directory
(implies -t)"
+//usage: "\n For --tmpdir is a optional one."
+//usage: "\n -u Do not create anything; print a name"
//usage: "\n"
//usage: "\nBase directory is: -p DIR, else $TMPDIR, else /tmp"
//usage:
@@ -72,13 +73,22 @@ int mktemp_main(int argc UNUSED_PARAM, char **argv)
OPT_t = 1 << 2,
OPT_p = 1 << 3,
OPT_u = 1 << 4,
+ OPT_td = 1 << 5,
};
path = getenv("TMPDIR");
if (!path || path[0] == '\0')
path = "/tmp";
- opts = getopt32(argv, "^" "dqtp:u" "\0" "?1"/*1 arg max*/, &path);
+ opts = getopt32long(argv, "^"
+ "dqtp:u\0"
+ "?1" /* 1 arg max */,
+ "directory\0" No_argument "d"
+ "quiet\0" No_argument "q"
+ "dry-run\0" No_argument "u"
+ "tmpdir\0" Optional_argument "\xff"
+ , &path, &path
+ );
chp = argv[optind];
if (!chp) {
@@ -95,7 +105,7 @@ int mktemp_main(int argc UNUSED_PARAM, char **argv)
goto error;
}
#endif
- if (opts & (OPT_t|OPT_p))
+ if (opts & (OPT_t|OPT_p|OPT_td))
chp = concat_path_file(path, chp);
if (opts & OPT_u) {
--
2.17.1
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic