Blame SOURCES/0004-nvme-do-not-leak-an-open-file-handle.patch

d2e4a4
From 45223fd3c5a13da9209c4f44d7593cb42cab94fb Mon Sep 17 00:00:00 2001
d2e4a4
From: Maurizio Lombardi <mlombard@redhat.com>
d2e4a4
Date: Tue, 14 Dec 2021 10:09:42 +0100
d2e4a4
Subject: [PATCH 3/6] nvme: do not leak an open file handle
d2e4a4
d2e4a4
We performed a "sec_fd=open(cfg.file)" earlier, so we should not
d2e4a4
overwrite the handle.
d2e4a4
d2e4a4
Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
d2e4a4
---
d2e4a4
 nvme.c | 9 +--------
d2e4a4
 1 file changed, 1 insertion(+), 8 deletions(-)
d2e4a4
d2e4a4
diff --git a/nvme.c b/nvme.c
d2e4a4
index 862f9b6..5beeac7 100644
d2e4a4
--- a/nvme.c
d2e4a4
+++ b/nvme.c
d2e4a4
@@ -4379,17 +4379,10 @@ static int sec_send(int argc, char **argv, struct command *cmd, struct plugin *p
d2e4a4
 		fprintf(stderr, "WARNING: --tl not dword aligned; unaligned bytes may be truncated\n");
d2e4a4
 
d2e4a4
 	if (strlen(cfg.file) == 0) {
d2e4a4
+		close(sec_fd);
d2e4a4
 		sec_fd = STDIN_FILENO;
d2e4a4
 		sec_size = cfg.tl;
d2e4a4
 	} else {
d2e4a4
-		sec_fd = open(cfg.file, O_RDONLY);
d2e4a4
-		if (sec_fd < 0) {
d2e4a4
-			fprintf(stderr, "Failed to open %s: %s\n",
d2e4a4
-					cfg.file, strerror(errno));
d2e4a4
-			err = -EINVAL;
d2e4a4
-			goto close_fd;
d2e4a4
-		}
d2e4a4
-
d2e4a4
 		err = fstat(sec_fd, &sb);
d2e4a4
 		if (err < 0) {
d2e4a4
 			perror("fstat");
d2e4a4
-- 
d2e4a4
2.27.0
d2e4a4