* src/nm-device-wireless-802-11.c:
The scan list is being pruned prematurely. We should prune after
the device has gone MIA for three scans, not one. Split out the
interval to realtime seconds function to better serve this.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1510 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* dispatcher-daemon/NetworkManagerDispatcher.c, src/NetworkManager.c:
Open the pid file O_TRUNC, so if it already exists we truncate it to
zero length. Also, be more verbose about warnings generated during
writing out the pid file. Finally, always write out the pid file if
in daemon mode. Use "--pid-file" to override the default.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1509 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* dispatcher-daemon/NetworkManagerDispatcher.c, src/NetworkManager.c:
Open the pid file O_TRUNC, so if it already exists we truncate it to
zero length. Also, be more verbose about warnings generated during
writing out the pid file.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1508 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* dispatcher-daemon/NetworkManagerDispatcher.c
- Accept --pid-file with a path to a pidfile, write it out on
startup, and delete it on shutdown
* src/NetworkManager.c
- Accept --pid-file with a path to a pidfile, write it out on
startup, and delete it on shutdown
- Move nm_print_usage() lower
* initscripts/RedHat/NetworkManager.in
- Use new --pid-file option
- Fix service stopping to wait a bit for NM to quit
* initscripts/RedHat/NetworkManagerDispatcher.in
- Use new --pid-file option
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1500 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/Makefile.am
- make and install nm-crash-logger
* src/nm-logging.[ch]
- New files; consolidate logging and crash handling
* src/nm-crash-logger.c
src/gdb-cmd
- Standalong crashlogger for NM, grab a backtrace
using GDB
* src/NetworkManager.[ch]
- Remove signal handling and put it into nm-logging.c
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1499 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* configure.in
gnome/applet/Makefile.am
- Conditionalize all the notify stuff
Merge most of Chris Aillon's notification patch:
* gnome/applet/applet-notifications.[ch]
- New files; show a notification
* gnome/applet/applet-dbus-devices.[ch]
- (nmwa_dbus_device_activated, nmwa_dbus_device_activated_cb,
nmwa_dbus_device_deactivated, nmwa_dbus_device_deactivated_cb):
new functions, do the right thing when a device change occurs
* gnome/applet/applet-dbus.c
- (nmwa_dbus_filter): Split out DeviceNowActive and DeviceNoLongerActive
signals, so we can handle them specially
* gnome/applet/applet.[ch]
- nmwa_schedule_vpn_login_banner -> nmwa_show_vpn_login_banner
- nmwa_schedule_vpn_failure_alert -> nmwa_show_vpn_failure_alert
- (nmwa_notify_state): remove
- (nmwa_update_state); remove call to nmwa_notify_state, since the
notification work is now done when the appropriate dbus signals
are received.
- (nmwa_show_vpn_login_banner, nmwa_show_vpn_failure_alert): don't
defer execution of the notification/dialog stuff. That was an
artifact of the previous multi-threaded nature of the applet
and is now pointless.
- (nmwa_notify_vpn_failure, nmwa_notify_vpn_login_banner): remove,
no longer needed. Function folded into applet-notifications.c
* src/NetworkManagerPolicy.c
- (nm_policy_activation_finish): send the AP along with the device
status change signal, if the connection is wireless. Should
fix the race where applet would show a connection to "unknown"
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1498 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
2006-02-25 Robert Love <rml@novell.com>
Add WPA Enterprise support:
* gnome/applet/Makefile.am: Build the files nm-gconf-wso-wpa-eap.c and
nm-gconf-wso-wpa-eap.h.
* gnome/applet/nm-gconf-wso-wpa-eap.c,
gnome/applet/nm-gconf-wso-wpa-eap.h: Add WPA Enterprise Gconf
serialization and deserialization.
* gnome/applet/nm-gconf-wso-wpa-psk.c, gnome/applet/nm-gconf-wso.c,
gnome/applet/wireless-security-option.c, gnome/applet/wso-wpa-psk.c,
gnome/applet/wso-wpa-psk.h: Clean up, support new defines.
* gnome/applet/wireless-applet.glade: Add UI for configurating security
settings related to WPA Enterprise.
* gnome/applet/wireless-security-manager.c: Invoke wso_wpa_eap_new() to
instantiate WPA Enterprise wireless-security-option.
* gnome/applet/wso-wpa-eap.c, gnome/applet/wso-wpa-eap.h: New files.
Implement WPA Enterprise wireless-security-option object.
* include/NetworkManager.h: Add new NM_AUTH_TYPE_* and NM_EAP_METHOD_*
defines. Cleanup.
* libnm-util/cipher-wpa-psk-hex.c,
libnm-util/cipher-wpa-psk-passphrase.c: Cleanup.
* libnm-util/dbus-helpers.c, libnm-util/dbus-helpers.h: Add
nmu_security_serialize_wpa_eap() to serialize input to DBUS method,
nmu_security_serialize_wpa_eap_with_cipher() to serialize input
including the cipher to DBUS method, and
nmu_security_deserialize_wpa_eap() to deserialize from DBUS return
to output.
* src/Makefile.am: Build the files nm-ap-security-wpa-eap.c and
nm-ap-security-wpa-eap.h
* src/NetworkManagerAP.c: Add NM_AUTH_TYPE_WPA_EAP to
NM_802_11_CAP_KEY_MGMT_802_1X cipher to capability mapping.
* src/nm-ap-security-wpa-eap.c, src/nm-ap-security-wpa-eap.h: New
files. Implement NMAPSecurityWPA_EAP object.
* src/nm-ap-security-wpa-psk.c: Cleanup.
* src/nm-ap-security.c: Support NM_AUTH_TYPE_EAP cipher and instantiate
an NMAPSecurityWPA_EAP object via the method
nm_ap_security_wpa_eap_new_deserialize().
* src/nm-dbus-nm.c: Cleanup.
* test/nm-tool.c: Display "Enterprise" for wireless networks providing
WPA Enterprise support.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1494 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c: Use LOCALSTATEDIR preprocessor
define, not an open-coded "/var", for WPA_SUPPLICANT_GLOBAL_SOCKET
and WPA_SUPPLICANT_CONTROL_SOCKET.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1476 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c, src/nm-device.c: When printing debug
information about what connection stage we are at, provide the total
number of stages, e.g. "Stage 2 of 5", so users know how far along
they are if they experience problems.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1474 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Fix problem since change to "deal with APs changing settings on us," checked
in on the fifth of February in the year of the dog, wherein connecting to
non-broadcast encrypted networks always fails because nm_ap_get_encrypted()
always returns FALSE, even when the user provided a key, because the
newly-created fake AP does not have any capabilities set, which is a sypmtom
of security settings not matching capabilities (Novell bug #150787):
* src/NetworkManagerAP.c, src/NetworkManagerAP.h: Add new interface,
nm_ap_add_capabilities_from_security(), which sets the given AP's
capabilities off the given security settings. Also improve our handling of
capabilities w.r.t. NM_802_11_CAP_PROTO_NONE and NM_AUTH_CIPHER_AUTO.
* src/nm-device-802-11-wireless.c: Call nm_ap_add_capabilities_from_security
to ensure that capabilities match newly updated security settings.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1470 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c: Clean up nm_warning calls: Print the error
as a string, not an integer, if possible; do not print the function name
twice; always give the interface, if possible; misc. cleanup.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1469 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from Tom Parker <palfrey@tevp.net>
* src/NetworkManagerSystem.h
- Remove prototype for nm_system_device_setup_static_ip4_config(),
no longer used
* src/backends/NetworkManagerDebian.c
- Remove some dead code (nm_system_device_setup_static_ip4_config) and
unused variables
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1466 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Patch from: Vinay A R <rvinay@novell.com>
* src/vpn-manager/nm-vpn-act-request.[ch]
- Added 'routes' and 'routes_count' to struct NMVPNActRequest since
IPSec VPNs require them for std gateway.
- (nm_vpn_act_request_new): takes arguments for 'user_routes'
and 'user_routes_count'
- (nm_vpn_act_request_get_user_routes): new function; gets user
defined routes from NMVPNActRequest object, returns the string
array of routes.
* src/vpn-manager/nm-vpn-manager.[ch]
- (nm_vpn_manager_activate_vpn_connection): take additional arguments
for 'user_routes' and 'user_routes_count'
* src/vpn-manager/nm-dbus-vpn.c
- (nm_dbus_vpn_activate_connection): gets 'user_routes' from
nm_dbus_vpn_get_routes() to pass to nm_vpn_manager_activate_vpn_connection()
* src/vpn-manager/nm-vpn-service.c
- (nm_vpn_service_stage3_connect): pass user routes over dbus to
the vpn daemon
Modifications by Dan:
* src/vpn-manager/nm-vpn-service.c
- (nm_vpn_service_stage3_connect): ensure that we don't pass NULL string
arrays into dbus
* vpn-daemons/vpnc/src/nm-vpnc-service.c
* vpn-daemons/pptp/src/nm-pptp-service.c
* vpn-daemons/openvpn/src/nm-openvpn-service.c
- Grab user routes from dbus message
- Free all string arrays we got from dbus
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1463 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerUtils.c: kill_newline(): 'l' is unsigned so the
test ">=" is never false. If no newline is found, we loop forever.
We can just check for ">" because the following if will see zero-th
argument if the while gets that far.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1455 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Refine handling of non-broadcast networks.
* src/NetworkManagerAPList.c
- (nm_ap_list_merge_scanned_ap): unconditionally copy the 'broadcast'
property from scanned AP to the AP from the device list
* src/nm-device-802-11-wireless.c
- (supplicant_send_network_config): use ap_scan=1 for all networks
except non-SSID-broadcasting and Ad-Hoc networks. Use
ap_scan=2 for those. Also, don't set scan_ssid for Ad-Hoc
networks since those don't have APs.
- (add_new_ap_to_device_list): if there's no valid SSID, mark the
AP as non-SSID-broadcasting
- (process_scan_results): don't handle non-SSID-broadcasting here
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1452 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c
- (get_supplicant_timeout): new function; return
NM_SUPPLICANT_TIMEOUT * 2 for cards that support more than
14 channels. These are likely a/b/g cards, like Atheros, and
slow as hell to scan.
- (supplicant_timeout_cb, supplicant_monitor_start): use
get_supplicant_timeout()
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1450 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/dhcp-manager/nm-dhcp-manager.c
- Loose a commit race with Robert; make sure size check
uses size of DHCP_SERVICE_LEN, not hardcoded 15
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1448 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Remove anything having to do with device_setup_func from the
AP security objects, since it's no longer used.
* src/nm-ap-security.h
- Kill device_setup_func and nm_ap_security_device_setup()
* src/nm-ap-security-wep.c
src/nm-ap-security-wpa-psk.c
- (real_device_setup): remove
* src/nm-ap-security.c
- (real_device_setup): remove
- (nm_ap_security_device_setup): remove
* src/nm-device-802-11-wireless.[ch]
- (nm_device_802_11_wireless_set_wep_enc_key): make static
- (set_wireless_config, wireless_configure_adhoc): remove; unused
and done by wpa_supplicant now anyway
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1446 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c
- (ap_need_key, real_act_stage2_config): deal with APs changing
settings on us. Previously NM would loop asking for the
key but getting the same one back. Now, if the NMI-supplied
cipher doesn't overlap with the scanned AP capabilities,
we request a completely new key from the user.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1445 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerUtils.c: Even for debugging, we should not log the
user's encryption key, so we print the err_msg_cmd not the command,
if available. So long as SUPPLICANT_DEBUG is default, this makes
sense.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1441 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c, src/nm-device-802-11-wireless.h:
Make nm_device_802_11_wireless_get_essid() return 'const char *' not
'char *'.
* src/nm-ip4-config.c, src/nm-ip4-config.h: Make the functions
nm_ip4_config_get_hostname() and
nm_ip4_config_get_nis_domain() return 'const char *' not 'char *'.
* src/backends/NetworkManagerSuSE.c: Fix up for above. Also, do not
leak g_strdup() result.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1437 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerAP.c: In nm_ap_new(), default new networks to
broadcast == TRUE. Also, copy broadcast and artificial properties
from source network to destination in nm_ap_copy().
* src/nm-device-802-11-wireless.c: Don't set broadcast flag to TRUE,
since we now default new networks to non-hidden.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1435 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/Makefile.am: If we aren't going to create the run directory at,
uh, run-time, create it during install. Then users just doing
'make install' are cool, too. While we are here, create the
dispatcher.d directory, too.
* src/nm-device-802-11-wireless.c: Let the Makefile define and pass in
the exact run directory.
* Makefile.am: Install nm-applet.desktop.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1430 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
* src/nm-device-802-11-wireless.c
- (supplicant_interface_init): don't try to create
/var/run/NetworkManager, since that should be done by
the distro package. Causes problems for stuff like SELinux
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1428 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerAP.c: Add two new manufacturer default network
names: linksys-a and linksys-g. These are found (at least) on the
Linksys WAP55AG, which does both 802.11a and 802.11b, each with their
own ESSID.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1419 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/NetworkManagerAP.c: Optimize the function
nm_ap_has_manufacturer_default_essid(). I did not like its resulting
machine code. This is the first in a series of code tweaks aiming to
generate better machine code and make NetworkManager all the better.
Just kidding. Who has time to go through the assembly generated for
every function? I certainly don't. I have a wife, a kid, a job,
a mortgage, a mistress. But this function was so bad, I was called
to arms. Like the book.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1418 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c: Set "scan_ssid 1" if the requested
AP is not broadcasting, to scan with probe request frames. Required
for non-broadcast networks.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1417 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/nm-device-802-11-wireless.c: Make the wpa_supplicant a
preprocessor define (still 20s). Fix message text in nm_info()
s/too too/took too/.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1414 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* src/Makefile.am
- Define LOCALSTATEDIR
* src/nm-device-802-11-wireless.c
- (supplicant_exec): tell wpa_ctrl_open() to stick the local control
socket where we want it to
* src/wpa_ctrl.[ch]
- (wpa_ctrl_open): accept location to put local control socket
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1411 4912f4e0-d625-0410-9fb7-b9a5a253dbdc