I've GOT to get in the habit of reading all my mail before responding to
it. I was all set to post a patch for this, when I saw you had beat me
to it. Your patch is a little cleaner than mine, but I saw a couple
problems with it. First of all, if REMOTE_HOST & REMOTE_ADDR are both
undefined, host will remain NULL. Secondly, if ref is NULL, you can't
assign to *ref. Here's my amended patch, applied to 3.1.0b4:
--- htsearch/Display.cc.envbug Tue Dec 22 20:15:39 1998
+++ htsearch/Display.cc Fri Jan 22 10:41:57 1999
@@ -1017,21 +1017,30 @@
void
Display::logSearch(int page, List *matches)
{
- // Currently unused char *env_host;
// Currently unused time_t t;
int nMatches = 0;
int level = LOG_LEVEL;
int facility = LOG_FACILITY;
+ char *host = getenv("REMOTE_HOST");
+ char *ref = getenv("HTTP_REFERER");
+
+ if (host == NULL)
+ host = getenv("REMOTE_ADDR");
+ if (host == NULL)
+ host = "-";
+
+ if (ref == NULL)
+ ref = "-";
if (matches)
nMatches = matches->Count();
openlog("htsearch", LOG_PID, facility);
syslog(level, "%s [%s] (%s) [%s] [%s] (%d/%s) - %d -- %s\n",
- getenv("REMOTE_HOST"),
+ host,
input->exists("config") ? input->get("config") : "default",
config["match_method"], input->get("words"), logicalWords.get(),
nMatches, config["matches_per_page"],
- page, getenv("HTTP_REFERER")
+ page, ref
);
}
According to Geoff Hutchison:
>
> At 7:37 PM -0400 1/21/99, Doug wrote:
> >patch I could test it to see if it helps, but I won't be able to work on
> >it myself (which isn't saying much given my lack of C++ ability :).
>
> This is from the latest CVS tree, so it will probably require some fuzz to
> apply correctly:
>
> diff -u -r1.35 -r1.39
> --- htdig3/htsearch/Display.cc 1999/01/20 19:18:54 1.35
> +++ htdig3/htsearch/Display.cc 1999/01/22 04:40:57 1.39
> @@ -1263,21 +1278,28 @@
> void
> Display::logSearch(int page, List *matches)
> {
> - // Currently unused char *env_host;
> // Currently unused time_t t;
> int nMatches = 0;
> int level = LOG_LEVEL;
> int facility = LOG_FACILITY;
> + char *host = getenv("REMOTE_HOST");
> + char *ref = getenv("HTTP_REFERER");
> +
> + if (host == NULL)
> + host = getenv("REMOTE_ADDR");
> +
> + if (ref == NULL)
> + *ref = '-';
>
> if (matches)
> nMatches = matches->Count();
>
> openlog("htsearch", LOG_PID, facility);
> syslog(level, "%s [%s] (%s) [%s] [%s] (%d/%s) - %d -- %s\n",
> - getenv("REMOTE_HOST"),
> + host,
> input->exists("config") ? input->get("config") : "default",
> config["match_method"], input->get("words"), logicalWords.get(),
> nMatches, config["matches_per_page"],
> - page, getenv("HTTP_REFERER")
> + page, ref
> );
> }
>
> >announce a "Hey, take a look at this!" type post, and if not can someone
> >point me to one? :) We'd also like to be included in the list of sites
> >that use htdig if that's appropriate.... the boss is *really* happy with
>
> Sure you can announce that. I don't think anyone will mind. As for the
> list, I suggest filling out the handy form on
> http://www.htdig.org/uses.html ;-)
>
>
> -Geoff Hutchison
> Williams Students Online
> http://wso.williams.edu/
--
Gilles R. Detillieux E-mail: <[EMAIL PROTECTED]>
Spinal Cord Research Centre WWW: http://www.scrc.umanitoba.ca/~grdetil
Dept. Physiology, U. of Manitoba Phone: (204)789-3766
Winnipeg, MB R3E 3J7 (Canada) Fax: (204)789-3930
----------------------------------------------------------------------
To unsubscribe from the htdig mailing list, send a message to
[EMAIL PROTECTED] containing the single word "unsubscribe" in
the body of the message.