From dbbd748c5f69a2fb4d5d305df2ce15b9e69a46ef Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Thu, 15 Aug 2019 16:09:20 +0200 Subject: [PATCH] login: Use struct flock64 in utmp [BZ #24880] Commit 06ab719d30b01da401150068054d3b8ea93dd12f ("Fix Linux fcntl OFD locks for non-LFS architectures (BZ#20251)") introduced the use of fcntl64 into the utmp implementation. However, the lock file structure was not updated to struct flock64 at that point. (cherry picked from commit 0d5b2917530ccaf8ad312dfbb7bce69d569c23ad) --- ChangeLog | 6 ++++++ NEWS | 1 + login/utmp_file.c | 4 ++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4a89e562495..85d3e195a45 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2019-08-15 Florian Weimer + + [BZ #24880] + * login/utmp_file.c (file_locking_failed): Use struct flock64. + (file_locking_unlock): Likewise. + 2019-08-15 Florian Weimer [BZ #24879] diff --git a/NEWS b/NEWS index 96458cf0b94..8952a8a77d5 100644 --- a/NEWS +++ b/NEWS @@ -22,6 +22,7 @@ The following bugs are resolved with this release: 7408-2005 [24867] malloc: Remove unwanted leading whitespace in malloc_info [24879] login: Disarm timer after utmp lock acquisition + [24880] login: Use struct flock64 in utmp [24986] alpha: new getegid, geteuid and getppid syscalls used unconditionally [25189] Don't use a custom wrapper macro around __has_include diff --git a/login/utmp_file.c b/login/utmp_file.c index f3c528384f0..94753e04041 100644 --- a/login/utmp_file.c +++ b/login/utmp_file.c @@ -76,7 +76,7 @@ try_file_lock (int fd, int type) alarm (TIMEOUT); /* Try to get the lock. */ - struct flock fl = + struct flock64 fl = { .l_type = type, fl.l_whence = SEEK_SET, @@ -103,7 +103,7 @@ try_file_lock (int fd, int type) static void file_unlock (int fd) { - struct flock fl = + struct flock64 fl = { .l_type = F_UNLCK, }; -- 2.47.2