The only thing that doesn't work yet is the system-settings service's
"auto eth" connections for ethernet devices that don't have an existing
connection. Might also have issues with unmanaged devices that can't
provide a MAC address until they are brought up, but we'll see.
Do connection sharing in a cleaner manner; all required iptables rules
are now stored in the activation request and pertain only to the device
which is being shared to other computers.
* src/nm-activation-request.c
src/nm-activation-request.h
- (nm_act_request_add_share_rule): new function; add a sharing rule to
the activation request which will get torn down automatically when
the activation request dies
- (nm_act_request_set_shared): push sharing rules to iptables when sharing
is started, and tear them down when sharing is stopped
* src/nm-device.c
- (start_sharing): start up sharing by doing the required iptables magic
- (share_init): poke the right bits of the kernel and load the right
modules for NAT
- (nm_device_activate_stage5_ip_config_commit): start NAT-ing this
connection if it's a 'shared' connection
* src/NetworkManagerPolicy.c
- Remove all sharing stuff; done in the device code itself
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3969 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-activation-request.c
src/vpn-manager/nm-vpn-connection.c
- Correct GetSecrets D-Bus pending call usage; the GetSecrets call
itself should be attached to the activation request or the VPN
connection, not the NMConnection object, since the call is not
expected to live as long as the NMConnection itself
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3880 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Modify the NMDevice::state-changed signal to include the previous state
and reason. Enables the applet to provide more information why device
activation failed.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3819 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* introspection/nm-active-connection.xml
introspection/nm-vpn-connection.xml
libnm-glib/nm-active-connection.c
src/nm-activation-request.c
src/nm-active-connection.h
src/vpn-manager/nm-vpn-connection.c
- Remove "SharedServiceName" and "SharedConnection" bits from the D-Bus
and libnm-glib API since sharing didn't get implemented that way
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3797 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Fix mobile broadband username/password issues. NM was never requesting
mobile broadband secrets, nor was it passing back the username and password
if it had them.
* marshallers/nm-marshal.list
- Add some new types for activation request objects
* src/nm-activation-request.c
src/nm-activation-request.h
- (get_secrets_cb): pass the caller type in the signal
- (nm_act_request_request_connection_secrets): take a caller type, so
that GetSecrets() reply handlers know who asked for the secrets in
the first place; use secret hints too so the settings service can
figure out exactly what NM wants (ie, PIN or the PPP password)
* src/ppp-manager/nm-ppp-manager.c
src/ppp-manager/nm-ppp-manager.h
- (impl_ppp_manager_need_secrets): nm_connection_need_secrets() won't
detect needed secrets when the secret could be blank, like GSM/CDMA
passwords. So always ask for secrets, and send a hint as to what
secret we really want.
- (nm_ppp_manager_update_secrets): make function more generic by making
the device specific class figure out the username and password, and
accept an error argument to return back over D-Bus
* src/nm-device-wifi.c
- (link_timeout_cb, handle_auth_or_fail): update for changes to
nm_act_request_request_connection_secrets()
- (real_connection_secrets_updated): update for 'caller' changes
* src/nm-device.c
src/nm-device.h
- (connection_secrets_updated_cb, connection_secrets_failed_cb): update
for 'caller' changes
* src/nm-device-ethernet.c
- (real_connection_secrets_updated): update for 'caller' changes and
move logic for getting PPPoE username and password here before
calling nm_ppp_manager_update_secrets()
- (link_timeout_cb, handle_auth_or_fail): update for changes to
nm_act_request_request_connection_secrets()
* src/nm-cdma-device.c
- (real_connection_secrets_updated): pass username and password back
to the PPP manager when required
* src/nm-gsm-device.c
- (enter_pin): send the required secret name to the settings service
- (real_connection_secrets_updated): pass username and password back
to the PPP manager when required
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3794 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
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
* src/nm-activation-request.c
src/nm-activation-request.h
- (dispose): ensure to disconnect from the device's state-changed signal
when appropriate so the signal doesn't get handled by an already
disposed NMActRequest
- (device_state_changed): update is_default here too just to make sure
default is only True when the child device is activated
- (nm_act_request_set_default): new function
* src/NetworkManagerPolicy.c
- (update_routing_and_dns): set 'default' on the active connection which
has the default route and DNS
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3584 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* include/NetworkManager.h
- Add NMActiveConnectionState enum
* introspection/nm-active-connection.xml
introspection/nm-vpn-connection.xml
- Add 'State' property for overall active connection state
- Add 'Default' property, when True means this active connection
has the default route
- Add PropertyChanged signals so changes actually go out over the bus
* src/nm-active-connection.h
- Add defines for State & Default properties
* src/nm-activation-request.c
- Add 'state' and 'default' properties, hook up to device 'state-changed'
signal to determine active connection state
* src/vpn-manager/nm-vpn-connection.c
src/vpn-manager/nm-vpn-connection.h
src/vpn-manager/nm-vpn-manager.c
src/vpn-manager/nm-vpn-service.c
- Rename old 'state' to 'vpn-state'
- Rename nm_vpn_connection_get_state() -> nm_vpn_connection_get_vpn_state()
- Add 'state' and 'default' properties, hook up to the vpn connection's
'vpn-state-changed' signal
* libnm-glib/nm-active-connection.c
libnm-glib/nm-active-connection.h
- Add new 'state' and 'default' properties and accessors
* libnm-glib/nm-vpn-connection.c
libnm-glib/nm-vpn-connection.h
- Rename old 'state' property to 'vpn-state'
- Add new 'state' and 'default' properties and accessors
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3582 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/vpn-manager/nm-vpn-connection.c
- (nm_vpn_connection_class_init): PROP_SPECIFIC_OBJECT should be boxed,
not string
* src/nm-activation-request.c
- (nm_act_request_class_init): PROP_SPECIFIC_OBJECT should be boxed,
not string
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3513 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Rework VPN connection handling for a more consistent D-Bus API. The
VPNManager object has been removed, and active VPN connections are now the
same as any other active connection. The Manager object's ActivateConnection
and DeactivateConnection methods are used to start and stop a VPN connection,
and the VPNConnection objects are subclasses of the ActiveConnection objects.
When activating a VPN connection, pass the path of the active connection
to which the VPN connection is tied in the 'specific_object' argument.
Consequently, the libnm-glib API has been reworked to match this arrangement,
with the VPNManager object removed, and the NMVPNConnection objects now
being subclasses of NMActiveConnection.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3504 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* introspection/nm-manager.xml
introspection/nm-manager-client.xml
- (ActivateConnection): return the object path of the active connection
on success
- (GetActiveConnections): remove
- (DeactivateConnection): new function; deactivate a currently active
connection
- Add an ActiveConnections property which returns an array of
active connection object paths
* introspection/nm-device.xml
- (Deactivate): remove
* introspection/all.xml
- Add ActiveConnection introspection
* introspection/nm-active-connection.xml
- Add the ActiveConnection object
* include/NetworkManager.h
- Add the Connection.Active D-Bus interface
* src/nm-device-interface.c
- (impl_device_deactivate): remove
* src/nm-activation-request.c
src/nm-activation-request.c
src/Makefile.am
- Implement the Connection.Active D-Bus interface
* src/nm-manager.c
- (get_property, nm_manager_class_init): add ACTIVE_CONNECTIONS property
- (nm_manager_activate_device): return the active connection path
- (connection_added_default_handler, impl_manager_activate_connection):
return the active connection to the caller
- (add_one_connection_element, impl_manager_get_active_connections):
remove
- (impl_manager_deactivate_connection): new function; deactivate an
active connection
* libnm-glib/nm-device.c
libnm-glib/nm-device.h
- Remove Deactivate() function
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3484 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Split the 802.1x bits out of the wireless-security setting so they are
generalized enough for wired 802.1x to use too.
* introspection/nm-exported-connection.xml
- GetSecrets now returns 'a{sa{sv}}' (a hash of settings hashes) instead
of just a hash of the secrets for one setting
* libnm-util/nm-setting-wireless-security.c
libnm-util/nm-setting-wireless-security.h
- Remove 802.1x-specific stuff
- Added leap-username and leap-password properties for old-school LEAP
* src/nm-device.c
src/nm-device.h
- (connection_secrets_updated_cb): take a list of updated settings names,
not just one
* src/supplicant-manager/nm-supplicant-config.c
src/supplicant-manager/nm-supplicant-config.h
- (nm_supplicant_config_add_setting_wireless_security): remove 802.1x
specific stuff; fix for updated LEAP bits; punt 802.1x stuff
to nm_supplicant_config_add_setting_8021x()
- (nm_supplicant_config_add_setting_8021x): add an 802-1x setting to
the supplicant config
* src/nm-device-802-11-wireless.c
- (build_supplicant_config): pass in the 802.1x setting too, if any
- (real_connection_secrets_updated): take a list of updated settings
names, not just one
* src/nm-device-802-3-ethernet.c
src/nm-cdma-device.c
src/nm-gsm-device.c
- (real_connection_secrets_updated_cb): take a list of updated settings
names, not just one
* src/nm-activation-request.c
src/nm-activation-request.h
- (nm_act_request_class_init): the 'connection-secrets-updated' signal
now passes a list of updated settings names, not just one
- (update_one_setting): new function; handle one updated setting
- (get_secrets_cb): handle multiple settings returned from the
settings service; have to be careful of ordering here as there are
some dependencies between settings (ex. wireless-security and 802.1x
in some cases)
* src/marshallers/nm-marshal.list
- new marshaller for connection-secrets-updated signal
* libnm-util/nm-setting-8021x.c
- Add back the 'pin' and 'psk' settings, for EAP-SIM and EAP-PSK auth
methods
- (verify): a valid 'eap' property is now required
* libnm-util/nm-connection.c
- (register_default_settings): add priorities to settings; there are
some dependencies between settings, and during the need_secrets
calls this priority needs to be respected. For example, only the
wireless-security setting knows whether or not the connection is
going to use 802.1x or now, so it must be asked for secrets before
any existing 802.1x setting is
- (nm_connection_lookup_setting_type): expose
* libnm-util/nm-setting-wireless.c
- (verify): should verify even if all_settings is NULL; otherwise won't
catch the case where there is missing security
* libnm-util/nm-setting-wireless-security.c
- Remove everything to do with 802.1x
- Add old-school LEAP specific properties for username and password
- (need_secrets): rework LEAP secrets checking
- (verify): rework for LEAP and 802.1x verification
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3470 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-util/nm-setting.c
- (nm_setting_to_hash, one_property_cb): revert previous commit, it's
unecessary to serialize 'name'
* src/nm-activation-request.c
- (get_secrets_cb): fix cases where a full NMSetting is returned from
the GetSecrets call
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3085 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
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
* src/nm-activation-request.c
- (dispose): clean up indentation; get the right DBusGProxy object to
cancel the GetSecrets pending call on. Need to use the Secrets
proxy, not the regular connection proxy. Otherwise the GetSecrets
pending call doesn't get canceled, and pressing Cancel in the
applet's password dialog could cause get_secrets_cb() to be called
after the activation request has already been destroyed
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3028 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-activation-request.c
- (get_secrets_cb): handle getting a setting back that is more than
just secrets (ie, user changed auth or EAP method or something)
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3012 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-activation-request.h
src/nm-activation-request.c
- (nm_act_request_set_specific_object): new function; allow setting the
specific object if one isn't set yet
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2991 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
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
* 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
* 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
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
Implement deferred activation handling in the NMActRequest class. When a
client wants to activate a device but must create the NMConnection details
on the fly, there likely hasn't been enough time yet for NM to receive the
new connection signal and grab all the connection details. So the
activation is deferred (and bounded by a timer) for a while, and if the
connection appears within the window, it is activated.
* src/nm-activation-request.c
src/nm-activation-request.h
- (nm_act_request_class_init): two new signals to support deferred
activation, to allow the listener to handle both timeout and success
- (nm_act_request_new_deferred): new function, starts the deferred
activation timeout handler and listens to the NMManager for
new-connection signals to notice when the connection comes in
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2811 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* 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
* 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
Remove NMAPSecurity objects, they are replaced with flags on the APs for
each AP's capabilities, and by NMConnection/NMSettings objects for user
defined connections.
* include/NetworkManager.h
- Redefine 802.11 security properties. There are now device capabilities
and AP flags and AP security flags. It was way to unclear before.
* src/Makefile.am
src/nm-ap-security-leap.h
src/nm-ap-security-leap.c
src/nm-ap-security-wpa-eap.c
src/nm-ap-security-wpa-eap.h
src/nm-ap-security-private.h
src/nm-ap-security-wpa-psk.c
src/nm-ap-security-wpa-psk.h
src/nm-ap-security-wep.c
src/nm-ap-security-wep.h
src/nm-ap-security.c
src/nm-ap-security.h
- Removed, to be replaced with NMConnection/NMSettings objects
* src/nm-dbus-nmi.c
src/nm-dbus-nmi.h
- Removed, to be replaced by code that talks to the new info daemon
interface and gets NMConnection/NMSettings objects
* src/backends/NetworkManagerSuSE.c
- Remove usage of NMAPSecurity; should be replaced by a system-level
info-daemon that does the same thing but talks the new info-daemon
D-Bus interface
* src/NetworkManagerAP.h
src/NetworkManagerAP.c
src/NetworkManagerAPList.c
libnm-glib/libnm-glib-test.c
- Remove usage of NMAPSecurity objects and adjust to new flags for
WPA/RSN
* libnm-glib/nm-access-point.c
libnm-glib/nm-access-point.h
introspection/nm-access-point.xml
test/nm-tool.c
- Adjust to new flags for AP security
* utils/nm-utils.c
utils/nm-utils.h
src/vpn-manager/nm-dbus-vpn.c
- Remove D-Bus pending call stuff from nm-utils and put it in the VPN
stuff which is the only place it's used
* src/nm-device-interface.c
src/nm-device-interface.h
introspection/nm-device.xml
src/nm-activation-request.c
src/nm-activation-request.h
src/nm-device.c
- Add a new 'specific_object' argument that hints to NM what actual
AP or other device-specific thing the connection should apply to.
NMConnection objects can apply to more than one actual device/AP.
* libnm-util/nm-connection.c
* libnm-util/nm-connection.h
- Add 'have_secrets" call stubs
* libnm-util/cipher.h
- Move NM_AUTH_TYPE_* defines here for now
* src/nm-device-802-11-wireless.c
- Remove usage of NMAPSecurity, to be replaced with NMConnection/
NMSettings objects
* src/NetworkManagerDbus.c
* src/NetworkManagerPolicy.c
- Remove usage of update_allowed_networks, should be pushing data in
a different manner
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2738 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device.c: Make the activation stage virtual functions take NMDevice
argument. The activation request is easy to retrieve.
* src/nm-activation-request.c: Convert to GObject. Do not include half of NM headers
just to be a convenient location for devices to store random stuff.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2587 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-glib/Makefile.am: Link with libnm-util to gain access to
NMConnection.
* libnm-glib/nm-device-802-11-wireless.c:
(nm_device_802_3_ethernet_activate): Remove.
* libnm-glib/nm-device-802-3-ethernet.c
(nm_device_802_3_ethernet_activate): Remove.
* libnm-glib/nm-device.c (nm_device_activate): Implement.
* src/nm-device-802-3-ethernet.c: Implement the new activation using
NMConnection.
* src/nm-device-802-11-wireless.c: Store an activation AP once the
activation has started.
Implement the new activation using NMConnection.
* src/nm-activation-request.c: Store a generic connection object instead
of a wireless-specific AP.
* src/NetworkManagerPolicy.c (create_connection): Implement. Depending
on device type, create a device specific connection object suitable for
device activation.
* src/nm-device.c (nm_device_activate): Re-implement. Call the device
specific check to validate the connection and on success start the
activation.
* src/nm-device-interface.h: Add a activate virtual function to the
interface definition.
* src/nm-device-interface.c (nm_device_interface_activate): Implement.
(impl_device_activate): Implement.
* introspection/nm-device.xml: Add a generic device activation interface
that accepts an abstract NMConnection structure that has device-specific
information in it.
* introspection/nm-device-802-3-ethernet.xml: Remove the wired-specific
activation interface.
* introspection/nm-device-802-11-wireless.xml: Remove the wireless-specific
activation interface.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2569 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* 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
* libnm-glib/nm-device-802-11-wireless.c: Add "network-added" and
"network-removed" signals.
* libnm-glib/libnm-glib.pc.in: Require NetworkManager >= 0.7.0.
* libnm-glib/nm-access-point.c: Add "strength-changed" signal, emit it
when receiving the signal from dbus.
* src/nm-device-802-11-wireless.c (get_property): Fix PROP_ACTIVE_NETWORK
property.
* src/NetworkManagerPolicy.c (state_changed): Fix a typo to make the
deactivation of the previously activated device working again.
* src/nm-activation-request.c: Remove NMActStage property and it's getter
and setter.
* src/nm-device.c (nm_device_is_activated): Remove.
state == NM_DEVICE_STATE_ACTIVATED is just as easy to use.
* include/NetworkManager.h: Remove NM_DBUS_NO_DEVICES_ERROR,
NM_DBUS_NO_DIALUP_ERROR, NM_DBUS_NO_NETWORKS_ERROR,
NM_DBUS_NO_ACTIVE_DEVICE_ERROR, NM_DBUS_NO_ACTIVE_NET_ERROR errors and
NM_DBUS_SIGNAL_STATE_CHANGE signal.
Remove NMNetworkStatus and NMActStage enums.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2345 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* introspection/nm-ip4-config.xml: Implement.
* libnm-glib/libnm-glib-test.c: Use new DBUS API in tests.
* libnm-glib/nm-ip4-config.c:
* libnm-glib/nm-ip4-config.c: Implement.
* src/nm-ap-security[-*]: Remove circular dependencies between APs and AP
securities. APs reference security.
* src/nm-device-802-11-wireless.c: Implement missing properties that need to
be exported over DBUS.
* src/nm-device-802-3-ethernet.c: Ditto.
* src/NetworkManagerAP.c:
* src/NetworkManagerAP.h:
- Convert to GObject, export over DBUS.
* src/nm-ip4-config.h:
* src/nm-ip4-config.h:
- Convert to GObject, export over DBUS.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2322 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
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
* src/NetworkManagerMain.h: Remove all references to DHCP manager.
* src/NetworkManager.c: Don't initialize the DHCP manager, it's a
singleton now.
* src/nm-device.c: Use the new DHCP manager API.
* src/nm-activation-request.c:
* src/nm-activation-request.h:
- Remove all dhcp related properties and methods.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2284 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Threading removal related cleanups:
- Use the glib default main context. Remove the device main context
member from NMDevice, and the main_context member from NMData. Change
all the idle and timeout scheduler functions to use plain
g_idle_add() and g_timeout_add().
- As a side-effect of the first change, nm_dbus_manager_get() no longer
takes an argument; fix that up too.
- Remove all locking, which is useless since we no longer use threads. For
example, nm_get_device_by_iface_locked() has been removed. The global
device list lock, the AP List lock, and all static locks in
NetworkManagerPolicy.c have been removed. The locking utility functions
in NetworkManagerUtils.c have also been removed.
- Other cleanups in spacing and code style
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2205 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* Huge DBus refactor:
- Create a "DBus Manager" object which manages the connection and
sends signals on NameOwnerChanged and connection/disconnection events,
handles reconnection to the bus if NM gets kicked off, and abstracts
signal handling
- Remove DBusConnection members from places where they are no
longer needed due to the refactor, like the dbus-connection
property of the named manager, and from NMData
- Reformats a bunch of the code to gnome style
(8-space tabs, braces on same line as statement, 80-col width).
Consider it open season to reformat any bits to gnome style.
style that aren't already.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2061 4912f4e0-d625-0410-9fb7-b9a5a253dbdc