Commit graph

37 commits

Author SHA1 Message Date
Tambet Ingo
c40051389c 2007-02-16 Tambet Ingo <tambet@ximian.com>
* introspection/nm-ip4-config.xml: Implement.

	* libnm-glib/libnm-glib-test.c: Use new DBUS API in tests.

	* libnm-glib/nm-ip4-config.c:
	* libnm-glib/nm-ip4-config.c: Implement.

	* src/nm-ap-security[-*]: Remove circular dependencies between APs and AP
	securities. APs reference security.

	* src/nm-device-802-11-wireless.c: Implement missing properties that need to
	be exported over DBUS.

	* src/nm-device-802-3-ethernet.c: Ditto.

	* src/NetworkManagerAP.c:
	* src/NetworkManagerAP.h:
		- Convert to GObject, export over DBUS.

	* src/nm-ip4-config.h:
	* src/nm-ip4-config.h:
		- Convert to GObject, export over DBUS.




git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2322 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-02-16 11:23:49 +00:00
Dan Williams
c1a97b29b4 2006-07-24 Dan Williams <dcbw@redhat.com>
Patch from Timothée Lecomte <timothee.lecomte@ens.fr>
	* src/backends/Makefile.am
	  src/backends/NetworkManagerArch.c
	  src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerGeneric.c
	  src/backends/NetworkManagerGeneric.h
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerPaldo.c
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSlackware.c
	  src/backends/NetworkManagerSuSE.c
		- Genericize common backend functions


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1894 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-07-24 05:49:14 +00:00
Dan Williams
e51cecf34b 2006-07-13 Dan Williams <dcbw@redhat.com>
Patch from Timothée Lecomte <timothee.lecomte@ens.fr>
	* configure.in
	  src/backends/NetworkManagerArch.c
	  src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerPaldo.c
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSlackware.c
	  src/backends/NetworkManagerSuSE.c
		- Convert hardcoding of 'ip' path to configure-time
			detected one


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1879 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-07-13 16:40:34 +00:00
Dan Williams
768354a19c 2006-06-09 Dan Williams <dcbw@redhat.com>
* src/NetworkManagerSystem.[ch]
		- (nm_system_device_set_up_down_with_iface): remove 'dev' argument,
			it was unused and pointless
		- (nm_system_vpn_device_set_from_iface, nm_system_device_set_up_down):
			fix for set_up_down_with_iface change

	* src/vpn-manager/nm-vpn-connection.c
		- (nm_vpn_connection_deactivate): fix for set_up_down_with_iface change

	* src/backends/NetworkManagerPaldo.c
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSuSE.c
	  src/backends/NetworkManagerArch.c
	  src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerGentoo.c
		- (nm_system_enable_loopback): use set_up_down_with_iface where
			appropriate
		- (nm_system_flush_loopback_routes): use flush_routes_with_iface
			where appropriate


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1817 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-06-09 14:24:19 +00:00
Nicolas Trangez
8d569f052f Gentoo initscript and backend updates
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1693 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-04-18 17:06:03 +00:00
Robert Love
e79ccc1a10 2006-03-29 Robert Love <rml@novell.com>
Patch by Vinay R <rvinay@novell.com> and Robert Love <rml@novell.com>,
	to add support for per-route MSS and improve support for per-interface
	MTU:
	* src/NetworkManagerSystem.c: Modify nm_system_device_set_ip4_route to
	  optionally take an MSS parameter and set it for the given route.
	  Remove nm_system_device_set_ip4_route_with_iface.  Pass in the
	  NMIP4Config's stored MSS, if any.
	* src/nm-ip4-config.c: Add 'mtu' and 'mss' to NMIP4Config, representing
	  the interface's MTU and the route's MSS, respectively.  Add functions
	  nm_ip4_config_get_mtu, nm_ip4_config_set_mtu, nm_ip4_config_get_mss,
	  and nm_ip4_config_set_mss for retrieving and setting the MTU and the
	  MSS.
	* src/nm-ip4-config.h: Add prototypes for nm_ip4_config_get_mtu,
	  nm_ip4_config_set_mtu, nm_ip4_config_get_mss, and
	  nm_ip4_config_set_mss.
	* src/vpn-manager/nm-vpn-service.c: Modify to receive the MSS from the
	  VPN daemon.
	* src/backends/NetworkManager{Arch,Debian,Gentoo,RedHat,Slackware,SUSE}.c:
	  Change the retval of nm_system_get_mtu to guint32.
	* src/dhcp-manager/nm-dhcp-manager.c: Set the MTU on the new DHCP-given
	  NMIP4Config to the MTU provided by the system, if any.  TODO: If DHCP
	  servers can specify MTU's, we should set it here if the MTU was not
	  provided.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1660 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-03-29 19:26:53 +00:00
Robert Love
2a63ff03ec 2006-03-21 Robert Love <rml@novell.com>
* src/NetworkManagerSystem.c, src/NetworkManagerSystem.h: Add
	  nm_system_get_mtu(), which returns a user-provided or system-mandated
	  MTU value for a given device, if any, or zero if no such value
	  exists.  Add nm_system_set_mtu() to set the MTU for a given device
	  if we have a provided value.
	* src/nm-device.c: Set the MTU of devices.
	* src/backends/NetworkManagerSuSE.c: Read MTU, if any, from sysconfig.
	* src/backends/NetworkManagerDebian.c,
	  src/backends/NetworkManagerGentoo.c,
	  src/backends/NetworkManagerRedHat.c,
	  src/backends/NetworkManagerSlackware.c: Implement stub functions.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1626 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-03-21 17:57:01 +00:00
Robert Love
32daa1d99a 2006-03-06 Robert Love <rml@novell.com>
* src/NetworkManagerSystem.h, src/nm-device.c, NetworkManagerDebian.c,
	  NetworkManagerRedHat.c, NetworkManagerGentoo.c,
	  NetworkManagerSlackware.c: Pass nm_system_device_get_system_config()
	  a second argument, NMData.
	* src/nm-ap-security.h, src/nm-ap-security.c: Export nm_ap_security_new.
	* src/backends/NetworkManagerSuSE.c: Add wireless networks from ifcfg-*
	  config files as trusted.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1564 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-03-08 18:33:44 +00:00
Robert Love
97962aac1a 2006-02-28 Robert Love <rml@novell.com>
* src/NetworkManagerSystem.h: Add nm_system_should_modify_resolv_conf.
	* src/backends/NetworkManagerSuSE.c: Implement the interface
	  nm_system_should_modify_resolv_conf() for SUSE.
	* src/backends/NetworkManagerDebian.c,
	  src/backends/NetworkManagerGentoo.c,
	  src/backends/NetworkManagerRedHat.c,
	  src/backends/NetworkManagerSlackware.c: Add stub.
	* src/named-manager/Makefile.am: Grab includes from src.
	* src/named-manager/nm-named-manager.c: Allow backends to disable the
	  automatic updating of resolv.conf.  This is useful for testing,
	  broken static configurations, and administrator lock-down.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1524 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-02-28 21:41:16 +00:00
Dan Williams
c12d5456da 2006-01-27 Dan Williams <dcbw@redhat.com>
* src/backends/NetworkManagerGentoo.c
		- (nm_system_device_get_disabled): add missing function.
			Gnome BZ #328780


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1396 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-01-27 05:43:16 +00:00
Robert Love
d1f6f5dde4 2006-01-23 Robert Love <rml@novell.com>
* dhcp-manager/nm-dhcp-manager.c, nm-device.c, nm-ip4-config.c,
	  nm-ip4-config.h, NetworkManagerSystem.h: Save the hostname reported
	  by DHCP and pass it to the backends, allowing distribution-specific
	  behavior with respect to the DHCP-supplied hostname (if nothing else,
	  some distributions might not want to set the hostname).
	* backends/NetworkManagerSuSE.c: Set the hostname if the variable
	  DHCLIENT_SET_HOSTNAME is set to "yes" in /etc/sysconfig/network/dhcp.
	  Also update our NIS behavior.
	* backends/NetworkManagerDebian.c, backends/NetworkManagerGentoo.c,
	  backends/NetworkManagerRedHat.c, backends/NetworkManagerSlackware.c:
	  Add stub functions.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1382 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-01-23 21:02:39 +00:00
Robert Love
9837697e06 2006-01-06 Robert Love <rml@novell.com>
Patch by Timo Hoenig <thoenig@suse.de>:
	* src/NetworkManagerSystem.h, src/nm-dbus-nm.c: Add interfaces to
	  hangup specific dialup devices.
	* src/backends/NetworkManagerDebian.c,
	  src/backends/NetworkManagerGentoo.c,
	  src/backends/NetworkManagerRedHat.c,
	  src/backends/NetworkManagerSlackware.c: Add stub backend.
	* src/backends/NetworkManagerRedHat.c,
	  src/backends/NetworkManagerSuSE.c: Add specific backend interface to
	  hangup specific dialup devices.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1272 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-01-06 15:39:55 +00:00
Dan Williams
4ed4b491fa 2005-12-31 Dan Williams <dcbw@redhat.com>
* refactor NMDevice into a GObject-based framework with separate
		objects for wired and wireless.  The following files are no
		longer used but should stick around for a bit so we don't
		loose code through the cracks:
			NetworkManagerDevice.c
			NetworkManagerDevice.h
			NetworkManagerWireless.c
			NetworkManagerWireless.h

	The intent here is to allow each device type to manage its own
	connection & activation life-cycle, ie to allow wireless devices
	to interface with wpa_supplicant, etc.  There's a fair bit of
	encapsulation breakage right now that should gradually get pulled
	back into each device, along with things like periodic property
	updates and link probing.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1244 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-12-31 08:21:24 +00:00
Robert Love
08145bc78d 2005-12-14 Robert Love <rml@novell.com>
Patch from Stefan Scheler <sscheler@suse.de>:
	* src/NetworkManagerDevice.c: call backend code to activate and
	  deactivate NIS.
	* src/NetworkManagerSystem.h: add new NIS interfaces.
	* src/backends/NetworkManagerDebian.c,
	  src/backends/NetworkManagerGentoo.c,
	  src/backends/NetworkManagerRedHat.c,
	  src/backends/NetworkManagerSlackware.c: add stub functions for NIS
	  support.
	* src/backends/NetworkManagerSuSE.c: add NIS support, baby.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1186 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-12-14 16:00:17 +00:00
Christopher Aillon
7cd89af612 2005-10-19 Christopher Aillon <caillon@redhat.com>
* src/backends/NetworkManagerGentoo.c:
	Fix path to killall.  Patch from Dave Shanker <dshanker@gmail.com>


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1064 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-10-21 21:50:49 +00:00
Dan Williams
115dc5264b 2005-10-10 Dan Williams <dcbw@redhat.com>
* Remove nm_system_load_device_modules() from backend files
		and from NetworkManager.c


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1014 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-10-10 18:00:59 +00:00
Dan Williams
48fe2e2876 2005-09-19 Dan Williams <dcbw@redhat.com>
* src/backends/NetworkManagerRedHat.c
      src/backends/NetworkManagerDebian.c
      src/backends/NetworkManagerSlackware.c
      src/backends/NetworkManagerGentoo.c
      src/backends/NetworkManagerSUSE.c
        - Fix invocations of "/sbin/ip address" to use short form instead


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@968 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-09-19 20:38:27 +00:00
Dan Williams
201f0318fa 2005-08-08 Dan Williams <dcbw@redhat.com>
Patch from Steev <steev@steev.net>:
	* src/backends/NetworkManagerGentoo.c
		- Stub new dialup backend functions


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@828 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-08-08 15:13:47 +00:00
Dan Williams
2bad787e27 2005-08-08 Dan Williams <dcbw@redhat.com>
Patch from Colin Slater:
	* src/backends/NetworkManagerGentoo.c
		- (nm_system_update_dns): Fix exit status check for restarting
			nscd


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@827 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-08-08 15:11:08 +00:00
Dan Williams
d66b15bc5d 2005-07-26 Dan Williams <dcbw@redhat.com>
Patch from Steev <steev@steev.net>:
	* src/backends/NetworkManagerGentoo.c
	  src/backends/Makefile.am
		- Fix up Gentoo backend


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@813 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-07-26 22:19:09 +00:00
Dan Williams
fdf4947cdb 2005-07-07 Dan Williams <dcbw@redhat.com>
Patch from Jos Dehaes <jos_dehaes@fastmail.fm>
	* src/backends/NetworkManagerGentoo.c
		- Gentoo backend Static IP nameserver fixes
		- General Gentoo backend goodness


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@790 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-07-08 02:08:55 +00:00
Dan Williams
1e22dba1ca 2005-04-04 Dan Williams <dcbw@redhat.com>
Patch from Tom Parker: include "nm-utils.h" for backend files that need it


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@553 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-04 16:24:36 +00:00
Ray Strode
278e500f99 2005-03-14 Ray Strode <rstrode@redhat.com>
Fourth (probably working) cut at porting to
	dbus 0.30 api and new hal. This cut adds
	some new logging macros to make debugging
	easier.

	* dispatcher-daemon/NetworkManagerDispatcher.c:
	* info-daemon/NetworkmanagerInfo.c:
	* info-daemon/NetworkManagerInfoPassphraseDialog.c:
	* info-daemon/NetworkManagerInfoVPN.c:
	* src/NetworkManager.c:
	* src/NetworkManagerAP.c:
	* src/NetworkManagerAPList.c:
	* src/NetworkManagerDHCP.c:
	* src/NetworkManagerDbus.c:
	* src/NetworkManagerDevice.c:
	* src/NetworkManagerPolicy.c:
	* src/NetworkManagerSystem.c:
	* src/NetworkManagerUtils.c:
	* src/NetworkManagerWireless.c:
	* src/autoip.c:
	* src/nm-dbus-nm.c:
	* src/backends/NetworkManagerDebian.c:
	* src/backends/NetworkManagerGentoo.c:
	* src/backends/NetworkManagerRedHat.c:
	* src/backends/NetworkManagerSlackware.c:
	use new logging macros.

	* dispatcher-daemon/NetworkManagerDispatcher.c:
	(nmd_dbus_filter): s/dbus_free/g_free/

	* info-daemon/Makefile.am: link in utils library.
	* info-daemon/NetworkmanagerInfo.c: use new logging
	macros.
	(nmi_dbus_get_network): don't assume enumerations
	are 32-bit.
	(nmi_dbus_nmi_message_handler): don't free what
	doesn't belong to us.

	* libnm_glib/libnm_glib.c:
	(libnm_glib_get_nm_status):
	(libnm_glib_init): don't free what doesn't
	belong to us.
	(libnm_glib_dbus): strdup result, so it doesn't get
	lost when message is unref'd.

	* panel-applet/NMWirelessAppletDbus.c:
	(nmwa_dbus_update_devices): s/dbus_free/g_free/

	* src/NetworkManager.c:
	(nm_monitor_wired_link_state): request initial status
	dump of all cards when we start up, instead of relying
	on /sys/.../carrier.
	(nm_info_handler), (nm_set_up_log_handlers):
	log handlers to specify what syslog priorites
	the logging macros default to.

	* src/NetworkManagerAPList.c:
	(nm_ap_list_populate_from_nmi):
	s/dbus_free_string_array/g_strfreev/

	* src/NetworkManagerDbus.c:
	(nm_dbus_get_network_object):
	validate d-bus message argument types.
	Advance message iterator after reading argument,
	prepend instead of append to GSList.

	* src/NetworkManagerDevice.c:
	(nm_device_probe_wired_link_status):
	remove redundant /sys in /sys path. remove wrong
	contents == NULL means has carrier assumption.

	* src/nm-netlink-monitor.c
	(nm_netlink_monitor_request_status): implement
	function to ask kernel to dump interface link
	status over netlink socket.

	* test/*.c: s/dbus_free/g_free/

	* utils/nm-utils.h:
	(nm_print_backtrace): new macro to print backtrace.
	(nm_get_timestamp): new macro to get sub-second precise
	unix timestamp.
	(nm_info), (nm_debug), (nm_warning), (nm_error):
	new logging functions. nm_info just prints,
	nm_debug includes timestamp and function,
	nm_warning includes function, nm_error includes
	backtrace and sigtrap.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@497 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-15 05:30:15 +00:00
Dan Williams
a888de7ea1 2005-02-10 Dan Williams <dcbw@redhat.com>
Patch from Dave Woodhouse:
	* src/NetworkManagerSystem.h
	  src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerSlackware.c
		- New nm_system_device_add_ip6_link_address() function to add link-local
			address on an interface.  Stubbed in Debian, Gentoo, and Slackware.

	* src/backends/NetworkManagerRedHat.c
		- (nm_system_device_add_ip6_link_address): implement
		- (nm_system_device_flush_addresses): revert to previous behavior of
			flushing all addresses


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@432 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-10 21:16:03 +00:00
Dan Williams
02bcf5aa14 2005-02-10 Dan Williams <dcbw@redhat.com>
* dhcpcd/client.c
		- #rh147661# Don't send kernel version in DHCP requests

	* src/NetworkManagerSystem.h
	  src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSlackware.c
		- Remove the nm_system_device_run_dhcp() and nm_system_device_stop_dhcp()
			functions, they are no longer used anyway

	* src/backends/NetworkManagerRedHat.c
		- (nm_system_device_flush_addresses): only flush "scope global" and "scope site"
			addresses in an attempt to keep IPv6 local-scope addresses around


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@428 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-10 16:14:19 +00:00
Dan Williams
ff6dbffeb1 2005-01-07 Dan Williams <dcbw@redhat.com>
* dhcpcd/client.c
		- Rework the DHCP client code to be much less chatty when
			it receives non-DHCP UDP packets during the DHCP run
			(reported by and preliminary patches from Bill Moss)

	* Move wireless scanning to a separate thread.  This thread forwards the
		results to the main thread when done where they are integrated into
		the device's access point lists.  This keeps the main thread (which
		does all the DBUS communication) from being blocked for long periods
		of time by wireless scanning.

	* Make state modification an idle routine in the main loop, and trigger
		state changes rather than polling for them.

	* src/backends/NetworkManagerGentoo.c
		- Fix up invalid C90 code (reported by Christoph Ruessler)

	* src/NetworkManagerDevice.c
		- Revert IPv6 patch for wired devices from 2004-12-22 for
			router advertisements, causing problems and infinite loop
			during "best" device determination due to link going up/down
			(reported by Bill Moss)

	Apply patch from Peter Jones
	* src/NetworkManagerDevice.c
		- Shortcut for link-checking for ipw2x00 cards
		- Split out association check into separate routine


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@360 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-07 18:07:06 +00:00
Dan Williams
e96c5c2967 2004-12-17 Dan Williams <dcbw@redhat.com>
* Ad Ad-Hoc networking mode support.  In Ad-Hoc mode, we only try to get
		link-local addresses instead of doing DHCP.

	* In the panel applet, there's a new "Create new Wireless Network..." item

	* The panel applet also sticks around now even if NetworkManager dies, but
		it doesn't hide its icon when NM isn't around.  Not hiding the icon is
		a bug, I'll fix that later.

	* We also don't use 'nscd' anymore in the RH backend, it was impeding name
		lookups after a switch rather than actually doing them.

	* Clean up some of those warnings in nm_ap_list_* functions

	* Delay between scans changed to 15s instead of 10s


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@342 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-12-17 17:16:22 +00:00
Dan Williams
cd475e6d0c 2004-12-15 Dan Williams <dcbw@redhat.com>
Patch from Tom Parker
	* Add autoip/Link Local Addressing support when we fail to get a DHCP
		address

	* Longer pause after setting ESSID on cards that support a larger number
		of channels to give the card time to find the right channel

	* Add system hook to restart mDNSResponder (or whatever the local implementation
		of Multicast DNS is) when we activate interfaces


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@341 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-12-16 04:24:20 +00:00
Dan Williams
d0c93d3c69 2004-12-05 Dan Williams <dcbw@redhat.com>
* Major rework of the DHCP code, taking some cues from pump.  We don't
		write raw Ethernet packets anymore, which simplifies the code quite
		a bit.  The new code should be more robust, not hang in recvfrom()
		as much, and generally work better.  This also means that we need
		to force HAL/dbus to use a created GMainContext rather than the
		default context, since having the DHCP renew/rebind thread using
		its own GMainContext seemed to give dbus a fit.  There is also more
		debugging information printed from the DHCP loop to help with future
		problems.

	* Also, if the DHCP server doesn't give us the "routersOnSubnet" option,
		assume that the default gateway should be the DHCP server.

	Patch from Matthew Schick <matt oss-institute org>
	* src/backends/NetworkManagerGentoo.c
		- Fix compilation error due to missing "ip4_broadcast"


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@336 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-12-05 21:28:42 +00:00
Dan Williams
301e338f2c 2004-11-05 Dan Williams <dcbw@redhat.com>
Patch from Robert Paskowitz:
	* src/backends/NetworkManagerGentoo.c
		- Update static IP config code


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@298 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-11-06 03:40:17 +00:00
Dan Williams
f65b6c9bb7 Patch from Robert Paskowitz:
* NEWS
	  src/NetworkManagerDevice.[ch]
	  src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSlackware.c
		- Add support for grabbing and using a broadcast address
			from system config files
		- Some Gentoo backend fixes for grabbing network config
		- Fix LOG_WARN->LOG_WARNING


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@239 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-15 00:06:14 +00:00
Robert Paskowitz
3ad9d0615c 2004-10-13 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.c
		- Add function to print out applet_state in a readable
			manner

	* src/NetworkManager.c
		- (main): Don't segfault when nm_dbus_init() fails, we had
			a left-over call to hal_shutdown() into which we passed NULL

	* src/NetworkManagerAP.c
		- (nm_ap_set_essid): Allow NULL essids

	* src/NetworkManagerAPList.[ch]
		- More use of nm_ap_list_[un]lock ()
		- (nm_ap_list_get_ap_by_essid): don't warn when looking for a NULL
			network/essid, just return nothing.  Also skip over NULL
			essid access points in the list when searching
		- (nm_ap_list_get_ap_by_address): new function
		- (nm_ap_list_update_network): set the access point's key source to
			NULL when the key returned from NetworkManagerInfo is NULL or
			of 0 length
		- nm_ap_list_update_keys() -> nm_ap_list_update_properties(), and
			copy timestamp over too
		- (nm_ap_list_copy_essids_by_address): new function, attempt to
			find the correct ESSID for a blank-essid access point by searching
			through another list and matching access point MAC addresses
		- (nm_ap_list_diff): exclude blank-essid access points from the diffs

	* src/NetworkManagerDbus.c
		- (nm_dbus_nm_set_active_device): deal with random networks the user
			may specify.  This is mainly for access points that don't
			broadcast their essid.  So if the user tells us to associate with
			some random ESSID that's not in our access point list, we find
			out if the access point does in fact exist (by attempting association
			and then matching that access point's MAC address with the essid the
			user gave us) and then we switch to it.
		- (nm_dbus_devices_handle_request): don't add blank-essid access points
			to the returned list of networks for the "getNetworks" method

	* src/NetworkManagerDevice.[ch]
		- Extra debugging info for link detection
		- (nm_device_ap_list_get_ap_by_address): new function, return an AP
			based on MAC address
		- (nm_device_get_path_for_ap): ignore blank-essid access points
		- (nm_device_wireless_network_exists): new function, find out whether
			a random ESSID exists by attempting to associate with it
		- (nm_device_do_normal_scan): allow blank-essid access points in our
			device list as long as they have an AP MAC address we can use.
			Also send WirelessNetwork[Dis]Appeared signals for non-active
			devices too.  Lets the applet update more frequently.

	* src/backends/NetworkManagerGentoo.c
		- Patch from: Robert Paskowitz
			- Update backend code for Gentoo
			- Implement nm_system_device_update_config_info ()

	* test/nmclienttest.c
		- (set_network_device): new function, takes a command-line argument
			and tells NetworkManager to use that wireless network


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@222 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-13 20:57:23 +00:00
Dan Williams
b6df634a51 2004-10-12 Dan Williams <dcbw@redhat.com>
* TODO
		- Remove bit about static IP address support

	* src/NetworkManagerUtils.c
		- (nm_spawn_process): Add some error reporting

	* src/NetworkManagerDevice.c
		- (nm_device_activation_configure_ip): hook up to the static config
			routines in the backends

	* src/backends/NetworkManagerRedHat.c
		- (nm_system_device_update_config_info): use shvar.c routines to
			parse the config file iformation, not our own
		- (nm_system_device_setup_static_ip4_config): new function, based
			heavily on 'ifup' script and 'ipcalc' tool code.  Set up a device
			with a static IP address and gateway

	* src/backends/shvar.[ch]
		- Parser (filched from initscripts package) for ifcfg-* files

	* src/backends/NetworkManagerSystem.h
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerSlackware.c
		- Stub nm_system_device_update_config_info() and nm_system_device_setup_static_ip4_config()


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@212 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-12 11:15:47 +00:00
Dan Williams
b0d1e68dd4 2004-09-08 Dan Williams <dcbw@redhat.com>
* panel-applet/no-networkmanager.png
	  panel-applet/Makefile.am
	  panel-applet/NMWirelessApplet.c
		- Add a "NetworkManager not running" icon and use it
		- Use new consolidated GConf keys rather than Preferred/Trusted

	* TODO: update

	* info-daemon/NetworkManagerInfo.c
	  info-daemon/NetworkManagerInfoDbus.[ch]
	  info-daemon/NetworkManagerInfoPassphraseDialog.c
		- There are now no longer two separate lists of wireless networks,
			but one list where each network is "trusted" or not trusted
		- Add a "getNetworkTrusted" dbus method
		- "WirelessNetworkUpdate" signal now sent rather than
			"PreferredNetworkUpdate/TrustedNetworkUpdate" signals
		- Start freeing some dbus errors (not completed yet)

	* info-daemon/passphrase.glade
		- Remove the "don't show" hints for pager and taskbar
		- Add a title since its going to be in the taskbar

	* src/NetworkManager.[ch]
	  src/NetworkManagerAPList.[ch]
		- There are now no longer two separate lists of wireless networks,
			but one list where each network is "trusted" or not trusted

	* src/NetworkManagerAP.[ch]
		- Add get/set "trusted" accessors and data bit

	* src/NetworkManagerDbus.[ch]
		- Add function to get "trusted" status of a network from NetworkManagerInfo
		- Trap new WirelessNetworkUpdate signal rather than old separate signals

	* src/NetworkManagerDevice.[ch]
		- Add per-device config data (ip4 addr, gateway, netmask) and accessors
		- (nm_device_new): Get device config from backend when initializing devices
		- (nm_device_activation_worker): Split out device configuration on
			activation to deal with static/dynamic IP differences, and try encryption
			fallbacks on a device if the encryption method for the best AP is not good
		- (nm_device_update_best_ap): convert to new consolidated access point lists from
			NetworkManagerInfo, and copy over latest NMI info to best_ap when setting it

	* src/NetworkManagerWireless.c
		- libgcrypt code wasn't converting the MD5 digest to an ascii string, fix it

	* src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSystem.h
		- (nm_system_device_update_config_info): Add function to get device configuration
			from system data in ifcfg-* files

	* src/backends/NetworkManagerDebian.c
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerSlackware.c
		- Add stub functions for getting device configuration


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@131 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-09-08 18:14:42 +00:00
Dan Williams
4de66efbd4 2004-08-31 Dan Williams <dcbw@redhat.com>
* Remove 'debug' extern global from all files since we now
		use syslog()

	* src/NetworkManager.[ch]
		- Break out routine that get the net.interface property from HAL,
			removing that logic from nm_create_device_and_add_to_list()
		- (nm_create_device_and_add_to_list): make this a bit more general so
			it doesn't do the talking to HAL.  Also add arguments to facilitate
			the create of test devices.
		- (nm_data_mark_state_changed): rename from nm_data_set_state_modified()
		- (nm_data_new, main, nm_print_usage): add new argument "--enable-test-devices"
			which makes NetworkManager listen for dbus commands to create test
			devices, which have no backing hardware.  Use when you're on a plane
			for example, and/or forgot your wireless card at home.  Test devices
			_cannot_ be created unless NM is started with --enable-test-devices.

	* src/NetworkManagerDbus.[ch]
		- New "getLinkActive" method for devices
		- New "setLinkActive" method for devices (only works on test devices)
		- New "createTestDevice" method on NetworkManager object to create a test
			device of a specified type (ie wired, wireless).  UDI is created from
			scratch, as is the interface name.  Only works when NM is started with
			--enable-test-devices switch.
		- New "removeTestDevice" method on NetworkManager object which removes a
			test device.  Only works when NM is started with --enable-test-devices

	* src/NetworkManagerDevice.[ch]
		- Logic to facilitate test devices.  Add variables to NMDevice struct to indicate
			whether a device is a test device or not, and what its link status is.
		- Deal with test devices in most functions.  For those that work directly on hardware
			special-case test devices.
		- (nm_device_new): don't create a test device if test devices weren't enabled on the
			command-line.
		- (nm_device_update_link_active): split out logic for wired and wireless device link
			checking to separate functions to facilitate test device link checking.
		- (nm_device_set_enc_key): Since some drivers for wireless cards are daft and
			don't make a distinction between System Authentication and Encryption
			(namely Cisco aironet), we use Open System auth when setting a WEP key
			on the card.  We don't deal with Shared Key auth yet.
		- (nm_device_activation_worker): split the activation cancel check logic out into
			a separate routine nm_device_activation_cancel_if_needed()
		- (nm_device_activation_signal_cancel): rename from nm_device_activation_cancel()
		- (nm_device_fake_ap_list): Test wireless devices obviously cannot scan, so create
			a list of fake access points that they can "see"
		- (nm_device_is_test_device): return whether or not a device is a test device

	* src/NetworkManagerPolicy.c
		- (nm_policy_get_best_device): attempt to deal with wireless network selection,
			previously if you "locked"/forced NM to use a wireless device but then
			selected a wireless network for NM to use, it would switch to a wired device.
			So, if the active device is wireless and it has a "forced" best AP, use it
			if the "forced" best AP is still valid
		- (nm_state_modification_monitor): deal with NULL best devices, for example
			there were no usable network devices, or the last one was removed

	* src/backends/NetworkManager*.c
		- Deal with test devices, mostly just return success for operations like getting
			a DHCP address

	* test/nmtestdevices.c
		- Test tool to create/remove/link-switch test devices


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@112 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-31 16:09:15 +00:00
Dan Willemsen
6dbc6cfd03 2004-08-24 Dan Willemsen <dan@willemsen.us>
* src/NetworkManager.c
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSystem.h
		- Implement preliminary Gentoo support, adding a
			nm_system_init function to the backend specification

	* configure.in
		- Distribution auto-detection, lowercase any user-fed
			distribution names

	* initscript/.cvsignore
	  initscript/Makefile.am
	  initscript/RedHat/Makefile.am
	  initscript/RedHat/NetworkManager
	  initscript/Gentoo/Makefile.am
	  initscript/Gentoo/NetworkManager
		- Refactored initscript code separately for each
			distribution


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@64 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 20:52:19 +00:00
Dan Williams
ae6f88b3dd 2004-08-23 Dan Williams <dcbw@redhat.com>
* configure.in
	  src/Makefile.am
	  src/NetworkManagerDevice.c
	  src/NetworkManager.c
	  src/NetworkManagerUtils.[ch]
	  src/backends/NetworkManagerSystem.h
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerGentoo.c
		- Refactor system-specific code into separate backends for
			each distribution


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@62 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-24 00:31:47 +00:00