utmp: call prepare_utmp() even if utent is NULL
update_utmp() should also return 0 when success. Fixes:1f368e1c18("utmp: update `update_utmp()") Resolves: https://github.com/shadow-maint/shadow/issues/805 Signed-off-by: Iker Pedrosa <ipedrosa@redhat.com> Cherry-picked-from:5178f8c5afLink: <https://github.com/shadow-maint/shadow/issues/805> Link: <https://github.com/shadow-maint/shadow/pull/808> Reviewed-by: Michael Vetter <jubalh@iodoru.org> Signed-off-by: Alejandro Colomar <alx@kernel.org>
This commit is contained in:
committed by
Alejandro Colomar
parent
b5c99ec30e
commit
de50b39475
11
lib/utmp.c
11
lib/utmp.c
@@ -368,17 +368,16 @@ int update_utmp (const char *user,
|
||||
struct utmp *utent, *ut;
|
||||
|
||||
utent = get_current_utmp ();
|
||||
if (utent == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
ut = prepare_utmp (user, tty, host, utent);
|
||||
|
||||
(void) setutmp (ut); /* make entry in the utmp & wtmp files */
|
||||
free (utent);
|
||||
|
||||
if (utent != NULL) {
|
||||
free (utent);
|
||||
}
|
||||
free (ut);
|
||||
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
void record_failure(const char *failent_user,
|
||||
|
||||
Reference in New Issue
Block a user