summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--loader/loader.c8
-rw-r--r--loader/net.c2
2 files changed, 6 insertions, 4 deletions
diff --git a/loader/loader.c b/loader/loader.c
index c28218cf9..b10b22eba 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -1517,12 +1517,15 @@ static char *doLoaderMain(struct loaderData_s *loaderData,
}
/* populate netDev based on any kickstart data */
- if (loaderData->ipinfo_set) {
+ if (loaderData->ipinfo_set && dir != -1) {
iface.flags |= IFACE_FLAGS_IS_PRESET;
+ } else {
+ iface.flags &= ~IFACE_FLAGS_IS_PRESET;
}
- setupIfaceStruct(&iface, loaderData);
+ setupIfaceStruct(&iface, loaderData);
rc = readNetConfig(devName, &iface, loaderData->netCls, loaderData->method);
+
if (FL_NOIPV4(flags)) {
loaderData->ipinfo_set = 0;
} else {
@@ -1583,6 +1586,7 @@ static char *doLoaderMain(struct loaderData_s *loaderData,
if ((rc == LOADER_BACK) || (rc == LOADER_ERROR) ||
((dir == -1) && (rc == LOADER_NOOP))) {
+ needsNetwork = 1;
step = STEP_IFACE;
dir = -1;
break;
diff --git a/loader/net.c b/loader/net.c
index 3ad07e5f5..61d7a77d0 100644
--- a/loader/net.c
+++ b/loader/net.c
@@ -283,8 +283,6 @@ void setupIfaceStruct(iface_t * iface, struct loaderData_s * loaderData) {
}
#endif
- /* FIXME: add support for loaderData->gateway6 */
-
if (loaderData->dns) {
char * buf;
char ret[INET6_ADDRSTRLEN+1];