Blame SOURCES/0005-Promote-_make_hd_dn-to-make_hd_dn-and-get-rid-of-the.patch

5e6fc3
From bd8fc0ebe86da82468b40a4998c3000819e73afe Mon Sep 17 00:00:00 2001
5e6fc3
From: Peter Jones <pjones@redhat.com>
5e6fc3
Date: Tue, 12 Jun 2018 14:36:20 -0400
5e6fc3
Subject: [PATCH 05/39] Promote _make_hd_dn() to make_hd_dn() and get rid of
5e6fc3
 the wrapper.
5e6fc3
5e6fc3
The wrapper is just hiding what the code's doing, and all the other code
5e6fc3
around where we use it does the same thing anyway.  This hopefully
5e6fc3
convinces coverity we're not really dereferencing "buf" there unless
5e6fc3
it's nonzero.
5e6fc3
5e6fc3
Signed-off-by: Peter Jones <pjones@redhat.com>
5e6fc3
---
5e6fc3
 src/creator.c  | 3 ++-
5e6fc3
 src/disk.c     | 4 ++--
5e6fc3
 src/dp-media.c | 2 ++
5e6fc3
 src/disk.h     | 7 ++-----
5e6fc3
 4 files changed, 8 insertions(+), 8 deletions(-)
5e6fc3
5e6fc3
diff --git a/src/creator.c b/src/creator.c
5e6fc3
index 93f185fc0bc..76c1c1f7a99 100644
5e6fc3
--- a/src/creator.c
5e6fc3
+++ b/src/creator.c
5e6fc3
@@ -281,7 +281,8 @@ efi_va_generate_file_device_path_from_esp(uint8_t *buf, ssize_t size,
5e6fc3
 			goto err;
5e6fc3
 		}
5e6fc3
 
5e6fc3
-		sz = make_hd_dn(buf, size, off, disk_fd, dev->part, options);
5e6fc3
+		sz = make_hd_dn(buf+off, size?size-off:0,
5e6fc3
+                                disk_fd, dev->part, options);
5e6fc3
 		saved_errno = errno;
5e6fc3
 		close(disk_fd);
5e6fc3
 		errno = saved_errno;
5e6fc3
diff --git a/src/disk.c b/src/disk.c
5e6fc3
index deac512cf71..3efee03b804 100644
5e6fc3
--- a/src/disk.c
5e6fc3
+++ b/src/disk.c
5e6fc3
@@ -257,8 +257,8 @@ is_partitioned(int fd)
5e6fc3
 }
5e6fc3
 
5e6fc3
 ssize_t HIDDEN
5e6fc3
-_make_hd_dn(uint8_t *buf, ssize_t size, int fd, int32_t partition,
5e6fc3
-	    uint32_t options)
5e6fc3
+make_hd_dn(uint8_t *buf, ssize_t size, int fd, int32_t partition,
5e6fc3
+           uint32_t options)
5e6fc3
 {
5e6fc3
 	uint64_t part_start=0, part_size = 0;
5e6fc3
 	uint8_t signature[16]="", format=0, signature_type=0;
5e6fc3
diff --git a/src/dp-media.c b/src/dp-media.c
5e6fc3
index 0a0993ec3f4..cec6b8bb58d 100644
5e6fc3
--- a/src/dp-media.c
5e6fc3
+++ b/src/dp-media.c
5e6fc3
@@ -161,6 +161,7 @@ efidp_make_file(uint8_t *buf, ssize_t size, char *filepath)
5e6fc3
 	ssize_t sz;
5e6fc3
 	ssize_t len = utf8len(lf, -1) + 1;
5e6fc3
 	ssize_t req = sizeof (*file) + len * sizeof (uint16_t);
5e6fc3
+
5e6fc3
 	sz = efidp_make_generic(buf, size, EFIDP_MEDIA_TYPE, EFIDP_MEDIA_FILE,
5e6fc3
 				req);
5e6fc3
 	if (size && sz == req) {
5e6fc3
@@ -182,6 +183,7 @@ efidp_make_hd(uint8_t *buf, ssize_t size, uint32_t num, uint64_t part_start,
5e6fc3
 	efidp_hd *hd = (efidp_hd *)buf;
5e6fc3
 	ssize_t sz;
5e6fc3
 	ssize_t req = sizeof (*hd);
5e6fc3
+
5e6fc3
 	sz = efidp_make_generic(buf, size, EFIDP_MEDIA_TYPE, EFIDP_MEDIA_HD,
5e6fc3
 				req);
5e6fc3
 	if (size && sz == req) {
5e6fc3
diff --git a/src/disk.h b/src/disk.h
5e6fc3
index c040cc92a91..f0fa7f9f42d 100644
5e6fc3
--- a/src/disk.h
5e6fc3
+++ b/src/disk.h
5e6fc3
@@ -23,10 +23,7 @@
5e6fc3
 
5e6fc3
 extern bool HIDDEN is_partitioned(int fd);
5e6fc3
 
5e6fc3
-extern HIDDEN ssize_t _make_hd_dn(uint8_t *buf, ssize_t size, int fd,
5e6fc3
-                                  int32_t partition, uint32_t options);
5e6fc3
-#define make_hd_dn(buf, size, off, fd, partition, option) \
5e6fc3
-	_make_hd_dn(((buf)+(off)), ((size)?((size)-(off)):0), (fd),\
5e6fc3
-		    (partition), (options))
5e6fc3
+extern HIDDEN ssize_t make_hd_dn(uint8_t *buf, ssize_t size, int fd,
5e6fc3
+                                 int32_t partition, uint32_t options);
5e6fc3
 
5e6fc3
 #endif /* _EFIBOOT_DISK_H */
5e6fc3
-- 
5e6fc3
2.17.1
5e6fc3