Module: check_mk
Branch: master
Commit: 0b4affeb95540d830fbafccd3aa688f46c4f8ae4
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=0b4affeb95540d…
Author: Konstantin Büttner <kb(a)mathias-kettner.de>
Date: Tue Nov 21 15:48:32 2017 +0100
5520 FIX rstcli, rstcli.pdisks: Fix broken parse function
Some unexpected lines in the corresponding agent section could lead to
neither check nor discovery working (ie crashing). This has been fixed
for all known cases.
Change-Id: Ibdcea18161f05dec47f1fc50c348873e11f7ba5b
---
.werks/5520 | 13 +++++++++++++
checks/rstcli | 4 ++++
2 files changed, 17 insertions(+)
diff --git a/.werks/5520 b/.werks/5520
new file mode 100644
index 0000000..f7ac77a
--- /dev/null
+++ b/.werks/5520
@@ -0,0 +1,13 @@
+Title: rstcli, rstcli.pdisks: Fix broken parse function
+Level: 1
+Component: checks
+Class: fix
+Compatible: compat
+Edition: cre
+State: unknown
+Version: 1.5.0i2
+Date: 1511275342
+
+Some unexpected lines in the corresponding agent section could lead to
+neither check nor discovery working (ie crashing). This has been fixed
+for all known cases.
diff --git a/checks/rstcli b/checks/rstcli
index 25694a5..e900720 100644
--- a/checks/rstcli
+++ b/checks/rstcli
@@ -71,6 +71,10 @@ def parse_rstcli_sections(info):
if current_section is not None:
yield current_section
current_section = (":".join(line).strip("-").strip(),
[])
+ elif len(line) < 2:
+ # On some systems, there are lines that only consist of
+ # a contextless 0. Skip those to avoid parsing errors later.
+ continue
else:
if current_section is None:
raise MKGeneralException("error: %s" % "
".join(line))