Răsfoiți Sursa

Resolves issue #283.

Jon Stockton 8 ani în urmă
părinte
comite
6182f9e37d
1 a modificat fișierele cu 7 adăugiri și 4 ștergeri
  1. 7 4
      plugins/check_http.c

+ 7 - 4
plugins/check_http.c

@@ -1205,12 +1205,15 @@ check_http (void)
 
 
   /* find header info and null-terminate it */
   /* find header info and null-terminate it */
   header = page;
   header = page;
-	for (;;) {
-		if (!strncmp(page, "\r\n\r\n", 4) || !strncmp(page, "\n\n", 2))
-		 break;
-		while (*page == '\r' || *page == '\n') { ++page; }
+  for (;;) {
+    if (!strncmp(page, "\r\n\r\n", 4) || !strncmp(page, "\n\n", 2)) break;
+    while (*page == '\r' || *page == '\n') { ++page; }
+
     page += (size_t) strcspn (page, "\r\n");
     page += (size_t) strcspn (page, "\r\n");
     pos = page;
     pos = page;
+
+    /* Prevent Issue #283 - check_http: -N parameter causes false timeouts (version 2.2.1) */
+    if(*page == '\0') break;
   }
   }
   page += (size_t) strspn (page, "\r\n");
   page += (size_t) strspn (page, "\r\n");
   header[pos - header] = 0;
   header[pos - header] = 0;