device: renew dhcp leases on awake for software devices
[NetworkManager.git] / ChangeLog
index 5c580b8..70a11a2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+2008-12-11  Dan Williams  <dcbw@redhat.com>
+
+       * Move NetworkManager to git.freedesktop.org
+               - git clone git://git.freedesktop.org/git/NetworkManager/NetworkManager.git
+
+2008-12-09  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-ip4-config.c
+         libnm-util/nm-setting-ip4-config.h
+               - Add 'never-default' property, which when true indicates that a
+                       connection should never be the default connection
+
+       * src/nm-ip4-config.c
+         src/nm-ip4-config.h
+               - (nm_ip4_config_get_never_default, nm_ip4_config_set_never_default):
+                       Add never-default helpers
+
+       * src/NetworkManagerUtils.c
+               - (nm_utils_merge_ip4_config): update never-default when merging the
+                       IP4 setting to the IP4 config
+
+       * src/NetworkManagerSystem.c
+               - (nm_system_apply_ip4_config): if the connection is never-default,
+                       don't add routes without a gateway
+
+       * src/NetworkManagerPolicy.c
+               - (get_best_device): don't let never-default connections be the best
+               - (update_routing_and_dns): handle never-default for VPN connections
+
+       * system-settings/plugins/ifcfg-rh/reader.c
+               - (make_ip4_setting): handle never-default by checking GATEWAYDEV
+
+2008-12-08  Dan Williams  <dcbw@redhat.com>
+
+       * src/vpn-manager/nm-vpn-connection.c
+               - (plugin_state_changed): clear secrets before setting the connection
+                       state to FAILED, since doing so may destroy the connection itself,
+                       since the NMVPNService owning this NMVPNConnection will unref it
+                       when the NMVPNConnection is failed or stopped
+
+2008-12-05  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Michael Biebl  <mbiebl@gmail.com>
+
+       * libnm-glib/Makefile.am
+               - Bump libnm-glib revision to indicate new API
+               - Give libnm-util version info
+
+       * libnm-util/Makefile.am
+               - Bump libnm-util soname to indicate API/ABI break with 0.6
+
+2008-11-26  Dan Williams  <dcbw@redhat.com>
+
+       * Release NetworkManager 0.7
+
+2008-11-26  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-glib/nm-settings.c
+         libnm-glib/nm-settings.h
+               - (nm_exported_connection_delete): rename 'delete' to 'do_delete' to
+                       avoid using C++ reserved keywords in headers
+
+       * libnm-glib/nm-dbus-connection.c
+         system-settings/plugins/ifcfg-rh/nm-ifcfg-connection.c
+         system-settings/plugins/ifcfg-suse/nm-suse-connection.c
+         system-settings/plugins/ifupdown/nm-ifupdown-connection.c
+         system-settings/plugins/keyfile/nm-keyfile-connection.c
+         system-settings/src/nm-sysconfig-connection.c
+               - Change 'delete' to 'do_delete'
+
+2008-11-25  Dan Williams  <dcbw@redhat.com>
+
+       * system-settings/plugins/ifcfg-rh
+               - Rename 'ifcfg-fedora' to 'ifcfg-rh'; it's not just used on Fedora
+
+       * system-settings/src/main.c
+               - (load_plugins): transparently handle ifcfg-fedora as ifcfg-rh
+
+2008-11-25  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       Fix mishandling of netlink error floods (rh #459205, novell #443429, lp #284507)
+
+       * src/nm-netlink-monitor.c
+               - Remove bits for using a non-default GMainContext, which weren't used
+               - (nm_netlink_monitor_error_handler): don't leak the GError, and report
+                       the actual error code
+
+       * src/NetworkManager.c
+               - (nm_error_monitoring_device_link_state): disconnect error handler when
+                       an error flood occurs to avoid pegging the CPU
+
+2008-11-23  Dan Williams  <dcbw@redhat.com>
+
+       * callouts/nm-dispatcher-action.c
+               - (construct_envp, nm_dispatcher_action): pass connection UUID to
+                       scripts in the environment
+
+2008-11-21  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo  <tambet@gmail.com>
+
+       * configure.in
+         libnm-util/libnm-util.ver
+         libnm-util/nm-setting-8021x.c
+         libnm-util/nm-setting-8021x.h
+               - Add configure-time option for the system CA path
+               - Add 'system-ca-certs' option to 802.1x setting, which directs
+                       NetworkManager to use system CA certificates instead of any
+                       connection-defined CA certificates
+
+       * src/supplicant-manager/nm-supplicant-config.c
+         src/supplicant-manager/nm-supplicant-settings-verify.c
+               - Use system CA certificates if the connection says to do so
+
+2008-11-21  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-dbus-manager.c
+         src/nm-dbus-manager.h
+               - (nm_dbus_manager_get_name_owner): return error
+
+       * src/nm-manager.c
+               - (impl_manager_activate_connection): perform additional validation on
+                       ActivateConnection calls of user connections
+               - (is_user_request_authorized): ensure that the requestor is the same
+                       UID as the UID that owns the user settings service; users shouldn't
+                       be able to control another user's connections
+
+2008-11-21  Dan Williams  <dcbw@redhat.com>
+
+       * gfilemonitor/inotify-sub.c
+               - (dup_dirname): actually remove trailing '/' (bgo #561807)
+
+2008-11-21  Tambet Ingo  <tambet@gmail.com>
+
+       * system-settings/plugins/ifcfg-suse/parser.c (read_wpa_eap_settings): Make suse
+       plugin compile again.
+
+2008-11-20  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/nm-setting.c
+         libnm-util/nm-setting.h
+               - (NMSettingValueIterFn): instead of just a gboolean for secrets, take
+                       all the GParamSpec flags of the property
+
+       * system-settings/plugins/keyfile/nm-keyfile-connection.c
+         system-settings/plugins/keyfile/reader.c
+         system-settings/plugins/keyfile/writer.c
+               - Update for NMSettingValueIterFn change
+
+2008-11-20  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/nm-utils.c
+         libnm-util/nm-utils.h
+               - More documentation updates
+
+2008-11-20  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-utils.c
+         libnm-util/nm-utils.h
+         libnm-util/nm-utils-private.h
+         libnm-util/nm-connection.c
+               - (nm_utils_register_value_transformations): make private, called
+                       from NMConnection registration anyway
+
+2008-11-20  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/Makefile.am
+         libnm-util/nm-utils-private.h
+               - New header for internal utils private functions
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-utils.c
+         libnm-util/nm-utils.h
+               - Document some functions
+               - (nm_utils_string_in_list, nm_utils_string_list_contains,
+                  nm_utils_string_slist_validate): un-export, only used within
+                       libnm-util or of limited use in general, and very easy to
+                       re-implement by apps if needed
+
+       * libnm-util/nm-setting-8021x.c
+         libnm-util/nm-setting-wired.c
+         libnm-util/nm-setting-wireless-security.c
+         libnm-util/nm-setting-wireless.c
+               - Update for private nm_utils_string_* functions
+
+2008-11-20  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting.c
+         libnm-util/nm-setting.h
+               - Add NMSetting errors
+               - (nm_setting_update_secrets): return errors
+
+       * libnm-util/nm-connection.c
+         libnm-util/nm-connection.h
+               - (nm_connection_update_secrets): return errors
+
+       * libnm-util/nm-setting-vpn.c
+         src/nm-activation-request.c
+         src/vpn-manager/nm-vpn-connection.c
+               - Handle update secrets errors
+
+2008-11-20  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/nm-setting.c
+         libnm-util/nm-setting.h
+         libnm-util/libnm-util.ver
+               - (nm_setting_new_from_hash): rename from nm_setting_from_hash() to be
+                       consistent with nm_connection_new_from_hash()
+
+       * src/nm-activation-request.c
+         libnm-util/nm-connection.c
+               - Handle rename
+
+2008-11-19  Dan Williams  <dcbw@redhat.com>
+
+       * configure.in
+         Makefile.am
+         docs/libnm-util/Makefile.am
+         docs/libnm-util/libnm-util.types
+               - Start to document libnm-util
+
+2008-11-19  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/nm-connection.h
+         libnm-util/nm-connection.c
+               - Document public functions
+
+2008-11-19  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/nm-setting.h
+         libnm-util/nm-setting.c
+         src/nm-device.c
+         src/nm-manager.c
+         system-settings/plugins/ifcfg-fedora/plugin.c
+               - Prefix compare flag defines with NM_SETTING_
+
+2008-11-19  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/nm-connection.c
+         libnm-util/nm-connection.h
+               - (nm_connection_replace_settings): take a GError
+
+       * libnm-glib/nm-settings.c
+         libnm-glib/nm-dbus-connection.c
+         src/nm-manager.c
+         system-settings/plugins/ifcfg-suse/nm-suse-connection.c
+         system-settings/plugins/keyfile/nm-keyfile-connection.c
+         system-settings/plugins/keyfile/plugin.c
+               - Handle, or don't handle, errors from nm_connection_replace_settings()
+
+2008-11-19  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-connection.c
+               - (nm_setting_register, nm_setting_unregister): unexport; they are
+                       private and don't have a use outside libnm-util
+
+2008-11-17  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-hso-gsm-device.c
+               - (real_connection_secrets_updated): handle PIN/PUK correctly for HSO
+                       devices
+
+2008-11-17  Dan Williams  <dcbw@redhat.com>
+
+       * system-settings/plugins/ifcfg-fedora/reader.c
+               - (read_mac_address): clean up
+               - (make_wireless_setting): pass NULL array to read_mac_address() like it
+                       expects
+
+       * system-settings/plugins/ifcfg-fedora/plugin.c
+               - (read_one_connection): don't segfault on NULL errors
+
+2008-11-14  Dan Williams  <dcbw@redhat.com>
+
+       * Tag 0.7.0-rc2
+
+2008-11-14  Dan Williams  <dcbw@redhat.com>
+
+       Handle gateways on different subnets
+
+       * src/NetworkManagerSystem.c
+               - (add_ip4_route_to_gateway): gateway route should be link scope and
+                       a host route
+               - (replace_default_ip4_route): use a destination address too; gateway
+                       address should be /0; don't leak the gateway route object
+
+2008-11-14  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-glib/libnm_glib.ver
+         libnm-glib/nm-dbus-settings-system.c
+         libnm-glib/nm-dbus-settings-system.h
+               - Add libnm-glib bits for CanModify
+
+2008-11-14  Dan Williams  <dcbw@redhat.com>
+
+       * introspection/nm-settings-system.xml
+         system-settings/src/dbus-settings.c
+         system-settings/src/dbus-settings.h
+               - Add a "CanModify" property to indicate if any plugins support
+                       connection modification
+
+2008-11-14  Dan Williams  <dcbw@redhat.com>
+
+       Relicense libnm-glib to LGPLv2+ with agreement from contributors
+
+2008-11-14  Dan Williams  <dcbw@redhat.com>
+
+       * vpn-manager/nm-vpn-connection.c
+               - (plugin_state_changed): clear VPN secrets on error to ensure they
+                       are always requested from the settings service (rh #429287)
+
+2008-11-13  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/crypto.c
+               - (crypto_get_private_key_data): fix bad initial arg type checking
+                       from pkcs#12 patch
+
+2008-11-13  Dan Williams  <dcbw@redhat.com>
+
+       Add support for PKCS#12 private keys (bgo #558982)
+
+       * libnm-util/crypto.c
+         libnm-util/crypto.h
+               - (parse_old_openssl_key_file): rename from parse_key_file(); adapt to
+                       take a GByteArray instead of a filename
+               - (file_to_g_byte_array): handle private key files too
+               - (decrypt_key): take a GByteArray rather than data + len
+               - (crypto_get_private_key_data): refactor crypto_get_private_key() into
+                       one function that takes a filename, and one that takes raw data;
+                       detect pkcs#12 files as well
+               - (crypto_load_and_verify_certificate): detect file type
+               - (crypto_is_pkcs12_data, crypto_is_pkcs12_file): add pkcs#12 detection
+                       functions
+
+       * libnm-util/crypto_gnutls.c
+               - (crypto_decrypt): take GByteArray rather than data + len; fix a bug
+                       whereby tail padding was incorrectly handled, leading to erroneous
+                       successes when trying to decrypt the data
+               - (crypto_verify_cert): rework somewhat
+               - (crypto_verify_pkcs12): validate pkcs#12 keys
+
+       * libnm-util/crypto_nss.c
+               - (crypto_init): enable various pkcs#12 ciphers
+               - (crypto_decrypt): take a GByteArray rather than data + len
+               - (crypto_verify_cert): clean up
+               - (crypto_verify_pkcs12): validate pkcs#12 keys
+
+       * libnm-util/test-crypto.c
+               - Handle pkcs#12 keys
+
+       * libnm-util/nm-setting-8021x.c
+         libnm-util/nm-setting-8021x.h
+         libnm-util/libnm-util.ver
+               - Add two new properties, 'private-key-password' and
+                       'phase2-private-key-password', to be used in conjunction with
+                       pkcs#12 keys
+               - (nm_setting_802_1x_set_ca_cert_from_file,
+                  nm_setting_802_1x_set_client_cert_from_file,
+                  nm_setting_802_1x_set_phase2_ca_cert_from_file,
+                  nm_setting_802_1x_set_phase2_client_from_file): return certificate
+                       type
+               - (nm_setting_802_1x_get_private_key_password,
+                  nm_setting_802_1x_get_phase2_private_key_password): return private
+                       key passwords
+               - (nm_setting_802_1x_set_private_key_from_file,
+                  nm_setting_802_1x_set_phase2_private_key_from_file): set the private
+                       key from a file, and update the private key password at the same time
+               - (nm_setting_802_1x_get_private_key_type,
+                  nm_setting_802_1x_get_phase2_private_key_type): return the private
+                       key type
+
+       * src/supplicant-manager/nm-supplicant-settings-verify.c
+               - Whitelist private key passwords
+
+       * src/supplicant-manager/nm-supplicant-config.c
+               - (nm_supplicant_config_add_setting_8021x): for pkcs#12 private keys,
+                       add the private key password to the supplicant config, but do not
+                       add the client certificate (as required by wpa_supplicant)
+
+2008-11-12  Tambet Ingo  <tambet@gmail.com>
+
+       * system-settings/plugins/keyfile/nm-keyfile-connection.c (copy_one_secret)
+       (add_secrets): Don't add empty secrets to the secrets hash table.
+
+2008-11-07  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/nm-setting-wireless.c
+               - (nm_setting_wireless_get_seen_bssid): fix bug from accessor conversion
+                       that cased this function to return garbage, breaking hidden AP
+                       detection
+
+2008-11-07  Dan Williams  <dcbw@redhat.com>
+
+       Fix deletion of VPN gateway route on DHCP renew (bgo #558133)
+
+       * src/NetworkManagerSystem.c
+         src/NetworkManagerSystem.h
+               - (nm_system_device_set_ip4_route): return the route that was added
+               - (nm_system_add_ip4_vpn_gateway_route): make add_vpn_gateway_route()
+                       public, clean up, and return the route that was added
+               - (nm_system_apply_ip4_config): remove VPN related stuff to simplify,
+                       since nm_system_add_ip4_vpn_gateway_route() is now available; add
+                       flags to allow only certain attributes of the NMIP4Config to be
+                       applied
+
+       * src/nm-device.c
+               - (handle_dhcp_lease_change): don't touch the DHCP4 config on failure
+               - (nm_device_set_ip4_config): use nm_ip4_config_diff() to only apply
+                       what's really changed between the old and new configs; don't export
+                       the new IP4 config on failure; always send the DNS info to the
+                       named manager
+
+       * src/vpn-manager/nm-vpn-connection.c
+               - (device_ip4_config_changed, nm_vpn_connection_new, dispose): track the
+                       parent device's IP4Config and re-add the VPN gateway route when it
+                       changes
+               - (nm_vpn_connection_ip4_config_get): add the VPN gateway route (since
+                       nm_system_apply_ip4_config() no longer does) and cache it for later
+               - (connection_state_changed): move cleanup code to its own function
+               - (vpn_cleanup): delete any previously added VPN gateway route; and
+                       re-apply the parent device's addresses and routes using
+                       nm_system_apply_ip4_config(), not nm_device_set_ip4_config()
+
+2008-11-07  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-ip4-config.c
+         src/nm-ip4-config.h
+               - (nm_ip4_config_diff): new function; return the difference between two
+                       IP4 configs
+               - (nm_ip4_config_compare): change into nm_ip4_config_diff
+
+2008-11-05  Dan Williams  <dcbw@redhat.com>
+
+       * nm-ip4-config.c
+         nm-ip4-config.h
+               - (nm_ip4_config_compare): compare two IP4 configs
+
+2008-11-05  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManagerPolicy.c
+               - (update_etc_hosts): only add newline if not the last line of the file
+                       (Jonathan Miner)
+
+2008-11-05  Dan Williams  <dcbw@redhat.com>
+
+       * src/dhcp-manager/nm-dhcp-dhclient.c
+               - (get_leasefile_for_iface): move lease files back to where dhclient
+                       puts them
+
+2008-11-05  Michael Biebl  <mbiebl@gmail.com>
+
+       * initscripts/Debian/NetworkManager
+               - Update to what Debian is actually using
+
+2008-11-05  Tambet Ingo  <tambet@gmail.com>
+
+       * libnm-util/nm-setting-8021x.c: Verify PEAP settings as well.
+
+2008-11-03  Dan Williams  <dcbw@redhat.com>
+
+       * system-settings/src/main.c
+               - (add_default_dhcp_connection): make the fallback connection read-only
+
+       * libnm-glib/nm-settings.c
+         libnm-glib/nm-settings.h
+               - Add detailed errors
+               - (impl_exported_connection_update, impl_exported_connection_delete):
+                       return an error if the connection is read-only
+
+       * system-settings/plugins/ifupdown/nm-ifupdown-connection.c
+         system-settings/plugins/keyfile/nm-keyfile-connection.c
+         system-settings/src/main.c
+               - Use more detailed errors
+
+       * system-settings/src/nm-system-config-error.c
+         system-settings/src/nm-system-config-error.h
+         system-settings/src/dbus-settings.c
+               - Remove NM_SYSCONFIG_SETTINGS_ERROR_INVALID_CONNECTION, replaced by
+                       NM_SETTINGS_ERROR_INVALID_CONNECTION
+
+2008-11-02  Dan Williams  <dcbw@redhat.com>
+
+       * Add license headers to everything in src/
+
+2008-11-02  Dan Williams  <dcbw@redhat.com>
+
+       * Tag 0.7.0-rc1
+
+2008-11-02  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManagerAP.c
+               - (nm_ap_new_fake_from_connection): treat only lack of a wireless security
+                       setting as unencrypted; fixes a bug where NM wouldn't ask for new
+                       secrets when connecting to an encrypted network failed
+
+2008-10-30  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-ip6-config.c
+         libnm-util/nm-setting-ip6-config.h
+         libnm-util/Makefile.am
+               - Make properties private and add accessor functions
+               - Hide IPv6 stuff from public API, it's incomplete and completely unused
+
+       * libnm-util/nm-connection.c
+         libnm-util/nm-utils.c
+         libnm-util/nm-utils.h
+               - Ignore IPv6 stuff for now
+
+2008-10-30  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-8021x.c
+         libnm-util/nm-setting-8021x.h
+               - Make properties private and add accessor functions
+
+       * src/supplicant-manager/nm-supplicant-config.c
+         system-settings/plugins/ifcfg-suse/parser.c
+               - Use 802.1x setting accessors
+
+2008-10-30  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-wireless-security.c
+         libnm-util/nm-setting-wireless-security.h
+               - Make properties private and add accessor functions
+
+       * libnm-util/nm-setting-wireless.c
+         src/NetworkManagerAP.c
+         src/nm-device-wifi.c
+         src/supplicant-manager/nm-supplicant-config.c
+         system-settings/plugins/ifcfg-fedora/reader.c
+         system-settings/plugins/ifcfg-suse/parser.c
+               - Use wireless security accessors
+
+2008-10-30  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-device-ethernet.c
+         src/nm-device-wifi.c
+         src/nm-device.c
+         src/ppp-manager/nm-ppp-manager.c
+               - Harmonize return checking of ioctl
+
+       * system-settings/plugins/ifcfg-fedora/reader.c
+               - (is_wireless_device): fall back to SIOCGIWNAME (rh #466340)
+
+2008-10-30  Dan Williams  <dcbw@redhat.com>
+
+       * src/ppp-manager/nm-ppp-manager.c
+               - (nm_ppp_manager_start): if /dev/ppp doesn't exist, load the
+                       ppp_generic module to create it (bgo #533064)
+
+2008-10-30  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Alexander Sack <asac@canonical.com>
+
+       Fix "ppp connections don't honour ip4 connection settings"
+
+       * src/nm-device-ethernet.c
+               - (real_act_stage4_get_ip4_config): merge ip4config settings
+                       with results from ppp manager
+
+       * src/nm-serial-device.c
+               - (real_act_stage4_get_ip4_config): merge ip4config settings
+                       with results from ppp manager
+
+2008-10-29  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-ip4-config.c
+         libnm-util/nm-setting-ip4-config.h
+               - Make properties private and add accessor functions
+
+       * callouts/nm-dispatcher-action.c
+         libnm-glib/libnm-glib-test.c
+         libnm-util/nm-utils.c
+         src/NetworkManagerPolicy.c
+         src/NetworkManagerSystem.c
+         src/NetworkManagerUtils.c
+         src/dhcp-manager/nm-dhcp-dhclient.c
+         src/dhcp-manager/nm-dhcp-manager.c
+         src/dnsmasq-manager/nm-dnsmasq-manager.c
+         src/nm-device-wifi.c
+         src/nm-device.c
+         src/nm-hso-gsm-device.c
+         src/nm-ip4-config.c
+         src/nm-ip4-config.h
+         src/ppp-manager/nm-ppp-manager.c
+         src/vpn-manager/nm-vpn-connection.c
+         system-settings/plugins/ifcfg-fedora/reader.c
+         system-settings/plugins/ifcfg-suse/parser.c
+         system-settings/plugins/ifcfg-suse/plugin.c
+         system-settings/plugins/ifupdown/parser.c
+         test/nm-tool.c
+         vpn-daemons/vpnc/properties/nm-vpnc.c
+               - Use IP4 accessor functions
+
+2008-10-29  Tambet Ingo  <tambet@gmail.com>
+
+       Half of it by Dan Williams <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+       libnm-util/nm-setting-vpn.c
+       libnm-util/nm-setting-vpn.h
+               - Make properties private and add accessor functions.
+
+       * src/vpn-manager/nm-vpn-connection.c
+       src/vpn-manager/nm-vpn-manager.c
+       system-settings/plugins/keyfile/reader.c
+       vpn-daemons/openvpn/properties/auth-helpers.c
+       vpn-daemons/openvpn/properties/import-export.c
+       vpn-daemons/openvpn/properties/nm-openvpn.c
+       vpn-daemons/openvpn/src/nm-openvpn-service.c
+       vpn-daemons/pptp/auth-dialog/main.c
+       vpn-daemons/pptp/properties/advanced-dialog.c
+       vpn-daemons/pptp/properties/nm-pptp.c
+       vpn-daemons/pptp/src/nm-pptp-service.c
+       vpn-daemons/vpnc/properties/nm-vpnc.c
+       vpn-daemons/vpnc/src/nm-vpnc-service.c
+               - Use VPN setting accessors.
+
+2008-10-28  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-wireless.c
+         libnm-util/nm-setting-wireless.h
+               - Make properties private and add accessor functions
+
+       * src/NetworkManagerAP.c
+         src/nm-device-wifi.c
+         src/nm-manager.c
+         src/supplicant-manager/nm-supplicant-config.c
+         system-settings/plugins/ifcfg-fedora/nm-ifcfg-connection.c
+         system-settings/plugins/ifcfg-fedora/reader.c
+         system-settings/plugins/ifcfg-suse/parser.c
+         system-settings/plugins/ifupdown/parser.c
+               - Use wireless setting accessors
+
+2008-10-27  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-ppp.c
+         libnm-util/nm-setting-ppp.h
+               - Make properties private and add accessor functions
+
+       * src/ppp-manager/nm-ppp-manager.c
+               - Use ppp setting accessors
+
+2008-10-27  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/nm-setting.h
+         libnm-util/nm-setting.c
+               - Make properties private and add accessor functions
+
+       * libnm-util/nm-connection.c
+         libnm-util/nm-setting-8021x.c
+         libnm-util/nm-setting-cdma.c
+         libnm-util/nm-setting-connection.c
+         libnm-util/nm-setting-gsm.c
+         libnm-util/nm-setting-ip4-config.c
+         libnm-util/nm-setting-ip6-config.c
+         libnm-util/nm-setting-ppp.c
+         libnm-util/nm-setting-pppoe.c
+         libnm-util/nm-setting-serial.c
+         libnm-util/nm-setting-template.c
+         libnm-util/nm-setting-vpn.c
+         libnm-util/nm-setting-wired.c
+         libnm-util/nm-setting-wireless-security.c
+         libnm-util/nm-setting-wireless.c
+         system-settings/plugins/keyfile/reader.c
+         system-settings/plugins/keyfile/writer.c
+               - Use setting accessors
+
+2008-10-27  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-connection.c
+         libnm-util/nm-setting-connection.h
+               - Add a 'read-only' property that indicates the connection cannot be
+                       modified
+
+       * system-settings/plugins/ifcfg-fedora/reader.c
+         system-settings/plugins/ifcfg-suse/parser.c
+         system-settings/plugins/ifupdown/parser.c
+               - These plugins are read-only at the moment
+
+       * system-settings/plugins/keyfile/reader.c
+         system-settings/plugins/keyfile/writer.c
+               - Read-only shouldn't get saved out to files or read in from them
+
+2008-10-27  Tambet Ingo  <tambet@gmail.com>
+
+       * src/nm-device-ethernet.c (nm_device_ethernet_get_speed): Implement
+       correct speed reporting for fast devices (kernel >= 2.6.27).
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       Attempt to compensate for modems that don't enable full AT parsing before
+       the PIN has been entered.
+
+       * src/nm-gsm-device.c
+               - (init_modem): accept different init strings
+               - (init_done): try different init strings on failure
+               - (check_pin_done): on PIN success, do full modem init
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-connection.c
+         libnm-util/nm-setting-connection.h
+               - Make properties private and add accessor functions
+
+       * src/NetworkManagerPolicy.c
+         src/nm-cdma-device.c
+         src/nm-device-ethernet.c
+         src/nm-device-interface.c
+         src/nm-device-wifi.c
+         src/nm-gsm-device.c
+         src/nm-manager.c
+         src/ppp-manager/nm-ppp-manager.c
+         src/vpn-manager/nm-vpn-connection.c
+         system-settings/plugins/ifcfg-fedora/nm-ifcfg-connection.c
+         system-settings/plugins/ifcfg-fedora/plugin.c
+         system-settings/plugins/ifcfg-fedora/reader.c
+         system-settings/plugins/ifcfg-suse/parser.c
+         system-settings/plugins/ifupdown/parser.c
+         system-settings/plugins/keyfile/nm-keyfile-connection.c
+         system-settings/plugins/keyfile/plugin.c
+         system-settings/plugins/keyfile/writer.c
+         system-settings/src/main.c
+               - Use those accessors
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-gsm.c
+         libnm-util/nm-setting-gsm.h
+               - Make properties private and add accessor functions
+
+       * src/nm-gsm-device.c
+         src/nm-hso-gsm-device.c
+         src/ppp-manager/nm-ppp-manager.c
+               - Use those accessors
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-cdma.c
+         libnm-util/nm-setting-cdma.h
+               - Make properties private and add accessor functions
+
+       * src/nm-cdma-device.c
+         src/ppp-manager/nm-ppp-manager.c
+               - Use those accessors
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-pppoe.c
+         libnm-util/nm-setting-pppoe.h
+               - Make properties private and add accessor functions
+
+       * src/nm-device-ethernet.c
+         src/ppp-manager/nm-ppp-manager.c
+               - Use those accessors
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-wired.c
+         libnm-util/nm-setting-wired.h
+               - Make properties private and add accessor functions
+
+       * src/nm-device-ethernet.c
+         system-settings/plugins/ifcfg-fedora/nm-ifcfg-connection.c
+         system-settings/plugins/ifcfg-suse/parser.c
+         system-settings/src/main.c
+               - Use those accessors
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       Patch from Tambet Ingo <tambet@gmail.com>
+
+       * libnm-util/libnm-util.ver
+         libnm-util/nm-setting-serial.c
+         libnm-util/nm-setting-serial.h
+         src/nm-serial-device.c
+               - Make properties private and use accessors instead
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       * 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
+               - Add state-to-string conversion functions
+
+       * src/nm-device-wifi.c
+         src/nm-device-ethernet.c
+               - Normalize state info logging and use strings instead of numbers
+
+2008-10-26  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManagerPolicy.c
+               - (update_routing_and_dns): ignore host routes when determining whether
+                       a VPN connection should own the default route (bgo #552594)
+
+2008-10-24  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-gsm-device.c
+               - (set_apn): remove erroneous spaces in AT+CGDCONT command (Jerone Young)
+
+2008-10-23  Dan Williams  <dcbw@redhat.com>
+
+       * src/ppp-manager/nm-ppp-manager.c
+               - (create_pppd_cmd_line): pppd always parses /etc/ppp/options, so always
+                       add really important stuff to the command line to ensure that NM
+                       overrides /etc/ppp/options (bgo #556781)
+
+2008-10-22  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManagerSystem.c
+         src/nm-device.c
+               - Use the device's IP interface where appropriate (Per Hallsmark)
+
+2008-10-22  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-gsm-device.c
+               - (schedule_automatic_registration_again): use a short timeout here
+                       instead of an idle handler to avoid using too much CPU polling for
+                       something we should be waiting a bit for anyway
+
+2008-10-22  Dan Williams  <dcbw@redhat.com>
+
+       * include/NetworkManager.h
+         introspection/nm-device.xml
+               - Add device state change reason for carrier changes
+
+       * src/nm-device-ethernet.c
+               - (set_carrier): use the carrier change reason when changing device
+                       state in response to carrier changes
+
+2008-10-21  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManagerPolicy.c
+               - (update_etc_hosts): don't leak errors, and ensure that
+                       g_file_set_contents() gets a valid error placeholder (rh #461933)
+
+2008-10-21  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-manager.c
+               - (free_get_settings_info): don't use the DBusGProxy which could be
+                       disposed of by the time the function is called
+               - (internal_new_connection_cb): save connection scope
+               - (connection_get_settings_cb): don't replace a connection unless it's
+                       actually different from the existing one; fixes an issue where
+                       killing the settings service wouldn't deactivate an active connection
+                       provided by that settings service, because it was using a connection
+                       that had already been replaced in the system or user hash
+
+2008-10-21  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManager.c
+               - (main): keep the DHCP manager around since it's a singleton; fixes
+                       a use-after-free exposed by r4196 since the DHCP manager singleton
+                       variable isn't cleared when the DHCP manager object is finalized
+
+2008-10-20  Dan Williams  <dcbw@redhat.com>
+
+       * libnm-util/nm-setting-wireless-security.c
+               - (verify): accept 'none' as a pairwise cipher with Ad-Hoc WPA connections
+
+2008-10-20  Dan Williams  <dcbw@redhat.com>
+
+       * src/supplicant-manager/nm-supplicant-config.c
+               - (ADD_STRING_LIST_VAL): don't add empty values to the supplicant config
+
+2008-10-20  Dan Williams  <dcbw@redhat.com>
+
+       * src/dhcp-manager/nm-dhcp-manager.c
+               - (nm_dhcp_manager_get): fix mismatched refcount; creating the dhcp
+                       manager object already refs it once
+               - (nm_dhcp_manager_cancel_transaction_real): clear freed variables that
+                       also get cleaned up by nm_dhcp_device_destroy() to prevent
+                       double-frees
+
+2008-10-20  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-manager.c
+               - (initial_get_connections): use private dbus manager, don't keep
+                       ref-ing the singleton.  Fixes mismatched refcounts of the dbus
+                       manager object.
+
+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
+
+2008-10-16  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-device-wifi.c
+               - (constructor): correctly determine encryption capabilities
+
+2008-10-15  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-device-wifi.c
+               - (wireless_qual_to_percent): fix quality calculation in a fallback case
+                       (Johannes Berg)
+
+2008-10-15  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManagerSystem.c
+               - (ip4_dest_in_same_subnet): tighter checks on subnet matching,
+                       if the ip4_dest is in a smaller subnet contained within a subnet
+                       the machine is currently on, the destination is in the same subnet
+               - (nm_system_device_set_ip4_route): move subnet checks to callers
+               - (add_vpn_gateway_route): check if the VPN gateway is in the same
+                       subnet as the parent device, and if so, don't add the direct
+                       host route via the parent device's gateway (bgo #481620)
+               - (nm_system_apply_ip4_config): check whether the route to be added
+                       is contained within a subnet the device is already on
+
+2008-10-11  Dan Williams  <dcbw@redhat.com>
+
+       * include/NetworkManager.h
+         introspection/nm-device.xml
+         include/NetworkManagerVPN.h
+               - Add a few more state reasons for the device deactivated state
+
+       * src/nm-device-interface.c
+         src/nm-device-interface.h
+               - (nm_device_interface_deactivate): add a 'reason' argument
+
+       * src/nm-device.c
+         src/nm-device.h
+               - (nm_device_deactivate, nm_device_take_down): add a 'reason' argument
+               - (nm_device_state_changed): pass the state change reason to
+                       nm_device_take_down()
+               - (nm_device_set_managed): take a 'reason' argument, and pass it along
+                       to the state change function
+
+       * src/nm-manager.c
+         src/nm-manager.h
+               - (remove_one_device, handle_unmanaged_devices, sync_devices,
+                  impl_manager_sleep): pass a reason code to nm_device_set_managed()
+               - (nm_manager_deactivate_connection): add a 'reason' argument and pass
+                       something reasonable along to VPN deactivation
+
+       * src/vpn-manager/nm-vpn-manager.c
+         src/vpn-manager/nm-vpn-manager.h
+               - (nm_vpn_manager_deactivate_connection): add a 'reason' argument and
+                       pass that along to nm_vpn_connection_disconnect()
+
+2008-10-11  Dan Williams  <dcbw@redhat.com>
+
+       * src/nm-device-wifi.c
+               - (can_scan): remove old madwifi hack for not scanning while connected
+
+2008-10-11  Dan Williams  <dcbw@redhat.com>
+
+       Add support for VPN subnet gateways (bgo #549196)
+
+       * include/NetworkManager.h
+               - Add key for internal VPN subnet gateway
+
+       * src/vpn-manager/nm-vpn-connection.c
+               - (ip_address_to_string): return a const from a static buffer so we
+                       don't leak a lot of strings
+               - (print_vpn_config): print internal VPN gateway as well
+               - (nm_vpn_connection_ip4_config_get): grab internal VPN gateway from
+                       VPN service too
+               - (nm_vpn_connection_get_ip4_internal_gateway): new function
+
+       * src/NetworkManagerSystem.c
+         src/NetworkManagerSystem.h
+               - (nm_system_device_replace_default_ip4_route): split into two, one for
+                       VPN connections and one for normal devices
+               - (replace_default_ip4_route): break out route stuff into its own function
+               - (nm_system_replace_default_ip4_route_vpn,
+                  nm_system_replace_default_ip4_route): simplify by having two cases,
+                       one for VPNs and one for normal devices
+
+       * src/NetworkManagerPolicy.c
+               - (update_routing_and_dns): simplify, use split default route replacement
+                       functions
+
+2008-10-10  Dan Williams  <dcbw@redhat.com>
+
+       Rework default route handling to consolidate decisions in the policy,
+       and to take active VPN connections into account when changing the default
+       route (bgo #545912)
+
+       * src/NetworkManager.c
+               - (main): pass the vpn_manager to the policy so it knows about active
+                       VPN connections; clean up the named manager which wasn't done before
+
+       * src/NetworkManagerPolicy.c
+         src/NetworkManagerPolicy.h
+               - (nm_policy_new): get a clue about the vpn_manager
+               - (update_default_route): remove, fold into update_routing_and_dns()
+               - (update_routing_and_dns): handle active VPN connections too; an
+                       active VPN connection becomes the default route if it does not have
+                       server-specified or user-specified custom routes.  Otherwise, the
+                       best active device gets the default route
+               - (vpn_connection_activated, vpn_connection_deactivated, nm_policy_new,
+                  nm_policy_destroy): track VPN connection activation and deactivation
+                       and update the default route when appropriate
+
+       * src/NetworkManagerSystem.c
+         src/NetworkManagerSystem.h
+               - (nm_system_vpn_device_unset_from_ip4_config): remove, put functionality
+                       in the VPN connection itself
+               - (nm_system_vpn_device_set_from_ip4_config,
+                  nm_system_device_set_from_ip4_config): merge together to make
+                       nm_system_apply_ip4_config()
+               - (add_vpn_gateway_route): add a route to the VPN's external gateway
+                       via the parent device
+               - (nm_system_apply_ip4_config): simplify
+               - (add_ip4_route_to_gateway): new function; add a direct route to the
+                       gateway if needed
+               - (nm_system_device_replace_default_ip4_route): simplify, break gateway
+                       route stuff out into add_ip4_route_to_gateway() for clarity
+
+       * src/nm-device.c
+               - (nm_device_set_ip4_config): update for nm_system_apply_ip4_config()
+
+       * src/vpn-manager/nm-vpn-connection.c
+         src/vpn-manager/nm-vpn-connection.h
+               - (nm_vpn_connection_get_ip4_config, nm_vpn_connection_get_ip_iface,
+                  nm_vpn_connection_get_parent_device): add
+               - (nm_vpn_connection_ip4_config_get): make the requirement of a tunnel
+                       device explicit
+               - (connection_state_changed): update the named manager now that
+                       nm_system_vpn_device_unset_from_ip4_config() is gone; do something
+                       useful on errors
+
+       * src/vpn-manager/nm-vpn-manager.c
+         src/vpn-manager/nm-vpn-manager.h
+               - Add a 'connection-activated' signal
+               - (nm_vpn_manager_get_active_connections): new function; mainly for the
+                       policy to find out about active VPN connections
+
 2008-10-10  Tambet Ingo  <tambet@gmail.com>
 
        * src/nm-logging.c (nm_logging_setup): Don't use LOG_CONS when running as
 2008-09-30  Dan Williams  <dcbw@redhat.com>
 
        * src/NetworkManagerPolicy.c
-               - (lookup_thread_worker): don't store the idle handler ID becuase the
+               - (lookup_thread_worker): don't store the idle handler ID because the
                        idle handler could have already run and freed the LookupThread
                        structure
 
                        internally; clients should provide a setting that applies to
                        the device with 'autoconnect: True'.  Problem was that these
                        internally auto-created connections don't have a proxy or service
-                       name becuase they weren't created by a settings daemon, and therefore
+                       name because they weren't created by a settings daemon, and therefore
                        clients have no idea what to do with them.
 
 2007-10-03  Dan Williams  <dcbw@redhat.com>
        * libnm-glib/nm-settings.c
          libnm-glib/nm-settings.h
                - make the dbus path a property of the object, and autogenerate it.
-               It can't be composed of the 'id' field becuase that's not available
+               It can't be composed of the 'id' field because that's not available
                yet during the GObject creation in nm_connection_settings_init()
 
 2007-08-29  Dan Williams  <dcbw@redhat.com>
                        for NM service; only emit when state really changes
                - Use hash tables correctly so that the key (which was previously owned
                        by the D-Bus message) now has the same lifetime as the value, since
-                       the key is now taken from the the NMVPNConnection itself.  This
+                       the key is now taken from the NMVPNConnection itself.  This
                        really fixes the double-VPN names in the applet
 
 2007-08-13  Dan Williams  <dcbw@redhat.com>