From 6ce16797cd1c4fd6bbd0c99ab2edd100bda2f1ce Mon Sep 17 00:00:00 2001 From: Miles Bader Date: Mon, 1 Jul 1996 19:33:30 +0000 Subject: [PATCH] Mon Jul 1 13:32:42 1996 Miles Bader * login/login.c (login): Only Frob OLD->ut_type if getutline_r actually found any entry. * login/pututline_r.c (pututline_r): If not located after any entry don't use UTMP_DATA->ubuf, and seek to the end before adding. Lock the file before stating. --- ChangeLog | 9 +++++++++ login/pututline_r.c | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 4d9124f..5cd0960 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Mon Jul 1 13:32:42 1996 Miles Bader + + * login/login.c (login): Only Frob OLD->ut_type if getutline_r + actually found any entry. + + * login/pututline_r.c (pututline_r): If not located after any + entry don't use UTMP_DATA->ubuf, and seek to the end before adding. + Lock the file before stating. + Fri Jun 28 23:25:35 1996 Miles Bader * login/login.c (login): Initialize DATA so that setutent_r will diff --git a/login/pututline_r.c b/login/pututline_r.c index 4fffbb7..382716c 100644 --- a/login/pututline_r.c +++ b/login/pututline_r.c @@ -60,7 +60,7 @@ pututline_r (const struct utmp *id, struct utmp_data *utmp_data) #if _HAVE_UT_TYPE - 0 /* Seek position to write. */ - if (utmp_data->loc_utmp >= sizeof (utmp) + if (utmp_data->loc_utmp >= sizeof (struct utmp) && utmp_data->ubuf.ut_type != id->ut_type) { /* We must not overwrite the data in UTMP_DATA. */ -- 2.7.4