1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
From 7f52f03a486ded63e9c9b2d9fb9303b9b7ce6d6c Mon Sep 17 00:00:00 2001
From: Noah Meyerhans <noahm@debian.org>
Date: Tue, 25 Nov 2025 16:38:42 -0500
Subject: [PATCH] Work around test failure on big-endian architectures
Because the endianness of the target system results in data being
layed out differently in memory, the manually constructed test input
doesn't result in the expected failure modes, which is interpreted as
a test failure.
This is not a permanent fix. See
https://dovecot.org/mailman3/archives/list/dovecot@dovecot.org/message/FZBVU55TK5332SMZSSDNWIVJCWGUAJQS/
---
src/lib-master/test-master-service-settings.c | 36 -------------------
1 file changed, 36 deletions(-)
diff --git a/src/lib-master/test-master-service-settings.c b/src/lib-master/test-master-service-settings.c
index 37028fef1d..f545ee6f23 100644
--- a/src/lib-master/test-master-service-settings.c
+++ b/src/lib-master/test-master-service-settings.c
@@ -171,23 +171,6 @@ static const struct {
"\x00\x00\x00"),
"Area too small when reading uint of 'settings count'" },
- /* settings keys are truncated */
- { DATA("DOVECOT-CONFIG\t1.0\n"
- NUM64("\x2C") // full size
- NUM32("\x00") // cache path count
- NUM32("\x0D") // all keys size
- "\x00" // 32bit padding
- NUM32("\x00") // all keys hash key prefix
- NUM32("\x00") // all keys hash nodes count
- NUM32("\x00") // block names count
- NUM32("\x01") // event filter count
- "\x00" // event filter[0]
- NUM32("\x00") // number of named list filter elements
- NUM64("\x06") // block size
- "N\x00" // block name
- NUM32("\x01")), // settings count
- "'setting key' points outside area" },
-
/* filter count is truncated */
{ DATA("DOVECOT-CONFIG\t1.0\n"
NUM64("\x31") // full size
@@ -227,25 +210,6 @@ static const struct {
"\x00\x00\x00\x00\x00\x00\x00"), // filter settings size
"Area too small when reading size of 'filter settings size'" },
- /* filter settings is truncated */
- { DATA("DOVECOT-CONFIG\t1.0\n"
- NUM64("\x3A") // full size
- NUM32("\x00") // cache path count
- NUM32("\x0D") // all keys size
- "\x00" // 32bit padding
- NUM32("\x00") // all keys hash key prefix
- NUM32("\x00") // all keys hash nodes count
- NUM32("\x00") // block names count
- NUM32("\x01") // event filter count
- "\x00" // event filter[0]
- NUM32("\x00") // number of named list filter elements
- NUM64("\x14") // block size
- "N\x00" // block name
- NUM32("\x01") // settings count
- "K\x00" // setting[0] key
- NUM32("\x01") // filter count
- NUM64("\x10")), // filter settings size
- "'filter settings size' points outside area" },
/* filter error is missing */
{ DATA("DOVECOT-CONFIG\t1.0\n"
NUM64("\x47") // full size
--
2.47.3
|