--- log-server.c.orig Wed Jul 5 08:26:48 2000 +++ log-server.c Sat Jun 29 14:25:37 2002 @@ -160,6 +160,25 @@ 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); +} +#endif /* ENABLE_LOG_AUTH */ + /* Converts portable syslog severity to machine-specific syslog severity. */ static int syslog_severity(int severity) @@ -344,6 +363,9 @@ { char buf[1024]; va_list args; +#ifdef ENABLE_LOG_AUTH + extern char *unauthenticated_user; +#endif /* ENABLE_LOG_AUTH */ if (log_quiet) exit(1); @@ -354,6 +376,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();