summaryrefslogtreecommitdiff
path: root/include/share/safe_str.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/share/safe_str.h')
-rw-r--r--include/share/safe_str.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/share/safe_str.h b/include/share/safe_str.h
index eb974c51..6709334e 100644
--- a/include/share/safe_str.h
+++ b/include/share/safe_str.h
@@ -46,7 +46,9 @@ safe_strncat(char *dest, const char *src, size_t dest_size)
if (dest_size < 1)
return dest;
+ /* Assume dist has space for a term character .. */
ret = strncat(dest, src, dest_size - strlen (dest));
+ /* .. but set it explicitly. */
dest [dest_size - 1] = 0;
return ret;
@@ -60,7 +62,7 @@ safe_strncpy(char *dest, const char *src, size_t dest_size)
if (dest_size < 1)
return dest;
- ret = strncpy(dest, src, dest_size);
+ ret = strncpy(dest, src, dest_size - 1);
dest [dest_size - 1] = 0;
return ret;