aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Sinkovsky <msink@permonline.ru>2012-04-10 15:53:53 -0400
committerDavid S. Miller <davem@davemloft.net>2012-04-13 13:34:12 -0400
commit77577bf93275b485cecb4f358a085949c32e9dcd (patch)
tree3e65e14eccd1e5c61a2ed78da03031d30308da56
parent9b17876f3e674a794a2d83aa47a9b356d36b7418 (diff)
net: WIZnet drivers: fix possible NULL dereference
This fixes possible null dereference in probe() function: when both .mac_addr and .link_gpio are unknown, dev.platform_data may be NULL Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mike Sinkovsky <msink@permonline.ru> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/wiznet/w5100.c2
-rw-r--r--drivers/net/ethernet/wiznet/w5300.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/wiznet/w5100.c b/drivers/net/ethernet/wiznet/w5100.c
index 18c80982fc6c..a75e9ef5a4ce 100644
--- a/drivers/net/ethernet/wiznet/w5100.c
+++ b/drivers/net/ethernet/wiznet/w5100.c
@@ -682,7 +682,7 @@ static int __devinit w5100_hw_probe(struct platform_device *pdev)
682 return ret; 682 return ret;
683 priv->irq = irq; 683 priv->irq = irq;
684 684
685 priv->link_gpio = data->link_gpio; 685 priv->link_gpio = data ? data->link_gpio : -EINVAL;
686 if (gpio_is_valid(priv->link_gpio)) { 686 if (gpio_is_valid(priv->link_gpio)) {
687 char *link_name = devm_kzalloc(&pdev->dev, 16, GFP_KERNEL); 687 char *link_name = devm_kzalloc(&pdev->dev, 16, GFP_KERNEL);
688 if (!link_name) 688 if (!link_name)
diff --git a/drivers/net/ethernet/wiznet/w5300.c b/drivers/net/ethernet/wiznet/w5300.c
index f36addf9d2f6..3306a20ec211 100644
--- a/drivers/net/ethernet/wiznet/w5300.c
+++ b/drivers/net/ethernet/wiznet/w5300.c
@@ -594,7 +594,7 @@ static int __devinit w5300_hw_probe(struct platform_device *pdev)
594 return ret; 594 return ret;
595 priv->irq = irq; 595 priv->irq = irq;
596 596
597 priv->link_gpio = data->link_gpio; 597 priv->link_gpio = data ? data->link_gpio : -EINVAL;
598 if (gpio_is_valid(priv->link_gpio)) { 598 if (gpio_is_valid(priv->link_gpio)) {
599 char *link_name = devm_kzalloc(&pdev->dev, 16, GFP_KERNEL); 599 char *link_name = devm_kzalloc(&pdev->dev, 16, GFP_KERNEL);
600 if (!link_name) 600 if (!link_name)