Commit graph

33177 commits

Author SHA1 Message Date
Dan Williams 305ff0adb0 Thu Aug 26 2004 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.[ch]
		- Rework menu code to add devices to menu, and to show
			signal strength for each access point.  Code cleanups
			too.

	* panel-applet/NMWirelessAppletDbus.c
		- Grab network devices from NetworkManager too
		- Grab quality information from NM for wireless networks

	* src/NetworkManagerDbus.[ch]
		- Add dbus methods for getting the HAL UDI from a device and
			for getting its base quality, if its wireless
		- Consolidate some functions (wireless network notifications,
			device notifications)
		- Add method for requesting NM to use a particular device

	* src/NetworkManager.c
		- Change for function consolidations from NetworkManagerDbus.c
		- Implement active device locking and user-requested devices
			(ie, tell NM to use a particular device instead of the one
			it autochose)

	* src/NetworkManagerDevice.c
		- Add method for getting the base quality of a device, if its
			wireless
		- Grab device base quailty info from iwlib during scans

	* src/NetworkManagerPolicy.c
		- Use a user-requested device rather than the auto-chosen device
			if we are told to


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@81 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 20:05:24 +00:00
Jonathan Blandford d3aff52822 Thu Aug 26 15:12:36 2004 Jonathan Blandford <jrb@redhat.com>
* Makefile.am: add po as a supdir

        * autogen.sh: use gnome-autogen.sh

        * initscript/Gentoo/.cvsignore:
        * initscript/RedHat/.cvsignore: Shut up cvs

        * panel-applet/Makefile.am: Define GNOMELOCALEDIR for bonobo.

        * panel-applet/NMWirelessApplet.c: (nmwa_populate_menu),
        (nmwa_fill): Use gettext.

        * configure.in: add gettext support
        * po/.cvsignore:
        * po/NetworkManager.pot:
        * po/POTFILES.in:


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@80 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 19:14:26 +00:00
Seth Nickell b20bd14ea3 * panel-applet/NMWirelessApplet.c: (nmwa_destroy),
(nmwa_menu_item_activate), (nmwa_toplevel_menu_activate),
	(nmwa_add_menu_item), (nmwa_menu_item_data_free),
	(nmwa_dispose_menu_items), (nmwa_populate_menu),
	(nmwa_setup_widgets), (do_not_eat_button_press), (nmwa_new):
	* panel-applet/NMWirelessApplet.h:

	Use a menu bar instead of a button for the main clickable
	thingy.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@79 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 04:20:33 +00:00
Dan Williams 66a2ca5845 2004-08-25 Dan Williams <dcbw@redhat.com>
* src/NetworkManagerDevice.c
		- (nm_device_set_enc_key): always set device to "open" mode instead of
			turning encryption off, because the Cisco driver doesn't associate
			with WEP-enabled access points unless we are in "open"


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@78 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 03:05:32 +00:00
Dan Williams d656b2810d fix up entry
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@77 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 02:28:17 +00:00
Dan Williams fe7a2be201 2004-08-25 Dan Williams <dcbw@redhat.com>
* src/NetworkManagerWireless.c
		- Don't try to defererence blank passphrases


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@76 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 02:27:02 +00:00
Dan Williams 21862371b6 2004-08-25 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.c
		- Rebuild the menu whenever a user clicks


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@75 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 02:25:49 +00:00
Dan Williams d9abb16b8b Take out the "active" text
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@74 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 01:57:10 +00:00
Dan Williams efb70bd972 2004-08-25 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.c
		- (nmwa_udpate_state): Set panel icon to "wired" (for lack of better ones)
			when NM isn't around or when its not connected

	* src/NetworkManagerDevice.c
		- (nm_device_activation_worker): Make sure to reset dev->activating if we get
			canceled.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@73 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 01:37:03 +00:00
Dan Williams bbc8ab5e1a 2004-08-25 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessAppletDbus.c
		- (nmwa_dbus_get_bool, nmwa_dbus_get_network_encrypted): correct method name
			for getting encryption, and don't stop on "val" once we've gotten it
			from NetworkManager.  Short form:  encryption should now show up.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@72 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 01:25:08 +00:00
Dan Williams 7df00044ca 2004-08-25 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.c
		- Set ESSID on a gconf trusted network too when force-setting the wireless
			network to associate with


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@71 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 01:16:19 +00:00
Dan Williams e09969112f 2004-08-25 Dan Williams <dcbw@redhat.com>
* panel-applet/*
		- Rework the panel applet to do all DBUS communication in a separate
			thread


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@70 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-26 00:33:08 +00:00
Dan Williams 8ce1a2efc9 2004-08-25 Dan Williams <dcbw@redhat.com>
* info-daemon/NetworkManagerInfo.[ch]
		- Remove "get_next_priority" function

	* info-daemon/NetworkManagerInfoDbus.[ch]
		- Convert "priority" functions to "timestamp"


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@69 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 22:43:16 +00:00
Dan Williams 846b78966b 2004-08-24 Dan Williams <dcbw@redhat.com>
* src/NetworkManagerAP.[ch]
		- Add a "enc_method_good" member and accessors to an Access Point
			to signal when we've found the correct encryption method
			for an access point
		- Add a "timestamp" member and accessors, remove "priority" member
			and accessors (use timestamps instead)
		- Rename "wep_key"->"enc_key"
		- (nm_ap_get_enc_key_hashed): new, return the correct mangled key
			for a specified encryption method using the access points
			source encryption key/passphrase

	* src/NetworkManagerAPList.c
		- When updating a network with dbus, grab timestamp now instead of
			priority

	* src/NetworkManagerDBus.[ch]
		- Add signal for "DeviceActivating"
		- Switch priority->timestamp

	* src/NetworkManagerDevice.c
		- Change references of "wep_key" -> "enc_key" or "key"
		- Signal DeviceActivating when starting activation
		- When activating a wireless device, if the access point we are connecting
			to is encrypted, and we have a source key, try to generate a mangled
			key and use that (ie, generate real WEP key from a passphrase)
		- Rework device activation to fallback to other encryption methods if
			a previous one didn't work (ie, try mangling a key as a 104-bit passphrase
			first, then if that doesn't work fall back to direct hex key).
		- (nm_device_update_best_ap): fix a deadlock, and use timestamps instead of
			priority.  We now prefer the latest access point used, rather than using
			a priority scheme
		- (nm_device_do_normal_scan): make the encryption method "unknown" on access
			points we've just discovered, and merge in correct info from the global
			access point lists


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@68 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 22:41:12 +00:00
Jonathan Blandford b034d4d1ab minor fixes for distros
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@67 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 22:09:11 +00:00
Seth Nickell 594d8393f3 Patch from Matthew Garrett <mjg59@srcf.ucam.org> for adding
Debian support.

	* src/Makefile.am:
	* src/backends/NetworkManagerDebian.c: (nm_system_device_run_dhcp),
	(nm_system_device_stop_dhcp), (nm_system_device_flush_routes),
	(nm_system_device_flush_addresses), (nm_system_enable_loopback),
	(nm_system_delete_default_route),
	(nm_system_kill_all_dhcp_daemons), (nm_system_update_dns),
	(nm_system_load_device_modules):


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@66 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 21:07:19 +00:00
Seth Nickell c085e3b6c8 Add init scripts
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@65 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 21:00:21 +00:00
Dan Willemsen 6dbc6cfd03 2004-08-24 Dan Willemsen <dan@willemsen.us>
* src/NetworkManager.c
	  src/backends/NetworkManagerGentoo.c
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerSystem.h
		- Implement preliminary Gentoo support, adding a
			nm_system_init function to the backend specification

	* configure.in
		- Distribution auto-detection, lowercase any user-fed
			distribution names

	* initscript/.cvsignore
	  initscript/Makefile.am
	  initscript/RedHat/Makefile.am
	  initscript/RedHat/NetworkManager
	  initscript/Gentoo/Makefile.am
	  initscript/Gentoo/NetworkManager
		- Refactored initscript code separately for each
			distribution


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@64 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 20:52:19 +00:00
Dan Williams 5435af273f Add to CVS
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@63 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-25 18:55:20 +00:00
Dan Williams ae6f88b3dd 2004-08-23 Dan Williams <dcbw@redhat.com>
* configure.in
	  src/Makefile.am
	  src/NetworkManagerDevice.c
	  src/NetworkManager.c
	  src/NetworkManagerUtils.[ch]
	  src/backends/NetworkManagerSystem.h
	  src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerGentoo.c
		- Refactor system-specific code into separate backends for
			each distribution


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@62 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-24 00:31:47 +00:00
Dan Willemsen a4afafce03 2004-08-23 Dan Willemsen <dan@willemsen.us>
* dispatcher-daemon/NetworkManagerDispatcher.c
	  info-daemon/NetworkManagerInfo.[ch]
	  info-daemon/NetworkManagerInfoDbus.c
	  info-daemon/NetworkManagerInfoPassphraseDialog.c
	  src/NetworkManager.c
	  src/NetworkManagerAP.c
	  src/NetworkManagerAPList.c
	  src/NetworkManagerDbus.c
	  src/NetworkManagerDevice.c
	  src/NetworkManagerPolicy.c
	  src/NetworkManagerUtils.[ch]
	  src/NetworkManagerWireless.c
		- Used syslog functions for logging instead of NM_DEBUG_DISPLAY & fprintf

	* src/NetworkManager.c
		- Fixed usage wording for --no-daemon


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@61 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-23 19:20:49 +00:00
Dan Williams 07258fd5e1 2004-08-23 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.c
		- Update our state every second to get more responsive panel icon
		- (nmwa_update_state): remove bogus applet->pix_state = PIX_WIRED that
			was causing our marching ants status blips to never move when
			looking for a wireless network

	* src/NetworkManagerDevice.c
		- (nm_device_activation_begin): return if activation has already begun
		- (nm_device_do_normal_scan): merge WEP key and priority from the
			trusted/preferred network into the device's access point when the
			scan list is processed


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@60 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-23 19:09:19 +00:00
Dan Williams 058a678f89 2004-08-23 Dan Williams <dcbw@redhat.com>
* initscript/NetworkManager
		- Use NMLaunchHelper rather than sleeping

	* initscript/NMLaunchHelper.c
	  Makefile.am
		- Add helper program that exits only when NM activates a device,
			or 10 seconds have passed, whichever happens first.  This
			stops the boot processes until we have a network connection,
			which NM can't do because it daemonizes and brings the connection
			up in the background.  Allows stuff like NFS to not die.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@59 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-23 16:45:30 +00:00
Dan Williams b770456511 2004-08-20 Dan Williams <dcbw@redhat.com>
* info-daemon/NetworkManagerInfoPassphraseDialog.c
		- (nmi_passphrase_dialog_ok_clicked): when updating the wep key
			for a network, set the essid as well since it may not exist yet
		- (nmi_passphrase_dialog_init): don't star out the passphrase field,
			since WEP keys/passphrases are long and prone to entry-error

	* panel-applet/Makefile.am
	  panel-applet/wired.png
		- Add (pulled from system-config-network temporarily)

	* panel-applet/NMWirelessApplet.[ch]
		- Show wired picture when a wired connection is used
		- Rename wireless icon enums, adding WIRELESS

	* src/NetworkManagerDevice.c
		- (nm_device_activate_wireless): unset encryption before bringing
			down the card and setting the essid
		- (nm_device_activatin_worker): request a key from the user if the
			AP we are connecting to is encrypted but we don't have a key
			for it yet
		- (nm_device_set_user_key_for_network): fix missing '== 0' for a
			strcmp() that prevented a user-entered key from actually getting
			used


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@58 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-20 18:18:37 +00:00
Dan Williams 461f757662 update
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@57 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-16 19:49:34 +00:00
Dan Williams 0a931cf1c5 Add
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@56 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-16 19:49:05 +00:00
Dan Williams 098099929e 2004-08-16 Dan Williams <dcbw@redhat.com>
* initscript/NetworkManager
		- Check for /sbin/ip
		- Do sysctl magic that network service does
		- sleep 4s after start to allow network time to come up [hack]

	* src/Makefile.am
	  src/NMLoadModules
		- Load all network device kernel modules (hal doesn't know devices
			are ethernet until the module is loaded, and therefore we don't know)

	* src/NetworkManager.c
		- (main): daemonize later, launch NMLoadModules to alert HAL of our
			network devices, and bring up the loopback device explicitly

	* src/NetworkManagerUtils.[ch]
		- (nm_enable_loopback): new function


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@55 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-16 19:46:43 +00:00
Dan Williams 20f439a9ac Add CONTRIBUTING
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@53 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-13 17:22:41 +00:00
Dan Williams b6b069d02e 2004-08-13 Dan Williams <dcbw@redhat.com>
* panel-applet/Makefile.am
		- Fix up cleanfiles and server_DATA/server_in_files


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@52 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-13 17:03:51 +00:00
Dan Williams 6b0bddf916 2004-08-13 Dan Williams <dcbw@redhat.com>
* configure.in
	  panel-applet/Makefile.am
		- Fixes to allow distcheck to pass


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@51 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-13 15:59:47 +00:00
Dan Williams 1984461297 2004-08-13 Dan Williams <dcbw@redhat.com>
* CONTRIBUTING
		- Add


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@50 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-13 15:41:31 +00:00
Dan Williams 7efe5ebc25 2004-08-13 Dan Williams <dcbw@redhat.com>
* README
		- Update with some comments on theory of operation


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@49 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-13 15:34:34 +00:00
Dan Williams 0895829142 2004-08-12 Dan Williams <dcbw@redhat.com>
* info-daemon/passphrase.glade
		- Set window title to " "

	* panel-applet/Makefile.am
	  panel-applet/keyring.png
		- Deliver to correct place

	* panel-applet/NMWirelessApplet.[ch]
		- Add comments
		- Remove applet->have_active_device as its no longer used
		- (nmwa_load_theme): load keyring.png too
		- (error_dialog): remove
		- (show_warning_dialog): subsume functionality of error dialog too
		- (nmwa_destroy, nmwa_new): create and dispose of an application-wide GConfClient
		- (nmwa_handle_network_choice): add to deal with user clicking on an item from
			the networks menu
		- (nmwa_menu_item_activated): GtkMenuItem "activate" signal handler
		- (nmwa_button_clicked, nmwa_setup_widgets): create and populate the menu on startup
			and when we get broadcasts of changed wireless access points only, not when the
			user clicks on the button to display the menu (too long of a wait)
		- (nmwa_add_menu_item): Make active network bold, and place a keyring icon beside
			networks that are encrypted
		- (nmwa_dispose_menu, nmwa_menu_item_data_free): dispose of the data we place on each
			menu item with g_object_set_data()

	* panel-applet/NMWirelessAppletDbus.[ch]
		- (nmwa_dbus_get_bool): add method to return boolean value from dbus message
		- (nmwa_dbus_get_active_network): add (nmwa_dbus_get_string() wrapper to get active network)
		- (nmwa_dbus_add_networks_to_menu): clean up, only show one instance of each ESSID in the menu
		- (nmwa_dbus_set_network): force NetworkManager to use a particular network for wireless cards
		- (nmwa_dbus_init, nmwa_dbus_filter): Trap network appear/disappear and device
			activation/deactivation signals and rebuild the menu when they happen

	* src/NetworkManager.c
		- (main): use new nm_spawn_process() rather than system()

	* src/NetworkManagerDbus.c
		- (nm_dbus_devices_handle_request): don't compare AP structure addresses directly, but essids
			instead.  Since we can now force best_aps to stick around, the AP structure to which
			dev->options.wireless.best_ap points to won't necessarily be in the device's device list
			if a scan has happened since the best_ap was frozen.  Also add "setNetwork" method
			to freeze the best_ap.

	* src/NetworkManagerDevice.[ch]
		- (nm_device_activation_worker): Use new nm_spawn_process() call rather than system()
		- (nm_device_*_best_ap): add freeze/unfreeze/get_frozen functions, and don't really update
			the best_ap in nm_device_update_best_ap() if the best_ap is frozen AND in the device's
			ap list

	* src/NetworkManagerUtils.[ch]
		- (nm_spawn_process): add replacement for system() usage


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@48 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-12 19:58:01 +00:00
Dan Williams f9b8cb84d1 2004-08-11 Dan Williams <dcbw@redhat.com>
* panel-applet/NMWirelessApplet.[ch]
		- Fix up copyright and credits to include Bastien and Eskil,
			who created the gnome-applets wireless applet, from whose
			skeleton this one was created
		- Rework nmwa_update_state()/nmwa_draw() so that state and which
			pixmap to draw is computed during nmwa_update_state()
		- Applet now shows itself all the time due to panel packing issues
			which caused the applet to previously never come back after hiding.
			When a wired device is the active device, the applet shows "not connected"

	* panel-applet/NMWirelessAppletDbus.[ch]
		- Clean up error messages and show what function they are from
		- nmwa_dbus_get_active_wireless_device()->nmwa_dbus_get_active_device()
		- Add new device type getters, and a status getter

	* src/NetworkManagerDbus.c
		- (nm_dbus_devices_handle_request): Don't return an active network unless that
			network is actually in the device's ap list
		- (nm_dbus_nm_message_handler): Fix silly mistake returning status

	* src/NetworkManagerDevice.c
		- (nm_device_update_best_ap): If the best AP is NULL, clear out the ESSID of the
			card

	* test/nmclienttest.c
		- Report status of NetworkManager too


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@47 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-11 19:31:41 +00:00
Dan Williams d06aa3e6ff 2004-08-11 Dan Williams <dcbw@redhat.com>
* info-daemon/NetworkManagerInfo.c:
		- (main): clean up Seth's code style

	* info-daemon/NetworkManagerInfoDbus.c:
		- Use the more aptly-named path/service/interface constants from NetworkManager
		- Don't return empty strings ("") as object paths ever, instead return errors

	* panel-applet/NMWirelessApplet.c:
		- Clean up Seth's code style

	* src/NetworkManager.[ch]
		- (nm_remove_device_from_list): remove anything having to do with pending_device
		- (main, nm_print_usage): change --daemon=[yes|no] -> --no-daemon

	* src/NetworkManagerAPList.[ch]
		- Move Iter struct right above the iter functions to preserve opacity
		- (nm_ap_list_remove_ap): implement
		- (nm_ap_list_update_network): deal with errors returned from nm_dbus_get_network_priority(),
			remove AP if NetworkManagerInfo doesn't know anything about it
		- (nm_ap_list_diff): user NMAPList iterators
		- (nm_ap_list_print_members): implement debugging function

	* src/NetworkManagerDbus.[ch]
		- (nm_dbus_nm_get_active_device): remove anything to do with pending_device
		- (nm_dbus_get_user_key_for_network): remove DBusPendingCall stuff (unused),
			and move the actual key setting stuff into NetworkManagerDevice.c
		- (nm_dbus_get_network_priority): return -1 now on errors
		- (nm_dbus_nmi_filter): fix strcmp() error that caused PreferredNetworkUpdate signals to
			get lost, and force the active device to update its "best" ap when AP lists change
		- (nm_dbus_nm_message_handler): Update conditions for returning "connecting" for a "status"
			method call due to pending_device member removal

	* src/NetworkManagerDevice.[ch]
		- Move NMDevice structure to the top
		- Add a wireless scan mutex and a best_ap mutex to the Wireless Options structure
		- Remove Pending Action stuff from everywhere
		- (nm_device_activation_*): We now "begin" activation and start a thread to do the
			activation for us.  This thread blocks until all conditions for activation have
			been met (ie for wireless devices, we need a valid WEP key and a "best" ap), and
			then setup up the interface and runs dhclient.  We have to do this because there
			is no guaruntee how long dhclient takes, and while we are blocking on it, we cannot
			run our main loop and respond to dbus method calls or HAL device removals/inserts
		- (nm_device_set_user_key_for_network): Move logic here from NetworkManagerDbus.c so we
			can tell nm_device_activation_worker() that we've got a key
		- (nm_device_*_best_ap): lock access to best_ap member of Wireless Options structure
		- (nm_device_get_path_for_ap): dumb it down so the list doesn't lock against itself when
			diffing (AP appear/disappear signal functions make sure the AP is actually in the device's
list)
		- (nm_device_update_best_ap): move logic from nm_wireless_is_ap_better() here

	* src/NetworkManagerPolicy.c
		- Remove anything to do with pending_device
		- Adjust device activation to deal with activation-in-worker-thread

	* src/NetworkManagerUtils.c
		- Clean up locking debugging a bit

	* src/NetworkManagerWireless.[ch]
		- (nm_wireless_is_ap_better): remove, stick logic in nm_device_update_best_ap().  This function
			was badly named and is better as a device function

	* panel-applet/.cvsignore: add


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@46 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-11 18:14:02 +00:00
Seth Nickell 8e04fc11ff * panel-applet/NMWirelessApplet.c: (nmwa_timeout_handler),
(nmwa_button_clicked), (nmwa_populate_menu), (nmwa_setup_widgets),
	(nmwa_new):
	* src/NetworkManagerDbus.c: (nm_dbus_nmi_filter):

	Don't load the menus until clicked on (also removes a call outside
	normal code paths at first load).

	Hide applet when NM is not present.

	Improve printf debugging stuff.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@45 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-09 19:47:21 +00:00
Dan Williams b1bfbd809b 2004-08-09 Dan Williams <dcbw@redhat.com>
* dispatcher-daemon/NetworkManagerDispatcher.c:
		- Covert uses of dbus_message_iter_* over to dbus_message_get_args
		- Use constants for NetworkManager interface, service, and path


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@44 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-09 18:39:20 +00:00
Dan Williams 280998b894 2004-08-09 Dan Williams <dcbw@redhat.com>
* src/NetworkManagerDbus.c:
		- (nm_dbus_nm_get_active_device, nm_dbus_nm_get_devices): Never return an empty object path,
			instead return an error message
		- (nm_dbus_devices_handle_request): Return error when getActiveNetwork/getNetworks is called
			on a wired device.  Also never return an empty object path, instead return an error message


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@43 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-09 15:10:46 +00:00
Seth Nickell eacb8da619 2004-08-06 Seth Nickell <seth@gnome.org>
* panel-applet/NMWirelessApplet.c: (nmwa_new):

	Check the error code when getting a connection.

	* panel-applet/NMWirelessAppletDbus.c: (nmwa_dbus_init):

	Check if the NM service exists when initializing (rather than
	assuming it does not).

	* src/NetworkManagerDbus.c: (nm_dbus_init):

	Don't acquire the well-known service name until we have
	registered object/path handlers and can actually receive
	calls.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@42 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-06 20:24:53 +00:00
Dan Williams 00a4a641d6 Don't pass blank path through dbus
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@41 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-06 19:43:37 +00:00
Dan Williams 0505220a13 convert warning dialogs->fprintfs
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@40 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-06 18:57:51 +00:00
Dan Williams e8b7b7c07d 2004-08-06 Dan Williams <dcbw@redhat.com>
* panel-applet/*
		- Add panel applet

	* src/NetworkManagerPolicy.c
	  src/NetworkManager.c
		- Get access point lists from NetworkManagerInfo on-demand,
			and look for ServiceCreate/ServiceDeleted signals to see when
			we should query NMI for lists
	* src/NetworkManagerAPList.c
		- Make sure to init the list's mutex
		- Convert traversals of the list over to the list iter functions

	* src/NetworkManagerDbus.[ch]
		- Use more aptly-named path/service/interface constants
		- Treat both active and pending devices the same for "getActiveDevice"
		- Add a "status" method returning "connected", "connecting", or "disconnected"

	* src/NetworkManagerDevice.c
		- Honor "ignored" network list when picking best ap to use


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@39 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-06 18:19:06 +00:00
Seth Nickell 528a111490 2004-08-06 Seth Nickell <seth@gnome.org>
* aclocal.m4:

	Autogenerated, remove from CVS.

	* autogen.sh:

	Don't hardcode automake version.

	* configure.in:
	* info-daemon/Makefile.am:
	* info-daemon/NetworkManagerInfo.c: (main):

	Use GnomeProgram et al. for doing session management.
	Use popt stuff for argument parsing rather than doing
	it manugally.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@38 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-06 15:37:43 +00:00
Dan Williams 91b6c02f0d Fix argument list
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@37 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-05 20:17:10 +00:00
Dan Williams 1be4ee2556 2004-08-05 Dan Williams <dcbw@redhat.com>
* test/nminfotest.c
		- Update to new NMI dbus API, check different network types

	* info-daemon/NetworkManagerInfoDbus.c
		- Update to new NM dbus API, ie network type sent in query message


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@36 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-05 20:15:58 +00:00
Dan Williams 86f70ddb09 Add passphrase dialog bits
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@35 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-05 18:55:16 +00:00
Dan Williams f76484abc3 2004-08-05 Dan Williams <dcbw@redhat.com>
* An assload of changes


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@34 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-05 18:54:29 +00:00
Dan Williams 3151e9092e 2004-08-02 Dan Williams <dcbw@redhat.com>
* TODO
		- new task: proper logging support

	* info-daemon/NetworkManagerInfo.c
		- Correct spelling of "canceled"
		- Correct casting of objects for g_signal_connect()

	* info-daemon/NetworkManagerInfoDbus.c
		- Add defines for NetworkManager namespace and object path, and use them
		- Add filter function to trap new signals from NetworkManager:
			WirelessNetworkAppeared, WirelessNetworkDisappeared

	* info-daemon/passphrase.glade
		- Change name of "ok" button to "Login to Network..."
		- Mark invisible

	* src/NetworkManager.c
		- Code and debug message cleanups
		- Rename "nm_add_current_devices"->"nm_add_initial_devices"
		- (nm_add_initial_devices) Check returned string array of devices
			and don't try to add devices if array is NULL
		- (main) Initialize libhal a bit later, make code a bit clearer

	* src/NetworkManagerAP.[ch]
		- New accessor and data member "matched": used to speed up AP list
			diffing
		- New accessor and data member "enc_method": will be used during key
			fallback to cache which passphrase->key conversion actually works
			so we don't have to do it every time

	* src/NetworkManagerAPList.[ch]
		- (nm_ap_list_find_ap_in_list) New: find an AP by essid in an AP list
		- (nm_ap_list_diff) New: given two lists of access points, find the differences
			between them, and send WirelessNetworkAppeared/Disappeared signals over
			dbus in response to those differences

	* src/NetworkManagerDbus.[ch]
		- (nm_dbus_get_object_path_from_ap) New: given a device and an access point,
			make an object path for that access point (NOTE that we don't yet check to
			make sure that access point is actually in the device's AP list yet)
		- (nm_dbus_get_ap_from_object_path) Renamed from nm_dbus_get_network_from_object_path
		- (nm_dbus_signal_wireless_network_appeared, nm_dbus_signal_wireless_network_disappeared)
			New: signal appearance/disappearance of wireless networks
		- (nm_dbus_set_user_key_for_network) Mark the network/ap as invalid if the user cancelled
			key entry

	* src/NetworkManagerDevice.[ch]
		- (nm_device_ap_list_clear) Use nm_ap_list_free rather than doing it ourselves
		- (nm_device_ap_list_get) New: return the AP list (static function)
		- (nm_device_do_normal_scan) Destroy old AP list later, so that we can diff the
			new one resulting from the scan with the old one

	* src/NetworkManagerWireless.c
		- (nm_wireless_is_most_prefered_ap) "invalid" access points cannot be "best" access points

	* test/nminfotest.c
		- #define object paths and namespaces and use the #defines rather than static strings
		- Test out user-key functionality of NetworkManagerInfo too


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@33 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-08-02 21:12:40 +00:00
Dan Williams 8336b11023 2004-07-29 Dan Williams <dcbw@redhat.com>
* info-daemon/NetworkManagerInfoDbus.c
	  src/NetworkManagerDbus.c
		- Update to current DBus (ie don't use decomposed paths when registering
			object paths/fallbacks)


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@32 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-07-30 18:21:46 +00:00
Dan Williams e37ba613bf 2004-07-29 Dan Williams <dcbw@redhat.com>
* info-daemon/NetworkManagerInfoDbus.c
	  src/NetworkManagerAPList.c
	  	- Ensure that 'network' is not empty


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@31 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2004-07-29 16:00:48 +00:00