--- redirect.c	Fri Oct 23 13:15:35 1998
+++ /tmp/redirect.c.sam	Fri Oct 23 13:13:10 1998
@@ -262,6 +262,7 @@
 redirectStart(clientHttpRequest * http, RH * handler, void *data)
 {
     ConnStateData *conn = http->conn;
+    request_t *req = http->request;
     redirectStateData *r = NULL;
     redirector_t *redirector = NULL;
     if (!http)
@@ -277,7 +278,11 @@
     r->orig_url = xstrdup(http->uri);
     r->client_addr = conn->log_addr;
     if (conn->ident.ident == NULL || *conn->ident.ident == '\0') {
-	r->client_ident = dash_str;
+        if (req->user_ident == NULL ) {
+	    r->client_ident = dash_str;
+	} else {
+	    r->client_ident = req->user_ident;
+	}
     } else {
 	r->client_ident = conn->ident.ident;
     }

