* libnm-glib/nm-device-802-11-wireless.c
- (get_access_point): move the "/" check here; check for invalid path
too
- (nm_device_802_11_wireless_set_active_ap): leave the "/" check up
to get_access_point()
- (access_point_added_proxy, access_point_removed_proxy): don't try
to send signals for non-existent access points
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3269 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-glib/libnm_glib.c
- (libnm_glib_init): make thread joinable
- (libnm_glib_ctx_free): join thread on exit to clean up memory
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3265 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* test/libnm_glib_test.c
- (signal_handler, setup_signals): trap SIGINT and SIGTERM
- (main): set up signal handlers; call libnm_glib_shutdown
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3264 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* include/NetworkManager.h
- Add CDMA mobile broadband card device type
* src/nm-hal-manager.c
- (modem_device_creator): handle both CDMA and GSM modems; the device
must now be tagged with 'cdma' or 'gsm' capability
* src/nm-cdma-device.c
src/nm-cdma-device.h
src/Makefile.am
- Add the CDMA mobile broadband card device class
* libnm-util/nm-connection.c
- (register_default_settings): add NMSettingCdma
* libnm-util/nm-setting-cdma.c
libnm-util/nm-setting-cdma.h
libnm-util/Makefile.am
- Add the CDMA mobile broadband card setting class
* libnm-glib/nm-cdma-device.c
libnm-glib/nm-cdma-device.h
libnm-glib/Makefile.am
- Add the CDMA mobile broadband card GLib proxy class
* libnm-glib/nm-client.c
- (get_device): handle CDMA devices too
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3261 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/ppp-manager/nm-ppp-manager.c
- (ip4_config_get): set peer address too
* src/ppp-manager/nm-pppd-plugin.c
- (nm_ip_up): try harder to get the peer's address
* src/NetworkManagerSystem.c
- (nm_system_device_set_from_ip4_config): if the IP4Config has a peer
address, use that too. Otherwise, some PPP connections won't work.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3260 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerPolicy.c
- (nm_policy_device_change_check): system connections override user
connections; don't activate a user connection if there's a currently
active system connection, and new, better system connections always
interrupt user connections
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3258 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-3-ethernet.c
- (find_best_connection): check MAC address too
- (real_get_best_connection): let autoconnect=True connections activate
for devices that don't have carrier detection
* src/nm-device-802-11-wireless.c
- (find_best_connection): check MAC address too
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3248 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-3-ethernet.c
- (nm_device_802_3_ethernet_carrier_on,
nm_device_802_3_ethernet_carrier_off): ignore any spurious netlink
carrier events that might come in for devices that don't support
carrier detect
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3245 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-interface.c
- (nm_device_interface_check_connection_conflicts): need to actually
get the interface, not cast to the object
* src/nm-device.c
- (nm_device_check_connection_conflicts): need to get the device class,
not cast the device to the device class
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3244 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* 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
* src/nm-device-802-11-wireless.c
- (activation_success_handler): if a match was found in the scan list
and that match is a hidden AP, update that AP's SSID
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3236 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerAP.c
- (nm_ap_new_fake_from_connection): mark fake APs as fake
* src/nm-device-802-11-wireless.c
- (get_active_ap): do two passes over the scan list if the caller
requests that hidden APs get matched too; during the second pass
when matching hidden APs, ignore the SSID since hidden APs in the
scan list don't have an SSID yet
- (periodic_update): move some checks to
nm_device_802_11_periodic_update() because not all callers need them
- (nm_device_802_11_periodic_update): move some checks here from
perodic_update()
- (merge_scanned_ap): if the current AP is fake, then don't do strict
matching on incoming scan results, because the fake AP's flags
might be slightly different (yet still compatible) with the incoming
scan result's flags and they might actually be the same AP; update
the rate on merged APs too
- (activation_success_handler): update the frequency of the fake AP
on successful connection; match hidden APs too since if the
current AP is fake, there might already be a scan result in the
scan list for the desired AP, just without it's SSID filled in yet
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3235 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Fix gnome.org #464215. Requires the kernel patch titled
"Introduce WEXT scan capabilities" but will handle the patch not being
present, you'll just continue to have problems with hidden SSIDs when
using mac80211-based drivers.
* src/supplicant-manager/nm-supplicant-config.h
src/supplicant-manager/nm-supplicant-config.c
- (nm_supplicant_config_add_setting_wireless): new parameter to indicate
whether the driver supports SSID scans or not. If it does, and if
the AP is hidden, use ap_scan=1 instead of ap_scan=2
* src/nm-device-802-11-wireless.c
- (constructor): check whether or not the driver supports SSID scans
- (build_supplicant_config): pass driver SSID scan capability when
building the wireless bits of the supplicant config
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3230 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device.c
src/nm-device.h
- (device_activation_precheck, check_connection_complete): remove this
virtual function; incomplete connections should be invalid by
definition, complete-ness should be checked in the setting's
verify function
* src/nm-serial-device.c
src/nm-gsm-device.c
- (real_check_connection_complete): remove
* libnm-util/nm-setting-serial.c
- (verify): new function; ensure there is a PPP setting too
* libnm-util/nm-setting-gsm.c
- (verify): ensure there is a serial setting too
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3225 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/named-manager/nm-named-manager.c
- (rewrite_resolv_conf, add_ip4_config_to_named): use primary IP4Config's
nameservers if the secondary config doesn't have any
(gnome.org #346833)
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3212 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* 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
* 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