summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMartin Schwenke <martin@meltin.net>2019-07-01 21:42:56 +1000
committerAndrew Bartlett <abartlet@samba.org>2019-07-05 02:24:52 +0000
commit9d90ac352d409c6cda7598a4cfbb79c2b9f75754 (patch)
tree20287be4adb1657a58821a0629c1e927db7731b6 /lib
parent5f7d82a88991d93d32f9cd1bbbfa3c3629e471c7 (diff)
downloadsamba-9d90ac352d409c6cda7598a4cfbb79c2b9f75754.tar.gz
util: Fix off-by-one error in message about overflow
len includes space for the NUL character, so the calculation needs to take the NUL character into account. While touching this, drop unnecessary casts by updating format string and update to modern debug macro. Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Fri Jul 5 02:24:52 UTC 2019 on sn-devel-184
Diffstat (limited to 'lib')
-rw-r--r--lib/util/substitute.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/lib/util/substitute.c b/lib/util/substitute.c
index 0ddab179588..2d88e97fd19 100644
--- a/lib/util/substitute.c
+++ b/lib/util/substitute.c
@@ -66,10 +66,11 @@ static void string_sub2(char *s,const char *pattern, const char *insert, size_t
while (lp <= ls && (p = strstr_m(s,pattern))) {
if (ls + li - lp >= len) {
- DEBUG(0,("ERROR: string overflow by "
- "%d in string_sub(%.50s, %d)\n",
- (int)(ls + li - lp - len),
- pattern, (int)len));
+ DBG_ERR("ERROR: string overflow by "
+ "%zu in string_sub(%.50s, %zu)\n",
+ ls + li - lp + 1 - len,
+ pattern,
+ len);
break;
}
if (li != lp) {
@@ -193,10 +194,11 @@ _PUBLIC_ void all_string_sub(char *s,const char *pattern,const char *insert, siz
while (lp <= ls && (p = strstr_m(s,pattern))) {
if (ls + li - lp >= len) {
- DEBUG(0,("ERROR: string overflow by "
- "%d in all_string_sub(%.50s, %d)\n",
- (int)(ls + li - lp - len),
- pattern, (int)len));
+ DBG_ERR("ERROR: string overflow by "
+ "%zu in all_string_sub(%.50s, %zu)\n",
+ ls + li - lp + 1 - len,
+ pattern,
+ len);
break;
}
if (li != lp) {