diff options
author | Damien Miller <djm@mindrot.org> | 2000-08-15 10:21:17 +1000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2000-08-15 10:21:17 +1000 |
commit | e477ef65294501de06096cfecb6cfcc923f634f5 (patch) | |
tree | 1d569c95095d2bac58a33aacc105b3c93dc42612 /loginrec.c | |
parent | c83aa8378447861b1bc0a030fdb32f78783dc979 (diff) |
- (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.c | 17 |
1 files changed, 10 insertions, 7 deletions
@@ -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; } |