From b65c17608f022ea892f0236e2c294b1545892659 Mon Sep 17 00:00:00 2001 From: Pierre Delagrave Date: Fri, 8 Oct 2021 10:22:38 -0400 Subject: [PATCH] Fixed hanging on stdin in API mode. (#4657) Fixed regression introduced in 1.4.11 Co-authored-by: Miroslav Stampar --- lib/parse/cmdline.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/parse/cmdline.py b/lib/parse/cmdline.py index 39cf89ed8..bd1c37dd1 100644 --- a/lib/parse/cmdline.py +++ b/lib/parse/cmdline.py @@ -1057,10 +1057,12 @@ def cmdLineParser(argv=None): if args.dummy: args.url = args.url or DUMMY_URL - if hasattr(sys.stdin, "fileno") and not os.isatty(sys.stdin.fileno()) and '-' not in sys.argv and "GITHUB_ACTIONS" not in os.environ: - args.stdinPipe = iter(sys.stdin.readline, None) - else: - args.stdinPipe = None + args.stdinPipe = None + if hasattr(sys.stdin, "fileno") and not os.isatty(sys.stdin.fileno()) and '-' not in sys.argv: + if args.api: + logger.info("Ignoring STDIN in API mode") + else: + args.stdinPipe = iter(sys.stdin.readline, None) if not any((args.direct, args.url, args.logFile, args.bulkFile, args.googleDork, args.configFile, args.requestFile, args.updateAll, args.smokeTest, args.vulnTest, args.wizard, args.dependencies, args.purge, args.listTampers, args.hashFile, args.stdinPipe)): errMsg = "missing a mandatory option (-d, -u, -l, -m, -r, -g, -c, --wizard, --shell, --update, --purge, --list-tampers or --dependencies). "