summaryrefslogtreecommitdiff
path: root/source3/lib
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
commit6578fd874283ee97c2896bcf7257db7f3e37c2ec (patch)
treea5e9ee2ed36b4b0ba1521edbe961f3e2f9026f13 /source3/lib
parent0ca9f5c023df2ee498dcd1bdb2f29abc632a5d60 (diff)
downloadsamba-6578fd874283ee97c2896bcf7257db7f3e37c2ec.tar.gz
samba-6578fd874283ee97c2896bcf7257db7f3e37c2ec.tar.bz2
samba-6578fd874283ee97c2896bcf7257db7f3e37c2ec.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. (This used to be commit 9b32b8a8cfc8ddb93c14d5581f433d2e93f89ed2)
Diffstat (limited to 'source3/lib')
-rw-r--r--source3/lib/smbrun.c2
-rw-r--r--source3/lib/sysacls.c1
-rw-r--r--source3/lib/util.c14
3 files changed, 15 insertions, 2 deletions
diff --git a/source3/lib/smbrun.c b/source3/lib/smbrun.c
index 2b7d141834..e039f222fc 100644
--- a/source3/lib/smbrun.c
+++ b/source3/lib/smbrun.c
@@ -34,7 +34,7 @@ static BOOL setup_stdout_file(char *outfile,BOOL shared)
{
int fd;
mode_t mode = S_IWUSR|S_IRUSR|S_IRGRP|S_IROTH;
- int flags = O_RDWR|O_CREAT|O_TRUNC|O_EXCL;
+ int flags = O_RDWR|O_CREAT|O_EXCL;
close(1);
diff --git a/source3/lib/sysacls.c b/source3/lib/sysacls.c
index 778f467c12..59f8e2e043 100644
--- a/source3/lib/sysacls.c
+++ b/source3/lib/sysacls.c
@@ -1221,7 +1221,6 @@ int sys_acl_free_acl(SMB_ACL_T the_acl)
return acl_free(the_acl);
}
->>>>>>> 1.15
#else /* No ACLs. */
int sys_acl_get_entry( SMB_ACL_T the_acl, int entry_id, SMB_ACL_ENTRY_T *entry_p)
diff --git a/source3/lib/util.c b/source3/lib/util.c
index cd1395aba7..42a9617077 100644
--- a/source3/lib/util.c
+++ b/source3/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