summaryrefslogtreecommitdiff
path: root/loginrec.c
diff options
context:
space:
mode:
authordjm <djm>2000-08-15 00:21:17 +0000
committerdjm <djm>2000-08-15 00:21:17 +0000
commit6ab247f592b5a5124d39c97516244d120085e73b (patch)
tree6432bf2c111d42d60a7bcaadad2be88355c0b712 /loginrec.c
parent9afc7016be9d91f6c2f10fb08bde40f96c942a0b (diff)
downloadopenssh-6ab247f592b5a5124d39c97516244d120085e73b.tar.gz
- (djm) Don't seek in directory based lastlogs
- (djm) Fix --with-ipaddr-display configure option test. Patch from Jarno Huuskonen <jhuuskon@messi.uku.fi>
Diffstat (limited to 'loginrec.c')
-rw-r--r--loginrec.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/loginrec.c b/loginrec.c
index 798e966f..6b87ba32 100644
--- a/loginrec.c
+++ b/loginrec.c
@@ -160,7 +160,7 @@
#include "xmalloc.h"
#include "loginrec.h"
-RCSID("$Id: loginrec.c,v 1.19 2000/08/15 00:01:22 djm Exp $");
+RCSID("$Id: loginrec.c,v 1.20 2000/08/15 00:21:17 djm Exp $");
/**
** prototypes for helper functions in this file
@@ -1380,14 +1380,17 @@ lastlog_openseek(struct logininfo *li, int *fd, int filemode)
return 0;
}
- /* find this uid's offset in the lastlog file */
- offset = (off_t) ( (long)li->uid * sizeof(struct lastlog));
+ if (type == LL_FILE) {
+ /* find this uid's offset in the lastlog file */
+ offset = (off_t) ( (long)li->uid * sizeof(struct lastlog));
- if ( lseek(*fd, offset, SEEK_SET) != offset ) {
- log("lastlog_openseek: %s->lseek(): %s",
- lastlog_file, strerror(errno));
- return 0;
+ if ( lseek(*fd, offset, SEEK_SET) != offset ) {
+ log("lastlog_openseek: %s->lseek(): %s",
+ lastlog_file, strerror(errno));
+ return 0;
+ }
}
+
return 1;
}