Log UID in nologin
Sometimes getlogin() may fail, e.g., in a chroot() environment or due to NSS misconfiguration. Loggin UID allows for investigation and troubleshooting in such situation.
This commit is contained in:
parent
67ec1a5266
commit
4be18d3299
@ -24,7 +24,6 @@
|
|||||||
* SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <config.h>
|
|
||||||
|
|
||||||
#ident "$Id$"
|
#ident "$Id$"
|
||||||
|
|
||||||
@ -36,6 +35,7 @@
|
|||||||
int main (void)
|
int main (void)
|
||||||
{
|
{
|
||||||
const char *user, *tty;
|
const char *user, *tty;
|
||||||
|
uid_t uid;
|
||||||
|
|
||||||
tty = ttyname (0);
|
tty = ttyname (0);
|
||||||
if (NULL == tty) {
|
if (NULL == tty) {
|
||||||
@ -45,8 +45,9 @@ int main (void)
|
|||||||
if (NULL == user) {
|
if (NULL == user) {
|
||||||
user = "UNKNOWN";
|
user = "UNKNOWN";
|
||||||
}
|
}
|
||||||
|
uid = getuid (); /* getuid() is always successful */
|
||||||
openlog ("nologin", LOG_CONS, LOG_AUTH);
|
openlog ("nologin", LOG_CONS, LOG_AUTH);
|
||||||
syslog (LOG_CRIT, "Attempted login by %s on %s", user, tty);
|
syslog (LOG_CRIT, "Attempted login by %s (UID: %d) on %s", user, uid, tty);
|
||||||
closelog ();
|
closelog ();
|
||||||
|
|
||||||
printf ("%s", "This account is currently not available.\n");
|
printf ("%s", "This account is currently not available.\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user