diff options
Diffstat (limited to 'loginrec.c')
-rw-r--r-- | loginrec.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/loginrec.c b/loginrec.c index d7105ed7b..ea3ec4f2b 100644 --- a/loginrec.c +++ b/loginrec.c | |||
@@ -163,7 +163,7 @@ | |||
163 | #include "log.h" | 163 | #include "log.h" |
164 | #include "atomicio.h" | 164 | #include "atomicio.h" |
165 | 165 | ||
166 | RCSID("$Id: loginrec.c,v 1.38 2001/10/30 02:50:40 tim Exp $"); | 166 | RCSID("$Id: loginrec.c,v 1.39 2002/02/25 01:56:47 tim Exp $"); |
167 | 167 | ||
168 | #ifdef HAVE_UTIL_H | 168 | #ifdef HAVE_UTIL_H |
169 | # include <util.h> | 169 | # include <util.h> |
@@ -701,6 +701,8 @@ construct_utmpx(struct logininfo *li, struct utmpx *utx) | |||
701 | line_stripname(utx->ut_line, li->line, sizeof(utx->ut_line)); | 701 | line_stripname(utx->ut_line, li->line, sizeof(utx->ut_line)); |
702 | set_utmpx_time(li, utx); | 702 | set_utmpx_time(li, utx); |
703 | utx->ut_pid = li->pid; | 703 | utx->ut_pid = li->pid; |
704 | /* strncpy(): Don't necessarily want null termination */ | ||
705 | strncpy(utx->ut_name, li->username, MIN_SIZEOF(utx->ut_name, li->username)); | ||
704 | 706 | ||
705 | if (li->type == LTYPE_LOGOUT) | 707 | if (li->type == LTYPE_LOGOUT) |
706 | return; | 708 | return; |
@@ -710,8 +712,6 @@ construct_utmpx(struct logininfo *li, struct utmpx *utx) | |||
710 | * for logouts. | 712 | * for logouts. |
711 | */ | 713 | */ |
712 | 714 | ||
713 | /* strncpy(): Don't necessarily want null termination */ | ||
714 | strncpy(utx->ut_name, li->username, MIN_SIZEOF(utx->ut_name, li->username)); | ||
715 | # ifdef HAVE_HOST_IN_UTMPX | 715 | # ifdef HAVE_HOST_IN_UTMPX |
716 | strncpy(utx->ut_host, li->hostname, MIN_SIZEOF(utx->ut_host, li->hostname)); | 716 | strncpy(utx->ut_host, li->hostname, MIN_SIZEOF(utx->ut_host, li->hostname)); |
717 | # endif | 717 | # endif |
@@ -942,9 +942,7 @@ utmpx_perform_logout(struct logininfo *li) | |||
942 | { | 942 | { |
943 | struct utmpx utx; | 943 | struct utmpx utx; |
944 | 944 | ||
945 | memset(&utx, '\0', sizeof(utx)); | 945 | construct_utmpx(li, &utx); |
946 | set_utmpx_time(li, &utx); | ||
947 | line_stripname(utx.ut_line, li->line, sizeof(utx.ut_line)); | ||
948 | # ifdef HAVE_ID_IN_UTMPX | 946 | # ifdef HAVE_ID_IN_UTMPX |
949 | line_abbrevname(utx.ut_id, li->line, sizeof(utx.ut_id)); | 947 | line_abbrevname(utx.ut_id, li->line, sizeof(utx.ut_id)); |
950 | # endif | 948 | # endif |