Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Jun 2025 14:18:18 GMT
From:      Kyle Evans <kevans@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: e2a605e7ab7f - main - libarchive/test: fix build when memcpy() is a macro
Message-ID:  <202506171418.55HEII39052007@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by kevans:

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

commit e2a605e7ab7ff83d15b1a0b994223768169b0f1e
Author:     Kyle Evans <kevans@FreeBSD.org>
AuthorDate: 2025-06-17 14:17:59 +0000
Commit:     Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2025-06-17 14:17:59 +0000

    libarchive/test: fix build when memcpy() is a macro
    
    After importing the latest libarchive into FreeBSD, Shawn Webb @
    HardenedBSD noted that the test build is broken when FORTIFY_SOURCE=2
    while building the base system.  Braced initializer lists are a special
    case that need some extra fun parentheses when we're dealing with the
    preprocessor.
    
    While it's not a particularly common setup, the extra parentheses don't
    really hurt readability all that much so it's worth fixing for wider
    compatibility.
    
    This corresponds to libarchive PR #2660
    
    Reported by:    Shawn Webb (HardenedBSD)
---
 .../test/test_write_format_mtree_preset_digests.c  | 68 +++++++++++-----------
 1 file changed, 34 insertions(+), 34 deletions(-)

diff --git a/contrib/libarchive/libarchive/test/test_write_format_mtree_preset_digests.c b/contrib/libarchive/libarchive/test/test_write_format_mtree_preset_digests.c
index cdf789b4b002..bb8ddf49431b 100644
--- a/contrib/libarchive/libarchive/test/test_write_format_mtree_preset_digests.c
+++ b/contrib/libarchive/libarchive/test/test_write_format_mtree_preset_digests.c
@@ -326,10 +326,10 @@ DEFINE_TEST(test_write_format_mtree_digests_md5_digest_set_no_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.md5, (unsigned char[]) {
+	memcpy(ed.md5, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
-	}, sizeof(ed.md5));
+	}), sizeof(ed.md5));
 
 #ifdef ARCHIVE_HAS_RMD160
 	assertEqualInt(ARCHIVE_OK, archive_rmd160_init(&expectedRmd160Ctx));
@@ -419,10 +419,10 @@ DEFINE_TEST(test_write_format_mtree_digests_md5_digest_set_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.md5, (unsigned char[]) {
+	memcpy(ed.md5, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
-	}, sizeof(ed.md5));
+	}), sizeof(ed.md5));
 
 #ifdef ARCHIVE_HAS_RMD160
 	assertEqualInt(ARCHIVE_OK, archive_rmd160_init(&expectedRmd160Ctx));
@@ -519,10 +519,10 @@ DEFINE_TEST(test_write_format_mtree_digests_md5_digest_set_non_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.md5, (unsigned char[]) {
+	memcpy(ed.md5, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
-	}, sizeof(ed.md5));
+	}), sizeof(ed.md5));
 
 #ifdef ARCHIVE_HAS_RMD160
 	assertEqualInt(ARCHIVE_OK, archive_rmd160_init(&expectedRmd160Ctx));
@@ -710,10 +710,10 @@ DEFINE_TEST(test_write_format_mtree_digests_rmd160_digest_set_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.rmd160, (unsigned char[]) {
+	memcpy(ed.rmd160, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.rmd160));
+	}), sizeof(ed.rmd160));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -810,10 +810,10 @@ DEFINE_TEST(test_write_format_mtree_digests_rmd160_digest_set_non_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.rmd160, (unsigned char[]) {
+	memcpy(ed.rmd160, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.rmd160));
+	}), sizeof(ed.rmd160));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -910,10 +910,10 @@ DEFINE_TEST(test_write_format_mtree_digests_sha1_digest_set_no_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha1, (unsigned char[]) {
+	memcpy(ed.sha1, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha1));
+	}), sizeof(ed.sha1));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1003,10 +1003,10 @@ DEFINE_TEST(test_write_format_mtree_digests_sha1_digest_set_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha1, (unsigned char[]) {
+	memcpy(ed.sha1, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha1));
+	}), sizeof(ed.sha1));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1103,10 +1103,10 @@ DEFINE_TEST(test_write_format_mtree_digests_sha1_digest_set_non_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha1, (unsigned char[]) {
+	memcpy(ed.sha1, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha1));
+	}), sizeof(ed.sha1));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1203,12 +1203,12 @@ DEFINE_TEST(test_write_format_mtree_digests_sha256_digest_set_no_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha256, (unsigned char[]) {
+	memcpy(ed.sha256, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed
-	}, sizeof(ed.sha256));
+	}), sizeof(ed.sha256));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1298,12 +1298,12 @@ DEFINE_TEST(test_write_format_mtree_digests_sha256_digest_set_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha256, (unsigned char[]) {
+	memcpy(ed.sha256, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed
-	}, sizeof(ed.sha256));
+	}), sizeof(ed.sha256));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1400,12 +1400,12 @@ DEFINE_TEST(test_write_format_mtree_digests_sha256_digest_set_non_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha256, (unsigned char[]) {
+	memcpy(ed.sha256, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed
-	}, sizeof(ed.sha256));
+	}), sizeof(ed.sha256));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1502,13 +1502,13 @@ DEFINE_TEST(test_write_format_mtree_digests_sha384_digest_set_no_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha384, (unsigned char[]) {
+	memcpy(ed.sha384, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha384));
+	}), sizeof(ed.sha384));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1598,13 +1598,13 @@ DEFINE_TEST(test_write_format_mtree_digests_sha384_digest_set_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha384, (unsigned char[]) {
+	memcpy(ed.sha384, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha384));
+	}), sizeof(ed.sha384));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1701,13 +1701,13 @@ DEFINE_TEST(test_write_format_mtree_digests_sha384_digest_set_non_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha384, (unsigned char[]) {
+	memcpy(ed.sha384, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha384));
+	}), sizeof(ed.sha384));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1804,7 +1804,7 @@ DEFINE_TEST(test_write_format_mtree_digests_sha512_digest_set_no_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha512, (unsigned char[]) {
+	memcpy(ed.sha512, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
@@ -1812,7 +1812,7 @@ DEFINE_TEST(test_write_format_mtree_digests_sha512_digest_set_no_data)
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha512));
+	}), sizeof(ed.sha512));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -1903,7 +1903,7 @@ DEFINE_TEST(test_write_format_mtree_digests_sha512_digest_set_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha512, (unsigned char[]) {
+	memcpy(ed.sha512, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
@@ -1911,7 +1911,7 @@ DEFINE_TEST(test_write_format_mtree_digests_sha512_digest_set_empty_data)
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha512));
+	}), sizeof(ed.sha512));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));
@@ -2009,7 +2009,7 @@ DEFINE_TEST(test_write_format_mtree_digests_sha512_digest_set_non_empty_data)
 	struct archive_entry *entry;
 	struct expected_digests ed;
 
-	memcpy(ed.sha512, (unsigned char[]) {
+	memcpy(ed.sha512, ((unsigned char[]) {
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
@@ -2017,7 +2017,7 @@ DEFINE_TEST(test_write_format_mtree_digests_sha512_digest_set_non_empty_data)
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed, 0xfe, 0xed,
 		0xfe, 0xed, 0xfe, 0xed
-	}, sizeof(ed.sha512));
+	}), sizeof(ed.sha512));
 
 #ifdef ARCHIVE_HAS_MD5
 	assertEqualInt(ARCHIVE_OK, archive_md5_init(&expectedMd5Ctx));



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