My notion for CGI in HAVP is as follows.
Besides the URL/URI of the object which HAVP couldn't/wouldn't deliver, various other information would be important to a CGI script. This additional info could be passed in environment variables, as is done with standard web-server CGI.
The main piece of info (the URL/URI) could be the argument to the CGI program, and could also be passed in an environment variable. Additional info would be passed in environment variables only. Additional info might include the exact virus report (in the case of a virus), plus all of the parameters from the config file (although this might be optional by means of another config file parameter, for those who prefer not to reveal this to their users).
Of course, the HAVP developers can probably improve of this based on their experience.
--------------------------------------------------------------------
The standard CGI environment variables are shown below. Some (like HTTPS) are totally irrelevant to HAVP and others are of minor importance, but some, such as REQUEST_URI -- the URL/URI of the object requested which wasn't delivered -- and likely REQUEST_METHOD, would be very important.
EnvVar Description
DOCUMENT_ROOT The root directory of your server
HTTP_COOKIE The visitor's cookie, if one is set
HTTP_HOST The hostname of your server
HTTP_REFERER The URL of the page that called your script
HTTP_USER_AGENT The browser type of the visitor
HTTPS "on" if the script is being called through a secure server
PATH The system path your server is running under
QUERY_STRING The query string (see GET, below)
REMOTE_ADDR The IP address of the visitor
REMOTE_HOST The hostname of the visitor (if your server has reverse-name-lookups on; otherwise this is the IP address again)
REMOTE_PORT The port the visitor is connected to on the web server
REMOTE_USER The visitor's username (for .htaccess-protected pages)
REQUEST_METHOD GET or POST
REQUEST_URI The interpreted pathname of the requested document or CGI (relative to the document root)
SCRIPT_FILENAME The full pathname of the current CGI
SCRIPT_NAME The interpreted pathname of the current CGI (relative to the document root)
SERVER_ADMIN The email address for your server's webmaster
SERVER_NAME Your server's fully qualified domain name (e.g.
www.cgi101.com)
SERVER_PORT The port number your server is listening on
SERVER_SOFTWARE The server software you're using (such as Apache 1.3)