Oops, 16 is not enough to store the firmware filenames, use 24.

This commit is contained in:
rpaulo 2006-04-17 19:06:51 +00:00
parent 7700866e01
commit 3f57889bb2
2 changed files with 8 additions and 8 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: if_ipw.c,v 1.17 2006/04/17 17:29:08 rpaulo Exp $ */ /* $NetBSD: if_ipw.c,v 1.18 2006/04/17 19:06:51 rpaulo Exp $ */
/* FreeBSD: src/sys/dev/ipw/if_ipw.c,v 1.15 2005/11/13 17:17:40 damien Exp */ /* FreeBSD: src/sys/dev/ipw/if_ipw.c,v 1.15 2005/11/13 17:17:40 damien Exp */
/*- /*-
@ -29,7 +29,7 @@
*/ */
#include <sys/cdefs.h> #include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: if_ipw.c,v 1.17 2006/04/17 17:29:08 rpaulo Exp $"); __KERNEL_RCSID(0, "$NetBSD: if_ipw.c,v 1.18 2006/04/17 19:06:51 rpaulo Exp $");
/*- /*-
* Intel(R) PRO/Wireless 2100 MiniPCI driver * Intel(R) PRO/Wireless 2100 MiniPCI driver
@ -220,7 +220,7 @@ ipw_attach(struct device *parent, struct device *self, void *aux)
sc->sc_st = memt; sc->sc_st = memt;
sc->sc_sh = memh; sc->sc_sh = memh;
sc->sc_dmat = pa->pa_dmat; sc->sc_dmat = pa->pa_dmat;
strncpy(sc->sc_fwname, "ipw2100-1.2.fw", 16); strncpy(sc->sc_fwname, "ipw2100-1.2.fw", 24);
/* disable interrupts */ /* disable interrupts */
CSR_WRITE_4(sc, IPW_CSR_INTR_MASK, 0); CSR_WRITE_4(sc, IPW_CSR_INTR_MASK, 0);
@ -1750,11 +1750,11 @@ ipw_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data)
case SIOCSIFMEDIA: case SIOCSIFMEDIA:
if (ifr->ifr_media & IFM_IEEE80211_ADHOC) if (ifr->ifr_media & IFM_IEEE80211_ADHOC)
strncpy(sc->sc_fwname, "ipw2100-1.2-i.fw", 16); strncpy(sc->sc_fwname, "ipw2100-1.2-i.fw", 24);
else if (ifr->ifr_media & IFM_IEEE80211_MONITOR) else if (ifr->ifr_media & IFM_IEEE80211_MONITOR)
strncpy(sc->sc_fwname, "ipw2100-1.2-p.fw", 16); strncpy(sc->sc_fwname, "ipw2100-1.2-p.fw", 24);
else else
strncpy(sc->sc_fwname, "ipw2100-1.2.fw", 16); strncpy(sc->sc_fwname, "ipw2100-1.2.fw", 24);
ipw_free_firmware(sc); ipw_free_firmware(sc);
/* FALLTRHOUGH */ /* FALLTRHOUGH */

View File

@ -1,4 +1,4 @@
/* $NetBSD: if_ipwvar.h,v 1.9 2006/04/17 17:29:08 rpaulo Exp $ */ /* $NetBSD: if_ipwvar.h,v 1.10 2006/04/17 19:06:51 rpaulo Exp $ */
/*- /*-
* Copyright (c) 2004 * Copyright (c) 2004
@ -93,7 +93,7 @@ struct ipw_softc {
enum ieee80211_state, int); enum ieee80211_state, int);
struct ipw_firmware fw; struct ipw_firmware fw;
char sc_fwname[16]; char sc_fwname[24];
uint32_t flags; uint32_t flags;
#define IPW_FLAG_FW_CACHED (1 << 0) #define IPW_FLAG_FW_CACHED (1 << 0)
#define IPW_FLAG_FW_INITED (1 << 1) #define IPW_FLAG_FW_INITED (1 << 1)