Commit graph

55 commits

Author SHA1 Message Date
Dan Williams
5d1d4d185e 2008-01-17 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (check_connection_allowed): take an NMDeviceInterface instead of
			an NMDevice object as an argument
		- (nm_manager_activate_device): pass an NMDeviceInterface to
			check_connection_allowed()



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3241 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2008-01-18 02:54:55 +00:00
Tambet Ingo
8774cc756a 2008-01-02 Tambet Ingo <tambet@gmail.com>
* libnm-util/nm-setting-serial.c (nm_setting_serial_class_init):
        * Mark the properties
        with G_PARAM_CONSTRUCT so that they get the default values.

        * src/nm-gsm-device.c: Add preliminary support for monitoring
        * device. It only monitors
        the monitoring device and prints out the output for now. Or more
precicely, doesn't
        do absolutely anything right now since the montoring device
argument is never set.

        * src/nm-serial-device.c (serial_debug): Implement. It's very
        * verbose and thus
        requires it's own knob to turn it on.
        (config_fd): Add NMSettingSerial to the arguments list.
        (nm_serial_device_open): Ditto.
        (get_reply_got_data): Ignore the terminators at the beginning of
the output.
        (nm_serial_device_get_io_channel): Implement.

        * src/nm-manager.c: Add NMDBusManager to the private data of the
        * NMManager. Asking
        a new reference every time (and forgetting to release it
sometimes) is a pain and
        it's not like NMManager could work without dbus.
        (nm_manager_add_device): Register the added device on dbus here.

        * src/nm-hal-manager.c (modem_device_creator): Pass NULL for now
        * for the monitoring
        device.

        * src/nm-device.c (constructor): Don't export the device here,
        * instead export
        it when it's added to the NMManager's device list.




git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3203 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2008-01-02 13:42:52 +00:00
Dan Williams
ec22c11c4f 2007-12-31 Dan Williams <dcbw@redhat.com>
* src/nm-device-interface.c
	  src/nm-device-interface.h
		- (nm_device_interface_check_connection_conflicts): new function

	* src/nm-device.c
	  src/nm-device.h
		- (nm_device_check_connection_conflicts): new function
		- (device_activation_precheck): don't require subclasses to implement
			check_connection_complete()
		- check_connection() -> check_connection_complete()

	* src/nm-device-802-11-wireless.c
		- (real_check_connection): remove; unused
		- (real_check_connection_conflicts): implement, handle lockdown for
			system connections

	* src/nm-device-802-3-ethernet.c
		- (real_check_connection): remove; unused

	* src/nm-manager.c
		- (check_connection_allowed): new function
		- (nm_manager_activate_device): ensure the connection being requested
			is allowed to be activated

	* src/nm-serial-device.c
	  src/nm-gsm-device.c
		- real_check_connection() -> real_check_connection_complete()



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3201 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-12-31 17:05:25 +00:00
Dan Williams
7f88f52573 2007-12-27 Dan Williams <dcbw@redhat.com>
* src/nm-device-interface.c
	  src/nm-device-interface.h
		- (nm_device_interface_error_quark, nm_device_interface_error_get_type):
			normalize and expand errors
		- (nm_device_interface_init): register errors so they can be marshalled
			through dbus-glib
		- (nm_device_interface_activate): ensure that failure of activation
			returns an error

	* src/nm-device.c
	  src/nm-device.h
		- (device_activation_precheck): implementations of check_connection()
			now take a GError and must fill it in if the check fails.  Return
			more descriptive error if the requested connection is already
			activating
		- (nm_device_activate): actually try to return descriptive errors on
			failures

	* src/nm-device-802-11-wireless.c
	  src/nm-device-802-3-ethernet.c
	  src/nm-serial-device.c
	  src/nm-gsm-device.c
		- (real_check_connection): return more descriptive errors on failure

	* src/NetworkManagerPolicy.c
		- (nm_policy_device_change_check): print activation errors in the logs

	* src/nm-manager.c
		- (nm_manager_error_quark, nm_manager_error_get_type,
		   nm_manager_class_init): new errors
		- (nm_manager_activate_device): handle errors
		- (nm_manager_error_new): removed
		- (wait_for_connection_expired, connection_added_default_handler,
		   impl_manager_activate_device): better error handling



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3197 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-12-27 08:06:27 +00:00
Dan Williams
b1d28ff48b Fix gnome.org #503840
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3179 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-12-18 04:15:42 +00:00
Dan Williams
cfaa9b73a1 Avoid memory leak on error
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3166 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-12-12 22:40:42 +00:00
Tambet Ingo
db5a10dc4d 2007-11-28 Tambet Ingo <tambet@gmail.com>
Merge the beginnings of the new GSM card support.

        * src/ppp-manager/nm-ppp-manager.c (nm_ppp_manager_stop): Remove
        * the
        ppp watch source before killing pppd - If this happens from
g_object_unref()
        then the ppp manager is already destroyed by the time the watch
callback runs.

        * src/nm-hal-manager.c: Add a device_type_name string to the
        * device
        creators, so that we can print a nice human readable string when
a
        device is added.

        * src/nm-umts-device.c (automatic_registration_get_network):
        * Query
        for the activated network, not much is done with the result
thought.

        * src/nm-serial-device.c (nm_serial_device_get_reply):
        * Implement.
        (ppp_ip4_config): Change the device state to activated here for
now.
        (real_check_connection): Make sure the connection includes ppp
setting.

        * libnm-glib/nm-client.c (get_device): Handle umts devices.

        * libnm-glib/Makefile.am: Add the new files to build.

        * libnm-glib/nm-umts-device.c: 
        * libnm-glib/nm-umts-device.h: Implement.

2007-11-26  Tambet Ingo  <tambet@gmail.com>

        * src/nm-umts-device.c (automatic_registration_get_network): For
        * now, dial
        immediately, nm_serial_device_get_reply() isn't implemented
correctly yet.

        * src/nm-serial-device.c (wait_for_reply_info_destroy): Don't
        * try to remove
        the timeout source - this function is only called when the
timeout source has
        been removed.
        (nm_serial_device_wait_for_reply): Allocate the duplicate
responses array
        to be big enough to contain the terminating zero element as
well.
        The timeout argument is meant to be in seconds now.
        (real_deactivate_quickly): Implement.

        * src/NetworkManager.conf: Allow root to own 
        "org.freedesktop.NetworkManager.PPP", deny it for everybody
else.

        * libnm-util/nm-setting-umts.c: Network type and band properties
        * are ints,
        (not unsigned ints).

        * libnm-util/nm-setting-serial.c (nm_setting_serial_class_init):
        * Fix a 
        small issue with parity bounds - capital letters have lower
ascii codes
        than lower case letters.

        * libnm-util/nm-connection.c (register_default_settings):
        * Register serial
        and umts settings.

2007-11-22  Tambet Ingo  <tambet@gmail.com>

        Remove the "index" property from devices as not all device types
have this.

        * include/NetworkManager.h (NM_DBUS_PATH_DEVICE): Remove.

        * src/nm-hal-manager.c (nm_get_device_index_from_hal): Remove.
        (wired_device_creator): Get the device interface from hal to
create the device.
        (wireless_device_creator): Ditto.

        * src/nm-device.c (nm_device_init): Remove the index member.
        (constructor): Remove the checks for index property, make
interface property
        a require constructor property.
        Use the HAL udi for DBus path for devices.
        (nm_device_get_index): Remove.
        (set_property): Remove index handling.
        (get_property): Ditto.
        (nm_device_get_dbus_path): Remove.

        * src/nm-device-interface.c (nm_device_interface_init): Remove
        * the index
        property.

        * src/nm-device-802-3-ethernet.c
        * (nm_device_802_3_ethernet_link_activated):
        Access the device index through it's interface.
        (nm_device_802_3_ethernet_link_deactivated): Ditto.
        (nm_device_802_3_ethernet_new): Remove the useless argument
test_dev. Remove
        index argument. Add interface argument.

        * src/nm-device-802-11-wireless.c
        * (nm_device_802_11_wireless_new): Remove
        the useless test_dev argument. Remove index argument. Add
interface arugment.

        * src/NetworkManagerSystem.c
        * (nm_system_device_set_from_ip4_config): Get the
        device index through interface.
        (nm_system_set_mtu): Ditto.

        * introspection/nm-device.xml: Remove the "Index" property.

2007-11-21  Tambet Ingo  <tambet@gmail.com>

        * src/nm-serial-device.c: 
        * src/nm-serial-device.c: 
        * src/nm-umts-device.c:
        * src/nm-umts-device.h: Implement.

        * src/nm-hal-manager.c (nm_get_device_driver_name):
        * libhal_free_string the string 
        allocated by libhal.
        (modem_device_creator): Implement.
        (register_built_in_creators): Register the modem creator.

        * src/nm-device-802-11-wireless.c
        * (nm_device_802_11_wireless_new): 
        Remove the unused test_dev argument.

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

        * src/Makefile.am: Add new files to build.
        Link in ppp-manager.

        * libnm-util/nm-setting-umts.c: 
        * libnm-util/nm-setting-umts.h: 
        * libnm-util/nm-setting-serial.c: 
        * libnm-util/nm-setting-serial.h: Implement.

        * libnm-util/Makefile.am: Add new files to build.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3116 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-11-29 14:38:07 +00:00
Tambet Ingo
6b79d40a76 2007-11-07 Tambet Ingo <tambet@gmail.com>
Rework NMSetting structures: Move each setting to it's own file.
        Convert to GObject. Remove home grown setting types and use
GTypes.
        Use GObject property introspection for hash conversion,
enumerating
        properties, etc.

        * libnm-util/nm-setting-connection.[ch]
        * libnm-util/nm-setting-ip4-config.[ch]
        * libnm-util/nm-setting-ppp.[ch]
        * libnm-util/nm-setting-vpn.[ch]
        * libnm-util/nm-setting-vpn-properties.[ch]
        * libnm-util/nm-setting-wired.[ch]
        * libnm-util/nm-setting-wireless.[ch]
        * libnm-util/nm-setting-wireless-security.[ch]

        New files, each containing a setting.

        * libnm-util/nm-setting-template.[ch]: A template for creating
        * new
        settings. To use it, just replace 'template' with the new
setting
        name, and you're half-way done.

        * libnm-util/nm-setting.c: Convert to GObject and use GObject
        introspection instead of internal types and tables.

        * libnm-util/nm-connection.c: Adapt the new NMSetting work.

        * libnm-util/nm-param-spec-specialized.[ch]: Implement. Handles
        GValue types defined by dbus-glib for composed types like
collections,
        structures and maps.

        * src/*: The API of NMSetting and NMConnection changed a bit:
        * Getting
        a setting from connection takes the setting type now. Also,
since
        the settings are in multiple files, include relevant settings.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3068 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-11-07 16:06:43 +00:00
Dan Williams
42a732d9b9 2007-10-19 Dan Williams <dcbw@redhat.com>
Split the GetSecrets() call off to a separate D-Bus interface so that it
	can be more easily locked down with D-Bus policy.  Only 'root' (ie, NM)
	should be able to call GetSecrets().

	* include/NetworkManager.h
		- Define the connection secrets D-Bus interface

	* src/vpn-manager/nm-vpn-connection.c
		- (clear_need_auth): get the right proxy object for the connection
			secrets interface
		- (get_connection_secrets): use the connection secrets proxy; send
			empty hints in get secrets request

	* src/nm-activation-request.c
		- (nm_act_request_request_connection_secrets): use the connection
			secrets proxy; send empty hints in get secrets request

	* src/nm-manager.c
	  src/nm-manager.h
		- (connection_get_settings_cb): set the connection secrets proxy on
			the connection object too
		- (internal_new_connection_cb): create the connection secrets proxy

	* introspection/nm-settings-connection.xml
		- Define Connection.Secrets interface and move GetSecrets there
		- Add a 'hints' argument to GetSecrets

	* libnm-glib/nm-settings.c
	  libnm-glib/nm-settings.h
		- (impl_connection_settings_get_secrets): add 'hints' argument



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2989 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-19 04:55:05 +00:00
Dan Williams
7d424355e2 2007-10-17 Dan Williams <dcbw@redhat.com>
* src/nm-manager.h
	  src/nm-manager.c
	  src/nm-hal-manager.c
		- (device_removed, finalize, nm_manager_remove_device,
		   nm_manager_sleep): add a 'deactivate' argument to 
		   nm_manager_remove_device() to fully deactivate devices when necessary
		   (ie, always except when waking up)



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2985 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-17 11:36:33 +00:00
Dan Williams
9f255cf493 2007-10-16 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (manager_set_wireless_enabled): don't allow wireless to be enabled
			if it's disabled in hardware; don't touch network devices while
			NM is asleep



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2980 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-16 19:30:29 +00:00
Dan Williams
bebd0e38b8 2007-10-16 Dan Williams <dcbw@redhat.com>
* libnm-util/nm-client.c
		- (nm_client_activate_device): convert NULL specific_object to "/",
			which is used in place of NULL

	* src/nm-manager.c
		- (impl_manager_activate_device): convert "/" specific_object back into
			NULL



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2979 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-16 18:59:36 +00:00
Tambet Ingo
7e2a621f0a 2007-10-15 Tambet Ingo <tambet@gmail.com>
Implement killswitch polling through HAL.

        * src/nm-manager.c: Add wireless hardware status property. Add 
        'properties-changed' signal for changes in wireless and wireless
hardware
        state changes.

        * src/nm-hal-manager.c: Poll hal for killswitch statuses in
        * every 6 seconds
        and update NMManager's wireless hardware state when it has
changed.
        (nm_hal_manager_new): Don't try to add initial devices here -
(hal_init)
        already does that.

        * libnm-glib/nm-client.c: Add wireless hardware status property.
        * Cache the
        values of wireless state and wireless hardware state. Listen for
the
        'properties-changed' signals, update the cached values and emit
notify.

        * include/NetworkManager.h: Fix a typo in a comment.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2975 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-15 14:46:37 +00:00
Dan Williams
dc3d072b04 2007-10-10 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (wait_for_connection_expired): ensure info is valid
		- (connection_added_default_handler): Should only remove pending
			connection info when the manager has the connection that it's
			waiting for.  Fixes segfault in wait_for_connection_info().  



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2969 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-10 20:45:15 +00:00
Tambet Ingo
24adbe3fa4 2007-10-09 Tambet Ingo <tambet@gmail.com>
* src/NetworkManagerUtils.c
        (nm_utils_is_empty_ssid):
        (nm_utils_escape_ssid):
        (nm_utils_same_ssid): Remove. These functions are copied and
pasted in a 
        lot of places, so they belong to libnm-utils instead.

        Now with 100% less compiler warnings:

        * libnm-util/nm-utils.c (nm_dbus_escape_object_path): Remove,
        * unused.
        (nm_dbus_unescape_object_path): Ditto.
        (nm_utils_ssid_to_utf8): Ditto.
        (nm_utils_is_empty_ssid): Move here from
src/NetworkManagerUtils.c
        (nm_utils_escape_ssid): Ditto.
        (nm_utils_same_ssid): Ditto.

        * src/nm-manager.c: Include 'netinet/ether.h' for ether_aton_r.
        (add_one_connection_element): Remove an unused variable.
        (impl_manager_get_active_connections): Ditto.

        * src/NetworkManagerPolicy.c (get_device_connection): Remove an
        * unused
        variable.

        * src/nm-dbus-manager.c (nm_dbus_manager_start_service): Remove
        * a leftover
        from the previous commit.

        * src/nm-device-802-11-wireless.c (set_current_ap): Remove
        * unused variable.
        (real_act_stage1_prepare): Ditto.
        (activation_success_handler): Ditto.
        (get_property): Ditto.

        * src/nm-device-802-3-ethernet.c (real_get_best_connection):
        * Remove unused
        variable.

        * src/ppp-manager/nm-pppd-plugin.c (nm_ip_up): Remove the check
        * for 'ifname',
        it's always set.

        * src/supplicant-manager/nm-supplicant-config.c 
        (nm_supplicant_config_add_setting_wireless): Cast the
GByteArray's 'guint8 *'
        to expected "char *".
        (nm_supplicant_config_add_setting_wireless): Ditto.
        (nm_supplicant_config_remove_option): Remove, not used.

        * libnm-glib/libnm-glib-test.c (dump_access_point): Frequency is
        * a guint32,
        not double.
        (test_wireless_enabled): Ifdef out unused function.
        (device_deactivate): Ditto.
        (device_state_changed): Ditto.
        (nm_utils_is_empty_ssid): Remove, it's now in libnm-utils.
        (nm_utils_escape_ssid): Ditto.

        * test/nm-tool.c (nm_utils_escape_ssid): Remove, it's now in
        * libnm-utils.
        (nm_utils_is_empty_ssid): Ditto.

        * libnm-glib/nm-client.c
        * (nm_client_free_active_connection_element): Remove
        unused variable.

        * libnm-util/nm-setting.c (setting_wireless_destroy): Remove
        * unused variable.
        (setting_vpn_properties_update_secrets): Ditto.
        (int_to_gvalue): Ifdef out for now, not used.
        (byte_to_gvalue): Ditto.

        * libnm-util/dbus-dict-helpers.c
        * (_nmu_dbus_add_dict_entry_string_array): 
        Unused, remove.




git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2960 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-09 08:57:35 +00:00
Dan Williams
8bb7cdee1a 2007-10-08 Dan Williams <dcbw@redhat.com>
Fix problems with interrupted activation.  Previously, choosing an AP
	from the menu, then choosing another one before the first connection was
	successful wouldn't deactivate the device before starting the new connection
	on that same device.

	* src/NetworkManagerPolicy.c
		- (deactivate_old_device, device_state_changed, state_changed,
		   nm_policy_new): wrong place to deactivate old devices

	* src/nm-manager.c
		- (pending_connection_info_destroy, finalize,
		   wait_for_connection_expired): decouple destruction of the pending
			connection info from the manager device
		- (connection_added_default_handler): deactivate any active or
			activating device before starting a new activation
		- (impl_manager_activate_device): deactivate any active or activating
			device before starting a new activation; be sure not to leak
			pending connection info if a new activation request arrives but
			there's already a pending one in-process



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2956 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-08 16:27:07 +00:00
Dan Williams
d66216620d 2007-10-08 Dan Williams <dcbw@redhat.com>
* src/nm-device-802-11-wireless.c
	  src/nm-device-802-11-wireless.h
		- (nm_device_802_11_wireless_class_init, merge_scanned_ap): new
			'hidden-ap-found' signal (for internal use only) that allows the
			NMManager to fill in the AP's SSID if a connection has that AP's
			BSSID in its seen-bssids list

	* src/nm-manager.c
		- (manager_hidden_ap_found, nm_manager_add_device): attach to a
			wireless device's hidden-ap-found signal and fill in the APs SSID
			if possible



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2953 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-08 15:09:33 +00:00
Dan Williams
9d318e9fae 2007-10-07 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
	  src/nm-manager.h
		- Add a 'connections-added' signal to batch together updates of large
			numbers of connections, like when reading from a settings service
			the first time.  Otherwise, the policy would just activate the first
			suitable connection it saw rather than waiting for the full list
			to arrive.
		- (nm_manager_class_init): register new signal
		- (get_type_for_proxy, connection_get_settings_cb,
		   get_connection_for_proxy): centralize places where a proxy's setting
			service is determined
		- (free_get_settings_info): if the call being freed is the last call
			in a pending call group, fire off the connections-added signal
		- (internal_new_connection_cb): add call to a pending call group if
			requested
		- (list_connections_cb): always create a call group here, because this
			call results in a batch of new connections
		- (initial_get_connections): start getting system connections first
		- (nm_manager_connections_destroy, emit_removed): actually emit the
			removed signal when destroying connections

	* src/NetworkManagerPolicy.c
		- (nm_policy_new, connections_added): handle connections-added signal
			from the manager



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2951 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-07 23:33:28 +00:00
Dan Williams
a52ee53e2c 2007-10-06 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (connections_to_slist): sort connections first on autoconnect, then
			on timestamp



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2947 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-06 13:27:51 +00:00
Dan Williams
dff2886fb4 2007-10-06 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
	  src/nm-manager.h
		- (nm_manager_get_connection_dbus_path): make static
		- (nm_manager_update_connections): remove; unused
		- Add a connection-updated signal
		- (new_connection_cb, connection_updated_cb, nm_manager_class_init):
			handle connection object updates



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2942 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-06 04:28:46 +00:00
Dan Williams
f9fd8667d1 2007-10-03 Dan Williams <dcbw@redhat.com>
Add a GetActiveConnections() method on the Manager object.

	* src/nm-manager.c
	  src/nm-manager.h
	  introspection/nm-manager.xml
		- (connection_get_settings_cb): keep connection type around too
		- (impl_manager_get_active_connections, add_one_connection_element):
			implement; returns all active connections and what devices they
			apply to

	* libnm-glib/nm-client.c
	  libnm-glib/nm-client.h
	  introspection/nm-manager-client.xml
		- (nm_client_get_devices): GPtrArray elements are allocated and owned
			by the caller; free here to avoid memory leak
		- (nm_client_get_active_connections): implement; return the list of
			active connections
		- (nm_client_free_active_connection_element): implement; free an element
			of the GSList returned by nm_client_get_active_connections()



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2927 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-03 14:48:25 +00:00
Dan Williams
ee3f96cfd9 2007-10-01 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (impl_manager_activate_device): ensure the D-Bus method sends a return
			value when the connection can be activated immediately



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2922 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-02 01:12:55 +00:00
Tambet Ingo
485bcfe571 2007-09-28 Tambet Ingo <tambet@gmail.com>
* src/nm-manager.c:
        * src/nm-manager.h:
        Implement device activation through NMManager.
        Implement "pending device activation" here - If the connection
isn't found,
        we try to wait for up to 5 seconds for the connection to be
provided.
        Add NMConnectionType argument to "connection-added" and
"connection-removed"
        signals.
        (nm_manager_get): Remove. Finally.

        * src/nm-activation-request.c: 
        * src/nm-activation-request.h: 
        Remove all the deferred activation code.

        * src/nm-device.c: Remove all the deferred activation code. Once
        * the device
        activation is started, it's started. Update the activation
virtual function
        signature.

        * src/nm-device-interface.c:
        * src/nm-device-interface.h:
        Device activation now takes only NMActRequest argument.
        Don't expose device activation directly on dbus, it's supposed
to go through
        NMManager now.

        * src/NetworkManagerPolicy.c (nm_policy_device_change_check):
        * Make the code
        a bit more compact.
        Use the new device activation methods through NMManager.

        * introspection/nm-manager-client.xml: 
        * introspection/nm-manager.xml: 
        * libnm-glib/nm-client.c:
        * libnm-glib/nm-client.h:
        Add device activation method.
        
        * libnm-glib/nm-device.c: 
        * libnm-glib/nm-device.h: 
        * introspection/nm-device.xml: 
        Remove device activation method. It's done through NMManager
now.

        * src/vpn-manager/nm-vpn-manager.c (impl_vpn_manager_connect):
        * Use the shiny
        new (nm_manager_get_device_by_path) function, get rid of our own
)find_device).



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2915 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-10-01 15:38:39 +00:00
Dan Williams
b1bd00af07 2007-09-26 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
	  src/nm-manager.h
	  src/nm-activation-request.c
	  src/nm-activation-request.h
		- Move the GetSecrets stuff out of the NMManager instance because it
			doesn't really need to be there and complicates things

	* src/nm-device.c
		- (connection_secrets_failed_cb, device_activation_go): connect to the
			connection-secrets-failed signal and deactivate the device if
			the GetSecrets call fails

	* src/nm-device-802-11-wireless.c
		- (link_timeout_cb, supplicant_connection_timeout_cb,
		   real_act_stage2_config, real_act_stage4_ip_config_timeout): request
			secrets and give correct hints about whether new secrets should be
			asked for by the client or not



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2899 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-27 04:52:03 +00:00
Dan Williams
1451b90417 2007-09-26 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
	  src/nm-manager.h
		- (nm_manager_get_connection_secrets): make static, unused outside
			the file
		- Provide NM_MANAGER_CONNECTION_PROXY_TAG for other users



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2891 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-27 02:18:49 +00:00
Tambet Ingo
95e0ef0922 2007-09-26 Tambet Ingo <tambet@gmail.com>
* src/nm-manager.c (manager_device_state_changed): Listen to
        * device' NEED_AUTH
        state and try to get the secrets.

        * src/NetworkManagerPolicy.c (nm_policy_auto_get_best_device):
        * Get the list of
        connections from NMManager and let the device to choose the best
from the list.
        Since the connection list is sorted by system ones first and
user ones later,
        the devices still prefer system connections like they did
before.
        (deactivate_old_device): Implement. When a device starts
activation, we have a
        policy (for now at least) to deactivate any other device that
might be either
        active or still activating.

        * src/vpn-manager/nm-vpn-manager.c: Add NMManager back to the
        * private structure.
        It's set on construction, there will be no other way to access
it.

        * src/nm-device-802-11-wireless.c: Don't touch NMManager,
        * NMManager can listen to
        device events and drive the device, not the other way around.

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

        * src/nm-device.c (nm_device_get_best_connection): The
        * connections list is now
        sent along, pass it on to virtual functions.

        * src/nm-device-interface.c (nm_device_interface_get_iface):
        * Implement. It's static
        for now, but should really be public instead of
nm_device_get_iface() since iface
        is a property of the DeviceInterface, not Device.
        (impl_device_activate): Don't touch NMManager!




git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2889 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-26 15:38:51 +00:00
Dan Williams
e6f7cb13df 2007-09-25 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (nm_manager_update_state): new function; updates state and emits
			appropriate signals ensuring a state-change signal for the same state
			never gets emitted twice in a row.
		- (manager_device_state_changed): handle more device state to get a
			better picture of the overall NM state



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2882 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-25 16:47:53 +00:00
Dan Williams
6e1c10d31b 2007-09-25 Dan Williams <dcbw@redhat.com>
Ensure that old activation requests are forgotten about; previously
	hitting Cancel in the password dialog would deactivate whatever device
	that password was requested for, even if that wasn't the currently
	activating connection.

	* src/nm-manager.c
	  src/nm-manager.h
		- (nm_manager_get_connection_secrets): track the pending call
			object so it can be canceled later if needed
		- (nm_manager_cancel_get_connection_secrets): cancel a pending
			GetSecrets call for a particular connection

	* src/nm-activation-request.c
		- (dispose): cancel any outstanding GetSecrets calls on the
			connection



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2874 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-25 07:06:28 +00:00
Dan Williams
1817c62082 2007-09-25 Dan Williams <dcbw@redhat.com>
Properly re-query secrets from the settings daemon when stuff fails.

	* src/nm-device-802-11-wireless.c
		- (ap_auth_enforced): handle static WEP correctly here by differentiating
			between Shared Key and Open System auth modes
		- (link_timeout_cb, supplicant_connection_timeout_cb,
		   real_act_stage4_ip_config_timeout): clear existing secrets and
			request new ones when something fails due to a suspected wrong key
		- (real_act_stage2_config): fix for new request_new argument to
			nm_manager_get_connection_secrets()

	* src/nm-manager.c
	  src/nm-manager.h
		- (nm_manager_get_connection_secrets): return error status; pass
			new request_new argument on to the settings daemon

	* introspection/nm-settings-connection.xml
		- New 'request_new' argument to the GetSecrets call that hints to the
			settings daemon to ask the user for completely new secrets

	* libnm-glib/nm-settings.c
	  libnm-glib/nm-settings.h
		- (impl_connection_settings_get_secrets): handle new 'request_new'
			argument



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2872 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-25 06:21:38 +00:00
Dan Williams
44b7179e8c 2007-09-24 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (nm_manager_get_connection_secrets): Add a long timeout so the user
			actually has some time to enter a key before the GetSecrets call
			times out



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2866 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-24 21:29:53 +00:00
Dan Williams
9496e413c7 2007-09-24 Dan Williams <dcbw@redhat.com>
* introspection/nm-manager.xml
	  src/nm-manager.c
		- (impl_manager_legacy_state): fix 'state' method call return value



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2865 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-24 21:26:56 +00:00
Tambet Ingo
3f19c07885 2007-09-20 Tambet Ingo <tambet@gmail.com>
* libnm-util/nm-setting.h: Change the type of
        * NMSettingVPN->routes to
        GSList.

        * libnm-util/nm-setting.c (setting_vpn_destroy): Free routes
        * too.

        * src/nm-manager.c (connection_get_settings_cb): No need to use
        * weakref,
        just use (g_object_set_data_full).

        * src/vpn-manager/nm-vpn-connection.c
        * (nm_vpn_connection_get_routes): Now
        that NMSettingVPN->routes is a GSList, convert it to char **.
        (nm_vpn_connection_ip4_config_get): Free routes when done.
        (nm_vpn_connection_activate): Ditto.

        * src/nm-device-802-11-wireless.c
        * (real_connection_secrets_updated)
        (real_act_stage2_config): Use defined setting names.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2832 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-20 11:52:51 +00:00
Dan Williams
117cd4d076 2007-09-20 Dan Williams <dcbw@redhat.com>
* src/nm-device-802-11-wireless.c
	  src/nm-manager.c
	  src/nm-manager.h
		- Pass an NMDeviceInterface into nm_manager_get_connection_secrets()
			so that the device can be deactivated if secrets are wrong



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2830 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-20 11:25:47 +00:00
Dan Williams
13f21985d4 2007-09-14 Dan Williams <dcbw@redhat.com>
* src/nm-manager.h
	  src/nm-manager.c
		- (nm_manager_get_connection_service_name,
		   nm_manager_get_connection_dbus_path): get details about a connection
			known internally by the NMManager
		- (nm_manager_class_init): fix connection add/remove signal marshalers
			because NMConnection is now a GObject subclass
		- Use constant for the gobject data tag used on NMConnection objects for
			storing the associated DBusGProxy



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2810 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-14 19:36:00 +00:00
Dan Williams
7e079e3111 2007-09-11 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (connection_get_settings_cb): emit connection-added signal
		- (connection_removed_cb): uncomment bits for system settings service,
			send connection-removed when appropriate
		- (nm_manager_get_connection_secrets, get_secrets_cb): don't clobber
			the stack by trying to g_object_set_data() on something that's
			not a GObject; handle case where settings service returns
			empty settings hash table



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2793 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-11 23:28:41 +00:00
Dan Williams
937d1add73 2007-09-11 Dan Williams <dcbw@redhat.com>
* libnm-util/nm-setting.c
	  libnm-util/nm-setting.h
		- (nm_setting_update_secrets): new function; add a virtual function that
			subclasses can implement to update their secrets
		- (setting_wireless_security_update_secrets): implement that function
			for the 802-11-wireless-security subclass

	* libnm-util/nm-connection.c
	  libnm-util/nm-connection.h
		- (nm_connection_update_secrets): update secrets for a Setting and
			emit a signal on success

	* src/nm-manager.c
	  src/nm-manager.h
	  src/nm-marshal.list
		- (connection_get_settings_cb): enable system settings bits
		- (nm_manager_get_connection_secrets, get_secrets_cb): add function
			to request secrets from the settings dbus service and to
			push those secrets to the NMConnection itself

	* src/nm-activation-request.c
	  src/nm-activation-request.h
		- Attach to the 'secrets-updated' signal of the NMConnection that's
			currently being activated, and proxy that signal to other listeners.
			Goes through the activation request because the activation request
			is the thing that manages the lifetime of the NMConnection that's
			being activated.

	* src/nm-device-802-11-wireless.c
		- (real_connection_secrets_updated): implement the connection secrets
			updated notification and restart activation when secrets are
			received
		- (real_act_stage2_config): request secrets from the settings dbus
			service if secrets are needed

	* src/nm-device.c
	  src/nm-device.h
		- (clear_act_request, nm_device_activation_cancel,
		   nm_device_deactivate_quickly, nm_device_dispose): consolidate places
			where the activation request is cleared
		- (nm_device_activate, connection_secrets_updated_cb): attach to the
			updated secrets signal of activation request and add a function
			that subclasses can override to handle it easily



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2782 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-11 18:02:27 +00:00
Dan Williams
0930458ea4 2007-09-10 Dan Williams <dcbw@redhat.com>
* NetworkManagerAP.c
	  NetworkManagerAP.h
	  NetworkManagerPolicy.c
	  NetworkManagerSystem.c
	  NetworkManagerUtils.c
	  NetworkManagerUtils.h
	  nm-device-802-11-wireless.c
	  nm-device-802-3-ethernet.c
	  nm-hal-manager.c
	  nm-manager.c
	  vpn-manager/nm-dbus-vpn.c
		- Warning fixes; casts and removal of unused variables



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2779 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-10 19:51:25 +00:00
Dan Williams
0b94b3d318 2007-09-10 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (query_connections): fix uninitialized variable problem that caused
			segfault
		- (nm_manager_add_device): take devices down on startup so that we can
			be assured that nm_device_is_up() won't short-circuit the init
			process.  Hack until the is_up check gets split into two pieces
			that aren't behaviorally confusing.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2777 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-10 18:31:56 +00:00
Dan Williams
fba106c5b0 2007-09-09 Dan Williams <dcbw@redhat.com>
* introspection/nm-device.xml
		- The 'Activate' method now takes 3 arguments, a service name for the
		settings service (user or system), the object path of the connection
		to activate, and the specific object to activate, if any

	* src/nm-device-interface.c
		- (nm_device_interface_error_quark, nm_device_interface_error_get_type):
		Add error bits
		- (impl_device_activate): adapt to new Activate arguments; validate
		the service name and get the Connection object from the NMManager
		before starting to activate the device with the specified connection

	* src/nm-device-802-3-ethernet.c
		- (real_get_best_connection): find the best connection, or create a
		default one if no existing connections can be used

	* src/NetworkManagerPolicy.c
		- (nm_policy_auto_get_best_device): Get the device's best connection
		and only pick the device if it has one
		- (nm_policy_device_change_check): disable wireless bits for now until
		wireless get_best_connection() can be implemented (replacing "best_ap");
		don't create a default connection here as the device subclass will do
		that if needed

	* src/nm-manager.h
	  src/nm-manager.c
		- (nm_manager_get): make NMManager a singleton and expose the getter
		internally
		- Rework internal NMManager connection handling to use the same
		routines for both the system and user settings services.  Most calls
		take a new NMConnectionType argument specifying either system or user
		connections
		- (nm_manager_get_connection_by_object_path): new function; get a
		connection keyed on its object path

	* src/NetworkManager.c
		- (main): use nm_manager_get()



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2776 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-09 22:18:42 +00:00
Dan Williams
b1872d9ac2 2007-09-09 Dan Williams <dcbw@redhat.com>
Stupid mistake on my part; object path and interface for settings service
	and connection objects can be the same, only the service name must be
	different for the system and user settings services.

	* include/NetworkManager.h
	  src/nm-manager.c
	  introspection/nm-settings-connection.xml
	  introspection/nm-settings.xml
	  libnm-glib/nm-settings.c
		- (nm_connection_settings_init, query_user_connections,
		   new_connection_cb): Unify NetworkManagerSettings and Connection
		   interface name and object path



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2772 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-09 14:48:31 +00:00
Dan Williams
8af139dff4 2007-09-06 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (nm_manager_user_connections_destroy): clear the user connections hash
			table, don't destroy it
		- (finalize): only destroy the hash table on NMManager finalization



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2765 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-06 19:13:00 +00:00
Dan Williams
d1ac371963 2007-09-02 Dan Williams <dcbw@redhat.com>
* include/NetworkManager.h
	  libnm-glib/nm-settings.c
		- defines for the user settings daemon D-Bus bits

	* src/NetworkManager.c
		- Remove stuff that referred to the old NetworkManagerInfo service

	* src/vpn-manager/nm-dbus-vpn.h
		- Move old NMI defines to the only place they are used still

	* libnm-util/nm-connection.c
	  libnm-util/nm-connection.h
	  src/nm-activation-request.c
		- Make NMConnection a GObject subclass so we can do spiffy stuff with it

	* src/nm-manager.c
	  src/nm-manager.h
		- Get connections and their settings from the user settings daemon
			at the appropriate times



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2763 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-09-03 01:12:23 +00:00
Dan Williams
52033721dd 2007-08-30 Dan Williams <dcbw@redhat.com>
* src/Makefile.am
	  src/NetworkManagerDbus.c
	  src/NetworkManagerDbus.h
	  src/vpn-manager/nm-dbus-vpn.c
		- Remove, no longer necessary.  Move last bits to the only place its
		used, in nm-dbus-vpn.c

	* src/NetworkManagerAPList.c
	  src/nm-device.c
	  src/NetworkManager.c
	  src/nm-device-802-11-wireless.c
	  src/vpn-manager/nm-vpn-manager.c
	  src/vpn-manager/nm-vpn-service.c
	  src/NetworkManagerPolicy.c
	  src/nm-manager.c
		- Remove usage of NetworkManagerDbus.h, and kill the obfuscation
		that was message_is_error()



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2757 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-08-31 02:01:44 +00:00
Tambet Ingo
2fe726d144 2007-08-27 Tambet Ingo <tambet@gmail.com>
* src/nm-manager.c (impl_manager_get_devices): Duplicate the
        * device path, 
        dbus-glib frees it when the call is done.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2736 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-08-27 14:18:04 +00:00
Dan Williams
cd00315325 2007-08-26 Dan Williams <dcbw@redhat.com>
Convert to using interface indexes as the primary method of identifying
	devices inside NetworkManager.  Indexes are (?) stable, but devices can
	be renamed at any time.  Device object paths now refer to the device
	index rather than the name, and you can map those two manually if you like
	by looking in the /sys/class/net/<name>/ifindex file.  Also moves most
	netlink-related code to nm-netlink.c, and cleans up nm-netlink-monitor.c
	to use interface indexes rather than names.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2731 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-08-26 15:55:27 +00:00
Dan Williams
e5177b35cd 2007-08-20 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c
		- (nm_manager_remove_device): bring device down before disconnecting
			signal handlers, so that the 'state' signal will get broadcast when
			the device enters the DOWN state
		- (manager_device_state_changed): add NM_DEVICE_STATE_DOWN to the list
			of states that cause the NMManager to recheck its state



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2720 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-08-21 01:54:30 +00:00
Tambet Ingo
8bed6ff2de 2007-08-14 Tambet Ingo <tambet@gmail.com>
* libnm-glib/Makefile.am: Use nm-manager-client.xml to produce
        * nm-client-bindings.

        * introspection/nm-manager-client.xml: Add a horrible horrbile
        * hack to work around
        an issue with dbus-glib bindings generator. The issue is, the
generated C caller
        functions for dbus methods "Sleep(bool)" and "sleep()" both have
the same function
        name and different arguments and it won't compile anymore. To
fix this, we now have
        two copies of nm-manager.xml file. nm-manager.xml contains the
actual interface,
        that is new API + compatibility API and used by the daemon. The
other, 
        nm-manager-client.xml is only the new API without compatibility
bits and is used
        by libnm-glib to make it compile.

        * introspection/nm-manager.xml: Define compatibility methods
        * (sleep, wake, state).

        * src/nm-manager.c (impl_manager_legacy_sleep)
        (impl_manager_legacy_wake, impl_manager_legacy_state): Implement
the compatibility
        interface functions for 0.6 branch.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2688 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-08-15 07:52:25 +00:00
Dan Williams
040864f7cb Include NetworkManagerDbus.h to get def for nm_dbus_get_object_path_for_device()
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2645 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-07-26 14:42:13 +00:00
Tambet Ingo
636b1140c5 2007-06-21 Tambet Ingo <tambet@ximian.com>
* libnm-glib/Makefile.am: Add NMObject to build, remove nm-utils.[ch].

	* nm-utils.[ch]: Remove.

	* libnm-glib/nm-object.c: Implement a base class for all libnm-glib dbus-aware
	objects for easy property access and dbus connection handling.

	* libnm-glib/nm-client.c: Derive from NMObject.

	* libnm-glib/nm-device.c: Ditto.

	* libnm-glib/nm-device-802-3-ethernet.c: Changes for being based on NMObject.

	* libnm-glib/nm-device-802-11-wireless.c: Ditto.

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

	* libnm-glib/nm-access-point.c: Ditto.

	* libnm-util/nm-connection.c (nm_connection_compare): Add a stub for connection
	comparision. Currently used by the device activation code to determine if the new
	activation is the same as the old one.

	* src/nm-dbus-nmi.c (nm_dbus_get_user_key_for_network): Don't use the obsolete and
	wrong way of getting the dbus path for AP. Fixes the issue where the applet isn't
	able to ask password for the AP.

	* src/nm-device.c (nm_device_activate): Change the logic here - instead of giving
	up if the device is already connected, tear down it's connection (if it isn't the
	same as new one) and start the activation.

	* src/nm-manager.c: Add the beginnings of NMConnection storage and signals.

	* src/NetworkManagerAP.c (nm_ap_init): Set the default values to AP memebers, fixes
	the issue where all APs are always listed as encrypted.

	* src/NetworkManagerDbus.c (nm_dbus_get_object_path_for_network): Remove. APs have
	their own registered paths.

	* test/nm-tool.c (detail_device): Don't try to get active network from wireless
	device if it's not connected - dbus-glib will happily crash trying to marshal NULL.




git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2615 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-06-22 15:09:02 +00:00
Tambet Ingo
8fa8ac4c80 2007-03-15 Tambet Ingo <tambet@ximian.com>
* src/nm-device-802-11-wireless.c (constructor): Initialize the iw_ext structures
	with zeroes before passing them to functions - the functions never do that and
	reading the values back may produce wrong values.
	(real_bring_up): Store the signal handler id ...
	(real_bring_down): ... So that it can be removed here.
	Disconnect the supplicant interface here as well.
	(nm_device_802_11_wireless_ap_list_get_ap_by_obj_path): Use the dbus object path
	from the access point instead of old $device/Networks/$essid.

	* src/nm-manager.c (nm_manager_get_state): Return NM_STATE_CONNECTED when the
	device state is connected (instead of just having link/carrier).

	* src/nm-activation-request.c: Don't store NMData in activation request, it's
	already easily accessible through the device.

	* src/NetworkManagerAP.c (nm_ap_init): Construct the dbus object path here and
	store it within the object.
	(nm_ap_get_dbus_path): Export it to public as well.

	* src/dhcp-manager/nm-dhcp-manager.c (nm_dhcp_manager_get): Keep the ownership
	of the singleton.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2478 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2007-03-16 09:06:48 +00:00