Commit Graph

78 Commits

Author SHA1 Message Date
Robert Love
adb425dc02 src/NetworkManager.c: trivial whitespace.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@727 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-06-20 20:34:35 +00:00
Dan Williams
058a15490e 2005-06-16 Dan Williams <dcbw@redhat.com>
* Clean up wording in Wireless Scan Methods menu items and constants


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@693 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-06-17 00:36:08 +00:00
Dan Williams
bb36e068ba 2005-06-09 Dan Williams <dcbw@redhat.com>
* NetworkManager.h
		- Add NMWirelessScanMethod enum for scan methods

	* gnome/applet/applet-dbus-devices.c
		- (nmwa_dbus_update_scanning_enabled_cb): remove
		- (nmwa_dbus_update_scanning_enabled): remove
		- (nmwa_dbus_update_devices): don't call nmwa_dbus_update_scanning_enabled() anymore
			since it got removed
		- (nmwa_dbus_enable_scanning): remove

	* gnome/applet/applet-dbus-info.c
		- (nmi_dbus_signal_update_scan_method): new function, signal NetworkManager to
			update the wireless scanning method from NMI
		- (nmi_dbus_get_wireless_scan_method): new function, return wireless scanning
			method value to NetworkManager
		- (nmi_dbus_info_message_handler): respond to the "getWirelessScanMethod" method call

	* gnome/applet/applet-dbus-info.h
		- Add prototype for nmi_dbus_signal_update_scan_method

	* gnome/applet/applet.c
		- (scanning_menu_update): new function, update one GtkCheckMenuItem from the
			Wireless Scanning menu based on current wireless scan method
		- (nmwa_menu_scanning_item_activate): new function, callback for GTK "activate"
			signal for Wireless Scanning menu items, tell NetworkManager the new method
			and update our menu items to make sure the right one is checked
		- (nmwa_set_scanning_enabled_cb): remove
		- (nmwa_context_menu_update): remove references to pause_scanning_item
		- (nmwa_context_menu_create): remove pause_scanning_item, and add new Wireless
			Scanning menu item
		- (nmwa_gconf_get_wireless_scan_method): new method, pull wireless scanning method
			from GConf
		- nmwa_gconf_networks_notify_callback -> nmwa_gconf_info_notify_callback: generalize
			so we get notified of preference values too
		- (nmwa_get_instance): monitor GCONF_PATH_WIRELESS rather than GCONF_PATH_WIRELESS_NETWORKS

	* gnome/applet/applet.h
		- GCONF_PATH_WIRELESS added, one level below GCONF_PATH_WIRELESS_NETWORKS
		- Add wireless scan method member to applet data
		- Remove pause_scanning_item, add Wireless Scanning submenu

	* src/NetworkManager.c
		- (nm_data_new): default to NM_SCAN_METHOD_ON
		- (main): grab scanning method from NMI if we can

	* src/NetworkManagerDbus.c
		- (nm_dbus_update_wireless_scan_method_cb): new function, callback from
			nm_dbus_update_wireless_scan_method()
		- (nm_dbus_update_wireless_scan_method): new function to grab scanning method
			from NMI
		- (nm_dbus_nmi_is_running): redundant function, removed
		- (nm_dbus_signal_filter): trap "WirelessScanMethodUpdate" signal, grab scanning method
			when NMI comes back

	* src/NetworkManagerDevice.c
		- (nm_device_is_activated): return TRUE if the device is activated
		- (nm_device_wireless_scan): don't scan if the scan method is OFF, or if its AUTO
			and we are activated

	* src/nm-dbus-nm.c
		- (nm_dbus_nm_set_scanning_enabled): removed
		- nm_dbus_nm_get_scanning_enabled -> nm_dbus_nm_get_wireless_scan_method
		- (nm_dbus_nm_methods_setup): remove [get | set] ScanningEnabled and add "getWirelessScanMethod"


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@658 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-06-10 03:13:27 +00:00
Dan Williams
c1069ccac5 2005-05-15 Dan Williams <dcbw@redhat.com>
* src/NetworkManagerDevice.[ch]
	  src/NetworkManagerPolicy.c
	  src/NetworkManager.c
	  src/nm-dbus-nm.c
		- Remove the "just_added" parameter from nm_device_deactivate().  We no
			longer send the DeviceNoLongerActive signal unconditionally, but only
			when the device is actually active.

	* dispatcher-daemon/NetworkManagerDispatcher.c
		- (nmd_execute_scripts): convert to GLib directory functions from opendir(),
			and simplify the logic
		- (nmd_get_device_name): copy value from dbus reply so we don't segfault when
			we free it later on

	* initscript/RedHat/Makefile.am
	  initscript/RedHat/NetworkManagerDispatcher
		- Add initscript for NetworkManagerDispatcher


	Patch from Bill Moss:
	* dispatcher-daemon/NetworkManagerDispatcher.c
		- Remove IP4AddressChange signal code including nmd_get_device_ip4_address()

	* src/NetworkManagerDbus.c
		- (nm_dbus_signal_device_ip4_address_change): remove.  If the device goes up,
			and DeviceNowActive gets signaled, then the device has a new IP address
			anyway.  There's no need for a separate signal.

	* src/NetworkManagerDevice.c
		- (nm_device_update_ip4_address): Don't send IP4AddressChange signal

	* src/NetworkManagerPolicy.c
		- (nm_policy_activation_finish): Send DeviceNowActive signal when the device
			activates successfully.  This kind of went missing when I reworked the
			activation code.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@634 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-16 01:28:45 +00:00
Dan Williams
f35de1c54c 2005-05-14 Dan Williams <dcbw@redhat.com>
* src/NetworkManager.c
		- (device_stop_and_free): Deactivate VPN connections before deactivating devices,
			fixes a deadlock on shutdown with a VPN connection active.  This function locks
			the device list, as does nm_get_active_device() which is called from
			nm_vpn_manager_deactivate_vpn_connection().


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@628 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-14 23:57:25 +00:00
Dan Williams
130b42a902 2005-05-06 Dan Williams <dcbw@redhat.com>
* gnome/applet/applet-dbus-device.c
	  gnome/applet/applet-dbus-info.c
	  gnome/applet/applet-dbus.c
	  gnome/applet/applet.c
	  gnome/applet/applet.h
		- (nmwa_get_device_for_nm_device) -> (nmwa_get_device_for_nm_path)

	* gnome/applet/applet-dbus.c
		- (nmwa_dbus_filter): trap DeviceCarrierOn/DeviceCarrierOff signals
			so we notice when wired device's carriers come back on.  Should
			fix issue with wired devices being grayed out even if the cable
			is in, for devices that support carrier detection.

	* gnome/applet/applet.c
		- (nmwa_driver_notify): bash focus-stealing prevention in the face
		- (nmwa_act_stage_to_pixbuf): Clarify wireless ACT_STAGE_DEVICE_CONFIG
			tooltip message
		- (nmwa_menu_item_activate, nmwa_menu_add_device_item, nmwa_menu_item_data_free):
			Fix situation where applet wouldn't respond to menu selections

	* src/NetworkManager.c
	  src/NetworkManagerDevice.c
	  src/NetworkManagerDbus.c
	  src/NetworkManagerDbus.h
		- (nm_dbus_signal_device_status_change) -> (nm_dbus_schedule_device_status_change_signal)

	* src/NetworkManagerDbus.c
		- (nm_dbus_send_network_not_found, nm_dbus_schedule_network_not_found_signal):
			Remove, no longer used or relevant
		- (nm_dbus_signal_device_status_change): Better signal enum->string matching
		- (nm_dbus_schedule_device_status_change_signal): add

	* src/NetworkManagerDevice.c
		- (nm_device_worker_thread_stop): don't try to join a NULL worker thread
		- (nm_device_set_link_active): Fix up switching for non-carrier-detect devices,
			ie don't deactivate them unless explicitly told to by the user.  Also send
			CARRIER_OFF / CARRIER_ON signals when link changes
		- (nm_device_set_essid, nm_device_set_enc_key, nm_device_is_up, nm_device_set_mode):
			Don't print error message when device is no longer around
		- (nm_device_deactivate): kill any current DHCP process attached to this device,
			not just during activation

	* src/NetworkManagerPolicy.c
		- (nm_policy_auto_get_best_device): Ignore semi-supported devices completely from
			auto-device-selection.
		- (nm_policy_device_change_check): Don't interrupt semi-supported devices

	* src/NetworkManagerSystem.c
		- (nm_system_device_set_up_down_with_iface): Quiet first warning message when device
			is no longer present (Bill Moss)

	* src/backends/shvar.c
		- (svOpenFile): Open read-only to make SELinux happy

	* src/backends/NetworkManagerRedHat.c
		- (nm_system_device_get_system_config): Use SYSCONFDIR rather than hardcoding
			the path to the ifcfg-* files


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@613 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-06 21:20:42 +00:00
Dan Williams
88a56d5435 2005-05-05 Dan Williams <dcbw@redhat.com>
Suggestion from Bill Moss:
	* src/NetworkManagerSystem.c
		- (nm_system_device_set_up_down_with_iface): ignore ENODEV


	* src/NetworkManager.c
		- (nm_data_free): move destruction of the various managers after
			release of device list, because deactivating and freeing a device
			requires at least the named manager
		- (nm_poll_and_update_wireless_link_state):
		  (nm_device_link_activated):
		  (nm_device_link_deactivated):
			don't grab the device list lock when actually updating device
			link status or strength, since nm_device_set_link_active()
			needs to call nm_get_active_device(), which also locks the device list.

	* src/NetworkManagerDevice.c
		- (nm_device_set_link_active): if a device's link switches from off->on,
			and it's wired, and the active device is wireless (or there is no
			active device), activate the new device whose link just came on
		- (link_to_specific_ap): try to smooth over intermittency in wireless links
			my only calling the link to the current ap "failed" when more than 2
			consecutive link checks have failed


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@606 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-05 16:52:04 +00:00
Dan Williams
567b5e3d31 2005-05-03 Dan Williams <dcbw@redhat.com>
* Kill dhcpcd.  We now use "dhcdbd", a dbus daemon that controls dhclient.
	  This means that NetworkManager shouldn't have DHCP issues anymore.  It also
	  means you need dhcdbd, which you can get here (get the latest one):

		http://people.redhat.com/jvdias/dhcdbd/

	  Technically NetworkManager can use any DHCP daemon that uses the same DBUS
	  interface as dhcdbd.

	* Rewrite device activation to facilitate the new DHCP infrastructure and
	  future improvements.  Its now "activation request" based, ie there is a single
	  activation request composed of the device, access point, and other info which
	  follows the entire activation process.  There are 5 stages of the activation
	  process which correspond to:

		1) Device preparation
		2) Device configuration (bring it up, set ESSID/Key/etc)
		3) IP Config Start (fire off DHCP if we're using it)
		4) IP Config Get (grab config from DHCP or static config files)
		5) IP Config Commit (set device's IP address, DNS, etc)

	  Note that there is no longer a "scanning" step, since the access point must
	  be known _before_ activation starts.  If the access point drops out or does
	  not exist for some reason, the entire activation process fails and must be
	  restarted for a different access point or device.

	Patch from Bill Moss:
	* gnome/applet/applet.c
		- Fix type of vpn_failure dialog -> vpn_banner dialog


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@597 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-03 20:41:36 +00:00
Dan Williams
a5dd14c305 2005-04-27 Dan Williams <dcbw@redhat.com>
* Merge the applet and the info-daemon, and move the converged
                applet under gnome/applet
        * Move libnm_glib to gnome/libnm_glib
        * Convert most dbus calls between the applet, info-daemon, and NM
                into async calls
        * Fix a few things valgrind noticed
        * Make NM broadcast state more reliably


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@586 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-27 18:05:16 +00:00
Dan Williams
7337e8132a 2005-04-15 Dan Williams <dcbw@redhat.com>
Patches from Tom Parker:
	- Fix memleaks
	- Join with worker thread rather than polling for its exit

	Patch from Bill Moss:
	- Cull duplicate ESSIDs from the scan list, taking highest strength AP


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@573 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-15 20:00:28 +00:00
Dan Williams
de1d417198 2005-04-15 Dan Williams <dcbw@redhat.com>
Initial VPN Support
		- supports 'vpnc'
		- reworks device IP configuration, backend files have changed and will need
			to be updated for all distributions.  I will try to do what I can for
			them, but I cannot test them.

	- Move named directory to src/named-manager
	- Make backends directory self-contained


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@571 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-15 15:43:42 +00:00
Dan Williams
7136220856 2005-04-06 Dan Williams <dcbw@redhat.com>
Add debug code for socket/file descriptor leaks.  We register every socket
	that we open (except for stuff in dhcpcd/) for tracking, and print out the
	list of sockets that we forgot to close on shutdown.  This also consolidates
	about 4 places where we opened sockets into 1 function in NetworkManagerUtils.c


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@559 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-06 16:45:48 +00:00
Dan Williams
04eadd092c 2005-04-01 Dan Williams <dcbw@redhat.com>
Perform scans during device activation, if needed.  Both activation
	and scans run in the same GMainContext.  Therefore, if an access point
	is not found by the time the device starts activation, it will not
	be available until after activation.  We now try to scan during
	activation (in nm_wa_test) every 15s so that all available access
	points are more likely to be found and available for the activation
	procedure.

	Also change nm_wireless_link_state_handle() to only update the "best"
	AP if we are not forcing a device and if we are not about to change
	state.  This attempts to work around a race when forcing a device,
	where the forced AP would get cleared out too soon by the link state
	checking timeout in the main thread, and the activation attempt with
	that AP would fail.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@545 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-01 21:30:12 +00:00
Dan Williams
c1979229b6 2005-03-31 Dan Williams <dcbw@redhat.com>
Tighten up handling of wireless devices that don't support wireless
	scanning (ie, Orinoco).  Due to restructuring of code, these devices
	hadn't been doing pseudo-scanning for a while either and would just
	spin waiting for an access point.  They are now manual devices where
	the user must choose the access point from the menu every time.  All
	"allowed" access points are listed in the applet's menu regardless
	of whether or not they can be seen by the card, since it can't scan
	anyway.

	* src/NetworkManager.c
		- (nm_wireless_link_state_handle): new function, but only update
			the "best" ap for non-scanning devices when its not activating,
			and when no device is being forced on the card
		- (nm_link_state_monitor): split wireless link state handling out
			into separate function

	* src/NetworkManagerDevice.c
		- (nm_device_copy_allowed_to_dev_list): new function
		- (nm_device_new): populate non-scanning cards' AP lists with
			access points from the "allowed" list
		- (nm_device_new): don't start a scanning timeout for devices that
			can't scan
		- (nm_device_activation_schedule_finish): new parameter, should be
			the AP that failed to be connected to, pass it on to the
			activation finish function in NetworkManagerPolicy.c
		- (nm_device_activate_wireless): don't ever try to get a new AP
			for non-scanning devices, just fail.  The user must choose
			a new access point manually.
		- (nm_device_activate): grab the AP that failed connection and
			pass it on
		- (nm_device_update_best_ap): Clear the best AP if we don't have
			a link to it, user must manually choose a new one
		- (nm_device_do_pseudo_scan): remove function
		- (nm_device_wireless_process_scan_results): remove bits for non-
			scanning cards since they never get here
		- (nm_device_wireless_scan): remove bits for non-scanning devices,
			and fake the scan list for test devices a bit earlier

	* src/NetworkManagerPolicy.c
		- (nm_policy_activation_finish): use the failed_ap that we get
			passed rather than getting the best_ap from the card, which
			may have changed since we were scheduled
		- (nm_policy_allowed_ap_list_update): for non-scanning devices,
			update their scan list directly from the allowed list when
			we get updates to the allowed list from NetworkManagerInfo

	* src/NetworkManagerPolicy.h
		- New member for failed access point in NMActivationResult

  -------------------------------------

	Driver Notification patch: notifies the user when their driver
		sucks.  Gives them the option to ignore further insertions
		of the card that has the sucky driver.

	* NetworkManager.h
		- Remove the SEMI_SUPPORTED member from the NMDriverSupportLevel
			enum and replace it with NO_CARRIER_DETECT and
			NO_WIRELESS_SCAN

	* panel-applet/NMWirelessApplet.[ch]
		- Merge essid.glade -> wireless-applet.glade
		- Implement the "Your driver sucks" notification dialog

	* panel-applet/NMWirelessAppletDbus.c
		- Change stuff from getSupportsCarrierDetect->getDriverSupportLevel
		- Grab hardware address for each device from NM too
		- Check whether the driver for each device sucks or not whenever
			a new device is noticed

	* panel-applet/NMWirelessAppletOtherNetworkDialog.c
		- Deal with stuff being in wireless-applet.glade now rather than essid.glade

	* src/NetworkManager.c
		- Fix a double-unref on device removal

	* src/NetworkManagerUtils.c
		- Set appropriate driver support level on a device that doesn't
			support scanning or carrier detection

	* src/nm-dbus-device.c
		- New "getHWAddress" dbus method on devices
		- getSupportsCarrierDetect -> getDriverSupportLevel


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@534 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-31 21:02:21 +00:00
Dan Williams
66039f43b3 2005-03-29 Dan Williams <dcbw@redhat.com>
* src/NetworkManager.c
		- (nm_poll_and_update_wireless_link_state): make code less indented

	Patch from Bill Moss:
	* src/NetworkManager.c
		- (nm_device_update_link_state): Update signal strength on wireless
			devices every time we update link state too.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@531 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-30 04:39:35 +00:00
Dan Williams
4acd2f31dc 2005-03-25 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.c
		- (nmwa_about_cb): Add some more contributors
		- (nmwa_update_state): show the applet when there's no connection
		- Enable the "Stop/Resume all wireless devices" option in the
			context menu
		- New "no connection" icon

	* src/NetworkManager.c
		- (nm_poll_and_update_wireless_link_state): don't do anything if
			wireless is disabled or we're asleep

	* src/NetworkManagerDHCP.c
		- Remove trailing "\n" on debug messages

	* src/NetworkManagerDbus.c
		- (nm_dbus_network_status_from_data): new state "asleep"

	* src/NetworkManagerDevice.c
		- Merge most of Peter Jones' "completion" patch that greatly reduces
			latency and wait times for most operations
		- (nm_device_wireless_scan): Don't scan when asleep

	* src/NetworkManagerPolicy.c
		- (nm_policy_get_best_device): return no device when asleep
		- (nm_policy_allowed_ap_list_update): From Bill Moss: merge properties
			for all wireless devices on update, not just active device

	* src/NetworkManagerUtils.c
		- Merge Peter Jones' "completion" patch

	* src/nm-dbus-nm.c
		- (nm_dbus_nm_set_wireless_enabled): bring down wireless devices when
			we're told to disable them
		- (nm_dbus_nm_sleep, nm_dbus_nm_wake): new functions for sleep/wake

	* utils/nm-utils.h
		- New variants of the warn/info/error/debug print functions that can take
			variables rather than static strings


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@510 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-26 03:42:05 +00:00
Dan Williams
b90aa8077a 2005-03-22 Dan Williams <dcbw@redhat.com>
* src/NetworkManager.c
		- (nm_wired_link_deactivated): actually ignore netlink events from
			wireless devices.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@504 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-22 21:27:51 +00:00
Dan Williams
a068f66a28 2005-03-22 Dan Williams <dcbw@redhat.com>
* src/NetworkManager.c
		- (nm_wired_link_activated): actually ignore netlink events from
			wireless devices.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@503 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-22 21:25:36 +00:00
Ray Strode
a750e3c2aa 2005-03-15 Ray Strode <rstrode@redhat.com>
* src/NetworkManager.c:
	(sigterm_pipe_handler):
	remove bogus FIXME


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@500 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-15 18:11:29 +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
Ray Strode
0790d2fc3e 2005-03-11 Ray Strode <rstrode@redhat.com>
Third (unfinished, partially working) cut at porting to
	dbus 0.30 api and new hal.

	* info-daemon/NetworkManagerInfoDbus.c:
		don't free null arrays.

	* panel-applet/NMWirelessAppletDbus.c:
	* src/nm-dbus-device.c:
	* src/nm-dbus-net.c:
	* src/NetworkManagerDbus.c: more
 	STRING -> OBJECT_PATH fun
	* src/NetworkManagerDevice.c:
	* src/NetworkManagerDevice.h:
	(rename nm_device_get_link_active): rename to
	nm_device_has_active_link
	(nm_device_wireless_link_active): rename to
	nm_device_probe_wireless_link_state
	(nm_device_wired_link_active): rename to
	nm_device_probe_wired_link_state.  Rewrite to
	use carrier file since hal doesn't maintain
	link state anymore.
	(nm_device_update_link_active): rename to
	nm_device_update_link_state
	* src/NetworkManagerPolicy.c
	  (nm_policy_activation_finish): check for NULL
	  MAC address.

	* src/Makefile.am:
	* src/NetworkManagerMain.h:
	* src/NetworkManager.c:
	* src/nm-netlink-monitor.c:
	* src/nm-netlink-monitor.h: New class to support
	monitoring wired ethernet link status, since HAL
	doesn't export that information anymore.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@495 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-11 20:12:57 +00:00
Ray Strode
a5d937a62e 2005-03-07 Ray Strode <rstrode@redhat.com>
* info-daemon/NetworkManagerInfoDbus.c:
	* libnm_glib/libnm_glib.c:
	* panel-applet/NMWirelessAppletDbus.c:
	* src/NetworkManager.c:
	* src/NetworkManagerDbus.c:
	* src/NetworkManagerDevice.c:
	* src/NetworkManagerUtils.c:
	* src/nm-dbus-device.c:
	* src/nm-dbus-dhcp.c:
	* src/nm-dbus-net.c:
	* src/nm-dbus-nm.c:
	* test/nminfotest.c:
	First (unfinished, unworking) cut at porting to dbus 0.30 api.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@493 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-08 03:44:27 +00:00
Dan Williams
a8dfb489fb 2005-03-04 Dan Williams <dcbw@redhat.com>
Patch from Peter Jones:
	- Make stuff work with gcc 4.0


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@490 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-03-04 21:25:45 +00:00
Dan Williams
6411cc5ade 2005-02-18 Dan Williams <dcbw@redhat.com>
* panel-applet/essid.glade
	  panel-applet/NMWirelessAppletOtherNetworksDialog.c
		- Correct spelling of "adaptor"->"adapter"

2005-02-18  William Jon McCann  <mccann@jhu.edu>

	* panel-applet/NMWirelessApplet.c: Use GTK_CHECK_VERSION() macro.
	(nmwa_about_cb): Use standard copyright string.  Update comment
	text to reflect that it is a notification area applet.  Remove
	leading newline in authors list.
	(nmwa_menu_show_cb, nmwa_setup_widgets): Populate menu on show
	instead of on parent menu item activation.  Fixes #167550.

2005-02-18  William Jon McCann  <mccann@jhu.edu>

	* panel-applet/essid.glade: Capitalize items as per HIG.
	  Fixes #167632


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@458 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-18 18:15:54 +00:00
Dan Williams
d00e99815f 2005-02-10 Dan Williams <dcbw@redhat.com>
* src/NetworkManager.c
		- (nm_create_device_and_add_to_list): change the add message slightly

	* src/NetworkManagerUtils.c
		- (nm_get_wireless_driver_support_level, nm_get_wired_driver_support_level):
			Return driver name to calling function
		- (nm_get_driver_support_level): print out the driver a device is using
			during the support check

	Patch from Dave Woodhouse:
	* dhcpcd/udpipgen.c
		- (in_cksum): copy last byte of odd-sized packets into a
			'u_short' rather than a 'u_char', should fix wrong checksums
			on big-endian platforms


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@427 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-10 15:07:35 +00:00
Dan Williams
a88c6427ef 2005-02-09 Dan Williams <dcbw@redhat.com>
* Clean up usage of GSList objects and looping through their members
	* Clean up DHCP rebind/renew timeouts, hopefully they will work correctly
		now.
	* Fix problem where even if scanning was turned off, card would still
		cycle through frequencies.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@423 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-10 04:39:40 +00:00
Dan Williams
901e3d01d8 2005-02-07 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.[ch]
		- Add a context menu that contains:
			Pause/Resume Wireless Scanning
			Stop/Start All Wireless Devices
			About...
		- Grab active device strength off active device,
			not its network

	* panel-applet/NMWirelessAppletDbus.[ch]
		- Add DBUS accessors for "getSupportsCarrierDetect", "setScanningEnabled",
			"getScanningEnabled", "setWirelessEnabled", and "getWirelessEnabled"
		- Update active device strength every 2 seconds, not every 1 second

	* panel-applet/menu-info.c
		- Only disable wired devices in the menu when they support carrier detection,
			and don't currently have a link.  Non-carrier-detect devices will always
			remain choosable

	* src/Makefile.am
	  src/NetworkManagerDbusUtils.[ch]
		- Add new new dbus utils sources

	* src/NetworkManager.c
		- Fixes for new link detection, we no longer need to call nm_device_update_link_active()
			with the boolean parameter
		- Set scanning_enabled & wireless_enabled to TRUE

	* src/NetworkManagerDbus.c
		- Use new dbus util method dispatcher functions for org.freedesktop.NetworkManager methods
		- Implement scanning & wireless enable/disable calls
		- Remove the dbus vtable unregister handlers, weren't doing anything with them anyway

	* src/NetworkManagerDevice.c
		- New link detection stuff again...
			o  Create device's mainloop earlier (but don't run it earlier)
			o  Hook up new carrier-detect support stuff
			o  Add in the ethtool & mii support detection code
		- Don't scan if scanning is disabled

	* src/NetworkManagerPolicy.c
		- Never automatically choose a device that doesn't support carrier detection
		- Don't automatically choose a wireless device if wireless is disabled


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@416 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-07 23:04:05 +00:00
Dan Williams
9a46c8dbed 2005-02-02 Dan Williams <dcbw@redhat.com>
* Clean up unused variables and the like


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@408 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-02 21:57:29 +00:00
Dan Williams
a03d8042c3 2005-02-02 Dan Williams <dcbw@redhat.com>
* src/NetworkManagerAPList.c
		- (nm_ap_list_merge_scanned_ap): merge strength too

	* src/NetworkManagerUtils.c
		- (nm_lock_mutex, nm_register_mutex_desc): new calls to facilitate debugging
			of locking issues by printing out prettier information than g_mutex_lock
		- Print out names of mutexes registered with nm_register_mutex_desc()
		- (nm_try_lock_mutex): don't do the waiting thing when trying to lock, causes
			us to seemingly block here for too long

	* src/NetworkManager.c
	  src/NetworkManagerAPList.c
	  src/NetworkManagerDevice.c
		- Convert to using nm_lock_mutex/nm_unlock_mutex rather than the glib variants
			so we get better debug information printed

	* src/NetworkManagerDbus.c
		- (nm_dbus_devices_handle_request): reduce usage of nm_device_need_ap_switch()
			since it sometimes has locking side effects
		- (nm_device_get_association_pause_value): Reduce 802.11a card pause value to 8s
			from 10s
		- (nm_device_need_ap_switch): If we can't acquire the scan lock, return saying
			we don't need a switch.  This gets called often enough that we can't block
			until the scan mutex is acquired, because we'll block on device activation
			and a few other things, which hangs main thread for too long.

	* src/NetworkManagerPolicy.c
		- (nm_policy_auto_get_best_device): reduce the possiblity that
			nm_device_need_ap_switch() will be called


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@407 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-02-02 21:49:14 +00:00
Dan Williams
4f28a1ce27 2005-01-31 Dan Williams <dcbw@redhat.com>
* info-daemon/NetworkManagerInfoDbus.c
		- (nmi_dbus_nmi_message_handler): make sure 'dialog' exists before using it

	* src/NetworkManagerDevice.c
		- (nm_device_new): Don't store the entire range struct, use only what we need
			(which is currently avg_quality, max_quality, and frequencies).  Also
			zero device structure when we've free'd it to maybe expose errors down
			the line.
		- (nm_device_update_signal_strength): grab the scan mutex before getting
			quality data from the card since quality will be useless during a scan.
			Call updated wireless qual-to-percent function with values stored in
			nm_device_new() earlier.
		- Remove some unused functions (nm_device_get_max_quality(), nm_device_get_noise(),
			nm_device_get_bad_crypt_packets())
		- (nm_device_activate_wireless_adhoc): use new frequency values we go in
			nm_device_new()
		- (get_initial_auth_method): always use the Auth method that's in the allowed
			list if available.  Problem was this: when the WEP key is wrong, NM will
			try OS then SK modes, and then get stuck in SK mode after that.  This
			should reset it.
		- (nm_device_wireless_process_scan_results): work with new qual-to-percent
			function

	* src/NetworkManagerWireless.c
		- (nm_wireless_qual_to_percent): try to make this function actually work and
			mimic iwlib behavior.  Use card's idea of quality divided by max_qual
			if that's all present, otherwise fall back to signal-to-noise ratios.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@402 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-31 19:53:38 +00:00
Dan Williams
2827e5129c 2005-01-29 Dan Williams <dcbw@redhat.com>
* initscript/RedHat/NetworkManager
		- Don't spit out sysctl stuff to console

	* libnm_glib/libnm_glib.c
		- (libnm_glib_init): call dbus_g_thread_init()

	* panel-applet/NMWirelessAppletDbus.c
		- (nmwa_dbus_worker): call dbus_g_thread_init()

	* src/NetworkManager.c
		- (main): call dbus_g_thread_init()

	* src/NetworkManagerAPList.c
		- (nm_ap_list_print_members): use LOG_ERR instead of LOG_DEBUG
			so we can actually see what's there in a normal syslog

	* src/NetworkManagerDevice.c
		- (nm_device_activate_wireless): print out the "waiting for access point"
			message only once, then say what access point we actually got after
			the wait.
		- (nm_device_need_ap_switch): If a scan is in progress when we're in this
			function, wait until the scan is done.  Scans may change the ESSID of
			the card, making this function think we need to switch access points
		- (nm_device_wireless_process_scan_results): for artificial access points
			don't check against the card's ESSID, but the best_ap's ESSID.  This
			prevents collisions with the scanning code, which may change the card's
			ESSID and cause the access point to get dropped from the device's AP
			list.  Also increase the keep-around time to 2m from 60s since the max
			scan interval could be 60s in some cases.

	* src/NetworkManagerPolicy.c
		- (nm_policy_activation_finish): Don't add invalid MAC addresses to GConf
		- (nm_policy_allowed_ap_list_update): When we update, make sure we copy over
			the new properties and ESSIDs to the device's AP list.  Fixes some races
			between NM and NMI.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@401 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-29 23:34:31 +00:00
Dan Williams
13325a091e 2005-01-25 Dan Williams <dcbw@redhat.com>
* configure.in
		- Check DBUS version in configure, and set the C macros
			DBUS_VERSION_[MAJOR,MINOR,MICRO]

	* info-daemon/NetworkManagerInfoDbus.c
		- Remove #if 0-d section of code that quit NMI if NM went away.

	* panel-applet/NMWirelessAppletDbus.c
		- Trap the "ServiceOwnerChanged" signal that's new in dbus-0.23

	* src/NetworkManager.c
	  src/NetworkManagerMain.h
	  src/NetworkManagerDbus.c
		- Trap the "ServiceOwnerChanged" signal that's new in dbus-0.23
		- Make updating of our Allowed Wireless Network lists from NMI
			an idle function in the main thread now, with a high priority.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@398 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-25 18:21:38 +00:00
Dan Williams
3b658a579f 2005-01-21 Dan Williams <dcbw@redhat.com>
* src/NetworkManager.c
		- Daemonize earlier so that glib doesn't get confused (?)


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@390 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-22 04:26:48 +00:00
Dan Williams
9e154261fb 2005-01-21 Dan Williams <dcbw@redhat.com>
* Cache last-known-good wireless authentication method in
		NetworkManagerInfo, and use that method first during
		wireless device activation.  Should speed up devices that
		need Shared Key authentication method since Open System is
		now the default.

	* Remove the hack to not do full activation on wired connections
		that are active when we launch, it causes too many problems
		with name resolution and was a hack in the first place.

	* Re-work wireless device activation again somewhat to have a
		clearer chain of events and to use last-known-good
		authentication method of the access point.  Also provide
		better status throughout activation to ensure the applet
		can tell the user exactly what's going on.

	* Remove the "find wireless network" code and now simply attempt
		to activate with that access point.  This reduces the delay
		between selecting "Other wireless Network" and actually
		connecting to that network.

	* Correctly stop the device's worker thread when its removed.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@388 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-21 19:32:08 +00:00
Dan Williams
c9b41bb448 2005-01-18 Dan Williams <dcbw@redhat.com>
* dhcpcd/client.c
		- Remove some debug messages
		- Wrap others in #ifdef DEBUG/#endif

	* src/NetworkManager.c
		- Remove some debug messages
		- Clarify some debug messages
		- Remove code related to old single-thread wireless scanning

	* src/NetworkManagerAP.[ch]
		- New AP property "last_seen" to track how recently an AP was
			found in a scan
		- Start using 'const' more in function arguments

	* src/NetworkManagerAPList.[ch]
		- (nm_ap_list_merge_scanned_ap): new, selectively update attributes
			of an AP found in an AP list from a source AP, or if not found
			in the list add the source AP
		- (nm_ap_list_combine): remove, no longer needed

	* src/NetworkManagerDevice.c
		- Each device now has a "worker" thread from start to end of its life.
			Scanning for wireless devices now happens in that thread,
			not in a single "wireless scanning thread" for all devices as
			previously.  Activation consists of adding an idle handler to the
			thread's main loop/context, which gets run at the next available
			opportunity.
		- Wireless scanning is also simplified, there is now only one list of
			access points per wireless device, and APs older than 60s are
			removed from the list.  Previously, we kept results for the last
			3 scans and merged whole lists, which was complicated.
		- Cleaned up activation debug messages.
		- Wireless activation and access-point search routines now use Open System
			authentication before trying Shared Key.
		- Removed some code in nm_device_update_best_ap() that could cause cards
			to loose their link to the access point.
		- Scanning now uses a backoff algorithm, where the inverval becomes
			progressively longer between scans when the list of scanned access
			points doesn't change.  A change will revert to the shortest scan
			interval (20s).

	* src/NetworkManagerWireless.[ch]
		- Remove code related to old single-thread wireless scanning


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@382 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-18 22:08:22 +00:00
Colin Walters
f9d46351f6 2005-01-14 Colin Walters <walters@redhat.com>
Patch from ed@catmur.co.uk (Ed Catmur)

	* named/nm-named-manager.c: Add "context" property.
	Use it to add child watch source in specific GMainContext.

	* src/NetworkManager.c (nm_data_new): Initialize
	named with correct main context.  Start named only
	after forking.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@377 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-15 03:21:00 +00:00
Dan Williams
99cfa54d0f 2005-01-12 Dan Williams <dcbw@redhat.com>
* libnm_glib/
		- Client library for applications using glib

	* configure.in
	  various Makefiles
		- Split NM_CFLAGS and NM_LIBS into separate variables
			like DBUS_*, HAL_* and GLIB_*

	* src/NetworkManager.c
	  src/NetworkManagerMain.h
		- (nm_schedule_status_signal_broadcast): at the earliest convenience,
			broadcast a status changed signal over DBUS from the main thread.
			Still unused anywhere for the moment.

	Patch from j@bootlab.org
	* panel_applet/NMWirelessAppletDbus.c
	  src/NetworkManagerDbus.c
		- Correct INT32->UINT32 mistmatch between NM and the panel applet
			for the "getMode" method call


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@368 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-12 18:40:04 +00:00
Dan Williams
9724e4eb3c 2005-01-09 Dan Williams <dcbw@redhat.com>
* dhcpcd/client.c
		- Use correct timeout value

	* info-daemon/NetworkManagerInfoDbus.c
	  src/NetworkManagerDbus.c
		- Consolidate communication between NM and NMI by doing only 1 dbus
			method call to get Wireless Network info from NMI instead of 6

	* src/NetworkManager.c
		- Make sure to cancel activation when we receive a SIGTERM, otherwise
			when we didn't have an AP to use, we'd wait for one forever without
			quitting

	* src/NetworkManagerDevice.c
		- nm_device_activation_cancel(): Fix a race between dhcp and quitting
			activation, dhcp might not have started yet but we don't quit activation
			before starting it, so the quit signal gets lost


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@363 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-01-09 23:15:36 +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
Colin Walters
33bd873ec4 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
2004-12-21 06:49:21 +00:00
Dan Williams
d12bd5843a Revert scanning interval back to 10s, blow away resolv.conf for ad-hoc networks
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@344 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-12-17 21:39:23 +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
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
2ad25b238e 2004-11-15 Dan Williams <dcbw@redhat.com>
Major rework of link detection code.  We now use DHCP
	as part of the link detection which proves to be much more robust,
	and also supports Open System authentication for wireless networks.

	We no longer use external DHCP client programs.  Instead, we use
	our own DHCP client, based on substantially reworked bits of 'dhcpcd'
	which was written by:
		Yoichi Hariguchi <yoichi@fore.com>
		Sergei Viznyuk <sv@phystech.com>
		http://www.phystech.com/download/
	It resides in the "dhcpcd" directory and was refactored into a general
	purpose DHCP client library by me.

	Also misc fixes (CPPFLAGS->AM_CPPFLAGS, move some stuff around),
	move src/backends/NetworkManagerSystem.h -> src/NetworkManagerSystem.h


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@314 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-11-16 02:41:53 +00:00
Colin Walters
1d421e5227 2004-11-11 Colin Walters <walters@verbum.org>
* src/NetworkManager.c (main): Use daemon(3).

	* info-daemon/NetworkManagerInfo.c (main): Ditto.

	* dispatcher-daemon/NetworkManagerDispatcher.c (main): Ditto.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@304 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-11-12 01:46:16 +00:00
Dan Williams
fd3cd7d1ea 2004-10-29 Dan Williams <dcbw@redhat.com>
* src/NetworkManager.c
		- (nm_hal_device_property_modified): unlock a locked active
			wireless device when a wired connection gets a link.
			(Means you'll switch to wired whenever you plug in no
			matter what).


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@278 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-29 17:59:39 +00:00
Dan Williams
6000e6f062 2004-10-27 Dan Williams <dcbw@redhat.com>
* info-daemon/NetworkManagerInfo.c
	  info-daemon/NetworkManagerInfoDbus.c
	  info-daemon/NetworkManagerInfoPassphraseDialog.c
	  panel-applet/NMWirelessApplet.c
		- Properly escape gconf keys

	* src/NetworkManager.c
		- remove unused variables

	* src/NetworkManagerAP.c
		- (nm_ap_new_from_ap): Don't redundantly set new APs
			refcount since it got set in nm_ap_new()

	* src/NetworkManagerAPList.c
		- (nm_ap_list_combine): Give up ownership of newly created
			access points to the ap list, fixes memleak

	* src/NetworkManagerDevice.c
		- Remove cached_ap_list4 member since its not really needed
		- (nm_device_wireless_network_exists): Try to get correct
			encryption status of a found AP if its already in our
			device list
		- (nm_device_do_normal_scan): Clean up scanning a bit, make
			memory allocs/deallocs a bit clearer and shorter-lived


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@275 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-27 19:02:07 +00:00
Dan Williams
faae8945db 2004-10-21 Dan Williams <dcbw@redhat.com>
* NetworkManager.h
		- New file, now contains commonly used structures and bits
			for the dbus API of NetworkManager

	* Makefile.am
		- Deliver NetworkManager.h to ${includedir}/NetworkManager

	* src/NetworkManager.h
		- Rename -> src/NetworkManagerMain.c

	* Various fixups all around to use NetworkManager.h and new
		src/NetworkManagerMain.h, remove redundant bits that got
		moved into NetworkManager.h

	* src/NetworkManagerDevice.[ch]
	  src/NetworkManagerUtils.[ch]
	  src/NetworkManagerPolicy.c
	  src/NetworkManagerDbus.c
		- Whitelist wireless drivers, and blacklist some wired
			drivers.  Also blacklist cipsec and ethernet-over-usb
			devices at this time (RH #135722, RH #135648)
		- Don't leak unsupported devices out over dbus, or allow
			them to be set as the active device.  Skip over them
			during automatic device picking

	* test/nmclienttest.c
		- Clean up the dbus code a lot


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@261 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-21 17:42:14 +00:00
Dan Williams
c396b6b27d 2004-10-18 Dan Williams <dcbw@redhat.com>
Patches from Thom May:
	* test/nmtestdevices.c
		- Include <string.h>
	* src/backends/NetworkManagerDebian.c:
		- (nm_system_device_run_dhcp, nm_system_device_stop_dhcp)
			(nm_system_device_flush_routes, nm_system_device_flush_addresses)
			Move to using g_strdup_printf rather than arbitrary buffers
		- (nm_system_device_setup_static_ip4_config) Implement function.
		- (nm_system_kill_all_dhcp_daemons) Use killall -q rather than killall


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@256 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-19 02:27:04 +00:00
Dan Williams
267a0803f6 2004-10-15 Dan Williams <dcbw@redhat.com>
---- We have a website ----
	http://people.redhat.com/dcbw/NetworkManager

	Patch from Robert Paskowitz:
	* src/NetworkManager.c
		- (main): Make sure we are run as root
	* src/NetworkManagerDevice.c
		- Fix type in ad-hoc setting function

	Patch from Thom May:
	* src/backends/NetworkManagerDebian.c
		- Make Debian backend compile again


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@243 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-10-15 15:59:25 +00:00