From 58ea98cc817d1d9c34b4895a8c828df6764e68a7 Mon Sep 17 00:00:00 2001 From: Ton Voon Date: Thu, 19 Oct 2006 18:59:58 +0000 Subject: Redirection error if other headers beginning with L (Aravind Gottipati - 1562572) git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1502 f882894a-f735-0410-b71e-b25c423dba1c diff --git a/THANKS.in b/THANKS.in index 8bf6507..4ded0ee 100644 --- a/THANKS.in +++ b/THANKS.in @@ -193,3 +193,4 @@ Mike Emigh Christian Mies Andreas Behal O'Shaughnessy Evans +Aravind Gottipati diff --git a/plugins/check_http.c b/plugins/check_http.c index 6810f5c..93a68ef 100644 --- a/plugins/check_http.c +++ b/plugins/check_http.c @@ -1094,9 +1094,8 @@ redir (char *pos, char *status_line) die (STATE_UNKNOWN, _("Could not allocate url\n")); while (pos) { - - if (sscanf (pos, "%[Ll]%*[Oo]%*[Cc]%*[Aa]%*[Tt]%*[Ii]%*[Oo]%*[Nn]:%n", xx, &i) < 1) { - + sscanf (pos, "%[Ll]%*[Oo]%*[Cc]%*[Aa]%*[Tt]%*[Ii]%*[Oo]%*[Nn]:%n", xx, &i); + if (i == 0) { pos += (size_t) strcspn (pos, "\r\n"); pos += (size_t) strspn (pos, "\r\n"); if (strlen(pos) == 0) diff --git a/plugins/t/check_http.t b/plugins/t/check_http.t index 4e3c06c..21ac0f7 100644 --- a/plugins/t/check_http.t +++ b/plugins/t/check_http.t @@ -9,7 +9,7 @@ use strict; use Test::More; use NPTest; -plan tests => 21; +plan tests => 22; my $successOutput = '/OK.*HTTP.*second/'; @@ -95,3 +95,7 @@ like ( $res->output, "/pattern found/", "Error message says 'pattern found'"); $res = NPTest->testCmd( "./check_http -H altinity.com -r 'nAGiOs' --invert-regex" ); cmp_ok( $res->return_code, "==", 0, "And also when not found"); + +$res = NPTest->testCmd( "./check_http -H www.worldfirefoxday.com -f follow" ); +is( $res->return_code, 0, "Redirection based on location is okay"); + -- cgit v0.10-9-g596f