summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authoraugustss <augustss@NetBSD.org>2005-05-11 10:02:28 +0000
committeraugustss <augustss@NetBSD.org>2005-05-11 10:02:28 +0000
commit834327c847f2fbda7bc0a66ab9b03bfe430e8a5b (patch)
treedeca746ed0890be66b11d1451a397a635406dcc6 /sys/dev
parent2cf84fc2837719ec5e41a418e0391deabb396753 (diff)
Don't keep the devinfo string on the stack, instead use malloc/free.
This should cure some rare stack overflows.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/usb/if_atu.c11
-rw-r--r--sys/dev/usb/if_aue.c11
-rw-r--r--sys/dev/usb/if_axe.c11
-rw-r--r--sys/dev/usb/if_cdce.c11
-rw-r--r--sys/dev/usb/if_cue.c11
-rw-r--r--sys/dev/usb/if_kue.c11
-rw-r--r--sys/dev/usb/if_udav.c11
-rw-r--r--sys/dev/usb/if_upl.c11
-rw-r--r--sys/dev/usb/if_url.c11
-rw-r--r--sys/dev/usb/uaudio.c11
-rw-r--r--sys/dev/usb/ubsa.c15
-rw-r--r--sys/dev/usb/ubt.c11
-rw-r--r--sys/dev/usb/ubtbcmfw.c11
-rw-r--r--sys/dev/usb/udsbr.c11
-rw-r--r--sys/dev/usb/uep.c13
-rw-r--r--sys/dev/usb/uftdi.c11
-rw-r--r--sys/dev/usb/ugen.c11
-rw-r--r--sys/dev/usb/ugensa.c9
-rw-r--r--sys/dev/usb/uhidev.c12
-rw-r--r--sys/dev/usb/uhub.c12
-rw-r--r--sys/dev/usb/uirda.c11
-rw-r--r--sys/dev/usb/ulpt.c12
-rw-r--r--sys/dev/usb/umass.c12
-rw-r--r--sys/dev/usb/umct.c13
-rw-r--r--sys/dev/usb/umidi.c11
-rw-r--r--sys/dev/usb/umodem_common.c11
-rw-r--r--sys/dev/usb/uplcom.c14
-rw-r--r--sys/dev/usb/urio.c11
-rw-r--r--sys/dev/usb/usb_subr.c25
-rw-r--r--sys/dev/usb/usbdi.h6
-rw-r--r--sys/dev/usb/uscanner.c11
-rw-r--r--sys/dev/usb/usscanner.c11
-rw-r--r--sys/dev/usb/ustir.c11
-rw-r--r--sys/dev/usb/uvisor.c11
-rw-r--r--sys/dev/usb/uvscom.c11
-rw-r--r--sys/dev/usb/uyap.c12
36 files changed, 236 insertions, 183 deletions
diff --git a/sys/dev/usb/if_atu.c b/sys/dev/usb/if_atu.c
index 9c77209d4bf..7cd3d0051f6 100644
--- a/sys/dev/usb/if_atu.c
+++ b/sys/dev/usb/if_atu.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_atu.c,v 1.10 2005/03/03 09:23:24 itojun Exp $ */
+/* $NetBSD: if_atu.c,v 1.11 2005/05/11 10:02:28 augustss Exp $ */
/* $OpenBSD: if_atu.c,v 1.48 2004/12/30 01:53:21 dlg Exp $ */
/*
* Copyright (c) 2003, 2004
@@ -48,7 +48,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_atu.c,v 1.10 2005/03/03 09:23:24 itojun Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_atu.c,v 1.11 2005/05/11 10:02:28 augustss Exp $");
#include "bpfilter.h"
@@ -1157,7 +1157,7 @@ atu_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg)
USB_ATTACH(atu)
{
USB_ATTACH_START(atu, sc, uaa);
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
usbd_device_handle dev = uaa->device;
u_int8_t mode, channel;
@@ -1165,9 +1165,10 @@ USB_ATTACH(atu)
sc->sc_state = ATU_S_UNCONFIG;
- usbd_devinfo(uaa->device, 0, devinfo, sizeof devinfo);
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->atu_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->atu_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, ATU_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/if_aue.c b/sys/dev/usb/if_aue.c
index 0d9f25d4fb7..148ab36cad7 100644
--- a/sys/dev/usb/if_aue.c
+++ b/sys/dev/usb/if_aue.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_aue.c,v 1.89 2004/11/03 22:59:31 rjs Exp $ */
+/* $NetBSD: if_aue.c,v 1.90 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1997, 1998, 1999, 2000
* Bill Paul <wpaul@ee.columbia.edu>. All rights reserved.
@@ -77,7 +77,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.89 2004/11/03 22:59:31 rjs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.90 2005/05/11 10:02:28 augustss Exp $");
#if defined(__NetBSD__)
#include "opt_inet.h"
@@ -722,7 +722,7 @@ USB_MATCH(aue)
USB_ATTACH(aue)
{
USB_ATTACH_START(aue, sc, uaa);
- char devinfo[1024];
+ char *devinfop;
int s;
u_char eaddr[ETHER_ADDR_LEN];
struct ifnet *ifp;
@@ -736,9 +736,10 @@ USB_ATTACH(aue)
DPRINTFN(5,(" : aue_attach: sc=%p", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->aue_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->aue_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, AUE_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/if_axe.c b/sys/dev/usb/if_axe.c
index 2107ad9c43c..6c14acfb0a9 100644
--- a/sys/dev/usb/if_axe.c
+++ b/sys/dev/usb/if_axe.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_axe.c,v 1.7 2005/02/27 00:27:51 perry Exp $ */
+/* $NetBSD: if_axe.c,v 1.8 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1997, 1998, 1999, 2000-2003
@@ -73,7 +73,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.7 2005/02/27 00:27:51 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.8 2005/05/11 10:02:28 augustss Exp $");
#if defined(__NetBSD__)
#include "opt_inet.h"
@@ -450,12 +450,12 @@ USB_ATTACH(axe)
usb_endpoint_descriptor_t *ed;
struct mii_data *mii;
u_char eaddr[ETHER_ADDR_LEN];
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->axe_dev);
struct ifnet *ifp;
int i, s;
- usbd_devinfo(dev, 0, devinfo, sizeof devinfo);
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
err = usbd_set_config_no(dev, AXE_CONFIG_NO, 1);
@@ -482,7 +482,8 @@ USB_ATTACH(axe)
id = usbd_get_interface_descriptor(sc->axe_iface);
- printf("%s: %s\n", USBDEVNAME(sc->axe_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->axe_dev), devinfop);
+ usbd_devinfo_free(devinfop);
/* Find endpoints. */
for (i = 0; i < id->bNumEndpoints; i++) {
diff --git a/sys/dev/usb/if_cdce.c b/sys/dev/usb/if_cdce.c
index 580deb950c7..aeaafab976e 100644
--- a/sys/dev/usb/if_cdce.c
+++ b/sys/dev/usb/if_cdce.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_cdce.c,v 1.5 2005/05/02 15:32:18 augustss Exp $ */
+/* $NetBSD: if_cdce.c,v 1.6 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1997, 1998, 1999, 2000-2003 Bill Paul <wpaul@windriver.com>
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_cdce.c,v 1.5 2005/05/02 15:32:18 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_cdce.c,v 1.6 2005/05/11 10:02:28 augustss Exp $");
#include "bpfilter.h"
#include <sys/param.h>
@@ -155,7 +155,7 @@ USB_MATCH(cdce)
USB_ATTACH(cdce)
{
USB_ATTACH_START(cdce, sc, uaa);
- char devinfo[1024];
+ char *devinfop;
int s;
struct ifnet *ifp;
usbd_device_handle dev = uaa->device;
@@ -169,9 +169,10 @@ USB_ATTACH(cdce)
const usb_cdc_ethernet_descriptor_t *ue;
char eaddr_str[USB_MAX_ENCODED_STRING_LEN];
- usbd_devinfo(dev, 0, devinfo, sizeof devinfo);
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->cdce_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->cdce_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->cdce_udev = uaa->device;
sc->cdce_ctl_iface = uaa->iface;
diff --git a/sys/dev/usb/if_cue.c b/sys/dev/usb/if_cue.c
index f20f1d5065b..a1f14e7e046 100644
--- a/sys/dev/usb/if_cue.c
+++ b/sys/dev/usb/if_cue.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_cue.c,v 1.42 2005/01/08 03:16:51 yamt Exp $ */
+/* $NetBSD: if_cue.c,v 1.43 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1997, 1998, 1999, 2000
* Bill Paul <wpaul@ee.columbia.edu>. All rights reserved.
@@ -56,7 +56,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_cue.c,v 1.42 2005/01/08 03:16:51 yamt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_cue.c,v 1.43 2005/05/11 10:02:28 augustss Exp $");
#if defined(__NetBSD__)
#include "opt_inet.h"
@@ -484,7 +484,7 @@ USB_MATCH(cue)
USB_ATTACH(cue)
{
USB_ATTACH_START(cue, sc, uaa);
- char devinfo[1024];
+ char *devinfop;
int s;
u_char eaddr[ETHER_ADDR_LEN];
usbd_device_handle dev = uaa->device;
@@ -497,9 +497,10 @@ USB_ATTACH(cue)
DPRINTFN(5,(" : cue_attach: sc=%p, dev=%p", sc, dev));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->cue_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->cue_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, CUE_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/if_kue.c b/sys/dev/usb/if_kue.c
index 7cdb369e2f5..0916628d179 100644
--- a/sys/dev/usb/if_kue.c
+++ b/sys/dev/usb/if_kue.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_kue.c,v 1.52 2004/10/22 09:41:01 augustss Exp $ */
+/* $NetBSD: if_kue.c,v 1.53 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1997, 1998, 1999, 2000
* Bill Paul <wpaul@ee.columbia.edu>. All rights reserved.
@@ -70,7 +70,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_kue.c,v 1.52 2004/10/22 09:41:01 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_kue.c,v 1.53 2005/05/11 10:02:28 augustss Exp $");
#if defined(__NetBSD__)
#include "opt_inet.h"
@@ -420,7 +420,7 @@ USB_MATCH(kue)
USB_ATTACH(kue)
{
USB_ATTACH_START(kue, sc, uaa);
- char devinfo[1024];
+ char *devinfop;
int s;
struct ifnet *ifp;
usbd_device_handle dev = uaa->device;
@@ -432,9 +432,10 @@ USB_ATTACH(kue)
DPRINTFN(5,(" : kue_attach: sc=%p, dev=%p", sc, dev));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->kue_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->kue_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, KUE_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/if_udav.c b/sys/dev/usb/if_udav.c
index 2476c552582..aeeba6f2d53 100644
--- a/sys/dev/usb/if_udav.c
+++ b/sys/dev/usb/if_udav.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_udav.c,v 1.5 2005/02/27 00:27:51 perry Exp $ */
+/* $NetBSD: if_udav.c,v 1.6 2005/05/11 10:02:28 augustss Exp $ */
/* $nabe: if_udav.c,v 1.3 2003/08/21 16:57:19 nabe Exp $ */
/*
* Copyright (c) 2003
@@ -44,7 +44,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.5 2005/02/27 00:27:51 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.6 2005/05/11 10:02:28 augustss Exp $");
#include "opt_inet.h"
#include "opt_ns.h"
@@ -186,16 +186,17 @@ USB_ATTACH(udav)
usbd_status err;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->sc_dev);
struct ifnet *ifp;
struct mii_data *mii;
u_char eaddr[ETHER_ADDR_LEN];
int i, s;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
/* Move the device into the configured state. */
err = usbd_set_config_no(dev, UDAV_CONFIG_NO, 1);
diff --git a/sys/dev/usb/if_upl.c b/sys/dev/usb/if_upl.c
index 768a3809af9..0b83e9fc82b 100644
--- a/sys/dev/usb/if_upl.c
+++ b/sys/dev/usb/if_upl.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_upl.c,v 1.21 2004/12/06 02:59:23 christos Exp $ */
+/* $NetBSD: if_upl.c,v 1.22 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2000 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_upl.c,v 1.21 2004/12/06 02:59:23 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_upl.c,v 1.22 2005/05/11 10:02:28 augustss Exp $");
#include "opt_inet.h"
#include "opt_ns.h"
@@ -233,7 +233,7 @@ USB_MATCH(upl)
USB_ATTACH(upl)
{
USB_ATTACH_START(upl, sc, uaa);
- char devinfo[1024];
+ char *devinfop;
int s;
usbd_device_handle dev = uaa->device;
usbd_interface_handle iface;
@@ -245,9 +245,10 @@ USB_ATTACH(upl)
DPRINTFN(5,(" : upl_attach: sc=%p, dev=%p", sc, dev));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, UPL_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/if_url.c b/sys/dev/usb/if_url.c
index 1f5d80bdae6..426cb4eafa6 100644
--- a/sys/dev/usb/if_url.c
+++ b/sys/dev/usb/if_url.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_url.c,v 1.15 2005/03/03 08:10:01 itojun Exp $ */
+/* $NetBSD: if_url.c,v 1.16 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2001, 2002
* Shingo WATANABE <nabe@nabechan.org>. All rights reserved.
@@ -43,7 +43,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_url.c,v 1.15 2005/03/03 08:10:01 itojun Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_url.c,v 1.16 2005/05/11 10:02:28 augustss Exp $");
#include "opt_inet.h"
#include "opt_ns.h"
@@ -190,16 +190,17 @@ USB_ATTACH(url)
usbd_status err;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->sc_dev);
struct ifnet *ifp;
struct mii_data *mii;
u_char eaddr[ETHER_ADDR_LEN];
int i, s;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
/* Move the device into the configured state. */
err = usbd_set_config_no(dev, URL_CONFIG_NO, 1);
diff --git a/sys/dev/usb/uaudio.c b/sys/dev/usb/uaudio.c
index ef62aa9245c..1c06cb7dccf 100644
--- a/sys/dev/usb/uaudio.c
+++ b/sys/dev/usb/uaudio.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uaudio.c,v 1.97 2005/02/24 08:19:38 martin Exp $ */
+/* $NetBSD: uaudio.c,v 1.98 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -44,7 +44,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uaudio.c,v 1.97 2005/02/24 08:19:38 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uaudio.c,v 1.98 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -388,12 +388,13 @@ USB_ATTACH(uaudio)
USB_ATTACH_START(uaudio, sc, uaa);
usb_interface_descriptor_t *id;
usb_config_descriptor_t *cdesc;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
int i, j, found;
- usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo));
- printf(": %s\n", devinfo);
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
+ printf(": %s\n", devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = uaa->device;
diff --git a/sys/dev/usb/ubsa.c b/sys/dev/usb/ubsa.c
index 8a5b0367c4e..5a8965f4639 100644
--- a/sys/dev/usb/ubsa.c
+++ b/sys/dev/usb/ubsa.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ubsa.c,v 1.11 2004/11/08 13:00:07 augustss Exp $ */
+/* $NetBSD: ubsa.c,v 1.12 2005/05/11 10:02:28 augustss Exp $ */
/*-
* Copyright (c) 2002, Alexander Kabaev <kan.FreeBSD.org>.
* All rights reserved.
@@ -61,7 +61,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ubsa.c,v 1.11 2004/11/08 13:00:07 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ubsa.c,v 1.12 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -255,15 +255,16 @@ USB_ATTACH(ubsa)
usb_config_descriptor_t *cdesc;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
const char *devname = USBDEVNAME(sc->sc_dev);
usbd_status err;
struct ucom_attach_args uca;
int i;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
- USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ devinfop = usbd_devinfo_alloc(dev, 0);
+ USB_ATTACH_SETUP;
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
@@ -274,8 +275,6 @@ USB_ATTACH(ubsa)
sc->sc_dtr = -1;
sc->sc_rts = -1;
- printf("%s: %s\n", devname, devinfo);
-
DPRINTF(("ubsa attach: sc = %p\n", sc));
/* initialize endpoints */
diff --git a/sys/dev/usb/ubt.c b/sys/dev/usb/ubt.c
index 01c93ca120a..d20ad88913f 100644
--- a/sys/dev/usb/ubt.c
+++ b/sys/dev/usb/ubt.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ubt.c,v 1.11 2004/04/23 17:25:25 itojun Exp $ */
+/* $NetBSD: ubt.c,v 1.12 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2002, 2003 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.11 2004/04/23 17:25:25 itojun Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.12 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -165,16 +165,17 @@ USB_ATTACH(ubt)
usbd_interface_handle iface = uaa->iface;
struct bt_attach_args bt;
usb_interface_descriptor_t const *id;
- char devinfo[1024];
+ char *devinfop;
usb_endpoint_descriptor_t const *ed;
u_int8_t epcount;
int i;
DPRINTFN(10,("ubt_attach: sc=%p\n", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
sc->sc_ctl_iface = iface;
diff --git a/sys/dev/usb/ubtbcmfw.c b/sys/dev/usb/ubtbcmfw.c
index 99b2ef67a43..c456f6028af 100644
--- a/sys/dev/usb/ubtbcmfw.c
+++ b/sys/dev/usb/ubtbcmfw.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ubtbcmfw.c,v 1.9 2004/09/17 14:11:24 skrll Exp $ */
+/* $NetBSD: ubtbcmfw.c,v 1.10 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ubtbcmfw.c,v 1.9 2004/09/17 14:11:24 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ubtbcmfw.c,v 1.10 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -107,16 +107,17 @@ USB_ATTACH(ubtbcmfw)
usbd_device_handle dev = uaa->device;
usbd_interface_handle iface;
usbd_status err;
- char devinfo[1024];
+ char *devinfop;
char name[256];
char buf[16];
usbd_pipe_handle intr_in_pipe;
usbd_pipe_handle bulk_out_pipe;
uint n;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/udsbr.c b/sys/dev/usb/udsbr.c
index ad7af3efa60..4ca934e6910 100644
--- a/sys/dev/usb/udsbr.c
+++ b/sys/dev/usb/udsbr.c
@@ -1,4 +1,4 @@
-/* $NetBSD: udsbr.c,v 1.9 2004/10/29 12:57:26 yamt Exp $ */
+/* $NetBSD: udsbr.c,v 1.10 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -45,7 +45,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: udsbr.c,v 1.9 2004/10/29 12:57:26 yamt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udsbr.c,v 1.10 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -124,14 +124,15 @@ USB_ATTACH(udsbr)
{
USB_ATTACH_START(udsbr, sc, uaa);
usbd_device_handle dev = uaa->device;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
DPRINTFN(10,("udsbr_attach: sc=%p\n", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, UDSBR_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/uep.c b/sys/dev/usb/uep.c
index 454aa54c658..bd76456fe54 100644
--- a/sys/dev/usb/uep.c
+++ b/sys/dev/usb/uep.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uep.c,v 1.3 2005/02/27 00:27:51 perry Exp $ */
+/* $NetBSD: uep.c,v 1.4 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2004 The NetBSD Foundation, Inc.
@@ -45,7 +45,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uep.c,v 1.3 2005/02/27 00:27:51 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uep.c,v 1.4 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -133,15 +133,14 @@ USB_ATTACH(uep)
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
struct wsmousedev_attach_args a;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
int i, found;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
-
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
-
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
sc->sc_intr_number = -1;
diff --git a/sys/dev/usb/uftdi.c b/sys/dev/usb/uftdi.c
index 11a3da9e899..10bda02d3bf 100644
--- a/sys/dev/usb/uftdi.c
+++ b/sys/dev/usb/uftdi.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uftdi.c,v 1.23 2004/11/05 13:53:29 scw Exp $ */
+/* $NetBSD: uftdi.c,v 1.24 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -46,7 +46,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uftdi.c,v 1.23 2004/11/05 13:53:29 scw Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uftdi.c,v 1.24 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -159,7 +159,7 @@ USB_ATTACH(uftdi)
usbd_interface_handle iface;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->sc_dev);
int i;
usbd_status err;
@@ -182,9 +182,10 @@ USB_ATTACH(uftdi)
goto bad;
}
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
id = usbd_get_interface_descriptor(iface);
diff --git a/sys/dev/usb/ugen.c b/sys/dev/usb/ugen.c
index 78adc56b1f8..ad85b24b8a1 100644
--- a/sys/dev/usb/ugen.c
+++ b/sys/dev/usb/ugen.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ugen.c,v 1.71 2005/03/02 11:37:27 mycroft Exp $ */
+/* $NetBSD: ugen.c,v 1.72 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1998, 2004 The NetBSD Foundation, Inc.
@@ -39,7 +39,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.71 2005/03/02 11:37:27 mycroft Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.72 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -202,13 +202,14 @@ USB_ATTACH(ugen)
{
USB_ATTACH_START(ugen, sc, uaa);
usbd_device_handle udev;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
int conf;
- usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = udev = uaa->device;
diff --git a/sys/dev/usb/ugensa.c b/sys/dev/usb/ugensa.c
index 51b0dd3693c..0dfc5165f63 100644
--- a/sys/dev/usb/ugensa.c
+++ b/sys/dev/usb/ugensa.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ugensa.c,v 1.2 2005/01/23 01:25:57 elric Exp $ */
+/* $NetBSD: ugensa.c,v 1.3 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2004, 2005 The NetBSD Foundation, Inc.
@@ -118,7 +118,7 @@ USB_ATTACH(ugensa)
usbd_interface_handle iface;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->sc_dev);
usbd_status err;
struct ucom_attach_args uca;
@@ -141,9 +141,10 @@ USB_ATTACH(ugensa)
goto bad;
}
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
id = usbd_get_interface_descriptor(iface);
diff --git a/sys/dev/usb/uhidev.c b/sys/dev/usb/uhidev.c
index 084f8f18ae9..2feba97188c 100644
--- a/sys/dev/usb/uhidev.c
+++ b/sys/dev/usb/uhidev.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uhidev.c,v 1.25 2005/05/08 06:19:10 skrll Exp $ */
+/* $NetBSD: uhidev.c,v 1.26 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -42,7 +42,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhidev.c,v 1.25 2005/05/08 06:19:10 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhidev.c,v 1.26 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -116,17 +116,19 @@ USB_ATTACH(uhidev)
void *desc;
const void *descptr;
usbd_status err;
- char devinfo[1024];
+ char *devinfop;
int help[2];
locdesc_t *ldesc = (void *)help; /* XXX */
sc->sc_udev = uaa->device;
sc->sc_iface = iface;
id = usbd_get_interface_descriptor(iface);
- usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo));
+
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
USB_ATTACH_SETUP;
printf("%s: %s, iclass %d/%d\n", USBDEVNAME(sc->sc_dev),
- devinfo, id->bInterfaceClass, id->bInterfaceSubClass);
+ devinfop, id->bInterfaceClass, id->bInterfaceSubClass);
+ usbd_devinfo_free(devinfop);
(void)usbd_set_idle(iface, 0, 0);
#if 0
diff --git a/sys/dev/usb/uhub.c b/sys/dev/usb/uhub.c
index 8611d22d33e..e99d5eb453f 100644
--- a/sys/dev/usb/uhub.c
+++ b/sys/dev/usb/uhub.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uhub.c,v 1.75 2005/04/30 20:54:13 augustss Exp $ */
+/* $NetBSD: uhub.c,v 1.76 2005/05/11 10:02:28 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/uhub.c,v 1.18 1999/11/17 22:33:43 n_hibma Exp $ */
/*
@@ -43,7 +43,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhub.c,v 1.75 2005/04/30 20:54:13 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhub.c,v 1.76 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -148,7 +148,7 @@ USB_ATTACH(uhub)
{
USB_ATTACH_START(uhub, sc, uaa);
usbd_device_handle dev = uaa->device;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
struct usbd_hub *hub = NULL;
usb_device_request_t req;
@@ -160,9 +160,11 @@ USB_ATTACH(uhub)
DPRINTFN(1,("uhub_attach\n"));
sc->sc_hub = dev;
- usbd_devinfo(dev, 1, devinfo, sizeof(devinfo));
+
+ devinfop = usbd_devinfo_alloc(dev, 1);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
if (dev->depth > 0 && UHUB_IS_HIGH_SPEED(sc)) {
printf("%s: %s transaction translator%s\n",
diff --git a/sys/dev/usb/uirda.c b/sys/dev/usb/uirda.c
index e56a70765f3..ba06aaabffd 100644
--- a/sys/dev/usb/uirda.c
+++ b/sys/dev/usb/uirda.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uirda.c,v 1.18 2004/10/23 13:28:26 augustss Exp $ */
+/* $NetBSD: uirda.c,v 1.19 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uirda.c,v 1.18 2004/10/23 13:28:26 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uirda.c,v 1.19 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -291,7 +291,7 @@ USB_ATTACH(uirda)
USB_ATTACH_START(uirda, sc, uaa);
usbd_device_handle dev = uaa->device;
usbd_interface_handle iface = uaa->iface;
- char devinfo[1024];
+ char *devinfop;
usb_endpoint_descriptor_t *ed;
usbd_status err;
u_int8_t epcount;
@@ -301,9 +301,10 @@ USB_ATTACH(uirda)
DPRINTFN(10,("uirda_attach: sc=%p\n", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
sc->sc_iface = iface;
diff --git a/sys/dev/usb/ulpt.c b/sys/dev/usb/ulpt.c
index 5707848b46d..5d3b7f7e099 100644
--- a/sys/dev/usb/ulpt.c
+++ b/sys/dev/usb/ulpt.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ulpt.c,v 1.66 2005/02/27 00:27:51 perry Exp $ */
+/* $NetBSD: ulpt.c,v 1.67 2005/05/11 10:02:28 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/ulpt.c,v 1.24 1999/11/17 22:33:44 n_hibma Exp $ */
/*
@@ -43,7 +43,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ulpt.c,v 1.66 2005/02/27 00:27:51 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ulpt.c,v 1.67 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -224,17 +224,19 @@ USB_ATTACH(ulpt)
usb_interface_descriptor_t *ifcd = usbd_get_interface_descriptor(iface);
usb_interface_descriptor_t *id;
usbd_status err;
- char devinfo[1024];
+ char *devinfop;
usb_endpoint_descriptor_t *ed;
u_int8_t epcount;
int i, altno;
usbd_desc_iter_t iter;
DPRINTFN(10,("ulpt_attach: sc=%p\n", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
printf("%s: %s, iclass %d/%d\n", USBDEVNAME(sc->sc_dev),
- devinfo, ifcd->bInterfaceClass, ifcd->bInterfaceSubClass);
+ devinfop, ifcd->bInterfaceClass, ifcd->bInterfaceSubClass);
+ usbd_devinfo_free(devinfop);
/* Loop through descriptors looking for a bidir mode. */
usb_desc_iter_init(dev, &iter);
diff --git a/sys/dev/usb/umass.c b/sys/dev/usb/umass.c
index a461cc23eb9..ebb49a2bdc1 100644
--- a/sys/dev/usb/umass.c
+++ b/sys/dev/usb/umass.c
@@ -1,4 +1,4 @@
-/* $NetBSD: umass.c,v 1.117 2004/12/28 23:35:21 nathanw Exp $ */
+/* $NetBSD: umass.c,v 1.118 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -131,7 +131,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.117 2004/12/28 23:35:21 nathanw Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.118 2005/05/11 10:02:28 augustss Exp $");
#include "atapibus.h"
#include "scsibus.h"
@@ -305,12 +305,14 @@ USB_ATTACH(umass)
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
const char *sWire, *sCommand;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
int i, bno, error;
- usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
USB_ATTACH_SETUP;
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = uaa->device;
sc->sc_iface = uaa->iface;
@@ -382,8 +384,6 @@ USB_ATTACH(umass)
}
}
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
-
switch (sc->sc_wire) {
case UMASS_WPROTO_CBI:
sWire = "CBI";
diff --git a/sys/dev/usb/umct.c b/sys/dev/usb/umct.c
index 0498a5c1e43..43c3839a74e 100644
--- a/sys/dev/usb/umct.c
+++ b/sys/dev/usb/umct.c
@@ -1,4 +1,4 @@
-/* $NetBSD: umct.c,v 1.15 2004/09/13 12:55:49 drochner Exp $ */
+/* $NetBSD: umct.c,v 1.16 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -42,7 +42,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umct.c,v 1.15 2004/09/13 12:55:49 drochner Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umct.c,v 1.16 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -177,15 +177,16 @@ USB_ATTACH(umct)
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->sc_dev);
usbd_status err;
int i;
struct ucom_attach_args uca;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
- USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ devinfop = usbd_devinfo_alloc(dev, 0);
+ USB_ATTACH_SETUP;
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
sc->sc_product = uaa->product;
diff --git a/sys/dev/usb/umidi.c b/sys/dev/usb/umidi.c
index f08862ba1e5..d919de74e53 100644
--- a/sys/dev/usb/umidi.c
+++ b/sys/dev/usb/umidi.c
@@ -1,4 +1,4 @@
-/* $NetBSD: umidi.c,v 1.22 2004/10/29 12:57:26 yamt Exp $ */
+/* $NetBSD: umidi.c,v 1.23 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umidi.c,v 1.22 2004/10/29 12:57:26 yamt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umidi.c,v 1.23 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -164,12 +164,13 @@ USB_ATTACH(umidi)
{
usbd_status err;
USB_ATTACH_START(umidi, sc, uaa);
- char devinfo[1024];
+ char *devinfop;
DPRINTFN(1,("umidi_attach\n"));
- usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo));
- printf("\n%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
+ printf("\n%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_iface = uaa->iface;
sc->sc_udev = uaa->device;
diff --git a/sys/dev/usb/umodem_common.c b/sys/dev/usb/umodem_common.c
index 2eeacced6b8..8194562e1d3 100644
--- a/sys/dev/usb/umodem_common.c
+++ b/sys/dev/usb/umodem_common.c
@@ -1,4 +1,4 @@
-/* $NetBSD: umodem_common.c,v 1.3 2005/04/15 15:08:34 itohy Exp $ */
+/* $NetBSD: umodem_common.c,v 1.4 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -51,7 +51,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umodem_common.c,v 1.3 2005/04/15 15:08:34 itohy Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umodem_common.c,v 1.4 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -112,12 +112,12 @@ umodem_common_attach(device_ptr_t self, struct umodem_softc *sc,
usbd_device_handle dev = uaa->device;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
int data_ifcno;
int i;
- usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
USB_ATTACH_SETUP;
sc->sc_udev = dev;
@@ -125,7 +125,8 @@ umodem_common_attach(device_ptr_t self, struct umodem_softc *sc,
id = usbd_get_interface_descriptor(sc->sc_ctl_iface);
printf("%s: %s, iclass %d/%d\n", USBDEVNAME(sc->sc_dev),
- devinfo, id->bInterfaceClass, id->bInterfaceSubClass);
+ devinfop, id->bInterfaceClass, id->bInterfaceSubClass);
+ usbd_devinfo_free(devinfop);
sc->sc_ctl_iface_no = id->bInterfaceNumber;
/* Get the data interface no. */
diff --git a/sys/dev/usb/uplcom.c b/sys/dev/usb/uplcom.c
index 08aff2aae48..282510d66b8 100644
--- a/sys/dev/usb/uplcom.c
+++ b/sys/dev/usb/uplcom.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uplcom.c,v 1.41 2004/10/23 14:20:50 augustss Exp $ */
+/* $NetBSD: uplcom.c,v 1.42 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uplcom.c,v 1.41 2004/10/23 14:20:50 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uplcom.c,v 1.42 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -209,16 +209,16 @@ USB_ATTACH(uplcom)
usb_config_descriptor_t *cdesc;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
-
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->sc_dev);
usbd_status err;
int i;
struct ucom_attach_args uca;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
- USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ devinfop = usbd_devinfo_alloc(dev, 0);
+ USB_ATTACH_SETUP;
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
diff --git a/sys/dev/usb/urio.c b/sys/dev/usb/urio.c
index 119478df81a..8c6b7a58ea4 100644
--- a/sys/dev/usb/urio.c
+++ b/sys/dev/usb/urio.c
@@ -1,4 +1,4 @@
-/* $NetBSD: urio.c,v 1.19 2004/04/23 17:25:26 itojun Exp $ */
+/* $NetBSD: urio.c,v 1.20 2005/05/11 10:02:28 augustss Exp $ */
/*
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -43,7 +43,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: urio.c,v 1.19 2004/04/23 17:25:26 itojun Exp $");
+__KERNEL_RCSID(0, "$NetBSD: urio.c,v 1.20 2005/05/11 10:02:28 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -167,7 +167,7 @@ USB_ATTACH(urio)
USB_ATTACH_START(urio, sc, uaa);
usbd_device_handle dev = uaa->device;
usbd_interface_handle iface;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
usb_endpoint_descriptor_t *ed;
u_int8_t epcount;
@@ -175,9 +175,10 @@ USB_ATTACH(urio)
DPRINTFN(10,("urio_attach: sc=%p\n", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, URIO_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/usb_subr.c b/sys/dev/usb/usb_subr.c
index 2b6c37b9429..c6f5077ee8f 100644
--- a/sys/dev/usb/usb_subr.c
+++ b/sys/dev/usb/usb_subr.c
@@ -1,4 +1,4 @@
-/* $NetBSD: usb_subr.c,v 1.123 2005/05/02 15:32:18 augustss Exp $ */
+/* $NetBSD: usb_subr.c,v 1.124 2005/05/11 10:02:29 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/usb_subr.c,v 1.18 1999/11/17 22:33:47 n_hibma Exp $ */
/*
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: usb_subr.c,v 1.123 2005/05/02 15:32:18 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: usb_subr.c,v 1.124 2005/05/11 10:02:29 augustss Exp $");
#include "opt_usbverbose.h"
@@ -80,7 +80,10 @@ extern int usbdebug;
#define DPRINTFN(n,x)
#endif
+#define DEVINFOSIZE 1024
+
Static usbd_status usbd_set_config(usbd_device_handle, int);
+Static void usbd_devinfo(usbd_device_handle, int, char *, size_t);
Static void usbd_devinfo_vp(usbd_device_handle dev,
char v[USB_MAX_ENCODED_STRING_LEN],
char p[USB_MAX_ENCODED_STRING_LEN], int usedev);
@@ -272,7 +275,7 @@ usbd_printBCD(char *cp, size_t l, int bcd)
return (snprintf(cp, l, "%x.%02x", bcd >> 8, bcd & 0xff));
}
-void
+Static void
usbd_devinfo(usbd_device_handle dev, int showclass, char *cp, size_t l)
{
usb_device_descriptor_t *udd = &dev->ddesc;
@@ -298,6 +301,22 @@ usbd_devinfo(usbd_device_handle dev, int showclass, char *cp, size_t l)
*cp = 0;
}
+char *
+usbd_devinfo_alloc(usbd_device_handle dev, int showclass)
+{
+ char *devinfop;
+
+ devinfop = malloc(DEVINFOSIZE, M_TEMP, M_WAITOK);
+ usbd_devinfo(dev, showclass, devinfop, DEVINFOSIZE);
+ return devinfop;
+}
+
+void
+usbd_devinfo_free(char *devinfop)
+{
+ free(devinfop, M_TEMP);
+}
+
/* Delay for a certain number of ms */
void
usb_delay_ms(usbd_bus_handle bus, u_int ms)
diff --git a/sys/dev/usb/usbdi.h b/sys/dev/usb/usbdi.h
index 677ba1a4976..9131955e3a9 100644
--- a/sys/dev/usb/usbdi.h
+++ b/sys/dev/usb/usbdi.h
@@ -1,4 +1,4 @@
-/* $NetBSD: usbdi.h,v 1.64 2004/10/23 13:26:34 augustss Exp $ */
+/* $NetBSD: usbdi.h,v 1.65 2005/05/11 10:02:29 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/usbdi.h,v 1.18 1999/11/17 22:33:49 n_hibma Exp $ */
/*
@@ -163,7 +163,9 @@ const char *usbd_errstr(usbd_status);
void usbd_add_dev_event(int, usbd_device_handle);
void usbd_add_drv_event(int, usbd_device_handle, device_ptr_t);
-void usbd_devinfo(usbd_device_handle, int, char *, size_t);
+char *usbd_devinfo_alloc(usbd_device_handle dev, int showclass);
+void usbd_devinfo_free(char *devinfop);
+
const struct usbd_quirks *usbd_get_quirks(usbd_device_handle);
usb_endpoint_descriptor_t *usbd_get_endpoint_descriptor
(usbd_interface_handle, u_int8_t);
diff --git a/sys/dev/usb/uscanner.c b/sys/dev/usb/uscanner.c
index 7218e18d4fa..77fd99eb09a 100644
--- a/sys/dev/usb/uscanner.c
+++ b/sys/dev/usb/uscanner.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uscanner.c,v 1.47 2005/02/27 00:27:51 perry Exp $ */
+/* $NetBSD: uscanner.c,v 1.48 2005/05/11 10:02:29 augustss Exp $ */
/*
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uscanner.c,v 1.47 2005/02/27 00:27:51 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uscanner.c,v 1.48 2005/05/11 10:02:29 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -320,13 +320,14 @@ USB_ATTACH(uscanner)
USB_ATTACH_START(uscanner, sc, uaa);
usb_interface_descriptor_t *id = 0;
usb_endpoint_descriptor_t *ed, *ed_bulkin = NULL, *ed_bulkout = NULL;
- char devinfo[1024];
+ char *devinfop;
int i;
usbd_status err;
- usbd_devinfo(uaa->device, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(uaa->device, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_dev_flags = uscanner_lookup(uaa->vendor, uaa->product)->flags;
diff --git a/sys/dev/usb/usscanner.c b/sys/dev/usb/usscanner.c
index 892b09b4270..f2cf565567c 100644
--- a/sys/dev/usb/usscanner.c
+++ b/sys/dev/usb/usscanner.c
@@ -1,4 +1,4 @@
-/* $NetBSD: usscanner.c,v 1.16 2005/04/29 17:52:46 augustss Exp $ */
+/* $NetBSD: usscanner.c,v 1.17 2005/05/11 10:02:29 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -54,7 +54,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: usscanner.c,v 1.16 2005/04/29 17:52:46 augustss Exp $");
+__KERNEL_RCSID(0, "$NetBSD: usscanner.c,v 1.17 2005/05/11 10:02:29 augustss Exp $");
#include "scsibus.h"
#include <sys/param.h>
@@ -175,7 +175,7 @@ USB_ATTACH(usscanner)
USB_ATTACH_START(usscanner, sc, uaa);
usbd_device_handle dev = uaa->device;
usbd_interface_handle iface;
- char devinfo[1024];
+ char *devinfop;
usbd_status err;
usb_endpoint_descriptor_t *ed;
u_int8_t epcount;
@@ -183,9 +183,10 @@ USB_ATTACH(usscanner)
DPRINTFN(10,("usscanner_attach: sc=%p\n", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
err = usbd_set_config_no(dev, USSCANNER_CONFIG_NO, 1);
if (err) {
diff --git a/sys/dev/usb/ustir.c b/sys/dev/usb/ustir.c
index b038dac57ad..4d53f3af505 100644
--- a/sys/dev/usb/ustir.c
+++ b/sys/dev/usb/ustir.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ustir.c,v 1.13 2004/04/23 17:25:27 itojun Exp $ */
+/* $NetBSD: ustir.c,v 1.14 2005/05/11 10:02:29 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ustir.c,v 1.13 2004/04/23 17:25:27 itojun Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ustir.c,v 1.14 2005/05/11 10:02:29 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -311,7 +311,7 @@ USB_ATTACH(ustir)
USB_ATTACH_START(ustir, sc, uaa);
usbd_device_handle dev = uaa->device;
usbd_interface_handle iface = uaa->iface;
- char devinfo[1024];
+ char *devinfop;
usb_endpoint_descriptor_t *ed;
u_int8_t epcount;
int i;
@@ -319,9 +319,10 @@ USB_ATTACH(ustir)
DPRINTFN(10,("ustir_attach: sc=%p\n", sc));
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
sc->sc_iface = iface;
diff --git a/sys/dev/usb/uvisor.c b/sys/dev/usb/uvisor.c
index f44ec9c44a9..8cf55d8a040 100644
--- a/sys/dev/usb/uvisor.c
+++ b/sys/dev/usb/uvisor.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uvisor.c,v 1.28 2005/02/27 00:27:51 perry Exp $ */
+/* $NetBSD: uvisor.c,v 1.29 2005/05/11 10:02:29 augustss Exp $ */
/*
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -42,7 +42,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvisor.c,v 1.28 2005/02/27 00:27:51 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvisor.c,v 1.29 2005/05/11 10:02:29 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -222,7 +222,7 @@ USB_ATTACH(uvisor)
struct uvisor_connection_info coninfo;
struct uvisor_palm_connection_info palmconinfo;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
char *devname = USBDEVNAME(sc->sc_dev);
int i, j, hasin, hasout, port;
usbd_status err;
@@ -245,9 +245,10 @@ USB_ATTACH(uvisor)
goto bad;
}
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_flags = uvisor_lookup(uaa->vendor, uaa->product)->uv_flags;
diff --git a/sys/dev/usb/uvscom.c b/sys/dev/usb/uvscom.c
index 049e89b49ee..b0c751a1499 100644
--- a/sys/dev/usb/uvscom.c
+++ b/sys/dev/usb/uvscom.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uvscom.c,v 1.14 2005/02/16 07:52:47 martin Exp $ */
+/* $NetBSD: uvscom.c,v 1.15 2005/05/11 10:02:29 augustss Exp $ */
/*-
* Copyright (c) 2001-2002, Shunsuke Akiyama <akiyama@jp.FreeBSD.org>.
* All rights reserved.
@@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvscom.c,v 1.14 2005/02/16 07:52:47 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvscom.c,v 1.15 2005/05/11 10:02:29 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -276,15 +276,16 @@ USB_ATTACH(uvscom)
usb_config_descriptor_t *cdesc;
usb_interface_descriptor_t *id;
usb_endpoint_descriptor_t *ed;
- char devinfo[1024];
+ char *devinfop;
const char *devname = USBDEVNAME(sc->sc_dev);
usbd_status err;
int i;
struct ucom_attach_args uca;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", devname, devinfo);
+ printf("%s: %s\n", devname, devinfop);
+ usbd_devinfo_free(devinfop);
sc->sc_udev = dev;
diff --git a/sys/dev/usb/uyap.c b/sys/dev/usb/uyap.c
index c5a53b72d7e..aa356f5e0b1 100644
--- a/sys/dev/usb/uyap.c
+++ b/sys/dev/usb/uyap.c
@@ -1,4 +1,4 @@
-/* $NetBSD: uyap.c,v 1.7 2004/04/23 17:25:27 itojun Exp $ */
+/* $NetBSD: uyap.c,v 1.8 2005/05/11 10:02:29 augustss Exp $ */
/*
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uyap.c,v 1.7 2004/04/23 17:25:27 itojun Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uyap.c,v 1.8 2005/05/11 10:02:29 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -83,11 +83,13 @@ USB_ATTACH(uyap)
USB_ATTACH_START(uyap, sc, uaa);
usbd_device_handle dev = uaa->device;
usbd_status err;
- char devinfo[1024];
+ char *devinfop;
- usbd_devinfo(dev, 0, devinfo, sizeof(devinfo));
+ devinfop = usbd_devinfo_alloc(dev, 0);
USB_ATTACH_SETUP;
- printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo);
+ printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfop);
+ usbd_devinfo_free(devinfop);
+
printf("%s: downloading firmware\n", USBDEVNAME(sc->sc_dev));
err = ezload_downloads_and_reset(dev, uyap_firmwares);