summaryrefslogtreecommitdiffstats
path: root/source/lib/util.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2001-04-11 23:19:08 +0000
committerJeremy Allison <jra@samba.org>2001-04-11 23:19:08 +0000
commit9b32b8a8cfc8ddb93c14d5581f433d2e93f89ed2 (patch)
treebdc6eaae03c19472a14480c1c5b9d36c6b3ef1fe /source/lib/util.c
parent20b13bafdff2fd7be9219ed164e7fe91b597298d (diff)
downloadsamba-9b32b8a8cfc8ddb93c14d5581f433d2e93f89ed2.tar.gz
samba-9b32b8a8cfc8ddb93c14d5581f433d2e93f89ed2.tar.xz
samba-9b32b8a8cfc8ddb93c14d5581f433d2e93f89ed2.zip
To stop people complaining about the mktemp call, move it into lib/util.c. Thanks
to Andrew for all this code. Fixed extra line in lib/sysacls.c that broke XFS ACL code. Jeremy.
Diffstat (limited to 'source/lib/util.c')
-rw-r--r--source/lib/util.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/source/lib/util.c b/source/lib/util.c
index cd1395aba73..42a9617077d 100644
--- a/source/lib/util.c
+++ b/source/lib/util.c
@@ -1742,6 +1742,20 @@ char *smbd_mktemp(char *template)
return p;
}
+/*****************************************************************
+possibly replace mkstemp if it is broken
+*****************************************************************/
+int smb_mkstemp(char *template)
+{
+#if HAVE_SECURE_MKSTEMP
+ return mkstemp(template);
+#else
+ /* have a reasonable go at emulating it. Hope that
+ the system mktemp() isn't completly hopeless */
+ if (!mktemp(template)) return -1;
+ return open(template, O_CREAT|O_EXCL|O_RDWR, 0600);
+#endif
+}
/*****************************************************************
like strdup but for memory