diff --git a/ChangeLog b/ChangeLog index 4d9124f88e..5cd0960731 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 4fffbb7b38..382716ce80 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. */