d50ed2eb37
The previous version has a bug where HTTP codes that are not [200, 401, 404], or the word "Zero" is not included in the response body(??), the valid open port is not printed to the user. This patch fixes that and improves outut. This commit improves the resilience of this module by looking at the HTTP response header 'X-Squid-Error', which has static strings from an enum struct documented here: http://www.squid-cache.org/Doc/code/err__type_8h.html If the client receives an error from Squid that is not handled, the error type will now also be printed for the user (eg: ERR_READ_TIMEOUT). Previously, the module would also output (almost) every IP:PORT pair, even when they are closed or forbidden by Squid ACL. This has been moved to be a verbose option, so that non-verbose port-scanning prints a significantly shorter list for human consumption. As (among others) HTTP 3xx redirects were not previously displayed to users, the redirect location is now also printed in the output. The server header is printed for all open ports where available, and stored in the database.