* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
*/
-#include <sys/param.h> /* MAXHOSTNAMELEN */
-#include <sys/utsname.h>
#include "libbb.h"
+/* After libbb.h, since it needs sys/types.h on some systems */
+#include <sys/utsname.h>
#define LOGIN " login: "
puts("\r"); /* start a new line */
- fp = fopen(issue_file, "r");
+ fp = fopen_for_read(issue_file);
if (!fp)
return;
while ((c = fgetc(fp)) != EOF) {
case 'm':
outbuf = uts.machine;
break;
+/* The field domainname of struct utsname is Linux specific. */
+#if defined(__linux__)
case 'D':
case 'o':
outbuf = uts.domainname;
break;
+#endif
case 'd':
strftime(buf, sizeof(buf), fmtstr_d, localtime(&t));
break;
fputs(outbuf, stdout);
}
fclose(fp);
- fflush(stdout);
+ fflush_all();
}
void FAST_FUNC print_login_prompt(void)
fputs(hostname, stdout);
fputs(LOGIN, stdout);
- fflush(stdout);
+ fflush_all();
free(hostname);
}