diff options
Diffstat (limited to '')
-rw-r--r-- | debian/patches/75_22-Silence-compiler.patch | 222 |
1 files changed, 222 insertions, 0 deletions
diff --git a/debian/patches/75_22-Silence-compiler.patch b/debian/patches/75_22-Silence-compiler.patch new file mode 100644 index 0000000..ce6e898 --- /dev/null +++ b/debian/patches/75_22-Silence-compiler.patch @@ -0,0 +1,222 @@ +From 2c9869d0622cc690b424cc74166d4a8393017ece Mon Sep 17 00:00:00 2001 +From: "Heiko Schlittermann (HS12-RIPE)" <hs@schlittermann.de> +Date: Fri, 23 Apr 2021 17:40:40 +0200 +Subject: [PATCH 22/23] Silence compiler + +--- + src/acl.c | 2 +- + src/deliver.c | 3 +-- + src/expand.c | 6 +++++- + src/functions.h | 2 +- + src/lookups/lf_sqlperform.c | 4 ++-- + src/parse.c | 2 +- + src/rda.c | 2 +- + src/transports/appendfile.c | 4 ++-- + src/transports/autoreply.c | 12 ++++++------ + src/transports/pipe.c | 4 ++-- + 10 files changed, 22 insertions(+), 19 deletions(-) + +diff --git a/src/acl.c b/src/acl.c +index 81beab5f3..b62af5c65 100644 +--- a/src/acl.c ++++ b/src/acl.c +@@ -3600,7 +3600,7 @@ for (; cb; cb = cb->next) + case ACLC_QUEUE: + { + uschar *m; +- if (m = is_tainted2(arg, 0, "Tainted name '%s' for queue not permitted", arg)) ++ if ((m = is_tainted2(arg, 0, "Tainted name '%s' for queue not permitted", arg))) + { + *log_msgptr = m; + return ERROR; +diff --git a/src/deliver.c b/src/deliver.c +index 87e944b03..b40eed4f9 100644 +--- a/src/deliver.c ++++ b/src/deliver.c +@@ -6149,12 +6149,11 @@ else if (system_filter && process_recipients != RECIP_FAIL_TIMEOUT) + { + uschar *tmp = expand_string(tpname); + address_file = address_pipe = NULL; +- uschar *m; + if (!tmp) + p->message = string_sprintf("failed to expand \"%s\" as a " + "system filter transport name", tpname); + { uschar *m; +- if (m = is_tainted2(tmp, 0, "Tainted values '%s' " "for transport '%s' as a system filter", tmp, tpname)) ++ if ((m = is_tainted2(tmp, 0, "Tainted values '%s' " "for transport '%s' as a system filter", tmp, tpname))) + p->message = m; + } + tpname = tmp; +diff --git a/src/expand.c b/src/expand.c +index 21b86ebf5..dc4b4e102 100644 +--- a/src/expand.c ++++ b/src/expand.c +@@ -4384,7 +4384,7 @@ f.expand_string_forcedfail = FALSE; + expand_string_message = US""; + + { uschar *m; +-if (m = is_tainted2(string, LOG_MAIN|LOG_PANIC, "Tainted string '%s' in expansion", s)) ++if ((m = is_tainted2(string, LOG_MAIN|LOG_PANIC, "Tainted string '%s' in expansion", s))) + { + expand_string_message = m; + goto EXPAND_FAILED; +@@ -7629,10 +7629,12 @@ while (*s != 0) + /* Manually track tainting, as we deal in individual chars below */ + + if (is_tainted(sub)) ++ { + if (yield->s && yield->ptr) + gstring_rebuffer(yield); + else + yield->s = store_get(yield->size = Ustrlen(sub), TRUE); ++ } + + /* Check the UTF-8, byte-by-byte */ + +@@ -8193,6 +8195,7 @@ that is a bad idea, because expand_string_message is in dynamic store. */ + EXPAND_FAILED: + if (left) *left = s; + DEBUG(D_expand) ++ { + DEBUG(D_noutf8) + { + debug_printf_indent("|failed to expand: %s\n", string); +@@ -8212,6 +8215,7 @@ DEBUG(D_expand) + if (f.expand_string_forcedfail) + debug_printf_indent(UTF8_UP_RIGHT "failure was forced\n"); + } ++ } + if (resetok_p && !resetok) *resetok_p = FALSE; + expand_level--; + return NULL; +diff --git a/src/functions.h b/src/functions.h +index 1e8083673..b4d23c4bc 100644 +--- a/src/functions.h ++++ b/src/functions.h +@@ -1084,7 +1084,7 @@ if (f.running_in_test_harness && f.testsuite_delays) millisleep(millisec); + /******************************************************************************/ + /* Taint-checked file opens */ + static inline uschar * +-is_tainted2(const void *p, int lflags, const uschar* fmt, ...) ++is_tainted2(const void *p, int lflags, const char* fmt, ...) + { + va_list ap; + uschar *msg; +diff --git a/src/lookups/lf_sqlperform.c b/src/lookups/lf_sqlperform.c +index eda3089e2..38b7c2ad3 100644 +--- a/src/lookups/lf_sqlperform.c ++++ b/src/lookups/lf_sqlperform.c +@@ -103,7 +103,7 @@ if (Ustrncmp(query, "servers", 7) == 0) + } + + { uschar *m; +- if (m = is_tainted2(server, 0, "Tainted %s server '%s'", name, server)) ++ if ((m = is_tainted2(server, 0, "Tainted %s server '%s'", name, server))) + { + *errmsg = m; + return DEFER; +@@ -161,7 +161,7 @@ else + } + + { uschar *m; +- if (is_tainted2(server, 0, "Tainted %s server '%s'", name, server)) ++ if ((m = is_tainted2(server, 0, "Tainted %s server '%s'", name, server))) + { + *errmsg = m; + return DEFER; +diff --git a/src/parse.c b/src/parse.c +index d1bc79039..0622b3127 100644 +--- a/src/parse.c ++++ b/src/parse.c +@@ -1402,7 +1402,7 @@ for (;;) + return FF_ERROR; + } + +- if (*error = is_tainted2(filename, 0, "Tainted name '%s' for included file not permitted\n", filename)) ++ if ((*error = is_tainted2(filename, 0, "Tainted name '%s' for included file not permitted\n", filename))) + return FF_ERROR; + + /* Check file name if required */ +diff --git a/src/rda.c b/src/rda.c +index 6ad7dd8bd..bba0b719b 100644 +--- a/src/rda.c ++++ b/src/rda.c +@@ -179,7 +179,7 @@ struct stat statbuf; + /* Reading a file is a form of expansion; we wish to deny attackers the + capability to specify the file name. */ + +-if (*error = is_tainted2(filename, 0, "Tainted name '%s' for file read not permitted\n", filename)) ++if ((*error = is_tainted2(filename, 0, "Tainted name '%s' for file read not permitted\n", filename))) + { + *yield = FF_ERROR; + return NULL; +diff --git a/src/transports/appendfile.c b/src/transports/appendfile.c +index 7dbbaa2f9..6772b338b 100644 +--- a/src/transports/appendfile.c ++++ b/src/transports/appendfile.c +@@ -1287,8 +1287,8 @@ if (!(path = expand_string(fdname))) + goto ret_panic; + } + { uschar *m; +-if (m = is_tainted2(path, 0, "Tainted '%s' (file or directory " +- "name for %s transport) not permitted", path, tblock->name)) ++if ((m = is_tainted2(path, 0, "Tainted '%s' (file or directory " ++ "name for %s transport) not permitted", path, tblock->name))) + { + addr->message = m; + goto ret_panic; +diff --git a/src/transports/autoreply.c b/src/transports/autoreply.c +index ed99de4c6..80c7c0db0 100644 +--- a/src/transports/autoreply.c ++++ b/src/transports/autoreply.c +@@ -407,8 +407,8 @@ if (oncelog && *oncelog && to) + uschar *m; + time_t then = 0; + +- if (m = is_tainted2(oncelog, 0, "Tainted '%s' (once file for %s transport)" +- " not permitted", oncelog, tblock->name)) ++ if ((m = is_tainted2(oncelog, 0, "Tainted '%s' (once file for %s transport)" ++ " not permitted", oncelog, tblock->name))) + { + addr->transport_return = DEFER; + addr->basic_errno = EACCES; +@@ -518,8 +518,8 @@ if (oncelog && *oncelog && to) + { + uschar *m; + int log_fd; +- if (m = is_tainted2(logfile, 0, "Tainted '%s' (logfile for %s transport)" +- " not permitted", logfile, tblock->name)) ++ if ((m = is_tainted2(logfile, 0, "Tainted '%s' (logfile for %s transport)" ++ " not permitted", logfile, tblock->name))) + { + addr->transport_return = DEFER; + addr->basic_errno = EACCES; +@@ -551,8 +551,8 @@ if (oncelog && *oncelog && to) + if (file) + { + uschar *m; +- if (m = is_tainted2(file, 0, "Tainted '%s' (file for %s transport)" +- " not permitted", file, tblock->name)) ++ if ((m = is_tainted2(file, 0, "Tainted '%s' (file for %s transport)" ++ " not permitted", file, tblock->name))) + { + addr->transport_return = DEFER; + addr->basic_errno = EACCES; +diff --git a/src/transports/pipe.c b/src/transports/pipe.c +index 4c9e68beb..fc44fa585 100644 +--- a/src/transports/pipe.c ++++ b/src/transports/pipe.c +@@ -601,8 +601,8 @@ if (!cmd || !*cmd) + } + + { uschar *m; +-if (m = is_tainted2(cmd, 0, "Tainted '%s' (command " +- "for %s transport) not permitted", cmd, tblock->name)) ++if ((m = is_tainted2(cmd, 0, "Tainted '%s' (command " ++ "for %s transport) not permitted", cmd, tblock->name))) + { + addr->transport_return = PANIC; + addr->message = m; +-- +2.30.2 + |