[Midnightbsd-cvs] src [10492] trunk/lib/libutil/quotafile.c: use O_CLOEXEC
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Wed Jun 6 21:31:47 EDT 2018
Revision: 10492
http://svnweb.midnightbsd.org/src/?rev=10492
Author: laffer1
Date: 2018-06-06 21:31:47 -0400 (Wed, 06 Jun 2018)
Log Message:
-----------
use O_CLOEXEC
Modified Paths:
--------------
trunk/lib/libutil/quotafile.c
Modified: trunk/lib/libutil/quotafile.c
===================================================================
--- trunk/lib/libutil/quotafile.c 2018-06-07 01:31:02 UTC (rev 10491)
+++ trunk/lib/libutil/quotafile.c 2018-06-07 01:31:47 UTC (rev 10492)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/*-
* Copyright (c) 2008 Dag-Erling Coïdan Smørgrav
* Copyright (c) 2008 Marshall Kirk McKusick
@@ -25,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $MidnightBSD$
+ * $FreeBSD: stable/10/lib/libutil/quotafile.c 300272 2016-05-20 06:35:14Z truckman $
*/
#include <sys/types.h>
@@ -84,7 +85,7 @@
}
strcpy(buf, fs->fs_mntops);
for (opt = strtok(buf, ","); opt; opt = strtok(NULL, ",")) {
- if ((cp = index(opt, '=')))
+ if ((cp = strchr(opt, '=')))
*cp++ = '\0';
if (type == USRQUOTA && strcmp(opt, usrname) == 0)
break;
@@ -124,7 +125,7 @@
return (NULL);
qf->fd = -1;
qf->quotatype = quotatype;
- strncpy(qf->fsname, fs->fs_file, sizeof(qf->fsname));
+ strlcpy(qf->fsname, fs->fs_file, sizeof(qf->fsname));
if (stat(qf->fsname, &st) != 0)
goto error;
qf->dev = st.st_dev;
@@ -137,7 +138,7 @@
goto error;
}
qf->accmode = openflags & O_ACCMODE;
- if ((qf->fd = open(qf->qfname, qf->accmode)) < 0 &&
+ if ((qf->fd = open(qf->qfname, qf->accmode|O_CLOEXEC)) < 0 &&
(openflags & O_CREAT) != O_CREAT)
goto error;
/* File open worked, so process it */
@@ -168,7 +169,8 @@
/* not reached */
}
/* open failed, but O_CREAT was specified, so create a new file */
- if ((qf->fd = open(qf->qfname, O_RDWR|O_CREAT|O_TRUNC, 0)) < 0)
+ if ((qf->fd = open(qf->qfname, O_RDWR|O_CREAT|O_TRUNC|O_CLOEXEC, 0)) <
+ 0)
goto error;
qf->wordsize = 64;
memset(&dqh, 0, sizeof(dqh));
@@ -534,7 +536,8 @@
free(newqf);
return (-1);
}
- if ((newqf->fd = open(qf->qfname, O_RDWR|O_CREAT|O_TRUNC, 0)) < 0) {
+ if ((newqf->fd = open(qf->qfname, O_RDWR|O_CREAT|O_TRUNC|O_CLOEXEC,
+ 0)) < 0) {
serrno = errno;
goto error;
}
More information about the Midnightbsd-cvs
mailing list