diff options
author | Holger Weiss <hweiss@users.sourceforge.net> | 2007-10-02 13:51:41 +0000 |
---|---|---|
committer | Holger Weiss <hweiss@users.sourceforge.net> | 2007-10-02 13:51:41 +0000 |
commit | 604da4939252620a6c35f5f3f5703eb9e42e65bc (patch) | |
tree | d9d489ea9b4603f145c356039f5f455a1113e149 | |
parent | 488e20226d23ead29848196272d090ae921c1a59 (diff) | |
download | monitoring-plugins-604da4939252620a6c35f5f3f5703eb9e42e65bc.tar.gz |
Fix regression in 1.4.10 where following redirects to relative URLs on
virtual hosts failed if both "-H" and "-I" were specified (noted by
Rodrigo A. G. Schichaschwili on nagiosplug-devel@)
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1804 f882894a-f735-0410-b71e-b25c423dba1c
-rw-r--r-- | NEWS | 4 | ||||
-rw-r--r-- | plugins/check_http.c | 8 |
2 files changed, 8 insertions, 4 deletions
@@ -1,5 +1,9 @@ This file documents the major additions and syntax changes between releases. +1.4.11 or 1.5 ?? + Fix check_http regression in 1.4.10 where following redirects to + relative URLs on virtual hosts failed if both "-H" and "-I" were used + 1.4.10 28th September 2007 Fix check_http buffer overflow vulnerability when following HTTP redirects check_http now explicitly asks HTTP/1.1 servers to close the connection diff --git a/plugins/check_http.c b/plugins/check_http.c index b371cd64..24819359 100644 --- a/plugins/check_http.c +++ b/plugins/check_http.c @@ -151,7 +151,7 @@ main (int argc, char **argv) if (display_html == TRUE) printf ("<A HREF=\"%s://%s:%d%s\" target=\"_blank\">", - use_ssl ? "https" : "http", server_address, + use_ssl ? "https" : "http", host_name ? host_name : server_address, server_port, server_url); /* initialize alarm signal handling, set socket timeout, start timer */ @@ -1155,7 +1155,7 @@ redir (char *pos, char *status_line) } i = server_port; strcpy (type, server_type); - strcpy (addr, server_address); + strcpy (addr, host_name ? host_name : server_address); } else { @@ -1204,8 +1204,8 @@ redir (char *pos, char *status_line) display_html ? "</A>" : ""); if (verbose) - printf (_("Redirection to %s://%s:%d%s\n"), server_type, server_address, - server_port, server_url); + printf (_("Redirection to %s://%s:%d%s\n"), server_type, + host_name ? host_name : server_address, server_port, server_url); check_http (); } |