From b9de69fe440bbb144022658d439a4f34735ab338 Mon Sep 17 00:00:00 2001 From: kulikov-a <36099472+kulikov-a@users.noreply.github.com> Date: Fri, 24 Sep 2021 22:51:56 +0300 Subject: [PATCH] configd_ctl.py: catch broken pipe on event handler (#5235) --- src/opnsense/service/configd_ctl.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/opnsense/service/configd_ctl.py b/src/opnsense/service/configd_ctl.py index 8c9aafcb0..44ffa0ef7 100755 --- a/src/opnsense/service/configd_ctl.py +++ b/src/opnsense/service/configd_ctl.py @@ -125,7 +125,11 @@ if args.e: rlist, _, _ = select([sys.stdin], [], [], args.t) if rlist: last_message_stamp = time.time() - stashed_lines.append(sys.stdin.readline()) + r_line = sys.stdin.readline() + if len(r_line) == 0: + #EOFError. pipe broken? + sys.exit(-1) + stashed_lines.append(r_line) if len(stashed_lines) >= 1 and (args.t is None or time.time() - last_message_stamp > args.t): # emit event trigger(s) to syslog