diff options
| author | Chris Lumens <clumens@redhat.com> | 2008-09-11 17:53:17 -0400 |
|---|---|---|
| committer | Chris Lumens <clumens@redhat.com> | 2008-09-11 18:54:22 -0400 |
| commit | d4db02eb8d7f87a5c487b97ee3692fdcdebf9fcb (patch) | |
| tree | 403bf5fd1ca61a44b52f0bfe064cbffc3408d15b /loader | |
| parent | 6ba27da62255443446b288f8e042addf19d7815e (diff) | |
Always start NM so we can talk to it in the boot.iso case (#461071).
Diffstat (limited to 'loader')
| -rw-r--r-- | loader/loader.c | 21 | ||||
| -rw-r--r-- | loader/net.c | 14 |
2 files changed, 23 insertions, 12 deletions
diff --git a/loader/loader.c b/loader/loader.c index 607f1f030..9b524e15a 100644 --- a/loader/loader.c +++ b/loader/loader.c @@ -1204,6 +1204,10 @@ static char *doLoaderMain(struct loaderData_s *loaderData, int needsNetwork = 0, class = -1; int skipMethodDialog = 0, skipLangKbd = 0; + char *error_str = NULL; + DBusError error; + DBusConnection *connection = NULL; + char *installNames[10]; int numValidMethods = 0; int validMethods[10]; @@ -1268,6 +1272,23 @@ static char *doLoaderMain(struct loaderData_s *loaderData, logMessage(ERROR, "writeDisabledNetInfo failure: %d", i); } + /* Start NetworkManager now so it's always available to talk to. */ + dbus_error_init(&error); + connection = dbus_bus_get(DBUS_BUS_SYSTEM, &error); + if (connection == NULL) { + if (dbus_error_is_set(&error)) { + logMessage(DEBUGLVL, "%s (%d): %s: %s", __func__, + __LINE__, error.name, error.message); + dbus_error_free(&error); + } + } else { + rc = iface_start_NetworkManager(connection, &error_str); + if (rc != 0) { + logMessage(INFO, "failed to start NetworkManager (%d): error %d (%s)", + __LINE__, rc, error_str ? error_str : "unknown"); + } + } + i = 0; step = STEP_LANG; diff --git a/loader/net.c b/loader/net.c index 3dd7fe9c9..3659cb661 100644 --- a/loader/net.c +++ b/loader/net.c @@ -1730,13 +1730,13 @@ int get_connection(iface_t *iface) { dbus_uint32_t state = 0; char *nm_iface = "org.freedesktop.NetworkManager"; char *property = "State"; - int ret; - char *error_str = NULL; if (iface == NULL) { return 1; } + logMessage(DEBUGLVL, "configuring device %s", iface->device); + /* display status */ if (FL_CMDLINE(flags)) { printf(_("Waiting for NetworkManager to configure %s...\n"), @@ -1759,16 +1759,6 @@ int get_connection(iface_t *iface) { return 2; } - /* start NetworkManager for configured interface */ - logMessage(INFO, "starting NetworkManager (%d) for %s", __LINE__, - iface->device); - ret = iface_start_NetworkManager(connection, &error_str); - if (ret != 0) { - logMessage(INFO, "failed to start NetworkManager (%d) for %s: error %d (%s)", - __LINE__, iface->device, ret, error_str ? error_str : "unknown"); - return 3; - } - dbus_error_init(&error); message = dbus_message_new_method_call(NM_DBUS_SERVICE, NM_DBUS_PATH, |
