audit small applets and mark some of them as NOFORK.

Put big scary warnings in relevant places.
This commit is contained in:
Denis Vlasenko
2007-04-10 15:43:37 +00:00
parent ff131b980d
commit 99912ca733
41 changed files with 173 additions and 128 deletions

View File

@@ -20,23 +20,23 @@
* a diagnostic message and an error return.
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include "busybox.h"
/* This is a NOFORK applet. Be very careful! */
int logname_main(int argc, char ATTRIBUTE_UNUSED **argv);
int logname_main(int argc, char ATTRIBUTE_UNUSED **argv)
{
const char *p;
char buf[128];
if (argc > 1) {
bb_show_usage();
}
if ((p = getlogin()) != NULL) {
puts(p);
fflush_stdout_and_exit(EXIT_SUCCESS);
/* Using _r function - avoid pulling in static buffer from libc */
if (getlogin_r(buf, sizeof(buf)) == 0) {
puts(buf);
return fflush(stdout);
}
bb_perror_msg_and_die("getlogin");