diff options
author | Richard Lowe <richlowe@richlowe.net> | 2011-06-21 04:52:34 -0700 |
---|---|---|
committer | Richard Lowe <richlowe@richlowe.net> | 2011-06-21 04:52:34 -0700 |
commit | 5963c4f9d1eb33d95ac319791aa1d0b9ea17f154 (patch) | |
tree | b9e3e3577a47f6a87704985040fcbb18083fd411 /usr/src | |
parent | 438b5f69eb4f998015cc0835f19f2f80663f2f53 (diff) | |
download | illumos-joyent-5963c4f9d1eb33d95ac319791aa1d0b9ea17f154.tar.gz |
1549 SPARC pci drivers write past end of pcitool driver name
Reviewed by: Albert Lee <trisk@nexenta.com>
Reviewed by: Jason King <jason.brian.king@gmail.com>
Reviewed by: Garrett D'Amore <garrett@nexenta.com>
Reviewed by: Dan McDonald <danmcd@nexenta.com>
Approved by: Garrett D'Amore <garrett@nexenta.com>
Diffstat (limited to 'usr/src')
-rw-r--r-- | usr/src/uts/sun4/io/px/px_ib.c | 5 | ||||
-rw-r--r-- | usr/src/uts/sun4u/io/pci/pci_ib.c | 5 | ||||
-rw-r--r-- | usr/src/uts/sun4v/io/niumx/niumx_tools.c | 5 |
3 files changed, 6 insertions, 9 deletions
diff --git a/usr/src/uts/sun4/io/px/px_ib.c b/usr/src/uts/sun4/io/px/px_ib.c index 8cd8b7354f..f0c875a0d9 100644 --- a/usr/src/uts/sun4/io/px/px_ib.c +++ b/usr/src/uts/sun4/io/px/px_ib.c @@ -1092,9 +1092,8 @@ static void px_fill_in_intr_devs(pcitool_intr_dev_t *dev, char *driver_name, char *path_name, int instance) { - (void) strncpy(dev->driver_name, driver_name, MAXMODCONFNAME-1); - dev->driver_name[MAXMODCONFNAME] = '\0'; - (void) strncpy(dev->path, path_name, MAXPATHLEN-1); + (void) strlcpy(dev->driver_name, driver_name, MAXMODCONFNAME); + (void) strlcpy(dev->path, path_name, MAXPATHLEN); dev->dev_inst = instance; } diff --git a/usr/src/uts/sun4u/io/pci/pci_ib.c b/usr/src/uts/sun4u/io/pci/pci_ib.c index 3e4517b68e..cedfc35e05 100644 --- a/usr/src/uts/sun4u/io/pci/pci_ib.c +++ b/usr/src/uts/sun4u/io/pci/pci_ib.c @@ -1036,10 +1036,9 @@ ib_get_ino_devs( for (i = 0, ih_p = ipil_p->ipil_ih_head; ((i < ipil_p->ipil_ih_size) && (i < *devs_ret)); i++, j++, ih_p = ih_p->ih_next) { - (void) strncpy(devs[i].driver_name, + (void) strlcpy(devs[i].driver_name, ddi_driver_name(ih_p->ih_dip), - MAXMODCONFNAME-1); - devs[i].driver_name[MAXMODCONFNAME] = '\0'; + MAXMODCONFNAME); (void) ddi_pathname(ih_p->ih_dip, devs[i].path); devs[i].dev_inst = ddi_get_instance(ih_p->ih_dip); diff --git a/usr/src/uts/sun4v/io/niumx/niumx_tools.c b/usr/src/uts/sun4v/io/niumx/niumx_tools.c index f65b97baa5..1687b06654 100644 --- a/usr/src/uts/sun4v/io/niumx/niumx_tools.c +++ b/usr/src/uts/sun4v/io/niumx/niumx_tools.c @@ -244,9 +244,8 @@ static void niumxtool_fill_in_intr_devs(pcitool_intr_dev_t *dev, char *driver_name, char *path_name, int instance) { - (void) strncpy(dev->driver_name, driver_name, MAXMODCONFNAME-1); - dev->driver_name[MAXMODCONFNAME] = '\0'; - (void) strncpy(dev->path, path_name, MAXPATHLEN-1); + (void) strlcpy(dev->driver_name, driver_name, MAXMODCONFNAME); + (void) strlcpy(dev->path, path_name, MAXPATHLEN); dev->dev_inst = instance; } |