Patch from Bill Moss:
* panel-applet/NMWirelessAppletDbus.c
- Make sure strength for current access point is up-to-date when we
update the gui data model
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@481 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/backends/NetworkManagerRedHat.c
- (nm_system_init): Kill any dhclient processes lying around as well
as stopping 'nifd' if its already been started. NetworkManager
subsumes the functions of nifd (kicking mDNSResponder, autoip)
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@479 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/NMWirelessApplet.c
- (nmwa_destroy): Really mean to destroy GUI data model first, then
dbus data model, not the GUI data model twice.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@478 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/NMWirelessApplet.[ch]
panel-applet/NMWirelessAppletDbus.[ch]
- Move to incremental network updates. Instead of blowing away our list
of devices every time we get a signal from NetworkManager, we now
incrementally add/remove networks when NetworkManager notifies us that
a new network has appeared or disappered. Strength updates now happen
on-the-fly for each access point as well. There are now two copies of
data from NetworkManager: one for the dbus side, and one for the gui side.
When the dbus side data is modified, it is copied over to the gui side
so we don't have to hold the data_mutex for long periods of time (and
therefore block animation of the applet's icon).
- Clean up some memleaks too
* panel-applet/NMWirelessAppletOtherNetworkDialog.c
- Minor code beautification
* src/NetworkManagerAPList.c
- (nm_ap_list_merge_scanned_ap): return whether or not the access point is
completely new and whether or not an existing one's strength was updated.
Try to fix multiple access points and signal strength by using the highest
signal strength in each scan for any given ESSID.
* src/NetworkManagerDbus.[ch]
- (nm_dbus_signal_wireless_network_change): consolidate signals that deal with
wireless networks; now we have only WirelessNetworkUpdate which includes
a UINT32 for Appeared, Disappeared, or StrengthChanged (see NetworkManager.h).
- Kill usage of DbusMessageIter
* src/NetworkManagerDevice.c
- (nm_device_wireless_process_scan_results): Use the same timestamp for all APs
in the same scan result list. Copy ESSIDs-by-address earlier on, for each
AP rather than all-at-once. Also don't ever remove the AP a card is
currently associated with from the network list.
- Update for new signals during scan, send out Appeared, Disappeared, or
StrengthChanged when necessary.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@477 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/NMWirelessAppletOtherNetworkDialog.c
- Remove usage of gtk_window_set_default_size()
* panel-applet/essid.glade
- Stick default size here
- Add in random crap that current glade wants to add in now
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@474 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/backends/NetworkManagerRedHat.c
- For non-caching-nameserver/non-named case, ensure that nscd is running
and that we actually tell nscd to reload the hosts cache when it changes
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@472 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* named/nm-named-manager.c
- Ensure that pid and watch variables for child named process get cleared out
when the child goes away.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@469 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerPolicy.c
- (nm_policy_activation_finish): Deactivate a device if its activation fails,
and NULL out data->active_device so that we have to choose another one.
This may make NetworkManager keep attempting to connect to a wired network
if it fails, but if it keeps failing the wired network has more problems than
just NetworkManager.
* src/backends/NetworkManagerRedHat.c
- (nm_system_update_dns): fix to actually run nscd -i hosts when nscd
is already running
* named/nm-named-manager.c
- (rewrite_resolv_conf): Call nm_system_update_dns() when not using
named so that the distro can flush whatever name service caching
daemon it uses
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@468 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerDHCP.[ch]
- (nm_device_dhcp_remove_timeouts): new function
* src/NetworkManagerDevice.c
- Use nm_device_dhcp_remove_timeouts() everywhere that we need to
remove the DHCP timeouts.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@466 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/NMWirelessApplet.[ch]
panel-applet/menu-info.[ch]
- Give the panel applet some major love: menu items are no longer
subclasses of GtkCheckMenuItem, they are actual GtkCheckMenuItems.
This allows the applet to actually reflect theme changes correctly,
since themeing of subclassed items in GTK _sucks_.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@465 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm_glib/libnm_glib.[ch]
test/libnm_glib_test.c
- Clean up libnm_glib API a bit, callback is now passed a libnm_glib_ctx
and its data, and doesn't have to free the callback data anymore
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@461 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/NMWirelessApplet.c
- Revert 2005-02-18 William Jon McCann fix for standard
copyright string until it passes 'make distcheck'.
With standard copyright string, xgettext complains
about "Non-ASCII string at ...".
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@459 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/essid.glade
panel-applet/NMWirelessAppletOtherNetworksDialog.c
- Correct spelling of "adaptor"->"adapter"
2005-02-18 William Jon McCann <mccann@jhu.edu>
* panel-applet/NMWirelessApplet.c: Use GTK_CHECK_VERSION() macro.
(nmwa_about_cb): Use standard copyright string. Update comment
text to reflect that it is a notification area applet. Remove
leading newline in authors list.
(nmwa_menu_show_cb, nmwa_setup_widgets): Populate menu on show
instead of on parent menu item activation. Fixes#167550.
2005-02-18 William Jon McCann <mccann@jhu.edu>
* panel-applet/essid.glade: Capitalize items as per HIG.
Fixes#167632
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@458 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/gtkcellrendererprogress.[ch]: Only compile these
files for GTK 2.4 or lower, since now public in GTK 2.6.
* panel-applet/essid.glade: Don't specify window size.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@456 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Caught by Bill Moss:
* dhcpcd/client.c
- Time remaining for DHCP transaction calculation was incorrectly
inside a #ifdef DEBUG
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@454 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from Peter Jones:
* dhcpcd/client.c
- Ensure we return RET_DHCP_CEASED everywhere we should
* dhcpcd/udpipgen.c
- Use faster TOS for IP packets
- Don't set ip_id since we're UDP
Patch from Tomislav Vujec:
* src/nm-dbus-dhcp.c
test/nm-dhcp-opt-test.c
- Clean up warnings to enable cvs tree compilation.
* configure.in
- Set AM_MAINTAINER_MODE
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@451 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from Dan Reed: DHCP options D-BUS API
Exposes the DHCP options that a device receives to clients over D-BUS.
* configure.in
- A few cleanups
* dhcpcd/client.h
- Correct names, option length, and types for DHCP options
* dhcpcd/dhcpcd.[ch]
- Clarify function names that access DHCP options & data
* src/NetworkManagerDHCP.c
- Use new DHCP data access functions
* src/NetworkManagerDbus.c
- Message handler for DHCP functions
* src/nm-dbus-dhcp.[ch] (new)
- DHCP dbus methods
* test/nm-dhcp-opt-test.c
- Test DHCP D-BUS API and return all present DHCP options
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@444 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* dhcpcd/client.c
- (dhcp_init): only print out client ID and class ID if they are specified
* src/NetworkManagerDbus.[ch]
src/nm-dbus-nm.[ch]
src/nm-dbus-device.[ch]
src/nm-dbus-net.[ch]
- Move NM, Device, and Net functions to separate files and use the
dbus method list stuff in NetworkManagerDbusUtils.c to do
method dispatching
* src/NetworkManagerDbusUtils.c
- Add new validate_method called before each dispatch (if present)
that can validate the method call
* src/NetworkManagerWireless.c
- (nm_wireless_qual_to_percent): Fix misplaced "!" that caused signal
levels never to be evaluated
Patch from j@bootlab.org
* src/NetworkManagerDevice.c
- Add typedef for "u64"
* src/backends/NetworkManagerDebian.c
- Copy in Dave Woodhouse's fixes for IPv6
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@438 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from Dave Woodhouse for IPv6:
* src/NetworkManagerUtils.c
- (nm_ethernet_address_is_valid): Check for prism54 dummy MAC address
and multicast addresses
* src/NetworkManagerDevice.c
- (nm_device_set_up_down): make sure our cached MAC address is up-to-date
after bringing up a card.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@435 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from Dave Woodhouse:
* src/NetworkManagerSystem.h
src/backends/NetworkManagerDebian.c
src/backends/NetworkManagerGentoo.c
src/backends/NetworkManagerSlackware.c
- New nm_system_device_add_ip6_link_address() function to add link-local
address on an interface. Stubbed in Debian, Gentoo, and Slackware.
* src/backends/NetworkManagerRedHat.c
- (nm_system_device_add_ip6_link_address): implement
- (nm_system_device_flush_addresses): revert to previous behavior of
flushing all addresses
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@432 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from Tom Parker:
* src/NetworkManagerDevice.c
- Remove the "#include <pci/types.h>" since both the ethtool.h and
mii.h headers are broken, and instead use our own typedefs
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@430 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* dhcpcd/buildmsg.c
- (fill_host_and_class_id): only fill in client and class IDs if
they are set by callers.
* dhcpcd/client.c
- (class_id_setup): don't autogenerate a class ID, only use one
we're given, if any.
- (client_id_setup): don't autogenerate a client ID, only use one
we're given, if any.
* dhcpcd/dhcpcd.c
- (dhcp_interface_init): ensure that client options are correctly
NULL terminated
* src/NetworkManagerDHCP.c
- (nm_device_dhcp_request): pass hostname to dhcp library
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@429 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* dhcpcd/client.c
- #rh147661# Don't send kernel version in DHCP requests
* src/NetworkManagerSystem.h
src/backends/NetworkManagerDebian.c
src/backends/NetworkManagerGentoo.c
src/backends/NetworkManagerRedHat.c
src/backends/NetworkManagerSlackware.c
- Remove the nm_system_device_run_dhcp() and nm_system_device_stop_dhcp()
functions, they are no longer used anyway
* src/backends/NetworkManagerRedHat.c
- (nm_system_device_flush_addresses): only flush "scope global" and "scope site"
addresses in an attempt to keep IPv6 local-scope addresses around
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@428 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManager.c
- (nm_create_device_and_add_to_list): change the add message slightly
* src/NetworkManagerUtils.c
- (nm_get_wireless_driver_support_level, nm_get_wired_driver_support_level):
Return driver name to calling function
- (nm_get_driver_support_level): print out the driver a device is using
during the support check
Patch from Dave Woodhouse:
* dhcpcd/udpipgen.c
- (in_cksum): copy last byte of odd-sized packets into a
'u_short' rather than a 'u_char', should fix wrong checksums
on big-endian platforms
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@427 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* Clean up usage of GSList objects and looping through their members
* Clean up DHCP rebind/renew timeouts, hopefully they will work correctly
now.
* Fix problem where even if scanning was turned off, card would still
cycle through frequencies.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@423 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/NMWirelessApplet.[ch]
- Add a context menu that contains:
Pause/Resume Wireless Scanning
Stop/Start All Wireless Devices
About...
- Grab active device strength off active device,
not its network
* panel-applet/NMWirelessAppletDbus.[ch]
- Add DBUS accessors for "getSupportsCarrierDetect", "setScanningEnabled",
"getScanningEnabled", "setWirelessEnabled", and "getWirelessEnabled"
- Update active device strength every 2 seconds, not every 1 second
* panel-applet/menu-info.c
- Only disable wired devices in the menu when they support carrier detection,
and don't currently have a link. Non-carrier-detect devices will always
remain choosable
* src/Makefile.am
src/NetworkManagerDbusUtils.[ch]
- Add new new dbus utils sources
* src/NetworkManager.c
- Fixes for new link detection, we no longer need to call nm_device_update_link_active()
with the boolean parameter
- Set scanning_enabled & wireless_enabled to TRUE
* src/NetworkManagerDbus.c
- Use new dbus util method dispatcher functions for org.freedesktop.NetworkManager methods
- Implement scanning & wireless enable/disable calls
- Remove the dbus vtable unregister handlers, weren't doing anything with them anyway
* src/NetworkManagerDevice.c
- New link detection stuff again...
o Create device's mainloop earlier (but don't run it earlier)
o Hook up new carrier-detect support stuff
o Add in the ethtool & mii support detection code
- Don't scan if scanning is disabled
* src/NetworkManagerPolicy.c
- Never automatically choose a device that doesn't support carrier detection
- Don't automatically choose a wireless device if wireless is disabled
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@416 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerWireless.c
- (nm_wireless_qual_to_percent): Fix up wireless quality calculations
to be in line with the WEXT quality specification
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@413 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from Nathan Fredrickson <nathan@silverorange.com>
* Fix up compile for deprecation of libgnomeui
- Switch to <glib/gi18n.h> from <libintl.h>
- Remove <libgnomeui/libgnomeui.h> includes
- Use gtk_window_set_default_icon_from_file() rather than
gnome_window_set_default_icon_from_file()
* named/nm-named-manager.c
- (generate_named_conf): Fix return-nothing in non-void
function
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@409 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerAPList.c
- (nm_ap_list_merge_scanned_ap): merge strength too
* src/NetworkManagerUtils.c
- (nm_lock_mutex, nm_register_mutex_desc): new calls to facilitate debugging
of locking issues by printing out prettier information than g_mutex_lock
- Print out names of mutexes registered with nm_register_mutex_desc()
- (nm_try_lock_mutex): don't do the waiting thing when trying to lock, causes
us to seemingly block here for too long
* src/NetworkManager.c
src/NetworkManagerAPList.c
src/NetworkManagerDevice.c
- Convert to using nm_lock_mutex/nm_unlock_mutex rather than the glib variants
so we get better debug information printed
* src/NetworkManagerDbus.c
- (nm_dbus_devices_handle_request): reduce usage of nm_device_need_ap_switch()
since it sometimes has locking side effects
- (nm_device_get_association_pause_value): Reduce 802.11a card pause value to 8s
from 10s
- (nm_device_need_ap_switch): If we can't acquire the scan lock, return saying
we don't need a switch. This gets called often enough that we can't block
until the scan mutex is acquired, because we'll block on device activation
and a few other things, which hangs main thread for too long.
* src/NetworkManagerPolicy.c
- (nm_policy_auto_get_best_device): reduce the possiblity that
nm_device_need_ap_switch() will be called
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@407 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* panel-applet/NMWirelessApplet.c
- Display name of wireless network we are connecting to or connected to
in the tooltip of the applet
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@406 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerDHCP.c
- Hopefully fix double-default-route problem by cleaning up the default
route added by DHCP code right before the DHCP transaction begins
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@405 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* info-daemon/NetworkManagerInfoDbus.c
- (nmi_dbus_nmi_message_handler): make sure 'dialog' exists before using it
* src/NetworkManagerDevice.c
- (nm_device_new): Don't store the entire range struct, use only what we need
(which is currently avg_quality, max_quality, and frequencies). Also
zero device structure when we've free'd it to maybe expose errors down
the line.
- (nm_device_update_signal_strength): grab the scan mutex before getting
quality data from the card since quality will be useless during a scan.
Call updated wireless qual-to-percent function with values stored in
nm_device_new() earlier.
- Remove some unused functions (nm_device_get_max_quality(), nm_device_get_noise(),
nm_device_get_bad_crypt_packets())
- (nm_device_activate_wireless_adhoc): use new frequency values we go in
nm_device_new()
- (get_initial_auth_method): always use the Auth method that's in the allowed
list if available. Problem was this: when the WEP key is wrong, NM will
try OS then SK modes, and then get stuck in SK mode after that. This
should reset it.
- (nm_device_wireless_process_scan_results): work with new qual-to-percent
function
* src/NetworkManagerWireless.c
- (nm_wireless_qual_to_percent): try to make this function actually work and
mimic iwlib behavior. Use card's idea of quality divided by max_qual
if that's all present, otherwise fall back to signal-to-noise ratios.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@402 4912f4e0-d625-0410-9fb7-b9a5a253dbdc