Commit Graph

5 Commits

Author SHA1 Message Date
Dan Williams
a525ceb802 2008-10-18 Dan Williams <dcbw@redhat.com>
* libnm-glib/nm-settings.c
	  libnm-glib/nm-settings.h
		- Rename the "get_secrets" virtual function "service_get_secrets" to
			clarify when it's used; NMExportedConnetion is a base-class for both
			the client and service side, which is sort of confusing, and
			get_secrets only makes sense on the service side.

	* libnm-glib/nm-dbus-connection.c
		- (get_secrets): remove, unused, and clients need to do extra work to
			get secrets anyway since the call can block on the remote side

	* system-settings/plugins/ifupdown/nm-ifupdown-connection.c
	  system-settings/plugins/keyfile/nm-keyfile-connection.c
		- Fix up for get_secrets -> service_get_secrets



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4192 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2008-10-18 13:56:24 +00:00
Dan Williams
81f8f39920 2008-08-26 Dan Williams <dcbw@redhat.com>
Add connection UUIDs, since connection names can be changed, and since
	old-style connection IDs could change over the life of the connection.  The
	UUID should be assigned at connection creation time, be stable for a given
	connection, and should be unique among all connections for a given settings
	service.

	* configure.in
	  libnm-util/Makefile.am
		- Require libuuid

	* introspection/nm-exported-connection.xml
		- Remove "GetID" method

	* libnm-glib/nm-dbus-connection.c
	  libnm-glib/nm-settings.c
	  libnm-glib/nm-settings.h
		- Remove id-related stuff

	* libnm-util/nm-utils.c
	  libnm-util/nm-utils.h
	  libnm-util/libnm-util.ver
		- (nm_utils_uuid_generate, nm_utils_uuid_generate_from_string): Add
			utility functions to generate UUIDs

	* libnm-util/nm-setting-connection.c
	  libnm-util/nm-setting-connection.h
		- Add 'uuid' member to the connection setting
		- (verify): require valid 'uuid' for a valid connection

	* system-settings/plugins/ifcfg-fedora/nm-ifcfg-connection.c
	  system-settings/plugins/ifcfg-fedora/reader.c
	  system-settings/plugins/ifcfg-suse/nm-suse-connection.c
	  system-settings/plugins/ifcfg-suse/parser.c
	  system-settings/plugins/keyfile/nm-keyfile-connection.c
	  system-settings/src/main.c
		- Remove id-related stuff
		- Give connections UUIDs where needed



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4013 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2008-08-27 02:57:21 +00:00
Dan Williams
05e9de9402 2008-06-12 Dan Williams <dcbw@redhat.com>
Add a GError argument to nm_connection_verify() and nm_setting_verify(),
	and add error enums to each NMSetting subclass.  Each NMSetting subclass now
	returns a descriptive GError when verification fails.



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3751 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2008-06-12 23:58:08 +00:00
Tambet Ingo
d2cf6fa75c 2008-05-08 Tambet Ingo <tambet@gmail.com>
Use PolicyKit to authorize the system settings' AddConnection method
    	and the system settings connections' Update and Delete methods.

    	* libnm-glib/nm-settings.c (impl_exported_connection_update)
    	(impl_exported_connection_delete, nm_exported_connection_update)
    	(nm_exported_connection_delete): Return boolean and fill GError
    	to notify the callers of the reasons why it might have failed.

    	* libnm-glib/nm-dbus-settings-system.c
    	(nm_dbus_settings_system_add_connection): Return the error from dbus
    	call so that the callers can see why it failed.

    	* libnm-glib/nm-dbus-connection.c (update, delete): Update the
    	signatures.

    	* system-settings/src/nm-polkit-helpers.[ch]: Implement.

    	* system-settings/src/nm-sysconfig-connection.[ch]: Implement. New
    	abstract base class that checks PolicyKit permissions.

    	* system-settings/src/dbus-settings.c:
    	(impl_settings_add_connection): Check the policy before carring out
    	the request.

    	* system-settings/plugins/keyfile/nm-keyfile-connection.c:
    	Inherit from NMSysconfigConnection, check the policies before
    	allowing updating or removing.

    	* system-settings/plugins/ifcfg-suse/nm-suse-connection.c:
    	Inherit from NMSysconfigConnection.

    	* introspection/nm-exported-connection.xml: Annotate "Update" and
    	"Delete" methods with async flag so that the implementations can get
    	access to DBusGMethodInvocation.

    	* system-settings/src/dbus-settings.c
    	(settings_add_connection_check_privileges): Implement.
    	(impl_settings_add_connection): Check the privileges before adding a new
    	connection. Improve error reporting.

    	* introspection/nm-settings-system.xml: Make the 'AddConnection' method
    	async so that the implementation can access DBusGMethodInvocation.

    	* configure.in: Check for PolicyKit.

    	* policy/org.freedesktop.network-manager-settings.system.policy:
    	New file.

    	* policy/Makefile.am: Install the policy file.

    	* configure.in: Add 'policy' subdir.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3646 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2008-05-09 06:33:30 +00:00
Tambet Ingo
17f26b8d31 2008-05-05 Tambet Ingo <tambet@gmail.com>
* libnm-glib/nm-dbus-settings.c (constructor): Fix the
	"PropertiesChanged" signal signature.

	* libnm-glib/nm-dbus-connection.c (constructor): Use the common GType
	defined in nm-dbus-glib-types.h.
	Don't register the connection on dbus, we're a proxy class to
	communicate with an already registered connection over dbus.

2008-04-30  Tambet Ingo  <tambet@gmail.com>

	Implement new subclasses of NMSettings and NMExportedConnection to make
	it easier for the applet to access and modify system settings.

	* libnm-glib/nm-dbus-connection.[ch]:
	* libnm-glib/nm-dbus-settings.[ch]:
	* libnm-glib/nm-dbus-settings-system.[ch]: Implement.

	* libnm-glib/Makefile.am: Add the new files to build, generate some more
	bindings and glue.

	* include/NetworkManager.h: Define the system settings DBus interface.

2008-04-30  Tambet Ingo  <tambet@gmail.com>

	Implement additional C API for exported connections to make them identical
	with the DBus API. Change the (list_connections) virtual function to be
	more usable from C - instead of requiring implementers to return a GPtrArray
	of dbus paths, return a list of connections.

	* libnm-glib/nm-settings.c (nm_exported_connection_class_init): Fix a typo.
	(nm_settings_list_connections):
	(nm_exported_connection_new):
	(nm_exported_connection_update):
	(nm_exported_connection_delete): Implement.

	(impl_settings_list_connections):
	(impl_exported_connection_update):
	(impl_exported_connection_delete): Use the new public functions to make
	sure the C and dbus interfaces stay in sync.

	* system-settings/src/dbus-settings.c (list_connections): Return a list of
	connections.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3630 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2008-05-05 07:07:44 +00:00