Browse Source

su: Refuse to run if stdin is not a TTY

Andreas Kling 4 years ago
parent
commit
6e592fb5c3
1 changed files with 5 additions and 0 deletions
  1. 5 0
      Userland/su.cpp

+ 5 - 0
Userland/su.cpp

@@ -36,6 +36,11 @@ extern "C" int main(int, char**);
 
 
 int main(int argc, char** argv)
 int main(int argc, char** argv)
 {
 {
+    if (!isatty(STDIN_FILENO)) {
+        warnln("{}: standard in is not a terminal", argv[0]);
+        return 1;
+    }
+
     const char* user = nullptr;
     const char* user = nullptr;
 
 
     Core::ArgsParser args_parser;
     Core::ArgsParser args_parser;