Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Mar 2021 20:17:39 GMT
From:      Chuck Silvers <chs@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 8c59e863e2c0 - stable/13 - tail: fix "tail -F" file rotation detection
Message-ID:  <202103182017.12IKHdK3075942@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by chs:

URL: https://cgit.FreeBSD.org/src/commit/?id=8c59e863e2c03c3b4ab2c403243561a4cc4fcb10

commit 8c59e863e2c03c3b4ab2c403243561a4cc4fcb10
Author:     Chuck Silvers <chs@FreeBSD.org>
AuthorDate: 2021-02-02 00:21:14 +0000
Commit:     Chuck Silvers <chs@FreeBSD.org>
CommitDate: 2021-03-18 20:12:24 +0000

    tail: fix "tail -F" file rotation detection
    
    When checking if the newly opened file is the same as the old one,
    we need to fstat() the new file descriptor, not the old one again.
    
    Reviewed by:    glebius
    Sponsored by:   Netflix
    
    (cherry picked from commit 7787e7eed9d2a43fb6eb66666040f1b495995a2f)
---
 usr.bin/tail/forward.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/usr.bin/tail/forward.c b/usr.bin/tail/forward.c
index 2888bd18816e..878cb5a4550b 100644
--- a/usr.bin/tail/forward.c
+++ b/usr.bin/tail/forward.c
@@ -367,7 +367,7 @@ follow(file_info_t *files, enum STYLE style, off_t off)
 					continue;
 				ftmp = fileargs_fopen(fa, file->file_name, "r");
 				if (ftmp == NULL ||
-				    fstat(fileno(file->fp), &sb2) == -1) {
+				    fstat(fileno(ftmp), &sb2) == -1) {
 					if (errno != ENOENT)
 						ierr(file->file_name);
 					show(file);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202103182017.12IKHdK3075942>