Commit graph

21 commits

Author SHA1 Message Date
Robert Love
1b3017ff68 2005-10-07 Robert Love <rml@novell.com>
* Cleanup prototypes: put some functions in header files and mark
          others as 'static' -- feel free to invert
        * src/vpn-manager/nm-dbus-vpn.c: remove prototype of
          nm_vpn_manager_vpn_connection_list_copy()
        * src/vpn-manager/nm-vpn-act-request.c: remove prototype of
          nm_vpn_service_get_dbus_connection()
        * src/vpn-manager/nm-vpn-manager.h: add prototypes for
          nm_vpn_manager_vpn_connection_list_copy()
        * src/vpn-manager/nm-vpn-service.c: Make
	  nm_vpn_service_act_request_failed() and
	  nm_vpn_service_stage2_daemon_wait() static.
        * src/vpn-manager/nm-vpn-service.h: add prototype for
          nm_vpn_service_get_dbus_connection()


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@999 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-10-07 17:19:28 +00:00
Dan Williams
23b0619e4f 2005-10-02 Dan Williams <dcbw@redhat.com>
* Shorten time taken to sleep by fastpathing bits of device deactivation
		necessary for sleep.

	* Fix issue where deactivating a device might deactivate the active
		VPN connection, even if the VPN was not using the device.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@985 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-10-02 05:02:49 +00:00
Dan Williams
0f90a04544 2005-09-28 Dan Williams <dcbw@redhat.com>
Support for named + DBus, using Red Hat DBus patches for named.  You
	can find those patches here, with "dbus" in the patch's filename:

		http://cvs.fedora.redhat.com/viewcvs/devel/bind/

	Don't forget the named dbus service file either.

	Instead of writing a config file and spawing a named process, NM will
	use an already-running dbus-enabled named if it finds one.  NM will
	update named's forwarder configuration on the fly using dbus.

	If there is no dbus-enabled named running, NM will automatically fall
	back to writing the most-recent DNS server information to /etc/resolv.conf
	and calling nm_system_update_dns() to kick the system's resolver.

	Accordingly, all named-related configure-time options have been removed.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@981 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-09-28 14:42:57 +00:00
Dan Williams
05b3e32e56 Fix debuginfo print, and don't require a vpn activation request for NameOwnerChanged processing
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@976 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-09-26 14:55:48 +00:00
Christopher Aillon
314e6fc426 2005-09-10 Christopher Aillon <caillon@redhat.com>
* gnome/applet/applet.c:
	* gnome/applet/applet-dbus-devices.c:
	* gnome/applet/applet-dbus-info.c:
	* gnome/applet/passphrase-dialog.c:
	* gnome/libnm_glib/libnm_glib.c:
	* gnome/vpn-properties/nm-vpn-properties.c:
	* src/autoip.c:
	* src/backends/NetworkManagerRedHat.c:
	* src/named-manager/nm-named-manager.c:
	* src/NetworkManagerAPList.c:
	* src/NetworkManager.c:
	* src/NetworkManagerDbus.c:
	* src/NetworkManagerDevice.c:
	* src/NetworkManagerPolicy.c:
	* src/NetworkManagerSystem.c:
	* src/nm-dbus-device.c:
	* src/nm-dbus-nm.c:
	* src/vpn-manager/nm-vpn-manager.c:
	* src/vpn-manager/nm-vpn-service.c:
	* test/libnm_glib_test.c:
	* test/nminfotest.c:
	* test/nmtestdevices.c:
	Fix up a bunch of 'unused variable' compiler warnings


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@959 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-09-11 02:32:30 +00:00
Dan Williams
5c46be7149 2005-09-07 Dan Williams <dcbw@redhat.com>
* The great VPN Manager rewrite of 2005


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@946 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-09-07 19:12:52 +00:00
Christopher Aillon
2ea235020b 2005-08-26 Christopher Aillon <caillon@redhat.com>
* Fix up VPN state handling between the applet and NetworkManager,
		so that the applet doesn't show a VPN as connected when one
		really is not
			- The applet no longer has a pointer to the active VPN's
				name, but tracks each VPNs state individually
			- NM no longer has a "getActiveVPNConnection" method
			- NM no longer broadcasts the "VPNConnectionChange" signal
			- NM now broadcasts a "VPNConnectionStateChange" signal
				whenever the state of a VPN changes


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@902 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-08-26 23:36:35 +00:00
Dan Williams
1c51e6ec01 Remove unused variables
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@863 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-08-17 16:11:49 +00:00
Dan Williams
c2ac475604 2005-07-13 Dan Williams <dcbw@redhat.com>
Patch from Ray Strode <halfline@gmail.com>
	* Random cleanups for strict CFLAGS


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@796 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-07-13 16:58:13 +00:00
Robert Love
28d334748b 2005-06-21 Robert Love <rml@novell.com>
* applet/applet-dbus-devices.c: mark non-static functions static.
	* applet/applet-dbus-vpn.c: (ditto)
	* applet/applet.c: (ditto)
	* applet/nm-device.h: (ditto)
	* applet/other-network-dialog.c: (ditto)
	* applet/passphrase-dialog.c: (ditto)
	* NetworkManager.c: (ditto)
	* NetworkManagerDbus.c: (ditto)
	* NetworkManagerDevice.c: (ditto)
	* NetworkManagerPolicy.c: (ditto)
	* NetworkManagerUtils.c: (ditto)
	* NetworkManagerWireless.c: (ditto)
	* NetworkManagerWireless.h: (ditto)
	* nm-netlink-monitor.c: (ditto)
	* applet/applet-dbus-info.c: (ditto), add FIXME's.
	* vpn-manager/nm-dbus-vpn.c: (ditto), remove shadowed variable.
	* autoip.c: include autoip.h.
	* autoip.h: new file.  define get_autoip().
	* nm-netlink-monitor.h: define nm_netlink_close_connection().
	* NetworkManagerDbus.h: remove duplicate definitions.


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@728 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-06-21 15:07:01 +00:00
Dan Williams
c0ecf7ad2f Remove unused variables
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@698 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-06-17 01:23:16 +00:00
David Zeuthen
c357c61e35 2005-06-12 David Zeuthen <davidz@redhat.com>
* gnome/vpn-properties/nm-vpn-ui-interface.h: New file

	* gnome/vpn-properties/nm-vpn-properties.glade: New file

	* gnome/vpn-properties/nm-vpn-properties.c: New file

	* gnome/vpn-properties/Makefile.am: New file

	* src/vpn-manager/nm-vpn-manager.h: Rework prototypes to take an
	array of passwords

	* src/vpn-manager/nm-vpn-manager.c
	(nm_vpn_manager_activate_vpn_connection): Take an array of passwords
	instead of just a single one

	* src/vpn-manager/nm-dbus-vpn.c:
	(nm_dbus_vpn_get_vpn_connection_properties): Also append service_name
	here
	(nm_dbus_vpn_activate_connection): Rework to take an array of passwords

	* gnome/applet/vpn-password-dialog.h (nmwa_vpn_request_password):
	Change the interface here to give a list of passwords. Also, don't
	require username, but do require service

	* gnome/applet/vpn-password-dialog.c: Look up the VPN .name files for
	the binary for the auth-dialog and use that instead of putting up a
	dialog asking for a single password

	* gnome/applet/vpn-connection.[ch]: Don't remember the user_name,
	however do remember the service

	* gnome/applet/main.c (main): Setup i18n

	* gnome/applet/applet.c (nmwa_update_state): Add a line "VPN
	connection to '%s'" to the tooltip if we are connected using VPN
	(nmwa_menu_vpn_item_activate): Check last_attempt_success gconf
	key to determine whether we the auth-dialog needs to
	reprompt. Also cope with the fact that the auth-dialog now returns
	an array of passwords.
	(nmwa_menu_configure_vpn_item_activate): New handler for
	"Configure VPN..." menu item
	(nmwa_menu_add_vpn_menu): Add the "Configure VPN..." menu item
	(is_vpn_available): New function to determine if we got any
	NM-compatible VPN software installed
	(nmwa_menu_add_devices): Use is_vpn_available to add VPN menu
	items only if we have NM-compatible VPN software installed
	(nmwa_gconf_vpn_connections_notify_callback): Slightly rework the
	logic for detecting when VPN connections are removed

	* gnome/applet/applet-dbus.h: Removed the prototypes for
	nmwa_dbus_vpn_activate_connection, nmwa_dbus_vpn_deactivate_connection
	since these are defined elsewhere

	* gnome/applet/applet-dbus.c (set_vpn_last_attempt_status): New
	function used to keep track of whether the last attempt succeded
	(nmwa_dbus_filter): Update last_attempt according to whether the
	VPN connection could be established or not

	* gnome/applet/applet-dbus-vpn.h (nmwa_dbus_vpn_deactivate_connection):
	Change prototype to take an array of passwords, not just a single
	password

	* gnome/applet/applet-dbus-vpn.c (nmwa_dbus_vpn_properties_cb): Only
	update service, not user
	(nmwa_dbus_vpn_remove_one_vpn_connection): Check that applet->
	dbus_active_vpn_name is not NULL before using it
	(nmwa_dbus_vpn_activate_connection): Send the passwords as a
	string array instead of assuming a single password

	* gnome/applet/applet-dbus-info.c:
	(nmi_dbus_get_vpn_connection_properties): Use the logged in user for
	user name; don't read from gconf

	* gnome/applet/Makefile.am: Also export SYSCONFDIR and
	VPN_NAME_FILES_DIR

	* gnome/Makefile.am (SUBDIRS): Add vpn-properties

	* configure.in: Add checks for gmodule-2.0.
	Generate gnome/vpn-properties/Makefile. Don't generate any Makefile's
	in vpn-daemons nor vpn-daemons/vpnc. We have separate autotooled
	projects under vpn-daemons now.	 See vpn-daemons/vpnc/Changelog
	for details

	* vpn-daemons/Makefile.am: Removed

	* vpn-daemons/README: New file to describe extensions points for VPN
	software


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@664 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-06-12 14:35:59 +00:00
Dan Williams
50d286eb31 2005-06-09 Dan Williams <dcbw@redhat.com>
* NetworkManager.h
	  src/vpn-manager/nm-vpn-service.c
		- NM_VPN_STATE_ERROR -> NM_VPN_STATE_UNKNOWN (more consistent with other enums)


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@656 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-06-10 02:47:09 +00:00
Dan Williams
74a2ffa9b7 2005-05-20 Dan Williams <dcbw@redhat.com>
* NetworkManager.h
		- Differentiate VPN config signals between bad VPN config options
			and bad IP config

	* gnome/applet/applet-dbus-info.h
		- Add prototypes for wireless network and vpn connection update functions

	* gnome/applet/applet-dbus.c
		- (nmwa_dbus_filter): trap new VPN config error signals from NetworkManager

	* gnome/applet/applet.c
		- (nmwa_schedule_vpn_failure_dialog): new dialog text for new VPN config
			error signals
		- (nmwa_gconf_networks_notify_cb): re-enable wireless network change notify
			propogation to NetworkManager
		- (nmwa_gconf_vpn_connections_notify_cb): re-enable vpn connection change
			notify propogation to NetworkManager

	* src/NetworkManagerDbus.c
		- (nm_dbus_update_one_allowed_network): make sure to specify which AP list we
			are updating so a network can be removed from it if necessary

	* src/vpn-manager/nm-vpn-manager.c
		- (nm_vpn_manager_process_signal): trap new vpn config error signals

	* vpn-daemons/vpnc/nm-vpnc-service.c
		- (nm_vpnc_dbus_signal_failure): generalize function for all VPN error signals
		- (nm_vpnc_dbus_signal_launch_failed): remove
		- (nm_vpnc_dbus_signal_connect_failed): remove
		- (nm_vpnc_helper_timer_cb): update for new generalized error signal function
		- (nm_vpnc_schedule_helper_timer): increase timeout to 10s
		- (vpnc_watch_cb): don't whine about exit code if vpnc exited cleanly, update
			for new generalized error signal function, remove config file stuff
		- (nm_vpnc_start_vpnc_binary): grab a stdin pipe to vpnc after spawning it so
			we can write configuration options to it
		- (nm_vpnc_config_file_generate): removed
		- (nm_vpnc_config_write): write configuration options to the vpnc stdin pipe
		- (nm_vpnc_config_options_validate): validate the config options we receive
			from NetworkManager to block potential exploits
		- (nm_vpnc_dbus_handle_start_vpn): call option validation function before
			starting vpnc
		- (nm_vpnc_dbus_process_helper_config_error): actually propogate config error
			to NetworkManager


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@646 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-21 04:33:19 +00:00
Dan Williams
bfd38e3af0 2005-05-16 Dan Williams <dcbw@redhat.com>
Patch from Tomislav Vujec <tvujec@redhat.com>
	* gnome/applet/applet-dbus-info.c
		- (nmi_dbus_get_vpn_connection_routes): new function, pull routes out of
			GConf and pass them to NetworkManager.  New key is 'routes' under
			the VPN connection, and should be a string list

	* src/NetworkManagerSystem.c
		- (nm_system_vpn_device_set_from_ip4_config): if user-defined routes exist,
			set them on the device when we set the rest of the VPN config.  Ensure
			they are in the correct format since they are passed directly to the
			command line.

	* src/backends/NetworkManagerRedHat.c
	  src/backends/NetworkManagerDebian.c
		- (nm_system_device_add_route_via_device_with_iface): new function

	* src/vpn-manager/nm-dbus-vpn.c
		- (nm_dbus_vpn_get_routes): grab VPN routes from NetworkManagerInfo

	* src/vpn-manager/nm-vpn-manager.c
		- (nm_vpn_manager_handle_ip4_config_signal): grab routes from NMI and pass
			them into the IP4 config functions


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@637 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-16 12:57:08 +00:00
Dan Williams
21bdc07fa8 2005-05-14 Dan Williams <dcbw@redhat.com>
* NetworkManager.h
		- Add signals for VPN Launch and Connect failures

	* gnome/applet/applet-dbus.c
		- (nmwa_dbus_filter): Trap new VPN launch & connect failure signals

	* gnome/applet/applet.c
		- (nmwa_show_vpn_failure_dialog): generalize old nmwa_show_vpn_login_failure_dialog()
			function to handle all VPN failure messages
		- (nmwa_schedule_vpn_failure_dialog): generalize old  nmwa_schedule_vpn_login_failure_dialog()
			function to hanlde all VPN failure  messages
		- (show_warning_dialog): work around focus-stealing prevention

	* gnome/applet/other-network-dialog.c
	  gnome/applet/passphrase-dialog.c
		- (update_button_cb): Make sure the OK button is enabled when it should be, fixes
			problem where it never enabled for ASCII Key and Hex Key types

	* gnome/applet/wireless-applet.glade
		- Add window title to Other Wireless Network Dialog

	* src/vpn-manager/nm-dbus-vpn.c
		- (nm_dbus_vpn_signal_vpn_failed): generalize old nm_dbus_vpn_signal_vpn_login_failed()
			function to handle all VPN failure messages

	* src/vpn-manager/nm-vpn-manager.c
		- (nm_vpn_manager_process_signal): trap and proxy VPN launch & connect failure signals too

	* vpn-daemons/vpnc/nm-vpnc-service.c
		- (nm_vpnc_dbus_signal_launch_failed): new function
		- (nm_vpnc_dbus_signal_connect_failed): new function
		- (nm_vpnc_helper_timer_cb): signal connect failure on timeout
		- (vpnc_watch_cb): signal connection failure when vpnc exits with connection failure
		- (nm_vpnc_start_vpnc_binary): search a number of locations for vpnc
		- (nm_vpnc_dbus_handle_start): send launch failure signal when we fail to launch vpnc


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@627 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-14 21:54:30 +00:00
Dan Williams
567b5e3d31 2005-05-03 Dan Williams <dcbw@redhat.com>
* Kill dhcpcd.  We now use "dhcdbd", a dbus daemon that controls dhclient.
	  This means that NetworkManager shouldn't have DHCP issues anymore.  It also
	  means you need dhcdbd, which you can get here (get the latest one):

		http://people.redhat.com/jvdias/dhcdbd/

	  Technically NetworkManager can use any DHCP daemon that uses the same DBUS
	  interface as dhcdbd.

	* Rewrite device activation to facilitate the new DHCP infrastructure and
	  future improvements.  Its now "activation request" based, ie there is a single
	  activation request composed of the device, access point, and other info which
	  follows the entire activation process.  There are 5 stages of the activation
	  process which correspond to:

		1) Device preparation
		2) Device configuration (bring it up, set ESSID/Key/etc)
		3) IP Config Start (fire off DHCP if we're using it)
		4) IP Config Get (grab config from DHCP or static config files)
		5) IP Config Commit (set device's IP address, DNS, etc)

	  Note that there is no longer a "scanning" step, since the access point must
	  be known _before_ activation starts.  If the access point drops out or does
	  not exist for some reason, the entire activation process fails and must be
	  restarted for a different access point or device.

	Patch from Bill Moss:
	* gnome/applet/applet.c
		- Fix type of vpn_failure dialog -> vpn_banner dialog


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@597 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-05-03 20:41:36 +00:00
Dan Williams
b3f87f16ab 2005-04-27 Dan Williams <dcbw@redhat.com>
* gnome/applet/applet-dbus-vpn.c
	  gnome/applet/applet.c
	  gnome/applet/applet.h
		- Fix up active VPN handling so that we reliably know when a VPN
			connection has been deactivated

	* src/vpn-manager/nm-vpn-manager.c
		- Remove duplicate VPNConnectionChange signal


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@593 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-28 12:09:15 +00:00
Dan Williams
a5dd14c305 2005-04-27 Dan Williams <dcbw@redhat.com>
* Merge the applet and the info-daemon, and move the converged
                applet under gnome/applet
        * Move libnm_glib to gnome/libnm_glib
        * Convert most dbus calls between the applet, info-daemon, and NM
                into async calls
        * Fix a few things valgrind noticed
        * Make NM broadcast state more reliably


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@586 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-27 18:05:16 +00:00
Dan Williams
b6215ff296 2005-04-15 Dan Williams <dcbw@redhat.com>
- Fixes to pass 'make distcheck'


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@572 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-15 16:37:26 +00:00
Dan Williams
de1d417198 2005-04-15 Dan Williams <dcbw@redhat.com>
Initial VPN Support
		- supports 'vpnc'
		- reworks device IP configuration, backend files have changed and will need
			to be updated for all distributions.  I will try to do what I can for
			them, but I cannot test them.

	- Move named directory to src/named-manager
	- Make backends directory self-contained


git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@571 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2005-04-15 15:43:42 +00:00