Commit graph

9 commits

Author SHA1 Message Date
Tambet Ingo
b6680375d1 2007-02-05 Tambet Ingo <tambet@ximian.com>
* src/nm-device-802-11-wireless.c (supplicant_iface_scan_result_cb): 
	* src/supplicant-manager/nm-supplicant-interface.h
	* src/supplicant-manager/nm-supplicant-interface.c
	(nm_supplicant_interface_class_init): Change the "scan-result" signal's
	argument to boolean from enum.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2287 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-02-05 16:21:25 +00:00
Tambet Ingo
a88e1dd3a2 2007-02-05 Tambet Ingo <tambet@ximian.com>
Make NMDevice abstract class, remove almost all references to it's
	subclasses (the last place gets removed with new policy manager). Add
	NMDeviceInterface (which NMDevice implements) so that when we have
	NMDevice exported over DBUS, there's a common NMDevice interface which
	all instances have, plus there's a device specific interface for each
	specific type.
	Remove functions (nm_device_is_802_3_ethernet) and
	(nm_device_is_802_11_wireless). There are already standard GObject macros
	for type safe checks.
	Use the updated supplican manager API.

	* src/nm-device-interface.h: 
	* src/nm-device-interface.c: 
	* src/nm-call-store.h: 
	* src/nm-call-store.c: Implement.

	* src/supplicant-manager/nm-supplicant-interface.c:
	* src/supplicant-manager/nm-supplicant-interface.h:
	* src/supplicant-manager/nm-supplicant-manager.c:
	* src/supplicant-manager/nm-supplicant-manager.h:
		- Remove all private data type references from public header files.
		- Remove all references to other NM classes, this class is just a
		  proxy between wpa_supplicant and NM so it doesn't have to know
		  any internals.
		- Convert to dbus-glib bindings.
		- Type safe checks for public methods' arguments.
		- Store pending DBUS call ids to NMCallStore.

	* src/supplicant-manager/nm-supplicant-config.c:
		- Store config values in a GHashTable instead of GSList.




git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2285 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-02-05 12:14:09 +00:00
Dan Williams
a6f5833cb3 2006-12-19 Dan Williams <dcbw@redhat.com>
Big wpa_supplicant + dbus update; need latest wpa_supplicant from CVS
	plus a few other patches from wpa_supplicant bugzilla.

	* src/Makefile.am
	  src/NetworkManagerPolicy.c
	  src/NetworkManagerUtils.c
	  src/NetworkManagerUtils.h
	  src/nm-ap-security-leap.c
	  src/nm-ap-security-wep.c
	  src/nm-ap-security-wpa-eap.c
	  src/nm-ap-security-wpa-psk.c
	  src/nm-ap-security.c
	  src/nm-ap-security.h
	  src/nm-device-802-11-wireless.c
	  src/nm-device-802-11-wireless.h
	  src/supplicant-manager/nm-supplicant-config.c
	  src/supplicant-manager/nm-supplicant-config.h
	  src/supplicant-manager/nm-supplicant-interface.c
	  src/supplicant-manager/nm-supplicant-interface.h
	  src/supplicant-manager/nm-supplicant-marshal.list
	  src/supplicant-manager/nm-supplicant-settings-verify.c
	  src/supplicant-manager/nm-supplicant-settings-verify.h
		- Move all connection management and association handling to
			wpa_supplicant over dbus, rather than spawning a private copy


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2192 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-12-19 19:15:31 +00:00
Dan Williams
bcf29cf7a5 2006-12-04 Dan Williams <dcbw@redhat.com>
* src/supplicant-manager/nm-supplicant-interface.[ch]
		- (nm_supplicant_interface_get_state): new function


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2160 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-12-04 19:09:44 +00:00
Dan Williams
ad9c4eb950 2006-12-04 Dan Williams <dcbw@redhat.com>
* src/supplicant-manager/nm-supplicant-interface.[ch]
		- (nm_supplicant_interface_get_connection_state): new function
		- define new supplicant connection states
		- send a signal when the supplicant connection state changes


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2157 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-12-04 05:45:05 +00:00
Dan Williams
141af10189 2006-12-03 Dan Williams <dcbw@redhat.com>
* src/supplicant-manager/Makefile.am
	  src/supplicant-manager/nm-supplicant-connection.h
	  src/supplicant-manager/nm-supplicant-connection.c
	  src/supplicant-manager/nm-supplicant-config.h
	  src/supplicant-manager/nm-supplicant-config.c
	  src/supplicant-manager/nm-supplicant-types.h
	  src/supplicant-manager/nm-supplicant-interface.h
	  src/supplicant-manager/nm-supplicant-interface.c
		- Rename NMSupplicantConnection -> NMSupplicantConfig


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2154 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-12-03 20:04:11 +00:00
Dan Williams
56621e5f66 2006-11-26 Dan Williams <dcbw@redhat.com>
Scan using wpa_supplicant over DBus.

	* src/nm-device-802-11-wireless.c
		- remove wireless extensions netlink event handler bits
			(wireless_event_helper, nm_device_802_11_wireless_event)
		- remove wireless extensions scan event handler bits
			(process_scan_results, add_new_ap_to_device_list, hexstr2bin,
			hex2byte, hex2num, request_and_convert_scan_results,
			free_process_scan_cb_data, scan_results_timeout,
			schedule_scan_results_timeout, cancel_scan_results_timeout)
		- Rename nm_device_802_11_wireless_scan() -> request_wireless_scan()
			and request scans from the supplicant interface rather than directly
		- Move functionality of convert_scan_results() to cull_scan_list() and
			supplicant_iface_scanned_ap_cb()
		- (supplicant_iface_scan_result_cb): new function; schedule a new scan
			at the scan interval when the current scan has finished
		- (supplicant_iface_state_cb): start scanning when the supplicant
			interface enters the READY state, and stop scanning when it
			enters the DOWN state
		- (cull_scan_list): weed out old access points from the scan list
		- (supplicant_iface_scanned_ap_cb): convert a supplicant scanned access
			point into an NMAccessPoint and merge it into the device's scan list

	* src/supplicant-manager/nm-supplicant-interface.c
	  src/supplicant-manager/nm-supplicant-interface.h
		- Add a new signal "scan-result" which is issued when the supplicant
			notifies NM that a scan has completed
		- Add a new signal "scanned-ap" that notifies listeners of a new access
			point found in the scan.  Called once for each access point that
			the supplicant interface object receives from the supplicant as a
			result of the "scanResults" method call
		- (wpas_iface_query_scan_results): don't wait 4s before querying
			for the initial scan results
		- (scan_request_cb): new function; send listeners the result
			(success, error) of a wireless scan request
		- (nm_supplicant_interface_request_scan): new function; ask the
			supplicant to perform an immediate wireless scan


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2128 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-11-26 20:49:48 +00:00
Dan Williams
8fd7082b66 2006-11-25 Dan Williams <dcbw@redhat.com>
* src/supplicant-manager/Makefile.am
		- Since we're including NetworkManagerMain.h in nm-supplicant-interface.c,
			add HAL cflags/includes and named-manager includes directory

	* src/supplicant-manager/nm-supplicant-interface.h
		- New state STARTING to handle transition from INIT to READY where
			the addInterface pending call is still outstanding

	* src/supplicant-manager/nm-supplicant-interface.c
		- track pending calls differently since we may have more than one
			going on at any given time
		- request scan results from wpa_supplicant; but don't do it more often
			than every 4 seconds.  Drivers that do background scanning
			(like the 'ipw' drivers) send a continuous stream of scan completion
			notifications, so we don't want to hammer the supplicant or dbus
			with requests for all scan results every time we get a completion
			notification.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2126 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-11-25 18:23:06 +00:00
Dan Williams
4bc25ba3bf 2006-11-25 Dan Williams <dcbw@redhat.com>
* src/supplicant-manager/nm-supplicant-types.h
		- new file; move all supplicant manager object typedefs here for
			#include sanity

	* src/supplicant-manager/nm-supplicant-interface.c
	  src/supplicant-manager/nm-supplicant-interface.h
		- new file; an object that interfaces an NMDevice object to the
			supplicant and handles signals from the supplicant.  This object
			does all necessary DBus communication with wpa_supplicant.

	* src/supplicant-manager/nm-supplicant-manager.c
	  src/supplicant-manager/nm-supplicant-manager.h
		- Actually do something.  Track the state of the wpa_supplicant service
			and deal with its comings & goings.  Handle life events of
			supplicant interfaces too.
		- Move NMSupplicantManager typedef to nm-supplicant-types.h

	* src/supplicant-manager/nm-supplicant-connection.h
		- Move NMSupplicantConnection typedef to nm-supplicant-types.h

	* src/supplicant-manager/Makefile.am
		- Add new files to build, and add libnm-util to includes

	* src/nm-marshal.list
		- New marshaler type: VOID:UINT,UINT

	* src/nm-device-802-3-ethernet.c
		- (real_init): grab a supplicant interface
		- (nm_device_802_3_ethernet_dispose): release the supplicant interface
		- (supplicant_iface_state_cb): new function, stub for handling
			supplicant interface state changes

	* src/nm-device-802-11-wireless.c
		- (real_init): grab a supplicant interface
		- (nm_device_802_11_wireless_dispose): release the supplicant interface
		- (supplicant_iface_state_cb): new function, stub for handling
			supplicant interface state changes

	* src/NetworkManager.c
		- (main): create and keep the supplicant manager around for the lifetime
			of NetworkManager

	* src/Makefile.am
		- Link to the supplicant manager sub-library and use the supplicant
			manager includes


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2125 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-11-25 15:41:04 +00:00