зеркало из https://github.com/Azure/sonic-openssh.git
- (djm) Lastlog was not getting closed after writing login entry
This commit is contained in:
Родитель
61c5150861
Коммит
c1132e7759
|
@ -38,6 +38,7 @@
|
|||
- markus@cvs.openbsd.org 2000/08/17 14:06:34
|
||||
[session.c sshd.8 sshd.c]
|
||||
sshd -u len, similar to telnetd
|
||||
- (djm) Lastlog was not getting closed after writing login entry
|
||||
|
||||
20000816
|
||||
- (djm) Replacement for inet_ntoa for Irix (which breaks on gcc)
|
||||
|
|
20
loginrec.c
20
loginrec.c
|
@ -160,7 +160,7 @@
|
|||
#include "xmalloc.h"
|
||||
#include "loginrec.h"
|
||||
|
||||
RCSID("$Id: loginrec.c,v 1.20 2000/08/15 00:21:17 djm Exp $");
|
||||
RCSID("$Id: loginrec.c,v 1.21 2000/08/18 04:08:38 djm Exp $");
|
||||
|
||||
/**
|
||||
** prototypes for helper functions in this file
|
||||
|
@ -1403,17 +1403,19 @@ lastlog_perform_login(struct logininfo *li)
|
|||
/* create our struct lastlog */
|
||||
lastlog_construct(li, &last);
|
||||
|
||||
if (!lastlog_openseek(li, &fd, O_RDWR|O_CREAT))
|
||||
return(0);
|
||||
|
||||
/* write the entry */
|
||||
if (lastlog_openseek(li, &fd, O_RDWR|O_CREAT)) {
|
||||
if (atomicio(write, fd, &last, sizeof(last)) != sizeof(last)) {
|
||||
log("lastlog_write_filemode: Error writing to %s: %s",
|
||||
LASTLOG_FILE, strerror(errno));
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
} else {
|
||||
if (atomicio(write, fd, &last, sizeof(last)) != sizeof(last)) {
|
||||
close(fd);
|
||||
log("lastlog_write_filemode: Error writing to %s: %s",
|
||||
LASTLOG_FILE, strerror(errno));
|
||||
return 0;
|
||||
}
|
||||
|
||||
close(fd);
|
||||
return 1;
|
||||
}
|
||||
|
||||
int
|
||||
|
|
Загрузка…
Ссылка в новой задаче