diff -Naur fnord-1.8.orig/Makefile fnord-1.8.orig-pa/Makefile
--- fnord-1.8.orig/Makefile	Tue Jun  3 21:45:47 2003
+++ fnord-1.8.orig-pa/Makefile	Mon Oct 11 10:48:05 2004
@@ -2,9 +2,9 @@
 CXX=g++
 
 #LIBOWFAT=../libowfat/
-DIET=diet -Os
+DIET=
 
-CFLAGS=-Os -fomit-frame-pointer
+CFLAGS=-Os -fomit-frame-pointer -DCGI -DLOGFILE=\"/var/log/fnord.log\"
 #CFLAGS=-g
 
 all: fnord fnord-cgi fnord-idx
diff -Naur fnord-1.8.orig/httpd.c fnord-1.8.orig-pa/httpd.c
--- fnord-1.8.orig/httpd.c	Tue Jun  3 21:45:47 2003
+++ fnord-1.8.orig-pa/httpd.c	Mon Oct 11 10:47:06 2004
@@ -997,6 +997,7 @@
 
 
 static void get_ucspi_env(void) {
+  char *stunnel = getenv("REMOTE_HOST");
   char* ucspi=getenv("PROTO");
   if (ucspi) {
     char* buf=alloca(str_len(ucspi)+20);
@@ -1010,6 +1011,9 @@
     remote_ident=getenv(buf);
 #endif
   }
+  else if(stunnel) {
+    remote_ip = stunnel;
+  }
 }
 
 #ifdef CGI
@@ -1153,6 +1157,19 @@
 #endif
 }
 
+
+static void openLog()
+{
+	int fd;
+
+	close(2);
+	if((fd = open(LOGFILE,
+	  O_CREAT | O_APPEND | O_WRONLY, 0644)) > 0)
+	{
+		dup2(fd, 2);
+	}
+}
+
 int main(int argc,char *argv[],const char *const *envp) {
   char buf[MAXHEADERLEN];
 #if 0
@@ -1162,6 +1179,7 @@
   int len;
   int in;
 
+  openLog();
   if (argc>1) chdir(argv[1]);
 
 #ifdef CHROOT

