common: be paranoid about incoming parameters in strscat/cpy
authorFerry Huberts <ferry.huberts@pelagic.nl>
Thu, 2 Jun 2016 17:24:48 +0000 (19:24 +0200)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Thu, 2 Jun 2016 20:06:48 +0000 (22:06 +0200)
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
src/common/string_handling.c

index ba9f5ba..ac6257e 100644 (file)
@@ -45,7 +45,6 @@
 
 #include <assert.h>
 #include <string.h>
-#include <stdio.h>
 
 #include "common/string_handling.h"
 
@@ -69,15 +68,6 @@ static char *_internal_strscpy(char *dest, const char *src, size_t dest_size) {
   assert(src);
   assert(dest_size);
 
-#if !defined(NODEBUG) && defined(DEBUG)
-  if (NULL == dest)
-    fprintf(stderr, "Warning: dest is NULL in strscpy!\n");
-  if (NULL == src)
-    fprintf(stderr, "Warning: src is NULL in strscpy!\n");
-#endif /* !defined(NODEBUG) && defined(DEBUG) */
-  if (!dest || !src) {
-    return NULL;
-  }
 
   /* src does not need to be null terminated */
   if (0 < dest_size--)
@@ -106,6 +96,11 @@ char * strscpy(char *dest, const char *src, size_t dest_size) {
   assert(src);
   assert(dest_size);
 
+  /* paranoid checks */
+  if (!dest || !src || !dest_size) {
+    return dest;
+  }
+
   return _internal_strscpy(dest, src, dest_size);
 }
 
@@ -132,6 +127,11 @@ char * strscat(char *dest, const char *src, size_t dest_size) {
   assert(src);
   assert(dest_size);
 
+  /* paranoid checks */
+  if (!dest || !src || !dest_size) {
+    return dest;
+  }
+
   dst_content_len = strlen(dest);
   if ((dest_size - dst_content_len) <= 0) {
     return dest;