REORG: http_ana: split conditions for monitor-uri in wait for request

Split in two the condition which check if the monitor-uri is set for the
current request. This will allow to easily use the http_uri_parser type
for http_get_path.
diff --git a/src/http_ana.c b/src/http_ana.c
index 63ee760..da436e7 100644
--- a/src/http_ana.c
+++ b/src/http_ana.c
@@ -203,40 +203,44 @@
 	 * used. It is a workaround to let HTTP/2 health-checks work as
 	 * expected.
 	 */
-	if (unlikely((sess->fe->monitor_uri_len != 0) &&
-		     ((*sess->fe->monitor_uri == '/' && isteq(http_get_path(htx_sl_req_uri(sl)),
-							      ist2(sess->fe->monitor_uri, sess->fe->monitor_uri_len))) ||
-		      isteq(htx_sl_req_uri(sl), ist2(sess->fe->monitor_uri, sess->fe->monitor_uri_len))))) {
-		/*
-		 * We have found the monitor URI
-		 */
-		struct acl_cond *cond;
+	if (unlikely(sess->fe->monitor_uri_len != 0)) {
+		const struct ist monitor_uri = ist2(sess->fe->monitor_uri,
+		                                    sess->fe->monitor_uri_len);
 
-		s->flags |= SF_MONITOR;
-		_HA_ATOMIC_INC(&sess->fe->fe_counters.intercepted_req);
+		if ((istptr(monitor_uri)[0] == '/' &&
+		     isteq(http_get_path(htx_sl_req_uri(sl)), monitor_uri)) ||
+		    isteq(htx_sl_req_uri(sl), monitor_uri)) {
+			/*
+			 * We have found the monitor URI
+			 */
+			struct acl_cond *cond;
 
-		/* Check if we want to fail this monitor request or not */
-		list_for_each_entry(cond, &sess->fe->mon_fail_cond, list) {
-			int ret = acl_exec_cond(cond, sess->fe, sess, s, SMP_OPT_DIR_REQ|SMP_OPT_FINAL);
+			s->flags |= SF_MONITOR;
+			_HA_ATOMIC_INC(&sess->fe->fe_counters.intercepted_req);
 
-			ret = acl_pass(ret);
-			if (cond->pol == ACL_COND_UNLESS)
-				ret = !ret;
+			/* Check if we want to fail this monitor request or not */
+			list_for_each_entry(cond, &sess->fe->mon_fail_cond, list) {
+				int ret = acl_exec_cond(cond, sess->fe, sess, s, SMP_OPT_DIR_REQ|SMP_OPT_FINAL);
 
-			if (ret) {
-				/* we fail this request, let's return 503 service unavail */
-				txn->status = 503;
-				if (!(s->flags & SF_ERR_MASK))
-					s->flags |= SF_ERR_LOCAL; /* we don't want a real error here */
-				goto return_prx_cond;
+				ret = acl_pass(ret);
+				if (cond->pol == ACL_COND_UNLESS)
+					ret = !ret;
+
+				if (ret) {
+					/* we fail this request, let's return 503 service unavail */
+					txn->status = 503;
+					if (!(s->flags & SF_ERR_MASK))
+						s->flags |= SF_ERR_LOCAL; /* we don't want a real error here */
+					goto return_prx_cond;
+				}
 			}
-		}
 
-		/* nothing to fail, let's reply normally */
-		txn->status = 200;
-		if (!(s->flags & SF_ERR_MASK))
-			s->flags |= SF_ERR_LOCAL; /* we don't want a real error here */
-		goto return_prx_cond;
+			/* nothing to fail, let's reply normally */
+			txn->status = 200;
+			if (!(s->flags & SF_ERR_MASK))
+				s->flags |= SF_ERR_LOCAL; /* we don't want a real error here */
+			goto return_prx_cond;
+		}
 	}
 
 	/*