net: lwip: check if network device is available in do_dhcp

eth_get_dev() returns NULL if no network device is available.
Not checking the return value leads to a crash when the device
pointer is dereferenced.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
diff --git a/net/lwip/dhcp.c b/net/lwip/dhcp.c
index 9b882cf..e7d9147 100644
--- a/net/lwip/dhcp.c
+++ b/net/lwip/dhcp.c
@@ -3,6 +3,7 @@
 
 #include <command.h>
 #include <console.h>
+#include <log.h>
 #include <dm/device.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
@@ -112,10 +113,17 @@
 int do_dhcp(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 {
 	int ret;
+	struct udevice *dev;
 
 	eth_set_current();
 
-	ret = dhcp_loop(eth_get_dev());
+	dev = eth_get_dev();
+	if (!dev) {
+		log_err("No network device\n");
+		return CMD_RET_FAILURE;
+	}
+
+	ret = dhcp_loop(dev);
 	if (ret)
 		return ret;