* src/vpn-manager/nm-vpn-connection.[ch]:
* src/vpn-manager/nm-vpn-manager.[ch]:
* src/vpn-manager/nm-vpn-service.[ch]: Rewrite the vpn handling
* code. Using
dbus-glib, GObjects, signals etc.
* libnm-glib/nm-vpn-manager.[ch]:
* libnm-glib/nm-vpn-connection.[ch]: Now that the NM
* implementation changed
so much, rewrite these too.
* libnm-glib/Makefile.am: Add new files to build, build new
* binding files for
the new introspection files.
* libnm-glib/nm-client.[ch]: Remove all VPN related stuff from
* here.
* libnm-glib/nm-dbus-utils.[ch]: Renamed from nm-utils.[ch] that
* was shadowing
the header with the same name from libnm-utils.
* libnm-glib/nm-vpn-plugin.[ch]: Implement.
* libnm-util/Makefile.am: Add nm-utils.[ch] to build.
* introspection/nm-vpn-plugin.xml: Implement.
* introspection/nm-vpn-connection.xml: Implement.
* introspection/nm-vpn-manager.xml: Implement.
* src/NetworkManagerSystem.c
* (nm_system_vpn_device_set_from_ip4_config): Remove
the named manager argument, it can just as easily get it as the
caller.
(nm_system_vpn_device_unset_from_ip4_config): Ditto.
* src/vpn-manager/nm-dbus-vpn.[ch]: Remove.
* src/nm-dbus-manager.h: Fix up the name_owner signal signature.
* src/dhcp-manager/nm-dhcp-manager.c (garray_to_string): Remove,
* use one from
libnm-utils.
* libnm-util/nm-connection.c: Ditto.
* src/NetworkManagerMain.h: Remove, it's finally empty.
* configure.in: Remove utils/ from build.
* include/NetworkManagerVPN.h: Add some more defines to reduce
* the amount
of hard-coded strings.
* utils/: Move it over to libnm-util.
* test/Makefile.am: Link against libnm-util now that util/ is
* gone.
* dispatcher-daemon/Makefile.am: Ditto.
* src/Makefile.am: Ditto.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2798 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
It's 2007. Remove support for drivers that don't support wireless scanning.
* test/nm-tool.c
include/NetworkManager.h
src/NetworkManagerUtils.c
src/NetworkManagerPolicy.c
src/nm-device-802-11-wireless.c
- Remove special handling for non-scanning devices and mark them
as unsupported/unhandled
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2726 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-glib/libnm-glib.pc.in: Rename to libnm_glib.pc.in.
* libnm-glib/Makefile.am: Add legacy libnm_glib.[ch] to the
* build.
Rename the library from libnm-glib to libnm_glib to maintain the
library API
compatibility with 0.6 branch.
* Makefile.am: Remove gnome/ SUBDIR.
* gnome/libnm_glib/libnm_glib.[ch]: Move to libnm-glib/.
* src/Makefile.am: Remove the WPA_SUPPLICANT_BIN define.
* dispatcher-daemon/Makefile.am: Link the binary with
* libnm_glib.
* configure.in: Remove GNOME checks, NetworkManager does not
* need any of these
anymore.
Remove checks for wpa_supplicant binary, it's used over dbus.
Remove gnome/ directory files form AC_OUTPUT, that directory is
getting moved.
* test/Makefile.am: Remove define WPA_SUPPLICANT_BIN.
Link the binaries with libnm_glib.la.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2669 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-glib/Makefile.am: Add NMObject to build, remove nm-utils.[ch].
* nm-utils.[ch]: Remove.
* libnm-glib/nm-object.c: Implement a base class for all libnm-glib dbus-aware
objects for easy property access and dbus connection handling.
* libnm-glib/nm-client.c: Derive from NMObject.
* libnm-glib/nm-device.c: Ditto.
* libnm-glib/nm-device-802-3-ethernet.c: Changes for being based on NMObject.
* libnm-glib/nm-device-802-11-wireless.c: Ditto.
* libnm-glib/nm-ip4-config.c: Ditto.
* libnm-glib/nm-access-point.c: Ditto.
* libnm-util/nm-connection.c (nm_connection_compare): Add a stub for connection
comparision. Currently used by the device activation code to determine if the new
activation is the same as the old one.
* src/nm-dbus-nmi.c (nm_dbus_get_user_key_for_network): Don't use the obsolete and
wrong way of getting the dbus path for AP. Fixes the issue where the applet isn't
able to ask password for the AP.
* src/nm-device.c (nm_device_activate): Change the logic here - instead of giving
up if the device is already connected, tear down it's connection (if it isn't the
same as new one) and start the activation.
* src/nm-manager.c: Add the beginnings of NMConnection storage and signals.
* src/NetworkManagerAP.c (nm_ap_init): Set the default values to AP memebers, fixes
the issue where all APs are always listed as encrypted.
* src/NetworkManagerDbus.c (nm_dbus_get_object_path_for_network): Remove. APs have
their own registered paths.
* test/nm-tool.c (detail_device): Don't try to get active network from wireless
device if it's not connected - dbus-glib will happily crash trying to marshal NULL.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2615 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* 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
* libnm-glib/nm-device-802-11-wireless.c
(nm_device_802_11_wireless_get_capabilities): Implement.
* libnm-glib/nm-device.c (nm_device_get_capabilities): Implement.
* src/nm-device-802-11-wireless.c: Add "WirelessCapabilities" property.
* src/named-manager/nm-named-manager.c (remove_one_zone_from_named): Unref the
reply only if it's not NULL. Not sure why this started happening right now.
* src/nm-manager.c (device_stop_and_free): Remove. No need to have different
code paths for when devices get removed on shutdown or when a device is just
removed.
(finalize): Don't use a g_slist_foreach() when removing devices, the list data
gets freed so any signal from a device (disconnected for instance) would invoke
NMState update which would crash.
(nm_manager_remove_device): Bring the device down when it gets removed.
* src/NetworkManagerPolicy.c (nm_policy_auto_get_best_device): Remove
the unused dev_type.
* src/nm-hal-manager.c (create_device_and_add_to_list): Don't keep the
reference to the added device, NMManager will own it (if it wants).
* test/nm-tool.c: Rewrite using libnm-glib.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2417 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Totally break NetworkManager. Please use 0.6 branch until futher notice.
* src/:
- Remove old low-level dbus interface implementations and replace them
with dbus-glib one.
* configure.in:
- Require dbus-glib >= 0.72.
- Plug in new sources to build.
* libnm-glib/:
- Implement GObject wrappers on top of DBUS glib auto-generated bindings
to make it more convenient to use from GObject based programs.
* introspection/:
- Implement DBUS XML introspection files, used by both NM and libnm-glib.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2309 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-util/dbus-dict-helpers.c
libnm-util/dbus-dict-helpers.h
- Coordinate style with wpa_supplicant version to minimize diff
- Add uint32 array support
- (nmu_dbus_dict_append_uint32_array): new function
- (nmu_dbus_dict_begin_string_array, nmu_dbus_dict_string_array_add_element,
nmu_dbus_dict_end_string_array): bring over from wpa_supplicant
version; allow adding string array elements individually
* test/libnm-util/test-dbus-dict-helpers.c
- Test uint32 arrays
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2249 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* test/Makefile.am
test/libnm-util/Makefile.am
test/nm-supplicant-test.c
- Add test program emulating the way NM drives wpa_supplicant
to help debug supplicant issues
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2022 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-util/Makefile.am
* libnm-util/dbus-dict-helpers.[ch]
- Add some helpers to take the pain out of using dict types in
dbus.
* test/libnm-util/Makefile.am
* test/libnm-util/test-dbus-dict-helpers.c
- Test cases for the dict helper functions
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1834 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Add 'fallback' support. NetworkManager will attempt to brute-force
connect to networks marked as fallback if there are no better wireless
connections available. This is useful as a method of last resort, to
work around driver problems, and for use with hidden networks.
* gnome/applet/applet-dbus-devices.c,
gnome/applet/applet-dbus-devices.h: Add fallback parameter.
* gnome/applet/applet-dbus-info.c: Retrieve fallback bit from Gconf and
pass it on via DBUS.
* gnome/applet/applet.c: No fallback by default.
* gnome/applet/applet.glade, gnome/applet/other-network-dialog.c:
Update other-network-dialog to add UI checkbox toggling fallback.
* src/NetworkManagerAP.c, src/NetworkManagerAP.h: Remove "trusted"
propery from AP object. Add "fallback" property to AP object.
* src/nm-dbus-nm.c: Grab the fallback parameter via DBUS.
* src/nm-dbus-nmi.c: Grab the fallback parameter via DBUS.
* src/nm-device-802-11-wireless.c: Break out blacklist logic into
separate function. Add get_best_fallback_ap() for returning an AP
on which to attempt fallback.
* src/backends/NetworkManagerSuSE.c: Set stored network as fallback.
* test/nm-set-fallback: New file. Sets a given network as fallback.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1814 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch by Timo Hoenig;
* tests/nm-online.c: Print pretty status indicator as timeout winds
down. Also fix possible race between DBUS startup and failure
return.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1714 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* tests/nm-online.c: New file. Simple utility that returns exit status
noting whether the connection is offline or online. If offline on
start, it waits 60 seconds (or a command-line given value) for an
online signal. If it times out, it again returns offline. This is
useful for scripts that want to wait for network connections.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1706 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Add support for retrieving both the per-device speed and the
per-network maximum supported rate. Then change the getProperties
DBUS API for both networks and devices to report this informaiton.
Finally, display the information via both nm-applet and nm-tool:
* gnome/applet/applet-dbus-devices.c: Grab the speed from getProperties
and set it.
* gnome/applet/applet.c: Display the device's speed in the 'Connection
Information' dialog.
* gnome/applet/applet.glade: Update the UI to show per-device speed.
* gnome/applet/nm-device.c, gnome/applet/nm-device.h: Add interfaces
network_device_get_speed() and network_device_set_speed() for
retrieving and setting, respectively, a network device's current
speed.
* src/nm-dbus-device.c: Send the device's speed on getProperties.
* src/nm-device-802-11-wireless.c: Return the rate in Mb/s, not Kb/s,
in the function nm_device_802_11_wireless_get_bitrate() -- it does
not matter (yet) what the units are, because we only feed it its own
output. Implement SIOCGIRATE and set the per-network maximum
supported rate during scanning.
* src/nm-device-802-11-wireless.h: Export the function
nm_device_802_11_wireless_get_bitrate().
* src/nm-device-802-3-ethernet.c, src/nm-device-802-3-ethernet.h: Add
function nm_device_802_3_ethernet_get_speed() for returning an
802.3's current speed, in Mb/s.
* test/nm-tool.c: Display the per-device current speed, if available,
and the per-network maximum rate.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1540 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerAP.c: Add 'broadcast' property to the NMAccessPoint
structure, which denotes whether or not the AP is hidden. This is a
superset of 'artificial' -- we need 'broadcast' because a hidden AP
can show up in the scan list. Add nm_ap_get_broadcast() and
nm_ap_set_broadcast() accessor interfaces.
* src/NetworkManagerAP.h: Add prototypes for nm_ap_get_broadcast() and
nm_ap_set_broadcast().
* src/nm-dbus-net.c: Add new argument, boolean broadcast, to the
"getProperties" method, which denotes whether or not the given
network is hidden.
* src/nm-device-802-11-wireless.c: Set broadcast to FALSE when creating
an artificial network. Set broadcast to TRUE when scanning returns
an ESSID and FALSE when not.
* gnome/applet/applet-dbus-devices.c: Retrieve 'broadcast' argument
from "getProperties" method on a network. Possible TODO is to
somehow display this.
* test/nm-tool.c: Display "Hidden" if the AP does not broadcast.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1429 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* gnome/applet/applet-dbus-devices.c
- (nmwa_dbus_device_get_driver_cb, nmwa_dbus_device_get_driver): new
functions, grab device driver name from NetworkManager
- (nmwa_dbus_device_properties_cb): call functions to get driver
* gnome/applet/applet.c
- (nmwa_update_info): show driver name in Connection Information
dialog
* gnome/applet/nm-device.[ch]
- (network_device_get_driver, network_device_set_driver): add
accessors for driver name
* gnome/applet/wireless-applet.glade
- Add line for driver name to Connection Information dialog
* src/nm-dbus-device.c
- (nm_dbus_device_get_driver): new function to return driver name
- (nm_dbus_device_methods): hook up driver name function to dbus
* test/nm-tool.c
- (get_driver_name): new function
- (detail_device): grab and show driver name
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1406 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/Makefile.am: Don't install NMLoadModules
* src/NMLoadModules, test/NMLoadModules: Move the NMLoadModules script
from src/ to test/ as no one uses it anymore. Note that I would be
fine with removing it altogether.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1353 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-3-ethernet.c: Use the if_mii() inline function that
is defined in <linux/mii.h> to return the mii_ioctl_data structure
from the ifreq structure in lieu of an open coded solution. Removes
a life-threatening type-punning.
* configure.in: Remove '-Wno-strict-aliasing' as we no longer pun any
types, ever, whatsoever, baby.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1316 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* test/test-common.c
test/test-common.h
test/Makefile.am
- Move to a test-common subdirectory
* test/libnm-util/test-ciphers.c
- Move test data to test-inputs.h
- Test WPA ciphers too
* test/libnm-util/test-dbus-helpers.c
- Test serialization/deserialization of ciphers
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1240 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* gnome/applet/applet-compat.c
- Fix bugs in GConf entry conversion
* gnome/applet/applet-dbus-info.c
- (nmi_dbus_get_network_properties): handle case of the BSSID
list being zero-length
* libnm-util/cipher-*
libnm-util/dbus-helpers.c
- All ciphers must now return hashed keys as UTF-8 valid
hexadecimal strings, ie "8f3dae4023". They are pushed
through dbus as strings too.
- Consolidate various functions that do bin->hex and hex->bin
conversion into cipher.c
* src/nm-ap-security-wep.c
src/nm-ap-security-wpa-psk.c
- Handle NULL keys since we may not know keys right away
* src/nm-dbus-nmi.c
- (nm_dbus_get_network_data_cb): actually advance to the start
of the wireless security info before we try to deserialize it
* libnm-util/test-ciphers.c
- Update cipher tests for the change to UTF-8 hexadecimal strings
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1230 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* Convert NETWORK_MODE_* constants to IW_MODE_*
* Make all the get_mode/set_mode functions take and return 'int'
* Convert D-BUS calls that pass mode to DBUS_TYPE_INT32 rather than UINT32
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1142 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* Move NetworkManager.h -> include/NetworkManager.h
* Split out VPN stuff to include/NetworkManagerVPN.h
* Fix up makefiles to include new location
* Fix up sources to include NetworkManagerVPN.h
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1130 4912f4e0-d625-0410-9fb7-b9a5a253dbdc