nwrap: Use memcpy instead of strncpy
authorAndreas Schneider <asn@samba.org>
Fri, 15 Feb 2019 13:00:15 +0000 (14:00 +0100)
committerAndreas Schneider <asn@samba.org>
Thu, 28 Feb 2019 11:48:18 +0000 (12:48 +0100)
This fixes compiler/analyzer warnings that the use of strncpy() is
unsafe.

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
src/nss_wrapper.c

index 81d900c3f424fea9c16207b5d5dced437a617bf2..c4aa1b680c065ed9087aafd215d12d9e5647badd 100644 (file)
@@ -3465,7 +3465,8 @@ static int nwrap_files_gethostbyname(const char *name, int af,
 
        name_len = strlen(name);
        if (name_len < sizeof(canon_name) && name[name_len - 1] == '.') {
-               strncpy(canon_name, name, name_len - 1);
+               memcpy(canon_name, name, name_len - 1);
+               canon_name[name_len] = '\0';
                name = canon_name;
        }
 
@@ -3633,8 +3634,9 @@ static int nwrap_files_getaddrinfo(const char *name,
        }
 
        name_len = strlen(name);
-       if (name_len < DNS_NAME_MAX && name[name_len - 1] == '.') {
-               strncpy(canon_name, name, name_len - 1);
+       if (name_len < sizeof(canon_name) && name[name_len - 1] == '.') {
+               memcpy(canon_name, name, name_len - 1);
+               canon_name[name_len] = '\0';
                name = canon_name;
        }