tree 3582ea805d0153b42979bdc8315c68607db928b6
parent a8eef8a22232e64be76410100c52038b21bda7ed
author Jouni Malinen <[EMAIL PROTECTED]> Mon, 29 Aug 2005 07:53:32 -0700
committer Jeff Garzik <[EMAIL PROTECTED]> Thu, 01 Sep 2005 06:48:39 -0400

[PATCH] hostap: Fix null pointer dereference in prism2_pccard_card_present()

local->hw_priv was initialized only after the interrupt handler was
registered. This could trigger a NULL pointer dereference in
prism2_pccard_card_present() that assumed that local->hw_priv is always
set (and it should have been). Fix this by setting local->hw_priv before
registering the interrupt handler.

Signed-off-by: Jouni Malinen <[EMAIL PROTECTED]>
Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>

 drivers/net/wireless/hostap/hostap_cs.c |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/net/wireless/hostap/hostap_cs.c 
b/drivers/net/wireless/hostap/hostap_cs.c
--- a/drivers/net/wireless/hostap/hostap_cs.c
+++ b/drivers/net/wireless/hostap/hostap_cs.c
@@ -772,6 +772,13 @@ static int prism2_config(dev_link_t *lin
                goto failed;
        link->priv = dev;
 
+       iface = netdev_priv(dev);
+       local = iface->local;
+       local->hw_priv = hw_priv;
+       hw_priv->link = link;
+       strcpy(hw_priv->node.dev_name, dev->name);
+       link->dev = &hw_priv->node;
+
        /*
         * Allocate an interrupt line.  Note that this does not assign a
         * handler to the interrupt, unless the 'Handler' member of the
@@ -817,13 +824,6 @@ static int prism2_config(dev_link_t *lin
        link->state |= DEV_CONFIG;
        link->state &= ~DEV_CONFIG_PENDING;
 
-       iface = netdev_priv(dev);
-       local = iface->local;
-       local->hw_priv = hw_priv;
-       hw_priv->link = link;
-       strcpy(hw_priv->node.dev_name, dev->name);
-       link->dev = &hw_priv->node;
-
        local->shutdown = 0;
 
        sandisk_enable_wireless(dev);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to