--- log-server.c.orig	Thu Jan 17 05:35:33 2002
+++ log-server.c	Sat Jun 29 14:50:00 2002
@@ -163,6 +163,27 @@
   closelog();
 }
 
+#ifdef ENABLE_LOG_AUTH
+void log_auth(const char *fmt, ...)
+{
+  char buf[1024];
+  va_list args;
+  extern int log_auth_flag;
+  if (!log_auth_flag)
+    return;
+  if (log_quiet)
+    return;
+  va_start(args, fmt);
+  vsprintf(buf, fmt, args);
+  va_end(args);
+  if (log_on_stderr)
+    fprintf(stderr, "log: %s\n", buf);
+  syslog(LOG_INFO|LOG_AUTH, "%.500s", buf);
+}
+
+extern char *unauthenticated_user;
+#endif /* ENABLE_LOG_AUTH */
+
 /* Converts portable syslog severity to machine-specific syslog severity. */
 
 static int syslog_severity(int severity)
@@ -336,6 +357,11 @@
     fprintf(stderr, "fatal: %s\n", buf);
   openlog(prg_name, LOG_PID, log_facility);
   syslog(LOG_ERR, "fatal: %.500s", buf);
+#ifdef ENABLE_LOG_AUTH
+  if (unauthenticated_user)
+    log_auth("LOGIN FAILED %.100s from %.200s",
+	     unauthenticated_user, get_canonical_hostname());
+#endif /* ENABLE_LOG_AUTH */
   closelog();
 
   do_fatal_cleanups();
@@ -357,6 +383,11 @@
     fprintf(stderr, "fatal: %s\n", buf);
   openlog(prg_name, LOG_PID, log_facility);
   syslog(syslog_severity(severity), "fatal: %.500s", buf);
+#ifdef ENABLE_LOG_AUTH
+  if (unauthenticated_user)
+    log_auth("LOGIN FAILED %.100s from %.200s",
+	     unauthenticated_user, get_canonical_hostname());
+#endif /* ENABLE_LOG_AUTH */
   closelog();
 
   do_fatal_cleanups();
