2004-12-21 Colin Walters <walters@redhat.com>

* src/NetworkManager.c (nm_data_new): Initialize named.
	Also, set up a signal handler for SIGINT/SIGTERM, and exit
	the mainloop when these signals are received.
	(nm_data_free): Unref named.
	(sigterm_handler, sigterm_pipe_handler): New functions for
	exiting mainloop.

	* src/NetworkManagerMain.h (NMData): Add signal handling and
	nameserver bits.

	* src/NetworkManager.c (nm_device_unref): Quit device mainloop on
	unref.

	* src/NetworkManagerDHCP.c (set_nameservers): New function;
	set nameservers from DHCP response data.
	(set_domain_search): Set domain search from DHCP response.
	(nm_device_dhcp_configure): Invoke them.

	* src/NetworkManagerSystem.c
	(nm_system_device_update_resolv_conf): Delete.  Deleting
	code is totally sweet.

	* src/Makefile.am (NetworkManager_LDADD): Add libnamed.

	* named/nm-named-manager.h, named/nm-named-manager.c: New files;
	implements an object which controls a nameserver.  Currently
	uses bind 9.

	* configure.in: Check for named.

	* Makefile.am (SUBDIRS): Add named dir.

	* named/named.conf: New template config file.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@352 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
Colin Walters
2004-12-21 06:49:21 +00:00
committed by Colin Walters
parent 53c27dec5f
commit 33bd873ec4
14 changed files with 1006 additions and 51 deletions

View File

@@ -28,10 +28,19 @@
#include <hal/libhal.h>
#include "NetworkManager.h"
#include "NetworkManagerAP.h"
#include "nm-named-manager.h"
typedef struct NMData
{
GIOChannel *sigterm_iochannel;
int sigterm_pipe[2];
LibHalContext *hal_ctx;
NMNamedManager *named;
GList *nameserver_ids; /* For now these are global instead of per-device */
guint domain_search_id;
DBusConnection *dbus_connection;
GMainContext *main_context;
GMainLoop *main_loop;