I made the following changes.

1. NetworkManager.c -- I moved the daemonizing code to the top of the file, right after the parsing of options.

if (become_daemon && daemon (0, 0) < 0)
{
syslog (LOG_ERR, "NetworkManager could not daemonize. errno = %d", errno);
exit (EXIT_FAILURE);
}


       g_type_init ();
       if (!g_thread_supported ())
               g_thread_init (NULL);

2. I changed the init script for Red Hat.

       daemon +19 --check $servicename $processname

I added the +19 to give NetworkManager the lowest possible (nice) priority at boot.

NM when started as a service after boot worked OK. NM when started in no-daemon mode after boot also worked OK. The original init script would not start NM properly. It looks to me like the worker thread for the wireless interface and the main thread were not communicating. NM failed to scan for an AP. It was not an issue of not finding an AP, NM was even scanning for an AP. My guess is that g-threads and the daemon function used in NetworkManager.c are not playing well together.

--
Bill Moss
Professor, Mathematical Sciences
Clemson University


-- Bill Moss Professor, Mathematical Sciences Clemson University

_______________________________________________
NetworkManager-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/networkmanager-list

Reply via email to