MINOR: checks: support a neutral check result

Agent will have the ability to return a weight without indicating an
up/down status. Currently this is not possible, so let's add a 5th
result CHK_RES_NEUTRAL for this purpose. It has been mapped to the
unused HCHK_STATUS_CHECKED which already serves as a neutral delimitor
between initiated checks and those returning a result.
diff --git a/include/types/checks.h b/include/types/checks.h
index 83ea2b5..d5038eb 100644
--- a/include/types/checks.h
+++ b/include/types/checks.h
@@ -29,6 +29,7 @@
  */
 enum chk_result {
 	CHK_RES_UNKNOWN = 0,            /* initialized to this by default */
+	CHK_RES_NEUTRAL,                /* valid check but no status information */
 	CHK_RES_FAILED,                 /* check failed */
 	CHK_RES_PASSED,                 /* check succeeded and server is fully up again */
 	CHK_RES_CONDPASS,               /* check reports the server doesn't want new sessions */
diff --git a/src/checks.c b/src/checks.c
index d5216dd..fc7e776 100644
--- a/src/checks.c
+++ b/src/checks.c
@@ -66,6 +66,8 @@
 	[HCHK_STATUS_INI]	= { CHK_RES_UNKNOWN,  "INI",     "Initializing" },
 	[HCHK_STATUS_START]	= { /* SPECIAL STATUS*/ },
 
+	/* Below we have finished checks */
+	[HCHK_STATUS_CHECKED]	= { CHK_RES_NEUTRAL,  "CHECKED", "No status change" },
 	[HCHK_STATUS_HANA]	= { CHK_RES_FAILED,   "HANA",    "Health analyze" },
 
 	[HCHK_STATUS_SOCKERR]	= { CHK_RES_FAILED,   "SOCKERR", "Socket error" },
@@ -232,6 +234,10 @@
 		tv_zero(&check->start);
 	}
 
+	/* no change is expected if no state change occurred */
+	if (check->result == CHK_RES_NEUTRAL)
+		return;
+
 	report = 0;
 
 	switch (check->result) {