scsi: qla2xxx: Use strlcpy() instead of strncpy()
authorBart Van Assche <bvanassche@acm.org>
Fri, 9 Aug 2019 03:01:43 +0000 (20:01 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 13 Aug 2019 01:34:06 +0000 (21:34 -0400)
This patch fixes several gcc complaints about string truncation.

Cc: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Tested-by: Himanshu Madhani <hmadhani@marvell.com>
Reviewed-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_mr.c

index cd892ed..b6be7e7 100644 (file)
@@ -1880,22 +1880,22 @@ qlafx00_fx_disc(scsi_qla_host_t *vha, fc_port_t *fcport, uint16_t fx_type)
                        phost_info = &preg_hsi->hsi;
                        memset(preg_hsi, 0, sizeof(struct register_host_info));
                        phost_info->os_type = OS_TYPE_LINUX;
-                       strncpy(phost_info->sysname,
-                           p_sysid->sysname, SYSNAME_LENGTH);
-                       strncpy(phost_info->nodename,
-                           p_sysid->nodename, NODENAME_LENGTH);
+                       strlcpy(phost_info->sysname, p_sysid->sysname,
+                               sizeof(phost_info->sysname));
+                       strlcpy(phost_info->nodename, p_sysid->nodename,
+                               sizeof(phost_info->nodename));
                        if (!strcmp(phost_info->nodename, "(none)"))
                                ha->mr.host_info_resend = true;
-                       strncpy(phost_info->release,
-                           p_sysid->release, RELEASE_LENGTH);
-                       strncpy(phost_info->version,
-                           p_sysid->version, VERSION_LENGTH);
-                       strncpy(phost_info->machine,
-                           p_sysid->machine, MACHINE_LENGTH);
-                       strncpy(phost_info->domainname,
-                           p_sysid->domainname, DOMNAME_LENGTH);
-                       strncpy(phost_info->hostdriver,
-                           QLA2XXX_VERSION, VERSION_LENGTH);
+                       strlcpy(phost_info->release, p_sysid->release,
+                               sizeof(phost_info->release));
+                       strlcpy(phost_info->version, p_sysid->version,
+                               sizeof(phost_info->version));
+                       strlcpy(phost_info->machine, p_sysid->machine,
+                               sizeof(phost_info->machine));
+                       strlcpy(phost_info->domainname, p_sysid->domainname,
+                               sizeof(phost_info->domainname));
+                       strlcpy(phost_info->hostdriver, QLA2XXX_VERSION,
+                               sizeof(phost_info->hostdriver));
                        preg_hsi->utc = (uint64_t)ktime_get_real_seconds();
                        ql_dbg(ql_dbg_init, vha, 0x0149,
                            "ISP%04X: Host registration with firmware\n",