diff -du n/access_log.c ./access_log.c
--- n/access_log.c	2003-01-31 11:47:37.000000000 -0500
+++ ./access_log.c	2003-01-31 12:08:38.000000000 -0500
@@ -265,13 +265,33 @@
 {
     const char *client = NULL;
     char *user1 = NULL, *user2 = NULL;
+    request_t * request = al->request;
+    const HttpHeader *req_hdr = &request->header;
     if (Config.onoff.log_fqdn)
 	client = fqdncache_gethostbyaddr(al->cache.caddr, 0);
     if (client == NULL)
 	client = inet_ntoa(al->cache.caddr);
     user1 = accessLogFormatName(al->cache.authuser);
     user2 = accessLogFormatName(al->cache.rfc931);
-    logfilePrintf(logfile, "%s %s %s [%s] \"%s %s HTTP/%d.%d\" %d %ld %s:%s",
+#ifdef REIF_LOGS
+    logfilePrintf(logfile, "%s %s %s [%s] \"%s %s HTTP/%d.%d\" %d %ld \"%s\" \"%s\"",
+	client,
+	user2 ? user2 : dash_str,
+	user1 ? user1 : dash_str,
+	mkhttpdlogtime(&squid_curtime),
+	al->private.method_str,
+	al->url,
+	al->http.version.major, al->http.version.minor,
+	al->http.code,
+	(long int) al->cache.size,
+	httpHeaderHas( req_hdr, HDR_REFERER ) ?
+	  httpHeaderGetStr( req_hdr, HDR_REFERER ) :
+	  dash_str,	// Referer if we have it, else dash_str.
+	httpHeaderHas( req_hdr, HDR_USER_AGENT ) ?
+	  httpHeaderGetStr( req_hdr, HDR_USER_AGENT ) :
+	  dash_str );	// User-Agent if we have it, else dash_str.
+#else
+   logfilePrintf(logfile, "%s %s %s [%s] \"%s %s HTTP/%d.%d\" %d %ld %s:%s",
 	client,
 	user2 ? user2 : dash_str,
 	user1 ? user1 : dash_str,
@@ -283,6 +303,7 @@
 	(long int) al->cache.size,
 	log_tags[al->cache.code],
 	hier_strings[al->hier.code]);
+#endif
     safe_free(user1);
     safe_free(user2);
 }
diff -du n/client_side.c ./client_side.c
--- n/client_side.c	2003-01-31 11:47:37.000000000 -0500
+++ ./client_side.c	2003-01-31 12:09:31.000000000 -0500
@@ -808,6 +808,9 @@
 	    http->al.http.version = request->http_ver;
 	    http->al.headers.request = xstrdup(mb.buf);
 	    http->al.hier = request->hier;
+	    #ifdef REIF_LOGS
+		http->al.request = request;
+	    #endif
 	    if (request->auth_user_request) {
 		http->al.cache.authuser = xstrdup(authenticateUserRequestUsername(request->auth_user_request));
 		authenticateAuthUserRequestUnlock(request->auth_user_request);
diff -du n/defines.h ./defines.h
--- n/defines.h	2003-01-31 11:47:37.000000000 -0500
+++ ./defines.h	2003-01-31 11:47:41.000000000 -0500
@@ -31,6 +31,8 @@
  *
  */
 
+#define REIF_LOGS 
+
 #ifndef SQUID_DEFINES_H
 #define SQUID_DEFINES_H
 
diff -du n/structs.h ./structs.h
--- n/structs.h	2003-01-31 11:47:37.000000000 -0500
+++ ./structs.h	2003-01-31 11:51:09.000000000 -0500
@@ -1039,6 +1039,9 @@
     struct {
 	const char *method_str;
     } private;
+    #ifdef REIF_LOGS
+	request_t * request;
+    #endif
     HierarchyLogEntry hier;
 };
 
