From 7a4a20f30e85a00b25b238143e1ca2f76871f05d Mon Sep 17 00:00:00 2001 From: Olivier Blin Date: Wed, 20 Apr 2005 21:59:54 +0000 Subject: initial wireless support (needs ESSID, and optionally a WEP key) --- mdk-stage1/network.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'mdk-stage1/network.c') diff --git a/mdk-stage1/network.c b/mdk-stage1/network.c index a3ff5e696..351edc8d3 100644 --- a/mdk-stage1/network.c +++ b/mdk-stage1/network.c @@ -46,6 +46,7 @@ #include "network.h" #include "directory.h" +#include "wireless.h" /* include it after config-stage1.h so that _GNU_SOURCE is defined and strndup is available */ #include @@ -558,17 +559,27 @@ static enum return_type configure_network(struct interface_info * intf) static enum return_type bringup_networking(struct interface_info * intf) { static struct interface_info loopback; - enum return_type results = RETURN_ERROR; + enum return_type results; my_insmod("af_packet", ANY_DRIVER_TYPE, NULL, 1); - while (results != RETURN_OK) { + do { + results = configure_wireless(intf->device); + } while (results == RETURN_ERROR); + + if (results == RETURN_BACK) + return RETURN_BACK; + + do { results = setup_network_interface(intf); if (results != RETURN_OK) return results; write_resolvconf(); results = configure_network(intf); - } + } while (results == RETURN_ERROR); + + if (results == RETURN_BACK) + return bringup_networking(intf); write_resolvconf(); /* maybe we have now domain to write also */ -- cgit v1.2.1