FILE *f;
char buf[256];
- if (!(f = fopen(filename, "r")))
+ if (!(f = fopen(filename, "r" UL_CLOEXECSTR)))
err(EXIT_FAILURE, "%d: failed to open: %s", getpid(), filename);
if (!fgets(buf, sizeof(buf), f))
fclose(f);
num = atol(buf) + 1;
- if (!(f = fopen(filename, "w")))
+ if (!(f = fopen(filename, "w" UL_CLOEXECSTR)))
err(EXIT_FAILURE, "%d: failed to open: %s", getpid(), filename);
fprintf(f, "%ld", num);
if (!filename || !tb)
return -EINVAL;
- f = fopen(filename, "r");
+ f = fopen(filename, "r" UL_CLOEXECSTR);
if (f) {
rc = mnt_table_parse_stream(tb, f, filename);
fclose(f);
!S_ISREG(st.st_mode))
continue;
- f = fopen_at(dd, ".", d->d_name, O_RDONLY, "r");
+ f = fopen_at(dd, ".", d->d_name, O_RDONLY|O_CLOEXEC, "r" UL_CLOEXECSTR);
if (f) {
mnt_table_parse_stream(tb, f, d->d_name);
fclose(f);
!S_ISREG(st.st_mode))
continue;
- f = fopen_at(dirfd(dir), _PATH_MNTTAB_DIR,
- d->d_name, O_RDONLY, "r");
+ f = fopen_at(dirfd(dir), _PATH_MNTTAB_DIR, d->d_name,
+ O_RDONLY|O_CLOEXEC, "r" UL_CLOEXECSTR);
if (f) {
mnt_table_parse_stream(tb, f, d->d_name);
fclose(f);
FILE *f;
char line[128];
- f = fopen(filename, "r");
+ f = fopen(filename, "r" UL_CLOEXECSTR);
if (!f)
return 1;
*/
oldmode = umask(S_IRGRP|S_IWGRP|S_IXGRP|
S_IROTH|S_IWOTH|S_IXOTH);
- fd = mkstemp(n);
+ fd = mkostemp(n, O_RDWR|O_CREAT|O_EXCL|O_CLOEXEC);
umask(oldmode);
if (fd >= 0 && name)
if (!path)
path = _PATH_PROC_CMDLINE;
#endif
- f = fopen(path, "r");
+ f = fopen(path, "r" UL_CLOEXECSTR);
if (!f)
return NULL;