aboutsummaryrefslogtreecommitdiff
path: root/libarchive/test/test_archive_pathmatch.c
diff options
context:
space:
mode:
authorMartin Matuska <mm@FreeBSD.org>2026-04-13 13:22:49 +0000
committerMartin Matuska <mm@FreeBSD.org>2026-04-13 13:29:20 +0000
commitf2cd95a372000681bafe284df6ba857d5c2541c2 (patch)
tree750d581c1606b7a02f4a8cbdb2485219b7f44215 /libarchive/test/test_archive_pathmatch.c
parent01333e8c4dd7b5e2bb90cc773332613cf085ccf4 (diff)
Diffstat (limited to 'libarchive/test/test_archive_pathmatch.c')
-rw-r--r--libarchive/test/test_archive_pathmatch.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/libarchive/test/test_archive_pathmatch.c b/libarchive/test/test_archive_pathmatch.c
index 3696d38fcf19..3b212aca9d94 100644
--- a/libarchive/test/test_archive_pathmatch.c
+++ b/libarchive/test/test_archive_pathmatch.c
@@ -285,4 +285,22 @@ DEFINE_TEST(test_archive_pathmatch)
archive_pathmatch("a/b/c$", "a/b/c/d", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
assertEqualInt(1,
archive_pathmatch("b/c/d$", "a/b/c/d", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+
+ /* Anchor characters within pattern not special. */
+ assertEqualInt(0,
+ archive_pathmatch("*^*", "a/b/c", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+ assertEqualInt(1,
+ archive_pathmatch("*^*", "a^b", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+ assertEqualInt(0,
+ archive_pathmatch("*$*", "a/b/c", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+ assertEqualInt(1,
+ archive_pathmatch("*$*", "a$b", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+ assertEqualInt(0,
+ archive_pathmatch("a*/^b/c", "a/b/c", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+ assertEqualInt(1,
+ archive_pathmatch("a*/^b/c", "a/^b/c", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+ assertEqualInt(0,
+ archive_pathmatch("a*/b$/c", "a/b/c", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
+ assertEqualInt(1,
+ archive_pathmatch("a*/b$/c", "a/b$/c", PATHMATCH_NO_ANCHOR_START | PATHMATCH_NO_ANCHOR_END));
}