From: Jeremy Harris Date: Sat, 10 Feb 2018 20:06:08 +0000 (+0000) Subject: Compiler-quietening X-Git-Url: https://git.exim.org/users/jgh/exim.git/commitdiff_plain/38e3d2dff7982736f1e6833e06d4aab4652f337a Compiler-quietening --- diff --git a/src/src/exim.c b/src/src/exim.c index 3f1e153fd..38e1a56b6 100644 --- a/src/src/exim.c +++ b/src/src/exim.c @@ -1432,7 +1432,7 @@ if (isupper(big_buffer[0])) if (macro_read_assignment(big_buffer)) { uschar * s = Ustrchr(big_buffer, '='); - printf("Defined macro '%.*s'\n", s - big_buffer, big_buffer); + printf("Defined macro '%.*s'\n", (int)(s - big_buffer), big_buffer); } } else diff --git a/src/src/macro.c b/src/src/macro.c index 82c1ec717..56a70880c 100644 --- a/src/src/macro.c +++ b/src/src/macro.c @@ -40,7 +40,11 @@ m->namelen = namelen; m->replen = Ustrlen(val); m->m_number = m_number++; memset(&m->tnode, 0, sizeof(tree_node)); -Ustrcpy(m->tnode.name, name); +/* Use memcpy here not Ustrcpy to avoid spurious compiler-inserted check +when building with fortify-source. We know there is room for the copy into +this dummy for a variable-size array because of the way we did the memory +allocation above. */ +memcpy(m->tnode.name, name, namelen+1); m->tnode.data.ptr = string_copyn(val, m->replen); (void) tree_insertnode(&tree_macros, &m->tnode);