← Commit list

035e71578

Denys Vlasenko
Denys Vlasenko
2017-08-06
SUCCESS Duration: 141s

Subject

readprofile: do not close/free just before exiting

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

NOFORK_NOEXEC.lst+3 -3
@@ -48,7 +48,7 @@ ash - interactive, longterm
awk - noexec. runner
base64 - runner
basename - NOFORK
-beep
+beep - longterm: beep -r 999999999
blkdiscard - noexec. leaks: open+xioctl
blkid - noexec
blockdev - noexec. leaks fd
@@ -127,7 +127,7 @@ findfs - suid
flash_eraseall
flash_lock
flash_unlock
-flashcp
+flashcp - needs ^C. flash writing may be slow, better to free memory memory by execing
flock - spawner, changes state (file locks), let's play safe and not be noexec
fold - noexec. runner
free - nofork candidate(struct globals, needs to close /proc/meminfo fd)
@@ -278,7 +278,7 @@ raidautorun - noexec. very simple. leaks: open+xioctl
rdate - needs ^C (may talk to DNS servers, which may be down)
rdev - leaks: find_block_device -> readdir+xstrdup
readlink - NOFORK
-readprofile
+readprofile - reads /boot/System.map and /proc/profile, better to free more memory memory by execing?
realpath - NOFORK
reboot - rare
reformime - runner
util-linux/readprofile.c+4 -2
@@ -266,8 +266,10 @@ int readprofile_main(int argc UNUSED_PARAM, char **argv)
printf("%6u %-40s %8.4f\n",
total, "total", total/(double)(fn_add-add0));
- fclose(map);
- free(buf);
+ if (ENABLE_FEATURE_CLEAN_UP) {
+ fclose(map);
+ free(buf);
+ }
return EXIT_SUCCESS;
}