From 380f2bb8deeb50eb00a58ab2be4326b5617d3415 Mon Sep 17 00:00:00 2001 From: sephe Date: Tue, 14 Aug 2007 15:32:32 +0000 Subject: [PATCH] - Overlooked pccard dark corner: NIC lan id should be returned by reference. - Const-fy pccard_get_ether() return value. Reported-by: EJHaug --- sys/bus/pccard/pccard.c | 4 ++-- sys/bus/pccard/pccardvar.h | 4 ++-- sys/dev/netif/ed/if_ed_pccard.c | 4 ++-- sys/dev/netif/ex/if_ex_pccard.c | 4 ++-- sys/dev/netif/fe/if_fe_pccard.c | 4 ++-- sys/dev/netif/sn/if_sn_pccard.c | 4 ++-- sys/dev/netif/xe/if_xe_pccard.c | 4 ++-- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/sys/bus/pccard/pccard.c b/sys/bus/pccard/pccard.c index 8edd2764d9..ca80c92e9b 100644 --- a/sys/bus/pccard/pccard.c +++ b/sys/bus/pccard/pccard.c @@ -29,7 +29,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * $FreeBSD: src/sys/dev/pccard/pccard.c,v 1.108 2005/07/15 01:43:08 imp Exp $ - * $DragonFly: src/sys/bus/pccard/pccard.c,v 1.20 2007/07/05 12:08:53 sephe Exp $ + * $DragonFly: src/sys/bus/pccard/pccard.c,v 1.21 2007/08/14 15:32:32 sephe Exp $ */ #include @@ -1036,7 +1036,7 @@ pccard_read_ivar(device_t bus, device_t child, int which, u_char *result) default: return (EINVAL); case PCCARD_IVAR_ETHADDR: - bcopy(pf->pf_funce_lan_nid, result, ETHER_ADDR_LEN); + *(const uint8_t **)result = pf->pf_funce_lan_nid; break; case PCCARD_IVAR_VENDOR: *(uint32_t *)result = sc->card.manufacturer; diff --git a/sys/bus/pccard/pccardvar.h b/sys/bus/pccard/pccardvar.h index cb8dbc0ad8..1ee97ea8fe 100644 --- a/sys/bus/pccard/pccardvar.h +++ b/sys/bus/pccard/pccardvar.h @@ -1,6 +1,6 @@ /* $NetBSD: pcmciavar.h,v 1.12 2000/02/08 12:51:31 enami Exp $ */ /* $FreeBSD: src/sys/dev/pccard/pccardvar.h,v 1.54 2005/07/13 15:00:59 imp Exp $ */ -/* $DragonFly: src/sys/bus/pccard/pccardvar.h,v 1.7 2007/07/05 12:08:53 sephe Exp $ */ +/* $DragonFly: src/sys/bus/pccard/pccardvar.h,v 1.8 2007/08/14 15:32:32 sephe Exp $ */ /*- * Copyright (c) 1997 Marc Horowitz. All rights reserved. @@ -346,7 +346,7 @@ pccard_get_ ## A(device_t dev) \ return (T)v; \ } -PCCARD_ACCESSOR(ether, ETHADDR, uint8_t *) +PCCARD_ACCESSOR(ether, ETHADDR, const uint8_t *) PCCARD_ACCESSOR(vendor, VENDOR, uint32_t) PCCARD_ACCESSOR(product, PRODUCT, uint32_t) PCCARD_ACCESSOR(prodext, PRODEXT, uint16_t) diff --git a/sys/dev/netif/ed/if_ed_pccard.c b/sys/dev/netif/ed/if_ed_pccard.c index 8cb09211bf..25017e5f3e 100644 --- a/sys/dev/netif/ed/if_ed_pccard.c +++ b/sys/dev/netif/ed/if_ed_pccard.c @@ -25,7 +25,7 @@ * SUCH DAMAGE. * * $FreeBSD: src/sys/dev/ed/if_ed_pccard.c,v 1.55 2003/12/31 04:25:00 kato Exp $ - * $DragonFly: src/sys/dev/netif/ed/if_ed_pccard.c,v 1.19 2007/07/05 12:08:53 sephe Exp $ + * $DragonFly: src/sys/dev/netif/ed/if_ed_pccard.c,v 1.20 2007/08/14 15:32:32 sephe Exp $ */ #include "opt_ed.h" @@ -253,7 +253,7 @@ ed_pccard_attach(device_t dev) int error; int i; uint8_t sum; - uint8_t *ether_addr; + const uint8_t *ether_addr; if (sc->port_used > 0) ed_alloc_port(dev, sc->port_rid, sc->port_used); diff --git a/sys/dev/netif/ex/if_ex_pccard.c b/sys/dev/netif/ex/if_ex_pccard.c index dcba635881..6865afcf80 100644 --- a/sys/dev/netif/ex/if_ex_pccard.c +++ b/sys/dev/netif/ex/if_ex_pccard.c @@ -24,7 +24,7 @@ * SUCH DAMAGE. * * $FreeBSD: src/sys/dev/ex/if_ex_pccard.c,v 1.2.2.1 2001/03/05 05:33:20 imp Exp $ - * $DragonFly: src/sys/dev/netif/ex/if_ex_pccard.c,v 1.13 2006/12/22 23:26:19 swildner Exp $ + * $DragonFly: src/sys/dev/netif/ex/if_ex_pccard.c,v 1.14 2007/08/14 15:32:32 sephe Exp $ */ #include @@ -128,7 +128,7 @@ ex_pccard_attach(device_t dev) int error = 0; int i; uint8_t sum; - uint8_t * ether_addr; + const uint8_t * ether_addr; sc->dev = dev; sc->ioport_rid = 0; diff --git a/sys/dev/netif/fe/if_fe_pccard.c b/sys/dev/netif/fe/if_fe_pccard.c index a5d77319aa..8b1efdac59 100644 --- a/sys/dev/netif/fe/if_fe_pccard.c +++ b/sys/dev/netif/fe/if_fe_pccard.c @@ -20,7 +20,7 @@ * SUCH DAMAGE. * * $FreeBSD: src/sys/dev/fe/if_fe_pccard.c,v 1.2.2.1 2000/09/22 10:01:47 nyan Exp $ - * $DragonFly: src/sys/dev/netif/fe/if_fe_pccard.c,v 1.13 2007/07/05 12:08:53 sephe Exp $ + * $DragonFly: src/sys/dev/netif/fe/if_fe_pccard.c,v 1.14 2007/08/14 15:32:32 sephe Exp $ */ #include "opt_fe.h" @@ -126,7 +126,7 @@ fe_pccard_probe(device_t dev) struct fe_softc *sc; int i, error; uint8_t sum; - uint8_t *ether_addr; + const uint8_t *ether_addr; /* Prepare for the device probe process. */ sc = device_get_softc(dev); diff --git a/sys/dev/netif/sn/if_sn_pccard.c b/sys/dev/netif/sn/if_sn_pccard.c index 0e312d0f07..5064a4505c 100644 --- a/sys/dev/netif/sn/if_sn_pccard.c +++ b/sys/dev/netif/sn/if_sn_pccard.c @@ -23,7 +23,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * $FreeBSD: src/sys/dev/sn/if_sn_pccard.c,v 1.3.2.2 2001/01/25 19:40:27 imp Exp $ - * $DragonFly: src/sys/dev/netif/sn/if_sn_pccard.c,v 1.8 2006/10/25 20:55:59 dillon Exp $ + * $DragonFly: src/sys/dev/netif/sn/if_sn_pccard.c,v 1.9 2007/08/14 15:32:32 sephe Exp $ */ /* @@ -93,7 +93,7 @@ sn_pccard_attach(device_t dev) struct sn_softc *sc = device_get_softc(dev); int i; uint8_t sum; - uint8_t *ether_addr; + const uint8_t *ether_addr; sc->pccard_enaddr = 0; ether_addr = pccard_get_ether(dev); diff --git a/sys/dev/netif/xe/if_xe_pccard.c b/sys/dev/netif/xe/if_xe_pccard.c index 5c6c41ffd4..f3588eb5d0 100644 --- a/sys/dev/netif/xe/if_xe_pccard.c +++ b/sys/dev/netif/xe/if_xe_pccard.c @@ -26,7 +26,7 @@ * xe pccard interface driver * * $FreeBSD: src/sys/dev/xe/if_xe_pccard.c,v 1.11 2003/10/14 22:51:35 rsm Exp $ - * $DragonFly: src/sys/dev/netif/xe/if_xe_pccard.c,v 1.4 2007/07/05 12:08:53 sephe Exp $ + * $DragonFly: src/sys/dev/netif/xe/if_xe_pccard.c,v 1.5 2007/08/14 15:32:32 sephe Exp $ */ #include @@ -248,7 +248,7 @@ xe_pccard_probe(device_t dev) struct xe_softc *scp = device_get_softc(dev); uint32_t vendor, product, prod; uint16_t prodext; - uint8_t *ether_addr; + const uint8_t *ether_addr; const char *cis3_str=NULL; struct xe_vendor *vendor_itm; struct xe_card_type *card_itm; -- 2.11.4.GIT