summaryrefslogtreecommitdiff
path: root/loginrec.c
diff options
context:
space:
mode:
authorTim Rice <tim@multitalents.net>2002-02-24 17:56:46 -0800
committerTim Rice <tim@multitalents.net>2002-02-24 17:56:46 -0800
commite06ae4a4bcdb637911a1be6657e2dfa592fd49c8 (patch)
tree9fd84793e5f04aa2734d98855d216a6bc10f4c8c /loginrec.c
parent839ac4f8aaf044e87539d65969163e11f4114461 (diff)
[loginrec.c session.c sshlogin.c sshlogin.h] Bug 84
patch by wknox@mitre.org (William Knox). [sshlogin.h] declare record_utmp_only for session.c
Diffstat (limited to 'loginrec.c')
-rw-r--r--loginrec.c10
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
166RCSID("$Id: loginrec.c,v 1.38 2001/10/30 02:50:40 tim Exp $"); 166RCSID("$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