]> git.pld-linux.org Git - packages/NetworkManager.git/blob - NetworkManager-branch.diff
- updated -branch.diff
[packages/NetworkManager.git] / NetworkManager-branch.diff
1 diff -urN NetworkManager-0.6.5/ChangeLog NetworkManager-SVNr3284/ChangeLog
2 --- NetworkManager-0.6.5/ChangeLog      2007-04-18 20:13:10.000000000 +0200
3 +++ NetworkManager-SVNr3284/ChangeLog   2008-02-04 16:01:02.000000000 +0100
4 @@ -1,3 +1,337 @@
5 +2008-01-30  Tambet Ingo  <tambet@ximian.com>
6 +
7 +       * src/named-manager/nm-named-manager.c (rewrite_resolv_conf): Add some
8 +       information on what produced the content (process name and pid).
9 +
10 +2008-01-30  Dan Williams  <dcbw@redhat.com>
11 +
12 +       * src/nm-device-802-3-ethernet.c
13 +               - (real_update_link): factor common link checking code out into 
14 +                       poll_link_state()
15 +               - (real_deactivate_quickly): schedule link state change in an idle
16 +                       handler rather than doing it immediately to prevent deadlocks
17 +
18 +2008-01-30  Tambet Ingo  <tambet@ximian.com>
19 +
20 +       Implement 802.1x wired authentication.
21 +
22 +2008-01-30  Dan Williams  <dcbw@redhat.com>
23 +
24 +       * src/nm-device-802-11-wireless.c
25 +               - (set_inactive_scan_timeout): be sure to clear the source since the
26 +                       timeout doesn't always get rescheduled
27 +
28 +2008-01-29  Tambet Ingo  <tambet@gmail.com>
29 +
30 +       * src/vpn-manager/nm-dbus-vpn.c (nm_dbus_vpn_connections_update_cb): Don't
31 +       try to merge the VPN connections, just add everything.
32 +       (nm_dbus_vpn_connections_update_from_nmi): Remove the existing VPN connections
33 +       when a new instance of NMI service appears.
34 +
35 +       * src/vpn-manager/nm-vpn-manager.c (nm_vpn_manager_vpn_connection_list_copy):
36 +       Remove.
37 +       (nm_vpn_manager_clear_connections): Implement.
38 +
39 +2008-01-29  Tambet Ingo  <tambet@gmail.com>
40 +
41 +       * src/backends/NetworkManagerSuSE.c (nm_system_device_get_system_config):
42 +       Fix the issue where NM doesn't honor YaST static IP settings.
43 +       (bugzilla.novell.com #271757).
44 +
45 +2008-01-23  Dan Williams  <dcbw@redhat.com>
46 +
47 +       * libnm-glib/libnm_glib.c
48 +               - (libnm_glib_init): make thread joinable
49 +               - (libnm_glib_ctx_free): join thread on exit to clean up memory
50 +
51 +2008-01-23  Dan Williams  <dcbw@redhat.com>
52 +
53 +       * test/libnm_glib_test.c
54 +               - (signal_handler, setup_signals): trap SIGINT and SIGTERM
55 +               - (main): set up signal handlers; call libnm_glib_shutdown
56 +
57 +2008-01-23  Dan Williams  <dcbw@redhat.com>
58 +
59 +       Fix gnome.org #511323
60 +
61 +       * src/NetworkManagerAPList.c
62 +               - (nm_ap_list_merge_scanned_ap): if the AP being merged is hiding its
63 +                       SSID, but there's an AP in the device's list with the same BSSID
64 +                       that is not hidden, only update the strength and last-seen
65 +                       attributes of the devlist AP and keep the existing SSID.
66 +
67 +2008-01-23  Dan Williams  <dcbw@redhat.com>
68 +
69 +       Fix up the scan algorithm to help gnome.org #498887.
70 +
71 +       * src/nm-device-802-11-wireless.c
72 +         src/nm-device-802-11-wireless.h
73 +               - (nm_device_802_11_wireless_set_scan_interval): make static, and
74 +                       only change a specific device's scan interval.  If the scan interval
75 +                       is now ACTIVE, schedule a scan at the earliest possible opportunity
76 +                       as long as the last scan was at least 20 seconds ago
77 +               - (real_init, real_deactivate, 
78 +               - (real_start): use schedule_scan() instead of rolling the scan
79 +                       scheduling code manually
80 +               - (set_scan_interval_cb -> set_inactive_scan_interval_cb): call
81 +                       nm_device_802_11_wireless_ui_activated() instead of
82 +                       nm_device_802_11_wireless_set_scan_interval() because the change is
83 +                       really global to all wireless devices
84 +               - (set_inactive_scan_timeout): new function; reset the INVACTIVE scan
85 +                       interval timeout
86 +               - (nm_device_802_11_wireless_ui_activated): reset the scan interval
87 +                       for all wireless devices
88 +               - (request_and_convert_scan_results): don't set last_scan here
89 +               - (scan_results_timeout): set last_scan here instead, and after the
90 +                       first successful scan, set the scan interval from INIT -> ACTIVE
91 +               - (nm_device_802_11_wireless_scan): cleanups
92 +               - (schedule_scan): take a new argument so that callers can specify the
93 +                       scan interval if they desire
94 +
95 +       * src/NetworkManagerDbus.c
96 +               - (nm_dbus_signal_filter): call nm_device_802_11_wireless_ui_activated()
97 +                       instead of nm_device_802_11_wireless_set_scan_interval()
98 +
99 +2008-01-16  Dan Williams  <dcbw@redhat.com>
100 +
101 +       * src/nm-device-802-11-wireless.c
102 +               - (real_act_stage4_ip_config_timeout): clean up the supplicant to ensure
103 +                       that the connection attempt starts fresh.  Otherwise, when the key
104 +                       comes back, NM pukes and fails the new attempt because the
105 +                       supplicant can't terminate and start up again quickly enough
106 +
107 +2008-01-16  Tambet Ingo  <tambet@gmail.com>
108 +
109 +       Shuffle the code a bit in preparation for wired 802.1X authentication.
110 +
111 +       * src/nm-device-802-11-wireless.c: Remove the supplicant driving code and use
112 +       NMSuppicant instead.
113 +
114 +       * src/nm-supplicant.[ch]: New files. The wpa_supplicant driving code is moved
115 +       here from nm-device-802-11-wireless.c and refactored a bit so it can be shared
116 +       by wired cards as well.
117 +
118 +2008-01-10  Dan Williams  <dcbw@redhat.com>
119 +
120 +       Fix gnome.org #464215.  Requires the kernel patch titled
121 +       "Introduce WEXT scan capabilities" but will handle the patch not being
122 +       present, you'll just continue to have problems with hidden SSIDs when
123 +       using mac80211-based drivers.
124 +
125 +       * src/nm-device-802-11-wireless.c
126 +               - (real_init): check whether or not the driver supports SSID scans
127 +               - (supplicant_send_network_config): if the driver supports SSID scans,
128 +                       and the AP is hidden, use ap_scan=1 instead of ap_scan=2
129 +
130 +2008-01-10  Dan Williams  <dcbw@redhat.com>
131 +
132 +       * src/NetworkManager.c
133 +               - (nm_killswitch_getpower_reply_cb): ensure DBusErrors are initialized
134 +                       before using them
135 +
136 +2008-01-09  Dan Williams  <dcbw@redhat.com>
137 +
138 +       * src/NetworkManager.c
139 +               - (nm_killswitch_getpower_reply_cb): handle different HAL versions
140 +                       better by matching the variable type with the D-Bus argument type
141 +
142 +2008-01-09  Dan Williams  <dcbw@redhat.com>
143 +
144 +       * src/nm-ap-security-wpa-eap.c
145 +               - (real_write_supplicant_config): send the 'fragment_size' option (but
146 +                       don't fail if it's not supported)
147 +
148 +2008-01-06  Dan Williams  <dcbw@redhat.com>
149 +
150 +       * src/dhcp-manager/nm-dhcp-manager.c
151 +               - (nm_dhcp_manager_get_ip4_config): handle DHCP-provided MTU
152 +                       (gnome.org #332953)
153 +
154 +2008-01-06  Dan Williams  <dcbw@redhat.com>
155 +
156 +       Fixes gnome.org #466954
157 +
158 +       * src/nm-device-802-11-wireless.c
159 +               - (find_supported_frequency): new function; find the first frequency the
160 +                       card appears to support from a given list
161 +               - (supplicant_send_network_config): explicitly send a frequency the
162 +                       Ad-Hoc config should use, some cards require it.  If the version
163 +                       of wpa_supplicant being used does not support the 'frequency' option,
164 +                       NetworkManager will ignore the error and proceed.
165 +
166 +2008-01-04  Dan Williams  <dcbw@redhat.com>
167 +
168 +       * src/named-manager/nm-named-manager.c
169 +               - (rewrite_resolv_conf, add_ip4_config_to_named): use primary IP4Config's
170 +                       nameservers if the secondary config doesn't have any
171 +                       (gnome.org #346833)
172 +
173 +2008-01-04  Dan Williams  <dcbw@redhat.com>
174 +
175 +       * configure.in
176 +               - Bump libnl requirement to 1.0-pre8
177 +
178 +       * src/NetworkManagerSystem.c
179 +               - (new_nl_handle, destroy_nl_handle): port to libnl-1.0-pre8
180 +               - (iface_to_rtnl_index, iface_to_rtnl_link,
181 +                  nm_system_get_rtnl_index_from_iface,
182 +                  nm_system_get_iface_from_rtnl_index,
183 +                  nm_system_device_set_from_ip4_config,
184 +                  nm_system_vpn_device_set_from_ip4_config,
185 +                  nm_system_device_set_up_down_with_iface,
186 +                  nm_system_set_mtu): update for libnl-1.0-pre8
187 +
188 +       * src/nm-netlink-monitor.c
189 +               - (nm_netlink_monitor_open_connection,
190 +                  nm_netlink_monitor_request_status): don't use netlink pids that
191 +                       conflict with libnl
192 +
193 +2007-12-14  Dan Williams  <dcbw@redhat.com>
194 +
195 +       * src/vpn-properties/nm-vpn-properties.c
196 +               - (init_app): hook up a double-click handler; select first item in the
197 +                       list if there is one (gnome.org #334883)
198 +
199 +2007-12-09  Dan Williams  <dcbw@redhat.com>
200 +
201 +       * src/NetworkManager.c
202 +               - (nm_killswitch_getpower_reply_cb): don't repeat errors too often
203 +                       (rh #246106)
204 +
205 +2007-12-07  Dan Williams  <dcbw@redhat.com>
206 +
207 +       * src/NetworkManagerSystem.c
208 +               - (new_nl_handle): ensure that the same netlink pid is never chosen
209 +                       twice (gnome.org #491047)
210 +
211 +2007-12-07  Dan Williams  <dcbw@redhat.com>
212 +
213 +       * src/nm-device-802-11-wireless.c
214 +               - (nm_device_802_11_wireless_set_essid): don't lock the SSID in the
215 +                       driver when setting a NULL ESSID (gnome.org #499565)
216 +
217 +2007-12-07  Dan Williams  <dcbw@redhat.com>
218 +
219 +       * src/nm-device-802-11-wireless.c
220 +               - Wrap #include of linux/mii.h to fix redefined structures due to
221 +                       incorrect kernel headers (gnome.org #350061)
222 +
223 +2007-12-02  Dan Williams  <dcbw@redhat.com>
224 +
225 +       * src/NetworkManager.c
226 +               - (nm_data_free): clean up dbus connection on exit
227 +
228 +2007-12-02  Dan Williams  <dcbw@redhat.com>
229 +
230 +       * src/nm-device-802-11-wireless.c
231 +               - (nm_device_802_11_wireless_get_mode): backport fix from trunk/r3015
232 +                       for getting mode
233 +
234 +2007-10-28  Priit Laes  <plaes@svn.gnome.org>
235 +
236 +        * configure.in: Added "et" (Estonian) to ALL_LINGUAS.
237 +
238 +2007-08-30  Dan Williams  <dcbw@redhat.com>
239 +
240 +       * libnm-util/sha1.c
241 +               - Include config.h to get defines for endiannes (gnome.org #420216)
242 +
243 +2007-07-26  Dan Williams  <dcbw@redhat.com>
244 +
245 +       Patch from Bernhard Miklautz <bernhard.miklautz@shacknet.at>
246 +
247 +       * src/NetworkManagerSystem.c
248 +               - (nm_system_device_set_ip4_route): don't add the route if it's on the
249 +                       same subnet (#437396)
250 +
251 +2007-07-26  Dan Williams  <dcbw@redhat.com>
252 +
253 +       * src/nm-device-802-11-wireless.c
254 +               - (real_start): I hate orinoco; apparently has trouble scanning too soon
255 +                       after being brought up, so do the initial scan a bit later.
256 +
257 +2007-06-27  Dan Williams  <dcbw@redhat.com>
258 +
259 +       * src/NetworkManager.c
260 +               - (nm_hal_init): set hardware RF to enabled if no killswitches are found
261 +                       after the initial discovery
262 +
263 +2007-06-21  Dan Williams  <dcbw@redhat.com>
264 +
265 +       More fixes for Fedora #194124, gnome.org #354565
266 +
267 +       * src/nm-device-802-3-ethernet.c
268 +               - (real_act_stage1_prepare): new function; fail activation if device
269 +                       doesn't have a link
270 +
271 +       * src/NetworkManagerPolicy.c
272 +               - (nm_policy_activation_finish): ensure device is actually activated
273 +                       before sending out signals.  Fixes a race where device cancellation
274 +                       would be processed right after finish was scheduled, but not run.
275 +               - (nm_policy_device_change_check, nm_policy_schedule_device_change_check):
276 +                       ensure device change check GSource ID is locked across threads;
277 +                       allow interruption of activation of 802.3 ethernet devices that no
278 +                       longer have an active link, and ensure that 802.3 ethernet devices
279 +                       have an active link before starting activation
280 +
281 +2007-06-21  Dan Williams  <dcbw@redhat.com>
282 +
283 +       Add HAL-based rfkill support, based on a patch from Benjamin Kahn.
284 +
285 +       * src/NetworkManagerDbus.[ch]
286 +               - (nm_dbus_signal_wireless_enabled): new function, emit signals when
287 +                       wireless enabled status changes
288 +
289 +       * src/nm-dbus-nm.c
290 +               - (nm_dbus_nm_set_wireless_enabled): handle hardware rfkill correctly;
291 +                       send errors when hardware switch overrides user request, and send
292 +                       signals when wireless enabled state changes
293 +               - (nm_dbus_nm_get_wireless_enabled): send additional 'hardware rf enabled'
294 +                       argument in method reply
295 +
296 +       * src/NetworkManager.c
297 +               - (handle_killswitch_pcall_done, nm_killswitch_getpower_reply_cb,
298 +                  nm_poll_killswitches, nm_add_killswitch_device,
299 +                  nm_add_initial_killswitch_devices): new functions; detect and handle
300 +                       hardware killswitches exported by HAL.  Unfortunately we have to
301 +                       poll the switches because HAL doesn't support signals for killswitches
302 +                       yet.
303 +               - (nm_hal_device_new_capability): detect killswitches added asynchronously
304 +               - (nm_hal_init): look for killswitches when connecting to HAL
305 +               - (nm_hal_deinit): dispose of killswitches when deiniting HAL data
306 +
307 +       * src/NetworkManagerMain.h
308 +               - Add bits to track killswitches
309 +
310 +2007-06-12  Dan Williams  <dcbw@redhat.com>
311 +
312 +       * src/nm-device.c
313 +               - (real_act_stage3_ip_config_start): sometimes the device gets downed
314 +                       during the wpa_supplicant association.  Ensure the device is up
315 +                       before it's used for IP configuration.
316 +
317 +2007-06-07  Dan Williams  <dcbw@redhat.com>
318 +
319 +       Patch from Jon Nettleton <jon.nettleton@gmail.com>
320 +
321 +       * src/nm-device-802-11-wireless.c:
322 +               - (real_act_stage2_config): sleep 1 second to allow link status
323 +               to stabilize
324 +
325 +2007-06-07  Dan Williams  <dcbw@redhat.com>
326 +
327 +       * (nm_device_802_3_ethernet_link_activated,
328 +          nm_device_802_3_ethernet_link_deactivated): fix ethernet link detection
329 +               behavior due to races between the netlink code and when the
330 +               device thread recognizes the change.  Checking the link state
331 +               before scheduling the change even on the device thread is wrong.
332 +               (gnome.org #354565, rh #194124)
333 +
334 +2007-04-25  Dan Williams  <dcbw@redhat.com>
335 +
336 +       * initscript/RedHat/NetworkManager.in: remove trailing backslash
337 +               (gnome.org #432401)
338 +
339  2007-04-18  Tambet Ingo  <tambet@ximian.com>
340  
341         * src/nm-dbus-nmi.c (nm_dbus_get_user_key_for_network_cb): Update the security
342 diff -urN NetworkManager-0.6.5/configure.in NetworkManager-SVNr3284/configure.in
343 --- NetworkManager-0.6.5/configure.in   2007-04-18 20:13:10.000000000 +0200
344 +++ NetworkManager-SVNr3284/configure.in        2008-02-04 16:01:02.000000000 +0100
345 @@ -46,7 +46,7 @@
346  GETTEXT_PACKAGE=NetworkManager
347  AC_SUBST(GETTEXT_PACKAGE)
348  AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package])
349 -ALL_LINGUAS="ar be@latin bg bs ca cs da de dz el en_CA en_GB es fi fr gl gu hr hu it ja ka ko lt pl mk nb ne nl pa pt_BR rw sk sq sr@Latn sr sv uk vi wa zh_CN zh_TW"
350 +ALL_LINGUAS="ar be@latin bg bs ca cs da de dz el en_CA en_GB es et fi fr gl gu hr hu it ja ka ko lt pl mk nb ne nl pa pt_BR rw sk sq sr@Latn sr sv uk vi wa zh_CN zh_TW"
351  AC_PROG_INTLTOOL([0.27.2])
352  AM_GLIB_GNU_GETTEXT
353  
354 @@ -154,7 +154,7 @@
355         PKG_CHECK_MODULES(GNOME_KEYRING, gnome-keyring-1)
356  fi
357  
358 -PKG_CHECK_MODULES(LIBNL, libnl-1)
359 +PKG_CHECK_MODULES(LIBNL, libnl-1 >= 1.0-pre8)
360  
361  AC_ARG_WITH(gcrypt, AC_HELP_STRING([--with-gcrypt], [Use gcrypt library]), ac_gcrypt=$withval, ac_gcrypt=auto)
362  if test x"$ac_gcrypt" != xno; then
363 @@ -341,8 +341,8 @@
364  initscript/Arch/networkmanager
365  initscript/Arch/networkmanager-dispatcher
366  man/Makefile
367 -man/NetworkManager.1
368 -man/NetworkManagerDispatcher.1
369 +man/NetworkManager.8
370 +man/NetworkManagerDispatcher.8
371  man/nm-tool.1
372  po/Makefile.in
373  NetworkManager.pc
374 diff -urN NetworkManager-0.6.5/gnome/libnm_glib/libnm_glib.c NetworkManager-SVNr3284/gnome/libnm_glib/libnm_glib.c
375 --- NetworkManager-0.6.5/gnome/libnm_glib/libnm_glib.c  2007-04-18 20:13:08.000000000 +0200
376 +++ NetworkManager-SVNr3284/gnome/libnm_glib/libnm_glib.c       2008-02-04 16:00:46.000000000 +0100
377 @@ -40,8 +40,10 @@
378         DBusConnection  *       dbus_con;
379         guint                   dbus_watcher;
380         guint                   dbus_watch_interval;
381 +
382         gboolean                        thread_done;
383         gboolean                        thread_inited;
384 +       GThread *                       thread;
385  
386         GSList *                        callbacks;
387         GMutex *                        callbacks_lock;
388 @@ -458,6 +460,9 @@
389         g_slist_foreach (ctx->callbacks, (GFunc)g_free, NULL);
390         g_slist_free (ctx->callbacks);
391  
392 +       if (ctx->thread)
393 +               g_thread_join (ctx->thread);
394 +
395         memset (ctx, 0, sizeof (libnm_glib_ctx));
396         memset (&(ctx->check), 0xDD, sizeof (ctx->check));
397         g_free (ctx);
398 @@ -488,7 +493,6 @@
399  libnm_glib_ctx *
400  libnm_glib_init (void)
401  {
402 -       GError  *error = NULL;
403         libnm_glib_ctx  *ctx = NULL;
404  
405         g_type_init ();
406 @@ -496,15 +500,12 @@
407                 g_thread_init (NULL);
408         dbus_g_thread_init ();
409  
410 -       if (!(ctx = libnm_glib_ctx_new()))
411 +       if (!(ctx = libnm_glib_ctx_new ()))
412                 return NULL;
413  
414 -       if (!g_thread_create (libnm_glib_dbus_worker, ctx, FALSE, &error))
415 -       {
416 -               if (error)
417 -                       g_error_free (error);
418 +       ctx->thread = g_thread_create (libnm_glib_dbus_worker, ctx, TRUE, NULL);
419 +       if (!ctx->thread)
420                 goto error;     
421 -       }
422  
423         /* Wait until initialization of the thread */
424         while (!ctx->thread_inited)
425 diff -urN NetworkManager-0.6.5/gnome/vpn-properties/Makefile.am NetworkManager-SVNr3284/gnome/vpn-properties/Makefile.am
426 --- NetworkManager-0.6.5/gnome/vpn-properties/Makefile.am       2007-04-18 20:13:08.000000000 +0200
427 +++ NetworkManager-SVNr3284/gnome/vpn-properties/Makefile.am    2008-02-04 16:00:45.000000000 +0100
428 @@ -26,8 +26,7 @@
429          -DGLADEDIR=\""$(gladedir)"\"                    \
430          -DG_DISABLE_DEPRECATED                          \
431          -DGDK_DISABLE_DEPRECATED                        \
432 -        -DGNOME_DISABLE_DEPRECATED                      \
433 -       -DGNOMELOCALEDIR=\"$(datadir)/locale\"          \
434 +        -DGNOMELOCALEDIR=\"$(datadir)/locale\"         \
435          -DVERSION=\"$(VERSION)\" \
436          $(NULL)
437  
438 diff -urN NetworkManager-0.6.5/gnome/vpn-properties/nm-vpn-properties.c NetworkManager-SVNr3284/gnome/vpn-properties/nm-vpn-properties.c
439 --- NetworkManager-0.6.5/gnome/vpn-properties/nm-vpn-properties.c       2007-04-18 20:13:08.000000000 +0200
440 +++ NetworkManager-SVNr3284/gnome/vpn-properties/nm-vpn-properties.c    2008-02-04 16:00:45.000000000 +0100
441 @@ -1,5 +1,5 @@
442  /***************************************************************************
443 - * CVSID: $Id$
444 + * CVSID: $Id$
445   *
446   * nm-vpn-properties.c : GNOME UI dialogs for manipulating VPN connections
447   *
448 @@ -868,6 +868,15 @@
449         update_edit_del_sensitivity ();
450  }
451  
452 +static void
453 +vpn_list_row_activated_cb (GtkTreeView *treeview,
454 +                           GtkTreePath *path,
455 +                           GtkTreeViewColumn *column,
456 +                           gpointer user_data)
457 +{
458 +       edit_cb (NULL, NULL);
459 +}
460 +
461  /* TODO: remove these once we get the GModule thing going */
462  //extern NetworkManagerVpnUI* vpn_ui_factory_vpnc (void);
463  extern NetworkManagerVpnUI* vpn_ui_factory_dummy (void);
464 @@ -942,6 +951,7 @@
465         GtkHBox *vpn_type_hbox1;
466         GtkWidget *toplevel;
467         GDir *dir;
468 +    GtkTreeIter tree_iter;
469  
470         if (!vpn_get_clipboard ())
471                 return FALSE;
472 @@ -1005,13 +1015,13 @@
473         vpn_type_details = GTK_VBOX (glade_xml_get_widget (xml, "vpn-connection-druid-details-box"));
474  
475         w = glade_xml_get_widget (xml, "add");
476 -       gtk_signal_connect (GTK_OBJECT (w), "clicked", GTK_SIGNAL_FUNC (add_cb), NULL);
477 +       g_signal_connect (G_OBJECT (w), "clicked", GTK_SIGNAL_FUNC (add_cb), NULL);
478         vpn_edit = glade_xml_get_widget (xml, "edit");
479 -       gtk_signal_connect (GTK_OBJECT (vpn_edit), "clicked", GTK_SIGNAL_FUNC (edit_cb), NULL);
480 +       g_signal_connect (G_OBJECT (vpn_edit), "clicked", GTK_SIGNAL_FUNC (edit_cb), NULL);
481         vpn_export = glade_xml_get_widget (xml, "export");
482 -       gtk_signal_connect (GTK_OBJECT (vpn_export), "clicked", GTK_SIGNAL_FUNC (export_cb), NULL);
483 +       g_signal_connect (G_OBJECT (vpn_export), "clicked", GTK_SIGNAL_FUNC (export_cb), NULL);
484         vpn_delete = glade_xml_get_widget (xml, "delete");
485 -       gtk_signal_connect (GTK_OBJECT (vpn_delete), "clicked", GTK_SIGNAL_FUNC (delete_cb), NULL);
486 +       g_signal_connect (G_OBJECT (vpn_delete), "clicked", GTK_SIGNAL_FUNC (delete_cb), NULL);
487         g_signal_connect (dialog, "response",
488                           G_CALLBACK (response_cb), NULL);
489         g_signal_connect (dialog, "delete_event",
490 @@ -1029,9 +1039,12 @@
491                                              VPNCONN_NAME_COLUMN,
492                                              GTK_SORT_ASCENDING);
493  
494 -       gtk_signal_connect_after (GTK_OBJECT (vpn_conn_view), "cursor-changed",
495 +       g_signal_connect_after (G_OBJECT (vpn_conn_view), "cursor-changed",
496                                   GTK_SIGNAL_FUNC (vpn_list_cursor_changed_cb), NULL);
497  
498 +       g_signal_connect (G_OBJECT (vpn_conn_view), "row-activated",
499 +                                 GTK_SIGNAL_FUNC (vpn_list_row_activated_cb), NULL);
500 +
501         get_all_vpn_connections ();
502  
503         column = gtk_tree_view_column_new ();
504 @@ -1045,6 +1058,12 @@
505         gtk_tree_view_set_model (vpn_conn_view, GTK_TREE_MODEL (vpn_conn_list));
506         gtk_tree_view_expand_all (vpn_conn_view);
507  
508 +       if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (vpn_conn_list), &tree_iter)) {
509 +               GtkTreeSelection *selection = gtk_tree_view_get_selection (vpn_conn_view);
510 +
511 +               gtk_tree_selection_select_iter (selection, &tree_iter);
512 +       }
513 +
514         gtk_widget_show_all (dialog);
515  
516         /* fill in possibly choices in the druid when adding a connection */
517 @@ -1059,20 +1078,20 @@
518  
519         /* Druid */
520         druid = GNOME_DRUID (glade_xml_get_widget (xml, "vpn-create-connection-druid"));
521 -       gtk_signal_connect (GTK_OBJECT (druid), "cancel", GTK_SIGNAL_FUNC (vpn_druid_cancel), NULL);
522 +       g_signal_connect (GTK_OBJECT (druid), "cancel", GTK_SIGNAL_FUNC (vpn_druid_cancel), NULL);
523         druid_confirm_page = GNOME_DRUID_PAGE_EDGE (glade_xml_get_widget (xml, "vpn-druid-vpn-confirm-page"));
524         /* use connect_after, otherwise gnome_druid_set_buttons_sensitive() won't work in prepare handlers */
525         w = glade_xml_get_widget (xml, "vpn-druid-vpn-type-page");
526 -       gtk_signal_connect_after (GTK_OBJECT (w), "next", GTK_SIGNAL_FUNC (vpn_druid_vpn_type_page_next), NULL);
527 +       g_signal_connect_after (G_OBJECT (w), "next", GTK_SIGNAL_FUNC (vpn_druid_vpn_type_page_next), NULL);
528         w = glade_xml_get_widget (xml, "vpn-druid-vpn-details-page");
529 -       gtk_signal_connect_after (GTK_OBJECT (w), "prepare", GTK_SIGNAL_FUNC (vpn_druid_vpn_details_page_prepare), NULL);
530 -       gtk_signal_connect_after (GTK_OBJECT (w), "next", GTK_SIGNAL_FUNC (vpn_druid_vpn_details_page_next), NULL);
531 +       g_signal_connect_after (G_OBJECT (w), "prepare", GTK_SIGNAL_FUNC (vpn_druid_vpn_details_page_prepare), NULL);
532 +       g_signal_connect_after (G_OBJECT (w), "next", GTK_SIGNAL_FUNC (vpn_druid_vpn_details_page_next), NULL);
533         w = glade_xml_get_widget (xml, "vpn-druid-vpn-confirm-page");
534 -       gtk_signal_connect_after (GTK_OBJECT (w), "prepare", GTK_SIGNAL_FUNC (vpn_druid_vpn_confirm_page_prepare), NULL);
535 -       gtk_signal_connect_after (GTK_OBJECT (w), "finish", GTK_SIGNAL_FUNC (vpn_druid_vpn_confirm_page_finish), NULL);
536 +       g_signal_connect_after (G_OBJECT (w), "prepare", GTK_SIGNAL_FUNC (vpn_druid_vpn_confirm_page_prepare), NULL);
537 +       g_signal_connect_after (G_OBJECT (w), "finish", GTK_SIGNAL_FUNC (vpn_druid_vpn_confirm_page_finish), NULL);
538  
539         toplevel = gtk_widget_get_toplevel (GTK_WIDGET (druid));
540 -       gtk_signal_connect (GTK_OBJECT (toplevel), "delete_event", GTK_SIGNAL_FUNC (vpn_window_close), NULL);
541 +       g_signal_connect (G_OBJECT (toplevel), "delete_event", GTK_SIGNAL_FUNC (vpn_window_close), NULL);
542  
543         druid_window = GTK_WINDOW (glade_xml_get_widget (xml, "vpn-create-connection"));
544  
545 diff -urN NetworkManager-0.6.5/include/NetworkManager.h NetworkManager-SVNr3284/include/NetworkManager.h
546 --- NetworkManager-0.6.5/include/NetworkManager.h       2007-04-18 20:13:03.000000000 +0200
547 +++ NetworkManager-SVNr3284/include/NetworkManager.h    2008-02-04 15:59:52.000000000 +0100
548 @@ -173,7 +173,8 @@
549         NETWORK_TYPE_UNKNOWN = 0,
550         NETWORK_TYPE_ALLOWED,
551         NETWORK_TYPE_INVALID,
552 -       NETWORK_TYPE_DEVICE
553 +       NETWORK_TYPE_DEVICE,
554 +       NETWORK_TYPE_WIRED
555  } NMNetworkType;
556  
557  
558 diff -urN NetworkManager-0.6.5/libnm-util/dbus-helpers.h NetworkManager-SVNr3284/libnm-util/dbus-helpers.h
559 --- NetworkManager-0.6.5/libnm-util/dbus-helpers.h      2007-04-18 20:13:09.000000000 +0200
560 +++ NetworkManager-SVNr3284/libnm-util/dbus-helpers.h   2008-02-04 16:00:48.000000000 +0100
561 @@ -100,6 +100,7 @@
562                                                                 char **client_cert_file,
563                                                                 char **ca_cert_file,
564                                                                 int *wpa_version);
565 +
566  dbus_bool_t    nmu_security_serialize_leap (DBusMessageIter *iter,
567                                                                 const char *username,
568                                                                 const char *passwd,
569 diff -urN NetworkManager-0.6.5/libnm-util/sha1.c NetworkManager-SVNr3284/libnm-util/sha1.c
570 --- NetworkManager-0.6.5/libnm-util/sha1.c      2007-04-18 20:13:09.000000000 +0200
571 +++ NetworkManager-SVNr3284/libnm-util/sha1.c   2008-02-04 16:00:48.000000000 +0100
572 @@ -12,6 +12,10 @@
573   * See README and COPYING for more details.
574   */
575  
576 +#ifdef HAVE_CONFIG_H
577 +#include <config.h>
578 +#endif
579 +
580  #include <stdlib.h>
581  #include <string.h>
582  
583 diff -urN NetworkManager-0.6.5/man/Makefile.am NetworkManager-SVNr3284/man/Makefile.am
584 --- NetworkManager-0.6.5/man/Makefile.am        2007-04-18 20:13:08.000000000 +0200
585 +++ NetworkManager-SVNr3284/man/Makefile.am     2008-02-04 16:00:46.000000000 +0100
586 @@ -1,10 +1,10 @@
587  man_MANS =                             \
588 -       NetworkManager.1                \
589 -       NetworkManagerDispatcher.1      \
590 +       NetworkManager.8                \
591 +       NetworkManagerDispatcher.8      \
592         nm-tool.1
593  
594  EXTRA_DIST =                           \
595         $(man_MANS)                     \
596 -       NetworkManager.1.in             \
597 -       NetworkManagerDispatcher.1.in   \
598 +       NetworkManager.8.in             \
599 +       NetworkManagerDispatcher.8.in   \
600         nm-tool.1.in
601 diff -urN NetworkManager-0.6.5/man/NetworkManager.1 NetworkManager-SVNr3284/man/NetworkManager.1
602 --- NetworkManager-0.6.5/man/NetworkManager.1   2007-04-18 22:28:16.000000000 +0200
603 +++ NetworkManager-SVNr3284/man/NetworkManager.1        1970-01-01 01:00:00.000000000 +0100
604 @@ -1,27 +0,0 @@
605 -.\" NetworkManager(1) manual page
606 -.\"
607 -.\" Copyright (C) 2005 Robert Love
608 -.\"
609 -.TH NETWORKMANAGER "1"
610 -.SH NAME
611 -NetworkManager \- network management daemon
612 -.SH SYNOPSIS
613 -.B NetworkManager [\-\-no-daemon] [\-\-enable-test-devices]
614 -.SH DESCRIPTION
615 -The \fINetworkManager\fP daemon attempts to keep an active network connection
616 -available at all times.  The point of NetworkManager is to make networking
617 -configuration and setup as painless and automatic as possible.  If using DHCP,
618 -NetworkManager is intended to replace default routes, obtain IP addresses from
619 -a DHCP server, and change nameservers whenever it sees fit, with the aim of
620 -making networking Just Work.
621 -.SH OPTIONS
622 -The following options are supported:
623 -.TP
624 -.I "--no-daemon"
625 -Do not daemonize.  This is useful for debugging.
626 -.TP
627 -.I "--enable-test-devices"
628 -Enable support for virtual test devices.  These are useful for debugging.
629 -.SH SEE ALSO
630 -.BR NetworkManagerDispatcher (1),
631 -.BR nm-tool (1)
632 diff -urN NetworkManager-0.6.5/man/NetworkManager.1.in NetworkManager-SVNr3284/man/NetworkManager.1.in
633 --- NetworkManager-0.6.5/man/NetworkManager.1.in        2007-04-18 20:13:08.000000000 +0200
634 +++ NetworkManager-SVNr3284/man/NetworkManager.1.in     1970-01-01 01:00:00.000000000 +0100
635 @@ -1,27 +0,0 @@
636 -.\" NetworkManager(1) manual page
637 -.\"
638 -.\" Copyright (C) 2005 Robert Love
639 -.\"
640 -.TH NETWORKMANAGER "1"
641 -.SH NAME
642 -NetworkManager \- network management daemon
643 -.SH SYNOPSIS
644 -.B NetworkManager [\-\-no-daemon] [\-\-enable-test-devices]
645 -.SH DESCRIPTION
646 -The \fINetworkManager\fP daemon attempts to keep an active network connection
647 -available at all times.  The point of NetworkManager is to make networking
648 -configuration and setup as painless and automatic as possible.  If using DHCP,
649 -NetworkManager is intended to replace default routes, obtain IP addresses from
650 -a DHCP server, and change nameservers whenever it sees fit, with the aim of
651 -making networking Just Work.
652 -.SH OPTIONS
653 -The following options are supported:
654 -.TP
655 -.I "--no-daemon"
656 -Do not daemonize.  This is useful for debugging.
657 -.TP
658 -.I "--enable-test-devices"
659 -Enable support for virtual test devices.  These are useful for debugging.
660 -.SH SEE ALSO
661 -.BR NetworkManagerDispatcher (1),
662 -.BR nm-tool (1)
663 diff -urN NetworkManager-0.6.5/man/NetworkManager.8.in NetworkManager-SVNr3284/man/NetworkManager.8.in
664 --- NetworkManager-0.6.5/man/NetworkManager.8.in        1970-01-01 01:00:00.000000000 +0100
665 +++ NetworkManager-SVNr3284/man/NetworkManager.8.in     2008-02-04 16:00:46.000000000 +0100
666 @@ -0,0 +1,27 @@
667 +.\" NetworkManager(8) manual page
668 +.\"
669 +.\" Copyright (C) 2005 Robert Love
670 +.\"
671 +.TH NETWORKMANAGER "8"
672 +.SH NAME
673 +NetworkManager \- network management daemon
674 +.SH SYNOPSIS
675 +.B NetworkManager [\-\-no-daemon] [\-\-enable-test-devices]
676 +.SH DESCRIPTION
677 +The \fINetworkManager\fP daemon attempts to keep an active network connection
678 +available at all times.  The point of NetworkManager is to make networking
679 +configuration and setup as painless and automatic as possible.  If using DHCP,
680 +NetworkManager is intended to replace default routes, obtain IP addresses from
681 +a DHCP server, and change nameservers whenever it sees fit, with the aim of
682 +making networking Just Work.
683 +.SH OPTIONS
684 +The following options are supported:
685 +.TP
686 +.I "--no-daemon"
687 +Do not daemonize.  This is useful for debugging.
688 +.TP
689 +.I "--enable-test-devices"
690 +Enable support for virtual test devices.  These are useful for debugging.
691 +.SH SEE ALSO
692 +.BR NetworkManagerDispatcher (8),
693 +.BR nm-tool (1)
694 diff -urN NetworkManager-0.6.5/man/NetworkManagerDispatcher.1 NetworkManager-SVNr3284/man/NetworkManagerDispatcher.1
695 --- NetworkManager-0.6.5/man/NetworkManagerDispatcher.1 2007-04-18 22:28:16.000000000 +0200
696 +++ NetworkManager-SVNr3284/man/NetworkManagerDispatcher.1      1970-01-01 01:00:00.000000000 +0100
697 @@ -1,29 +0,0 @@
698 -.\" NetworkManager(1) manual page
699 -.\"
700 -.\" Copyright (C) 2005 Robert Love
701 -.\"
702 -.TH NETWORKMANAGERDISPATCHER "1"
703 -.SH NAME
704 -NetworkManagerDispatcher \- daemon that runs commands in response to off/online
705 -.SH SYNOPSIS
706 -.B NetworkManagerDispatcher [\-\-no-daemon]
707 -.SH DESCRIPTION
708 -The \fINetworkManagerDispatcher\fP daemon runs commands in the
709 -.I ${prefix}/etc/NetworkManager/dispatcher.d
710 -directory in response to interfaces coming up and down.  The scripts are run
711 -alphabetically.  The first parameter is the network interface name.  The second
712 -parameter is
713 -.I up
714 -if the interface is now up and
715 -.I down
716 -if the interface is now down.
717 -.SH OPTIONS
718 -The following options are supported:
719 -.TP
720 -.I "--no-daemon"
721 -Do not daemonize.  This is useful for debugging.
722 -.SH FILES
723 -${prefix}/etc/NetworkManager/dispatcher.d
724 -.SH SEE ALSO
725 -.BR NetworkManager (1),
726 -.BR nm-tool (1)
727 diff -urN NetworkManager-0.6.5/man/NetworkManagerDispatcher.1.in NetworkManager-SVNr3284/man/NetworkManagerDispatcher.1.in
728 --- NetworkManager-0.6.5/man/NetworkManagerDispatcher.1.in      2007-04-18 20:13:08.000000000 +0200
729 +++ NetworkManager-SVNr3284/man/NetworkManagerDispatcher.1.in   1970-01-01 01:00:00.000000000 +0100
730 @@ -1,29 +0,0 @@
731 -.\" NetworkManager(1) manual page
732 -.\"
733 -.\" Copyright (C) 2005 Robert Love
734 -.\"
735 -.TH NETWORKMANAGERDISPATCHER "1"
736 -.SH NAME
737 -NetworkManagerDispatcher \- daemon that runs commands in response to off/online
738 -.SH SYNOPSIS
739 -.B NetworkManagerDispatcher [\-\-no-daemon]
740 -.SH DESCRIPTION
741 -The \fINetworkManagerDispatcher\fP daemon runs commands in the
742 -.I @sysconfdir@/NetworkManager/dispatcher.d
743 -directory in response to interfaces coming up and down.  The scripts are run
744 -alphabetically.  The first parameter is the network interface name.  The second
745 -parameter is
746 -.I up
747 -if the interface is now up and
748 -.I down
749 -if the interface is now down.
750 -.SH OPTIONS
751 -The following options are supported:
752 -.TP
753 -.I "--no-daemon"
754 -Do not daemonize.  This is useful for debugging.
755 -.SH FILES
756 -@sysconfdir@/NetworkManager/dispatcher.d
757 -.SH SEE ALSO
758 -.BR NetworkManager (1),
759 -.BR nm-tool (1)
760 diff -urN NetworkManager-0.6.5/man/NetworkManagerDispatcher.8.in NetworkManager-SVNr3284/man/NetworkManagerDispatcher.8.in
761 --- NetworkManager-0.6.5/man/NetworkManagerDispatcher.8.in      1970-01-01 01:00:00.000000000 +0100
762 +++ NetworkManager-SVNr3284/man/NetworkManagerDispatcher.8.in   2008-02-04 16:00:46.000000000 +0100
763 @@ -0,0 +1,29 @@
764 +.\" NetworkManager(8) manual page
765 +.\"
766 +.\" Copyright (C) 2005 Robert Love
767 +.\"
768 +.TH NETWORKMANAGERDISPATCHER "8"
769 +.SH NAME
770 +NetworkManagerDispatcher \- daemon that runs commands in response to off/online
771 +.SH SYNOPSIS
772 +.B NetworkManagerDispatcher [\-\-no-daemon]
773 +.SH DESCRIPTION
774 +The \fINetworkManagerDispatcher\fP daemon runs commands in the
775 +.I @sysconfdir@/NetworkManager/dispatcher.d
776 +directory in response to interfaces coming up and down.  The scripts are run
777 +alphabetically.  The first parameter is the network interface name.  The second
778 +parameter is
779 +.I up
780 +if the interface is now up and
781 +.I down
782 +if the interface is now down.
783 +.SH OPTIONS
784 +The following options are supported:
785 +.TP
786 +.I "--no-daemon"
787 +Do not daemonize.  This is useful for debugging.
788 +.SH FILES
789 +@sysconfdir@/NetworkManager/dispatcher.d
790 +.SH SEE ALSO
791 +.BR NetworkManager (8),
792 +.BR nm-tool (1)
793 diff -urN NetworkManager-0.6.5/man/nm-tool.1 NetworkManager-SVNr3284/man/nm-tool.1
794 --- NetworkManager-0.6.5/man/nm-tool.1  2007-04-18 22:28:16.000000000 +0200
795 +++ NetworkManager-SVNr3284/man/nm-tool.1       1970-01-01 01:00:00.000000000 +0100
796 @@ -1,14 +0,0 @@
797 -.\" nm-tool(1) manual page
798 -.\"
799 -.\" Copyright (C) 2005 Robert Love
800 -.\"
801 -.TH NM-TOOL "1"
802 -nm-tool \- utility to report NetworkManager state 
803 -.SH SYNOPSIS
804 -.B nm-tool
805 -.SH DESCRIPTION
806 -The \fInm-tool\fP utility provides information about NetworkManager, device,
807 -and wireless networks.
808 -.SH SEE ALSO
809 -.BR NetworkManager (1),
810 -.BR NetworkManagerDispatcher (1)
811 diff -urN NetworkManager-0.6.5/man/nm-tool.1.in NetworkManager-SVNr3284/man/nm-tool.1.in
812 --- NetworkManager-0.6.5/man/nm-tool.1.in       2007-04-18 20:13:08.000000000 +0200
813 +++ NetworkManager-SVNr3284/man/nm-tool.1.in    2008-02-04 16:00:46.000000000 +0100
814 @@ -3,6 +3,7 @@
815  .\" Copyright (C) 2005 Robert Love
816  .\"
817  .TH NM-TOOL "1"
818 +.SH NAME
819  nm-tool \- utility to report NetworkManager state 
820  .SH SYNOPSIS
821  .B nm-tool
822 @@ -10,5 +11,5 @@
823  The \fInm-tool\fP utility provides information about NetworkManager, device,
824  and wireless networks.
825  .SH SEE ALSO
826 -.BR NetworkManager (1),
827 -.BR NetworkManagerDispatcher (1)
828 +.BR NetworkManager (8),
829 +.BR NetworkManagerDispatcher (8)
830 diff -urN NetworkManager-0.6.5/po/ChangeLog NetworkManager-SVNr3284/po/ChangeLog
831 --- NetworkManager-0.6.5/po/ChangeLog   2007-04-18 20:13:10.000000000 +0200
832 +++ NetworkManager-SVNr3284/po/ChangeLog        2008-02-04 16:01:02.000000000 +0100
833 @@ -1,3 +1,44 @@
834 +2007-11-02  Priit Laes  <plaes@svn.gnome.org>
835 +
836 +       * et.po: Translation updated by Mattias Põldaru.
837 +
838 +2007-10-28  Priit Laes  <plaes@svn.gnome.org>
839 +
840 +       * et.po: Translation updated by Priit Laes.
841 +
842 +2007-10-28  Priit Laes  <plaes@svn.gnome.org>
843 +
844 +       * et.po: Translation updated by Mattias Põldaru.
845 +       * Forgot to add file :(
846 +
847 +2007-09-14   Clytie Siddall <clytie@riverland.net.au>
848 +
849 +       * vi.po: Updated Vietnamese translation.
850 +
851 +2007-08-26  Satoru SATOH <ss@gnome.gr.jp>
852 +
853 +       * ja.po: Updated Japanese translation.
854 +
855 +2007-08-22  Jorge Gonzalez <jorgegonz@svn.gnome.org>
856 +
857 +       * es.po: Updated Spanish translation.
858 +
859 +2007-08-16  Ilkka Tuohela  <hile@iki.fi>
860 +
861 +       * fi.po: Updated Finnish translation.
862 +
863 +2007-07-03  Takeshi AIHANA <takeshi.aihana@gmail.com>
864 +
865 +       * ja.po: Fixed #Bug 453314.
866 +
867 +2007-06-04  Kjartan Maraas  <kmaraas@gnome.org>
868 +
869 +       * nb.po: Update Norwegian bokmål translation.
870 +
871 +2007-04-23  Luca Ferretti  <elle.uca@libero.it>
872 +
873 +       * it.po: Updated Italian translation by Francesco Marletta.
874 +
875  2007-04-16  Ihar Hrachyshka <iharh@gnome.org>
876  
877         * be@latin.po: Added Belarusian Latin translation.
878 diff -urN NetworkManager-0.6.5/po/es.po NetworkManager-SVNr3284/po/es.po
879 --- NetworkManager-0.6.5/po/es.po       2007-04-18 20:13:10.000000000 +0200
880 +++ NetworkManager-SVNr3284/po/es.po    2008-02-04 16:01:02.000000000 +0100
881 @@ -2,735 +2,30 @@
882  # Traducción de NetworkManager al español.
883  # Copyright (C) Spanish translation for NetworkManager
884  # This file is distributed under the same license as the NetworkManager package.
885 +#
886  # Antonio Ognio <antonio@linux.org.pe>, 2004.
887  # Francisco Javier F. Serrador <serrador@cvs.gnome.org>, 2004, 2005.
888  # Lucas Vieites Fariña <lucas@asixinformatica.com>, 2005, 2006.
889 -#
890 +# Jorge González <jorgegonz@svn.gnome.org>, 2007.
891  msgid ""
892  msgstr ""
893 -"Project-Id-Version: NetworkManager.HEAD\n"
894 +"Project-Id-Version: NetworkManager.NETWORKMANAGER_0_6_0_RELEASE.es\n"
895  "Report-Msgid-Bugs-To: \n"
896 -"POT-Creation-Date: 2006-05-29 18:33+0200\n"
897 -"PO-Revision-Date: 2006-05-16 13:58\n"
898 -"Last-Translator: Novell Language <language@novell.com>\n"
899 -"Language-Team: Novell Language <language@novell.com>\n"
900 +"POT-Creation-Date: 2007-03-03 03:27+0000\n"
901 +"PO-Revision-Date: 2007-08-22 14:57+0200\n"
902 +"Last-Translator: Jorge González <jorgegonz@svn.gnome.org>\n"
903 +"Language-Team: Spanish <traductores@es.gnome.org>\n"
904  "MIME-Version: 1.0\n"
905  "Content-Type: text/plain; charset=UTF-8\n"
906  "Content-Transfer-Encoding: 8bit\n"
907 -"X-Generator: KBabel 1.11\n"
908 +"X-Generator: KBabel 1.11.4\n"
909  "Plural-Forms:  nplurals=2; plural=(n != 1);\n"
910  
911 -#: ../gnome/applet/applet-compat.c:171 ../gnome/applet/applet-dbus-info.c:919
912 -#, c-format
913 -msgid "Passphrase for wireless network %s"
914 -msgstr "Frase de paso para la red inalámbrica %s"
915 -
916 -#: ../gnome/applet/applet-dbus.c:265
917 -#, c-format
918 -msgid "Connection to the wireless network '%s' failed."
919 -msgstr "La conexión a la red inalámbrica «%s» ha fallado."
920 -
921 -#: ../gnome/applet/applet-dbus.c:270
922 -msgid "Connection to the wired network failed."
923 -msgstr "La conexión a la red cableada ha fallado."
924 -
925 -#: ../gnome/applet/applet.c:184
926 -msgid "Error displaying connection information:"
927 -msgstr "Ha ocurrido un error al mostrar información de conexión:"
928 -
929 -#: ../gnome/applet/applet.c:202
930 -msgid "Could not find some required resources (the glade file)!"
931 -msgstr ""
932 -"No se han podido encontrar algunos recursos necesarios (el archivo glade)."
933 -
934 -#: ../gnome/applet/applet.c:213
935 -msgid "No active connections!"
936 -msgstr "No hay conexiones activas."
937 -
938 -#: ../gnome/applet/applet.c:234
939 -#, c-format
940 -msgid "Wired Ethernet (%s)"
941 -msgstr "Red Ethernet cableada (%s)"
942 -
943 -#: ../gnome/applet/applet.c:236
944 -#, c-format
945 -msgid "Wireless Ethernet (%s)"
946 -msgstr "Red Ethernet inalámbrica (%s)"
947 -
948 -#: ../gnome/applet/applet.c:337 ../gnome/applet/applet.c:362
949 -msgid "NetworkManager Applet"
950 -msgstr "Miniaplicación NetworkManager"
951 -
952 -#: ../gnome/applet/applet.c:339 ../gnome/applet/applet.c:364
953 -msgid "Copyright © 2004-2005 Red Hat, Inc."
954 -msgstr "Copyright © 2004-2005 Red Hat, Inc."
955 -
956 -#: ../gnome/applet/applet.c:340 ../gnome/applet/applet.c:365
957 -msgid ""
958 -"Notification area applet for managing your network devices and connections."
959 -msgstr ""
960 -"Miniaplicación del área de notificación para administrar sus dispositivos de "
961 -"red y conexiones."
962 -
963 -#: ../gnome/applet/applet.c:343 ../gnome/applet/applet.c:370
964 -msgid "translator-credits"
965 -msgstr "Lucas Vieites <lucas@asixinformatica.com>, 2005"
966 -
967 -#: ../gnome/applet/applet.c:426
968 -msgid "VPN Login Failure"
969 -msgstr "Error de acceso de VPN"
970 -
971 -#: ../gnome/applet/applet.c:427
972 -#, c-format
973 -msgid "Could not start the VPN connection '%s' due to a login failure."
974 -msgstr "No se pudo iniciar la conexión VPN «%s» debido a un error de acceso."
975 -
976 -#: ../gnome/applet/applet.c:431
977 -msgid "VPN Start Failure"
978 -msgstr "Error de inicio de VPN"
979 -
980 -#: ../gnome/applet/applet.c:432
981 -#, c-format
982 -msgid ""
983 -"Could not start the VPN connection '%s' due to a failure launching the VPN "
984 -"program."
985 -msgstr ""
986 -"No se pudo iniciar la conexión VPN «%s» debido a un error al iniciar el "
987 -"programa VPN."
988 -
989 -#: ../gnome/applet/applet.c:436 ../gnome/applet/applet.c:446
990 -msgid "VPN Connect Failure"
991 -msgstr "Error de conexión VPN"
992 -
993 -#: ../gnome/applet/applet.c:437
994 -#, c-format
995 -msgid "Could not start the VPN connection '%s' due to a connection error."
996 -msgstr ""
997 -"No se puede iniciar la conexión VPN «%s» debido a un error de conexión."
998 -
999 -#: ../gnome/applet/applet.c:441
1000 -msgid "VPN Configuration Error"
1001 -msgstr "Error de configuración VPN"
1002 -
1003 -#: ../gnome/applet/applet.c:442
1004 -#, c-format
1005 -msgid "The VPN connection '%s' was not correctly configured."
1006 -msgstr "La conexión VPN «%s» no estaba configurada correctamente."
1007 -
1008 -#: ../gnome/applet/applet.c:447
1009 -#, c-format
1010 -msgid ""
1011 -"Could not start the VPN connection '%s' because the VPN server did not "
1012 -"return an adequate network configuration."
1013 -msgstr ""
1014 -"No se pudo iniciar la conexión VPN «%s» porque el servidor VPN no ha "
1015 -"devuelto una configuración de red adecuada."
1016 -
1017 -#: ../gnome/applet/applet.c:517
1018 -msgid "VPN Login Message"
1019 -msgstr "Mensaje de acceso VPN"
1020 -
1021 -#: ../gnome/applet/applet.c:741 ../gnome/applet/applet.c:2508
1022 -#: ../gnome/applet/other-network-dialog.c:453
1023 -#: ../gnome/applet/passphrase-dialog.c:228
1024 -msgid ""
1025 -"The NetworkManager Applet could not find some required resources (the glade "
1026 -"file was not found)."
1027 -msgstr ""
1028 -"La miniaplicación NetworkManager no pudo encontrar algunos archivos de "
1029 -"recursos (No se encontró el archivo de glade)."
1030 -
1031 -#: ../gnome/applet/applet.c:753
1032 -#, c-format
1033 -msgid "The network device \"%s (%s)\" does not support wireless scanning."
1034 -msgstr ""
1035 -"El dispositivo de red «%s (%s)» no puede inspeccionar redes inalámbricas."
1036 -
1037 -#: ../gnome/applet/applet.c:761
1038 -#, c-format
1039 -msgid "The network device \"%s (%s)\" does not support link detection."
1040 -msgstr ""
1041 -"El dispositivo de red \"%s (%s)\" no puede realizar detección de enlaces."
1042 -
1043 -#: ../gnome/applet/applet.c:908
1044 -#, c-format
1045 -msgid "Preparing device %s for the wired network..."
1046 -msgstr "Preparando el dispositivo %s para la red cableada..."
1047 -
1048 -#: ../gnome/applet/applet.c:910
1049 -#, c-format
1050 -msgid "Preparing device %s for the wireless network '%s'..."
1051 -msgstr "Preparando el dispositivo %s para la red inalámbrica «%s»..."
1052 -
1053 -#: ../gnome/applet/applet.c:918
1054 -#, c-format
1055 -msgid "Configuring device %s for the wired network..."
1056 -msgstr "Configurando el dispositivo %s para la red cableada..."
1057 -
1058 -#: ../gnome/applet/applet.c:920
1059 -#, c-format
1060 -msgid "Attempting to join the wireless network '%s'..."
1061 -msgstr "Intentando conectar con la red inalámbrica «%s»..."
1062 -
1063 -#: ../gnome/applet/applet.c:928
1064 -#, c-format
1065 -msgid "Waiting for Network Key for the wireless network '%s'..."
1066 -msgstr "Esperando la contraseña de red para la red inalámbrica «%s»..."
1067 -
1068 -#: ../gnome/applet/applet.c:936 ../gnome/applet/applet.c:946
1069 -msgid "Requesting a network address from the wired network..."
1070 -msgstr "Solicitando una dirección de red a la red cableada..."
1071 -
1072 -#: ../gnome/applet/applet.c:938 ../gnome/applet/applet.c:948
1073 -#, c-format
1074 -msgid "Requesting a network address from the wireless network '%s'..."
1075 -msgstr "Solicitando una dirección de red a la red inalámbrica «%s»..."
1076 -
1077 -#: ../gnome/applet/applet.c:956
1078 -msgid "Finishing connection to the wired network..."
1079 -msgstr "Deteniendo la conexión a la red cableada..."
1080 -
1081 -#: ../gnome/applet/applet.c:958
1082 -#, c-format
1083 -msgid "Finishing connection to the wireless network '%s'..."
1084 -msgstr "Deteniendo la conexión a la red inalámbrica «%s»..."
1085 -
1086 -#: ../gnome/applet/applet.c:1075
1087 -msgid "NetworkManager is not running"
1088 -msgstr "NetworkManager no se está ejecutando"
1089 -
1090 -#: ../gnome/applet/applet.c:1083 ../gnome/applet/applet.c:1828
1091 -msgid "Networking disabled"
1092 -msgstr "Red desactivada"
1093 -
1094 -#: ../gnome/applet/applet.c:1088
1095 -msgid "No network connection"
1096 -msgstr "Sin conexión de red"
1097 -
1098 -#: ../gnome/applet/applet.c:1093
1099 -msgid "Wired network connection"
1100 -msgstr "Conexión de red cableada"
1101 -
1102 -#: ../gnome/applet/applet.c:1097
1103 -msgid "Connected to an Ad-Hoc wireless network"
1104 -msgstr "Conectado con una red inalámbrica Ad-Hoc"
1105 -
1106 -#: ../gnome/applet/applet.c:1099
1107 -#, c-format
1108 -msgid "Wireless network connection to '%s' (%d%%)"
1109 -msgstr "Conexión de red inalámbrica a «%s» (%d%%)"
1110 -
1111 -#: ../gnome/applet/applet.c:1120
1112 -#, c-format
1113 -msgid "VPN connection to '%s'"
1114 -msgstr "Conexión VPN a «%s»"
1115 -
1116 -#: ../gnome/applet/applet.c:1128
1117 -#, c-format
1118 -msgid "VPN connecting to '%s'"
1119 -msgstr "VPN conectando a «%s»"
1120 -
1121 -#: ../gnome/applet/applet.c:1541
1122 -msgid "_Connect to Other Wireless Network..."
1123 -msgstr "_Conectar a otra red inalámbrica..."
1124 -
1125 -#: ../gnome/applet/applet.c:1562
1126 -msgid "Create _New Wireless Network..."
1127 -msgstr "Crear una red inalámbrica _nueva..."
1128 -
1129 -#: ../gnome/applet/applet.c:1685
1130 -msgid "_VPN Connections"
1131 -msgstr "Conexiones _VPN"
1132 -
1133 -#: ../gnome/applet/applet.c:1730
1134 -msgid "_Configure VPN..."
1135 -msgstr "_Configurar VPN..."
1136 -
1137 -#: ../gnome/applet/applet.c:1734
1138 -msgid "_Disconnect VPN..."
1139 -msgstr "_Desconectar VPN..."
1140 -
1141 -#: ../gnome/applet/applet.c:1756
1142 -msgid "_Dial Up Connections"
1143 -msgstr "Conexiones de _marcado"
1144 -
1145 -#. FIXME: We should save and then check the state of the devices and show Connect _or_ Disconnect for each item
1146 -#: ../gnome/applet/applet.c:1767
1147 -#, c-format
1148 -msgid "Connect to %s..."
1149 -msgstr "Conectar a %s..."
1150 -
1151 -#: ../gnome/applet/applet.c:1773
1152 -#, c-format
1153 -msgid "Disconnect from %s..."
1154 -msgstr "Desconectar de %s..."
1155 -
1156 -#: ../gnome/applet/applet.c:1822
1157 -msgid "No network devices have been found"
1158 -msgstr "No se ha encontrado ningún dispositivo de red"
1159 -
1160 -#: ../gnome/applet/applet.c:2014
1161 -msgid "NetworkManager is not running..."
1162 -msgstr "NetworkManager no se está ejecutando..."
1163 -
1164 -#. 'Enable Networking' item
1165 -#: ../gnome/applet/applet.c:2170
1166 -msgid "Enable _Networking"
1167 -msgstr "Activar _red"
1168 -
1169 -#. 'Enable Wireless' item
1170 -#: ../gnome/applet/applet.c:2176
1171 -msgid "Enable _Wireless"
1172 -msgstr "Activar _inalámbrico"
1173 -
1174 -#. 'Connection Information' item
1175 -#: ../gnome/applet/applet.c:2182
1176 -msgid "Connection _Information"
1177 -msgstr "_Información de la conexión"
1178 -
1179 -#. Help item
1180 -#: ../gnome/applet/applet.c:2193
1181 -msgid "_Help"
1182 -msgstr "A_yuda"
1183 -
1184 -#. About item
1185 -#: ../gnome/applet/applet.c:2202
1186 -msgid "_About"
1187 -msgstr "A_cerca de"
1188 -
1189 -#: ../gnome/applet/applet.c:2667
1190 -msgid ""
1191 -"The NetworkManager applet could not find some required resources.  It cannot "
1192 -"continue.\n"
1193 -msgstr ""
1194 -"La miniaplicación NetworkManager no pudo encontrar algunos recursos "
1195 -"necesarios. No se puede continuar.\n"
1196 -
1197 -#: ../gnome/applet/wireless-security-option.c:157
1198 -msgid "Open System"
1199 -msgstr "Sistema abierto"
1200 -
1201 -#: ../gnome/applet/wireless-security-option.c:160
1202 -msgid "Shared Key"
1203 -msgstr "Clave compartida"
1204 -
1205 -#: ../gnome/applet/wireless-security-option.c:208
1206 -msgid "Automatic (Default)"
1207 -msgstr "Automático (Predeterminado)"
1208 -
1209 -#: ../gnome/applet/wireless-security-option.c:215
1210 -msgid "AES-CCMP"
1211 -msgstr "AES-CCMP"
1212 -
1213 -#: ../gnome/applet/wireless-security-option.c:223
1214 -msgid "TKIP"
1215 -msgstr "TKIP"
1216 -
1217 -#: ../gnome/applet/wireless-security-option.c:231
1218 -msgid "Dynamic WEP"
1219 -msgstr "WEP dinámico"
1220 -
1221 -#: ../gnome/applet/wso-none.c:53
1222 -msgid "None"
1223 -msgstr "Ninguno"
1224 -
1225 -#: ../gnome/applet/wso-wep-ascii.c:138
1226 -msgid "WEP 64/128-bit ASCII"
1227 -msgstr "ASCII WEP de 64/128 bits"
1228 -
1229 -#: ../gnome/applet/wso-wep-hex.c:135
1230 -msgid "WEP 64/128-bit Hex"
1231 -msgstr "Hexadecimal WEP de 64/128 bits"
1232 -
1233 -#: ../gnome/applet/wso-wep-passphrase.c:135
1234 -msgid "WEP 128-bit Passphrase"
1235 -msgstr "Frase de contraseña WEP de 128 bits"
1236 -
1237 -#: ../gnome/applet/wso-wpa-eap.c:237
1238 -msgid "PEAP"
1239 -msgstr "PEAP"
1240 -
1241 -#: ../gnome/applet/wso-wpa-eap.c:238
1242 -msgid "TLS"
1243 -msgstr "TLS"
1244 -
1245 -#: ../gnome/applet/wso-wpa-eap.c:239
1246 -msgid "TTLS"
1247 -msgstr "TTLS"
1248 -
1249 -#: ../gnome/applet/wso-wpa-eap.c:247 ../src/nm-ap-security-wpa-eap.c:92
1250 -#: ../src/nm-ap-security-wpa-eap.c:116
1251 -msgid "WPA2 Enterprise"
1252 -msgstr "WPA2 empresarial"
1253 -
1254 -#: ../gnome/applet/wso-wpa-eap.c:249 ../src/nm-ap-security-wpa-eap.c:94
1255 -#: ../src/nm-ap-security-wpa-eap.c:121
1256 -msgid "WPA Enterprise"
1257 -msgstr "WPA empresarial"
1258 -
1259 -#: ../gnome/applet/wso-wpa-psk.c:178
1260 -msgid "WPA2 Personal"
1261 -msgstr "WPA2 Personal"
1262 -
1263 -#: ../gnome/applet/wso-wpa-psk.c:180
1264 -msgid "WPA Personal"
1265 -msgstr "WPA Personal"
1266 -
1267 -#: ../gnome/applet/eggtrayicon.c:134
1268 -msgid "Orientation"
1269 -msgstr "Orientación"
1270 -
1271 -#: ../gnome/applet/eggtrayicon.c:135
1272 -msgid "The orientation of the tray."
1273 -msgstr "La orientación del área de notificación."
1274 -
1275 -#: ../gnome/applet/menu-items.c:88
1276 -#, c-format
1277 -msgid "Wired Network (%s)"
1278 -msgstr "Red cableada (%s)"
1279 -
1280 -#: ../gnome/applet/menu-items.c:91
1281 -msgid "_Wired Network"
1282 -msgstr "Red _cableada"
1283 -
1284 -#: ../gnome/applet/menu-items.c:162
1285 -#, c-format
1286 -msgid "Wireless Network (%s)"
1287 -msgid_plural "Wireless Networks (%s)"
1288 -msgstr[0] "Red inalámbrica (%s)"
1289 -msgstr[1] "Redes inalámbricas (%s)"
1290 -
1291 -#: ../gnome/applet/menu-items.c:164
1292 -msgid "Wireless Network"
1293 -msgid_plural "Wireless Networks"
1294 -msgstr[0] "Red inalámbrica"
1295 -msgstr[1] "Redes inalámbricas"
1296 -
1297 -#: ../gnome/applet/menu-items.c:343
1298 -msgid " (invalid Unicode)"
1299 -msgstr " (Unicode inválido)"
1300 -
1301 -#: ../gnome/applet/other-network-dialog.c:352
1302 -#, c-format
1303 -msgid ""
1304 -"By default, the wireless network's name is set to your computer's name, %s, "
1305 -"with no encryption enabled"
1306 -msgstr ""
1307 -"Por omisión, el nombre de la red inalámbrica se establece al nombre de su "
1308 -"equipo, %s, sin ninguna encriptación activada"
1309 -
1310 -#: ../gnome/applet/other-network-dialog.c:358
1311 -msgid "Create new wireless network"
1312 -msgstr "Crea una red inalámbricas nueva"
1313 -
1314 -#: ../gnome/applet/other-network-dialog.c:359
1315 -msgid ""
1316 -"Enter the name and security settings of the wireless network you wish to "
1317 -"create."
1318 -msgstr ""
1319 -"Introduzca el nombre y las opciones de seguridad de la red inalámbrica que "
1320 -"quiere crear."
1321 -
1322 -#: ../gnome/applet/other-network-dialog.c:363
1323 -msgid "Create New Wireless Network"
1324 -msgstr "Crear una red inalámbrica nueva"
1325 -
1326 -#: ../gnome/applet/other-network-dialog.c:368
1327 -msgid "Existing wireless network"
1328 -msgstr "Red inalámbrica existente"
1329 -
1330 -#: ../gnome/applet/other-network-dialog.c:369
1331 -msgid "Enter the name of the wireless network to which you wish to connect."
1332 -msgstr ""
1333 -"Introduzca el nombre de la red inalámbrica con la que quiere conectarse."
1334 -
1335 -#: ../gnome/applet/other-network-dialog.c:371
1336 -msgid "Connect to Other Wireless Network"
1337 -msgstr "Conectar a otra red inalámbrica"
1338 -
1339 -#: ../gnome/applet/passphrase-dialog.c:215
1340 -msgid "Error connecting to wireless network"
1341 -msgstr "Error al conectar a la red inalámbrica"
1342 -
1343 -#: ../gnome/applet/passphrase-dialog.c:216
1344 -msgid ""
1345 -"The requested wireless network requires security capabilities unsupported by "
1346 -"your hardware."
1347 -msgstr ""
1348 -"La red inalámbrica solicitada requiere capacidades de seguridad que su "
1349 -"hardware no proporciona."
1350 -
1351 -#: ../gnome/applet/vpn-password-dialog.c:151
1352 -#: ../gnome/applet/vpn-password-dialog.c:188
1353 -#, c-format
1354 -msgid "Cannot start VPN connection '%s'"
1355 -msgstr "No se puede iniciar la conexión VPN «%s»"
1356 -
1357 -#: ../gnome/applet/vpn-password-dialog.c:154
1358 -#, c-format
1359 -msgid ""
1360 -"Could not find the authentication dialog for VPN connection type '%s'. "
1361 -"Contact your system administrator."
1362 -msgstr ""
1363 -"No se ha podido encontrar el diálogo de autenticación para el tipo de "
1364 -"conexión VPN «%s». Póngase en contacto con su administrador de sistemas."
1365 -
1366 -#: ../gnome/applet/vpn-password-dialog.c:191
1367 -#, c-format
1368 -msgid ""
1369 -"There was a problem launching the authentication dialog for VPN connection "
1370 -"type '%s'. Contact your system administrator."
1371 -msgstr ""
1372 -"Ha habido un problema al iniciar el diálogo de autenticación para el tipo de "
1373 -"conexión VPN «%s». Póngase en contacto con su administrador de sistemas."
1374 -
1375 -#: ../gnome/applet/applet.glade.h:1
1376 -msgid " "
1377 -msgstr " "
1378 -
1379 -#: ../gnome/applet/applet.glade.h:2
1380 -msgid ""
1381 -"<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
1382 -msgstr ""
1383 -"<span weight=\"bold\" size=\"larger\">Información de la conexión activa</"
1384 -"span>"
1385 -
1386 -#: ../gnome/applet/applet.glade.h:4
1387 -#, no-c-format
1388 -msgid ""
1389 -"<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
1390 -"Network</span>\n"
1391 -"\n"
1392 -"A passphrase or encryption key is required to access the wireless network '%"
1393 -"s'."
1394 -msgstr ""
1395 -"<span weight=\"bold\" size=\"larger\">Contraseña requerida por red "
1396 -"inalámbrica</span>\n"
1397 -"\n"
1398 -"Se requiere una frase de paso o clave de encriptación para acceder a la red "
1399 -"inalámbrica «%s»."
1400 -
1401 -#: ../gnome/applet/applet.glade.h:8
1402 -#, no-c-format
1403 -msgid ""
1404 -"<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</span>\n"
1405 -"\n"
1406 -"%s  It will not be completely functional."
1407 -msgstr ""
1408 -"<span weight=\"bold\" size=\"larger\">Funcionalidad de red reducida</span>\n"
1409 -"\n"
1410 -"%s No será completamente funcional."
1411 -
1412 -#: ../gnome/applet/applet.glade.h:12
1413 -#, no-c-format
1414 -msgid ""
1415 -"<span weight=\"bold\" size=\"larger\">Wireless Network Login Confirmation</"
1416 -"span>\n"
1417 -"\n"
1418 -"You have chosen to log in to the wireless network '%s'.  If you are sure "
1419 -"that this wireless network is secure, click the checkbox below and "
1420 -"NetworkManager will not require confirmation on subsequent log ins."
1421 -msgstr ""
1422 -"<span weight=\"bold\" size=\"larger\">Confirmación de entrada a la red "
1423 -"inalámbrica</span>\n"
1424 -"\n"
1425 -"Ha escogido entrar en la red inalámbrica «%s».  Si está seguro de que esta "
1426 -"red es segura, marque la casilla de abajo y NetworkManager no le volverá a "
1427 -"solicitar confirmación en los siguientes accesos."
1428 -
1429 -#: ../gnome/applet/applet.glade.h:15
1430 -msgid "Anonymous Identity:"
1431 -msgstr "Identidad anónima:"
1432 -
1433 -#: ../gnome/applet/applet.glade.h:16
1434 -msgid "Authentication:"
1435 -msgstr "Autenticación:"
1436 -
1437 -#: ../gnome/applet/applet.glade.h:17
1438 -msgid "Broadcast Address:"
1439 -msgstr "Dirección de difusión:"
1440 -
1441 -#: ../gnome/applet/applet.glade.h:18
1442 -msgid "CA Certificate File:"
1443 -msgstr "Archivo de certificado de CA:"
1444 -
1445 -#: ../gnome/applet/applet.glade.h:19
1446 -msgid "C_onnect"
1447 -msgstr "_Conectar"
1448 -
1449 -#: ../gnome/applet/applet.glade.h:20
1450 -msgid "Client Certificate File:"
1451 -msgstr "Archivo de certificado de cliente:"
1452 -
1453 -#: ../gnome/applet/applet.glade.h:21
1454 -msgid "Connection Information"
1455 -msgstr "Información de la conexión"
1456 -
1457 -#: ../gnome/applet/applet.glade.h:22
1458 -msgid "Default Route:"
1459 -msgstr "Ruta predeterminada:"
1460 -
1461 -#: ../gnome/applet/applet.glade.h:23
1462 -msgid "Destination Address:"
1463 -msgstr "Dirección de destino:"
1464 -
1465 -#: ../gnome/applet/applet.glade.h:24
1466 -msgid "Driver:"
1467 -msgstr "Controlador:"
1468 -
1469 -#: ../gnome/applet/applet.glade.h:25
1470 -msgid "EAP Method:"
1471 -msgstr "Método EAP:"
1472 -
1473 -#: ../gnome/applet/applet.glade.h:26
1474 -msgid "Hardware Address:"
1475 -msgstr "Dirección hardware:"
1476 -
1477 -#: ../gnome/applet/applet.glade.h:27
1478 -msgid "IP Address:"
1479 -msgstr "Dirección IP:"
1480 -
1481 -#: ../gnome/applet/applet.glade.h:28
1482 -msgid "Identity:"
1483 -msgstr "Identidad:"
1484 -
1485 -#: ../gnome/applet/applet.glade.h:29
1486 -msgid "Interface:"
1487 -msgstr "Interfaz:"
1488 -
1489 -#: ../gnome/applet/applet.glade.h:30
1490 -msgid "Key Type:"
1491 -msgstr "Tipo de clave:"
1492 -
1493 -#: ../gnome/applet/applet.glade.h:31
1494 -msgid "Key:"
1495 -msgstr "Clave:"
1496 -
1497 -#: ../gnome/applet/applet.glade.h:32
1498 -msgid ""
1499 -"None\n"
1500 -"WEP 128-bit Passphrase\n"
1501 -"WEP 64/128-bit Hex\n"
1502 -"WEP 64/128-bit ASCII\n"
1503 -msgstr ""
1504 -"Ninguna\n"
1505 -"Frase de contraseña WEP de 128 bits\n"
1506 -"Hexadecimal WEP de 64/128 bits\n"
1507 -"ASCII WEP de 64/128 bits\n"
1508 -
1509 -#: ../gnome/applet/applet.glade.h:37
1510 -msgid ""
1511 -"Open System\n"
1512 -"Shared Key"
1513 -msgstr ""
1514 -"Sistema abierto\n"
1515 -"Clave compartida"
1516 -
1517 -#: ../gnome/applet/applet.glade.h:39
1518 -msgid "Other Wireless Network..."
1519 -msgstr "Otras redes inalámbricas..."
1520 -
1521 -#: ../gnome/applet/applet.glade.h:40
1522 -msgid "Passphrase:"
1523 -msgstr "Contraseña:"
1524 -
1525 -#: ../gnome/applet/applet.glade.h:41
1526 -msgid "Password:"
1527 -msgstr "Contraseña:"
1528 -
1529 -#: ../gnome/applet/applet.glade.h:42
1530 -msgid "Primary DNS:"
1531 -msgstr "DNS primario:"
1532 -
1533 -#: ../gnome/applet/applet.glade.h:43
1534 -msgid "Private Key File:"
1535 -msgstr "Archivo de clave privada:"
1536 -
1537 -#: ../gnome/applet/applet.glade.h:44
1538 -msgid "Private Key Password:"
1539 -msgstr "Contraseña de clave privada:"
1540 -
1541 -#: ../gnome/applet/applet.glade.h:45
1542 -msgid "Secondary DNS:"
1543 -msgstr "DNS secundario:"
1544 -
1545 -#: ../gnome/applet/applet.glade.h:46
1546 -msgid "Select the CA Certificate File"
1547 -msgstr "Seleccione el archivo de certificado de CA"
1548 -
1549 -#: ../gnome/applet/applet.glade.h:47
1550 -msgid "Select the Client Certificate File"
1551 -msgstr "Seleccione el archivo de certificado de cliente"
1552 -
1553 -#: ../gnome/applet/applet.glade.h:48
1554 -msgid "Select the Private Key File"
1555 -msgstr "Seleccione el archivo de clave privada"
1556 -
1557 -#: ../gnome/applet/applet.glade.h:49
1558 -msgid "Show key"
1559 -msgstr "Mostrar clave"
1560 -
1561 -#: ../gnome/applet/applet.glade.h:50
1562 -msgid "Show passphrase"
1563 -msgstr "Mostrar frase de contraseña"
1564 -
1565 -#: ../gnome/applet/applet.glade.h:51
1566 -msgid "Show password"
1567 -msgstr "Mostrar contraseña"
1568 -
1569 -#: ../gnome/applet/applet.glade.h:52
1570 -msgid "Show passwords"
1571 -msgstr "Mostrar contraseñas"
1572 -
1573 -#: ../gnome/applet/applet.glade.h:53
1574 -msgid "Speed:"
1575 -msgstr "Velocidad:"
1576 -
1577 -#: ../gnome/applet/applet.glade.h:54
1578 -msgid "Subnet Mask:"
1579 -msgstr "Máscara de subred:"
1580 -
1581 -#: ../gnome/applet/applet.glade.h:55
1582 -msgid "Type:"
1583 -msgstr "Tipo:"
1584 -
1585 -#: ../gnome/applet/applet.glade.h:56
1586 -msgid "User Name:"
1587 -msgstr "Nombre de usuario:"
1588 -
1589 -#: ../gnome/applet/applet.glade.h:57
1590 -msgid "Wireless Network Key Required"
1591 -msgstr "Clave requerida para la red inalámbrica"
1592 -
1593 -#: ../gnome/applet/applet.glade.h:58
1594 -msgid "Wireless _adapter:"
1595 -msgstr "_Adaptador inalámbrico:"
1596 -
1597 -#: ../gnome/applet/applet.glade.h:59
1598 -msgid "_Always Trust this Wireless Network"
1599 -msgstr "_Siempre confiar en esta red inalámbrica"
1600 -
1601 -#: ../gnome/applet/applet.glade.h:60
1602 -msgid "_Don't remind me again"
1603 -msgstr "_No volver a recordar"
1604 -
1605 -#: ../gnome/applet/applet.glade.h:61
1606 -msgid "_Login to Network"
1607 -msgstr "_Entrar en la red"
1608 -
1609 -#: ../gnome/applet/applet.glade.h:62
1610 -msgid "_Network Name:"
1611 -msgstr "Nombre de _red:"
1612 -
1613 -#: ../gnome/applet/applet.glade.h:63
1614 -msgid "_Wireless Security:"
1615 -msgstr "_Seguridad inalámbrica:"
1616 -
1617 -#: ../gnome/vpn-properties/nm-vpn-properties.c:383
1618 +#: ../gnome/vpn-properties/nm-vpn-properties.c:405
1619  msgid "Cannot add VPN connection"
1620  msgstr "No se puede añadir una conexión VPN"
1621  
1622 -#: ../gnome/vpn-properties/nm-vpn-properties.c:385
1623 +#: ../gnome/vpn-properties/nm-vpn-properties.c:407
1624  msgid ""
1625  "No suitable VPN software was found on your system. Contact your system "
1626  "administrator."
1627 @@ -738,11 +33,11 @@
1628  "No se ha encontrado software VPN adecuado en su sistema. Póngase en contacto "
1629  "con su administrador de sistemas."
1630  
1631 -#: ../gnome/vpn-properties/nm-vpn-properties.c:437
1632 +#: ../gnome/vpn-properties/nm-vpn-properties.c:457
1633  msgid "Cannot import VPN connection"
1634  msgstr "No se puede importar la conexión VPN"
1635  
1636 -#: ../gnome/vpn-properties/nm-vpn-properties.c:439
1637 +#: ../gnome/vpn-properties/nm-vpn-properties.c:459
1638  #, c-format
1639  msgid ""
1640  "Cannot find suitable software for VPN connection type '%s' to import the "
1641 @@ -752,12 +47,12 @@
1642  "s» para importar el archivo «%s». Póngase en contacto con su administrador "
1643  "de sistemas."
1644  
1645 -#: ../gnome/vpn-properties/nm-vpn-properties.c:579
1646 +#: ../gnome/vpn-properties/nm-vpn-properties.c:596
1647  #, c-format
1648  msgid "Error retrieving VPN connection '%s'"
1649  msgstr "Ha ocurrido un error al recuperar la conexión VPN «%s»"
1650  
1651 -#: ../gnome/vpn-properties/nm-vpn-properties.c:582
1652 +#: ../gnome/vpn-properties/nm-vpn-properties.c:599
1653  #, c-format
1654  msgid ""
1655  "Could not find the UI files for VPN connection type '%s'. Contact your "
1656 @@ -766,12 +61,12 @@
1657  "No se han encontrado los archivos de la IU para la conexión VPN de tipo «%"
1658  "s». Póngase en contacto con su administrador de sistemas."
1659  
1660 -#: ../gnome/vpn-properties/nm-vpn-properties.c:739
1661 +#: ../gnome/vpn-properties/nm-vpn-properties.c:746
1662  #, c-format
1663  msgid "Delete VPN connection \"%s\"?"
1664  msgstr "¿Desea eliminar la conexión VPN «%s»?"
1665  
1666 -#: ../gnome/vpn-properties/nm-vpn-properties.c:742
1667 +#: ../gnome/vpn-properties/nm-vpn-properties.c:749
1668  #, c-format
1669  msgid ""
1670  "All information about the VPN connection \"%s\" will be lost and you may "
1671 @@ -781,16 +76,16 @@
1672  "Se perderá toda la información de la conexión VPN «%s» y necesitará que su "
1673  "administrador de sistemas le proporcione información para crear una conexión."
1674  
1675 -#: ../gnome/vpn-properties/nm-vpn-properties.c:959
1676 +#: ../gnome/vpn-properties/nm-vpn-properties.c:963
1677  msgid "Unable to load"
1678  msgstr "No se puede cargar"
1679  
1680 -#: ../gnome/vpn-properties/nm-vpn-properties.c:961
1681 +#: ../gnome/vpn-properties/nm-vpn-properties.c:965
1682  msgid "Cannot find some needed resources (the glade file)!"
1683  msgstr "No se pueden encontrar algunos recursos necesarios (el archivo glade)."
1684  
1685  #. Edit dialog
1686 -#: ../gnome/vpn-properties/nm-vpn-properties.c:1071
1687 +#: ../gnome/vpn-properties/nm-vpn-properties.c:1084
1688  msgid "Edit VPN Connection"
1689  msgstr "Editar conexión VPN"
1690  
1691 @@ -896,105 +191,53 @@
1692  msgid "WPA2 Automatic"
1693  msgstr "WPA2 automática"
1694  
1695 -#: ../src/nm-ap-security.c:320
1696 +#: ../src/nm-ap-security.c:338
1697  msgid "none"
1698  msgstr "ninguna"
1699  
1700 -#: ../src/nm-netlink-monitor.c:154
1701 +#: ../src/nm-netlink-monitor.c:170
1702  #, c-format
1703 -msgid ""
1704 -"unable to create netlink socket for monitoring wired ethernet devices - %s"
1705 +msgid "unable to create netlink socket for monitoring wired ethernet devices - %s"
1706  msgstr ""
1707  "no puede crear un socket netlink para monitorizar dispositivos ethernet con "
1708  "cable - %s"
1709  
1710 -#: ../src/nm-netlink-monitor.c:172
1711 +#: ../src/nm-netlink-monitor.c:188
1712  #, c-format
1713 -msgid ""
1714 -"unable to bind to netlink socket for monitoring wired ethernet devices - %s"
1715 +msgid "unable to bind to netlink socket for monitoring wired ethernet devices - %s"
1716  msgstr ""
1717  "no se puede asociar al socket netlink para monitorizar dispositivos ethernet "
1718  "con cable - %s"
1719  
1720 -#: ../src/nm-netlink-monitor.c:405
1721 +#: ../src/nm-netlink-monitor.c:426
1722  msgid "operation took too long"
1723  msgstr "la operación duró demasiado"
1724  
1725 -#: ../src/nm-netlink-monitor.c:502
1726 +#: ../src/nm-netlink-monitor.c:523
1727  msgid "received data from wrong type of sender"
1728  msgstr "se han recibido datos con un tipo de emisor incorrecto"
1729  
1730 -#: ../src/nm-netlink-monitor.c:515
1731 +#: ../src/nm-netlink-monitor.c:536
1732  msgid "received data from unexpected sender"
1733  msgstr "se han recibido datos de un emisor inesperado"
1734  
1735 -#: ../src/nm-netlink-monitor.c:646
1736 +#: ../src/nm-netlink-monitor.c:665
1737  msgid "too much data was sent over socket and some of it was lost"
1738 -msgstr ""
1739 -"se han enviado demasiados datos a través del socket y algunos de perdieron"
1740 +msgstr "se han enviado demasiados datos a través del socket y algunos de perdieron"
1741  
1742 -#: ../src/nm-netlink-monitor.c:735
1743 +#: ../src/nm-netlink-monitor.c:775
1744  msgid "error occurred while waiting for data on socket"
1745  msgstr "ha ocurrido un error mientras esperaban datos en un socket"
1746  
1747 -#: ../gnome/applet/applet-dbus-devices.c:898
1748 -#, c-format
1749 -msgid "You are now connected to the Ad-Hoc wireless network '%s'."
1750 -msgstr "Ahora está conectado a la red inalámbrica Ad Hoc %s."
1751 -
1752 -#: ../gnome/applet/applet-dbus-devices.c:903
1753 -#, c-format
1754 -msgid "You are now connected to the wireless network '%s'."
1755 -msgstr "Ahora está conectado a la red inalámbrica %s."
1756 -
1757 -#: ../gnome/applet/applet-dbus-devices.c:910
1758 -msgid "You are now connected to the wired network."
1759 -msgstr "Ahora está conectado a la red fija."
1760 -
1761 -#: ../gnome/applet/applet-dbus-devices.c:916
1762 -msgid "Connection Established"
1763 -msgstr "Conexión establecida"
1764 -
1765 -#: ../gnome/applet/applet-dbus-devices.c:959
1766 -msgid "Disconnected"
1767 -msgstr "Desconectado"
1768 -
1769 -#: ../gnome/applet/applet-dbus-devices.c:960
1770 -msgid "The network connection has been disconnected."
1771 -msgstr "La conexión de red se ha desconectado."
1772 -
1773 -#~ msgid "Stop automatically running the networking applet?"
1774 -#~ msgstr "¿Desea detener la ejecución automática del applet de red?"
1775 -
1776 -#~ msgid ""
1777 -#~ "The networking applet will now terminate, but will automatically launch "
1778 -#~ "the next time you login.  Would you like to stop automatically running "
1779 -#~ "the networking applet on login?"
1780 -#~ msgstr ""
1781 -#~ "El applet de red se cerrará ahora, pero se iniciará automáticamente la "
1782 -#~ "próxima vez que inicie sesión. ¿Desea detener la ejecución automática del "
1783 -#~ "applet de red al inicio de sesión?"
1784 -
1785 -#~ msgid "_Remove"
1786 -#~ msgstr "_Eliminar"
1787 -
1788 -#~ msgid "VPN Error"
1789 -#~ msgstr "Error de VPN"
1790 -
1791 -#~ msgid "The VPN service said: \"%s\""
1792 -#~ msgstr "El servicio VPN ha devuelto el mensaje:«%s»"
1793 -
1794 -#~ msgid "VPN connection '%s' said:"
1795 -#~ msgstr "La conexión VPN «%s» ha devuelto el siguiente mensaje:"
1796 -
1797 -#~ msgid "leap_subwindow"
1798 -#~ msgstr "leap_subwindow"
1799 +#: ../src/nm-ap-security-wpa-eap.c:96 ../src/nm-ap-security-wpa-eap.c:120
1800 +msgid "WPA2 Enterprise"
1801 +msgstr "WPA2 empresarial"
1802  
1803 -#~ msgid "wep_key_subwindow"
1804 -#~ msgstr "wep_key_subwindow"
1805 +#: ../src/nm-ap-security-wpa-eap.c:98 ../src/nm-ap-security-wpa-eap.c:125
1806 +msgid "WPA Enterprise"
1807 +msgstr "WPA empresarial"
1808  
1809 -#~ msgid "wep_passphrase_subwindow"
1810 -#~ msgstr "wep_passphrase_subwindow"
1811 +#: ../src/nm-ap-security-leap.c:66 ../src/nm-ap-security-leap.c:82
1812 +msgid "LEAP"
1813 +msgstr "LEAP"
1814  
1815 -#~ msgid "wpa_psk_subwindow"
1816 -#~ msgstr "wpa_psk_subwindow"
1817 diff -urN NetworkManager-0.6.5/po/et.po NetworkManager-SVNr3284/po/et.po
1818 --- NetworkManager-0.6.5/po/et.po       1970-01-01 01:00:00.000000000 +0100
1819 +++ NetworkManager-SVNr3284/po/et.po    2008-02-04 16:01:02.000000000 +0100
1820 @@ -0,0 +1,215 @@
1821 +# GNOME NetworkManager
1822 +# Copyright (C) 2007 The GNOME Project.
1823 +# This file is distributed under the same license as the NetworkManager package.
1824 +# Priit Laes <amd@store20.com>, 2007.
1825 +# Mattias Põldaru <mattias@gmail.com>, 2007.
1826 +#
1827 +msgid ""
1828 +msgstr ""
1829 +"Project-Id-Version: NetworkManager 0.6\n"
1830 +"Report-Msgid-Bugs-To: \n"
1831 +"POT-Creation-Date: 2007-10-28 16:09+0000\n"
1832 +"PO-Revision-Date: 2007-10-31 23:13+0300\n"
1833 +"Last-Translator: Mattias Põldaru <mahfiaz@gmail.com>\n"
1834 +"Language-Team: Estonian <gnome-et@linux.ee>\n"
1835 +"MIME-Version: 1.0\n"
1836 +"Content-Type: text/plain; charset=utf-8\n"
1837 +"Content-Transfer-Encoding: 8bit\n"
1838 +
1839 +#: ../gnome/vpn-properties/nm-vpn-properties.c:405
1840 +msgid "Cannot add VPN connection"
1841 +msgstr "VPN ühendust ei saa lisada"
1842 +
1843 +#: ../gnome/vpn-properties/nm-vpn-properties.c:407
1844 +msgid "No suitable VPN software was found on your system. Contact your system administrator."
1845 +msgstr "Arvutist ei leitud sobilikku VPN tarkvara. Võta ühendus oma süsteemi administraatoriga."
1846 +
1847 +#: ../gnome/vpn-properties/nm-vpn-properties.c:457
1848 +msgid "Cannot import VPN connection"
1849 +msgstr "VPN ühendust ei saa importida"
1850 +
1851 +#: ../gnome/vpn-properties/nm-vpn-properties.c:459
1852 +#, c-format
1853 +msgid "Cannot find suitable software for VPN connection type '%s' to import the file '%s'. Contact your system administrator."
1854 +msgstr "'%s' tüüpi VPN ühenduse tarkvara ei leitud, et importida faili '%s'. Võta ühendust oma süsteemi administraatoriga."
1855 +
1856 +#: ../gnome/vpn-properties/nm-vpn-properties.c:596
1857 +#, c-format
1858 +msgid "Error retrieving VPN connection '%s'"
1859 +msgstr "Viga VPN ühenduse '%s' otsimisel"
1860 +
1861 +#: ../gnome/vpn-properties/nm-vpn-properties.c:599
1862 +#, c-format
1863 +msgid "Could not find the UI files for VPN connection type '%s'. Contact your system administrator."
1864 +msgstr "'%s' tüüpi VPN ühenduse jaoks ei leitud kasutajaliidese faile. Võta ühendust oma süsteemi administraatoriga."
1865 +
1866 +#: ../gnome/vpn-properties/nm-vpn-properties.c:746
1867 +#, c-format
1868 +msgid "Delete VPN connection \"%s\"?"
1869 +msgstr "Kas kustutada VPN ühendus \"%s\"?"
1870 +
1871 +#: ../gnome/vpn-properties/nm-vpn-properties.c:749
1872 +#, c-format
1873 +msgid "All information about the VPN connection \"%s\" will be lost and you may need your system administrator to provide information to create a new connection."
1874 +msgstr "Kõik VPN ühendusega \"%s\" seotud info läheb kaotsi ja sul võib vaja minna süsteemi administraatori abi uue ühenduse loomisel."
1875 +
1876 +#: ../gnome/vpn-properties/nm-vpn-properties.c:963
1877 +msgid "Unable to load"
1878 +msgstr "Ei saa laadida"
1879 +
1880 +#: ../gnome/vpn-properties/nm-vpn-properties.c:965
1881 +msgid "Cannot find some needed resources (the glade file)!"
1882 +msgstr "Ei leia vajalikke allikaid (glade fail)!"
1883 +
1884 +#. Edit dialog
1885 +#: ../gnome/vpn-properties/nm-vpn-properties.c:1084
1886 +msgid "Edit VPN Connection"
1887 +msgstr "Muuda VPN ühendust"
1888 +
1889 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:1
1890 +msgid "Add a new VPN connection"
1891 +msgstr "Lisa uus VPN ühendus"
1892 +
1893 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:2
1894 +msgid "Choose which type of VPN connection you wish to create."
1895 +msgstr "Vali mis tüüpi VPN ühendust sa tahad luua."
1896 +
1897 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:3
1898 +msgid "Connect to:"
1899 +msgstr "Ühendu kuhu:"
1900 +
1901 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:4
1902 +msgid "Create VPN Connection"
1903 +msgstr "VPN ühenduse loomine"
1904 +
1905 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:5
1906 +msgid "Create VPN Connection - 1 of 2"
1907 +msgstr "VPN ühenduse loomine - 1 / 2"
1908 +
1909 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:6
1910 +msgid "Create VPN Connection - 2 of 2"
1911 +msgstr "VPN ühenduse loomine - 2 / 2"
1912 +
1913 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:7
1914 +msgid "Delete the selected VPN connection"
1915 +msgstr "Kustuta valitud VPN ühendus"
1916 +
1917 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:8
1918 +msgid "E_xport"
1919 +msgstr "E_kspordi"
1920 +
1921 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:9
1922 +msgid "Edit the selected VPN connection"
1923 +msgstr "Muuda valitud VPN ühendust"
1924 +
1925 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:10
1926 +msgid "Export the VPN settings to a file"
1927 +msgstr "VPN-i seadete eksportimine faili"
1928 +
1929 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:11
1930 +msgid "Export the selected VPN connection to a file"
1931 +msgstr "Valitud VPN-i eksportimine faili"
1932 +
1933 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:12
1934 +msgid "Finish Creating VPN Connection"
1935 +msgstr "Lõpeta VPN ühenduse loomine"
1936 +
1937 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:13
1938 +msgid "Manage Virtual Private Network Connections"
1939 +msgstr "Virtuaalsete eravõrkude ühenduste haldamine"
1940 +
1941 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:14
1942 +msgid ""
1943 +"This assistant will guide you through the creation of a connection to a Virtual Private Network (VPN).\n"
1944 +"\n"
1945 +"It will require some information, such as IP addresses and secrets.  Please see your system administrator to obtain this information."
1946 +msgstr ""
1947 +"See assistent juhatab sind Virtuaalse eravõrgu loomisel.\n"
1948 +"\n"
1949 +"See vajab infot nagu IP aadressid ja salasõnad. Selle info hankimiseks võta ühendust oma süsteemi administraatoriga."
1950 +
1951 +#: ../gnome/vpn-properties/nm-vpn-properties.glade.h:17
1952 +msgid "VPN Connections"
1953 +msgstr "VPN ühendused"
1954 +
1955 +#: ../src/nm-ap-security-wep.c:52
1956 +msgid "40-bit WEP"
1957 +msgstr "40 bitine WEP"
1958 +
1959 +#: ../src/nm-ap-security-wep.c:54
1960 +msgid "104-bit WEP"
1961 +msgstr "104 bitine WEP"
1962 +
1963 +#: ../src/nm-ap-security-wpa-psk.c:50
1964 +msgid "WPA TKIP"
1965 +msgstr "WPA TKIP"
1966 +
1967 +#: ../src/nm-ap-security-wpa-psk.c:52
1968 +msgid "WPA CCMP"
1969 +msgstr "WPA CCMP"
1970 +
1971 +#: ../src/nm-ap-security-wpa-psk.c:54
1972 +msgid "WPA Automatic"
1973 +msgstr "Automaatne WPA"
1974 +
1975 +#: ../src/nm-ap-security-wpa-psk.c:59
1976 +msgid "WPA2 TKIP"
1977 +msgstr "WPA2 TKIP"
1978 +
1979 +#: ../src/nm-ap-security-wpa-psk.c:61
1980 +msgid "WPA2 CCMP"
1981 +msgstr "WPA2 CCMP"
1982 +
1983 +#: ../src/nm-ap-security-wpa-psk.c:63
1984 +msgid "WPA2 Automatic"
1985 +msgstr "Automaatne WPA2"
1986 +
1987 +#: ../src/nm-ap-security.c:338
1988 +msgid "none"
1989 +msgstr "ei ükski"
1990 +
1991 +#: ../src/nm-netlink-monitor.c:170
1992 +#, c-format
1993 +msgid "unable to create netlink socket for monitoring wired ethernet devices - %s"
1994 +msgstr "ei suudeta luua netlink soklit juhtmega võrguühenduse monitoorimiseks - %s"
1995 +
1996 +#: ../src/nm-netlink-monitor.c:188
1997 +#, c-format
1998 +msgid "unable to bind to netlink socket for monitoring wired ethernet devices - %s"
1999 +msgstr "ei suudeta luua netlink soklit juhtmega võrguühenduse sidumiseks - %s"
2000 +
2001 +#: ../src/nm-netlink-monitor.c:426
2002 +msgid "operation took too long"
2003 +msgstr "operatsiooniks kulus liiga palju aega"
2004 +
2005 +#: ../src/nm-netlink-monitor.c:523
2006 +msgid "received data from wrong type of sender"
2007 +msgstr "vastuvõetud andmed on valet tüüpi saatjalt"
2008 +
2009 +#: ../src/nm-netlink-monitor.c:536
2010 +msgid "received data from unexpected sender"
2011 +msgstr "vastuvõetud andmed on ootamatult saatjalt"
2012 +
2013 +#: ../src/nm-netlink-monitor.c:665
2014 +msgid "too much data was sent over socket and some of it was lost"
2015 +msgstr "sokli kaudu saadeti liiga palju andmeid ning osa sellest läks kaotsi"
2016 +
2017 +#: ../src/nm-netlink-monitor.c:775
2018 +msgid "error occurred while waiting for data on socket"
2019 +msgstr "soklist andmete ootamisel tekkis viga"
2020 +
2021 +#: ../src/nm-ap-security-wpa-eap.c:95
2022 +#: ../src/nm-ap-security-wpa-eap.c:119
2023 +msgid "WPA2 Enterprise"
2024 +msgstr "Enterprise WPA2"
2025 +
2026 +#: ../src/nm-ap-security-wpa-eap.c:97
2027 +#: ../src/nm-ap-security-wpa-eap.c:124
2028 +msgid "WPA Enterprise"
2029 +msgstr "Enterprise WPA"
2030 +
2031 +#: ../src/nm-ap-security-leap.c:66
2032 +#: ../src/nm-ap-security-leap.c:82
2033 +msgid "LEAP"
2034 +msgstr "LEAP"
2035 +
2036 diff -urN NetworkManager-0.6.5/po/fi.po NetworkManager-SVNr3284/po/fi.po
2037 --- NetworkManager-0.6.5/po/fi.po       2007-04-18 20:13:10.000000000 +0200
2038 +++ NetworkManager-SVNr3284/po/fi.po    2008-02-04 16:01:02.000000000 +0100
2039 @@ -8,7 +8,7 @@
2040  msgstr ""
2041  "Project-Id-Version: NetworkManager\n"
2042  "Report-Msgid-Bugs-To: \n"
2043 -"POT-Creation-Date: 2006-05-29 18:33+0200\n"
2044 +"POT-Creation-Date: 2007-08-16 17:52+0300\n"
2045  "PO-Revision-Date: 2006-02-28 22:15+0200\n"
2046  "Last-Translator: Ilkka Tuohela <hile@iki.fi>\n"
2047  "Language-Team: Finnish <gnome-fi-laatu@lists.sourceforge.net>\n"
2048 @@ -17,709 +17,11 @@
2049  "Content-Transfer-Encoding: 8bit\n"
2050  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
2051  
2052 -#: ../gnome/applet/applet-compat.c:171 ../gnome/applet/applet-dbus-info.c:919
2053 -#, c-format
2054 -msgid "Passphrase for wireless network %s"
2055 -msgstr "Langattoman verkon %s tunnuslause"
2056 -
2057 -#: ../gnome/applet/applet-dbus.c:265
2058 -#, c-format
2059 -msgid "Connection to the wireless network '%s' failed."
2060 -msgstr "Yhteys langattomaan verkkoon \"%s\" epäonnistui."
2061 -
2062 -#: ../gnome/applet/applet-dbus.c:270
2063 -msgid "Connection to the wired network failed."
2064 -msgstr "Yhteys kiinteään verkkoon epäonnistui."
2065 -
2066 -#: ../gnome/applet/applet.c:184
2067 -msgid "Error displaying connection information:"
2068 -msgstr "Virhe näytettäessä yhteyden tietoja:"
2069 -
2070 -#: ../gnome/applet/applet.c:202
2071 -msgid "Could not find some required resources (the glade file)!"
2072 -msgstr "Joitain vaadittuja osia ei löytynyt (glade-tiedostoa)!"
2073 -
2074 -#: ../gnome/applet/applet.c:213
2075 -msgid "No active connections!"
2076 -msgstr "Ei aktiivisia yhteyksiä!"
2077 -
2078 -#: ../gnome/applet/applet.c:234
2079 -#, c-format
2080 -msgid "Wired Ethernet (%s)"
2081 -msgstr "Kiinteä Ethernet-yhteys (%s)"
2082 -
2083 -#: ../gnome/applet/applet.c:236
2084 -#, c-format
2085 -msgid "Wireless Ethernet (%s)"
2086 -msgstr "Langaton Ethernet (%s)"
2087 -
2088 -#: ../gnome/applet/applet.c:337 ../gnome/applet/applet.c:362
2089 -msgid "NetworkManager Applet"
2090 -msgstr "NetworkManager-sovelma"
2091 -
2092 -#: ../gnome/applet/applet.c:339 ../gnome/applet/applet.c:364
2093 -msgid "Copyright © 2004-2005 Red Hat, Inc."
2094 -msgstr "Copyright © 2004-2005 Red Hat, Inc."
2095 -
2096 -#: ../gnome/applet/applet.c:340 ../gnome/applet/applet.c:365
2097 -msgid ""
2098 -"Notification area applet for managing your network devices and connections."
2099 -msgstr "Ilmoitusalueen sovelma verkkolaitteiden ja yhteyksien hallintaan."
2100 -
2101 -#: ../gnome/applet/applet.c:343 ../gnome/applet/applet.c:370
2102 -msgid "translator-credits"
2103 -msgstr ""
2104 -"Ilkka Tuohela, 2005.\n"
2105 -"\n"
2106 -"http://www.gnome.fi/"
2107 -
2108 -#: ../gnome/applet/applet.c:426
2109 -msgid "VPN Login Failure"
2110 -msgstr "Virhe kirjauduttaessa VPN:ään"
2111 -
2112 -#: ../gnome/applet/applet.c:427
2113 -#, c-format
2114 -msgid "Could not start the VPN connection '%s' due to a login failure."
2115 -msgstr "VPN-yhteyttä \"%s\" ei voitu käynnistää kirjautumisvirheen takia."
2116 -
2117 -#: ../gnome/applet/applet.c:431
2118 -msgid "VPN Start Failure"
2119 -msgstr "VPN-yhteyden käynnistysvirhe"
2120 -
2121 -#: ../gnome/applet/applet.c:432
2122 -#, c-format
2123 -msgid ""
2124 -"Could not start the VPN connection '%s' due to a failure launching the VPN "
2125 -"program."
2126 -msgstr ""
2127 -"VPN-yhteyttä \"%s\" ei voitu käynnistää, koska VPN-ohjelman suorittaminen "
2128 -"epäonnistui."
2129 -
2130 -#: ../gnome/applet/applet.c:436 ../gnome/applet/applet.c:446
2131 -msgid "VPN Connect Failure"
2132 -msgstr "VPN-yhteyden yhteydenottovirhe"
2133 -
2134 -#: ../gnome/applet/applet.c:437
2135 -#, c-format
2136 -msgid "Could not start the VPN connection '%s' due to a connection error."
2137 -msgstr "VPN-yhteyttä \"%s\" ei voitu käynnistää, koska tapahtui yhteysvirhe."
2138 -
2139 -#: ../gnome/applet/applet.c:441
2140 -msgid "VPN Configuration Error"
2141 -msgstr "VPN-yhteyden asetusvirhe"
2142 -
2143 -#: ../gnome/applet/applet.c:442
2144 -#, c-format
2145 -msgid "The VPN connection '%s' was not correctly configured."
2146 -msgstr "VPN-yhteyden \"%s\" asetukset ovat virheelliset."
2147 -
2148 -#: ../gnome/applet/applet.c:447
2149 -#, c-format
2150 -msgid ""
2151 -"Could not start the VPN connection '%s' because the VPN server did not "
2152 -"return an adequate network configuration."
2153 -msgstr ""
2154 -"VPN-yhteyttä \"%s\" ei voitu käynnistää, koska VPN-palvelin ei palauttanut "
2155 -"kelvollista verkkomäärittelyä."
2156 -
2157 -#: ../gnome/applet/applet.c:517
2158 -msgid "VPN Login Message"
2159 -msgstr "VPN-yhteyden kirjautumisviesti"
2160 -
2161 -#: ../gnome/applet/applet.c:741 ../gnome/applet/applet.c:2508
2162 -#: ../gnome/applet/other-network-dialog.c:453
2163 -#: ../gnome/applet/passphrase-dialog.c:228
2164 -msgid ""
2165 -"The NetworkManager Applet could not find some required resources (the glade "
2166 -"file was not found)."
2167 -msgstr ""
2168 -"NetworkManager-sovelma ei voinut ladata jotain vaadituista resursseista "
2169 -"(glade-tiedostoa ei löytynyt)."
2170 -
2171 -#: ../gnome/applet/applet.c:753
2172 -#, c-format
2173 -msgid "The network device \"%s (%s)\" does not support wireless scanning."
2174 -msgstr "Verkkolaite \"%s (%s)\" ei tue langattomien verkkojen etsimistä."
2175 -
2176 -#: ../gnome/applet/applet.c:761
2177 -#, c-format
2178 -msgid "The network device \"%s (%s)\" does not support link detection."
2179 -msgstr "Verkkolaite \"%s (%s)\" ei tue verkkoyhteyden havaitsemista."
2180 -
2181 -#: ../gnome/applet/applet.c:908
2182 -#, c-format
2183 -msgid "Preparing device %s for the wired network..."
2184 -msgstr "Valmistellaan laitetta %s kiinteälle verkkoyhteydelle..."
2185 -
2186 -#: ../gnome/applet/applet.c:910
2187 -#, c-format
2188 -msgid "Preparing device %s for the wireless network '%s'..."
2189 -msgstr "Valmistellaan laitetta %s langattomalle verkolle \"%s\"..."
2190 -
2191 -#: ../gnome/applet/applet.c:918
2192 -#, c-format
2193 -msgid "Configuring device %s for the wired network..."
2194 -msgstr "Määritellään laitetta %s kiinteälle verkkoyhteydelle..."
2195 -
2196 -#: ../gnome/applet/applet.c:920
2197 -#, c-format
2198 -msgid "Attempting to join the wireless network '%s'..."
2199 -msgstr "Yritetään liittyä langattomaan verkkoon \"%s\"..."
2200 -
2201 -#: ../gnome/applet/applet.c:928
2202 -#, c-format
2203 -msgid "Waiting for Network Key for the wireless network '%s'..."
2204 -msgstr "Odotetaan verkon avainta langattomalle verkolle \"%s\""
2205 -
2206 -#: ../gnome/applet/applet.c:936 ../gnome/applet/applet.c:946
2207 -msgid "Requesting a network address from the wired network..."
2208 -msgstr "Pyydetään verkko-osoitetta kiinteästä verkosta..."
2209 -
2210 -#: ../gnome/applet/applet.c:938 ../gnome/applet/applet.c:948
2211 -#, c-format
2212 -msgid "Requesting a network address from the wireless network '%s'..."
2213 -msgstr "Pyydetään verkko-osoitettta langattomasta verkosta \"%s\"..."
2214 -
2215 -#: ../gnome/applet/applet.c:956
2216 -msgid "Finishing connection to the wired network..."
2217 -msgstr "Viimeistellään yhteyttä kiinteään verkkoon..."
2218 -
2219 -#: ../gnome/applet/applet.c:958
2220 -#, c-format
2221 -msgid "Finishing connection to the wireless network '%s'..."
2222 -msgstr "Viimeistellään yhteyttä langattomaan verkkoon \"%s\"..."
2223 -
2224 -#: ../gnome/applet/applet.c:1075
2225 -msgid "NetworkManager is not running"
2226 -msgstr "NetworkManager ei ole käytössä"
2227 -
2228 -#: ../gnome/applet/applet.c:1083 ../gnome/applet/applet.c:1828
2229 -msgid "Networking disabled"
2230 -msgstr "Verkko ei ole käytössä"
2231 -
2232 -#: ../gnome/applet/applet.c:1088
2233 -msgid "No network connection"
2234 -msgstr "Ei verkkoyhteyttä"
2235 -
2236 -#: ../gnome/applet/applet.c:1093
2237 -msgid "Wired network connection"
2238 -msgstr "Kiinteä verkkoyhteys"
2239 -
2240 -#: ../gnome/applet/applet.c:1097
2241 -msgid "Connected to an Ad-Hoc wireless network"
2242 -msgstr "Yhteys langattomaan Ad-Hoc-verkkoon"
2243 -
2244 -#: ../gnome/applet/applet.c:1099
2245 -#, c-format
2246 -msgid "Wireless network connection to '%s' (%d%%)"
2247 -msgstr "Langaton verkkoyhteys \"%s\" (%d%%)"
2248 -
2249 -#: ../gnome/applet/applet.c:1120
2250 -#, c-format
2251 -msgid "VPN connection to '%s'"
2252 -msgstr "VPN-yhteys \"%s\""
2253 -
2254 -#: ../gnome/applet/applet.c:1128
2255 -#, c-format
2256 -msgid "VPN connecting to '%s'"
2257 -msgstr "VPN-yhteyttä \"%s\" avataan"
2258 -
2259 -#: ../gnome/applet/applet.c:1541
2260 -msgid "_Connect to Other Wireless Network..."
2261 -msgstr "_Yhdistä muihin langattomiin verkkoihin..."
2262 -
2263 -#: ../gnome/applet/applet.c:1562
2264 -msgid "Create _New Wireless Network..."
2265 -msgstr "Luo _uusi langaton verkko..."
2266 -
2267 -#: ../gnome/applet/applet.c:1685
2268 -msgid "_VPN Connections"
2269 -msgstr "_VPN-yhteydet"
2270 -
2271 -#: ../gnome/applet/applet.c:1730
2272 -msgid "_Configure VPN..."
2273 -msgstr "_Määrittele VPN-yhteys..."
2274 -
2275 -#: ../gnome/applet/applet.c:1734
2276 -msgid "_Disconnect VPN..."
2277 -msgstr "_Katkaise VPN-yhteys..."
2278 -
2279 -#: ../gnome/applet/applet.c:1756
2280 -msgid "_Dial Up Connections"
2281 -msgstr "_Modeemiyhteydet"
2282 -
2283 -#. FIXME: We should save and then check the state of the devices and show Connect _or_ Disconnect for each item
2284 -#: ../gnome/applet/applet.c:1767
2285 -#, c-format
2286 -msgid "Connect to %s..."
2287 -msgstr "Ota yhteyttä kohteeseen %s..."
2288 -
2289 -#: ../gnome/applet/applet.c:1773
2290 -#, c-format
2291 -msgid "Disconnect from %s..."
2292 -msgstr "Katkaise yhteys kohteeseen %s..."
2293 -
2294 -#: ../gnome/applet/applet.c:1822
2295 -msgid "No network devices have been found"
2296 -msgstr "Verkkolaitteita ei löytynyt"
2297 -
2298 -#: ../gnome/applet/applet.c:2014
2299 -msgid "NetworkManager is not running..."
2300 -msgstr "NetworkManager ei ole käytössä..."
2301 -
2302 -#. 'Enable Networking' item
2303 -#: ../gnome/applet/applet.c:2170
2304 -msgid "Enable _Networking"
2305 -msgstr "Ota _verkko käyttöön"
2306 -
2307 -#. 'Enable Wireless' item
2308 -#: ../gnome/applet/applet.c:2176
2309 -msgid "Enable _Wireless"
2310 -msgstr "Ota _langaton käyttöön"
2311 -
2312 -#. 'Connection Information' item
2313 -#: ../gnome/applet/applet.c:2182
2314 -msgid "Connection _Information"
2315 -msgstr "Tietoja _yhteydestä"
2316 -
2317 -#. Help item
2318 -#: ../gnome/applet/applet.c:2193
2319 -msgid "_Help"
2320 -msgstr "O_hje"
2321 -
2322 -#. About item
2323 -#: ../gnome/applet/applet.c:2202
2324 -msgid "_About"
2325 -msgstr "_Tietoja"
2326 -
2327 -#: ../gnome/applet/applet.c:2667
2328 -msgid ""
2329 -"The NetworkManager applet could not find some required resources.  It cannot "
2330 -"continue.\n"
2331 -msgstr ""
2332 -"NetworkManager-sovelma ei löytänyt joitain vaadituista resursseista eikä "
2333 -"pysty jatkamaan.\n"
2334 -
2335 -#: ../gnome/applet/wireless-security-option.c:157
2336 -msgid "Open System"
2337 -msgstr "Avoin järjestelmä"
2338 -
2339 -#: ../gnome/applet/wireless-security-option.c:160
2340 -msgid "Shared Key"
2341 -msgstr "Jaettu avain"
2342 -
2343 -#: ../gnome/applet/wireless-security-option.c:208
2344 -msgid "Automatic (Default)"
2345 -msgstr "Automaattinen (oletus)"
2346 -
2347 -#: ../gnome/applet/wireless-security-option.c:215
2348 -msgid "AES-CCMP"
2349 -msgstr "AES-CCMP"
2350 -
2351 -#: ../gnome/applet/wireless-security-option.c:223
2352 -msgid "TKIP"
2353 -msgstr "TKIP"
2354 -
2355 -#: ../gnome/applet/wireless-security-option.c:231
2356 -msgid "Dynamic WEP"
2357 -msgstr "Dynaaminen WEP"
2358 -
2359 -#: ../gnome/applet/wso-none.c:53
2360 -msgid "None"
2361 -msgstr "Ei mitään"
2362 -
2363 -#: ../gnome/applet/wso-wep-ascii.c:138
2364 -msgid "WEP 64/128-bit ASCII"
2365 -msgstr "WEP 64/128-bittinen ASCII"
2366 -
2367 -#: ../gnome/applet/wso-wep-hex.c:135
2368 -msgid "WEP 64/128-bit Hex"
2369 -msgstr "WEP 64/128-bittinen heksadesimaali"
2370 -
2371 -#: ../gnome/applet/wso-wep-passphrase.c:135
2372 -msgid "WEP 128-bit Passphrase"
2373 -msgstr "WEP 128-bittinen tunnuslause"
2374 -
2375 -#: ../gnome/applet/wso-wpa-eap.c:237
2376 -msgid "PEAP"
2377 -msgstr "PEAP"
2378 -
2379 -#: ../gnome/applet/wso-wpa-eap.c:238
2380 -msgid "TLS"
2381 -msgstr "TLS"
2382 -
2383 -#: ../gnome/applet/wso-wpa-eap.c:239
2384 -msgid "TTLS"
2385 -msgstr "TTLS"
2386 -
2387 -#: ../gnome/applet/wso-wpa-eap.c:247 ../src/nm-ap-security-wpa-eap.c:92
2388 -#: ../src/nm-ap-security-wpa-eap.c:116
2389 -msgid "WPA2 Enterprise"
2390 -msgstr "WPA2 Enterprise"
2391 -
2392 -#: ../gnome/applet/wso-wpa-eap.c:249 ../src/nm-ap-security-wpa-eap.c:94
2393 -#: ../src/nm-ap-security-wpa-eap.c:121
2394 -msgid "WPA Enterprise"
2395 -msgstr "WPA Enterprise"
2396 -
2397 -#: ../gnome/applet/wso-wpa-psk.c:178
2398 -msgid "WPA2 Personal"
2399 -msgstr "WPA2 (henkilökohtainen)"
2400 -
2401 -#: ../gnome/applet/wso-wpa-psk.c:180
2402 -msgid "WPA Personal"
2403 -msgstr "WPA (henkilökohtainen)"
2404 -
2405 -#: ../gnome/applet/eggtrayicon.c:134
2406 -msgid "Orientation"
2407 -msgstr "Suunta"
2408 -
2409 -#: ../gnome/applet/eggtrayicon.c:135
2410 -msgid "The orientation of the tray."
2411 -msgstr "Ilmoitusalueen suunta."
2412 -
2413 -#: ../gnome/applet/menu-items.c:88
2414 -#, c-format
2415 -msgid "Wired Network (%s)"
2416 -msgstr "Kiinteä verkkoyhteys (%s)"
2417 -
2418 -#: ../gnome/applet/menu-items.c:91
2419 -msgid "_Wired Network"
2420 -msgstr "_Kiinteä verkkoyhteys"
2421 -
2422 -#: ../gnome/applet/menu-items.c:162
2423 -#, c-format
2424 -msgid "Wireless Network (%s)"
2425 -msgid_plural "Wireless Networks (%s)"
2426 -msgstr[0] "Langaton verkko (%s)"
2427 -msgstr[1] "Langattomat verkot (%s)"
2428 -
2429 -#: ../gnome/applet/menu-items.c:164
2430 -msgid "Wireless Network"
2431 -msgid_plural "Wireless Networks"
2432 -msgstr[0] "Langaton verkko"
2433 -msgstr[1] "Langattomat verkot"
2434 -
2435 -#: ../gnome/applet/menu-items.c:343
2436 -msgid " (invalid Unicode)"
2437 -msgstr " (virheellistä Unicodea)"
2438 -
2439 -#: ../gnome/applet/other-network-dialog.c:352
2440 -#, c-format
2441 -msgid ""
2442 -"By default, the wireless network's name is set to your computer's name, %s, "
2443 -"with no encryption enabled"
2444 -msgstr ""
2445 -"Oletuksena langattoman verkon nimi asetetaan samaksi kuin tietokoneesi nimi "
2446 -"\"%s\" ja salaus on poissa käytöstä"
2447 -
2448 -#: ../gnome/applet/other-network-dialog.c:358
2449 -msgid "Create new wireless network"
2450 -msgstr "Luo uusi langaton verkko"
2451 -
2452 -#: ../gnome/applet/other-network-dialog.c:359
2453 -msgid ""
2454 -"Enter the name and security settings of the wireless network you wish to "
2455 -"create."
2456 -msgstr "Syötä luotavan langattoman verkon nimi ja turva-asetukset."
2457 -
2458 -#: ../gnome/applet/other-network-dialog.c:363
2459 -msgid "Create New Wireless Network"
2460 -msgstr "Luo uusi langaton verkko"
2461 -
2462 -#: ../gnome/applet/other-network-dialog.c:368
2463 -msgid "Existing wireless network"
2464 -msgstr "Olemassaoleva langaton verkko"
2465 -
2466 -#: ../gnome/applet/other-network-dialog.c:369
2467 -msgid "Enter the name of the wireless network to which you wish to connect."
2468 -msgstr "Syötä sen langattoman verkon nimi, johon haluat ottaa yhteyttä."
2469 -
2470 -#: ../gnome/applet/other-network-dialog.c:371
2471 -msgid "Connect to Other Wireless Network"
2472 -msgstr "Ota yhteyttä muuhun langattomaan verkkoon"
2473 -
2474 -#: ../gnome/applet/passphrase-dialog.c:215
2475 -msgid "Error connecting to wireless network"
2476 -msgstr "Virhe yhdistettäessä langattomaan verkkoon"
2477 -
2478 -#: ../gnome/applet/passphrase-dialog.c:216
2479 -msgid ""
2480 -"The requested wireless network requires security capabilities unsupported by "
2481 -"your hardware."
2482 -msgstr ""
2483 -"Pyydetty langaton verkko vaatii tietoturvakykyjä, joita laitteistosi ei tue."
2484 -
2485 -#: ../gnome/applet/vpn-password-dialog.c:151
2486 -#: ../gnome/applet/vpn-password-dialog.c:188
2487 -#, c-format
2488 -msgid "Cannot start VPN connection '%s'"
2489 -msgstr "VPN-yhteyttä \"%s\" ei voida käynnistää"
2490 -
2491 -#: ../gnome/applet/vpn-password-dialog.c:154
2492 -#, c-format
2493 -msgid ""
2494 -"Could not find the authentication dialog for VPN connection type '%s'. "
2495 -"Contact your system administrator."
2496 -msgstr ""
2497 -"Kirjautumisikkunaa VPN-yhteyden tyypille \"%s\" ei löydy. Ota yhteyttä "
2498 -"järjestelmäsi ylläpitäjään."
2499 -
2500 -#: ../gnome/applet/vpn-password-dialog.c:191
2501 -#, c-format
2502 -msgid ""
2503 -"There was a problem launching the authentication dialog for VPN connection "
2504 -"type '%s'. Contact your system administrator."
2505 -msgstr ""
2506 -"Virhe käynnistettäessä kirjatumisikkunaa VPN-yhteyden tyypille \"%s\". Ota "
2507 -"yhteyttä järjestelmäsi ylläpitäjään."
2508 -
2509 -#: ../gnome/applet/applet.glade.h:1
2510 -msgid " "
2511 -msgstr " "
2512 -
2513 -#: ../gnome/applet/applet.glade.h:2
2514 -msgid ""
2515 -"<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
2516 -msgstr ""
2517 -"<span weight=\"bold\" size=\"larger\">Tietoja aktiivisesta yhteydestä</span>"
2518 -
2519 -#: ../gnome/applet/applet.glade.h:4
2520 -#, no-c-format
2521 -msgid ""
2522 -"<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
2523 -"Network</span>\n"
2524 -"\n"
2525 -"A passphrase or encryption key is required to access the wireless network '%"
2526 -"s'."
2527 -msgstr ""
2528 -"<span weight=\"bold\" size=\"larger\">Langaton verkko vaatii tunnuslausetta</"
2529 -"span>\n"
2530 -"\n"
2531 -"Tunnuslause tai salausavain vaaditaan, jotta voit ottaa yhteyttä "
2532 -"langattomaan verkkoon %s."
2533 -
2534 -#: ../gnome/applet/applet.glade.h:8
2535 -#, no-c-format
2536 -msgid ""
2537 -"<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</span>\n"
2538 -"\n"
2539 -"%s  It will not be completely functional."
2540 -msgstr ""
2541 -"<span weight=\"bold\" size=\"larger\">Rajattu verkon toiminnallisuus</span>\n"
2542 -"\n"
2543 -"%s  Verkkoyhteys ei ole täysin toimiva."
2544 -
2545 -#: ../gnome/applet/applet.glade.h:12
2546 -#, no-c-format
2547 -msgid ""
2548 -"<span weight=\"bold\" size=\"larger\">Wireless Network Login Confirmation</"
2549 -"span>\n"
2550 -"\n"
2551 -"You have chosen to log in to the wireless network '%s'.  If you are sure "
2552 -"that this wireless network is secure, click the checkbox below and "
2553 -"NetworkManager will not require confirmation on subsequent log ins."
2554 -msgstr ""
2555 -"<span weight=\"bold\" size=\"larger\">Langattoman yhteyden kirjatumisen "
2556 -"vahvistus</span>\n"
2557 -"\n"
2558 -"Olet ottamassa yhteyttä langattomaan verkkoon \"%s\". Jos olet varma, että "
2559 -"tämä langaton verkko on turvallinen, napsauta alla olevaa ruutua ja "
2560 -"NetworkManager ei kysy tätä vahvistusikkunaa enää uudestaan."
2561 -
2562 -#: ../gnome/applet/applet.glade.h:15
2563 -msgid "Anonymous Identity:"
2564 -msgstr "Anonyymi tunniste:"
2565 -
2566 -#: ../gnome/applet/applet.glade.h:16
2567 -msgid "Authentication:"
2568 -msgstr "Tunnistautuminen:"
2569 -
2570 -#: ../gnome/applet/applet.glade.h:17
2571 -msgid "Broadcast Address:"
2572 -msgstr "Broadcast-osoite:"
2573 -
2574 -#: ../gnome/applet/applet.glade.h:18
2575 -msgid "CA Certificate File:"
2576 -msgstr "CA-varmenteen tiedosto:"
2577 -
2578 -#: ../gnome/applet/applet.glade.h:19
2579 -msgid "C_onnect"
2580 -msgstr "_Yhdistä"
2581 -
2582 -#: ../gnome/applet/applet.glade.h:20
2583 -msgid "Client Certificate File:"
2584 -msgstr "Asiakasvarmenteen tiedosto:"
2585 -
2586 -#: ../gnome/applet/applet.glade.h:21
2587 -msgid "Connection Information"
2588 -msgstr "Tietoja yhteydestä"
2589 -
2590 -#: ../gnome/applet/applet.glade.h:22
2591 -msgid "Default Route:"
2592 -msgstr "Oletusyhdyskäytävä:"
2593 -
2594 -#: ../gnome/applet/applet.glade.h:23
2595 -msgid "Destination Address:"
2596 -msgstr "Kohdeosoite:"
2597 -
2598 -#: ../gnome/applet/applet.glade.h:24
2599 -msgid "Driver:"
2600 -msgstr "Ajuri:"
2601 -
2602 -#: ../gnome/applet/applet.glade.h:25
2603 -msgid "EAP Method:"
2604 -msgstr "EPA-menetelmä:"
2605 -
2606 -#: ../gnome/applet/applet.glade.h:26
2607 -msgid "Hardware Address:"
2608 -msgstr "Laiteosoite:"
2609 -
2610 -#: ../gnome/applet/applet.glade.h:27
2611 -msgid "IP Address:"
2612 -msgstr "IP-osoite:"
2613 -
2614 -#: ../gnome/applet/applet.glade.h:28
2615 -msgid "Identity:"
2616 -msgstr "Tunniste:"
2617 -
2618 -#: ../gnome/applet/applet.glade.h:29
2619 -msgid "Interface:"
2620 -msgstr "Verkkolaite:"
2621 -
2622 -#: ../gnome/applet/applet.glade.h:30
2623 -msgid "Key Type:"
2624 -msgstr "Avaimen tyyppi:"
2625 -
2626 -#: ../gnome/applet/applet.glade.h:31
2627 -msgid "Key:"
2628 -msgstr "Avain:"
2629 -
2630 -#: ../gnome/applet/applet.glade.h:32
2631 -msgid ""
2632 -"None\n"
2633 -"WEP 128-bit Passphrase\n"
2634 -"WEP 64/128-bit Hex\n"
2635 -"WEP 64/128-bit ASCII\n"
2636 -msgstr ""
2637 -"Ei mitään\n"
2638 -"WEP 128-bittinen tunnuslause\n"
2639 -"WEP 64/128-bittinen heksadesimaali\n"
2640 -"WEP 64/128-bittinen ASCII\n"
2641 -
2642 -#: ../gnome/applet/applet.glade.h:37
2643 -msgid ""
2644 -"Open System\n"
2645 -"Shared Key"
2646 -msgstr ""
2647 -"Avoin järjestelmä\n"
2648 -"Jaettu avain"
2649 -
2650 -#: ../gnome/applet/applet.glade.h:39
2651 -msgid "Other Wireless Network..."
2652 -msgstr "Muu langaton verkko..."
2653 -
2654 -#: ../gnome/applet/applet.glade.h:40
2655 -msgid "Passphrase:"
2656 -msgstr "Tunnuslause:"
2657 -
2658 -#: ../gnome/applet/applet.glade.h:41
2659 -msgid "Password:"
2660 -msgstr "Salasana:"
2661 -
2662 -#: ../gnome/applet/applet.glade.h:42
2663 -msgid "Primary DNS:"
2664 -msgstr "Ensisijainen DNS:"
2665 -
2666 -#: ../gnome/applet/applet.glade.h:43
2667 -msgid "Private Key File:"
2668 -msgstr "Salausavaimen tiedosto"
2669 -
2670 -#: ../gnome/applet/applet.glade.h:44
2671 -msgid "Private Key Password:"
2672 -msgstr "Salausavaimen salasana:"
2673 -
2674 -#: ../gnome/applet/applet.glade.h:45
2675 -msgid "Secondary DNS:"
2676 -msgstr "Toissijainen DNS:"
2677 -
2678 -#: ../gnome/applet/applet.glade.h:46
2679 -msgid "Select the CA Certificate File"
2680 -msgstr "Valise CA-varmenteen tiedosto"
2681 -
2682 -#: ../gnome/applet/applet.glade.h:47
2683 -msgid "Select the Client Certificate File"
2684 -msgstr "Valitse asiakasvarmenteen tiedosto"
2685 -
2686 -#: ../gnome/applet/applet.glade.h:48
2687 -msgid "Select the Private Key File"
2688 -msgstr "Valitse salaisen avaimen tiedosto"
2689 -
2690 -#: ../gnome/applet/applet.glade.h:49
2691 -msgid "Show key"
2692 -msgstr "Näytä avain"
2693 -
2694 -#: ../gnome/applet/applet.glade.h:50
2695 -msgid "Show passphrase"
2696 -msgstr "Näytä tunnuslause:"
2697 -
2698 -#: ../gnome/applet/applet.glade.h:51
2699 -msgid "Show password"
2700 -msgstr "Näytä salasana"
2701 -
2702 -#: ../gnome/applet/applet.glade.h:52
2703 -msgid "Show passwords"
2704 -msgstr "Näytä salasanat"
2705 -
2706 -#: ../gnome/applet/applet.glade.h:53
2707 -msgid "Speed:"
2708 -msgstr "Nopeus:"
2709 -
2710 -#: ../gnome/applet/applet.glade.h:54
2711 -msgid "Subnet Mask:"
2712 -msgstr "Aliverkkopeite:"
2713 -
2714 -#: ../gnome/applet/applet.glade.h:55
2715 -msgid "Type:"
2716 -msgstr "Tyyppi:"
2717 -
2718 -#: ../gnome/applet/applet.glade.h:56
2719 -msgid "User Name:"
2720 -msgstr "Käyttäjätunnus:"
2721 -
2722 -#: ../gnome/applet/applet.glade.h:57
2723 -msgid "Wireless Network Key Required"
2724 -msgstr "Langattoman verkon salausavain vaaditaan"
2725 -
2726 -#: ../gnome/applet/applet.glade.h:58
2727 -msgid "Wireless _adapter:"
2728 -msgstr "Langaton _verkkolaite:"
2729 -
2730 -#: ../gnome/applet/applet.glade.h:59
2731 -msgid "_Always Trust this Wireless Network"
2732 -msgstr "_Luota aina tähän langattomaan verkkoon"
2733 -
2734 -#: ../gnome/applet/applet.glade.h:60
2735 -msgid "_Don't remind me again"
2736 -msgstr "_Älä huomauta uudestaan"
2737 -
2738 -#: ../gnome/applet/applet.glade.h:61
2739 -msgid "_Login to Network"
2740 -msgstr "_Kirjaudu verkkoon"
2741 -
2742 -#: ../gnome/applet/applet.glade.h:62
2743 -msgid "_Network Name:"
2744 -msgstr "_Verkon nimi:"
2745 -
2746 -#: ../gnome/applet/applet.glade.h:63
2747 -msgid "_Wireless Security:"
2748 -msgstr "_Langaton tietoturva:"
2749 -
2750 -#: ../gnome/vpn-properties/nm-vpn-properties.c:383
2751 +#: ../gnome/vpn-properties/nm-vpn-properties.c:405
2752  msgid "Cannot add VPN connection"
2753  msgstr "VPN-yhteyttä ei voitu lisätä"
2754  
2755 -#: ../gnome/vpn-properties/nm-vpn-properties.c:385
2756 +#: ../gnome/vpn-properties/nm-vpn-properties.c:407
2757  msgid ""
2758  "No suitable VPN software was found on your system. Contact your system "
2759  "administrator."
2760 @@ -727,11 +29,11 @@
2761  "Sopivaa VPN-ohjelmistoa ei löytynyt järjestelmästäsi. Ota yhteyttä "
2762  "järjestelmäsi ylläpitäjään."
2763  
2764 -#: ../gnome/vpn-properties/nm-vpn-properties.c:437
2765 +#: ../gnome/vpn-properties/nm-vpn-properties.c:457
2766  msgid "Cannot import VPN connection"
2767  msgstr "VPN-yhteyttä ei voida tuoda"
2768  
2769 -#: ../gnome/vpn-properties/nm-vpn-properties.c:439
2770 +#: ../gnome/vpn-properties/nm-vpn-properties.c:459
2771  #, c-format
2772  msgid ""
2773  "Cannot find suitable software for VPN connection type '%s' to import the "
2774 @@ -740,12 +42,12 @@
2775  "Sopivaa VPN-ohjelmistoa VPN-yhteyden tyypille \"%s\" ei löydy tuotaessa "
2776  "asetustiedostoa \"%s\". Ota yhteyttä järjestelmäsi ylläpitäjään."
2777  
2778 -#: ../gnome/vpn-properties/nm-vpn-properties.c:579
2779 +#: ../gnome/vpn-properties/nm-vpn-properties.c:596
2780  #, c-format
2781  msgid "Error retrieving VPN connection '%s'"
2782  msgstr "Virhe haettaessa VPN-yhteyttä \"%s\""
2783  
2784 -#: ../gnome/vpn-properties/nm-vpn-properties.c:582
2785 +#: ../gnome/vpn-properties/nm-vpn-properties.c:599
2786  #, c-format
2787  msgid ""
2788  "Could not find the UI files for VPN connection type '%s'. Contact your "
2789 @@ -754,12 +56,12 @@
2790  "VPN-yhteyden tyypille \"%s\" ei löydy käyttöliittymää. Ota yhteyttä "
2791  "järjestelmäsi ylläpitäjään."
2792  
2793 -#: ../gnome/vpn-properties/nm-vpn-properties.c:739
2794 +#: ../gnome/vpn-properties/nm-vpn-properties.c:746
2795  #, c-format
2796  msgid "Delete VPN connection \"%s\"?"
2797  msgstr "Poistetaanko VPN-yhteys \"%s\"?"
2798  
2799 -#: ../gnome/vpn-properties/nm-vpn-properties.c:742
2800 +#: ../gnome/vpn-properties/nm-vpn-properties.c:749
2801  #, c-format
2802  msgid ""
2803  "All information about the VPN connection \"%s\" will be lost and you may "
2804 @@ -770,16 +72,16 @@
2805  "yhteyttä järjestelmäsiylläpitäjään, jotta saat uuden yhteyden luomiseen "
2806  "tarvittavat tiedot."
2807  
2808 -#: ../gnome/vpn-properties/nm-vpn-properties.c:959
2809 +#: ../gnome/vpn-properties/nm-vpn-properties.c:963
2810  msgid "Unable to load"
2811  msgstr "Ei voitu ladata"
2812  
2813 -#: ../gnome/vpn-properties/nm-vpn-properties.c:961
2814 +#: ../gnome/vpn-properties/nm-vpn-properties.c:965
2815  msgid "Cannot find some needed resources (the glade file)!"
2816  msgstr "Jotain tarvittavista resursseista ei löydy (glade-tiedosto)!"
2817  
2818  #. Edit dialog
2819 -#: ../gnome/vpn-properties/nm-vpn-properties.c:1071
2820 +#: ../gnome/vpn-properties/nm-vpn-properties.c:1084
2821  msgid "Edit VPN Connection"
2822  msgstr "Muokkaa VPN-yhteyttä"
2823  
2824 @@ -884,11 +186,11 @@
2825  msgid "WPA2 Automatic"
2826  msgstr "WPA2 (automaattinen)"
2827  
2828 -#: ../src/nm-ap-security.c:320
2829 +#: ../src/nm-ap-security.c:338
2830  msgid "none"
2831  msgstr "ei mitään"
2832  
2833 -#: ../src/nm-netlink-monitor.c:154
2834 +#: ../src/nm-netlink-monitor.c:170
2835  #, c-format
2836  msgid ""
2837  "unable to create netlink socket for monitoring wired ethernet devices - %s"
2838 @@ -896,7 +198,7 @@
2839  "Netlink-pistoketta kiinteiden verkkoyhteyksien tarkkailuun ei voida luoda - %"
2840  "s"
2841  
2842 -#: ../src/nm-netlink-monitor.c:172
2843 +#: ../src/nm-netlink-monitor.c:188
2844  #, c-format
2845  msgid ""
2846  "unable to bind to netlink socket for monitoring wired ethernet devices - %s"
2847 @@ -904,51 +206,569 @@
2848  "Netlink-pistoketta ei voida sitoa kiinteiden verkkoyhteyksien tarkkailua "
2849  "varten - %s"
2850  
2851 -#: ../src/nm-netlink-monitor.c:405
2852 +#: ../src/nm-netlink-monitor.c:426
2853 +#, c-format
2854  msgid "operation took too long"
2855  msgstr "toimenpide kesti liian pitkään"
2856  
2857 -#: ../src/nm-netlink-monitor.c:502
2858 +#: ../src/nm-netlink-monitor.c:523
2859 +#, c-format
2860  msgid "received data from wrong type of sender"
2861  msgstr "vastaanotettiin tietoa väärän tyyppiseltä lähettäjältä"
2862  
2863 -#: ../src/nm-netlink-monitor.c:515
2864 +#: ../src/nm-netlink-monitor.c:536
2865 +#, c-format
2866  msgid "received data from unexpected sender"
2867  msgstr "vastaanotettiin tietoja odottamattomalta lähettäjältä"
2868  
2869 -#: ../src/nm-netlink-monitor.c:646
2870 +#: ../src/nm-netlink-monitor.c:665
2871 +#, c-format
2872  msgid "too much data was sent over socket and some of it was lost"
2873  msgstr "lähetettiin liian paljon tietoja pistekkeeseen ja osaa siitä hukkui"
2874  
2875 -#: ../src/nm-netlink-monitor.c:735
2876 +#: ../src/nm-netlink-monitor.c:775
2877 +#, c-format
2878  msgid "error occurred while waiting for data on socket"
2879  msgstr "virhe odotettaessa tietoja pistokkeesta"
2880  
2881 -#: ../gnome/applet/applet-dbus-devices.c:898
2882 -#, c-format
2883 -msgid "You are now connected to the Ad-Hoc wireless network '%s'."
2884 -msgstr "Yhteys langattomaan Ad-Hoc-verkkoon \"%s\" on nyt muodostettu."
2885 +#: ../src/nm-ap-security-wpa-eap.c:95 ../src/nm-ap-security-wpa-eap.c:119
2886 +msgid "WPA2 Enterprise"
2887 +msgstr "WPA2 Enterprise"
2888  
2889 -#: ../gnome/applet/applet-dbus-devices.c:903
2890 -#, c-format
2891 -msgid "You are now connected to the wireless network '%s'."
2892 -msgstr "Yhteys langattomaan verkkoon \"%s\" on nyt muodostettu."
2893 +#: ../src/nm-ap-security-wpa-eap.c:97 ../src/nm-ap-security-wpa-eap.c:124
2894 +msgid "WPA Enterprise"
2895 +msgstr "WPA Enterprise"
2896 +
2897 +#: ../src/nm-ap-security-leap.c:66 ../src/nm-ap-security-leap.c:82
2898 +msgid "LEAP"
2899 +msgstr "LEAP"
2900 +
2901 +#~ msgid "Passphrase for wireless network %s"
2902 +#~ msgstr "Langattoman verkon %s tunnuslause"
2903 +
2904 +#~ msgid "Connection to the wireless network '%s' failed."
2905 +#~ msgstr "Yhteys langattomaan verkkoon \"%s\" epäonnistui."
2906 +
2907 +#~ msgid "Connection to the wired network failed."
2908 +#~ msgstr "Yhteys kiinteään verkkoon epäonnistui."
2909 +
2910 +#~ msgid "Error displaying connection information:"
2911 +#~ msgstr "Virhe näytettäessä yhteyden tietoja:"
2912 +
2913 +#~ msgid "Could not find some required resources (the glade file)!"
2914 +#~ msgstr "Joitain vaadittuja osia ei löytynyt (glade-tiedostoa)!"
2915 +
2916 +#~ msgid "No active connections!"
2917 +#~ msgstr "Ei aktiivisia yhteyksiä!"
2918 +
2919 +#~ msgid "Wired Ethernet (%s)"
2920 +#~ msgstr "Kiinteä Ethernet-yhteys (%s)"
2921 +
2922 +#~ msgid "Wireless Ethernet (%s)"
2923 +#~ msgstr "Langaton Ethernet (%s)"
2924 +
2925 +#~ msgid "NetworkManager Applet"
2926 +#~ msgstr "NetworkManager-sovelma"
2927 +
2928 +#~ msgid "Copyright © 2004-2005 Red Hat, Inc."
2929 +#~ msgstr "Copyright © 2004-2005 Red Hat, Inc."
2930 +
2931 +#~ msgid ""
2932 +#~ "Notification area applet for managing your network devices and "
2933 +#~ "connections."
2934 +#~ msgstr "Ilmoitusalueen sovelma verkkolaitteiden ja yhteyksien hallintaan."
2935 +
2936 +#~ msgid "translator-credits"
2937 +#~ msgstr ""
2938 +#~ "Ilkka Tuohela, 2005.\n"
2939 +#~ "\n"
2940 +#~ "http://www.gnome.fi/"
2941 +
2942 +#~ msgid "VPN Login Failure"
2943 +#~ msgstr "Virhe kirjauduttaessa VPN:ään"
2944 +
2945 +#~ msgid "Could not start the VPN connection '%s' due to a login failure."
2946 +#~ msgstr "VPN-yhteyttä \"%s\" ei voitu käynnistää kirjautumisvirheen takia."
2947 +
2948 +#~ msgid "VPN Start Failure"
2949 +#~ msgstr "VPN-yhteyden käynnistysvirhe"
2950 +
2951 +#~ msgid ""
2952 +#~ "Could not start the VPN connection '%s' due to a failure launching the "
2953 +#~ "VPN program."
2954 +#~ msgstr ""
2955 +#~ "VPN-yhteyttä \"%s\" ei voitu käynnistää, koska VPN-ohjelman suorittaminen "
2956 +#~ "epäonnistui."
2957 +
2958 +#~ msgid "VPN Connect Failure"
2959 +#~ msgstr "VPN-yhteyden yhteydenottovirhe"
2960 +
2961 +#~ msgid "Could not start the VPN connection '%s' due to a connection error."
2962 +#~ msgstr ""
2963 +#~ "VPN-yhteyttä \"%s\" ei voitu käynnistää, koska tapahtui yhteysvirhe."
2964 +
2965 +#~ msgid "VPN Configuration Error"
2966 +#~ msgstr "VPN-yhteyden asetusvirhe"
2967 +
2968 +#~ msgid "The VPN connection '%s' was not correctly configured."
2969 +#~ msgstr "VPN-yhteyden \"%s\" asetukset ovat virheelliset."
2970 +
2971 +#~ msgid ""
2972 +#~ "Could not start the VPN connection '%s' because the VPN server did not "
2973 +#~ "return an adequate network configuration."
2974 +#~ msgstr ""
2975 +#~ "VPN-yhteyttä \"%s\" ei voitu käynnistää, koska VPN-palvelin ei "
2976 +#~ "palauttanut kelvollista verkkomäärittelyä."
2977 +
2978 +#~ msgid "VPN Login Message"
2979 +#~ msgstr "VPN-yhteyden kirjautumisviesti"
2980 +
2981 +#~ msgid ""
2982 +#~ "The NetworkManager Applet could not find some required resources (the "
2983 +#~ "glade file was not found)."
2984 +#~ msgstr ""
2985 +#~ "NetworkManager-sovelma ei voinut ladata jotain vaadituista resursseista "
2986 +#~ "(glade-tiedostoa ei löytynyt)."
2987 +
2988 +#~ msgid "The network device \"%s (%s)\" does not support wireless scanning."
2989 +#~ msgstr "Verkkolaite \"%s (%s)\" ei tue langattomien verkkojen etsimistä."
2990 +
2991 +#~ msgid "The network device \"%s (%s)\" does not support link detection."
2992 +#~ msgstr "Verkkolaite \"%s (%s)\" ei tue verkkoyhteyden havaitsemista."
2993 +
2994 +#~ msgid "Preparing device %s for the wired network..."
2995 +#~ msgstr "Valmistellaan laitetta %s kiinteälle verkkoyhteydelle..."
2996 +
2997 +#~ msgid "Preparing device %s for the wireless network '%s'..."
2998 +#~ msgstr "Valmistellaan laitetta %s langattomalle verkolle \"%s\"..."
2999 +
3000 +#~ msgid "Configuring device %s for the wired network..."
3001 +#~ msgstr "Määritellään laitetta %s kiinteälle verkkoyhteydelle..."
3002 +
3003 +#~ msgid "Attempting to join the wireless network '%s'..."
3004 +#~ msgstr "Yritetään liittyä langattomaan verkkoon \"%s\"..."
3005 +
3006 +#~ msgid "Waiting for Network Key for the wireless network '%s'..."
3007 +#~ msgstr "Odotetaan verkon avainta langattomalle verkolle \"%s\""
3008 +
3009 +#~ msgid "Requesting a network address from the wired network..."
3010 +#~ msgstr "Pyydetään verkko-osoitetta kiinteästä verkosta..."
3011 +
3012 +#~ msgid "Requesting a network address from the wireless network '%s'..."
3013 +#~ msgstr "Pyydetään verkko-osoitettta langattomasta verkosta \"%s\"..."
3014 +
3015 +#~ msgid "Finishing connection to the wired network..."
3016 +#~ msgstr "Viimeistellään yhteyttä kiinteään verkkoon..."
3017 +
3018 +#~ msgid "Finishing connection to the wireless network '%s'..."
3019 +#~ msgstr "Viimeistellään yhteyttä langattomaan verkkoon \"%s\"..."
3020 +
3021 +#~ msgid "NetworkManager is not running"
3022 +#~ msgstr "NetworkManager ei ole käytössä"
3023 +
3024 +#~ msgid "Networking disabled"
3025 +#~ msgstr "Verkko ei ole käytössä"
3026 +
3027 +#~ msgid "No network connection"
3028 +#~ msgstr "Ei verkkoyhteyttä"
3029 +
3030 +#~ msgid "Wired network connection"
3031 +#~ msgstr "Kiinteä verkkoyhteys"
3032 +
3033 +#~ msgid "Connected to an Ad-Hoc wireless network"
3034 +#~ msgstr "Yhteys langattomaan Ad-Hoc-verkkoon"
3035 +
3036 +#~ msgid "Wireless network connection to '%s' (%d%%)"
3037 +#~ msgstr "Langaton verkkoyhteys \"%s\" (%d%%)"
3038 +
3039 +#~ msgid "VPN connection to '%s'"
3040 +#~ msgstr "VPN-yhteys \"%s\""
3041 +
3042 +#~ msgid "VPN connecting to '%s'"
3043 +#~ msgstr "VPN-yhteyttä \"%s\" avataan"
3044 +
3045 +#~ msgid "_Connect to Other Wireless Network..."
3046 +#~ msgstr "_Yhdistä muihin langattomiin verkkoihin..."
3047 +
3048 +#~ msgid "Create _New Wireless Network..."
3049 +#~ msgstr "Luo _uusi langaton verkko..."
3050 +
3051 +#~ msgid "_VPN Connections"
3052 +#~ msgstr "_VPN-yhteydet"
3053 +
3054 +#~ msgid "_Configure VPN..."
3055 +#~ msgstr "_Määrittele VPN-yhteys..."
3056 +
3057 +#~ msgid "_Disconnect VPN..."
3058 +#~ msgstr "_Katkaise VPN-yhteys..."
3059 +
3060 +#~ msgid "_Dial Up Connections"
3061 +#~ msgstr "_Modeemiyhteydet"
3062 +
3063 +#~ msgid "Connect to %s..."
3064 +#~ msgstr "Ota yhteyttä kohteeseen %s..."
3065 +
3066 +#~ msgid "Disconnect from %s..."
3067 +#~ msgstr "Katkaise yhteys kohteeseen %s..."
3068 +
3069 +#~ msgid "No network devices have been found"
3070 +#~ msgstr "Verkkolaitteita ei löytynyt"
3071 +
3072 +#~ msgid "NetworkManager is not running..."
3073 +#~ msgstr "NetworkManager ei ole käytössä..."
3074 +
3075 +#~ msgid "Enable _Networking"
3076 +#~ msgstr "Ota _verkko käyttöön"
3077 +
3078 +#~ msgid "Enable _Wireless"
3079 +#~ msgstr "Ota _langaton käyttöön"
3080 +
3081 +#~ msgid "Connection _Information"
3082 +#~ msgstr "Tietoja _yhteydestä"
3083 +
3084 +#~ msgid "_Help"
3085 +#~ msgstr "O_hje"
3086 +
3087 +#~ msgid "_About"
3088 +#~ msgstr "_Tietoja"
3089 +
3090 +#~ msgid ""
3091 +#~ "The NetworkManager applet could not find some required resources.  It "
3092 +#~ "cannot continue.\n"
3093 +#~ msgstr ""
3094 +#~ "NetworkManager-sovelma ei löytänyt joitain vaadituista resursseista eikä "
3095 +#~ "pysty jatkamaan.\n"
3096 +
3097 +#~ msgid "Open System"
3098 +#~ msgstr "Avoin järjestelmä"
3099 +
3100 +#~ msgid "Shared Key"
3101 +#~ msgstr "Jaettu avain"
3102 +
3103 +#~ msgid "Automatic (Default)"
3104 +#~ msgstr "Automaattinen (oletus)"
3105 +
3106 +#~ msgid "AES-CCMP"
3107 +#~ msgstr "AES-CCMP"
3108 +
3109 +#~ msgid "TKIP"
3110 +#~ msgstr "TKIP"
3111 +
3112 +#~ msgid "Dynamic WEP"
3113 +#~ msgstr "Dynaaminen WEP"
3114 +
3115 +#~ msgid "None"
3116 +#~ msgstr "Ei mitään"
3117 +
3118 +#~ msgid "WEP 64/128-bit ASCII"
3119 +#~ msgstr "WEP 64/128-bittinen ASCII"
3120 +
3121 +#~ msgid "WEP 64/128-bit Hex"
3122 +#~ msgstr "WEP 64/128-bittinen heksadesimaali"
3123 +
3124 +#~ msgid "WEP 128-bit Passphrase"
3125 +#~ msgstr "WEP 128-bittinen tunnuslause"
3126 +
3127 +#~ msgid "TLS"
3128 +#~ msgstr "TLS"
3129 +
3130 +#~ msgid "TTLS"
3131 +#~ msgstr "TTLS"
3132 +
3133 +#~ msgid "WPA2 Personal"
3134 +#~ msgstr "WPA2 (henkilökohtainen)"
3135 +
3136 +#~ msgid "WPA Personal"
3137 +#~ msgstr "WPA (henkilökohtainen)"
3138 +
3139 +#~ msgid "Orientation"
3140 +#~ msgstr "Suunta"
3141 +
3142 +#~ msgid "The orientation of the tray."
3143 +#~ msgstr "Ilmoitusalueen suunta."
3144 +
3145 +#~ msgid "Wired Network (%s)"
3146 +#~ msgstr "Kiinteä verkkoyhteys (%s)"
3147 +
3148 +#~ msgid "_Wired Network"
3149 +#~ msgstr "_Kiinteä verkkoyhteys"
3150 +
3151 +#~ msgid "Wireless Network (%s)"
3152 +#~ msgid_plural "Wireless Networks (%s)"
3153 +#~ msgstr[0] "Langaton verkko (%s)"
3154 +#~ msgstr[1] "Langattomat verkot (%s)"
3155 +
3156 +#~ msgid "Wireless Network"
3157 +#~ msgid_plural "Wireless Networks"
3158 +#~ msgstr[0] "Langaton verkko"
3159 +#~ msgstr[1] "Langattomat verkot"
3160 +
3161 +#~ msgid " (invalid Unicode)"
3162 +#~ msgstr " (virheellistä Unicodea)"
3163 +
3164 +#~ msgid ""
3165 +#~ "By default, the wireless network's name is set to your computer's name, %"
3166 +#~ "s, with no encryption enabled"
3167 +#~ msgstr ""
3168 +#~ "Oletuksena langattoman verkon nimi asetetaan samaksi kuin tietokoneesi "
3169 +#~ "nimi \"%s\" ja salaus on poissa käytöstä"
3170 +
3171 +#~ msgid "Create new wireless network"
3172 +#~ msgstr "Luo uusi langaton verkko"
3173 +
3174 +#~ msgid ""
3175 +#~ "Enter the name and security settings of the wireless network you wish to "
3176 +#~ "create."
3177 +#~ msgstr "Syötä luotavan langattoman verkon nimi ja turva-asetukset."
3178 +
3179 +#~ msgid "Create New Wireless Network"
3180 +#~ msgstr "Luo uusi langaton verkko"
3181 +
3182 +#~ msgid "Existing wireless network"
3183 +#~ msgstr "Olemassaoleva langaton verkko"
3184 +
3185 +#~ msgid "Enter the name of the wireless network to which you wish to connect."
3186 +#~ msgstr "Syötä sen langattoman verkon nimi, johon haluat ottaa yhteyttä."
3187 +
3188 +#~ msgid "Connect to Other Wireless Network"
3189 +#~ msgstr "Ota yhteyttä muuhun langattomaan verkkoon"
3190 +
3191 +#~ msgid "Error connecting to wireless network"
3192 +#~ msgstr "Virhe yhdistettäessä langattomaan verkkoon"
3193 +
3194 +#~ msgid ""
3195 +#~ "The requested wireless network requires security capabilities unsupported "
3196 +#~ "by your hardware."
3197 +#~ msgstr ""
3198 +#~ "Pyydetty langaton verkko vaatii tietoturvakykyjä, joita laitteistosi ei "
3199 +#~ "tue."
3200 +
3201 +#~ msgid "Cannot start VPN connection '%s'"
3202 +#~ msgstr "VPN-yhteyttä \"%s\" ei voida käynnistää"
3203 +
3204 +#~ msgid ""
3205 +#~ "Could not find the authentication dialog for VPN connection type '%s'. "
3206 +#~ "Contact your system administrator."
3207 +#~ msgstr ""
3208 +#~ "Kirjautumisikkunaa VPN-yhteyden tyypille \"%s\" ei löydy. Ota yhteyttä "
3209 +#~ "järjestelmäsi ylläpitäjään."
3210 +
3211 +#~ msgid ""
3212 +#~ "There was a problem launching the authentication dialog for VPN "
3213 +#~ "connection type '%s'. Contact your system administrator."
3214 +#~ msgstr ""
3215 +#~ "Virhe käynnistettäessä kirjatumisikkunaa VPN-yhteyden tyypille \"%s\". "
3216 +#~ "Ota yhteyttä järjestelmäsi ylläpitäjään."
3217 +
3218 +#~ msgid " "
3219 +#~ msgstr " "
3220 +
3221 +#~ msgid ""
3222 +#~ "<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
3223 +#~ msgstr ""
3224 +#~ "<span weight=\"bold\" size=\"larger\">Tietoja aktiivisesta yhteydestä</"
3225 +#~ "span>"
3226 +
3227 +#~ msgid ""
3228 +#~ "<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
3229 +#~ "Network</span>\n"
3230 +#~ "\n"
3231 +#~ "A passphrase or encryption key is required to access the wireless network "
3232 +#~ "'%s'."
3233 +#~ msgstr ""
3234 +#~ "<span weight=\"bold\" size=\"larger\">Langaton verkko vaatii "
3235 +#~ "tunnuslausetta</span>\n"
3236 +#~ "\n"
3237 +#~ "Tunnuslause tai salausavain vaaditaan, jotta voit ottaa yhteyttä "
3238 +#~ "langattomaan verkkoon %s."
3239 +
3240 +#~ msgid ""
3241 +#~ "<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</"
3242 +#~ "span>\n"
3243 +#~ "\n"
3244 +#~ "%s  It will not be completely functional."
3245 +#~ msgstr ""
3246 +#~ "<span weight=\"bold\" size=\"larger\">Rajattu verkon toiminnallisuus</"
3247 +#~ "span>\n"
3248 +#~ "\n"
3249 +#~ "%s  Verkkoyhteys ei ole täysin toimiva."
3250 +
3251 +#~ msgid ""
3252 +#~ "<span weight=\"bold\" size=\"larger\">Wireless Network Login "
3253 +#~ "Confirmation</span>\n"
3254 +#~ "\n"
3255 +#~ "You have chosen to log in to the wireless network '%s'.  If you are sure "
3256 +#~ "that this wireless network is secure, click the checkbox below and "
3257 +#~ "NetworkManager will not require confirmation on subsequent log ins."
3258 +#~ msgstr ""
3259 +#~ "<span weight=\"bold\" size=\"larger\">Langattoman yhteyden kirjatumisen "
3260 +#~ "vahvistus</span>\n"
3261 +#~ "\n"
3262 +#~ "Olet ottamassa yhteyttä langattomaan verkkoon \"%s\". Jos olet varma, "
3263 +#~ "että tämä langaton verkko on turvallinen, napsauta alla olevaa ruutua ja "
3264 +#~ "NetworkManager ei kysy tätä vahvistusikkunaa enää uudestaan."
3265 +
3266 +#~ msgid "Anonymous Identity:"
3267 +#~ msgstr "Anonyymi tunniste:"
3268 +
3269 +#~ msgid "Authentication:"
3270 +#~ msgstr "Tunnistautuminen:"
3271 +
3272 +#~ msgid "Broadcast Address:"
3273 +#~ msgstr "Broadcast-osoite:"
3274 +
3275 +#~ msgid "CA Certificate File:"
3276 +#~ msgstr "CA-varmenteen tiedosto:"
3277 +
3278 +#~ msgid "C_onnect"
3279 +#~ msgstr "_Yhdistä"
3280 +
3281 +#~ msgid "Client Certificate File:"
3282 +#~ msgstr "Asiakasvarmenteen tiedosto:"
3283 +
3284 +#~ msgid "Connection Information"
3285 +#~ msgstr "Tietoja yhteydestä"
3286 +
3287 +#~ msgid "Default Route:"
3288 +#~ msgstr "Oletusyhdyskäytävä:"
3289 +
3290 +#~ msgid "Destination Address:"
3291 +#~ msgstr "Kohdeosoite:"
3292 +
3293 +#~ msgid "Driver:"
3294 +#~ msgstr "Ajuri:"
3295 +
3296 +#~ msgid "EAP Method:"
3297 +#~ msgstr "EPA-menetelmä:"
3298 +
3299 +#~ msgid "Hardware Address:"
3300 +#~ msgstr "Laiteosoite:"
3301 +
3302 +#~ msgid "IP Address:"
3303 +#~ msgstr "IP-osoite:"
3304 +
3305 +#~ msgid "Identity:"
3306 +#~ msgstr "Tunniste:"
3307 +
3308 +#~ msgid "Interface:"
3309 +#~ msgstr "Verkkolaite:"
3310 +
3311 +#~ msgid "Key Type:"
3312 +#~ msgstr "Avaimen tyyppi:"
3313 +
3314 +#~ msgid "Key:"
3315 +#~ msgstr "Avain:"
3316 +
3317 +#~ msgid ""
3318 +#~ "None\n"
3319 +#~ "WEP 128-bit Passphrase\n"
3320 +#~ "WEP 64/128-bit Hex\n"
3321 +#~ "WEP 64/128-bit ASCII\n"
3322 +#~ msgstr ""
3323 +#~ "Ei mitään\n"
3324 +#~ "WEP 128-bittinen tunnuslause\n"
3325 +#~ "WEP 64/128-bittinen heksadesimaali\n"
3326 +#~ "WEP 64/128-bittinen ASCII\n"
3327 +
3328 +#~ msgid ""
3329 +#~ "Open System\n"
3330 +#~ "Shared Key"
3331 +#~ msgstr ""
3332 +#~ "Avoin järjestelmä\n"
3333 +#~ "Jaettu avain"
3334 +
3335 +#~ msgid "Other Wireless Network..."
3336 +#~ msgstr "Muu langaton verkko..."
3337 +
3338 +#~ msgid "Passphrase:"
3339 +#~ msgstr "Tunnuslause:"
3340 +
3341 +#~ msgid "Password:"
3342 +#~ msgstr "Salasana:"
3343 +
3344 +#~ msgid "Primary DNS:"
3345 +#~ msgstr "Ensisijainen DNS:"
3346 +
3347 +#~ msgid "Private Key File:"
3348 +#~ msgstr "Salausavaimen tiedosto"
3349 +
3350 +#~ msgid "Private Key Password:"
3351 +#~ msgstr "Salausavaimen salasana:"
3352 +
3353 +#~ msgid "Secondary DNS:"
3354 +#~ msgstr "Toissijainen DNS:"
3355 +
3356 +#~ msgid "Select the CA Certificate File"
3357 +#~ msgstr "Valise CA-varmenteen tiedosto"
3358 +
3359 +#~ msgid "Select the Client Certificate File"
3360 +#~ msgstr "Valitse asiakasvarmenteen tiedosto"
3361 +
3362 +#~ msgid "Select the Private Key File"
3363 +#~ msgstr "Valitse salaisen avaimen tiedosto"
3364 +
3365 +#~ msgid "Show key"
3366 +#~ msgstr "Näytä avain"
3367 +
3368 +#~ msgid "Show passphrase"
3369 +#~ msgstr "Näytä tunnuslause:"
3370 +
3371 +#~ msgid "Show password"
3372 +#~ msgstr "Näytä salasana"
3373 +
3374 +#~ msgid "Show passwords"
3375 +#~ msgstr "Näytä salasanat"
3376 +
3377 +#~ msgid "Speed:"
3378 +#~ msgstr "Nopeus:"
3379 +
3380 +#~ msgid "Subnet Mask:"
3381 +#~ msgstr "Aliverkkopeite:"
3382 +
3383 +#~ msgid "Type:"
3384 +#~ msgstr "Tyyppi:"
3385 +
3386 +#~ msgid "User Name:"
3387 +#~ msgstr "Käyttäjätunnus:"
3388 +
3389 +#~ msgid "Wireless Network Key Required"
3390 +#~ msgstr "Langattoman verkon salausavain vaaditaan"
3391 +
3392 +#~ msgid "Wireless _adapter:"
3393 +#~ msgstr "Langaton _verkkolaite:"
3394 +
3395 +#~ msgid "_Always Trust this Wireless Network"
3396 +#~ msgstr "_Luota aina tähän langattomaan verkkoon"
3397 +
3398 +#~ msgid "_Don't remind me again"
3399 +#~ msgstr "_Älä huomauta uudestaan"
3400 +
3401 +#~ msgid "_Login to Network"
3402 +#~ msgstr "_Kirjaudu verkkoon"
3403 +
3404 +#~ msgid "_Network Name:"
3405 +#~ msgstr "_Verkon nimi:"
3406 +
3407 +#~ msgid "_Wireless Security:"
3408 +#~ msgstr "_Langaton tietoturva:"
3409 +
3410 +#~ msgid "You are now connected to the Ad-Hoc wireless network '%s'."
3411 +#~ msgstr "Yhteys langattomaan Ad-Hoc-verkkoon \"%s\" on nyt muodostettu."
3412 +
3413 +#~ msgid "You are now connected to the wireless network '%s'."
3414 +#~ msgstr "Yhteys langattomaan verkkoon \"%s\" on nyt muodostettu."
3415 +
3416 +#~ msgid "You are now connected to the wired network."
3417 +#~ msgstr "Yhteys kiinteään verkkoon on nyt muodostettu."
3418 +
3419 +#~ msgid "Connection Established"
3420 +#~ msgstr "Yhteys muodostettu"
3421 +
3422 +#~ msgid "Disconnected"
3423 +#~ msgstr "Yhteys katkaistu"
3424  
3425 -#: ../gnome/applet/applet-dbus-devices.c:910
3426 -msgid "You are now connected to the wired network."
3427 -msgstr "Yhteys kiinteään verkkoon on nyt muodostettu."
3428 -
3429 -#: ../gnome/applet/applet-dbus-devices.c:916
3430 -msgid "Connection Established"
3431 -msgstr "Yhteys muodostettu"
3432 -
3433 -#: ../gnome/applet/applet-dbus-devices.c:959
3434 -msgid "Disconnected"
3435 -msgstr "Yhteys katkaistu"
3436 -
3437 -#: ../gnome/applet/applet-dbus-devices.c:960
3438 -msgid "The network connection has been disconnected."
3439 -msgstr "Yhteys verkkoon on katkaistu."
3440 +#~ msgid "The network connection has been disconnected."
3441 +#~ msgstr "Yhteys verkkoon on katkaistu."
3442  
3443  #~ msgid "WEP 40/128-bit ASCII"
3444  #~ msgstr "WEP 40/128-bittinen ASCII"
3445 diff -urN NetworkManager-0.6.5/po/it.po NetworkManager-SVNr3284/po/it.po
3446 --- NetworkManager-0.6.5/po/it.po       2007-04-18 20:13:10.000000000 +0200
3447 +++ NetworkManager-SVNr3284/po/it.po    2008-02-04 16:01:02.000000000 +0100
3448 @@ -1,14 +1,14 @@
3449  # Italian translation for NetworkManager
3450  # Copyright (C) 2004-2005 THE NetworkManager CopyRight Holder
3451  # This file is distributed under the same license as the NetworkManager package.
3452 -# Francesco Marletta <francesco.marletta@tiscali.it>, 2004-2005.
3453 +# Francesco Marletta <francesco.marletta@tiscali.it>, 2004-2007.
3454  #
3455  msgid ""
3456  msgstr ""
3457 -"Project-Id-Version: NetworkManager 0.1\n"
3458 +"Project-Id-Version: NetworkManager 0.6\n"
3459  "Report-Msgid-Bugs-To: \n"
3460 -"POT-Creation-Date: 2006-05-29 18:33+0200\n"
3461 -"PO-Revision-Date: 2006-06-09 09:52\n"
3462 +"POT-Creation-Date: 2007-04-23 16:32+0200\n"
3463 +"PO-Revision-Date: 2007-03-11 21:54+0100\n"
3464  "Last-Translator: Novell Language <language@novell.com>\n"
3465  "Language-Team: Novell Language <language@novell.com>\n"
3466  "MIME-Version: 1.0\n"
3467 @@ -16,726 +16,11 @@
3468  "Content-Transfer-Encoding: 8bit\n"
3469  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
3470  
3471 -# [NdT] è il titolo della finestra
3472 -#: ../gnome/applet/applet-compat.c:171 ../gnome/applet/applet-dbus-info.c:919
3473 -#, c-format
3474 -msgid "Passphrase for wireless network %s"
3475 -msgstr "Frase di accesso per la rete wireless %s"
3476 -
3477 -#: ../gnome/applet/applet-dbus.c:265
3478 -#, c-format
3479 -msgid "Connection to the wireless network '%s' failed."
3480 -msgstr "Connessione alla rete wireless \"%s\" fallita."
3481 -
3482 -#: ../gnome/applet/applet-dbus.c:270
3483 -msgid "Connection to the wired network failed."
3484 -msgstr "Connessione alla rete cablata fallita."
3485 -
3486 -#: ../gnome/applet/applet.c:184
3487 -msgid "Error displaying connection information:"
3488 -msgstr "Errore nel visualizzare le informazioni di connessione:"
3489 -
3490 -#: ../gnome/applet/applet.c:202
3491 -msgid "Could not find some required resources (the glade file)!"
3492 -msgstr "Impossibile trovare alcune risorse richieste (il file glade)!"
3493 -
3494 -#: ../gnome/applet/applet.c:213
3495 -msgid "No active connections!"
3496 -msgstr "Nessuna connessione attiva!"
3497 -
3498 -#: ../gnome/applet/applet.c:234
3499 -#, c-format
3500 -msgid "Wired Ethernet (%s)"
3501 -msgstr "Ethernet cablata (%s)"
3502 -
3503 -#: ../gnome/applet/applet.c:236
3504 -#, c-format
3505 -msgid "Wireless Ethernet (%s)"
3506 -msgstr "Ethernet wireless (%s)"
3507 -
3508 -#: ../gnome/applet/applet.c:337 ../gnome/applet/applet.c:362
3509 -msgid "NetworkManager Applet"
3510 -msgstr "Applet NetworkManager"
3511 -
3512 -#: ../gnome/applet/applet.c:339 ../gnome/applet/applet.c:364
3513 -msgid "Copyright © 2004-2005 Red Hat, Inc."
3514 -msgstr "Copyright © 2004-2005 Red Hat, Inc."
3515 -
3516 -#: ../gnome/applet/applet.c:340 ../gnome/applet/applet.c:365
3517 -msgid ""
3518 -"Notification area applet for managing your network devices and connections."
3519 -msgstr ""
3520 -"Un'applet per l'aerea di notifica per la gestione delle interfacce e delle "
3521 -"connessioni di rete"
3522 -
3523 -#: ../gnome/applet/applet.c:343 ../gnome/applet/applet.c:370
3524 -msgid "translator-credits"
3525 -msgstr "Francesco Marletta <francesco.marletta@tiscali.it>"
3526 -
3527 -#: ../gnome/applet/applet.c:426
3528 -msgid "VPN Login Failure"
3529 -msgstr "Accesso VPN fallito"
3530 -
3531 -#: ../gnome/applet/applet.c:427
3532 -#, c-format
3533 -msgid "Could not start the VPN connection '%s' due to a login failure."
3534 -msgstr ""
3535 -"Impossibile avviare la connessione VPN “%s” a causa di un fallimento "
3536 -"nell'accesso."
3537 -
3538 -#: ../gnome/applet/applet.c:431
3539 -msgid "VPN Start Failure"
3540 -msgstr "Avvio VPN fallito"
3541 -
3542 -#: ../gnome/applet/applet.c:432
3543 -#, c-format
3544 -msgid ""
3545 -"Could not start the VPN connection '%s' due to a failure launching the VPN "
3546 -"program."
3547 -msgstr ""
3548 -"Impossibile avviare la connessione VPN “%s” a causa di un fallimento "
3549 -"nell'avvio del programma VPN."
3550 -
3551 -#: ../gnome/applet/applet.c:436 ../gnome/applet/applet.c:446
3552 -msgid "VPN Connect Failure"
3553 -msgstr "Connessione VPN fallita"
3554 -
3555 -#: ../gnome/applet/applet.c:437
3556 -#, c-format
3557 -msgid "Could not start the VPN connection '%s' due to a connection error."
3558 -msgstr ""
3559 -"Impossibile avviare la connessione VPN “%s” a causa di un errore nella "
3560 -"connessione."
3561 -
3562 -#: ../gnome/applet/applet.c:441
3563 -msgid "VPN Configuration Error"
3564 -msgstr "Errore di configurazione VPN"
3565 -
3566 -#: ../gnome/applet/applet.c:442
3567 -#, c-format
3568 -msgid "The VPN connection '%s' was not correctly configured."
3569 -msgstr "La connessione VPN “%s” non è stata configurata correttamente."
3570 -
3571 -#: ../gnome/applet/applet.c:447
3572 -#, c-format
3573 -msgid ""
3574 -"Could not start the VPN connection '%s' because the VPN server did not "
3575 -"return an adequate network configuration."
3576 -msgstr ""
3577 -"Impossibile avviare la connessione “%s” perché il server VPN non ha "
3578 -"restituito una configurazione di rete adeguata."
3579 -
3580 -#: ../gnome/applet/applet.c:517
3581 -msgid "VPN Login Message"
3582 -msgstr "Messaggio di accesso VPN"
3583 -
3584 -#: ../gnome/applet/applet.c:741 ../gnome/applet/applet.c:2508
3585 -#: ../gnome/applet/other-network-dialog.c:453
3586 -#: ../gnome/applet/passphrase-dialog.c:228
3587 -msgid ""
3588 -"The NetworkManager Applet could not find some required resources (the glade "
3589 -"file was not found)."
3590 -msgstr ""
3591 -"L'applet NetworkManager non è riuscita a trovare alcune risorse richieste "
3592 -"(il file glade non è stato trovato)."
3593 -
3594 -#: ../gnome/applet/applet.c:753
3595 -#, c-format
3596 -msgid "The network device \"%s (%s)\" does not support wireless scanning."
3597 -msgstr "Il dispositivo di rete “%s (%s)” non supporta la scansione wireless."
3598 -
3599 -#: ../gnome/applet/applet.c:761
3600 -#, c-format
3601 -msgid "The network device \"%s (%s)\" does not support link detection."
3602 -msgstr ""
3603 -"Il dispositivo di rete “%s (%s)” non supporta il riconoscimento del "
3604 -"collegamento."
3605 -
3606 -#: ../gnome/applet/applet.c:908
3607 -#, c-format
3608 -msgid "Preparing device %s for the wired network..."
3609 -msgstr "Preparazione del dispositivo %s per la rete cablata in corso..."
3610 -
3611 -#: ../gnome/applet/applet.c:910
3612 -#, c-format
3613 -msgid "Preparing device %s for the wireless network '%s'..."
3614 -msgstr ""
3615 -"Preparazione del dispositivo %s per la rete wireless \"%s\" in corso..."
3616 -
3617 -#: ../gnome/applet/applet.c:918
3618 -#, c-format
3619 -msgid "Configuring device %s for the wired network..."
3620 -msgstr "Configurazione del dispositivo %s per la rete cablata in corso..."
3621 -
3622 -#: ../gnome/applet/applet.c:920
3623 -#, c-format
3624 -msgid "Attempting to join the wireless network '%s'..."
3625 -msgstr "Tentativo di unirsi alla rete wireless \"%s\" in corso..."
3626 -
3627 -#: ../gnome/applet/applet.c:928
3628 -#, c-format
3629 -msgid "Waiting for Network Key for the wireless network '%s'..."
3630 -msgstr "In attesa della chiave di rete per la rete wireless \"%s\"..."
3631 -
3632 -#: ../gnome/applet/applet.c:936 ../gnome/applet/applet.c:946
3633 -msgid "Requesting a network address from the wired network..."
3634 -msgstr "Richiesta di un indirizzo di rete dalla rete cablata in corso..."
3635 -
3636 -#: ../gnome/applet/applet.c:938 ../gnome/applet/applet.c:948
3637 -#, c-format
3638 -msgid "Requesting a network address from the wireless network '%s'..."
3639 -msgstr ""
3640 -"Richiesta di un indirizzo di rete dalla rete wireless \"%s\" in corso..."
3641 -
3642 -#: ../gnome/applet/applet.c:956
3643 -msgid "Finishing connection to the wired network..."
3644 -msgstr "Chiusura della connessione alla rete cablata in corso..."
3645 -
3646 -#: ../gnome/applet/applet.c:958
3647 -#, c-format
3648 -msgid "Finishing connection to the wireless network '%s'..."
3649 -msgstr "Chiusura della connessione alla rete wireless \"%s\" in corso..."
3650 -
3651 -#: ../gnome/applet/applet.c:1075
3652 -msgid "NetworkManager is not running"
3653 -msgstr "NetworkManager non è in esecuzione"
3654 -
3655 -#: ../gnome/applet/applet.c:1083 ../gnome/applet/applet.c:1828
3656 -msgid "Networking disabled"
3657 -msgstr "Funzionalità di rete disabilitate"
3658 -
3659 -#: ../gnome/applet/applet.c:1088
3660 -msgid "No network connection"
3661 -msgstr "Nessuna connessione di rete"
3662 -
3663 -#: ../gnome/applet/applet.c:1093
3664 -msgid "Wired network connection"
3665 -msgstr "Connessione di rete cablata"
3666 -
3667 -#: ../gnome/applet/applet.c:1097
3668 -msgid "Connected to an Ad-Hoc wireless network"
3669 -msgstr "Connesso ad una rete wireless ad-hoc"
3670 -
3671 -#: ../gnome/applet/applet.c:1099
3672 -#, c-format
3673 -msgid "Wireless network connection to '%s' (%d%%)"
3674 -msgstr "Connessione di rete wireless a \"%s\" (%d%%)"
3675 -
3676 -#: ../gnome/applet/applet.c:1120
3677 -#, c-format
3678 -msgid "VPN connection to '%s'"
3679 -msgstr "Connessione VPN a “%s”"
3680 -
3681 -#: ../gnome/applet/applet.c:1128
3682 -#, c-format
3683 -msgid "VPN connecting to '%s'"
3684 -msgstr "Connessione VPN a “%s” in corso"
3685 -
3686 -#: ../gnome/applet/applet.c:1541
3687 -msgid "_Connect to Other Wireless Network..."
3688 -msgstr "_Connetti ad altre reti wireless..."
3689 -
3690 -#: ../gnome/applet/applet.c:1562
3691 -msgid "Create _New Wireless Network..."
3692 -msgstr "Crea _nuova rete wireless..."
3693 -
3694 -#: ../gnome/applet/applet.c:1685
3695 -msgid "_VPN Connections"
3696 -msgstr "Connessioni _VPN"
3697 -
3698 -#: ../gnome/applet/applet.c:1730
3699 -msgid "_Configure VPN..."
3700 -msgstr "_Configura VPN..."
3701 -
3702 -#: ../gnome/applet/applet.c:1734
3703 -msgid "_Disconnect VPN..."
3704 -msgstr "_Disconnetti VPN..."
3705 -
3706 -#: ../gnome/applet/applet.c:1756
3707 -msgid "_Dial Up Connections"
3708 -msgstr "Connessioni mo_dem"
3709 -
3710 -#. FIXME: We should save and then check the state of the devices and show Connect _or_ Disconnect for each item
3711 -#: ../gnome/applet/applet.c:1767
3712 -#, c-format
3713 -msgid "Connect to %s..."
3714 -msgstr "Connetti a %s..."
3715 -
3716 -#: ../gnome/applet/applet.c:1773
3717 -#, c-format
3718 -msgid "Disconnect from %s..."
3719 -msgstr "Disconnetti da %s..."
3720 -
3721 -#: ../gnome/applet/applet.c:1822
3722 -msgid "No network devices have been found"
3723 -msgstr "Non è stata trovata alcuna interfaccia di rete"
3724 -
3725 -#: ../gnome/applet/applet.c:2014
3726 -msgid "NetworkManager is not running..."
3727 -msgstr "NetworkManager non è in esecuzione..."
3728 -
3729 -#. 'Enable Networking' item
3730 -#: ../gnome/applet/applet.c:2170
3731 -msgid "Enable _Networking"
3732 -msgstr "Abilita _rete"
3733 -
3734 -#. 'Enable Wireless' item
3735 -#: ../gnome/applet/applet.c:2176
3736 -msgid "Enable _Wireless"
3737 -msgstr "Abilita _wireless"
3738 -
3739 -#. 'Connection Information' item
3740 -#: ../gnome/applet/applet.c:2182
3741 -msgid "Connection _Information"
3742 -msgstr "_Informazioni connessione"
3743 -
3744 -#. Help item
3745 -#: ../gnome/applet/applet.c:2193
3746 -msgid "_Help"
3747 -msgstr "A_iuto"
3748 -
3749 -#. About item
3750 -#: ../gnome/applet/applet.c:2202
3751 -msgid "_About"
3752 -msgstr "I_nformazioni"
3753 -
3754 -#: ../gnome/applet/applet.c:2667
3755 -msgid ""
3756 -"The NetworkManager applet could not find some required resources.  It cannot "
3757 -"continue.\n"
3758 -msgstr ""
3759 -"L'applet NetworkManager non è riuscita a trovare alcune risorse richieste. "
3760 -"Non può continuare l'esecuzione.\n"
3761 -
3762 -#: ../gnome/applet/wireless-security-option.c:157
3763 -msgid "Open System"
3764 -msgstr "Sistema aperto"
3765 -
3766 -#: ../gnome/applet/wireless-security-option.c:160
3767 -msgid "Shared Key"
3768 -msgstr "Chiave condivisa"
3769 -
3770 -# o Automatica?
3771 -#: ../gnome/applet/wireless-security-option.c:208
3772 -msgid "Automatic (Default)"
3773 -msgstr "Automatica (predefinito)"
3774 -
3775 -#: ../gnome/applet/wireless-security-option.c:215
3776 -msgid "AES-CCMP"
3777 -msgstr "AES-CCMP"
3778 -
3779 -#: ../gnome/applet/wireless-security-option.c:223
3780 -msgid "TKIP"
3781 -msgstr "TKIP"
3782 -
3783 -#: ../gnome/applet/wireless-security-option.c:231
3784 -msgid "Dynamic WEP"
3785 -msgstr "WEP dinamico"
3786 -
3787 -# Dovrebbe riferirsi a "sicurezza"
3788 -#: ../gnome/applet/wso-none.c:53
3789 -msgid "None"
3790 -msgstr "Nessuna"
3791 -
3792 -#: ../gnome/applet/wso-wep-ascii.c:138
3793 -msgid "WEP 64/128-bit ASCII"
3794 -msgstr "ASCII 128 bit/WEP 40"
3795 -
3796 -#: ../gnome/applet/wso-wep-hex.c:135
3797 -msgid "WEP 64/128-bit Hex"
3798 -msgstr "Esadecimale 128 bit/WEP 40"
3799 -
3800 -#: ../gnome/applet/wso-wep-passphrase.c:135
3801 -msgid "WEP 128-bit Passphrase"
3802 -msgstr "Frase di accesso WEP 128 bit"
3803 -
3804 -#: ../gnome/applet/wso-wpa-eap.c:237
3805 -msgid "PEAP"
3806 -msgstr "PEAP"
3807 -
3808 -#: ../gnome/applet/wso-wpa-eap.c:238
3809 -msgid "TLS"
3810 -msgstr "TLS"
3811 -
3812 -#: ../gnome/applet/wso-wpa-eap.c:239
3813 -msgid "TTLS"
3814 -msgstr "TTLS"
3815 -
3816 -# [NdT] va tradotto?
3817 -#: ../gnome/applet/wso-wpa-eap.c:247 ../src/nm-ap-security-wpa-eap.c:92
3818 -#: ../src/nm-ap-security-wpa-eap.c:116
3819 -msgid "WPA2 Enterprise"
3820 -msgstr "WPA2 Enterprise"
3821 -
3822 -# [NdT] va tradotto?
3823 -#: ../gnome/applet/wso-wpa-eap.c:249 ../src/nm-ap-security-wpa-eap.c:94
3824 -#: ../src/nm-ap-security-wpa-eap.c:121
3825 -msgid "WPA Enterprise"
3826 -msgstr "WPA Enterprise"
3827 -
3828 -#: ../gnome/applet/wso-wpa-psk.c:178
3829 -msgid "WPA2 Personal"
3830 -msgstr "WPA2 personale"
3831 -
3832 -#: ../gnome/applet/wso-wpa-psk.c:180
3833 -msgid "WPA Personal"
3834 -msgstr "WPA personale"
3835 -
3836 -#: ../gnome/applet/eggtrayicon.c:134
3837 -msgid "Orientation"
3838 -msgstr "Orientamento"
3839 -
3840 -#: ../gnome/applet/eggtrayicon.c:135
3841 -msgid "The orientation of the tray."
3842 -msgstr "L'orientamento del vassoio."
3843 -
3844 -#: ../gnome/applet/menu-items.c:88
3845 -#, c-format
3846 -msgid "Wired Network (%s)"
3847 -msgstr "Rete cablata (%s)"
3848 -
3849 -#: ../gnome/applet/menu-items.c:91
3850 -msgid "_Wired Network"
3851 -msgstr "Rete _cablata"
3852 -
3853 -#: ../gnome/applet/menu-items.c:162
3854 -#, c-format
3855 -msgid "Wireless Network (%s)"
3856 -msgid_plural "Wireless Networks (%s)"
3857 -msgstr[0] "Rete wireless (%s)"
3858 -msgstr[1] "Reti wireless (%s)"
3859 -
3860 -#: ../gnome/applet/menu-items.c:164
3861 -msgid "Wireless Network"
3862 -msgid_plural "Wireless Networks"
3863 -msgstr[0] "Rete wireless"
3864 -msgstr[1] "Reti wireless"
3865 -
3866 -#: ../gnome/applet/menu-items.c:343
3867 -msgid " (invalid Unicode)"
3868 -msgstr " (Unicode non valido)"
3869 -
3870 -#: ../gnome/applet/other-network-dialog.c:352
3871 -#, c-format
3872 -msgid ""
3873 -"By default, the wireless network's name is set to your computer's name, %s, "
3874 -"with no encryption enabled"
3875 -msgstr ""
3876 -"Come impostazione predefinita, il nome della rete wireless è impostata con "
3877 -"il nome del computer, %s, senza cifratura abilitata"
3878 -
3879 -# [NdT] è il titolo della finestra
3880 -#: ../gnome/applet/other-network-dialog.c:358
3881 -msgid "Create new wireless network"
3882 -msgstr "Creazione nuova rete wireless"
3883 -
3884 -#: ../gnome/applet/other-network-dialog.c:359
3885 -msgid ""
3886 -"Enter the name and security settings of the wireless network you wish to "
3887 -"create."
3888 -msgstr ""
3889 -"Inserire il nome e le impostazioni di sicurezza della rete wireless che si "
3890 -"desidera creare."
3891 -
3892 -#: ../gnome/applet/other-network-dialog.c:363
3893 -msgid "Create New Wireless Network"
3894 -msgstr "Crea nuova rete wireless"
3895 -
3896 -#: ../gnome/applet/other-network-dialog.c:368
3897 -msgid "Existing wireless network"
3898 -msgstr "Rete wireless esistente"
3899 -
3900 -#: ../gnome/applet/other-network-dialog.c:369
3901 -msgid "Enter the name of the wireless network to which you wish to connect."
3902 -msgstr "Inserire il nome delle rete wireless a cui ci si vuole connettere."
3903 -
3904 -#: ../gnome/applet/other-network-dialog.c:371
3905 -msgid "Connect to Other Wireless Network"
3906 -msgstr "Connetti ad altre reti wireless"
3907 -
3908 -#: ../gnome/applet/passphrase-dialog.c:215
3909 -msgid "Error connecting to wireless network"
3910 -msgstr "Errore nella connessione alla rete wireless"
3911 -
3912 -#: ../gnome/applet/passphrase-dialog.c:216
3913 -msgid ""
3914 -"The requested wireless network requires security capabilities unsupported by "
3915 -"your hardware."
3916 -msgstr ""
3917 -"La rete wireless richiesta richiede funzionalità di sicurezza non supportate "
3918 -"dall'hardware presente."
3919 -
3920 -#: ../gnome/applet/vpn-password-dialog.c:151
3921 -#: ../gnome/applet/vpn-password-dialog.c:188
3922 -#, c-format
3923 -msgid "Cannot start VPN connection '%s'"
3924 -msgstr "Impossibile avviare la connessione VPN \"%s\""
3925 -
3926 -#: ../gnome/applet/vpn-password-dialog.c:154
3927 -#, c-format
3928 -msgid ""
3929 -"Could not find the authentication dialog for VPN connection type '%s'. "
3930 -"Contact your system administrator."
3931 -msgstr ""
3932 -"Impossibile trovare la finestra di dialogo per la connessione VPN di tipo \"%"
3933 -"s\". Contattare l'amministratore di sistema."
3934 -
3935 -#: ../gnome/applet/vpn-password-dialog.c:191
3936 -#, c-format
3937 -msgid ""
3938 -"There was a problem launching the authentication dialog for VPN connection "
3939 -"type '%s'. Contact your system administrator."
3940 -msgstr ""
3941 -"Si è verificato un problema avviando la finestra di dialogo di "
3942 -"autenticazione per la connessione VPN di tipo \"%s\". Contattare "
3943 -"l'amministratore di sistema."
3944 -
3945 -#: ../gnome/applet/applet.glade.h:1
3946 -msgid " "
3947 -msgstr " "
3948 -
3949 -#: ../gnome/applet/applet.glade.h:2
3950 -msgid ""
3951 -"<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
3952 -msgstr ""
3953 -"<span weight=\"bold\" size=\"larger\">Informazioni connessione attiva</span>"
3954 -
3955 -#: ../gnome/applet/applet.glade.h:4
3956 -#, no-c-format
3957 -msgid ""
3958 -"<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
3959 -"Network</span>\n"
3960 -"\n"
3961 -"A passphrase or encryption key is required to access the wireless network '%"
3962 -"s'."
3963 -msgstr ""
3964 -"<span weight=\"bold\" size=\"larger\">Frase chiave richiesta dalla rete "
3965 -"wireless</span>\n"
3966 -"\n"
3967 -"È richiesta una frase chiave o una chiave di cifratura per accedere alla "
3968 -"rete wireless \"%s\"."
3969 -
3970 -#: ../gnome/applet/applet.glade.h:8
3971 -#, no-c-format
3972 -msgid ""
3973 -"<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</span>\n"
3974 -"\n"
3975 -"%s  It will not be completely functional."
3976 -msgstr ""
3977 -"<span weight=\"bold\" size=\"larger\">Funzionalità di rete ridotta</span>\n"
3978 -"\n"
3979 -"%s  Non sarà del funzionale."
3980 -
3981 -#: ../gnome/applet/applet.glade.h:12
3982 -#, no-c-format
3983 -msgid ""
3984 -"<span weight=\"bold\" size=\"larger\">Wireless Network Login Confirmation</"
3985 -"span>\n"
3986 -"\n"
3987 -"You have chosen to log in to the wireless network '%s'.  If you are sure "
3988 -"that this wireless network is secure, click the checkbox below and "
3989 -"NetworkManager will not require confirmation on subsequent log ins."
3990 -msgstr ""
3991 -"<span weight=\"bold\" size=\"larger\">Conferma accesso a rete wireless</"
3992 -"span>\n"
3993 -"\n"
3994 -"Si è scelto di accedere alla rete wireless \"%s\". Se si ha la certezza che "
3995 -"questa rete wireless è sicura, selezionare la casella di spunta sottostante "
3996 -"e NetworkManager non chiederà la conferma ai successivi accessi."
3997 -
3998 -#: ../gnome/applet/applet.glade.h:15
3999 -msgid "Anonymous Identity:"
4000 -msgstr "Identità anonima:"
4001 -
4002 -#: ../gnome/applet/applet.glade.h:16
4003 -msgid "Authentication:"
4004 -msgstr "Autenticazione:"
4005 -
4006 -#: ../gnome/applet/applet.glade.h:17
4007 -msgid "Broadcast Address:"
4008 -msgstr "Indirizzo broadcast:"
4009 -
4010 -#: ../gnome/applet/applet.glade.h:18
4011 -msgid "CA Certificate File:"
4012 -msgstr "File del certificato della CA:"
4013 -
4014 -#: ../gnome/applet/applet.glade.h:19
4015 -msgid "C_onnect"
4016 -msgstr "C_onnetti"
4017 -
4018 -#: ../gnome/applet/applet.glade.h:20
4019 -msgid "Client Certificate File:"
4020 -msgstr "File del certificato del client:"
4021 -
4022 -#: ../gnome/applet/applet.glade.h:21
4023 -msgid "Connection Information"
4024 -msgstr "Informazioni connessione"
4025 -
4026 -#: ../gnome/applet/applet.glade.h:22
4027 -msgid "Default Route:"
4028 -msgstr "Rotta predefinita:"
4029 -
4030 -#: ../gnome/applet/applet.glade.h:23
4031 -msgid "Destination Address:"
4032 -msgstr "Indirizzo destinazione:"
4033 -
4034 -#: ../gnome/applet/applet.glade.h:24
4035 -msgid "Driver:"
4036 -msgstr "Driver:"
4037 -
4038 -#: ../gnome/applet/applet.glade.h:25
4039 -msgid "EAP Method:"
4040 -msgstr "Metodo EAP:"
4041 -
4042 -#: ../gnome/applet/applet.glade.h:26
4043 -msgid "Hardware Address:"
4044 -msgstr "Indirizzo hardware:"
4045 -
4046 -#: ../gnome/applet/applet.glade.h:27
4047 -msgid "IP Address:"
4048 -msgstr "Indirizzo IP:"
4049 -
4050 -#: ../gnome/applet/applet.glade.h:28
4051 -msgid "Identity:"
4052 -msgstr "Identità:"
4053 -
4054 -#: ../gnome/applet/applet.glade.h:29
4055 -msgid "Interface:"
4056 -msgstr "Interfaccia:"
4057 -
4058 -#: ../gnome/applet/applet.glade.h:30
4059 -msgid "Key Type:"
4060 -msgstr "Tipo di chiave:"
4061 -
4062 -#: ../gnome/applet/applet.glade.h:31
4063 -msgid "Key:"
4064 -msgstr "Chiave:"
4065 -
4066 -#: ../gnome/applet/applet.glade.h:32
4067 -msgid ""
4068 -"None\n"
4069 -"WEP 128-bit Passphrase\n"
4070 -"WEP 64/128-bit Hex\n"
4071 -"WEP 64/128-bit ASCII\n"
4072 -msgstr ""
4073 -"Nessuna\n"
4074 -"Frase di accesso WEP 128 bit\n"
4075 -"WEP 64/128 bit esadecimale\n"
4076 -"WEP 64/128 bit ASCII\n"
4077 -
4078 -#: ../gnome/applet/applet.glade.h:37
4079 -msgid ""
4080 -"Open System\n"
4081 -"Shared Key"
4082 -msgstr ""
4083 -"Sistema aperto\n"
4084 -"Chiave condivisa"
4085 -
4086 -#: ../gnome/applet/applet.glade.h:39
4087 -msgid "Other Wireless Network..."
4088 -msgstr "Altra rete wireless..."
4089 -
4090 -#: ../gnome/applet/applet.glade.h:40
4091 -msgid "Passphrase:"
4092 -msgstr "Frase chiave:"
4093 -
4094 -#: ../gnome/applet/applet.glade.h:41
4095 -msgid "Password:"
4096 -msgstr "Password:"
4097 -
4098 -#: ../gnome/applet/applet.glade.h:42
4099 -msgid "Primary DNS:"
4100 -msgstr "DNS primario:"
4101 -
4102 -#: ../gnome/applet/applet.glade.h:43
4103 -msgid "Private Key File:"
4104 -msgstr "File della chiave privata:"
4105 -
4106 -#: ../gnome/applet/applet.glade.h:44
4107 -msgid "Private Key Password:"
4108 -msgstr "Password della chiave privata:"
4109 -
4110 -#: ../gnome/applet/applet.glade.h:45
4111 -msgid "Secondary DNS:"
4112 -msgstr "DNS secondario:"
4113 -
4114 -#: ../gnome/applet/applet.glade.h:46
4115 -msgid "Select the CA Certificate File"
4116 -msgstr "Selezionare il file con il certificato della CA"
4117 -
4118 -#: ../gnome/applet/applet.glade.h:47
4119 -msgid "Select the Client Certificate File"
4120 -msgstr "Selezionare il file con il certificato del client"
4121 -
4122 -#: ../gnome/applet/applet.glade.h:48
4123 -msgid "Select the Private Key File"
4124 -msgstr "Selezionare il file con la chiave privata"
4125 -
4126 -#: ../gnome/applet/applet.glade.h:49
4127 -msgid "Show key"
4128 -msgstr "Mostra chiave"
4129 -
4130 -#: ../gnome/applet/applet.glade.h:50
4131 -msgid "Show passphrase"
4132 -msgstr "Mostra frase chiave"
4133 -
4134 -#: ../gnome/applet/applet.glade.h:51
4135 -msgid "Show password"
4136 -msgstr "Mostra password"
4137 -
4138 -#: ../gnome/applet/applet.glade.h:52
4139 -msgid "Show passwords"
4140 -msgstr "Mostra le password"
4141 -
4142 -#: ../gnome/applet/applet.glade.h:53
4143 -msgid "Speed:"
4144 -msgstr "Velocità:"
4145 -
4146 -#: ../gnome/applet/applet.glade.h:54
4147 -msgid "Subnet Mask:"
4148 -msgstr "Maschera di rete:"
4149 -
4150 -#: ../gnome/applet/applet.glade.h:55
4151 -msgid "Type:"
4152 -msgstr "Tipo:"
4153 -
4154 -#: ../gnome/applet/applet.glade.h:56
4155 -msgid "User Name:"
4156 -msgstr "Nome utente:"
4157 -
4158 -#: ../gnome/applet/applet.glade.h:57
4159 -msgid "Wireless Network Key Required"
4160 -msgstr "Richiesta chiave per rete wireless"
4161 -
4162 -#: ../gnome/applet/applet.glade.h:58
4163 -msgid "Wireless _adapter:"
4164 -msgstr "_Adattatore wireless:"
4165 -
4166 -#: ../gnome/applet/applet.glade.h:59
4167 -msgid "_Always Trust this Wireless Network"
4168 -msgstr "Dare _sempre fiducia a questa rete wireless"
4169 -
4170 -#: ../gnome/applet/applet.glade.h:60
4171 -msgid "_Don't remind me again"
4172 -msgstr "_Non ricordarlo più"
4173 -
4174 -#: ../gnome/applet/applet.glade.h:61
4175 -msgid "_Login to Network"
4176 -msgstr "_Login alla rete"
4177 -
4178 -#: ../gnome/applet/applet.glade.h:62
4179 -msgid "_Network Name:"
4180 -msgstr "_Nome rete:"
4181 -
4182 -#: ../gnome/applet/applet.glade.h:63
4183 -msgid "_Wireless Security:"
4184 -msgstr "Sicurezza _wireless:"
4185 -
4186 -#: ../gnome/vpn-properties/nm-vpn-properties.c:383
4187 +#: ../gnome/vpn-properties/nm-vpn-properties.c:405
4188  msgid "Cannot add VPN connection"
4189  msgstr "Impossibile aggiungere una connessione VPN"
4190  
4191 -#: ../gnome/vpn-properties/nm-vpn-properties.c:385
4192 +#: ../gnome/vpn-properties/nm-vpn-properties.c:407
4193  msgid ""
4194  "No suitable VPN software was found on your system. Contact your system "
4195  "administrator."
4196 @@ -743,59 +28,59 @@
4197  "Non è stato trovato un software VPN adatto nel sistema. Contattare "
4198  "l'amministratore di sistema."
4199  
4200 -#: ../gnome/vpn-properties/nm-vpn-properties.c:437
4201 +#: ../gnome/vpn-properties/nm-vpn-properties.c:457
4202  msgid "Cannot import VPN connection"
4203  msgstr "Impossibile importare la connessione VPN"
4204  
4205 -#: ../gnome/vpn-properties/nm-vpn-properties.c:439
4206 +#: ../gnome/vpn-properties/nm-vpn-properties.c:459
4207  #, c-format
4208  msgid ""
4209  "Cannot find suitable software for VPN connection type '%s' to import the "
4210  "file '%s'. Contact your system administrator."
4211  msgstr ""
4212 -"Impossibile trovare un software adatto ad importare il file \"%2$s\" per la "
4213 -"connessione VPN di tipo \"%1$s\". Contattare l'amministratore di sistema."
4214 +"Impossibile trovare un software adatto ad importare il file “%2$s” per la "
4215 +"connessione VPN di tipo “%1$s”. Contattare l'amministratore di sistema."
4216  
4217 -#: ../gnome/vpn-properties/nm-vpn-properties.c:579
4218 +#: ../gnome/vpn-properties/nm-vpn-properties.c:596
4219  #, c-format
4220  msgid "Error retrieving VPN connection '%s'"
4221 -msgstr "Errore nel recuperare la connessione VPN \"%s\""
4222 +msgstr "Errore nel recuperare la connessione VPN “%s”"
4223  
4224 -#: ../gnome/vpn-properties/nm-vpn-properties.c:582
4225 +#: ../gnome/vpn-properties/nm-vpn-properties.c:599
4226  #, c-format
4227  msgid ""
4228  "Could not find the UI files for VPN connection type '%s'. Contact your "
4229  "system administrator."
4230  msgstr ""
4231 -"Impossibile trovare il file di interfaccia per la connessione VPN di tipo \"%"
4232 -"s\". Contattare l'amministratore di sistema."
4233 +"Impossibile trovare il file di interfaccia per la connessione VPN di tipo “%"
4234 +"s”. Contattare l'amministratore di sistema."
4235  
4236 -#: ../gnome/vpn-properties/nm-vpn-properties.c:739
4237 +#: ../gnome/vpn-properties/nm-vpn-properties.c:746
4238  #, c-format
4239  msgid "Delete VPN connection \"%s\"?"
4240 -msgstr "Eliminare la connessione VPN \"%s\"?"
4241 +msgstr "Eliminare la connessione VPN “%s”?"
4242  
4243 -#: ../gnome/vpn-properties/nm-vpn-properties.c:742
4244 +#: ../gnome/vpn-properties/nm-vpn-properties.c:749
4245  #, c-format
4246  msgid ""
4247  "All information about the VPN connection \"%s\" will be lost and you may "
4248  "need your system administrator to provide information to create a new "
4249  "connection."
4250  msgstr ""
4251 -"Tutte le informazioni sulla connessione VPN \"%s\" verranno perse e sarà "
4252 +"Tutte le informazioni sulla connessione VPN “%s” verranno perse e sarà "
4253  "necessario chiedere informazioni all'amministratore di sistema per creare "
4254  "una nuova connessione."
4255  
4256 -#: ../gnome/vpn-properties/nm-vpn-properties.c:959
4257 +#: ../gnome/vpn-properties/nm-vpn-properties.c:963
4258  msgid "Unable to load"
4259  msgstr "Impossibile caricare"
4260  
4261 -#: ../gnome/vpn-properties/nm-vpn-properties.c:961
4262 +#: ../gnome/vpn-properties/nm-vpn-properties.c:965
4263  msgid "Cannot find some needed resources (the glade file)!"
4264  msgstr "Impossibile trovare alcune risorse richieste (il file glade)!"
4265  
4266  #. Edit dialog
4267 -#: ../gnome/vpn-properties/nm-vpn-properties.c:1071
4268 +#: ../gnome/vpn-properties/nm-vpn-properties.c:1084
4269  msgid "Edit VPN Connection"
4270  msgstr "Modifica connessione VPN"
4271  
4272 @@ -849,7 +134,7 @@
4273  
4274  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:13
4275  msgid "Manage Virtual Private Network Connections"
4276 -msgstr "Gestione delle connessioni alle reti private virtuali (VPN)"
4277 +msgstr "Gestione connessioni Reti Private Virtuali (VPN)"
4278  
4279  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:14
4280  msgid ""
4281 @@ -859,8 +144,8 @@
4282  "It will require some information, such as IP addresses and secrets.  Please "
4283  "see your system administrator to obtain this information."
4284  msgstr ""
4285 -"Questo assistente vi guiderà nella creazione di una connessione ad una rete "
4286 -"privata virtuale (VPN).\n"
4287 +"Questo assistente vi guiderà nella creazione di una connessione ad una Rete "
4288 +"Privata Virtuale (VPN).\n"
4289  "\n"
4290  "Richiederà alcune informazioni, come indirizzi IP e dati segreti. Contattare "
4291  "l'amministratore di sistema per ottenere queste informazioni."
4292 @@ -901,11 +186,11 @@
4293  msgid "WPA2 Automatic"
4294  msgstr "WPA2 automatica"
4295  
4296 -#: ../src/nm-ap-security.c:320
4297 +#: ../src/nm-ap-security.c:338
4298  msgid "none"
4299  msgstr "nessuna"
4300  
4301 -#: ../src/nm-netlink-monitor.c:154
4302 +#: ../src/nm-netlink-monitor.c:170
4303  #, c-format
4304  msgid ""
4305  "unable to create netlink socket for monitoring wired ethernet devices - %s"
4306 @@ -913,7 +198,7 @@
4307  "impossibile creare un socket netlink per monitorare i dispositivi di rete "
4308  "cablata ethernet - %s"
4309  
4310 -#: ../src/nm-netlink-monitor.c:172
4311 +#: ../src/nm-netlink-monitor.c:188
4312  #, c-format
4313  msgid ""
4314  "unable to bind to netlink socket for monitoring wired ethernet devices - %s"
4315 @@ -921,166 +206,35 @@
4316  "impossibile effettuare il bind al socket netlink per monitorare i "
4317  "dispositivi di rete cablata ethernet - %s"
4318  
4319 -#: ../src/nm-netlink-monitor.c:405
4320 +#: ../src/nm-netlink-monitor.c:426
4321  msgid "operation took too long"
4322  msgstr "l'operazione ha impiegato troppo tempo"
4323  
4324 -#: ../src/nm-netlink-monitor.c:502
4325 +#: ../src/nm-netlink-monitor.c:523
4326  msgid "received data from wrong type of sender"
4327  msgstr "dati ricevuti dal tipo di mittente errato"
4328  
4329 -#: ../src/nm-netlink-monitor.c:515
4330 +#: ../src/nm-netlink-monitor.c:536
4331  msgid "received data from unexpected sender"
4332  msgstr "dati ricevuti da un mittente inatteso"
4333  
4334 -#: ../src/nm-netlink-monitor.c:646
4335 +#: ../src/nm-netlink-monitor.c:665
4336  msgid "too much data was sent over socket and some of it was lost"
4337  msgstr ""
4338  "sono stati inviati troppi dati sul socket e una loro parte è stata persa"
4339  
4340 -#: ../src/nm-netlink-monitor.c:735
4341 +#: ../src/nm-netlink-monitor.c:775
4342  msgid "error occurred while waiting for data on socket"
4343  msgstr "si è verificato un errore durante l'attesa dei dati sul socket"
4344  
4345 -#: ../gnome/applet/applet-dbus-devices.c:898
4346 -#, c-format
4347 -msgid "You are now connected to the Ad-Hoc wireless network '%s'."
4348 -msgstr "Adesso si è connessi alla rete wireless ad-hoc \"%s\"."
4349 -
4350 -#: ../gnome/applet/applet-dbus-devices.c:903
4351 -#, c-format
4352 -msgid "You are now connected to the wireless network '%s'."
4353 -msgstr "Adesso si è connessi alla rete wireless \"%s\"."
4354 -
4355 -#: ../gnome/applet/applet-dbus-devices.c:910
4356 -msgid "You are now connected to the wired network."
4357 -msgstr "Adesso si è connessi alla rete cablata."
4358 -
4359 -#: ../gnome/applet/applet-dbus-devices.c:916
4360 -msgid "Connection Established"
4361 -msgstr "Connessione stabilita"
4362 -
4363 -#: ../gnome/applet/applet-dbus-devices.c:959
4364 -msgid "Disconnected"
4365 -msgstr "Disconnesso"
4366 -
4367 -# [NdT] certo che l'originare era proprio brutto
4368 -#: ../gnome/applet/applet-dbus-devices.c:960
4369 -msgid "The network connection has been disconnected."
4370 -msgstr "La connessione di rete è stata interrotta."
4371 -
4372 -#~ msgid "Modify Wireless Networks"
4373 -#~ msgstr "Modifica le reti wireless"
4374 -
4375 -#~ msgid "*"
4376 -#~ msgstr "*"
4377 -
4378 -#~ msgid ""
4379 -#~ "128-bit Passphrase (WEP)\n"
4380 -#~ "Ascii Key (WEP)\n"
4381 -#~ "Hex Key (WEP)"
4382 -#~ msgstr ""
4383 -#~ "Frase chiave a 128-bit (WEP)\n"
4384 -#~ "Chiave Ascii (WEP)\n"
4385 -#~ "Chiave Esadecimale (WEP)"
4386 -
4387 -#~ msgid "Ascii Key:"
4388 -#~ msgstr "Chiave ascii:"
4389 -
4390 -#~ msgid "You must log in to access the private network %s"
4391 -#~ msgstr "È necessario effettuare il login per accedere alla rete privata %s"
4392 -
4393 -#~ msgid "Scanning for wireless networks..."
4394 -#~ msgstr "Scansione di reti wireless..."
4395 -
4396 -#~ msgid "Pause Wireless Scanning"
4397 -#~ msgstr "Sospendere la scansione wireless"
4398 -
4399 -#~ msgid "Resume Wireless Scanning"
4400 -#~ msgstr "Riprendere la scansione wireless"
4401 -
4402 -#~ msgid "Stop All Wireless Devices"
4403 -#~ msgstr "Ferma tutti i dispositivi wireless"
4404 -
4405 -#~ msgid "Start All Wireless Devices"
4406 -#~ msgstr "Avvia tutti i dispositivi wireless"
4407 -
4408 -#~ msgid ""
4409 -#~ "128-bit passphrase (WEP)\n"
4410 -#~ "Ascii key (WEP)\n"
4411 -#~ "Hex key (WEP)"
4412 -#~ msgstr ""
4413 -#~ "Frase chiave a 128-bit (WEP)\n"
4414 -#~ "Chiave ASCII (WEP)\n"
4415 -#~ "Chiave esadecimale (WEP)"
4416 -
4417 -#~ msgid "Key type:"
4418 -#~ msgstr "Tipo di chiave:"
4419 -
4420 -#~ msgid "Wireless _network:"
4421 -#~ msgstr "_Rete wireless:"
4422 -
4423 -#~ msgid "Stop automatically running the networking applet?"
4424 -#~ msgstr "Fermare l'avvio automatico dell'applet di rete?"
4425 -
4426 -#~ msgid ""
4427 -#~ "The networking applet will now terminate, but will automatically launch "
4428 -#~ "the next time you login.  Would you like to stop automatically running "
4429 -#~ "the networking applet on login?"
4430 -#~ msgstr ""
4431 -#~ "L'applet di rete terminerà adesso, ma verrà avviata automaticamente al "
4432 -#~ "prossimo accesso al sistema. Si vuole fermare l'avvio automatico "
4433 -#~ "dell'applet di rete all'accesso?"
4434 -
4435 -#~ msgid "_Remove"
4436 -#~ msgstr "_Rimuovi"
4437 -
4438 -#~ msgid "<span weight=\"bold\">Wireless Networks:</span>"
4439 -#~ msgstr "<span weight=\"bold\">Reti wireless:</span>"
4440 -
4441 -#~ msgid "Hex Key:"
4442 -#~ msgstr "Chiave esadecimale:"
4443 -
4444 -#~ msgid "Copyright (C) 2004-2005 Red Hat, Inc."
4445 -#~ msgstr "Copyright © 2004-2005 Red Hat, Inc."
4446 -
4447 -#~ msgid "Connecting to a wired network..."
4448 -#~ msgstr "Connessione ad una rete cablata in corso..."
4449 -
4450 -#~ msgid "Wireless network connection"
4451 -#~ msgstr "Connessione di rete wireless"
4452 -
4453 -#~ msgid "Connecting to wireless network '%s'..."
4454 -#~ msgstr "Connessione alla rete wireless \"%s\" in corso..."
4455 -
4456 -#~ msgid "Other Wireless Networks..."
4457 -#~ msgstr "Altre reti wireless..."
4458 -
4459 -#~ msgid "Create new Wireless Network..."
4460 -#~ msgstr "Crea nuova rete wireless..."
4461 -
4462 -#~ msgid "Help"
4463 -#~ msgstr "Aiuto"
4464 -
4465 -#~ msgid "About"
4466 -#~ msgstr "Informazioni"
4467 -
4468 -#~ msgid ""
4469 -#~ "Enter the ESSID and security settings of the wireless network you wish to "
4470 -#~ "create."
4471 -#~ msgstr ""
4472 -#~ "Inserire l'ESSID e le impostazioni di sicurezza della rete wireless che "
4473 -#~ "si desidera creare."
4474 -
4475 -#~ msgid "Custom wireless network"
4476 -#~ msgstr "Rete wireless personalizzata"
4477 -
4478 -#~ msgid ""
4479 -#~ "Enter the ESSID of the wireless network to which you wish to connect."
4480 -#~ msgstr "Inserire l'ESSID della rete wireless a cui ci si vuole connettere."
4481 +#: ../src/nm-ap-security-wpa-eap.c:96 ../src/nm-ap-security-wpa-eap.c:120
4482 +msgid "WPA2 Enterprise"
4483 +msgstr "WPA2 aziendale"
4484  
4485 -#~ msgid "Connect with encryption enabled"
4486 -#~ msgstr "Connessione con cifratura attiva"
4487 +#: ../src/nm-ap-security-wpa-eap.c:98 ../src/nm-ap-security-wpa-eap.c:125
4488 +msgid "WPA Enterprise"
4489 +msgstr "WPA aziendale"
4490  
4491 -#~ msgid "Wired Network"
4492 -#~ msgstr "Rete cablata"
4493 +#: ../src/nm-ap-security-leap.c:66 ../src/nm-ap-security-leap.c:82
4494 +msgid "LEAP"
4495 +msgstr "LEAP"
4496 diff -urN NetworkManager-0.6.5/po/ja.po NetworkManager-SVNr3284/po/ja.po
4497 --- NetworkManager-0.6.5/po/ja.po       2007-04-18 20:13:10.000000000 +0200
4498 +++ NetworkManager-SVNr3284/po/ja.po    2008-02-04 16:01:02.000000000 +0100
4499 @@ -1,793 +1,95 @@
4500  # Japanese translation for NetworkManager
4501  # Copyright (C) 2005 Dan Williams <dcbw@redhat.com>
4502  # This file is distributed under the same license as the NetworkManager package.
4503 -# Satoru SATOH <ss@gnome.gr.jp>, 2005.
4504 +# Satoru SATOH <ss@gnome.gr.jp>, 2005 - 2007.
4505  #
4506  msgid ""
4507  msgstr ""
4508 -"Project-Id-Version: NetworkManager 0.3.1\n"
4509 +"Project-Id-Version: NetworkManager NETWORKMANAGER_0_6_0_RELEASE\n"
4510  "Report-Msgid-Bugs-To: \n"
4511 -"POT-Creation-Date: 2006-05-29 18:33+0200\n"
4512 -"PO-Revision-Date: 2006-06-16 14:06\n"
4513 -"Last-Translator: Novell Language <language@novell.com>\n"
4514 -"Language-Team: Novell Language <language@novell.com>\n"
4515 +"POT-Creation-Date: 2007-08-27 00:21+0900\n"
4516 +"PO-Revision-Date: 2007-08-26 23:34+0900\n"
4517 +"Last-Translator: Satoru SATOH <ss@gnome.gr.jp>\n"
4518 +"Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
4519  "MIME-Version: 1.0\n"
4520  "Content-Type: text/plain; charset=UTF-8\n"
4521  "Content-Transfer-Encoding: 8bit\n"
4522  "Plural-Forms: nplurals=1; plural=0;\n"
4523  
4524 -#: ../gnome/applet/applet-compat.c:171 ../gnome/applet/applet-dbus-info.c:919
4525 -#, c-format
4526 -msgid "Passphrase for wireless network %s"
4527 -msgstr "ワイヤレスネットワーク %s のパスフレーズ"
4528 -
4529 -#: ../gnome/applet/applet-dbus.c:265
4530 -#, c-format
4531 -msgid "Connection to the wireless network '%s' failed."
4532 -msgstr "ワイヤレスネットワーク「%s」への接続に失敗しました。 "
4533 -
4534 -#: ../gnome/applet/applet-dbus.c:270
4535 -msgid "Connection to the wired network failed."
4536 -msgstr "有線ネットワークへの接続に失敗しました。"
4537 -
4538 -#: ../gnome/applet/applet.c:184
4539 -msgid "Error displaying connection information:"
4540 -msgstr "接続情報の表示エラー:"
4541 -
4542 -#: ../gnome/applet/applet.c:202
4543 -msgid "Could not find some required resources (the glade file)!"
4544 -msgstr "必要なリソース(グレードファイル)を見つけることができませんでした。"
4545 -
4546 -#: ../gnome/applet/applet.c:213
4547 -msgid "No active connections!"
4548 -msgstr "有効な接続がありません。"
4549 -
4550 -#: ../gnome/applet/applet.c:234
4551 -#, c-format
4552 -msgid "Wired Ethernet (%s)"
4553 -msgstr "有線イーサネット(%s)"
4554 -
4555 -#: ../gnome/applet/applet.c:236
4556 -#, c-format
4557 -msgid "Wireless Ethernet (%s)"
4558 -msgstr "ワイヤレスイーサネット(%s)"
4559 -
4560 -#: ../gnome/applet/applet.c:337 ../gnome/applet/applet.c:362
4561 -msgid "NetworkManager Applet"
4562 -msgstr "NetworkManagerアプレット"
4563 -
4564 -#: ../gnome/applet/applet.c:339 ../gnome/applet/applet.c:364
4565 -msgid "Copyright © 2004-2005 Red Hat, Inc."
4566 -msgstr "Copyright © 2004-2005 Red Hat, Inc."
4567 -
4568 -#: ../gnome/applet/applet.c:340 ../gnome/applet/applet.c:365
4569 -msgid ""
4570 -"Notification area applet for managing your network devices and connections."
4571 -msgstr "ネットワークデバイスと接続を管理する通知領域アプレット。"
4572 -
4573 -#: ../gnome/applet/applet.c:343 ../gnome/applet/applet.c:370
4574 -msgid "translator-credits"
4575 -msgstr ""
4576 -"相花 毅 <aihana@gnome.gr.jp>\n"
4577 -"Akira TAGOH <tagoh@gnome.gr.jp>\n"
4578 -"Yukihiro Nakai <nakai@gnome.gr.jp>\n"
4579 -"Takuo KITAME <kitame@debian.org>\n"
4580 -"日本GNOMEユーザー会 http://www.gnome.gr.jp"
4581 -
4582 -#: ../gnome/applet/applet.c:426
4583 -msgid "VPN Login Failure"
4584 -msgstr "VPNログインの失敗"
4585 -
4586 -#: ../gnome/applet/applet.c:427
4587 -#, c-format
4588 -msgid "Could not start the VPN connection '%s' due to a login failure."
4589 -msgstr "ログインの失敗により、VPN接続「%s」を起動できませんでした。"
4590 -
4591 -#: ../gnome/applet/applet.c:431
4592 -msgid "VPN Start Failure"
4593 -msgstr "VPNの起動の失敗"
4594 -
4595 -#: ../gnome/applet/applet.c:432
4596 -#, c-format
4597 -msgid ""
4598 -"Could not start the VPN connection '%s' due to a failure launching the VPN "
4599 -"program."
4600 -msgstr ""
4601 -"VPNプログラムの起動の失敗により、VPN接続「%s」を起動できませんでした。   "
4602 -
4603 -#: ../gnome/applet/applet.c:436 ../gnome/applet/applet.c:446
4604 -msgid "VPN Connect Failure"
4605 -msgstr "VPN接続の失敗"
4606 -
4607 -#: ../gnome/applet/applet.c:437
4608 -#, c-format
4609 -msgid "Could not start the VPN connection '%s' due to a connection error."
4610 -msgstr "接続エラーにより、VPN接続「%s」を起動できませんでした。"
4611 -
4612 -#: ../gnome/applet/applet.c:441
4613 -msgid "VPN Configuration Error"
4614 -msgstr "VPN設定エラー"
4615 -
4616 -#: ../gnome/applet/applet.c:442
4617 -#, c-format
4618 -msgid "The VPN connection '%s' was not correctly configured."
4619 -msgstr "VPN接続「%s」は正しく設定されていません。"
4620 -
4621 -#: ../gnome/applet/applet.c:447
4622 -#, c-format
4623 -msgid ""
4624 -"Could not start the VPN connection '%s' because the VPN server did not "
4625 -"return an adequate network configuration."
4626 -msgstr ""
4627 -"VPNサーバーが適切なネットワーク設定を返さなかったため、VPN接続「%s」を起動で"
4628 -"きませんでした。"
4629 -
4630 -#: ../gnome/applet/applet.c:517
4631 -msgid "VPN Login Message"
4632 -msgstr "VPNログインメッセージ "
4633 -
4634 -#: ../gnome/applet/applet.c:741 ../gnome/applet/applet.c:2508
4635 -#: ../gnome/applet/other-network-dialog.c:453
4636 -#: ../gnome/applet/passphrase-dialog.c:228
4637 -msgid ""
4638 -"The NetworkManager Applet could not find some required resources (the glade "
4639 -"file was not found)."
4640 -msgstr ""
4641 -"NetworkManager アプレットはいくつかの必要なリソースglade ファイル)をみつける"
4642 -"ことができませんでした"
4643 -
4644 -#: ../gnome/applet/applet.c:753
4645 -#, c-format
4646 -msgid "The network device \"%s (%s)\" does not support wireless scanning."
4647 -msgstr ""
4648 -"ネットワークデバイス「%s (%s)」はワイヤレススキャニングをサポートしません。 "
4649 -
4650 -#: ../gnome/applet/applet.c:761
4651 -#, c-format
4652 -msgid "The network device \"%s (%s)\" does not support link detection."
4653 -msgstr "ネットワークデバイス「%s (%s)」はリンク検索をサポートしません。"
4654 -
4655 -#: ../gnome/applet/applet.c:908
4656 -#, c-format
4657 -msgid "Preparing device %s for the wired network..."
4658 -msgstr "有線ネットワークのデバイス %s を準備中..."
4659 -
4660 -#: ../gnome/applet/applet.c:910
4661 -#, c-format
4662 -msgid "Preparing device %s for the wireless network '%s'..."
4663 -msgstr "ワイヤレスネットワーク「%s」のデバイス %s を準備中..."
4664 -
4665 -#: ../gnome/applet/applet.c:918
4666 -#, c-format
4667 -msgid "Configuring device %s for the wired network..."
4668 -msgstr "有線ネットワークにデバイス %s を設定中..."
4669 -
4670 -#: ../gnome/applet/applet.c:920
4671 -#, c-format
4672 -msgid "Attempting to join the wireless network '%s'..."
4673 -msgstr "ワイヤレスネットワーク「%s」に接続中..."
4674 -
4675 -#: ../gnome/applet/applet.c:928
4676 -#, c-format
4677 -msgid "Waiting for Network Key for the wireless network '%s'..."
4678 -msgstr "ワイヤレスネットワーク「%s」のネットワークキーを待機中...."
4679 -
4680 -#: ../gnome/applet/applet.c:936 ../gnome/applet/applet.c:946
4681 -msgid "Requesting a network address from the wired network..."
4682 -msgstr "有線ネットワークからネットワークアドレスをリクエスト中..."
4683 -
4684 -#: ../gnome/applet/applet.c:938 ../gnome/applet/applet.c:948
4685 -#, c-format
4686 -msgid "Requesting a network address from the wireless network '%s'..."
4687 -msgstr "ワイヤレスネットワーク「%s」からネットワークアドレスをリクエスト中..."
4688 -
4689 -#: ../gnome/applet/applet.c:956
4690 -msgid "Finishing connection to the wired network..."
4691 -msgstr "有線ネットワークへの接続完了..."
4692 -
4693 -#: ../gnome/applet/applet.c:958
4694 -#, c-format
4695 -msgid "Finishing connection to the wireless network '%s'..."
4696 -msgstr "ワイヤレスネットワーク「%s」への接続完了..."
4697 -
4698 -#: ../gnome/applet/applet.c:1075
4699 -msgid "NetworkManager is not running"
4700 -msgstr "NetworkManager は実行されていません"
4701 -
4702 -#: ../gnome/applet/applet.c:1083 ../gnome/applet/applet.c:1828
4703 -msgid "Networking disabled"
4704 -msgstr "ネットワークが無効です"
4705 -
4706 -#: ../gnome/applet/applet.c:1088
4707 -msgid "No network connection"
4708 -msgstr "ネットワーク接続なし"
4709 -
4710 -#: ../gnome/applet/applet.c:1093
4711 -msgid "Wired network connection"
4712 -msgstr "無線ネットワーク接続"
4713 -
4714 -#: ../gnome/applet/applet.c:1097
4715 -msgid "Connected to an Ad-Hoc wireless network"
4716 -msgstr "Ad-Hoc 無線ネットワークに接続しました"
4717 -
4718 -#: ../gnome/applet/applet.c:1099
4719 -#, c-format
4720 -msgid "Wireless network connection to '%s' (%d%%)"
4721 -msgstr "「%s」(%d%%)へのワイヤレスネットワーク接続"
4722 -
4723 -#: ../gnome/applet/applet.c:1120
4724 -#, c-format
4725 -msgid "VPN connection to '%s'"
4726 -msgstr "「%s」へのVPN接続"
4727 -
4728 -#: ../gnome/applet/applet.c:1128
4729 -#, c-format
4730 -msgid "VPN connecting to '%s'"
4731 -msgstr "「%s」へのVPN接続"
4732 -
4733 -#: ../gnome/applet/applet.c:1541
4734 -msgid "_Connect to Other Wireless Network..."
4735 -msgstr "他のワイヤレスネットワークへの接続(_C)..."
4736 -
4737 -#: ../gnome/applet/applet.c:1562
4738 -msgid "Create _New Wireless Network..."
4739 -msgstr "新しいワイヤレスネットワークを作成(_N)..."
4740 -
4741 -#: ../gnome/applet/applet.c:1685
4742 -msgid "_VPN Connections"
4743 -msgstr "VPN接続(_V)"
4744 -
4745 -#: ../gnome/applet/applet.c:1730
4746 -msgid "_Configure VPN..."
4747 -msgstr "VPNの設定(_C)..."
4748 -
4749 -#: ../gnome/applet/applet.c:1734
4750 -msgid "_Disconnect VPN..."
4751 -msgstr "VPNの切断(_D)..."
4752 -
4753 -#: ../gnome/applet/applet.c:1756
4754 -msgid "_Dial Up Connections"
4755 -msgstr "ダイヤルアップ接続(_D)"
4756 -
4757 -#. FIXME: We should save and then check the state of the devices and show Connect _or_ Disconnect for each item
4758 -#: ../gnome/applet/applet.c:1767
4759 -#, c-format
4760 -msgid "Connect to %s..."
4761 -msgstr "%s に接続します..."
4762 -
4763 -#: ../gnome/applet/applet.c:1773
4764 -#, c-format
4765 -msgid "Disconnect from %s..."
4766 -msgstr "%s から接続解除します..."
4767 -
4768 -#: ../gnome/applet/applet.c:1822
4769 -msgid "No network devices have been found"
4770 -msgstr "ネットワークデバイスがみつかりませんでした"
4771 -
4772 -#: ../gnome/applet/applet.c:2014
4773 -msgid "NetworkManager is not running..."
4774 -msgstr "NetworkManager は実行されていません..."
4775 -
4776 -#. 'Enable Networking' item
4777 -#: ../gnome/applet/applet.c:2170
4778 -msgid "Enable _Networking"
4779 -msgstr "ネットワークの有効化(_N)"
4780 -
4781 -#. 'Enable Wireless' item
4782 -#: ../gnome/applet/applet.c:2176
4783 -msgid "Enable _Wireless"
4784 -msgstr "ワイヤレスの有効化(_W)"
4785 -
4786 -#. 'Connection Information' item
4787 -#: ../gnome/applet/applet.c:2182
4788 -msgid "Connection _Information"
4789 -msgstr "接続情報(_I)"
4790 -
4791 -#. Help item
4792 -#: ../gnome/applet/applet.c:2193
4793 -msgid "_Help"
4794 -msgstr "ヘルプ(_H)"
4795 -
4796 -#. About item
4797 -#: ../gnome/applet/applet.c:2202
4798 -msgid "_About"
4799 -msgstr "情報(_A)"
4800 -
4801 -#: ../gnome/applet/applet.c:2667
4802 -msgid ""
4803 -"The NetworkManager applet could not find some required resources.  It cannot "
4804 -"continue.\n"
4805 -msgstr ""
4806 -"NetworkManagerアプレットは必要なリソースを見つけることができませんでした。続"
4807 -"行できません。\n"
4808 -
4809 -#: ../gnome/applet/wireless-security-option.c:157
4810 -msgid "Open System"
4811 -msgstr "オープンシステム"
4812 -
4813 -#: ../gnome/applet/wireless-security-option.c:160
4814 -msgid "Shared Key"
4815 -msgstr "共有キー"
4816 -
4817 -#: ../gnome/applet/wireless-security-option.c:208
4818 -msgid "Automatic (Default)"
4819 -msgstr "自動(デフォルト)"
4820 -
4821 -#: ../gnome/applet/wireless-security-option.c:215
4822 -msgid "AES-CCMP"
4823 -msgstr "AES-CCMP"
4824 -
4825 -#: ../gnome/applet/wireless-security-option.c:223
4826 -msgid "TKIP"
4827 -msgstr "TKIP"
4828 -
4829 -#: ../gnome/applet/wireless-security-option.c:231
4830 -msgid "Dynamic WEP"
4831 -msgstr "動的WEP"
4832 -
4833 -#: ../gnome/applet/wso-none.c:53
4834 -msgid "None"
4835 -msgstr "なし"
4836 -
4837 -#: ../gnome/applet/wso-wep-ascii.c:138
4838 -msgid "WEP 64/128-bit ASCII"
4839 -msgstr "WEP 64/128ビットASCII"
4840 -
4841 -#: ../gnome/applet/wso-wep-hex.c:135
4842 -msgid "WEP 64/128-bit Hex"
4843 -msgstr "WEP 64/128ビット16進数"
4844 -
4845 -#: ../gnome/applet/wso-wep-passphrase.c:135
4846 -msgid "WEP 128-bit Passphrase"
4847 -msgstr "WEP 128-ビットパラフレーズ"
4848 -
4849 -#: ../gnome/applet/wso-wpa-eap.c:237
4850 -msgid "PEAP"
4851 -msgstr "PEAP"
4852 -
4853 -#: ../gnome/applet/wso-wpa-eap.c:238
4854 -msgid "TLS"
4855 -msgstr "TLS"
4856 -
4857 -#: ../gnome/applet/wso-wpa-eap.c:239
4858 -msgid "TTLS"
4859 -msgstr "TTLS"
4860 -
4861 -#: ../gnome/applet/wso-wpa-eap.c:247 ../src/nm-ap-security-wpa-eap.c:92
4862 -#: ../src/nm-ap-security-wpa-eap.c:116
4863 -msgid "WPA2 Enterprise"
4864 -msgstr "WPA Enterprise"
4865 -
4866 -#: ../gnome/applet/wso-wpa-eap.c:249 ../src/nm-ap-security-wpa-eap.c:94
4867 -#: ../src/nm-ap-security-wpa-eap.c:121
4868 -msgid "WPA Enterprise"
4869 -msgstr "WPA Enterprise"
4870 -
4871 -#: ../gnome/applet/wso-wpa-psk.c:178
4872 -msgid "WPA2 Personal"
4873 -msgstr "WPA Personal"
4874 -
4875 -#: ../gnome/applet/wso-wpa-psk.c:180
4876 -msgid "WPA Personal"
4877 -msgstr "WPA Personal"
4878 -
4879 -#: ../gnome/applet/eggtrayicon.c:134
4880 -msgid "Orientation"
4881 -msgstr "向き"
4882 -
4883 -#: ../gnome/applet/eggtrayicon.c:135
4884 -msgid "The orientation of the tray."
4885 -msgstr "トレイの向き"
4886 -
4887 -#: ../gnome/applet/menu-items.c:88
4888 -#, c-format
4889 -msgid "Wired Network (%s)"
4890 -msgstr "無線ネットワーク (%s)"
4891 -
4892 -#: ../gnome/applet/menu-items.c:91
4893 -msgid "_Wired Network"
4894 -msgstr "有線ネットワーク(_W)"
4895 -
4896 -#: ../gnome/applet/menu-items.c:162
4897 -#, c-format
4898 -msgid "Wireless Network (%s)"
4899 -msgid_plural "Wireless Networks (%s)"
4900 -msgstr[0] "無線ネットワーク (%s)"
4901 -msgstr[1] "無線ネットワーク (%s)"
4902 -
4903 -#: ../gnome/applet/menu-items.c:164
4904 -msgid "Wireless Network"
4905 -msgid_plural "Wireless Networks"
4906 -msgstr[0] "無線ネットワーク"
4907 -msgstr[1] "無線ネットワーク"
4908 -
4909 -#: ../gnome/applet/menu-items.c:343
4910 -msgid " (invalid Unicode)"
4911 -msgstr " (不正な Unicode)"
4912 -
4913 -#: ../gnome/applet/other-network-dialog.c:352
4914 -#, c-format
4915 -msgid ""
4916 -"By default, the wireless network's name is set to your computer's name, %s, "
4917 -"with no encryption enabled"
4918 -msgstr ""
4919 -"デフォルトでは、暗号化が無効の状態で、ワイヤレスネットワーク名がコンピュータ"
4920 -"名 %s に設定されます。"
4921 -
4922 -#: ../gnome/applet/other-network-dialog.c:358
4923 -msgid "Create new wireless network"
4924 -msgstr "新しい無線ネットワークを作成"
4925 -
4926 -#: ../gnome/applet/other-network-dialog.c:359
4927 -msgid ""
4928 -"Enter the name and security settings of the wireless network you wish to "
4929 -"create."
4930 -msgstr "作成するワイヤレスネットワークの名前とセキュリティ設定を入力します。"
4931 -
4932 -#: ../gnome/applet/other-network-dialog.c:363
4933 -msgid "Create New Wireless Network"
4934 -msgstr "新しい無線ネットワークを作成"
4935 -
4936 -#: ../gnome/applet/other-network-dialog.c:368
4937 -msgid "Existing wireless network"
4938 -msgstr "既存のワイヤレスネットワーク"
4939 -
4940 -#: ../gnome/applet/other-network-dialog.c:369
4941 -msgid "Enter the name of the wireless network to which you wish to connect."
4942 -msgstr "接続するワイヤレスネットワークの名前を入力します。"
4943 -
4944 -#: ../gnome/applet/other-network-dialog.c:371
4945 -msgid "Connect to Other Wireless Network"
4946 -msgstr "他のワイヤレスネットワークへの接続"
4947 -
4948 -#: ../gnome/applet/passphrase-dialog.c:215
4949 -msgid "Error connecting to wireless network"
4950 -msgstr "ワイヤレスネットワークへの接続エラー"
4951 -
4952 -#: ../gnome/applet/passphrase-dialog.c:216
4953 -msgid ""
4954 -"The requested wireless network requires security capabilities unsupported by "
4955 -"your hardware."
4956 -msgstr ""
4957 -"リクエストされたワイヤレスネットワークには、ハードウェアでサポートされていな"
4958 -"いセキュリティ機能が必要です。"
4959 -
4960 -#: ../gnome/applet/vpn-password-dialog.c:151
4961 -#: ../gnome/applet/vpn-password-dialog.c:188
4962 -#, c-format
4963 -msgid "Cannot start VPN connection '%s'"
4964 -msgstr "VPN接続「%s」を起動できません"
4965 -
4966 -#: ../gnome/applet/vpn-password-dialog.c:154
4967 -#, c-format
4968 -msgid ""
4969 -"Could not find the authentication dialog for VPN connection type '%s'. "
4970 -"Contact your system administrator."
4971 -msgstr ""
4972 -"VPN接続タイプ「%s」の認証ダイアログを見つけることができませんでした。システム"
4973 -"管理者にご連絡ください。 "
4974 -
4975 -#: ../gnome/applet/vpn-password-dialog.c:191
4976 -#, c-format
4977 -msgid ""
4978 -"There was a problem launching the authentication dialog for VPN connection "
4979 -"type '%s'. Contact your system administrator."
4980 -msgstr ""
4981 -"VPN接続タイプ「%s」の認証ダイアログを起動する際に問題が発生しました。システム"
4982 -"管理者にご連絡ください。 "
4983 -
4984 -#: ../gnome/applet/applet.glade.h:1
4985 -msgid " "
4986 -msgstr " "
4987 -
4988 -#: ../gnome/applet/applet.glade.h:2
4989 -msgid ""
4990 -"<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
4991 -msgstr "<span weight=\"bold\" size=\"larger\">有効な接続情報</span>"
4992 -
4993 -#: ../gnome/applet/applet.glade.h:4
4994 -#, no-c-format
4995 -msgid ""
4996 -"<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
4997 -"Network</span>\n"
4998 -"\n"
4999 -"A passphrase or encryption key is required to access the wireless network '%"
5000 -"s'."
5001 -msgstr ""
5002 -"<span weight=\"bold\" size=\"larger\">無線ネットワークにはパスフレーズが必要"
5003 -"です</span>\n"
5004 -"\n"
5005 -"無線ネットワーク '%s' にアクセスするにはパスフレーズか暗号化鍵が必要です"
5006 -
5007 -#: ../gnome/applet/applet.glade.h:8
5008 -#, no-c-format
5009 -msgid ""
5010 -"<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</span>\n"
5011 -"\n"
5012 -"%s  It will not be completely functional."
5013 -msgstr ""
5014 -"<span weight=\"bold\" size=\"larger\">縮小されたネットワーク機能</span>\n"
5015 -"\n"
5016 -"%s  完全には機能しません。"
5017 -
5018 -#: ../gnome/applet/applet.glade.h:12
5019 -#, no-c-format
5020 -msgid ""
5021 -"<span weight=\"bold\" size=\"larger\">Wireless Network Login Confirmation</"
5022 -"span>\n"
5023 -"\n"
5024 -"You have chosen to log in to the wireless network '%s'.  If you are sure "
5025 -"that this wireless network is secure, click the checkbox below and "
5026 -"NetworkManager will not require confirmation on subsequent log ins."
5027 -msgstr ""
5028 -"<span weight=\"bold\" size=\"larger\">Wireless Network Login 確認</span>\n"
5029 -"\n"
5030 -"ワイヤレスネットワーク「%s」にログインするように選択しました。このワイヤレス"
5031 -"ネットワークがセキュアである場合、次のチェックボックスを有効にすると、"
5032 -"NetworkManagerは次回以降のログインで確認を要求しません。"
5033 -
5034 -#: ../gnome/applet/applet.glade.h:15
5035 -msgid "Anonymous Identity:"
5036 -msgstr "匿名識別情報:"
5037 -
5038 -#: ../gnome/applet/applet.glade.h:16
5039 -msgid "Authentication:"
5040 -msgstr "認証:"
5041 -
5042 -#: ../gnome/applet/applet.glade.h:17
5043 -msgid "Broadcast Address:"
5044 -msgstr "ブロードキャストアドレス:"
5045 -
5046 -#: ../gnome/applet/applet.glade.h:18
5047 -msgid "CA Certificate File:"
5048 -msgstr "CA認定ファイル:"
5049 -
5050 -#: ../gnome/applet/applet.glade.h:19
5051 -msgid "C_onnect"
5052 -msgstr "接続(_O)"
5053 -
5054 -#: ../gnome/applet/applet.glade.h:20
5055 -msgid "Client Certificate File:"
5056 -msgstr "クライアント認定ファイル:"
5057 -
5058 -#: ../gnome/applet/applet.glade.h:21
5059 -msgid "Connection Information"
5060 -msgstr "接続情報"
5061 -
5062 -#: ../gnome/applet/applet.glade.h:22
5063 -msgid "Default Route:"
5064 -msgstr "デフォルトルート:"
5065 -
5066 -#: ../gnome/applet/applet.glade.h:23
5067 -msgid "Destination Address:"
5068 -msgstr "送信先アドレス:"
5069 -
5070 -#: ../gnome/applet/applet.glade.h:24
5071 -msgid "Driver:"
5072 -msgstr "ドライバ:"
5073 -
5074 -#: ../gnome/applet/applet.glade.h:25
5075 -msgid "EAP Method:"
5076 -msgstr "EAPメソッド:"
5077 -
5078 -#: ../gnome/applet/applet.glade.h:26
5079 -msgid "Hardware Address:"
5080 -msgstr "ハードウェアアドレス:"
5081 -
5082 -#: ../gnome/applet/applet.glade.h:27
5083 -msgid "IP Address:"
5084 -msgstr "IPアドレス:"
5085 -
5086 -#: ../gnome/applet/applet.glade.h:28
5087 -msgid "Identity:"
5088 -msgstr "識別情報:"
5089 -
5090 -#: ../gnome/applet/applet.glade.h:29
5091 -msgid "Interface:"
5092 -msgstr "インタフェース:"
5093 -
5094 -#: ../gnome/applet/applet.glade.h:30
5095 -msgid "Key Type:"
5096 -msgstr "鍵の種別"
5097 -
5098 -#: ../gnome/applet/applet.glade.h:31
5099 -msgid "Key:"
5100 -msgstr "キー:"
5101 -
5102 -#: ../gnome/applet/applet.glade.h:32
5103 -msgid ""
5104 -"None\n"
5105 -"WEP 128-bit Passphrase\n"
5106 -"WEP 64/128-bit Hex\n"
5107 -"WEP 64/128-bit ASCII\n"
5108 -msgstr ""
5109 -"なし\n"
5110 -"WEP 128-ビットパスフレーズ\n"
5111 -"WEP 64/128-16ビット\n"
5112 -"WEP 64/128-ビット ASCII\n"
5113 -
5114 -#: ../gnome/applet/applet.glade.h:37
5115 -msgid ""
5116 -"Open System\n"
5117 -"Shared Key"
5118 -msgstr ""
5119 -"システム\n"
5120 -"共有キーを開く"
5121 -
5122 -#: ../gnome/applet/applet.glade.h:39
5123 -msgid "Other Wireless Network..."
5124 -msgstr "他のワイヤレスネットワーク..."
5125 -
5126 -#: ../gnome/applet/applet.glade.h:40
5127 -msgid "Passphrase:"
5128 -msgstr "パスフレーズ:"
5129 -
5130 -#: ../gnome/applet/applet.glade.h:41
5131 -msgid "Password:"
5132 -msgstr "パスワード:"
5133 -
5134 -#: ../gnome/applet/applet.glade.h:42
5135 -msgid "Primary DNS:"
5136 -msgstr "プライマリDNS:"
5137 -
5138 -#: ../gnome/applet/applet.glade.h:43
5139 -msgid "Private Key File:"
5140 -msgstr "プライベートキーファイル:"
5141 -
5142 -#: ../gnome/applet/applet.glade.h:44
5143 -msgid "Private Key Password:"
5144 -msgstr "プライベートキーパスワード:"
5145 -
5146 -#: ../gnome/applet/applet.glade.h:45
5147 -msgid "Secondary DNS:"
5148 -msgstr "セカンダリDNS:"
5149 -
5150 -#: ../gnome/applet/applet.glade.h:46
5151 -msgid "Select the CA Certificate File"
5152 -msgstr "Ca証明書ファイルを選択する"
5153 -
5154 -#: ../gnome/applet/applet.glade.h:47
5155 -msgid "Select the Client Certificate File"
5156 -msgstr "クライアント証明書ファイルを選択する"
5157 -
5158 -#: ../gnome/applet/applet.glade.h:48
5159 -msgid "Select the Private Key File"
5160 -msgstr "プライベートキーファイルを選択する"
5161 -
5162 -#: ../gnome/applet/applet.glade.h:49
5163 -msgid "Show key"
5164 -msgstr "キーを表示する"
5165 -
5166 -#: ../gnome/applet/applet.glade.h:50
5167 -msgid "Show passphrase"
5168 -msgstr "パスフレーズを表示する"
5169 -
5170 -#: ../gnome/applet/applet.glade.h:51
5171 -msgid "Show password"
5172 -msgstr "パスワードを表示する"
5173 -
5174 -#: ../gnome/applet/applet.glade.h:52
5175 -msgid "Show passwords"
5176 -msgstr "パスワードを表示する"
5177 -
5178 -#: ../gnome/applet/applet.glade.h:53
5179 -msgid "Speed:"
5180 -msgstr "速度:"
5181 -
5182 -#: ../gnome/applet/applet.glade.h:54
5183 -msgid "Subnet Mask:"
5184 -msgstr "サブネットマスク:"
5185 -
5186 -#: ../gnome/applet/applet.glade.h:55
5187 -msgid "Type:"
5188 -msgstr "種別:"
5189 -
5190 -#: ../gnome/applet/applet.glade.h:56
5191 -msgid "User Name:"
5192 -msgstr "ユーザ名:"
5193 -
5194 -#: ../gnome/applet/applet.glade.h:57
5195 -msgid "Wireless Network Key Required"
5196 -msgstr "無線ネットワーク鍵が必要です"
5197 -
5198 -#: ../gnome/applet/applet.glade.h:58
5199 -msgid "Wireless _adapter:"
5200 -msgstr "無線アダプタ(_A):"
5201 -
5202 -#: ../gnome/applet/applet.glade.h:59
5203 -msgid "_Always Trust this Wireless Network"
5204 -msgstr "このワイヤレスネットワークを常に信頼する(_A)"
5205 -
5206 -#: ../gnome/applet/applet.glade.h:60
5207 -msgid "_Don't remind me again"
5208 -msgstr "このダイアログを再表示しない(_D)"
5209 -
5210 -#: ../gnome/applet/applet.glade.h:61
5211 -msgid "_Login to Network"
5212 -msgstr "ネットワークにログイン(_L)"
5213 -
5214 -#: ../gnome/applet/applet.glade.h:62
5215 -msgid "_Network Name:"
5216 -msgstr "ネットワーク名(_N):"
5217 -
5218 -#: ../gnome/applet/applet.glade.h:63
5219 -msgid "_Wireless Security:"
5220 -msgstr "ワイヤレスセキュリティ(_W):"
5221 -
5222 -#: ../gnome/vpn-properties/nm-vpn-properties.c:383
5223 +#: ../gnome/vpn-properties/nm-vpn-properties.c:405
5224  msgid "Cannot add VPN connection"
5225 -msgstr "VPN接続を追加できません"
5226 +msgstr "VPN 接続を追加できません"
5227  
5228 -#: ../gnome/vpn-properties/nm-vpn-properties.c:385
5229 +#: ../gnome/vpn-properties/nm-vpn-properties.c:407
5230  msgid ""
5231  "No suitable VPN software was found on your system. Contact your system "
5232  "administrator."
5233  msgstr ""
5234 -"システムに適切なVPNソフトウェアが見つかりませんでした。システム管理者にご連絡"
5235 -"ください。"
5236 +"システムに適切な VPN ソフトウェアがみつかりませんでした。システム管理者にご連"
5237 +"絡ください。"
5238  
5239 -#: ../gnome/vpn-properties/nm-vpn-properties.c:437
5240 +#: ../gnome/vpn-properties/nm-vpn-properties.c:457
5241  msgid "Cannot import VPN connection"
5242 -msgstr "VPN接続をインポートできません"
5243 +msgstr "VPN 接続をインポートできません"
5244  
5245 -#: ../gnome/vpn-properties/nm-vpn-properties.c:439
5246 +#: ../gnome/vpn-properties/nm-vpn-properties.c:459
5247  #, c-format
5248  msgid ""
5249  "Cannot find suitable software for VPN connection type '%s' to import the "
5250  "file '%s'. Contact your system administrator."
5251  msgstr ""
5252 -"VPN接続タイプ「%s」がファイル「%s」をインポートするために適切なソフトウェアが"
5253 -"見つかりません。システム管理者にご連絡ください。"
5254 +"VPN 接続タイプ「%s」がファイル「%s」をインポートするために適切なソフトウェア"
5255 +"が見つかりません。システム管理者にご連絡ください。"
5256  
5257 -#: ../gnome/vpn-properties/nm-vpn-properties.c:579
5258 +#: ../gnome/vpn-properties/nm-vpn-properties.c:596
5259  #, c-format
5260  msgid "Error retrieving VPN connection '%s'"
5261 -msgstr "VPN接続「%s」の取得エラー"
5262 +msgstr "VPN 接続「%s」の取得エラー"
5263  
5264 -#: ../gnome/vpn-properties/nm-vpn-properties.c:582
5265 +#: ../gnome/vpn-properties/nm-vpn-properties.c:599
5266  #, c-format
5267  msgid ""
5268  "Could not find the UI files for VPN connection type '%s'. Contact your "
5269  "system administrator."
5270  msgstr ""
5271 -"VPN接続タイプ「%s」のUIファイルが見つかりませんでした。システム管理者にご連絡"
5272 -"ください。"
5273 +"VPN 接続タイプ「%s」の UI ファイルがみつかりませんでした。システム管理者にご"
5274 +"連絡ください。"
5275  
5276 -#: ../gnome/vpn-properties/nm-vpn-properties.c:739
5277 +#: ../gnome/vpn-properties/nm-vpn-properties.c:746
5278  #, c-format
5279  msgid "Delete VPN connection \"%s\"?"
5280 -msgstr "VPN接続「%s」を削除しますか?"
5281 +msgstr "VPN 接続「%s」を削除しますか?"
5282  
5283 -#: ../gnome/vpn-properties/nm-vpn-properties.c:742
5284 +#: ../gnome/vpn-properties/nm-vpn-properties.c:749
5285  #, c-format
5286  msgid ""
5287  "All information about the VPN connection \"%s\" will be lost and you may "
5288  "need your system administrator to provide information to create a new "
5289  "connection."
5290  msgstr ""
5291 -"VPN接続「%s」に関する情報はすべて失われます。システム管理者が新しい接続を作成"
5292 -"するための情報を提供する必要があります。"
5293 +"VPN 接続「%s」に関する情報はすべて失われます。システム管理者が新しい接続を作"
5294 +"成するための情報を提供する必要があります。"
5295  
5296 -#: ../gnome/vpn-properties/nm-vpn-properties.c:959
5297 +#: ../gnome/vpn-properties/nm-vpn-properties.c:963
5298  msgid "Unable to load"
5299  msgstr "ロードできません"
5300  
5301 -#: ../gnome/vpn-properties/nm-vpn-properties.c:961
5302 +#: ../gnome/vpn-properties/nm-vpn-properties.c:965
5303  msgid "Cannot find some needed resources (the glade file)!"
5304  msgstr "必要なリソースが見つかりません(グレードファイル)。"
5305  
5306  #. Edit dialog
5307 -#: ../gnome/vpn-properties/nm-vpn-properties.c:1071
5308 +#: ../gnome/vpn-properties/nm-vpn-properties.c:1084
5309  msgid "Edit VPN Connection"
5310 -msgstr "VPN接続を編集します"
5311 +msgstr "VPN 接続を編集します"
5312  
5313  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:1
5314  msgid "Add a new VPN connection"
5315 -msgstr "新しいVPN接続を追加します"
5316 +msgstr "新しい VPN 接続を追加します"
5317  
5318  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:2
5319  msgid "Choose which type of VPN connection you wish to create."
5320 -msgstr "作成するVPN接続のタイプを選択します。"
5321 +msgstr "作成する VPN 接続のタイプを選択します。"
5322  
5323  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:3
5324  msgid "Connect to:"
5325 @@ -795,19 +97,19 @@
5326  
5327  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:4
5328  msgid "Create VPN Connection"
5329 -msgstr "VPN接続を作成する"
5330 +msgstr "VPN 接続を作成する"
5331  
5332  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:5
5333  msgid "Create VPN Connection - 1 of 2"
5334 -msgstr "VPN接続を作成します - 1/2"
5335 +msgstr "VPN 接続を作成します - 1/2"
5336  
5337  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:6
5338  msgid "Create VPN Connection - 2 of 2"
5339 -msgstr "VPN接続を作成します - 2/2"
5340 +msgstr "VPN 接続を作成します - 2/2"
5341  
5342  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:7
5343  msgid "Delete the selected VPN connection"
5344 -msgstr "選択したVPN接続を削除します "
5345 +msgstr "選択した VPN 接続を削除します "
5346  
5347  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:8
5348  msgid "E_xport"
5349 @@ -815,19 +117,19 @@
5350  
5351  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:9
5352  msgid "Edit the selected VPN connection"
5353 -msgstr "選択したVPN接続を編集する"
5354 +msgstr "選択した VPN 接続を編集する"
5355  
5356  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:10
5357  msgid "Export the VPN settings to a file"
5358 -msgstr "VPN設定をファイルにエクスポートする"
5359 +msgstr "VPN 設定をファイルにエクスポートする"
5360  
5361  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:11
5362  msgid "Export the selected VPN connection to a file"
5363 -msgstr "選択したVPN接続をファイルにエクスポートする"
5364 +msgstr "選択した VPN 接続をファイルにエクスポートする"
5365  
5366  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:12
5367  msgid "Finish Creating VPN Connection"
5368 -msgstr "VPN接続の作成を完了する"
5369 +msgstr "VPN 接続の作成を完了する"
5370  
5371  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:13
5372  msgid "Manage Virtual Private Network Connections"
5373 @@ -841,22 +143,22 @@
5374  "It will require some information, such as IP addresses and secrets.  Please "
5375  "see your system administrator to obtain this information."
5376  msgstr ""
5377 -"このアシスタントに従って、仮想プライベートネットワーク(VPN)への接続を作成でき"
5378 -"ます。\n"
5379 +"このアシスタントに従って、仮想プライベートネットワーク (VPN) への接続を作成で"
5380 +"きます。\n"
5381  "\n"
5382 -"IPアドレスなどの情報が必要です。"
5383 +"IP アドレスなどの情報が必要です。"
5384  
5385  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:17
5386  msgid "VPN Connections"
5387 -msgstr "VPN接続"
5388 +msgstr "VPN 接続"
5389  
5390  #: ../src/nm-ap-security-wep.c:52
5391  msgid "40-bit WEP"
5392 -msgstr "40-ビットWEP"
5393 +msgstr "40-ビット WEP"
5394  
5395  #: ../src/nm-ap-security-wep.c:54
5396  msgid "104-bit WEP"
5397 -msgstr "104-ビットWEP"
5398 +msgstr "104-ビット WEP"
5399  
5400  #: ../src/nm-ap-security-wpa-psk.c:50
5401  msgid "WPA TKIP"
5402 @@ -868,7 +170,7 @@
5403  
5404  #: ../src/nm-ap-security-wpa-psk.c:54
5405  msgid "WPA Automatic"
5406 -msgstr "WPA自動"
5407 +msgstr "WPA 自動"
5408  
5409  #: ../src/nm-ap-security-wpa-psk.c:59
5410  msgid "WPA2 TKIP"
5411 @@ -880,13 +182,13 @@
5412  
5413  #: ../src/nm-ap-security-wpa-psk.c:63
5414  msgid "WPA2 Automatic"
5415 -msgstr "WPA2自動"
5416 +msgstr "WPA2 自動"
5417  
5418 -#: ../src/nm-ap-security.c:320
5419 +#: ../src/nm-ap-security.c:338
5420  msgid "none"
5421  msgstr "なし"
5422  
5423 -#: ../src/nm-netlink-monitor.c:154
5424 +#: ../src/nm-netlink-monitor.c:170
5425  #, c-format
5426  msgid ""
5427  "unable to create netlink socket for monitoring wired ethernet devices - %s"
5428 @@ -894,7 +196,7 @@
5429  "有線イーサネットデバイスをモニターするネットリンクソケットを作成できません - "
5430  "%s"
5431  
5432 -#: ../src/nm-netlink-monitor.c:172
5433 +#: ../src/nm-netlink-monitor.c:188
5434  #, c-format
5435  msgid ""
5436  "unable to bind to netlink socket for monitoring wired ethernet devices - %s"
5437 @@ -902,84 +204,39 @@
5438  "有線イーサネットデバイスをモニターするネットリンクソケットをバインドできませ"
5439  "ん - %s "
5440  
5441 -#: ../src/nm-netlink-monitor.c:405
5442 +#: ../src/nm-netlink-monitor.c:426
5443 +#, c-format
5444  msgid "operation took too long"
5445  msgstr "操作に時間がかかり過ぎました"
5446  
5447 -#: ../src/nm-netlink-monitor.c:502
5448 +#: ../src/nm-netlink-monitor.c:523
5449 +#, c-format
5450  msgid "received data from wrong type of sender"
5451  msgstr "不正な送信者からデータを受信しました"
5452  
5453 -#: ../src/nm-netlink-monitor.c:515
5454 +#: ../src/nm-netlink-monitor.c:536
5455 +#, c-format
5456  msgid "received data from unexpected sender"
5457  msgstr "予期せぬ送信者からデータを受信しました"
5458  
5459 -#: ../src/nm-netlink-monitor.c:646
5460 +#: ../src/nm-netlink-monitor.c:665
5461 +#, c-format
5462  msgid "too much data was sent over socket and some of it was lost"
5463  msgstr "ソケット上に送信されたデータが多過ぎ、その一部は失われました"
5464  
5465 -#: ../src/nm-netlink-monitor.c:735
5466 +#: ../src/nm-netlink-monitor.c:775
5467 +#, c-format
5468  msgid "error occurred while waiting for data on socket"
5469  msgstr "ソケット上でデータを待機中にエラーが発生しました"
5470  
5471 -#: ../gnome/applet/applet-dbus-devices.c:898
5472 -#, c-format
5473 -msgid "You are now connected to the Ad-Hoc wireless network '%s'."
5474 -msgstr "Ad-Hocワイヤレスネットワーク「%s」に現在接続されています。"
5475 +#: ../src/nm-ap-security-wpa-eap.c:95 ../src/nm-ap-security-wpa-eap.c:119
5476 +msgid "WPA2 Enterprise"
5477 +msgstr "WPA Enterprise"
5478  
5479 -#: ../gnome/applet/applet-dbus-devices.c:903
5480 -#, c-format
5481 -msgid "You are now connected to the wireless network '%s'."
5482 -msgstr "ワイヤレスネットワーク「%s」に現在接続されています。"
5483 -
5484 -#: ../gnome/applet/applet-dbus-devices.c:910
5485 -msgid "You are now connected to the wired network."
5486 -msgstr "有線ネットワークに現在接続されています。"
5487 -
5488 -#: ../gnome/applet/applet-dbus-devices.c:916
5489 -msgid "Connection Established"
5490 -msgstr "接続が確立されました"
5491 -
5492 -#: ../gnome/applet/applet-dbus-devices.c:959
5493 -msgid "Disconnected"
5494 -msgstr "切断しました"
5495 -
5496 -#: ../gnome/applet/applet-dbus-devices.c:960
5497 -msgid "The network connection has been disconnected."
5498 -msgstr "ネットワーク接続が解除されました。"
5499 -
5500 -#~ msgid "Modify Wireless Networks"
5501 -#~ msgstr "無線ネットワークを変更"
5502 -
5503 -#~ msgid "*"
5504 -#~ msgstr "*"
5505 -
5506 -#~ msgid ""
5507 -#~ "128-bit Passphrase (WEP)\n"
5508 -#~ "Ascii Key (WEP)\n"
5509 -#~ "Hex Key (WEP)"
5510 -#~ msgstr ""
5511 -#~ "128-bit パスフレーズ (WEP)\n"
5512 -#~ "ASCII 鍵 (WEP)\n"
5513 -#~ "16 進鍵 (WEP)"
5514 -
5515 -#~ msgid "Ascii Key:"
5516 -#~ msgstr "ASCII 鍵:"
5517 -
5518 -#~ msgid "You must log in to access the private network %s"
5519 -#~ msgstr ""
5520 -#~ "プライベートネットワーク %s にアクセスするにはログインしなければいけません"
5521 -
5522 -#~ msgid "Stop automatically running the networking applet?"
5523 -#~ msgstr "ネットワークアップレットの実行を自動的に停止しますか?"
5524 -
5525 -#~ msgid ""
5526 -#~ "The networking applet will now terminate, but will automatically launch "
5527 -#~ "the next time you login.  Would you like to stop automatically running "
5528 -#~ "the networking applet on login?"
5529 -#~ msgstr ""
5530 -#~ "ネットワークアプレットは終了しますが、次にログインする際に自動的に起動しま"
5531 -#~ "す。ログイン時にネットワークアプレットの自動起動を停止しますか?"
5532 +#: ../src/nm-ap-security-wpa-eap.c:97 ../src/nm-ap-security-wpa-eap.c:124
5533 +msgid "WPA Enterprise"
5534 +msgstr "WPA Enterprise"
5535  
5536 -#~ msgid "_Remove"
5537 -#~ msgstr "削除(_R)"
5538 +#: ../src/nm-ap-security-leap.c:66 ../src/nm-ap-security-leap.c:82
5539 +msgid "LEAP"
5540 +msgstr "LEAP"
5541 diff -urN NetworkManager-0.6.5/po/nb.po NetworkManager-SVNr3284/po/nb.po
5542 --- NetworkManager-0.6.5/po/nb.po       2007-04-18 20:13:10.000000000 +0200
5543 +++ NetworkManager-SVNr3284/po/nb.po    2008-02-04 16:01:02.000000000 +0100
5544 @@ -8,8 +8,8 @@
5545  msgstr ""
5546  "Project-Id-Version: NetworkManager 0.1.x\n"
5547  "Report-Msgid-Bugs-To: \n"
5548 -"POT-Creation-Date: 2006-05-29 18:33+0200\n"
5549 -"PO-Revision-Date: 2006-03-02 12:59+0100\n"
5550 +"POT-Creation-Date: 2007-06-04 12:37+0200\n"
5551 +"PO-Revision-Date: 2007-06-04 12:38+0200\n"
5552  "Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
5553  "Language-Team: Norwegian Bokmal <i18n-nb@lister.ping.uio.no>\n"
5554  "MIME-Version: 1.0\n"
5555 @@ -17,710 +17,11 @@
5556  "Content-Transfer-Encoding: 8bit\n"
5557  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
5558  
5559 -#: ../gnome/applet/applet-compat.c:171 ../gnome/applet/applet-dbus-info.c:919
5560 -#, c-format
5561 -msgid "Passphrase for wireless network %s"
5562 -msgstr "Passord for trådløst nettverk %s"
5563 -
5564 -#: ../gnome/applet/applet-dbus.c:265
5565 -#, c-format
5566 -msgid "Connection to the wireless network '%s' failed."
5567 -msgstr "Tilkobling til trådløst nettverk «%s» feilet."
5568 -
5569 -#: ../gnome/applet/applet-dbus.c:270
5570 -msgid "Connection to the wired network failed."
5571 -msgstr "Tilkobling til trådløst nettverk feilet."
5572 -
5573 -#: ../gnome/applet/applet.c:184
5574 -msgid "Error displaying connection information:"
5575 -msgstr "Feil under visning av tilkoblingsinformasjon:"
5576 -
5577 -#: ../gnome/applet/applet.c:202
5578 -msgid "Could not find some required resources (the glade file)!"
5579 -msgstr "Fant ikke nødvendige ressurser (glade-filen)."
5580 -
5581 -#: ../gnome/applet/applet.c:213
5582 -msgid "No active connections!"
5583 -msgstr "Ingen aktive tilkoblinger!"
5584 -
5585 -#: ../gnome/applet/applet.c:234
5586 -#, c-format
5587 -msgid "Wired Ethernet (%s)"
5588 -msgstr "Kablet nettverk (%s)"
5589 -
5590 -#: ../gnome/applet/applet.c:236
5591 -#, c-format
5592 -msgid "Wireless Ethernet (%s)"
5593 -msgstr "Trådløst nettverk (%s)"
5594 -
5595 -#: ../gnome/applet/applet.c:337 ../gnome/applet/applet.c:362
5596 -msgid "NetworkManager Applet"
5597 -msgstr "NetworkManager panelprogram"
5598 -
5599 -#: ../gnome/applet/applet.c:339 ../gnome/applet/applet.c:364
5600 -msgid "Copyright © 2004-2005 Red Hat, Inc."
5601 -msgstr "Opphavsrett © 2004-2005 Red Hat, Inc."
5602 -
5603 -#: ../gnome/applet/applet.c:340 ../gnome/applet/applet.c:365
5604 -msgid ""
5605 -"Notification area applet for managing your network devices and connections."
5606 -msgstr "Et panelprogram for å håndtere nettverksenheter og tilkoblinger."
5607 -
5608 -#: ../gnome/applet/applet.c:343 ../gnome/applet/applet.c:370
5609 -msgid "translator-credits"
5610 -msgstr "Kjartan Maraas <kmaraas@gnome.org>"
5611 -
5612 -#: ../gnome/applet/applet.c:426
5613 -msgid "VPN Login Failure"
5614 -msgstr "Feil ved VPN-pålogging"
5615 -
5616 -#: ../gnome/applet/applet.c:427
5617 -#, c-format
5618 -msgid "Could not start the VPN connection '%s' due to a login failure."
5619 -msgstr "Kunne ikke starte VPN-tilkobling «%s» pga en feil ved pålogging."
5620 -
5621 -#: ../gnome/applet/applet.c:431
5622 -msgid "VPN Start Failure"
5623 -msgstr "Feil ved start av VPN"
5624 -
5625 -#: ../gnome/applet/applet.c:432
5626 -#, c-format
5627 -msgid ""
5628 -"Could not start the VPN connection '%s' due to a failure launching the VPN "
5629 -"program."
5630 -msgstr ""
5631 -"Kunne ikke starte VPN-tilkobling «%s» på grunn av feil ved oppstart av VPN-"
5632 -"programmet."
5633 -
5634 -#: ../gnome/applet/applet.c:436 ../gnome/applet/applet.c:446
5635 -msgid "VPN Connect Failure"
5636 -msgstr "Feil ved tilkobling av VPN"
5637 -
5638 -#: ../gnome/applet/applet.c:437
5639 -#, c-format
5640 -msgid "Could not start the VPN connection '%s' due to a connection error."
5641 -msgstr "Kunne ikke starte VPN-tilkobling «%s» pga en feil ved tilkobling."
5642 -
5643 -#: ../gnome/applet/applet.c:441
5644 -msgid "VPN Configuration Error"
5645 -msgstr "Feil i konfigurasjon av VPN"
5646 -
5647 -#: ../gnome/applet/applet.c:442
5648 -#, c-format
5649 -msgid "The VPN connection '%s' was not correctly configured."
5650 -msgstr "VPN-tilkobling «%s» er ikke korrekt konfigurert."
5651 -
5652 -#: ../gnome/applet/applet.c:447
5653 -#, c-format
5654 -msgid ""
5655 -"Could not start the VPN connection '%s' because the VPN server did not "
5656 -"return an adequate network configuration."
5657 -msgstr ""
5658 -"Kunne ikke starte VPN-tilkobling «%s» fordi VPN-tjeneren ikke returnerte "
5659 -"riktig nettverkskonfigurasjon."
5660 -
5661 -#: ../gnome/applet/applet.c:517
5662 -msgid "VPN Login Message"
5663 -msgstr "Påloggingsmelding for VPN"
5664 -
5665 -#: ../gnome/applet/applet.c:741 ../gnome/applet/applet.c:2508
5666 -#: ../gnome/applet/other-network-dialog.c:453
5667 -#: ../gnome/applet/passphrase-dialog.c:228
5668 -msgid ""
5669 -"The NetworkManager Applet could not find some required resources (the glade "
5670 -"file was not found)."
5671 -msgstr ""
5672 -"NetworkManager fant ikke nødvendige ressurser (glade-filen ble ikke funnet)."
5673 -
5674 -#: ../gnome/applet/applet.c:753
5675 -#, c-format
5676 -msgid "The network device \"%s (%s)\" does not support wireless scanning."
5677 -msgstr "Nettverksenheten «%s (%s)» støtter ikke søk etter trådløse nettverk."
5678 -
5679 -#: ../gnome/applet/applet.c:761
5680 -#, c-format
5681 -msgid "The network device \"%s (%s)\" does not support link detection."
5682 -msgstr ""
5683 -"Nettverksenheten «%s (%s)» støtter ikke informasjon om tilkoblet status."
5684 -
5685 -#: ../gnome/applet/applet.c:908
5686 -#, c-format
5687 -msgid "Preparing device %s for the wired network..."
5688 -msgstr "Klargjør enhet %s for det trådløse nettverket..."
5689 -
5690 -#: ../gnome/applet/applet.c:910
5691 -#, c-format
5692 -msgid "Preparing device %s for the wireless network '%s'..."
5693 -msgstr "Klargjør enhet %s for trådløst nettverk «%s»..."
5694 -
5695 -#: ../gnome/applet/applet.c:918
5696 -#, c-format
5697 -msgid "Configuring device %s for the wired network..."
5698 -msgstr "Konfigurerer enhet %s for kablet nettverk..."
5699 -
5700 -#: ../gnome/applet/applet.c:920
5701 -#, c-format
5702 -msgid "Attempting to join the wireless network '%s'..."
5703 -msgstr "Forsøker å bruke trådløst nettverk «%s»..."
5704 -
5705 -#: ../gnome/applet/applet.c:928
5706 -#, c-format
5707 -msgid "Waiting for Network Key for the wireless network '%s'..."
5708 -msgstr "Venter på nettverksnøkkel for trådløst nettverk «%s»..."
5709 -
5710 -#: ../gnome/applet/applet.c:936 ../gnome/applet/applet.c:946
5711 -msgid "Requesting a network address from the wired network..."
5712 -msgstr "Ber om en nettverksadresse fra kablet nettverk..."
5713 -
5714 -#: ../gnome/applet/applet.c:938 ../gnome/applet/applet.c:948
5715 -#, c-format
5716 -msgid "Requesting a network address from the wireless network '%s'..."
5717 -msgstr "Ber om en nettverksadresse fra trådløst nettverk «%s»..."
5718 -
5719 -#: ../gnome/applet/applet.c:956
5720 -msgid "Finishing connection to the wired network..."
5721 -msgstr "Fullfører tilkobling til kablet nettverk..."
5722 -
5723 -#: ../gnome/applet/applet.c:958
5724 -#, c-format
5725 -msgid "Finishing connection to the wireless network '%s'..."
5726 -msgstr "Fullfører tilkobling til trådløst nettverk «%s»..."
5727 -
5728 -#: ../gnome/applet/applet.c:1075
5729 -msgid "NetworkManager is not running"
5730 -msgstr "NetworkManager kjører ikke"
5731 -
5732 -#: ../gnome/applet/applet.c:1083 ../gnome/applet/applet.c:1828
5733 -msgid "Networking disabled"
5734 -msgstr "Nettverk deaktivert"
5735 -
5736 -#: ../gnome/applet/applet.c:1088
5737 -msgid "No network connection"
5738 -msgstr "Ingen nettverksforbindelse"
5739 -
5740 -#: ../gnome/applet/applet.c:1093
5741 -msgid "Wired network connection"
5742 -msgstr "Kablet nettverkforbindelse"
5743 -
5744 -#: ../gnome/applet/applet.c:1097
5745 -msgid "Connected to an Ad-Hoc wireless network"
5746 -msgstr "Kobler til et Ad-Hoc trådløst nettverk"
5747 -
5748 -#: ../gnome/applet/applet.c:1099
5749 -#, c-format
5750 -msgid "Wireless network connection to '%s' (%d%%)"
5751 -msgstr "Trådløs nettverksforbindelse til «%s» (%d%%)"
5752 -
5753 -#: ../gnome/applet/applet.c:1120
5754 -#, c-format
5755 -msgid "VPN connection to '%s'"
5756 -msgstr "VPN-tilkobling til «%s»"
5757 -
5758 -#: ../gnome/applet/applet.c:1128
5759 -#, c-format
5760 -msgid "VPN connecting to '%s'"
5761 -msgstr "Kobler til «%s» via VPN"
5762 -
5763 -#: ../gnome/applet/applet.c:1541
5764 -msgid "_Connect to Other Wireless Network..."
5765 -msgstr "_Koble til annet trådløst nettverk..."
5766 -
5767 -#: ../gnome/applet/applet.c:1562
5768 -msgid "Create _New Wireless Network..."
5769 -msgstr "Opprett _nytt trådløst nettverk..."
5770 -
5771 -#: ../gnome/applet/applet.c:1685
5772 -msgid "_VPN Connections"
5773 -msgstr "_VPN-tilkoblinger"
5774 -
5775 -#: ../gnome/applet/applet.c:1730
5776 -msgid "_Configure VPN..."
5777 -msgstr "_Konfigurer VPN..."
5778 -
5779 -#: ../gnome/applet/applet.c:1734
5780 -msgid "_Disconnect VPN..."
5781 -msgstr "Ko_ble fra VPN..."
5782 -
5783 -#: ../gnome/applet/applet.c:1756
5784 -msgid "_Dial Up Connections"
5785 -msgstr "_Oppringte tilkoblinger"
5786 -
5787 -#. FIXME: We should save and then check the state of the devices and show Connect _or_ Disconnect for each item
5788 -#: ../gnome/applet/applet.c:1767
5789 -#, c-format
5790 -msgid "Connect to %s..."
5791 -msgstr "Koble til %s..."
5792 -
5793 -#: ../gnome/applet/applet.c:1773
5794 -#, c-format
5795 -msgid "Disconnect from %s..."
5796 -msgstr "Koble fra %s..."
5797 -
5798 -#: ../gnome/applet/applet.c:1822
5799 -msgid "No network devices have been found"
5800 -msgstr "Ingen nettverksenheter ble funnet"
5801 -
5802 -#: ../gnome/applet/applet.c:2014
5803 -msgid "NetworkManager is not running..."
5804 -msgstr "NetworkManager kjører ikke..."
5805 -
5806 -#. 'Enable Networking' item
5807 -#: ../gnome/applet/applet.c:2170
5808 -msgid "Enable _Networking"
5809 -msgstr "_Aktiver nettverk"
5810 -
5811 -#. 'Enable Wireless' item
5812 -#: ../gnome/applet/applet.c:2176
5813 -msgid "Enable _Wireless"
5814 -msgstr "Aktiver _trådløst nettverk"
5815 -
5816 -#. 'Connection Information' item
5817 -#: ../gnome/applet/applet.c:2182
5818 -msgid "Connection _Information"
5819 -msgstr "Tilkoblings_informasjon"
5820 -
5821 -#. Help item
5822 -#: ../gnome/applet/applet.c:2193
5823 -msgid "_Help"
5824 -msgstr "_Hjelp"
5825 -
5826 -#. About item
5827 -#: ../gnome/applet/applet.c:2202
5828 -msgid "_About"
5829 -msgstr "_Om"
5830 -
5831 -#: ../gnome/applet/applet.c:2667
5832 -msgid ""
5833 -"The NetworkManager applet could not find some required resources.  It cannot "
5834 -"continue.\n"
5835 -msgstr ""
5836 -"Panelprogrammet for NetworkManager fant ikke noen av de nødvendige "
5837 -"ressursene. Det kan ikke fortsette.\n"
5838 -
5839 -#: ../gnome/applet/wireless-security-option.c:157
5840 -msgid "Open System"
5841 -msgstr "Åpent system"
5842 -
5843 -#: ../gnome/applet/wireless-security-option.c:160
5844 -msgid "Shared Key"
5845 -msgstr "Delt nøkkel"
5846 -
5847 -#: ../gnome/applet/wireless-security-option.c:208
5848 -msgid "Automatic (Default)"
5849 -msgstr "Automatisk (forvalgt)"
5850 -
5851 -#: ../gnome/applet/wireless-security-option.c:215
5852 -msgid "AES-CCMP"
5853 -msgstr "AES-CCMP"
5854 -
5855 -#: ../gnome/applet/wireless-security-option.c:223
5856 -msgid "TKIP"
5857 -msgstr "TKIP"
5858 -
5859 -#: ../gnome/applet/wireless-security-option.c:231
5860 -msgid "Dynamic WEP"
5861 -msgstr "Dynamisk WEP"
5862 -
5863 -#: ../gnome/applet/wso-none.c:53
5864 -msgid "None"
5865 -msgstr "Ingen"
5866 -
5867 -#: ../gnome/applet/wso-wep-ascii.c:138
5868 -msgid "WEP 64/128-bit ASCII"
5869 -msgstr "WEP 64/128-bit ASCII"
5870 -
5871 -#: ../gnome/applet/wso-wep-hex.c:135
5872 -msgid "WEP 64/128-bit Hex"
5873 -msgstr "WEP 64/128-bit heksadesimal"
5874 -
5875 -#: ../gnome/applet/wso-wep-passphrase.c:135
5876 -msgid "WEP 128-bit Passphrase"
5877 -msgstr "WEP 128-bit passord:"
5878 -
5879 -#: ../gnome/applet/wso-wpa-eap.c:237
5880 -msgid "PEAP"
5881 -msgstr "PEAP"
5882 -
5883 -#: ../gnome/applet/wso-wpa-eap.c:238
5884 -msgid "TLS"
5885 -msgstr "TLS"
5886 -
5887 -#: ../gnome/applet/wso-wpa-eap.c:239
5888 -msgid "TTLS"
5889 -msgstr "TTLS"
5890 -
5891 -#: ../gnome/applet/wso-wpa-eap.c:247 ../src/nm-ap-security-wpa-eap.c:92
5892 -#: ../src/nm-ap-security-wpa-eap.c:116
5893 -msgid "WPA2 Enterprise"
5894 -msgstr "WPA2 enterprise"
5895 -
5896 -#: ../gnome/applet/wso-wpa-eap.c:249 ../src/nm-ap-security-wpa-eap.c:94
5897 -#: ../src/nm-ap-security-wpa-eap.c:121
5898 -msgid "WPA Enterprise"
5899 -msgstr "WPA enterprise"
5900 -
5901 -#: ../gnome/applet/wso-wpa-psk.c:178
5902 -msgid "WPA2 Personal"
5903 -msgstr "WPA2 personlig"
5904 -
5905 -#: ../gnome/applet/wso-wpa-psk.c:180
5906 -msgid "WPA Personal"
5907 -msgstr "WPA personlig"
5908 -
5909 -#: ../gnome/applet/eggtrayicon.c:134
5910 -msgid "Orientation"
5911 -msgstr "Orientering"
5912 -
5913 -#: ../gnome/applet/eggtrayicon.c:135
5914 -msgid "The orientation of the tray."
5915 -msgstr "Orientering for trauet."
5916 -
5917 -#: ../gnome/applet/menu-items.c:88
5918 -#, c-format
5919 -msgid "Wired Network (%s)"
5920 -msgstr "Kablet nettverk (%s)"
5921 -
5922 -#: ../gnome/applet/menu-items.c:91
5923 -msgid "_Wired Network"
5924 -msgstr "_Kablet nettverk"
5925 -
5926 -#: ../gnome/applet/menu-items.c:162
5927 -#, c-format
5928 -msgid "Wireless Network (%s)"
5929 -msgid_plural "Wireless Networks (%s)"
5930 -msgstr[0] "Trådløst nettverk (%s)"
5931 -msgstr[1] "Trådløse nettverk (%s)"
5932 -
5933 -#: ../gnome/applet/menu-items.c:164
5934 -msgid "Wireless Network"
5935 -msgid_plural "Wireless Networks"
5936 -msgstr[0] "Trådløst nettverk"
5937 -msgstr[1] "Trådløse nettverk"
5938 -
5939 -#: ../gnome/applet/menu-items.c:343
5940 -msgid " (invalid Unicode)"
5941 -msgstr " (ugyldig Unicode)"
5942 -
5943 -#: ../gnome/applet/other-network-dialog.c:352
5944 -#, c-format
5945 -msgid ""
5946 -"By default, the wireless network's name is set to your computer's name, %s, "
5947 -"with no encryption enabled"
5948 -msgstr ""
5949 -"Nettverksnavnet er som standard satt til datamaskinens navn, %s,  og "
5950 -"kryptering er ikke aktivert."
5951 -
5952 -#: ../gnome/applet/other-network-dialog.c:358
5953 -msgid "Create new wireless network"
5954 -msgstr "Opprett nytt trådløst nettverk"
5955 -
5956 -#: ../gnome/applet/other-network-dialog.c:359
5957 -msgid ""
5958 -"Enter the name and security settings of the wireless network you wish to "
5959 -"create."
5960 -msgstr ""
5961 -"Oppgi navn og sikkerhetsinnstillinger for det trådløse nettverket du ønsker "
5962 -"å opprette."
5963 -
5964 -#: ../gnome/applet/other-network-dialog.c:363
5965 -msgid "Create New Wireless Network"
5966 -msgstr "Opprett nytt trådløst nettverk"
5967 -
5968 -#: ../gnome/applet/other-network-dialog.c:368
5969 -msgid "Existing wireless network"
5970 -msgstr "Eksisterende trådløse nettverk"
5971 -
5972 -#: ../gnome/applet/other-network-dialog.c:369
5973 -msgid "Enter the name of the wireless network to which you wish to connect."
5974 -msgstr "Oppgi navnet til det trådløse nettverket du ønsker å koble deg til."
5975 -
5976 -#: ../gnome/applet/other-network-dialog.c:371
5977 -msgid "Connect to Other Wireless Network"
5978 -msgstr "Koble til annet trådløst nettverk"
5979 -
5980 -#: ../gnome/applet/passphrase-dialog.c:215
5981 -msgid "Error connecting to wireless network"
5982 -msgstr "Feil under tilkobling til trådløst nettverk"
5983 -
5984 -#: ../gnome/applet/passphrase-dialog.c:216
5985 -msgid ""
5986 -"The requested wireless network requires security capabilities unsupported by "
5987 -"your hardware."
5988 -msgstr ""
5989 -"Valgt trådløst nettverk krever en type sikkerhet som ikke er støttet av ditt "
5990 -"nettverkskort."
5991 -
5992 -#: ../gnome/applet/vpn-password-dialog.c:151
5993 -#: ../gnome/applet/vpn-password-dialog.c:188
5994 -#, c-format
5995 -msgid "Cannot start VPN connection '%s'"
5996 -msgstr "Kan ikke starte VPN-tilkobling «%s»"
5997 -
5998 -#: ../gnome/applet/vpn-password-dialog.c:154
5999 -#, c-format
6000 -msgid ""
6001 -"Could not find the authentication dialog for VPN connection type '%s'. "
6002 -"Contact your system administrator."
6003 -msgstr ""
6004 -"Fant ikke autentiseringsdialogen for VPN tilkoblingstypen «%s». Kontakt din "
6005 -"systemadministrator."
6006 -
6007 -#: ../gnome/applet/vpn-password-dialog.c:191
6008 -#, c-format
6009 -msgid ""
6010 -"There was a problem launching the authentication dialog for VPN connection "
6011 -"type '%s'. Contact your system administrator."
6012 -msgstr ""
6013 -"Det oppstod en feil under oppstart av autentiseringsdialogen for VPN "
6014 -"tilkoblingstypen «%s». Kontakt din systemadministrator."
6015 -
6016 -#: ../gnome/applet/applet.glade.h:1
6017 -msgid " "
6018 -msgstr " "
6019 -
6020 -#: ../gnome/applet/applet.glade.h:2
6021 -msgid ""
6022 -"<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
6023 -msgstr ""
6024 -"<span weight=\"bold\" size=\"larger\">Informasjon om aktiv tilkobling</span>"
6025 -
6026 -#: ../gnome/applet/applet.glade.h:4
6027 -#, no-c-format
6028 -msgid ""
6029 -"<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
6030 -"Network</span>\n"
6031 -"\n"
6032 -"A passphrase or encryption key is required to access the wireless network '%"
6033 -"s'."
6034 -msgstr ""
6035 -"<span weight=\"bold\" size=\"larger\">Passord kreves for trådløst nettverk</"
6036 -"span>\n"
6037 -"\n"
6038 -"Ett passord eller en krypteringsnøkkel kreves for å aksessere trådløst "
6039 -"nettverk «%s»."
6040 -
6041 -#: ../gnome/applet/applet.glade.h:8
6042 -#, no-c-format
6043 -msgid ""
6044 -"<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</span>\n"
6045 -"\n"
6046 -"%s  It will not be completely functional."
6047 -msgstr ""
6048 -"<span weight=\"bold\" size=\"larger\">Redusert nettverksfunksjonalitet</"
6049 -"span>\n"
6050 -"\n"
6051 -"%s  Ikke fullstendig funksjonell."
6052 -
6053 -#: ../gnome/applet/applet.glade.h:12
6054 -#, no-c-format
6055 -msgid ""
6056 -"<span weight=\"bold\" size=\"larger\">Wireless Network Login Confirmation</"
6057 -"span>\n"
6058 -"\n"
6059 -"You have chosen to log in to the wireless network '%s'.  If you are sure "
6060 -"that this wireless network is secure, click the checkbox below and "
6061 -"NetworkManager will not require confirmation on subsequent log ins."
6062 -msgstr ""
6063 -"<span weight=\"bold\" size=\"larger\">Bekreftelse av pålogging på trådløst "
6064 -"nettverk</span>\n"
6065 -"\n"
6066 -"Du har valgt å logge inn på trådløst nettverk «%s». Hvis du er sikker på at "
6067 -"dette trådløse nettverket er sikkert kan du be NetworkManager om å slutte å "
6068 -"spørre spørsmål når du kobler deg til det ved å krysse av i boksen nedenfor."
6069 -
6070 -#: ../gnome/applet/applet.glade.h:15
6071 -msgid "Anonymous Identity:"
6072 -msgstr "Anonym identitet:"
6073 -
6074 -#: ../gnome/applet/applet.glade.h:16
6075 -msgid "Authentication:"
6076 -msgstr "Autentisering:"
6077 -
6078 -#: ../gnome/applet/applet.glade.h:17
6079 -msgid "Broadcast Address:"
6080 -msgstr "Kringkastingsadresse:"
6081 -
6082 -#: ../gnome/applet/applet.glade.h:18
6083 -msgid "CA Certificate File:"
6084 -msgstr "Sertifikatfil for CA:"
6085 -
6086 -#: ../gnome/applet/applet.glade.h:19
6087 -msgid "C_onnect"
6088 -msgstr "K_oble til"
6089 -
6090 -#: ../gnome/applet/applet.glade.h:20
6091 -msgid "Client Certificate File:"
6092 -msgstr "Sertifikatfil for klient:"
6093 -
6094 -#: ../gnome/applet/applet.glade.h:21
6095 -msgid "Connection Information"
6096 -msgstr "Tilkoblingsinformasjon"
6097 -
6098 -#: ../gnome/applet/applet.glade.h:22
6099 -msgid "Default Route:"
6100 -msgstr "Forvalgt rute:"
6101 -
6102 -#: ../gnome/applet/applet.glade.h:23
6103 -msgid "Destination Address:"
6104 -msgstr "Måladresse:"
6105 -
6106 -#: ../gnome/applet/applet.glade.h:24
6107 -msgid "Driver:"
6108 -msgstr "Driver:"
6109 -
6110 -#: ../gnome/applet/applet.glade.h:25
6111 -msgid "EAP Method:"
6112 -msgstr "EAP-metode:"
6113 -
6114 -#: ../gnome/applet/applet.glade.h:26
6115 -msgid "Hardware Address:"
6116 -msgstr "Maskinvareadresse:"
6117 -
6118 -#: ../gnome/applet/applet.glade.h:27
6119 -msgid "IP Address:"
6120 -msgstr "IP adresse:"
6121 -
6122 -#: ../gnome/applet/applet.glade.h:28
6123 -msgid "Identity:"
6124 -msgstr "Identitet:"
6125 -
6126 -#: ../gnome/applet/applet.glade.h:29
6127 -msgid "Interface:"
6128 -msgstr "Grensesnitt:"
6129 -
6130 -#: ../gnome/applet/applet.glade.h:30
6131 -msgid "Key Type:"
6132 -msgstr "Nøkkeltype:"
6133 -
6134 -#: ../gnome/applet/applet.glade.h:31
6135 -msgid "Key:"
6136 -msgstr "Nøkkel:"
6137 -
6138 -#: ../gnome/applet/applet.glade.h:32
6139 -msgid ""
6140 -"None\n"
6141 -"WEP 128-bit Passphrase\n"
6142 -"WEP 64/128-bit Hex\n"
6143 -"WEP 64/128-bit ASCII\n"
6144 -msgstr ""
6145 -"Ingen\n"
6146 -"WEP passord\n"
6147 -"WEP 64/128-bit heksadesimal\n"
6148 -"WEP 64/128-bit ASCII\n"
6149 -
6150 -#: ../gnome/applet/applet.glade.h:37
6151 -msgid ""
6152 -"Open System\n"
6153 -"Shared Key"
6154 -msgstr ""
6155 -"Åpent system\n"
6156 -"Delt nøkkel"
6157 -
6158 -#: ../gnome/applet/applet.glade.h:39
6159 -msgid "Other Wireless Network..."
6160 -msgstr "Annet trådløst nettverk..."
6161 -
6162 -#: ../gnome/applet/applet.glade.h:40
6163 -msgid "Passphrase:"
6164 -msgstr "Passord:"
6165 -
6166 -#: ../gnome/applet/applet.glade.h:41
6167 -msgid "Password:"
6168 -msgstr "Passord:"
6169 -
6170 -#: ../gnome/applet/applet.glade.h:42
6171 -msgid "Primary DNS:"
6172 -msgstr "Primær DNS:"
6173 -
6174 -#: ../gnome/applet/applet.glade.h:43
6175 -msgid "Private Key File:"
6176 -msgstr "Privat nøkkelfil:"
6177 -
6178 -#: ../gnome/applet/applet.glade.h:44
6179 -msgid "Private Key Password:"
6180 -msgstr "Passord for privat nøkkel:"
6181 -
6182 -#: ../gnome/applet/applet.glade.h:45
6183 -msgid "Secondary DNS:"
6184 -msgstr "Sekundær DNS:"
6185 -
6186 -#: ../gnome/applet/applet.glade.h:46
6187 -msgid "Select the CA Certificate File"
6188 -msgstr "Velg sertifikatfil for CA"
6189 -
6190 -#: ../gnome/applet/applet.glade.h:47
6191 -msgid "Select the Client Certificate File"
6192 -msgstr "Velg sertifikatfil for klient"
6193 -
6194 -#: ../gnome/applet/applet.glade.h:48
6195 -msgid "Select the Private Key File"
6196 -msgstr "Velg fil med privat nøkkel"
6197 -
6198 -#: ../gnome/applet/applet.glade.h:49
6199 -msgid "Show key"
6200 -msgstr "Vis nøkkel"
6201 -
6202 -#: ../gnome/applet/applet.glade.h:50
6203 -msgid "Show passphrase"
6204 -msgstr "Vis passord"
6205 -
6206 -#: ../gnome/applet/applet.glade.h:51
6207 -msgid "Show password"
6208 -msgstr "Vis passord"
6209 -
6210 -#: ../gnome/applet/applet.glade.h:52
6211 -msgid "Show passwords"
6212 -msgstr "Vis passord"
6213 -
6214 -#: ../gnome/applet/applet.glade.h:53
6215 -msgid "Speed:"
6216 -msgstr "Hastighet:"
6217 -
6218 -#: ../gnome/applet/applet.glade.h:54
6219 -msgid "Subnet Mask:"
6220 -msgstr "Subnettmaske:"
6221 -
6222 -#: ../gnome/applet/applet.glade.h:55
6223 -msgid "Type:"
6224 -msgstr "Type:"
6225 -
6226 -#: ../gnome/applet/applet.glade.h:56
6227 -msgid "User Name:"
6228 -msgstr "Brukernavn:"
6229 -
6230 -#: ../gnome/applet/applet.glade.h:57
6231 -msgid "Wireless Network Key Required"
6232 -msgstr "Nøkkel for trådløst nettverk kreves"
6233 -
6234 -#: ../gnome/applet/applet.glade.h:58
6235 -msgid "Wireless _adapter:"
6236 -msgstr "Trådløst _kort:"
6237 -
6238 -#: ../gnome/applet/applet.glade.h:59
6239 -msgid "_Always Trust this Wireless Network"
6240 -msgstr "Stol _alltid på dette trådløse nettverket"
6241 -
6242 -#: ../gnome/applet/applet.glade.h:60
6243 -msgid "_Don't remind me again"
6244 -msgstr "_Ikke vis påminnelse igjen"
6245 -
6246 -#: ../gnome/applet/applet.glade.h:61
6247 -msgid "_Login to Network"
6248 -msgstr "_Logg på nettverk"
6249 -
6250 -#: ../gnome/applet/applet.glade.h:62
6251 -msgid "_Network Name:"
6252 -msgstr "_Nettverksnavn:"
6253 -
6254 -#: ../gnome/applet/applet.glade.h:63
6255 -msgid "_Wireless Security:"
6256 -msgstr "Tr_ådløs sikkerhet:"
6257 -
6258 -#: ../gnome/vpn-properties/nm-vpn-properties.c:383
6259 +#: ../gnome/vpn-properties/nm-vpn-properties.c:405
6260  msgid "Cannot add VPN connection"
6261  msgstr "Kan ikke legge til VPN-tilkobling"
6262  
6263 -#: ../gnome/vpn-properties/nm-vpn-properties.c:385
6264 +#: ../gnome/vpn-properties/nm-vpn-properties.c:407
6265  msgid ""
6266  "No suitable VPN software was found on your system. Contact your system "
6267  "administrator."
6268 @@ -728,11 +29,11 @@
6269  "Ingen passende VPN-programvare ble funnet på systemet. Kontakt din "
6270  "systemadministrator."
6271  
6272 -#: ../gnome/vpn-properties/nm-vpn-properties.c:437
6273 +#: ../gnome/vpn-properties/nm-vpn-properties.c:457
6274  msgid "Cannot import VPN connection"
6275  msgstr "Kan ikke importere VPN-tilkobling"
6276  
6277 -#: ../gnome/vpn-properties/nm-vpn-properties.c:439
6278 +#: ../gnome/vpn-properties/nm-vpn-properties.c:459
6279  #, c-format
6280  msgid ""
6281  "Cannot find suitable software for VPN connection type '%s' to import the "
6282 @@ -741,12 +42,12 @@
6283  "Kan ikke finne passende programvare for VPN-tilkobling av type «%s» for "
6284  "import av fil «%s». Kontakt din sysstemadministrator."
6285  
6286 -#: ../gnome/vpn-properties/nm-vpn-properties.c:579
6287 +#: ../gnome/vpn-properties/nm-vpn-properties.c:596
6288  #, c-format
6289  msgid "Error retrieving VPN connection '%s'"
6290  msgstr "Feil under henting av VPN tilkobling «%s»"
6291  
6292 -#: ../gnome/vpn-properties/nm-vpn-properties.c:582
6293 +#: ../gnome/vpn-properties/nm-vpn-properties.c:599
6294  #, c-format
6295  msgid ""
6296  "Could not find the UI files for VPN connection type '%s'. Contact your "
6297 @@ -755,12 +56,12 @@
6298  "Kunne ikke finne brukergrensesnittfiler for VPN-tilkobling type «%s». "
6299  "Kontakt din systemadministrator."
6300  
6301 -#: ../gnome/vpn-properties/nm-vpn-properties.c:739
6302 +#: ../gnome/vpn-properties/nm-vpn-properties.c:746
6303  #, c-format
6304  msgid "Delete VPN connection \"%s\"?"
6305  msgstr "Slett VPN-tilkobling «%s»?"
6306  
6307 -#: ../gnome/vpn-properties/nm-vpn-properties.c:742
6308 +#: ../gnome/vpn-properties/nm-vpn-properties.c:749
6309  #, c-format
6310  msgid ""
6311  "All information about the VPN connection \"%s\" will be lost and you may "
6312 @@ -770,16 +71,16 @@
6313  "All informasjon om VPN-tilkobling «%s» vil gå tapt og du vil kanskje trenge "
6314  "hjelp fra din systemadministrator for å opprette en ny tilkobling."
6315  
6316 -#: ../gnome/vpn-properties/nm-vpn-properties.c:959
6317 +#: ../gnome/vpn-properties/nm-vpn-properties.c:963
6318  msgid "Unable to load"
6319  msgstr "Kunne ikke laste"
6320  
6321 -#: ../gnome/vpn-properties/nm-vpn-properties.c:961
6322 +#: ../gnome/vpn-properties/nm-vpn-properties.c:965
6323  msgid "Cannot find some needed resources (the glade file)!"
6324  msgstr "Fant ikke nødvendige ressurser (glade-filen)."
6325  
6326  #. Edit dialog
6327 -#: ../gnome/vpn-properties/nm-vpn-properties.c:1071
6328 +#: ../gnome/vpn-properties/nm-vpn-properties.c:1084
6329  msgid "Edit VPN Connection"
6330  msgstr "Rediger VPN-tilkobling"
6331  
6332 @@ -885,11 +186,11 @@
6333  msgid "WPA2 Automatic"
6334  msgstr "WPA2 automatisk"
6335  
6336 -#: ../src/nm-ap-security.c:320
6337 +#: ../src/nm-ap-security.c:338
6338  msgid "none"
6339  msgstr "ingen"
6340  
6341 -#: ../src/nm-netlink-monitor.c:154
6342 +#: ../src/nm-netlink-monitor.c:170
6343  #, c-format
6344  msgid ""
6345  "unable to create netlink socket for monitoring wired ethernet devices - %s"
6346 @@ -897,7 +198,7 @@
6347  "kan ikke opprette netlink-plugg for overvåking av kablede ethernet-enheter - "
6348  "%s"
6349  
6350 -#: ../src/nm-netlink-monitor.c:172
6351 +#: ../src/nm-netlink-monitor.c:188
6352  #, c-format
6353  msgid ""
6354  "unable to bind to netlink socket for monitoring wired ethernet devices - %s"
6355 @@ -905,83 +206,35 @@
6356  "kan ikke binde til netlink-plugg for overvåking av kablede ethernet-enheter "
6357  "- %s"
6358  
6359 -#: ../src/nm-netlink-monitor.c:405
6360 +#: ../src/nm-netlink-monitor.c:426
6361  msgid "operation took too long"
6362  msgstr "operasjonen tok for lang tid"
6363  
6364 -#: ../src/nm-netlink-monitor.c:502
6365 +#: ../src/nm-netlink-monitor.c:523
6366  msgid "received data from wrong type of sender"
6367  msgstr "mottok data fra feil type avsender"
6368  
6369 -#: ../src/nm-netlink-monitor.c:515
6370 +#: ../src/nm-netlink-monitor.c:536
6371  msgid "received data from unexpected sender"
6372  msgstr "mottok data fra uventet avsender"
6373  
6374 -#: ../src/nm-netlink-monitor.c:646
6375 +#: ../src/nm-netlink-monitor.c:665
6376  msgid "too much data was sent over socket and some of it was lost"
6377  msgstr "for mye data ble sendt over pluggen og noe data gikk tapt"
6378  
6379 -#: ../src/nm-netlink-monitor.c:735
6380 +#: ../src/nm-netlink-monitor.c:775
6381  msgid "error occurred while waiting for data on socket"
6382  msgstr "det skjedde en feil under venting på data på sokkel"
6383  
6384 -#: ../gnome/applet/applet-dbus-devices.c:898
6385 -#, c-format
6386 -msgid "You are now connected to the Ad-Hoc wireless network '%s'."
6387 -msgstr "Du er nå koblet til Ad-Hoc trådløst nettverk «%s»."
6388 +#: ../src/nm-ap-security-wpa-eap.c:96 ../src/nm-ap-security-wpa-eap.c:120
6389 +msgid "WPA2 Enterprise"
6390 +msgstr "WPA2 enterprise"
6391  
6392 -#: ../gnome/applet/applet-dbus-devices.c:903
6393 -#, c-format
6394 -msgid "You are now connected to the wireless network '%s'."
6395 -msgstr "Du er nå koblet til trådløst nettverk «%s»."
6396 +#: ../src/nm-ap-security-wpa-eap.c:98 ../src/nm-ap-security-wpa-eap.c:125
6397 +msgid "WPA Enterprise"
6398 +msgstr "WPA enterprise"
6399  
6400 -#: ../gnome/applet/applet-dbus-devices.c:910
6401 -msgid "You are now connected to the wired network."
6402 -msgstr "Du er nå koblet til kablet nettverk."
6403 -
6404 -#: ../gnome/applet/applet-dbus-devices.c:916
6405 -msgid "Connection Established"
6406 -msgstr "Tilkobling etablert"
6407 -
6408 -#: ../gnome/applet/applet-dbus-devices.c:959
6409 -msgid "Disconnected"
6410 -msgstr "Frakoblet"
6411 -
6412 -#: ../gnome/applet/applet-dbus-devices.c:960
6413 -msgid "The network connection has been disconnected."
6414 -msgstr "Nettverksforbindelsen er frakoblet."
6415 -
6416 -#~ msgid "WEP 40/128-bit ASCII"
6417 -#~ msgstr "WEP 40/128-bit ASCII"
6418 -
6419 -#~ msgid "WEP 40/128-bit hex"
6420 -#~ msgstr "WEP 40/128-bit heksadesimal"
6421 -
6422 -#~ msgid "WEP Passphrase"
6423 -#~ msgstr "WEP Passord:"
6424 -
6425 -#~ msgid ""
6426 -#~ "None\n"
6427 -#~ "WEP Passphrase\n"
6428 -#~ "WEP 40/128-bit hex\n"
6429 -#~ "WEP 40/128-bit ASCII\n"
6430 -#~ msgstr ""
6431 -#~ "Ingen\n"
6432 -#~ "WEP passord\n"
6433 -#~ "WEP 40/128-bit heksadesimal\n"
6434 -#~ "WEP 40/128-bit ASCII\n"
6435 -
6436 -#~ msgid "Stop automatically running the networking applet?"
6437 -#~ msgstr "Stopp automatisk oppstart av nettverkspanelprogrammet?"
6438 -
6439 -#~ msgid ""
6440 -#~ "The networking applet will now terminate, but will automatically launch "
6441 -#~ "the next time you login.  Would you like to stop automatically running "
6442 -#~ "the networking applet on login?"
6443 -#~ msgstr ""
6444 -#~ "Nettverkspanelprogrammet vil nå avslutte, men automatisk starte opp neste "
6445 -#~ "gang du logger inn. Vil du stoppe automatisk oppstart av dette "
6446 -#~ "panelprogrammet?"
6447 +#: ../src/nm-ap-security-leap.c:66 ../src/nm-ap-security-leap.c:82
6448 +msgid "LEAP"
6449 +msgstr "LEAP"
6450  
6451 -#~ msgid "_Remove"
6452 -#~ msgstr "Fje_rn fra panelet"
6453 diff -urN NetworkManager-0.6.5/po/vi.po NetworkManager-SVNr3284/po/vi.po
6454 --- NetworkManager-0.6.5/po/vi.po       2007-04-18 20:13:10.000000000 +0200
6455 +++ NetworkManager-SVNr3284/po/vi.po    2008-02-04 16:01:02.000000000 +0100
6456 @@ -1,790 +1,89 @@
6457  # Vietnamese translation for Network Manager.
6458 -# Copyright © 2006 Gnome i18n Project for Vietnamese.
6459 -# Clytie Siddall <clytie@riverland.net.au>, 2006.
6460 +# Copyright © 2007 Gnome i18n Project for Vietnamese.
6461 +# Clytie Siddall <clytie@riverland.net.au>, 2006-2007.
6462  # 
6463  msgid ""
6464  msgstr ""
6465  "Project-Id-Version: NetworkManager HEAD\n"
6466  "Report-Msgid-Bugs-To: \n"
6467 -"POT-Creation-Date: 2006-05-29 18:33+0200\n"
6468 -"PO-Revision-Date: 2006-02-28 17:28+1030\n"
6469 +"POT-Creation-Date: 2007-03-03 03:27+0000\n"
6470 +"PO-Revision-Date: 2007-09-14 22:38+0930\n"
6471  "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
6472  "Language-Team: Vietnamese <gnomevi-list@lists.sourceforge.net>\n"
6473  "MIME-Version: 1.0\n"
6474  "Content-Type: text/plain; charset=UTF-8\n"
6475  "Content-Transfer-Encoding: 8bit\n"
6476 -"Plural-Forms: nplurals=1; plural=0\n"
6477 -"X-Generator: LocFactoryEditor 1.6b36\n"
6478 +"Plural-Forms: nplurals=1; plural=0;\n"
6479 +"X-Generator: LocFactoryEditor 1.7b1\n"
6480  
6481 -#: ../gnome/applet/applet-compat.c:171 ../gnome/applet/applet-dbus-info.c:919
6482 -#, c-format
6483 -msgid "Passphrase for wireless network %s"
6484 -msgstr "Cụm từ mật khẩu cho mạng vô tuyến %s"
6485 -
6486 -#: ../gnome/applet/applet-dbus.c:265
6487 -#, c-format
6488 -msgid "Connection to the wireless network '%s' failed."
6489 -msgstr "Việc kết nối đến mạng vô tuyến « %s » bị lỗi."
6490 -
6491 -#: ../gnome/applet/applet-dbus.c:270
6492 -msgid "Connection to the wired network failed."
6493 -msgstr "Việc kết nối đến mạng tuyến bị lỗi."
6494 -
6495 -#: ../gnome/applet/applet.c:184
6496 -msgid "Error displaying connection information:"
6497 -msgstr "Gặp lỗi khi hiển thị thông tin kết nối:"
6498 -
6499 -#: ../gnome/applet/applet.c:202
6500 -msgid "Could not find some required resources (the glade file)!"
6501 -msgstr "• Không thể tìm thấy một số tài nguyên cần thiết (tập tin glade). •"
6502 -
6503 -#: ../gnome/applet/applet.c:213
6504 -msgid "No active connections!"
6505 -msgstr "• Không có kết nối hoạt động. •"
6506 -
6507 -#: ../gnome/applet/applet.c:234
6508 -#, c-format
6509 -msgid "Wired Ethernet (%s)"
6510 -msgstr "Ethernet tuyến (%s)"
6511 -
6512 -#: ../gnome/applet/applet.c:236
6513 -#, c-format
6514 -msgid "Wireless Ethernet (%s)"
6515 -msgstr "Ethernet vô tuyến (%s)"
6516 -
6517 -#: ../gnome/applet/applet.c:337 ../gnome/applet/applet.c:362
6518 -msgid "NetworkManager Applet"
6519 -msgstr "Tiểu dụng Quản lý mạng"
6520 -
6521 -#: ../gnome/applet/applet.c:339 ../gnome/applet/applet.c:364
6522 -msgid "Copyright © 2004-2005 Red Hat, Inc."
6523 -msgstr "Bản quyền © năm 2004-2005 Red Hat, Inc."
6524 -
6525 -#: ../gnome/applet/applet.c:340 ../gnome/applet/applet.c:365
6526 -msgid ""
6527 -"Notification area applet for managing your network devices and connections."
6528 -msgstr ""
6529 -"Tiểu dụng vùng thông báo để quản lý các thiết bị và kết nối mạng của bạn."
6530 -
6531 -#: ../gnome/applet/applet.c:343 ../gnome/applet/applet.c:370
6532 -msgid "translator-credits"
6533 -msgstr "Nhóm Việt hóa Gnome <gnomevi-list@lists.sourceforge.net>"
6534 -
6535 -#: ../gnome/applet/applet.c:426
6536 -msgid "VPN Login Failure"
6537 -msgstr "Đăng nhập VPN bị lỗi"
6538 -
6539 -#: ../gnome/applet/applet.c:427
6540 -#, c-format
6541 -msgid "Could not start the VPN connection '%s' due to a login failure."
6542 -msgstr "Không thể khởi chạy kết nối VPN « %s » do việc đăng nhập bị lỗi."
6543 -
6544 -#: ../gnome/applet/applet.c:431
6545 -msgid "VPN Start Failure"
6546 -msgstr "Khởi chạy VPN bị lỗi"
6547 -
6548 -#: ../gnome/applet/applet.c:432
6549 -#, c-format
6550 -msgid ""
6551 -"Could not start the VPN connection '%s' due to a failure launching the VPN "
6552 -"program."
6553 -msgstr ""
6554 -"Không thể khởi chạy kết nối VPN « %s » do việc khởi chạy chương trình VPN bị "
6555 -"lỗi."
6556 -
6557 -#: ../gnome/applet/applet.c:436 ../gnome/applet/applet.c:446
6558 -msgid "VPN Connect Failure"
6559 -msgstr "Kết nối VPN bị lỗi"
6560 -
6561 -#: ../gnome/applet/applet.c:437
6562 -#, c-format
6563 -msgid "Could not start the VPN connection '%s' due to a connection error."
6564 -msgstr "Không thể khởi chạy kết nối VPN « %s » do lỗi kết nối."
6565 -
6566 -#: ../gnome/applet/applet.c:441
6567 -msgid "VPN Configuration Error"
6568 -msgstr "Lỗi cấu hình VPN"
6569 -
6570 -#: ../gnome/applet/applet.c:442
6571 -#, c-format
6572 -msgid "The VPN connection '%s' was not correctly configured."
6573 -msgstr "Chưa cấu hình đúng sự kết nối VPN « %s »."
6574 -
6575 -#: ../gnome/applet/applet.c:447
6576 -#, c-format
6577 -msgid ""
6578 -"Could not start the VPN connection '%s' because the VPN server did not "
6579 -"return an adequate network configuration."
6580 -msgstr ""
6581 -"Không thể khởi chạy kết nối VPN « %s » vì trình phục vụ VPN chưa trả gởi cấu "
6582 -"hình mạng hợp lệ."
6583 -
6584 -#: ../gnome/applet/applet.c:517
6585 -msgid "VPN Login Message"
6586 -msgstr "Thông điệp đăng nhập VPN"
6587 -
6588 -#: ../gnome/applet/applet.c:741 ../gnome/applet/applet.c:2508
6589 -#: ../gnome/applet/other-network-dialog.c:453
6590 -#: ../gnome/applet/passphrase-dialog.c:228
6591 -msgid ""
6592 -"The NetworkManager Applet could not find some required resources (the glade "
6593 -"file was not found)."
6594 -msgstr ""
6595 -"Tiểu dụng Quản lý mạng không thể tìm một số tài nguyên cần thiết (không tìm "
6596 -"thấy tập tin glade)."
6597 -
6598 -#: ../gnome/applet/applet.c:753
6599 -#, c-format
6600 -msgid "The network device \"%s (%s)\" does not support wireless scanning."
6601 -msgstr "Thiết bị mạng « %s (%s) » không hỗ trợ khả năng quét vô tuyến."
6602 -
6603 -#: ../gnome/applet/applet.c:761
6604 -#, c-format
6605 -msgid "The network device \"%s (%s)\" does not support link detection."
6606 -msgstr "Thiết bị mạng « %s (%s) » không hỗ trợ khả năng phát hiện liên kết."
6607 -
6608 -#: ../gnome/applet/applet.c:908
6609 -#, c-format
6610 -msgid "Preparing device %s for the wired network..."
6611 -msgstr "Đang chuẩn bị thiết bị %s cho mạng tuyến..."
6612 -
6613 -#: ../gnome/applet/applet.c:910
6614 -#, c-format
6615 -msgid "Preparing device %s for the wireless network '%s'..."
6616 -msgstr "Đang chuẩn bị thiết bị %s cho mạng vô tuyến « %s »..."
6617 -
6618 -#: ../gnome/applet/applet.c:918
6619 -#, c-format
6620 -msgid "Configuring device %s for the wired network..."
6621 -msgstr "Đang cấu hình thiết bị %s cho mạng tuyến..."
6622 -
6623 -#: ../gnome/applet/applet.c:920
6624 -#, c-format
6625 -msgid "Attempting to join the wireless network '%s'..."
6626 -msgstr "Đang cố tham gia mạng vô tuyến « %s »..."
6627 -
6628 -#: ../gnome/applet/applet.c:928
6629 -#, c-format
6630 -msgid "Waiting for Network Key for the wireless network '%s'..."
6631 -msgstr "Đang đợi Khóa mạng cho mạng vô tuyến « %s »..."
6632 -
6633 -#: ../gnome/applet/applet.c:936 ../gnome/applet/applet.c:946
6634 -msgid "Requesting a network address from the wired network..."
6635 -msgstr "Đang yêu cầu địa chỉ mạng từ mạng tuyến..."
6636 -
6637 -#: ../gnome/applet/applet.c:938 ../gnome/applet/applet.c:948
6638 -#, c-format
6639 -msgid "Requesting a network address from the wireless network '%s'..."
6640 -msgstr "Đang yêu cầu địa chỉ mạng từ mạng vô tuyến « %s »..."
6641 -
6642 -#: ../gnome/applet/applet.c:956
6643 -msgid "Finishing connection to the wired network..."
6644 -msgstr "Đang kết nối xong tới mạng tuyến..."
6645 -
6646 -#: ../gnome/applet/applet.c:958
6647 -#, c-format
6648 -msgid "Finishing connection to the wireless network '%s'..."
6649 -msgstr "Đang kết nối xong tới mạng vô tuyến « %s »..."
6650 -
6651 -#: ../gnome/applet/applet.c:1075
6652 -msgid "NetworkManager is not running"
6653 -msgstr "Trình NetworkManager chưa chạy."
6654 -
6655 -#: ../gnome/applet/applet.c:1083 ../gnome/applet/applet.c:1828
6656 -msgid "Networking disabled"
6657 -msgstr "Chạy mạng bị tắt"
6658 -
6659 -#: ../gnome/applet/applet.c:1088
6660 -msgid "No network connection"
6661 -msgstr "Không có kết nối mạng"
6662 -
6663 -#: ../gnome/applet/applet.c:1093
6664 -msgid "Wired network connection"
6665 -msgstr "Kết nối mạng tuyến"
6666 -
6667 -#: ../gnome/applet/applet.c:1097
6668 -msgid "Connected to an Ad-Hoc wireless network"
6669 -msgstr "Đã kết nối tới một mạng vô tuyến Như có"
6670 -
6671 -#: ../gnome/applet/applet.c:1099
6672 -#, c-format
6673 -msgid "Wireless network connection to '%s' (%d%%)"
6674 -msgstr "Cách kết nối mạng vô tuyến tới « %s » (%d%%)"
6675 -
6676 -#: ../gnome/applet/applet.c:1120
6677 -#, c-format
6678 -msgid "VPN connection to '%s'"
6679 -msgstr "Cách kết nối VPN tới « %s »"
6680 -
6681 -#: ../gnome/applet/applet.c:1128
6682 -#, c-format
6683 -msgid "VPN connecting to '%s'"
6684 -msgstr "Đang kết nối VPN tới « %s »..."
6685 -
6686 -#: ../gnome/applet/applet.c:1541
6687 -msgid "_Connect to Other Wireless Network..."
6688 -msgstr "_Kết nối tới mạng Vô tuyến Khác..."
6689 -
6690 -#: ../gnome/applet/applet.c:1562
6691 -msgid "Create _New Wireless Network..."
6692 -msgstr "Tạo mạng Vô tuyến _Mới..."
6693 -
6694 -#: ../gnome/applet/applet.c:1685
6695 -msgid "_VPN Connections"
6696 -msgstr "Kết nối _VPN"
6697 -
6698 -#: ../gnome/applet/applet.c:1730
6699 -msgid "_Configure VPN..."
6700 -msgstr "_Cấu hình VPN..."
6701 -
6702 -#: ../gnome/applet/applet.c:1734
6703 -msgid "_Disconnect VPN..."
6704 -msgstr "_Ngắt kết nối VPN..."
6705 -
6706 -#: ../gnome/applet/applet.c:1756
6707 -msgid "_Dial Up Connections"
6708 -msgstr "Kết nối _quay số"
6709 -
6710 -#. FIXME: We should save and then check the state of the devices and show Connect _or_ Disconnect for each item
6711 -#: ../gnome/applet/applet.c:1767
6712 -#, c-format
6713 -msgid "Connect to %s..."
6714 -msgstr "Kết nối đến %s..."
6715 -
6716 -#: ../gnome/applet/applet.c:1773
6717 -#, c-format
6718 -msgid "Disconnect from %s..."
6719 -msgstr "Ngắt kết nối từ %s..."
6720 -
6721 -#: ../gnome/applet/applet.c:1822
6722 -msgid "No network devices have been found"
6723 -msgstr "Không tìm thấy thiết bị mạng nào"
6724 -
6725 -#: ../gnome/applet/applet.c:2014
6726 -msgid "NetworkManager is not running..."
6727 -msgstr "Trình NetworkManager chưa chạy..."
6728 -
6729 -#. 'Enable Networking' item
6730 -#: ../gnome/applet/applet.c:2170
6731 -msgid "Enable _Networking"
6732 -msgstr "Bật chạy _mạng"
6733 -
6734 -#. 'Enable Wireless' item
6735 -#: ../gnome/applet/applet.c:2176
6736 -msgid "Enable _Wireless"
6737 -msgstr "Bật _Vô tuyến"
6738 -
6739 -#. 'Connection Information' item
6740 -#: ../gnome/applet/applet.c:2182
6741 -msgid "Connection _Information"
6742 -msgstr "Thông t_in kết nối"
6743 -
6744 -#. Help item
6745 -#: ../gnome/applet/applet.c:2193
6746 -msgid "_Help"
6747 -msgstr "Trợ _giúp"
6748 -
6749 -#. About item
6750 -#: ../gnome/applet/applet.c:2202
6751 -msgid "_About"
6752 -msgstr "_Giới thiệu"
6753 -
6754 -#: ../gnome/applet/applet.c:2667
6755 -msgid ""
6756 -"The NetworkManager applet could not find some required resources.  It cannot "
6757 -"continue.\n"
6758 -msgstr ""
6759 -"Tiểu dụng Quản lý mạng không thể tìm một số tài nguyên nên không thể tiếp "
6760 -"tục.\n"
6761 -
6762 -#: ../gnome/applet/wireless-security-option.c:157
6763 -msgid "Open System"
6764 -msgstr "Hệ thống mở"
6765 -
6766 -#: ../gnome/applet/wireless-security-option.c:160
6767 -msgid "Shared Key"
6768 -msgstr "Khóa dùng chung"
6769 -
6770 -#: ../gnome/applet/wireless-security-option.c:208
6771 -msgid "Automatic (Default)"
6772 -msgstr "Tự động (Mặc định)"
6773 -
6774 -# Name: don't translate / Tên: đừng dịch
6775 -#: ../gnome/applet/wireless-security-option.c:215
6776 -msgid "AES-CCMP"
6777 -msgstr "AES-CCMP"
6778 -
6779 -# Literal: don't translate / Nghĩa chữ: đừng dịch
6780 -#: ../gnome/applet/wireless-security-option.c:223
6781 -msgid "TKIP"
6782 -msgstr "TKIP"
6783 -
6784 -#: ../gnome/applet/wireless-security-option.c:231
6785 -msgid "Dynamic WEP"
6786 -msgstr "WEP động"
6787 -
6788 -#: ../gnome/applet/wso-none.c:53
6789 -msgid "None"
6790 -msgstr "Không có"
6791 -
6792 -# Name: don't translate / Tên: đừng dịch
6793 -#: ../gnome/applet/wso-wep-ascii.c:138
6794 -msgid "WEP 64/128-bit ASCII"
6795 -msgstr "WEP 64/128-bit ASCII"
6796 -
6797 -#: ../gnome/applet/wso-wep-hex.c:135
6798 -msgid "WEP 64/128-bit Hex"
6799 -msgstr "WEP 64/128-bit thập lục"
6800 -
6801 -#: ../gnome/applet/wso-wep-passphrase.c:135
6802 -msgid "WEP 128-bit Passphrase"
6803 -msgstr "WEP 128-bit cụm từ mật khẩu"
6804 -
6805 -#: ../gnome/applet/wso-wpa-eap.c:237
6806 -msgid "PEAP"
6807 -msgstr "PEAP"
6808 -
6809 -#: ../gnome/applet/wso-wpa-eap.c:238
6810 -msgid "TLS"
6811 -msgstr "TLS"
6812 -
6813 -#: ../gnome/applet/wso-wpa-eap.c:239
6814 -msgid "TTLS"
6815 -msgstr "TTLS"
6816 -
6817 -# Name: don't translate / Tên: đừng dịch
6818 -#: ../gnome/applet/wso-wpa-eap.c:247 ../src/nm-ap-security-wpa-eap.c:92
6819 -#: ../src/nm-ap-security-wpa-eap.c:116
6820 -msgid "WPA2 Enterprise"
6821 -msgstr "WPA2 Enterprise"
6822 -
6823 -# Name: don't translate / Tên: đừng dịch
6824 -#: ../gnome/applet/wso-wpa-eap.c:249 ../src/nm-ap-security-wpa-eap.c:94
6825 -#: ../src/nm-ap-security-wpa-eap.c:121
6826 -msgid "WPA Enterprise"
6827 -msgstr "WPA Enterprise"
6828 -
6829 -#: ../gnome/applet/wso-wpa-psk.c:178
6830 -msgid "WPA2 Personal"
6831 -msgstr "WPA2 Cá nhân"
6832 -
6833 -#: ../gnome/applet/wso-wpa-psk.c:180
6834 -msgid "WPA Personal"
6835 -msgstr "WPA Cá nhân"
6836 -
6837 -#: ../gnome/applet/eggtrayicon.c:134
6838 -msgid "Orientation"
6839 -msgstr "Hướng"
6840 -
6841 -#: ../gnome/applet/eggtrayicon.c:135
6842 -msgid "The orientation of the tray."
6843 -msgstr "Hướng khay."
6844 -
6845 -#: ../gnome/applet/menu-items.c:88
6846 -#, c-format
6847 -msgid "Wired Network (%s)"
6848 -msgstr "mạng tuyến (%s)"
6849 -
6850 -#: ../gnome/applet/menu-items.c:91
6851 -msgid "_Wired Network"
6852 -msgstr "mạng t_uyến"
6853 -
6854 -#: ../gnome/applet/menu-items.c:162
6855 -#, c-format
6856 -msgid "Wireless Network (%s)"
6857 -msgid_plural "Wireless Networks (%s)"
6858 -msgstr[0] "mạng vô tuyến (%s)"
6859 -
6860 -#: ../gnome/applet/menu-items.c:164
6861 -msgid "Wireless Network"
6862 -msgid_plural "Wireless Networks"
6863 -msgstr[0] "mạng vô tuyến"
6864 -
6865 -#: ../gnome/applet/menu-items.c:343
6866 -msgid " (invalid Unicode)"
6867 -msgstr " (Unicode không hợp lệ)"
6868 -
6869 -#: ../gnome/applet/other-network-dialog.c:352
6870 -#, c-format
6871 -msgid ""
6872 -"By default, the wireless network's name is set to your computer's name, %s, "
6873 -"with no encryption enabled"
6874 -msgstr ""
6875 -"Mặc định là tên của mạng vô tuyến được đặt thành tên của máy tính bạn, %s, "
6876 -"không có mật mã được bật."
6877 -
6878 -#: ../gnome/applet/other-network-dialog.c:358
6879 -msgid "Create new wireless network"
6880 -msgstr "Tạo mạng vô tuyến mới"
6881 -
6882 -#: ../gnome/applet/other-network-dialog.c:359
6883 -msgid ""
6884 -"Enter the name and security settings of the wireless network you wish to "
6885 -"create."
6886 -msgstr "Hãy nhập tên tên và thiết lập bảo mật của mạng vô tuyến bạn muốn thêm."
6887 -
6888 -#: ../gnome/applet/other-network-dialog.c:363
6889 -msgid "Create New Wireless Network"
6890 -msgstr "Tạo mạng vô tuyến mới"
6891 -
6892 -#: ../gnome/applet/other-network-dialog.c:368
6893 -msgid "Existing wireless network"
6894 -msgstr "mạng vô tuyến đã có"
6895 -
6896 -#: ../gnome/applet/other-network-dialog.c:369
6897 -msgid "Enter the name of the wireless network to which you wish to connect."
6898 -msgstr "Hãy gõ tên của mạng vô tuyến đến mà bạn muốn kết nối."
6899 -
6900 -#: ../gnome/applet/other-network-dialog.c:371
6901 -msgid "Connect to Other Wireless Network"
6902 -msgstr "Kết nối đến mạng Vô tuyến Khác"
6903 -
6904 -#: ../gnome/applet/passphrase-dialog.c:215
6905 -msgid "Error connecting to wireless network"
6906 -msgstr "Gặp lỗi khi kết nối đến mạng vô tuyến"
6907 -
6908 -#: ../gnome/applet/passphrase-dialog.c:216
6909 -msgid ""
6910 -"The requested wireless network requires security capabilities unsupported by "
6911 -"your hardware."
6912 -msgstr ""
6913 -"mạng vô tuyến đã yêu cầu cần thiết khả năng bảo mật không được hỗ trợ bởi "
6914 -"phần cứng của bạn."
6915 -
6916 -#: ../gnome/applet/vpn-password-dialog.c:151
6917 -#: ../gnome/applet/vpn-password-dialog.c:188
6918 -#, c-format
6919 -msgid "Cannot start VPN connection '%s'"
6920 -msgstr "Không thể khởi chạy kết nối VPN tới « %s »"
6921 -
6922 -#: ../gnome/applet/vpn-password-dialog.c:154
6923 -#, c-format
6924 -msgid ""
6925 -"Could not find the authentication dialog for VPN connection type '%s'. "
6926 -"Contact your system administrator."
6927 -msgstr ""
6928 -"Không tìm thấy hộp thoại xác thực cho cách kết nối VPN « %s ». Hãy liên lạc "
6929 -"với quản trị hệ thống."
6930 -
6931 -#: ../gnome/applet/vpn-password-dialog.c:191
6932 -#, c-format
6933 -msgid ""
6934 -"There was a problem launching the authentication dialog for VPN connection "
6935 -"type '%s'. Contact your system administrator."
6936 -msgstr ""
6937 -"Gặp lỗi khi khởi chạy hộp thoại xác thực cho cách kết nối VPN « %s ». Hãy "
6938 -"liên lạc với quản trị hệ thống."
6939 -
6940 -#: ../gnome/applet/applet.glade.h:1
6941 -msgid " "
6942 -msgstr " "
6943 -
6944 -#: ../gnome/applet/applet.glade.h:2
6945 -msgid ""
6946 -"<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
6947 -msgstr ""
6948 -"<span weight=\"bold\" size=\"larger\">Thông tin kết nối hoạt động</span>"
6949 -
6950 -#: ../gnome/applet/applet.glade.h:4
6951 -#, no-c-format
6952 -msgid ""
6953 -"<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
6954 -"Network</span>\n"
6955 -"\n"
6956 -"A passphrase or encryption key is required to access the wireless network '%"
6957 -"s'."
6958 -msgstr ""
6959 -"<span weight=\"bold\" size=\"larger\">Cụm từ Mật khẩu Cần thiết cho mạng Vô "
6960 -"tuyến</span>\n"
6961 -"\n"
6962 -"Cần thiết cụm từ mật khẩu hay khóa mật mã để truy cập mạng vô tuyến « %s »."
6963 -
6964 -#: ../gnome/applet/applet.glade.h:8
6965 -#, no-c-format
6966 -msgid ""
6967 -"<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</span>\n"
6968 -"\n"
6969 -"%s  It will not be completely functional."
6970 -msgstr ""
6971 -"<span weight=\"bold\" size=\"larger\">Chức năng mạng bị giảm</span>\n"
6972 -"\n"
6973 -"%s  Nó sẽ không hoạt động hoàn toàn."
6974 -
6975 -#: ../gnome/applet/applet.glade.h:12
6976 -#, no-c-format
6977 -msgid ""
6978 -"<span weight=\"bold\" size=\"larger\">Wireless Network Login Confirmation</"
6979 -"span>\n"
6980 -"\n"
6981 -"You have chosen to log in to the wireless network '%s'.  If you are sure "
6982 -"that this wireless network is secure, click the checkbox below and "
6983 -"NetworkManager will not require confirmation on subsequent log ins."
6984 -msgstr ""
6985 -"<span weight=\"bold\" size=\"larger\">Xác thực Đăng nhập với mạng Vô tuyến</"
6986 -"span>\n"
6987 -"\n"
6988 -"Bạn đã chọn đăng nhập với mạng vô tuyến « %s ». Nếu bạn có chắc là mạng này "
6989 -"bảo mật, hãy đánh dấu trong hộp chọn bên dưới, vậy trình Quản lý mạng sẽ "
6990 -"không cần thiết xác thực khi đăng nhập sau."
6991 -
6992 -#: ../gnome/applet/applet.glade.h:15
6993 -msgid "Anonymous Identity:"
6994 -msgstr "Thực thể vô danh:"
6995 -
6996 -#: ../gnome/applet/applet.glade.h:16
6997 -msgid "Authentication:"
6998 -msgstr "Xác thực:"
6999 -
7000 -#: ../gnome/applet/applet.glade.h:17
7001 -msgid "Broadcast Address:"
7002 -msgstr "Địa chỉ phát thanh:"
7003 -
7004 -#: ../gnome/applet/applet.glade.h:18
7005 -msgid "CA Certificate File:"
7006 -msgstr "Tập tin chứng nhận của CA:"
7007 -
7008 -#: ../gnome/applet/applet.glade.h:19
7009 -msgid "C_onnect"
7010 -msgstr "_Kết nối"
7011 -
7012 -#: ../gnome/applet/applet.glade.h:20
7013 -msgid "Client Certificate File:"
7014 -msgstr "Tập tin chứng nhận của ứng dụng khách:"
7015 -
7016 -#: ../gnome/applet/applet.glade.h:21
7017 -msgid "Connection Information"
7018 -msgstr "Thông tin kết nối"
7019 -
7020 -#: ../gnome/applet/applet.glade.h:22
7021 -msgid "Default Route:"
7022 -msgstr "Tuyến mặc định:"
7023 -
7024 -#: ../gnome/applet/applet.glade.h:23
7025 -msgid "Destination Address:"
7026 -msgstr "Địa chỉ đích:"
7027 -
7028 -#: ../gnome/applet/applet.glade.h:24
7029 -msgid "Driver:"
7030 -msgstr "Trình điều khiển:"
7031 -
7032 -#: ../gnome/applet/applet.glade.h:25
7033 -msgid "EAP Method:"
7034 -msgstr "Phương pháp EAP:"
7035 -
7036 -#: ../gnome/applet/applet.glade.h:26
7037 -msgid "Hardware Address:"
7038 -msgstr "Địa chỉ phần cứng:"
7039 -
7040 -#: ../gnome/applet/applet.glade.h:27
7041 -msgid "IP Address:"
7042 -msgstr "Địa chỉ IP:"
7043 -
7044 -#: ../gnome/applet/applet.glade.h:28
7045 -msgid "Identity:"
7046 -msgstr "Thực thể:"
7047 -
7048 -#: ../gnome/applet/applet.glade.h:29
7049 -msgid "Interface:"
7050 -msgstr "Giao diện:"
7051 -
7052 -#: ../gnome/applet/applet.glade.h:30
7053 -msgid "Key Type:"
7054 -msgstr "Kiểu khoá :"
7055 -
7056 -#: ../gnome/applet/applet.glade.h:31
7057 -msgid "Key:"
7058 -msgstr "Khóa:"
7059 -
7060 -#: ../gnome/applet/applet.glade.h:32
7061 -msgid ""
7062 -"None\n"
7063 -"WEP 128-bit Passphrase\n"
7064 -"WEP 64/128-bit Hex\n"
7065 -"WEP 64/128-bit ASCII\n"
7066 -msgstr ""
7067 -"Không có\n"
7068 -"WEP 128-bit cụm từ mật khẩu\n"
7069 -"WEP 64/128-bit thập lục\n"
7070 -"WEP 64/128-bit ASCII\n"
7071 -
7072 -#: ../gnome/applet/applet.glade.h:37
7073 -msgid ""
7074 -"Open System\n"
7075 -"Shared Key"
7076 -msgstr ""
7077 -"Hệ thống mở\n"
7078 -"Khóa dùng chung"
7079 -
7080 -#: ../gnome/applet/applet.glade.h:39
7081 -msgid "Other Wireless Network..."
7082 -msgstr "mạng Vô tuyến khác..."
7083 -
7084 -#: ../gnome/applet/applet.glade.h:40
7085 -msgid "Passphrase:"
7086 -msgstr "Cụm từ mật khẩu :"
7087 -
7088 -#: ../gnome/applet/applet.glade.h:41
7089 -msgid "Password:"
7090 -msgstr "Mật khẩu :"
7091 -
7092 -#: ../gnome/applet/applet.glade.h:42
7093 -msgid "Primary DNS:"
7094 -msgstr "DNS chính:"
7095 -
7096 -#: ../gnome/applet/applet.glade.h:43
7097 -msgid "Private Key File:"
7098 -msgstr "Tập tin khoá riêng:"
7099 -
7100 -#: ../gnome/applet/applet.glade.h:44
7101 -msgid "Private Key Password:"
7102 -msgstr "Mật khẩu khoá riêng:"
7103 -
7104 -#: ../gnome/applet/applet.glade.h:45
7105 -msgid "Secondary DNS:"
7106 -msgstr "DNS phụ :"
7107 -
7108 -#: ../gnome/applet/applet.glade.h:46
7109 -msgid "Select the CA Certificate File"
7110 -msgstr "Chọn tập tin chứng nhận của nhà cầm quyền chứng nhận (CA)."
7111 -
7112 -#: ../gnome/applet/applet.glade.h:47
7113 -msgid "Select the Client Certificate File"
7114 -msgstr "Chọn tập tin chứng nhận của ứng dụng khách."
7115 -
7116 -#: ../gnome/applet/applet.glade.h:48
7117 -msgid "Select the Private Key File"
7118 -msgstr "Chọn tập tin là khóa riêng."
7119 -
7120 -#: ../gnome/applet/applet.glade.h:49
7121 -msgid "Show key"
7122 -msgstr "Hiện khoá"
7123 -
7124 -#: ../gnome/applet/applet.glade.h:50
7125 -msgid "Show passphrase"
7126 -msgstr "HIện cụm từ mật khẩu"
7127 -
7128 -#: ../gnome/applet/applet.glade.h:51
7129 -msgid "Show password"
7130 -msgstr "Hiện mật khẩu"
7131 -
7132 -#: ../gnome/applet/applet.glade.h:52
7133 -msgid "Show passwords"
7134 -msgstr "Hiện các mật khẩu"
7135 -
7136 -#: ../gnome/applet/applet.glade.h:53
7137 -msgid "Speed:"
7138 -msgstr "Tốc độ :"
7139 -
7140 -#: ../gnome/applet/applet.glade.h:54
7141 -msgid "Subnet Mask:"
7142 -msgstr "Mặt nạ mạng cấp dưới:"
7143 -
7144 -#: ../gnome/applet/applet.glade.h:55
7145 -msgid "Type:"
7146 -msgstr "Kiểu :"
7147 -
7148 -#: ../gnome/applet/applet.glade.h:56
7149 -msgid "User Name:"
7150 -msgstr "Tên người dùng:"
7151 -
7152 -#: ../gnome/applet/applet.glade.h:57
7153 -msgid "Wireless Network Key Required"
7154 -msgstr "Cần thiết Khóa mạng Vô tuyến:"
7155 -
7156 -#: ../gnome/applet/applet.glade.h:58
7157 -msgid "Wireless _adapter:"
7158 -msgstr "_Bộ điều hợp vô tuyến"
7159 -
7160 -#: ../gnome/applet/applet.glade.h:59
7161 -msgid "_Always Trust this Wireless Network"
7162 -msgstr "_Luôn luôn tin cây mạng vô tuyến này"
7163 -
7164 -#: ../gnome/applet/applet.glade.h:60
7165 -msgid "_Don't remind me again"
7166 -msgstr "_Đừng nhắc nhở tôi lần nữa"
7167 -
7168 -#: ../gnome/applet/applet.glade.h:61
7169 -msgid "_Login to Network"
7170 -msgstr "_Đăng nhập với mạng"
7171 -
7172 -#: ../gnome/applet/applet.glade.h:62
7173 -msgid "_Network Name:"
7174 -msgstr "T_ên mạng:"
7175 -
7176 -#: ../gnome/applet/applet.glade.h:63
7177 -msgid "_Wireless Security:"
7178 -msgstr "_Bảo mật vô tuyến:"
7179 -
7180 -#: ../gnome/vpn-properties/nm-vpn-properties.c:383
7181 +#: ../gnome/vpn-properties/nm-vpn-properties.c:405
7182  msgid "Cannot add VPN connection"
7183  msgstr "Không thể thêm sự kết nối VPN"
7184  
7185 -#: ../gnome/vpn-properties/nm-vpn-properties.c:385
7186 +#: ../gnome/vpn-properties/nm-vpn-properties.c:407
7187  msgid ""
7188  "No suitable VPN software was found on your system. Contact your system "
7189  "administrator."
7190  msgstr ""
7191 -"Không tìm thấy phần mềm VPN thích hợp nào trong hệ thống của bạn. Hãy liên "
7192 +"Không tìm thấy phần mềm VPN thích hợp trong hệ thống của bạn. Hãy liên "
7193  "lạc với quản trị hệ thống."
7194  
7195 -#: ../gnome/vpn-properties/nm-vpn-properties.c:437
7196 +#: ../gnome/vpn-properties/nm-vpn-properties.c:457
7197  msgid "Cannot import VPN connection"
7198 -msgstr "Không thể nhập sự kết nối VPN"
7199 +msgstr "Không thể nhập khẩu sự kết nối VPN"
7200  
7201 -#: ../gnome/vpn-properties/nm-vpn-properties.c:439
7202 +#: ../gnome/vpn-properties/nm-vpn-properties.c:459
7203  #, c-format
7204  msgid ""
7205  "Cannot find suitable software for VPN connection type '%s' to import the "
7206  "file '%s'. Contact your system administrator."
7207  msgstr ""
7208 -"Không tìm thấy phần mềm thích hợp cho kiểu kết nối VPN « %s » để nhập tập "
7209 -"tin « %s ». Hãy liên lạc với quản trị hệ thống."
7210 +"Không tìm thấy phần mềm thích hợp cho kết nối VPN kiểu « %s » để nhập khẩu tập tin « %s ». Hãy liên lạc với quản trị hệ thống."
7211  
7212 -#: ../gnome/vpn-properties/nm-vpn-properties.c:579
7213 +#: ../gnome/vpn-properties/nm-vpn-properties.c:596
7214  #, c-format
7215  msgid "Error retrieving VPN connection '%s'"
7216  msgstr "Gặp lỗi khi lấy kết nối PN « %s »"
7217  
7218 -#: ../gnome/vpn-properties/nm-vpn-properties.c:582
7219 +#: ../gnome/vpn-properties/nm-vpn-properties.c:599
7220  #, c-format
7221  msgid ""
7222  "Could not find the UI files for VPN connection type '%s'. Contact your "
7223  "system administrator."
7224  msgstr ""
7225 -"Không tìm thấy những tập tin giao diện người dùng cho kiểu kết nối VPN « %s "
7226 -"». Hãy liên lạc với quản trị hệ thống."
7227 +"Không tìm thấy những tập tin giao diện người dùng cho kết nối VPN kiểu « %s ». Hãy liên lạc với quản trị hệ thống."
7228  
7229 -#: ../gnome/vpn-properties/nm-vpn-properties.c:739
7230 +#: ../gnome/vpn-properties/nm-vpn-properties.c:746
7231  #, c-format
7232  msgid "Delete VPN connection \"%s\"?"
7233 -msgstr "Xóa bỏ sự kết nối VPN « %s » không?"
7234 +msgstr "Xóa kết nối VPN « %s » không?"
7235  
7236 -#: ../gnome/vpn-properties/nm-vpn-properties.c:742
7237 +#: ../gnome/vpn-properties/nm-vpn-properties.c:749
7238  #, c-format
7239  msgid ""
7240  "All information about the VPN connection \"%s\" will be lost and you may "
7241  "need your system administrator to provide information to create a new "
7242  "connection."
7243  msgstr ""
7244 -"Mọi thông tin về sự kết nối VPN « %s » sẽ bị mất và có lẽ bạn sẽ cần quản "
7245 +"Mọi thông tin về sự kết nối VPN « %s » sẽ bị mất thì bạn có thể cần phải yêu cầu quản "
7246  "trị hệ thống cung cấp thông tin để tạo sự kết nối mới."
7247  
7248 -#: ../gnome/vpn-properties/nm-vpn-properties.c:959
7249 +#: ../gnome/vpn-properties/nm-vpn-properties.c:963
7250  msgid "Unable to load"
7251 -msgstr "Không thể tải"
7252 +msgstr "Không thể nạp"
7253  
7254 -#: ../gnome/vpn-properties/nm-vpn-properties.c:961
7255 +#: ../gnome/vpn-properties/nm-vpn-properties.c:965
7256  msgid "Cannot find some needed resources (the glade file)!"
7257 -msgstr "• Không tìm thấy một số tài nguyên cần thiết (tải tập tin glade). •"
7258 +msgstr "Không tìm thấy một số tài nguyên cần thiết (tải tập tin glade) !"
7259  
7260 +#: ../gnome/vpn-properties/nm-vpn-properties.c:1084
7261  #. Edit dialog
7262 -#: ../gnome/vpn-properties/nm-vpn-properties.c:1071
7263  msgid "Edit VPN Connection"
7264 -msgstr "Sửa đổi sự kết nối VPN"
7265 +msgstr "Sửa kết nối VPN"
7266  
7267  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:1
7268  msgid "Add a new VPN connection"
7269 -msgstr "Thêm sự kết nối VPN mới"
7270 +msgstr "Thêm kết nối VPN mới"
7271  
7272  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:2
7273  msgid "Choose which type of VPN connection you wish to create."
7274 @@ -796,19 +95,19 @@
7275  
7276  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:4
7277  msgid "Create VPN Connection"
7278 -msgstr "Tạo sự kết nối VPN"
7279 +msgstr "Tạo kết nối VPN"
7280  
7281  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:5
7282  msgid "Create VPN Connection - 1 of 2"
7283 -msgstr "Tạo sự kết nối VPN — bước 1 trên 2"
7284 +msgstr "Tạo kết nối VPN — bước 1 trên 2"
7285  
7286  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:6
7287  msgid "Create VPN Connection - 2 of 2"
7288 -msgstr "Tạo sự kết nối VPN — bước 2 trên 2"
7289 +msgstr "Tạo kết nối VPN — bước 2 trên 2"
7290  
7291  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:7
7292  msgid "Delete the selected VPN connection"
7293 -msgstr "Xóa bỏ kết nối VPN đã chọn"
7294 +msgstr "Xoá kết nối VPN đã chọn"
7295  
7296  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:8
7297  msgid "E_xport"
7298 @@ -816,11 +115,11 @@
7299  
7300  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:9
7301  msgid "Edit the selected VPN connection"
7302 -msgstr "Sửa đổi kết nối VPN đã chọn."
7303 +msgstr "Sửa kết nối VPN đã chọn."
7304  
7305  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:10
7306  msgid "Export the VPN settings to a file"
7307 -msgstr "Xuất các thiết lập VPN vào tập tin"
7308 +msgstr "Xuất thiết lập VPN vào tập tin"
7309  
7310  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:11
7311  msgid "Export the selected VPN connection to a file"
7312 @@ -832,7 +131,7 @@
7313  
7314  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:13
7315  msgid "Manage Virtual Private Network Connections"
7316 -msgstr "Quản lý các Kết nối mạng Riêng Ảo (VPN)"
7317 +msgstr "Quản lý các Kết nối Mạng Riêng Ảo (VPN)"
7318  
7319  #: ../gnome/vpn-properties/nm-vpn-properties.glade.h:14
7320  msgid ""
7321 @@ -842,7 +141,7 @@
7322  "It will require some information, such as IP addresses and secrets.  Please "
7323  "see your system administrator to obtain this information."
7324  msgstr ""
7325 -"Trợ lý này sẽ hướng dẫn bạn qua tiến trình tạo kết nối đến một mạng Riêng Ảo "
7326 +"Trợ lý này sẽ hướng dẫn bạn qua tiến trình tạo kết nối đến một Mạng Riêng Ảo "
7327  "(VPN).\n"
7328  "\n"
7329  "Cần thiết một phần thông tin, như địa chỉ IP và điều bí mật. Hãy hỏi quan "
7330 @@ -890,11 +189,11 @@
7331  msgid "WPA2 Automatic"
7332  msgstr "WPA2 Tự động"
7333  
7334 -#: ../src/nm-ap-security.c:320
7335 +#: ../src/nm-ap-security.c:338
7336  msgid "none"
7337  msgstr "không có"
7338  
7339 -#: ../src/nm-netlink-monitor.c:154
7340 +#: ../src/nm-netlink-monitor.c:170
7341  #, c-format
7342  msgid ""
7343  "unable to create netlink socket for monitoring wired ethernet devices - %s"
7344 @@ -902,7 +201,7 @@
7345  "không thể tạo ổ cắm kiểu liên kết mạng, để theo dõi các thiết bị Ethernet "
7346  "tuyến — %s"
7347  
7348 -#: ../src/nm-netlink-monitor.c:172
7349 +#: ../src/nm-netlink-monitor.c:188
7350  #, c-format
7351  msgid ""
7352  "unable to bind to netlink socket for monitoring wired ethernet devices - %s"
7353 @@ -910,51 +209,566 @@
7354  "không thể đóng kết tới ổ cắm kiểu liên kết mạng, để theo dõi các thiết bị "
7355  "Ethernet tuyến — %s"
7356  
7357 -#: ../src/nm-netlink-monitor.c:405
7358 +#: ../src/nm-netlink-monitor.c:426
7359  msgid "operation took too long"
7360 -msgstr "thao tác quá lâu"
7361 +msgstr "thao tác đã chạy quá lâu"
7362  
7363 -#: ../src/nm-netlink-monitor.c:502
7364 +#: ../src/nm-netlink-monitor.c:523
7365  msgid "received data from wrong type of sender"
7366 -msgstr "đã nhận dữ liệu từ bộ gởi kiểu không đúng"
7367 +msgstr "đã nhận dữ liệu từ nhà gửi kiểu sai"
7368  
7369 -#: ../src/nm-netlink-monitor.c:515
7370 +#: ../src/nm-netlink-monitor.c:536
7371  msgid "received data from unexpected sender"
7372 -msgstr "đã nhận dữ liệu từ bộ gởi bất ngờ"
7373 +msgstr "đã nhận dữ liệu từ nhà gửi bất thường"
7374  
7375 -#: ../src/nm-netlink-monitor.c:646
7376 +#: ../src/nm-netlink-monitor.c:665
7377  msgid "too much data was sent over socket and some of it was lost"
7378 -msgstr "quá nhiều dữ liệu đã được gởi qua ổ cắm, và một phần nó bị mất"
7379 +msgstr "quá nhiều dữ liệu đã được gửi qua ổ cắm, thì mất một số dữ liệu"
7380  
7381 -#: ../src/nm-netlink-monitor.c:735
7382 +#: ../src/nm-netlink-monitor.c:775
7383  msgid "error occurred while waiting for data on socket"
7384  msgstr "gặp lỗi khi đợi dữ liệu trên ổ cắm"
7385  
7386 -#: ../gnome/applet/applet-dbus-devices.c:898
7387 -#, c-format
7388 -msgid "You are now connected to the Ad-Hoc wireless network '%s'."
7389 -msgstr "Bây giờ bạn có kết nối hoạt động đến mạng vô tuyến Như có « %s »."
7390 +# Name: don't translate / Tên: đừng dịch
7391 +#: ../src/nm-ap-security-wpa-eap.c:96
7392 +#: ../src/nm-ap-security-wpa-eap.c:120
7393 +msgid "WPA2 Enterprise"
7394 +msgstr "WPA2 Enterprise"
7395  
7396 -#: ../gnome/applet/applet-dbus-devices.c:903
7397 -#, c-format
7398 -msgid "You are now connected to the wireless network '%s'."
7399 -msgstr "Bây giờ bạn có kết nối hoạt động đến mạng vô tuyến « %s »."
7400 +# Name: don't translate / Tên: đừng dịch
7401 +#: ../src/nm-ap-security-wpa-eap.c:98
7402 +#: ../src/nm-ap-security-wpa-eap.c:125
7403 +msgid "WPA Enterprise"
7404 +msgstr "WPA Enterprise"
7405 +
7406 +#: ../src/nm-ap-security-leap.c:66
7407 +#: ../src/nm-ap-security-leap.c:82
7408 +msgid "LEAP"
7409 +msgstr "LEAP"
7410 +
7411 +#~ msgid "Passphrase for wireless network %s"
7412 +#~ msgstr "Cụm từ mật khẩu cho mạng vô tuyến %s"
7413 +
7414 +#~ msgid "Connection to the wireless network '%s' failed."
7415 +#~ msgstr "Việc kết nối đến mạng vô tuyến « %s » bị lỗi."
7416 +
7417 +#~ msgid "Connection to the wired network failed."
7418 +#~ msgstr "Việc kết nối đến mạng tuyến bị lỗi."
7419 +
7420 +#~ msgid "Error displaying connection information:"
7421 +#~ msgstr "Gặp lỗi khi hiển thị thông tin kết nối:"
7422 +
7423 +#~ msgid "Could not find some required resources (the glade file)!"
7424 +#~ msgstr "• Không thể tìm thấy một số tài nguyên cần thiết (tập tin glade). •"
7425 +
7426 +#~ msgid "No active connections!"
7427 +#~ msgstr "• Không có kết nối hoạt động. •"
7428 +
7429 +#~ msgid "Wired Ethernet (%s)"
7430 +#~ msgstr "Ethernet tuyến (%s)"
7431 +
7432 +#~ msgid "Wireless Ethernet (%s)"
7433 +#~ msgstr "Ethernet vô tuyến (%s)"
7434 +
7435 +#~ msgid "NetworkManager Applet"
7436 +#~ msgstr "Tiểu dụng Quản lý mạng"
7437 +
7438 +#~ msgid "Copyright © 2004-2005 Red Hat, Inc."
7439 +#~ msgstr "Bản quyền © năm 2004-2005 Red Hat, Inc."
7440 +
7441 +#~ msgid ""
7442 +#~ "Notification area applet for managing your network devices and "
7443 +#~ "connections."
7444 +#~ msgstr ""
7445 +#~ "Tiểu dụng vùng thông báo để quản lý các thiết bị và kết nối mạng của bạn."
7446 +
7447 +#~ msgid "translator-credits"
7448 +#~ msgstr "Nhóm Việt hóa Gnome <gnomevi-list@lists.sourceforge.net>"
7449 +
7450 +#~ msgid "VPN Login Failure"
7451 +#~ msgstr "Đăng nhập VPN bị lỗi"
7452 +
7453 +#~ msgid "Could not start the VPN connection '%s' due to a login failure."
7454 +#~ msgstr "Không thể khởi chạy kết nối VPN « %s » do việc đăng nhập bị lỗi."
7455 +
7456 +#~ msgid "VPN Start Failure"
7457 +#~ msgstr "Khởi chạy VPN bị lỗi"
7458 +
7459 +#~ msgid ""
7460 +#~ "Could not start the VPN connection '%s' due to a failure launching the "
7461 +#~ "VPN program."
7462 +#~ msgstr ""
7463 +#~ "Không thể khởi chạy kết nối VPN « %s » do việc khởi chạy chương trình VPN "
7464 +#~ "bị lỗi."
7465 +
7466 +#~ msgid "VPN Connect Failure"
7467 +#~ msgstr "Kết nối VPN bị lỗi"
7468 +
7469 +#~ msgid "Could not start the VPN connection '%s' due to a connection error."
7470 +#~ msgstr "Không thể khởi chạy kết nối VPN « %s » do lỗi kết nối."
7471 +
7472 +#~ msgid "VPN Configuration Error"
7473 +#~ msgstr "Lỗi cấu hình VPN"
7474 +
7475 +#~ msgid "The VPN connection '%s' was not correctly configured."
7476 +#~ msgstr "Chưa cấu hình đúng sự kết nối VPN « %s »."
7477 +
7478 +#~ msgid ""
7479 +#~ "Could not start the VPN connection '%s' because the VPN server did not "
7480 +#~ "return an adequate network configuration."
7481 +#~ msgstr ""
7482 +#~ "Không thể khởi chạy kết nối VPN « %s » vì trình phục vụ VPN chưa trả gởi "
7483 +#~ "cấu hình mạng hợp lệ."
7484 +
7485 +#~ msgid "VPN Login Message"
7486 +#~ msgstr "Thông điệp đăng nhập VPN"
7487 +
7488 +#~ msgid ""
7489 +#~ "The NetworkManager Applet could not find some required resources (the "
7490 +#~ "glade file was not found)."
7491 +#~ msgstr ""
7492 +#~ "Tiểu dụng Quản lý mạng không thể tìm một số tài nguyên cần thiết (không "
7493 +#~ "tìm thấy tập tin glade)."
7494 +
7495 +#~ msgid "The network device \"%s (%s)\" does not support wireless scanning."
7496 +#~ msgstr "Thiết bị mạng « %s (%s) » không hỗ trợ khả năng quét vô tuyến."
7497 +
7498 +#~ msgid "The network device \"%s (%s)\" does not support link detection."
7499 +#~ msgstr "Thiết bị mạng « %s (%s) » không hỗ trợ khả năng phát hiện liên kết."
7500 +
7501 +#~ msgid "Preparing device %s for the wired network..."
7502 +#~ msgstr "Đang chuẩn bị thiết bị %s cho mạng tuyến..."
7503 +
7504 +#~ msgid "Preparing device %s for the wireless network '%s'..."
7505 +#~ msgstr "Đang chuẩn bị thiết bị %s cho mạng vô tuyến « %s »..."
7506 +
7507 +#~ msgid "Configuring device %s for the wired network..."
7508 +#~ msgstr "Đang cấu hình thiết bị %s cho mạng tuyến..."
7509 +
7510 +#~ msgid "Attempting to join the wireless network '%s'..."
7511 +#~ msgstr "Đang cố tham gia mạng vô tuyến « %s »..."
7512 +
7513 +#~ msgid "Waiting for Network Key for the wireless network '%s'..."
7514 +#~ msgstr "Đang đợi Khóa mạng cho mạng vô tuyến « %s »..."
7515 +
7516 +#~ msgid "Requesting a network address from the wired network..."
7517 +#~ msgstr "Đang yêu cầu địa chỉ mạng từ mạng tuyến..."
7518 +
7519 +#~ msgid "Requesting a network address from the wireless network '%s'..."
7520 +#~ msgstr "Đang yêu cầu địa chỉ mạng từ mạng vô tuyến « %s »..."
7521 +
7522 +#~ msgid "Finishing connection to the wired network..."
7523 +#~ msgstr "Đang kết nối xong tới mạng tuyến..."
7524 +
7525 +#~ msgid "Finishing connection to the wireless network '%s'..."
7526 +#~ msgstr "Đang kết nối xong tới mạng vô tuyến « %s »..."
7527 +
7528 +#~ msgid "NetworkManager is not running"
7529 +#~ msgstr "Trình NetworkManager chưa chạy."
7530 +
7531 +#~ msgid "Networking disabled"
7532 +#~ msgstr "Chạy mạng bị tắt"
7533 +
7534 +#~ msgid "No network connection"
7535 +#~ msgstr "Không có kết nối mạng"
7536 +
7537 +#~ msgid "Wired network connection"
7538 +#~ msgstr "Kết nối mạng tuyến"
7539 +
7540 +#~ msgid "Connected to an Ad-Hoc wireless network"
7541 +#~ msgstr "Đã kết nối tới một mạng vô tuyến Như có"
7542 +
7543 +#~ msgid "Wireless network connection to '%s' (%d%%)"
7544 +#~ msgstr "Cách kết nối mạng vô tuyến tới « %s » (%d%%)"
7545 +
7546 +#~ msgid "VPN connection to '%s'"
7547 +#~ msgstr "Cách kết nối VPN tới « %s »"
7548 +
7549 +#~ msgid "VPN connecting to '%s'"
7550 +#~ msgstr "Đang kết nối VPN tới « %s »..."
7551 +
7552 +#~ msgid "_Connect to Other Wireless Network..."
7553 +#~ msgstr "_Kết nối tới mạng Vô tuyến Khác..."
7554 +
7555 +#~ msgid "Create _New Wireless Network..."
7556 +#~ msgstr "Tạo mạng Vô tuyến _Mới..."
7557 +
7558 +#~ msgid "_VPN Connections"
7559 +#~ msgstr "Kết nối _VPN"
7560 +
7561 +#~ msgid "_Configure VPN..."
7562 +#~ msgstr "_Cấu hình VPN..."
7563 +
7564 +#~ msgid "_Disconnect VPN..."
7565 +#~ msgstr "_Ngắt kết nối VPN..."
7566 +
7567 +#~ msgid "_Dial Up Connections"
7568 +#~ msgstr "Kết nối _quay số"
7569 +
7570 +#~ msgid "Connect to %s..."
7571 +#~ msgstr "Kết nối đến %s..."
7572 +
7573 +#~ msgid "Disconnect from %s..."
7574 +#~ msgstr "Ngắt kết nối từ %s..."
7575 +
7576 +#~ msgid "No network devices have been found"
7577 +#~ msgstr "Không tìm thấy thiết bị mạng nào"
7578 +
7579 +#~ msgid "NetworkManager is not running..."
7580 +#~ msgstr "Trình NetworkManager chưa chạy..."
7581 +
7582 +#~ msgid "Enable _Networking"
7583 +#~ msgstr "Bật chạy _mạng"
7584 +
7585 +#~ msgid "Enable _Wireless"
7586 +#~ msgstr "Bật _Vô tuyến"
7587 +
7588 +#~ msgid "Connection _Information"
7589 +#~ msgstr "Thông t_in kết nối"
7590 +
7591 +#~ msgid "_Help"
7592 +#~ msgstr "Trợ _giúp"
7593 +
7594 +#~ msgid "_About"
7595 +#~ msgstr "_Giới thiệu"
7596 +
7597 +#~ msgid ""
7598 +#~ "The NetworkManager applet could not find some required resources.  It "
7599 +#~ "cannot continue.\n"
7600 +#~ msgstr ""
7601 +#~ "Tiểu dụng Quản lý mạng không thể tìm một số tài nguyên nên không thể tiếp "
7602 +#~ "tục.\n"
7603 +
7604 +#~ msgid "Open System"
7605 +#~ msgstr "Hệ thống mở"
7606 +
7607 +#~ msgid "Shared Key"
7608 +#~ msgstr "Khóa dùng chung"
7609 +
7610 +#~ msgid "Automatic (Default)"
7611 +#~ msgstr "Tự động (Mặc định)"
7612 +
7613 +# Name: don't translate / Tên: đừng dịch
7614 +#~ msgid "AES-CCMP"
7615 +#~ msgstr "AES-CCMP"
7616 +
7617 +# Literal: don't translate / Nghĩa chữ: đừng dịch
7618 +#~ msgid "TKIP"
7619 +#~ msgstr "TKIP"
7620 +
7621 +#~ msgid "Dynamic WEP"
7622 +#~ msgstr "WEP động"
7623 +
7624 +#~ msgid "None"
7625 +#~ msgstr "Không có"
7626 +
7627 +# Name: don't translate / Tên: đừng dịch
7628 +#~ msgid "WEP 64/128-bit ASCII"
7629 +#~ msgstr "WEP 64/128-bit ASCII"
7630 +
7631 +#~ msgid "WEP 64/128-bit Hex"
7632 +#~ msgstr "WEP 64/128-bit thập lục"
7633 +
7634 +#~ msgid "WEP 128-bit Passphrase"
7635 +#~ msgstr "WEP 128-bit cụm từ mật khẩu"
7636 +
7637 +#~ msgid "TLS"
7638 +#~ msgstr "TLS"
7639 +
7640 +#~ msgid "TTLS"
7641 +#~ msgstr "TTLS"
7642 +
7643 +#~ msgid "WPA2 Personal"
7644 +#~ msgstr "WPA2 Cá nhân"
7645 +
7646 +#~ msgid "WPA Personal"
7647 +#~ msgstr "WPA Cá nhân"
7648 +
7649 +#~ msgid "Orientation"
7650 +#~ msgstr "Hướng"
7651 +
7652 +#~ msgid "The orientation of the tray."
7653 +#~ msgstr "Hướng khay."
7654 +
7655 +#~ msgid "Wired Network (%s)"
7656 +#~ msgstr "mạng tuyến (%s)"
7657 +
7658 +#~ msgid "_Wired Network"
7659 +#~ msgstr "mạng t_uyến"
7660 +
7661 +#~ msgid "Wireless Network (%s)"
7662 +#~ msgid_plural "Wireless Networks (%s)"
7663 +#~ msgstr[0] "mạng vô tuyến (%s)"
7664 +
7665 +#~ msgid "Wireless Network"
7666 +#~ msgid_plural "Wireless Networks"
7667 +#~ msgstr[0] "mạng vô tuyến"
7668 +
7669 +#~ msgid " (invalid Unicode)"
7670 +#~ msgstr " (Unicode không hợp lệ)"
7671 +
7672 +#~ msgid ""
7673 +#~ "By default, the wireless network's name is set to your computer's name, %"
7674 +#~ "s, with no encryption enabled"
7675 +#~ msgstr ""
7676 +#~ "Mặc định là tên của mạng vô tuyến được đặt thành tên của máy tính bạn, %"
7677 +#~ "s, không có mật mã được bật."
7678 +
7679 +#~ msgid "Create new wireless network"
7680 +#~ msgstr "Tạo mạng vô tuyến mới"
7681 +
7682 +#~ msgid ""
7683 +#~ "Enter the name and security settings of the wireless network you wish to "
7684 +#~ "create."
7685 +#~ msgstr ""
7686 +#~ "Hãy nhập tên tên và thiết lập bảo mật của mạng vô tuyến bạn muốn thêm."
7687 +
7688 +#~ msgid "Create New Wireless Network"
7689 +#~ msgstr "Tạo mạng vô tuyến mới"
7690 +
7691 +#~ msgid "Existing wireless network"
7692 +#~ msgstr "mạng vô tuyến đã có"
7693 +
7694 +#~ msgid "Enter the name of the wireless network to which you wish to connect."
7695 +#~ msgstr "Hãy gõ tên của mạng vô tuyến đến mà bạn muốn kết nối."
7696 +
7697 +#~ msgid "Connect to Other Wireless Network"
7698 +#~ msgstr "Kết nối đến mạng Vô tuyến Khác"
7699 +
7700 +#~ msgid "Error connecting to wireless network"
7701 +#~ msgstr "Gặp lỗi khi kết nối đến mạng vô tuyến"
7702 +
7703 +#~ msgid ""
7704 +#~ "The requested wireless network requires security capabilities unsupported "
7705 +#~ "by your hardware."
7706 +#~ msgstr ""
7707 +#~ "mạng vô tuyến đã yêu cầu cần thiết khả năng bảo mật không được hỗ trợ bởi "
7708 +#~ "phần cứng của bạn."
7709 +
7710 +#~ msgid "Cannot start VPN connection '%s'"
7711 +#~ msgstr "Không thể khởi chạy kết nối VPN tới « %s »"
7712 +
7713 +#~ msgid ""
7714 +#~ "Could not find the authentication dialog for VPN connection type '%s'. "
7715 +#~ "Contact your system administrator."
7716 +#~ msgstr ""
7717 +#~ "Không tìm thấy hộp thoại xác thực cho cách kết nối VPN « %s ». Hãy liên "
7718 +#~ "lạc với quản trị hệ thống."
7719 +
7720 +#~ msgid ""
7721 +#~ "There was a problem launching the authentication dialog for VPN "
7722 +#~ "connection type '%s'. Contact your system administrator."
7723 +#~ msgstr ""
7724 +#~ "Gặp lỗi khi khởi chạy hộp thoại xác thực cho cách kết nối VPN « %s ». Hãy "
7725 +#~ "liên lạc với quản trị hệ thống."
7726 +
7727 +#~ msgid " "
7728 +#~ msgstr " "
7729 +
7730 +#~ msgid ""
7731 +#~ "<span weight=\"bold\" size=\"larger\">Active Connection Information</span>"
7732 +#~ msgstr ""
7733 +#~ "<span weight=\"bold\" size=\"larger\">Thông tin kết nối hoạt động</span>"
7734 +
7735 +#~ msgid ""
7736 +#~ "<span weight=\"bold\" size=\"larger\">Passphrase Required by Wireless "
7737 +#~ "Network</span>\n"
7738 +#~ "\n"
7739 +#~ "A passphrase or encryption key is required to access the wireless network "
7740 +#~ "'%s'."
7741 +#~ msgstr ""
7742 +#~ "<span weight=\"bold\" size=\"larger\">Cụm từ Mật khẩu Cần thiết cho mạng "
7743 +#~ "Vô tuyến</span>\n"
7744 +#~ "\n"
7745 +#~ "Cần thiết cụm từ mật khẩu hay khóa mật mã để truy cập mạng vô tuyến « %s "
7746 +#~ "»."
7747 +
7748 +#~ msgid ""
7749 +#~ "<span weight=\"bold\" size=\"larger\">Reduced Network Functionality</"
7750 +#~ "span>\n"
7751 +#~ "\n"
7752 +#~ "%s  It will not be completely functional."
7753 +#~ msgstr ""
7754 +#~ "<span weight=\"bold\" size=\"larger\">Chức năng mạng bị giảm</span>\n"
7755 +#~ "\n"
7756 +#~ "%s  Nó sẽ không hoạt động hoàn toàn."
7757 +
7758 +#~ msgid ""
7759 +#~ "<span weight=\"bold\" size=\"larger\">Wireless Network Login "
7760 +#~ "Confirmation</span>\n"
7761 +#~ "\n"
7762 +#~ "You have chosen to log in to the wireless network '%s'.  If you are sure "
7763 +#~ "that this wireless network is secure, click the checkbox below and "
7764 +#~ "NetworkManager will not require confirmation on subsequent log ins."
7765 +#~ msgstr ""
7766 +#~ "<span weight=\"bold\" size=\"larger\">Xác thực Đăng nhập với mạng Vô "
7767 +#~ "tuyến</span>\n"
7768 +#~ "\n"
7769 +#~ "Bạn đã chọn đăng nhập với mạng vô tuyến « %s ». Nếu bạn có chắc là mạng "
7770 +#~ "này bảo mật, hãy đánh dấu trong hộp chọn bên dưới, vậy trình Quản lý mạng "
7771 +#~ "sẽ không cần thiết xác thực khi đăng nhập sau."
7772 +
7773 +#~ msgid "Anonymous Identity:"
7774 +#~ msgstr "Thực thể vô danh:"
7775 +
7776 +#~ msgid "Authentication:"
7777 +#~ msgstr "Xác thực:"
7778 +
7779 +#~ msgid "Broadcast Address:"
7780 +#~ msgstr "Địa chỉ phát thanh:"
7781 +
7782 +#~ msgid "CA Certificate File:"
7783 +#~ msgstr "Tập tin chứng nhận của CA:"
7784 +
7785 +#~ msgid "C_onnect"
7786 +#~ msgstr "_Kết nối"
7787 +
7788 +#~ msgid "Client Certificate File:"
7789 +#~ msgstr "Tập tin chứng nhận của ứng dụng khách:"
7790 +
7791 +#~ msgid "Connection Information"
7792 +#~ msgstr "Thông tin kết nối"
7793 +
7794 +#~ msgid "Default Route:"
7795 +#~ msgstr "Tuyến mặc định:"
7796 +
7797 +#~ msgid "Destination Address:"
7798 +#~ msgstr "Địa chỉ đích:"
7799 +
7800 +#~ msgid "Driver:"
7801 +#~ msgstr "Trình điều khiển:"
7802 +
7803 +#~ msgid "EAP Method:"
7804 +#~ msgstr "Phương pháp EAP:"
7805 +
7806 +#~ msgid "Hardware Address:"
7807 +#~ msgstr "Địa chỉ phần cứng:"
7808 +
7809 +#~ msgid "IP Address:"
7810 +#~ msgstr "Địa chỉ IP:"
7811 +
7812 +#~ msgid "Identity:"
7813 +#~ msgstr "Thực thể:"
7814 +
7815 +#~ msgid "Interface:"
7816 +#~ msgstr "Giao diện:"
7817 +
7818 +#~ msgid "Key Type:"
7819 +#~ msgstr "Kiểu khoá :"
7820 +
7821 +#~ msgid "Key:"
7822 +#~ msgstr "Khóa:"
7823 +
7824 +#~ msgid ""
7825 +#~ "None\n"
7826 +#~ "WEP 128-bit Passphrase\n"
7827 +#~ "WEP 64/128-bit Hex\n"
7828 +#~ "WEP 64/128-bit ASCII\n"
7829 +#~ msgstr ""
7830 +#~ "Không có\n"
7831 +#~ "WEP 128-bit cụm từ mật khẩu\n"
7832 +#~ "WEP 64/128-bit thập lục\n"
7833 +#~ "WEP 64/128-bit ASCII\n"
7834 +
7835 +#~ msgid ""
7836 +#~ "Open System\n"
7837 +#~ "Shared Key"
7838 +#~ msgstr ""
7839 +#~ "Hệ thống mở\n"
7840 +#~ "Khóa dùng chung"
7841 +
7842 +#~ msgid "Other Wireless Network..."
7843 +#~ msgstr "mạng Vô tuyến khác..."
7844 +
7845 +#~ msgid "Passphrase:"
7846 +#~ msgstr "Cụm từ mật khẩu :"
7847 +
7848 +#~ msgid "Password:"
7849 +#~ msgstr "Mật khẩu :"
7850 +
7851 +#~ msgid "Primary DNS:"
7852 +#~ msgstr "DNS chính:"
7853 +
7854 +#~ msgid "Private Key File:"
7855 +#~ msgstr "Tập tin khoá riêng:"
7856 +
7857 +#~ msgid "Private Key Password:"
7858 +#~ msgstr "Mật khẩu khoá riêng:"
7859 +
7860 +#~ msgid "Secondary DNS:"
7861 +#~ msgstr "DNS phụ :"
7862 +
7863 +#~ msgid "Select the CA Certificate File"
7864 +#~ msgstr "Chọn tập tin chứng nhận của nhà cầm quyền chứng nhận (CA)."
7865 +
7866 +#~ msgid "Select the Client Certificate File"
7867 +#~ msgstr "Chọn tập tin chứng nhận của ứng dụng khách."
7868 +
7869 +#~ msgid "Select the Private Key File"
7870 +#~ msgstr "Chọn tập tin là khóa riêng."
7871 +
7872 +#~ msgid "Show key"
7873 +#~ msgstr "Hiện khoá"
7874 +
7875 +#~ msgid "Show passphrase"
7876 +#~ msgstr "HIện cụm từ mật khẩu"
7877 +
7878 +#~ msgid "Show password"
7879 +#~ msgstr "Hiện mật khẩu"
7880 +
7881 +#~ msgid "Show passwords"
7882 +#~ msgstr "Hiện các mật khẩu"
7883 +
7884 +#~ msgid "Speed:"
7885 +#~ msgstr "Tốc độ :"
7886 +
7887 +#~ msgid "Subnet Mask:"
7888 +#~ msgstr "Mặt nạ mạng cấp dưới:"
7889 +
7890 +#~ msgid "Type:"
7891 +#~ msgstr "Kiểu :"
7892 +
7893 +#~ msgid "User Name:"
7894 +#~ msgstr "Tên người dùng:"
7895 +
7896 +#~ msgid "Wireless Network Key Required"
7897 +#~ msgstr "Cần thiết Khóa mạng Vô tuyến:"
7898 +
7899 +#~ msgid "Wireless _adapter:"
7900 +#~ msgstr "_Bộ điều hợp vô tuyến"
7901 +
7902 +#~ msgid "_Always Trust this Wireless Network"
7903 +#~ msgstr "_Luôn luôn tin cây mạng vô tuyến này"
7904 +
7905 +#~ msgid "_Don't remind me again"
7906 +#~ msgstr "_Đừng nhắc nhở tôi lần nữa"
7907 +
7908 +#~ msgid "_Login to Network"
7909 +#~ msgstr "_Đăng nhập với mạng"
7910 +
7911 +#~ msgid "_Network Name:"
7912 +#~ msgstr "T_ên mạng:"
7913 +
7914 +#~ msgid "_Wireless Security:"
7915 +#~ msgstr "_Bảo mật vô tuyến:"
7916 +
7917 +#~ msgid "You are now connected to the Ad-Hoc wireless network '%s'."
7918 +#~ msgstr "Bây giờ bạn có kết nối hoạt động đến mạng vô tuyến Như có « %s »."
7919 +
7920 +#~ msgid "You are now connected to the wireless network '%s'."
7921 +#~ msgstr "Bây giờ bạn có kết nối hoạt động đến mạng vô tuyến « %s »."
7922 +
7923 +#~ msgid "You are now connected to the wired network."
7924 +#~ msgstr "Bây giờ bạn có kết nối hoạt động đến mạng tuyến."
7925 +
7926 +#~ msgid "Connection Established"
7927 +#~ msgstr "Kết nối đã được thiết lập"
7928 +
7929 +#~ msgid "Disconnected"
7930 +#~ msgstr "Bị ngắt kết nối"
7931  
7932 -#: ../gnome/applet/applet-dbus-devices.c:910
7933 -msgid "You are now connected to the wired network."
7934 -msgstr "Bây giờ bạn có kết nối hoạt động đến mạng tuyến."
7935 -
7936 -#: ../gnome/applet/applet-dbus-devices.c:916
7937 -msgid "Connection Established"
7938 -msgstr "Kết nối đã được thiết lập"
7939 -
7940 -#: ../gnome/applet/applet-dbus-devices.c:959
7941 -msgid "Disconnected"
7942 -msgstr "Bị ngắt kết nối"
7943 -
7944 -#: ../gnome/applet/applet-dbus-devices.c:960
7945 -msgid "The network connection has been disconnected."
7946 -msgstr "Kết nối mạng đã bị ngắt."
7947 +#~ msgid "The network connection has been disconnected."
7948 +#~ msgstr "Kết nối mạng đã bị ngắt."
7949  
7950  # Name: don't translate / Tên: đừng dịch
7951  #~ msgid "WEP 40/128-bit ASCII"
7952 diff -urN NetworkManager-0.6.5/README NetworkManager-SVNr3284/README
7953 --- NetworkManager-0.6.5/README 2007-04-18 20:13:10.000000000 +0200
7954 +++ NetworkManager-SVNr3284/README      2008-02-04 16:01:02.000000000 +0100
7955 @@ -20,7 +20,8 @@
7956  For wireless networking support, NetworkManager keeps a list of wireless
7957  networks, the preferred list.  Preferred Networks are wireless networks that
7958  the user has explicitly made NetworkManager associate with at some previous
7959 -time.  So if the user walks into a Starbucks and explicitly asks NetworkManager to associate with that Starbucks network, NetworkManager will remember the
7960 +time.  So if the user walks into a Starbucks and explicitly asks NetworkManager
7961 +to associate with that Starbucks network, NetworkManager will remember the
7962  Starbucks network information from that point on.  Upon returning to that
7963  Starbucks, NetworkManager will attempt to associate _automatically_ with the
7964  Starbucks network since it is now in the Preferred Networks list.  The point of
7965 diff -urN NetworkManager-0.6.5/src/dhcp-manager/nm-dhcp-manager.c NetworkManager-SVNr3284/src/dhcp-manager/nm-dhcp-manager.c
7966 --- NetworkManager-0.6.5/src/dhcp-manager/nm-dhcp-manager.c     2007-04-18 20:13:04.000000000 +0200
7967 +++ NetworkManager-SVNr3284/src/dhcp-manager/nm-dhcp-manager.c  2008-02-04 16:00:00.000000000 +0100
7968 @@ -476,6 +476,8 @@
7969         guint32 *               ip4_nis_servers = NULL;
7970         struct in_addr  temp_addr;
7971         nm_completion_args      args;
7972 +       guint32         mtu = 0;
7973 +       guint32 *   dhcp_mtus = NULL;
7974  
7975         g_return_val_if_fail (manager != NULL, NULL);
7976         g_return_val_if_fail (req != NULL, NULL);
7977 @@ -580,10 +582,19 @@
7978         }
7979  
7980         /*
7981 -        * Grab the MTU from the backend.  If DHCP servers can send recommended MTU's,
7982 -        * should set that here if the backend returns zero.
7983 +        * MTU from the system backend is preferred; otherwise the DHCP-provided
7984 +        * MTU is used.
7985          */
7986 -       nm_ip4_config_set_mtu (ip4_config, nm_system_get_mtu (dev));
7987 +       mtu = nm_system_get_mtu (dev);
7988 +       if (!mtu) {
7989 +               if (get_ip4_uint32s (manager, dev, "interface_mtu", &dhcp_mtus, &count, TRUE)) {
7990 +                       if (count)
7991 +                               mtu = dhcp_mtus[0];
7992 +               }
7993 +       }
7994 +
7995 +       if (mtu)
7996 +               nm_ip4_config_set_mtu (ip4_config, mtu);
7997  
7998  out:
7999         g_free (hostname);
8000 diff -urN NetworkManager-0.6.5/src/Makefile.am NetworkManager-SVNr3284/src/Makefile.am
8001 --- NetworkManager-0.6.5/src/Makefile.am        2007-04-18 20:13:06.000000000 +0200
8002 +++ NetworkManager-SVNr3284/src/Makefile.am     2008-02-04 16:00:13.000000000 +0100
8003 @@ -64,6 +64,10 @@
8004                 nm-ap-security-wpa-psk.h                \
8005                 nm-ap-security-leap.c                   \
8006                 nm-ap-security-leap.h                   \
8007 +               nm-supplicant.h                         \
8008 +               nm-supplicant.c                         \
8009 +               nm-wired-network.c                      \
8010 +               nm-wired-network.h                      \
8011                 nm-marshal-main.c                       \
8012                 kernel-types.h                          \
8013                 wpa.c                                   \
8014 diff -urN NetworkManager-0.6.5/src/named-manager/nm-named-manager.c NetworkManager-SVNr3284/src/named-manager/nm-named-manager.c
8015 --- NetworkManager-0.6.5/src/named-manager/nm-named-manager.c   2007-04-18 20:13:05.000000000 +0200
8016 +++ NetworkManager-SVNr3284/src/named-manager/nm-named-manager.c        2008-02-04 16:00:05.000000000 +0100
8017 @@ -352,6 +352,7 @@
8018         const char *    tmp_resolv_conf = RESOLV_CONF ".tmp";
8019         char *          searches = NULL;
8020         FILE *          f;
8021 +       NMIP4Config *ns_config = config;
8022  
8023         /* If no config, we don't have anything to update, so exit silently */
8024         if (!config)
8025 @@ -367,21 +368,35 @@
8026         if ((f = fopen (tmp_resolv_conf, "w")) == NULL)
8027                 goto lose;
8028  
8029 -       if (fprintf (f, "%s","# generated by NetworkManager, do not edit!\n\n") < 0)
8030 +       if (fprintf (f, "### BEGIN INFO\n#\n") < 0)
8031 +               goto lose;
8032 +       if (fprintf (f, "# Modified_by:  NetworkManager\n") < 0)
8033 +               goto lose;
8034 +       if (fprintf (f, "# Process:      /usr/bin/NetworkManager\n") < 0)
8035 +               goto lose;
8036 +       if (fprintf (f, "# Process_id:   %d\n", getpid ()) < 0)
8037 +               goto lose;
8038 +       if (fprintf (f, "#\n### END INFO\n\n") < 0)
8039                 goto lose;
8040  
8041 -       searches = compute_searches (mgr, config);
8042 +       /* If the ip4 config is a secondary config and has no nameservers, use the
8043 +        * nameservers from the primary config.
8044 +        */
8045 +       if (   nm_ip4_config_get_secondary (config)
8046 +           && !nm_ip4_config_get_num_nameservers (config)) {
8047 +               ns_config = mgr->priv->configs->data;
8048 +       }
8049 +       g_return_val_if_fail (ns_config != NULL, FALSE);
8050  
8051 -       if (mgr->priv->use_named == TRUE)
8052 -       {
8053 +       searches = compute_searches (mgr, ns_config);
8054 +
8055 +       if (mgr->priv->use_named == TRUE) {
8056                 /* Using caching-nameserver & local DNS */
8057                 if (fprintf (f, "%s%s%s", "; Use a local caching nameserver controlled by NetworkManager\n\n", searches, "\nnameserver 127.0.0.1\n") < 0)
8058                         goto lose;
8059 -       }
8060 -       else
8061 -       {
8062 +       } else {
8063                 /* Using glibc resolver */
8064 -               char *nameservers = compute_nameservers (mgr, config);
8065 +               char *nameservers = compute_nameservers (mgr, ns_config);
8066  
8067                 fprintf (f, "%s\n\n", searches);
8068                 g_free (searches);
8069 @@ -438,6 +453,7 @@
8070  add_ip4_config_to_named (NMNamedManager *mgr, NMIP4Config *config)
8071  {
8072         const char *domain;
8073 +       NMIP4Config *ns_config = config;
8074         int i, num_nameservers;
8075         DBusMessage *   message;
8076         DBusMessage *   reply;
8077 @@ -455,10 +471,18 @@
8078  
8079         dbus_message_append_args (message, DBUS_TYPE_STRING, &domain, DBUS_TYPE_INVALID);
8080  
8081 -       num_nameservers = nm_ip4_config_get_num_nameservers (config);
8082 -       for (i = 0; i < num_nameservers; i++)
8083 -       {
8084 -               dbus_uint32_t   server = nm_ip4_config_get_nameserver (config, i);
8085 +       /* If the ip4 config is a secondary config and has no nameservers, use the
8086 +        * nameservers from the primary config.
8087 +        */
8088 +       if (   nm_ip4_config_get_secondary (config)
8089 +           && !nm_ip4_config_get_num_nameservers (config)) {
8090 +               ns_config = mgr->priv->configs->data;
8091 +       }
8092 +       g_return_val_if_fail (ns_config != NULL, FALSE);
8093 +
8094 +       num_nameservers = nm_ip4_config_get_num_nameservers (ns_config);
8095 +       for (i = 0; i < num_nameservers; i++) {
8096 +               dbus_uint32_t   server = nm_ip4_config_get_nameserver (ns_config, i);
8097                 dbus_uint16_t   port = htons (53); /* default DNS port */
8098                 char                    fwd_policy = dflt ? 1 : 2; /* 'first' : 'only' */
8099  
8100 diff -urN NetworkManager-0.6.5/src/NetworkManagerAPList.c NetworkManager-SVNr3284/src/NetworkManagerAPList.c
8101 --- NetworkManager-0.6.5/src/NetworkManagerAPList.c     2007-04-18 20:13:06.000000000 +0200
8102 +++ NetworkManager-SVNr3284/src/NetworkManagerAPList.c  2008-02-04 16:00:13.000000000 +0100
8103 @@ -463,32 +463,33 @@
8104                 const char *    merge_essid = nm_ap_get_essid (merge_ap);
8105                 const GTimeVal  *merge_ap_seen = nm_ap_get_last_seen (merge_ap);
8106  
8107 -               /* Did the AP's name change? */
8108 -               if (!devlist_essid || !merge_essid || nm_null_safe_strcmp (devlist_essid, merge_essid))
8109 -               {
8110 -                       nm_dbus_signal_wireless_network_change (app_data->dbus_connection,
8111 -                               dev, list_ap, NETWORK_STATUS_DISAPPEARED, -1);
8112 -                       new = TRUE;
8113 +               /* All attributes should be updated when merging a non-hidden SSID,
8114 +                * but prefer most attributes of existing non-hidden SSIDs when the
8115 +                * merge AP is hidden.
8116 +                */
8117 +               if (merge_essid) {
8118 +                       /* Did the AP's name change? */
8119 +                       if (!devlist_essid || nm_null_safe_strcmp (devlist_essid, merge_essid)) {
8120 +                               nm_dbus_signal_wireless_network_change (app_data->dbus_connection,
8121 +                                       dev, list_ap, NETWORK_STATUS_DISAPPEARED, -1);
8122 +                               new = TRUE;
8123 +                       }
8124 +
8125 +                       nm_ap_set_capabilities (list_ap, nm_ap_get_capabilities (merge_ap));
8126 +                       nm_ap_set_broadcast (list_ap, nm_ap_get_broadcast (merge_ap));
8127 +                       nm_ap_set_essid (list_ap, merge_essid);
8128                 }
8129  
8130 -               nm_ap_set_capabilities (list_ap, nm_ap_get_capabilities (merge_ap));
8131 -               if (nm_ap_get_strength (merge_ap) != nm_ap_get_strength (list_ap))
8132 -               {
8133 +               if (nm_ap_get_strength (merge_ap) != nm_ap_get_strength (list_ap)) {
8134                         nm_ap_set_strength (list_ap, nm_ap_get_strength (merge_ap));
8135                         strength_changed = TRUE;
8136                 }
8137                 nm_ap_set_last_seen (list_ap, merge_ap_seen);
8138 -               nm_ap_set_broadcast (list_ap, nm_ap_get_broadcast (merge_ap));
8139  
8140                 /* If the AP is noticed in a scan, it's automatically no longer
8141                  * artificial, since it clearly exists somewhere.
8142                  */
8143                 nm_ap_set_artificial (list_ap, FALSE);
8144 -
8145 -               /* Have to change AP's name _after_ dbus signal for old network name
8146 -                * has gone out.
8147 -                */
8148 -               nm_ap_set_essid (list_ap, merge_essid);
8149         }
8150         else if ((list_ap = nm_ap_list_get_ap_by_essid (list, nm_ap_get_essid (merge_ap))))
8151         {
8152 diff -urN NetworkManager-0.6.5/src/NetworkManager.c NetworkManager-SVNr3284/src/NetworkManager.c
8153 --- NetworkManager-0.6.5/src/NetworkManager.c   2007-04-18 20:13:06.000000000 +0200
8154 +++ NetworkManager-SVNr3284/src/NetworkManager.c        2008-02-04 16:00:13.000000000 +0100
8155 @@ -65,8 +65,11 @@
8156   */
8157  static NMData          *nm_data = NULL;
8158  
8159 +char *ks_err_message = NULL;
8160 +
8161  static gboolean sigterm_pipe_handler (GIOChannel *src, GIOCondition condition, gpointer data);
8162  static void nm_data_free (NMData *data);
8163 +static gboolean nm_poll_killswitches(gpointer user_data);
8164  
8165  /*
8166   * nm_get_device_interface_from_hal
8167 @@ -274,6 +277,204 @@
8168  }
8169  
8170  
8171 +static void handle_killswitch_pcall_done (NMData *data, DBusPendingCall * pcall)
8172 +{
8173 +       GSource * source;
8174 +       gboolean now_enabled = FALSE;
8175 +       gboolean now_disabled = FALSE;
8176 +
8177 +       data->ks_pcall_list = g_slist_remove (data->ks_pcall_list, pcall);
8178 +       if (g_slist_length (data->ks_pcall_list) > 0)
8179 +               return;  /* not done with all killswitches yet */
8180 +
8181 +       if (data->hw_rf_enabled != data->tmp_hw_rf_enabled) {
8182 +               nm_info ("Wireless now %s by radio killswitch",
8183 +                        data->tmp_hw_rf_enabled ? "enabled" : "disabled");
8184 +               if (data->tmp_hw_rf_enabled)
8185 +                       now_enabled = TRUE;
8186 +               else
8187 +                       now_disabled = TRUE;
8188 +
8189 +               data->hw_rf_enabled = data->tmp_hw_rf_enabled;
8190 +       }
8191 +
8192 +       if (data->hw_rf_enabled == data->wireless_enabled)
8193 +               goto out;
8194 +
8195 +       /* Only re-enabled wireless if killswitch just changed, otherwise
8196 +        * ignore hardware rf enabled state.
8197 +        */
8198 +       if (now_enabled && !data->wireless_enabled) {
8199 +               data->wireless_enabled = TRUE;
8200 +               nm_policy_schedule_device_change_check (data);
8201 +               nm_dbus_signal_wireless_enabled (data);
8202 +       } else if (!data->hw_rf_enabled && data->wireless_enabled) {
8203 +               GSList * elt;
8204 +
8205 +               /* Deactivate all wireless devices and force them down so they
8206 +                * turn off their radios.
8207 +                */
8208 +               nm_lock_mutex (data->dev_list_mutex, __FUNCTION__);
8209 +               for (elt = data->dev_list; elt; elt = g_slist_next (elt)) {
8210 +                       NMDevice * dev = (NMDevice *) elt->data;
8211 +                       if (nm_device_is_802_11_wireless (dev)) {
8212 +                               nm_device_deactivate (dev);
8213 +                               nm_device_bring_down (dev);
8214 +                       }
8215 +               }
8216 +               nm_unlock_mutex (data->dev_list_mutex, __FUNCTION__);
8217 +
8218 +               data->wireless_enabled = FALSE;
8219 +               nm_policy_schedule_device_change_check (data);
8220 +               nm_dbus_signal_wireless_enabled (data);
8221 +       }
8222 +
8223 +out:
8224 +       /* Schedule another killswitch poll */
8225 +       source = g_timeout_source_new (6000);
8226 +       g_source_set_callback (source, nm_poll_killswitches, data, NULL);
8227 +       g_source_attach (source, data->main_context);
8228 +       g_source_unref (source);
8229 +}
8230 +
8231 +static void nm_killswitch_getpower_reply_cb (DBusPendingCall *pcall, NMData * data)
8232 +{
8233 +       DBusError               err;
8234 +       DBusMessage *   reply = NULL;
8235 +       gint32                  int_status = 1;
8236 +       guint32                 uint_status = 1;
8237 +
8238 +       g_return_if_fail (pcall != NULL);
8239 +       g_return_if_fail (data != NULL);
8240 +
8241 +       if (!dbus_pending_call_get_completed (pcall))
8242 +               goto out;
8243 +
8244 +       if (!(reply = dbus_pending_call_steal_reply (pcall)))
8245 +               goto out;
8246 +
8247 +       if (message_is_error (reply)) {
8248 +               dbus_error_init (&err);
8249 +               dbus_set_error_from_message (&err, reply);
8250 +               if (!ks_err_message || strcmp (ks_err_message, err.message)) {
8251 +                       nm_info ("Error getting killswitch power: %s - %s", err.name, err.message);
8252 +                       g_free (ks_err_message);
8253 +                       ks_err_message = g_strdup (err.message);
8254 +               }
8255 +               dbus_error_free (&err);
8256 +               goto out;
8257 +       }
8258 +
8259 +       /* Handle both HAL <= 0.5.9 which uses UINT and HAL >= 0.5.10 which
8260 +        * uses INT.
8261 +        */
8262 +       dbus_error_init (&err);
8263 +       if (!dbus_message_get_args (reply, &err, DBUS_TYPE_UINT32, &uint_status, DBUS_TYPE_INVALID)) {
8264 +               dbus_error_free (&err);
8265 +
8266 +               dbus_error_init (&err);
8267 +               if (!dbus_message_get_args (reply, &err, DBUS_TYPE_INT32, &int_status, DBUS_TYPE_INVALID)) {
8268 +                       if (!ks_err_message || strcmp (ks_err_message, err.message)) {
8269 +                               nm_info ("Error getting killswitch power arguments: %s - %s", err.name, err.message);
8270 +                               g_free (ks_err_message);
8271 +                               ks_err_message = g_strdup (err.message);
8272 +                       }
8273 +                       dbus_error_free (&err);
8274 +                       goto out;
8275 +               } else {
8276 +                       if (int_status == 0)
8277 +                               data->tmp_hw_rf_enabled = FALSE;
8278 +               }
8279 +       } else {
8280 +               if (uint_status == 0)
8281 +                       data->tmp_hw_rf_enabled = FALSE;
8282 +       }
8283 +
8284 +out:
8285 +       if (reply)
8286 +               dbus_message_unref (reply);
8287 +
8288 +       handle_killswitch_pcall_done (data, pcall);
8289 +       dbus_pending_call_unref (pcall);
8290 +}
8291 +
8292 +
8293 +static gboolean nm_poll_killswitches (gpointer user_data)
8294 +{
8295 +       NMData * data = (NMData *) user_data;
8296 +       DBusConnection * connection = data->dbus_connection;
8297 +       GSList * elt;
8298 +
8299 +       g_return_val_if_fail (data != NULL, FALSE);
8300 +
8301 +       data->tmp_hw_rf_enabled = TRUE;
8302 +
8303 +       for (elt = data->killswitch_list; elt; elt = g_slist_next (elt))
8304 +       {
8305 +               DBusPendingCall * pcall;
8306 +               DBusMessage * message;
8307 +
8308 +               message = dbus_message_new_method_call ("org.freedesktop.Hal",
8309 +                                                       elt->data,
8310 +                                                       "org.freedesktop.Hal.Device.KillSwitch",
8311 +                                                       "GetPower");
8312 +               if (!dbus_connection_send_with_reply (connection, message, &pcall, 5000)) {
8313 +                       nm_warning ("%s(): could not send dbus message", __func__);
8314 +               } else if (!pcall) {
8315 +                       nm_warning ("%s(): could not send dbus message; pcall was NULL", __func__);
8316 +               } else {
8317 +                       dbus_pending_call_set_notify (pcall,
8318 +                                                     (DBusPendingCallNotifyFunction) nm_killswitch_getpower_reply_cb,
8319 +                                                     data,
8320 +                                                     NULL);
8321 +                       data->ks_pcall_list = g_slist_append (data->ks_pcall_list, pcall);
8322 +               }
8323 +               dbus_message_unref (message);
8324 +       }
8325 +       return FALSE;
8326 +}
8327 +
8328 +
8329 +/*
8330 + * nm_add_killswitch_device
8331 + *
8332 + * Adds a killswitch device to the list
8333 + *
8334 + */
8335 +static void nm_add_killswitch_device (NMData * data, const char * udi)
8336 +{
8337 +       char * type;
8338 +       GSList * elt;
8339 +
8340 +       type = libhal_device_get_property_string (data->hal_ctx, udi, "killswitch.type", NULL);
8341 +       if (!type)
8342 +               return;
8343 +
8344 +       if (strcmp (type, "wlan") != 0)
8345 +               goto out;
8346 +
8347 +       /* see if it's already in the list */
8348 +       for (elt = data->killswitch_list; elt; elt = g_slist_next (elt)) {
8349 +               const char * list_udi = (const char *) elt->data;
8350 +               if (strcmp (list_udi, udi) == 0)
8351 +                       goto out;
8352 +       }
8353 +
8354 +       /* Start polling switches if this is the first switch we've found */
8355 +       if (g_slist_length (data->killswitch_list) == 0) {
8356 +               GSource * source = g_idle_source_new ();
8357 +               g_source_set_callback (source, nm_poll_killswitches, data, NULL);
8358 +               g_source_attach (source, data->main_context);
8359 +               g_source_unref (source);
8360 +       }
8361 +
8362 +       data->killswitch_list = g_slist_append (data->killswitch_list, g_strdup (udi));
8363 +       nm_info ("Found radio killswitch %s", udi);
8364 +
8365 +out:
8366 +       libhal_free_string (type);
8367 +}
8368 +
8369  /*
8370   * nm_hal_device_new_capability
8371   *
8372 @@ -283,10 +484,9 @@
8373         NMData  *data = (NMData *)libhal_ctx_get_user_data (ctx);
8374  
8375         g_return_if_fail (data != NULL);
8376 +       g_return_if_fail (capability != NULL);
8377  
8378 -       /*nm_debug ("nm_hal_device_new_capability() called with udi = %s, capability = %s", udi, capability );*/
8379 -
8380 -       if (capability && ((strcmp (capability, "net.80203") == 0) || (strcmp (capability, "net.80211") == 0)))
8381 +       if (((strcmp (capability, "net.80203") == 0) || (strcmp (capability, "net.80211") == 0)))
8382         {
8383                 char *iface;
8384  
8385 @@ -296,6 +496,10 @@
8386                         g_free (iface);
8387                 }
8388         }
8389 +       else if (strcmp (capability, "killswitch") == 0)
8390 +       {
8391 +               nm_add_killswitch_device (data, udi);
8392 +       }
8393  }
8394  
8395  
8396 @@ -340,6 +544,30 @@
8397         libhal_free_string_array (net_devices);
8398  }
8399  
8400 +void nm_add_initial_killswitch_devices (NMData * data)
8401 +{
8402 +       char ** udis;
8403 +       int             num_udis, i;
8404 +       DBusError       error;
8405 +
8406 +       g_return_if_fail (data != NULL);
8407 +
8408 +       dbus_error_init (&error);
8409 +       udis = libhal_find_device_by_capability (data->hal_ctx, "killswitch", &num_udis, &error);
8410 +       if (!udis)
8411 +               return;
8412 +
8413 +       if (dbus_error_is_set (&error)) {
8414 +               nm_warning("Could not find killswitch devices: %s", error.message);
8415 +               dbus_error_free (&error);
8416 +               return;
8417 +       }
8418 +
8419 +       for (i = 0; i < num_udis; i++)
8420 +               nm_add_killswitch_device (data, udis[i]);
8421 +       libhal_free_string_array (udis);
8422 +}
8423 +
8424  
8425  /*
8426   * nm_state_change_signal_broadcast
8427 @@ -548,6 +776,9 @@
8428  
8429         nm_hal_deinit (data);
8430  
8431 +       if (data->dbus_connection)
8432 +               dbus_connection_unref (data->dbus_connection);
8433 +
8434         memset (data, 0, sizeof (NMData));
8435  }
8436  
8437 @@ -582,7 +813,7 @@
8438         nm_hal_mainloop_integration (ctx, data->dbus_connection); 
8439         libhal_ctx_set_dbus_connection (ctx, data->dbus_connection);
8440         dbus_error_init (&error);
8441 -       if(!libhal_ctx_init (ctx, &error))
8442 +       if (!libhal_ctx_init (ctx, &error))
8443         {
8444                 nm_error ("libhal_ctx_init() failed: %s\n"
8445                           "Make sure the hal daemon is running?", 
8446 @@ -616,28 +847,39 @@
8447         g_return_if_fail (data != NULL);
8448  
8449         if ((data->hal_ctx = nm_get_hal_ctx (data)))
8450 +       {
8451 +               nm_add_initial_killswitch_devices (data);
8452                 nm_add_initial_devices (data);
8453 +       }
8454 +
8455 +       /* If there weren't any killswitches, mark hardware RF to on */
8456 +       if (g_slist_length (data->killswitch_list) == 0)
8457 +               data->hw_rf_enabled = TRUE;
8458  }
8459  
8460  
8461  void nm_hal_deinit (NMData *data)
8462  {
8463 +       DBusError error;
8464 +
8465         g_return_if_fail (data != NULL);
8466  
8467 -       if (data->hal_ctx)
8468 -       {
8469 -               DBusError error;
8470 +       if (!data->hal_ctx)
8471 +               return;
8472  
8473 -               dbus_error_init (&error);
8474 -               libhal_ctx_shutdown (data->hal_ctx, &error);
8475 -               if (dbus_error_is_set (&error))
8476 -               {
8477 -                       nm_warning ("libhal shutdown failed - %s", error.message);
8478 -                       dbus_error_free (&error);
8479 -               }
8480 -               libhal_ctx_free (data->hal_ctx);
8481 -               data->hal_ctx = NULL;
8482 +       g_slist_foreach (data->killswitch_list, (GFunc) g_free, NULL);
8483 +       g_slist_free (data->killswitch_list);
8484 +       data->killswitch_list = NULL;
8485 +
8486 +       dbus_error_init (&error);
8487 +       libhal_ctx_shutdown (data->hal_ctx, &error);
8488 +       if (dbus_error_is_set (&error))
8489 +       {
8490 +               nm_warning ("libhal shutdown failed - %s", error.message);
8491 +               dbus_error_free (&error);
8492         }
8493 +       libhal_ctx_free (data->hal_ctx);
8494 +       data->hal_ctx = NULL;
8495  }
8496  
8497  
8498 diff -urN NetworkManager-0.6.5/src/NetworkManagerDbus.c NetworkManager-SVNr3284/src/NetworkManagerDbus.c
8499 --- NetworkManager-0.6.5/src/NetworkManagerDbus.c       2007-04-18 20:13:06.000000000 +0200
8500 +++ NetworkManager-SVNr3284/src/NetworkManagerDbus.c    2008-02-04 16:00:13.000000000 +0100
8501 @@ -174,7 +174,7 @@
8502  {
8503         NMData *                        data;
8504         NMDevice *              dev;
8505 -       NMAccessPoint * ap;
8506 +       char *essid;
8507         DeviceStatus            status;
8508  } NMStatusChangeData;
8509  
8510 @@ -232,11 +232,9 @@
8511         }
8512  
8513         /* If the device was wireless, attach the name of the wireless network that failed to activate */
8514 -       if (cb_data->ap)
8515 +       if (cb_data->essid)
8516         {
8517 -               const char *essid = nm_ap_get_essid (cb_data->ap);
8518 -               if (essid)
8519 -                       dbus_message_append_args (message, DBUS_TYPE_OBJECT_PATH, &dev_path, DBUS_TYPE_STRING, &essid, DBUS_TYPE_INVALID);
8520 +               dbus_message_append_args (message, DBUS_TYPE_OBJECT_PATH, &dev_path, DBUS_TYPE_STRING, &cb_data->essid, DBUS_TYPE_INVALID);
8521         }
8522         else
8523                 dbus_message_append_args (message, DBUS_TYPE_OBJECT_PATH, &dev_path, DBUS_TYPE_INVALID);
8524 @@ -248,8 +246,7 @@
8525         if (message)
8526                 dbus_message_unref (message);
8527  
8528 -       if (cb_data->ap)
8529 -               nm_ap_unref (cb_data->ap);
8530 +       g_free (cb_data->essid);
8531  
8532         g_free (dev_path);
8533         g_object_unref (G_OBJECT (cb_data->dev));
8534 @@ -259,7 +256,7 @@
8535  }
8536  
8537  
8538 -void nm_dbus_schedule_device_status_change_signal (NMData *data, NMDevice *dev, NMAccessPoint *ap, DeviceStatus status)
8539 +void nm_dbus_schedule_device_status_change_signal (NMData *data, NMDevice *dev, const char *essid, DeviceStatus status)
8540  {
8541         NMStatusChangeData      *cb_data = NULL;
8542         GSource                 *source;
8543 @@ -271,11 +268,9 @@
8544         g_object_ref (G_OBJECT (dev));
8545         cb_data->data = data;
8546         cb_data->dev = dev;
8547 -       if (ap)
8548 -       {
8549 -               nm_ap_ref (ap);
8550 -               cb_data->ap = ap;
8551 -       }
8552 +       if (essid)
8553 +               cb_data->essid = g_strdup (essid);
8554 +
8555         cb_data->status = status;
8556  
8557         source = g_idle_source_new ();
8558 @@ -434,6 +429,29 @@
8559  }
8560  
8561  
8562 +void nm_dbus_signal_wireless_enabled (NMData * data)
8563 +{
8564 +       DBusMessage *   message;
8565 +
8566 +       g_return_if_fail (data != NULL);
8567 +       g_return_if_fail (data->dbus_connection != NULL);
8568 +
8569 +       if (!(message = dbus_message_new_signal (NM_DBUS_PATH, NM_DBUS_INTERFACE, "WirelessEnabled")))
8570 +       {
8571 +               nm_warning ("%s(): Not enough memory for new dbus message!", __func__);
8572 +               return;
8573 +       }
8574 +
8575 +       dbus_message_append_args (message,
8576 +                                 DBUS_TYPE_BOOLEAN, &data->wireless_enabled,
8577 +                                 DBUS_TYPE_BOOLEAN, &data->hw_rf_enabled,
8578 +                                 DBUS_TYPE_INVALID);
8579 +       if (!dbus_connection_send (data->dbus_connection, message, NULL))
8580 +               nm_warning ("%s(): Could not emit the WirelessEnabled signal!", __func__);
8581 +
8582 +       dbus_message_unref (message);
8583 +}
8584 +
8585  /*
8586   * nm_dbus_signal_filter
8587   *
8588 @@ -490,7 +508,7 @@
8589                 }
8590                 else if (dbus_message_is_signal (message, NMI_DBUS_INTERFACE, "UserInterfaceActivated"))
8591                 {
8592 -                       nm_device_802_11_wireless_set_scan_interval (data, NULL, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
8593 +                       nm_device_802_11_wireless_ui_activated (data, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
8594                         handled = TRUE;
8595                 }
8596         }
8597 diff -urN NetworkManager-0.6.5/src/NetworkManagerDbus.h NetworkManager-SVNr3284/src/NetworkManagerDbus.h
8598 --- NetworkManager-0.6.5/src/NetworkManagerDbus.h       2007-04-18 20:13:06.000000000 +0200
8599 +++ NetworkManager-SVNr3284/src/NetworkManagerDbus.h    2008-02-04 16:00:13.000000000 +0100
8600 @@ -62,12 +62,13 @@
8601  char *         nm_dbus_get_object_path_for_device              (NMDevice *dev);
8602  char *         nm_dbus_get_object_path_for_network     (NMDevice *dev, NMAccessPoint *ap);
8603  
8604 -void                   nm_dbus_schedule_device_status_change_signal    (NMData *data, NMDevice *dev, NMAccessPoint *ap, DeviceStatus status);
8605 +void                   nm_dbus_schedule_device_status_change_signal    (NMData *data, NMDevice *dev, const char *essid, DeviceStatus status);
8606  
8607  void                   nm_dbus_signal_state_change                     (DBusConnection *connection, NMData *data);
8608  
8609  void                   nm_dbus_signal_wireless_network_change  (DBusConnection *connection, NMDevice80211Wireless *dev, NMAccessPoint *ap, NMNetworkStatus status, gint strength);
8610  void                   nm_dbus_signal_device_strength_change   (DBusConnection *connection, NMDevice80211Wireless *dev, gint strength);
8611 +void                   nm_dbus_signal_wireless_enabled (NMData * data);
8612  
8613  NMDevice *     nm_dbus_get_device_from_escaped_object_path     (NMData *data, const char *path);
8614  
8615 diff -urN NetworkManager-0.6.5/src/NetworkManagerMain.h NetworkManager-SVNr3284/src/NetworkManagerMain.h
8616 --- NetworkManager-0.6.5/src/NetworkManagerMain.h       2007-04-18 20:13:06.000000000 +0200
8617 +++ NetworkManager-SVNr3284/src/NetworkManagerMain.h    2008-02-04 16:00:13.000000000 +0100
8618 @@ -82,6 +82,7 @@
8619         GSList *                                dev_list;
8620         GMutex *                                dev_list_mutex;
8621  
8622 +       gboolean                                hw_rf_enabled;
8623         gboolean                                wireless_enabled;
8624         gboolean                                modem_active;
8625         gboolean                                asleep;
8626 @@ -90,6 +91,10 @@
8627         GSList *                                dialup_list;
8628         GMutex *                                dialup_list_mutex;
8629  
8630 +       GSList *                                killswitch_list;
8631 +       GSList *                                ks_pcall_list; /* track killswitch D-Bus pending calls */
8632 +       gboolean                                tmp_hw_rf_enabled;
8633 +
8634         struct NMAccessPointList        *allowed_ap_list;
8635         struct NMAccessPointList        *invalid_ap_list;
8636  } NMData;
8637 diff -urN NetworkManager-0.6.5/src/NetworkManagerPolicy.c NetworkManager-SVNr3284/src/NetworkManagerPolicy.c
8638 --- NetworkManager-0.6.5/src/NetworkManagerPolicy.c     2007-04-18 20:13:06.000000000 +0200
8639 +++ NetworkManager-SVNr3284/src/NetworkManagerPolicy.c  2008-02-04 16:00:13.000000000 +0100
8640 @@ -51,7 +51,8 @@
8641  {
8642         NMDevice                        *dev = NULL;
8643         NMData                  *data = NULL;
8644 -       NMAccessPoint * ap = NULL;
8645 +       NMActRequest * dev_req;
8646 +       const char *network_id = NULL;
8647  
8648         g_return_val_if_fail (req != NULL, FALSE);
8649  
8650 @@ -61,14 +62,26 @@
8651         dev = nm_act_request_get_dev (req);
8652         g_assert (dev);
8653  
8654 -    if (nm_device_is_802_11_wireless (dev))
8655 -        ap = nm_act_request_get_ap (req);
8656 +       /* Ensure that inactive devices don't get the activated signal
8657 +        * sent due to race conditions.
8658 +        */
8659 +       dev_req = nm_device_get_act_request (dev);
8660 +       if (!dev_req || (dev_req != req))
8661 +               return FALSE;
8662 +
8663 +    if (NM_IS_DEVICE_802_11_WIRELESS (dev))
8664 +               network_id = nm_ap_get_essid (nm_act_request_get_ap (req));
8665 +       else if (NM_IS_DEVICE_802_3_ETHERNET (dev)) {
8666 +               NMWiredNetwork *wired_net = nm_act_request_get_wired_network (req);
8667 +               if (wired_net)
8668 +                       network_id = nm_wired_network_get_network_id (wired_net);
8669 +       }
8670  
8671         nm_device_activation_success_handler (dev, req);
8672  
8673         nm_act_request_unref (req);
8674         nm_info ("Activation (%s) successful, device activated.", nm_device_get_iface (dev));
8675 -       nm_dbus_schedule_device_status_change_signal (data, dev, ap, DEVICE_NOW_ACTIVE);
8676 +       nm_dbus_schedule_device_status_change_signal (data, dev, network_id, DEVICE_NOW_ACTIVE);
8677         nm_schedule_state_change_signal_broadcast (data);
8678  
8679         return FALSE;
8680 @@ -115,7 +128,7 @@
8681  {
8682         NMDevice *      dev = NULL;
8683         NMData *                data = NULL;
8684 -       NMAccessPoint *ap = NULL;
8685 +       const char *network_id = NULL;
8686  
8687         g_return_val_if_fail (req != NULL, FALSE);
8688  
8689 @@ -127,11 +140,16 @@
8690  
8691         nm_device_activation_failure_handler (dev, req);
8692  
8693 -    if (nm_device_is_802_11_wireless (dev))
8694 -        ap = nm_act_request_get_ap (req);
8695 +       if (NM_IS_DEVICE_802_11_WIRELESS (dev))
8696 +               network_id = nm_ap_get_essid (nm_act_request_get_ap (req));
8697 +       else if (NM_IS_DEVICE_802_3_ETHERNET (dev)) {
8698 +               NMWiredNetwork *wired_net = nm_act_request_get_wired_network (req);
8699 +               if (wired_net)
8700 +                       network_id = nm_wired_network_get_network_id (wired_net);
8701 +       }
8702  
8703         nm_info ("Activation (%s) failed.", nm_device_get_iface (dev));
8704 -       nm_dbus_schedule_device_status_change_signal    (data, dev, ap, DEVICE_ACTIVATION_FAILED);
8705 +       nm_dbus_schedule_device_status_change_signal (data, dev, network_id, DEVICE_ACTIVATION_FAILED);
8706  
8707         nm_device_deactivate (dev);
8708         nm_schedule_state_change_signal_broadcast (data);
8709 @@ -265,14 +283,16 @@
8710         }
8711  
8712  #if 0
8713 -       nm_info ("AUTO: Best wired device = %s, best wireless device = %s (%s)", best_wired_dev ? nm_device_get_iface (best_wired_dev) : "(null)",
8714 -                       best_wireless_dev ? nm_device_get_iface (best_wireless_dev) : "(null)", (best_wireless_dev && *ap) ? nm_ap_get_essid (*ap) : "null" );
8715 +       nm_info ("AUTO: Best wired device = %s, best wireless device = %s (%s)", best_wired_dev ? nm_device_get_iface (NM_DEVICE (best_wired_dev)) : "(null)",
8716 +                       best_wireless_dev ? nm_device_get_iface (NM_DEVICE (best_wireless_dev)) : "(null)", (best_wireless_dev && *ap) ? nm_ap_get_essid (*ap) : "null" );
8717  #endif
8718  
8719         return highest_priority_dev;
8720  }
8721  
8722  
8723 +static GStaticMutex dcc_mutex = G_STATIC_MUTEX_INIT;
8724 +
8725  /*
8726   * nm_policy_device_change_check
8727   *
8728 @@ -294,7 +314,9 @@
8729  
8730         g_return_val_if_fail (data != NULL, FALSE);
8731  
8732 +       g_static_mutex_lock (&dcc_mutex);
8733         data->dev_change_check_idle_id = 0;
8734 +       g_static_mutex_unlock (&dcc_mutex);
8735  
8736         old_dev = nm_get_active_device (data);
8737  
8738 @@ -303,11 +325,19 @@
8739  
8740         if (old_dev)
8741         {
8742 +               gboolean has_link = TRUE;
8743                 guint32 caps = nm_device_get_capabilities (old_dev);
8744  
8745 +               /* Ensure ethernet devices have a link before starting activation,
8746 +                * partially works around Fedora #194124.
8747 +                */
8748 +               if (nm_device_is_802_3_ethernet (old_dev))
8749 +                       has_link = nm_device_has_active_link (old_dev);
8750 +
8751                 /* Don't interrupt a currently activating device. */
8752                 if (   nm_device_is_activating (old_dev)
8753 -                   && !nm_device_can_interrupt_activation (old_dev))
8754 +                   && !nm_device_can_interrupt_activation (old_dev)
8755 +                   && has_link)
8756                 {
8757                         nm_info ("Old device '%s' activating, won't change.", nm_device_get_iface (old_dev));
8758                         goto out;
8759 @@ -425,12 +455,41 @@
8760         if (do_switch && (nm_device_is_802_3_ethernet (new_dev) || (nm_device_is_802_11_wireless (new_dev) && ap)))
8761         {
8762                 NMActRequest *  act_req = NULL;
8763 +               gboolean has_link = TRUE;
8764  
8765 -               if ((act_req = nm_act_request_new (data, new_dev, ap, FALSE)))
8766 +               /* Ensure ethernet devices have a link before starting activation,
8767 +                * partially works around Fedora #194124.
8768 +                */
8769 +               if (nm_device_is_802_3_ethernet (new_dev))
8770 +                       has_link = nm_device_has_active_link (new_dev);
8771 +
8772 +               if (has_link)
8773                 {
8774 -                       nm_info ("Will activate connection '%s%s%s'.", nm_device_get_iface (new_dev), ap ? "/" : "", ap ? nm_ap_get_essid (ap) : "");
8775 -                       nm_policy_schedule_device_activation (act_req);
8776 -                       nm_act_request_unref (act_req);
8777 +                       if ((act_req = nm_act_request_new (data, new_dev, FALSE)))
8778 +                       {
8779 +                               nm_info ("Will activate connection '%s%s%s'.",
8780 +                                        nm_device_get_iface (new_dev),
8781 +                                        ap ? "/" : "",
8782 +                                        ap ? nm_ap_get_essid (ap) : "");
8783 +
8784 +                               if (ap) {
8785 +                                       nm_act_request_set_ap (act_req, ap);
8786 +                                       nm_ap_unref (ap);
8787 +                               }
8788 +
8789 +                               nm_policy_schedule_device_activation (act_req);
8790 +                               nm_act_request_unref (act_req);
8791 +                       }
8792 +                       else
8793 +                       {
8794 +                               nm_info ("Error creating activation request for %s",
8795 +                                        nm_device_get_iface (new_dev));
8796 +                       }
8797 +               }
8798 +               else
8799 +               {
8800 +                       nm_info ("Won't activate %s because it no longer has a link.",
8801 +                                nm_device_get_iface (new_dev));
8802                 }
8803         }
8804  
8805 @@ -452,11 +511,9 @@
8806   */
8807  void nm_policy_schedule_device_change_check (NMData *data)
8808  {
8809 -       static GStaticMutex mutex = G_STATIC_MUTEX_INIT;
8810 -
8811         g_return_if_fail (data != NULL);
8812  
8813 -       g_static_mutex_lock (&mutex);
8814 +       g_static_mutex_lock (&dcc_mutex);
8815  
8816         if (data->dev_change_check_idle_id == 0)
8817         {
8818 @@ -466,8 +523,7 @@
8819                 data->dev_change_check_idle_id = g_source_attach (source, data->main_context);
8820                 g_source_unref (source);
8821         }
8822 -
8823 -       g_static_mutex_unlock (&mutex);
8824 +       g_static_mutex_unlock (&dcc_mutex);
8825  }
8826  
8827  
8828 diff -urN NetworkManager-0.6.5/src/NetworkManagerSystem.c NetworkManager-SVNr3284/src/NetworkManagerSystem.c
8829 --- NetworkManager-0.6.5/src/NetworkManagerSystem.c     2007-04-18 20:13:06.000000000 +0200
8830 +++ NetworkManager-SVNr3284/src/NetworkManagerSystem.c  2008-02-04 16:00:13.000000000 +0100
8831 @@ -64,6 +64,7 @@
8832         struct sockaddr_in *p;
8833         const char *            iface;
8834         int                             err;
8835 +       NMIP4Config * config = NULL;
8836  
8837         iface = nm_device_get_iface (dev);
8838  
8839 @@ -75,6 +76,15 @@
8840         if (ip4_gateway == 0)
8841                 return TRUE;
8842  
8843 +       /*
8844 +        * Do not add the route if the destination is on the same subnet.
8845 +        */
8846 +       config = nm_device_get_ip4_config(dev);
8847 +       if (config &&
8848 +           ((guint32)ip4_dest & nm_ip4_config_get_netmask(config)) ==
8849 +               (nm_ip4_config_get_address(config) & nm_ip4_config_get_netmask(config)))
8850 +               return TRUE;
8851 +
8852         if ((sk = nm_dev_sock_open (dev, NETWORK_CONTROL, __FUNCTION__, NULL)) == NULL)
8853                 return FALSE;
8854  
8855 @@ -167,24 +177,6 @@
8856  }
8857  
8858  
8859 -static struct nl_cache * get_link_cache (struct nl_handle *nlh)
8860 -{
8861 -       static GStaticMutex mutex = G_STATIC_MUTEX_INIT;
8862 -       static struct nl_cache * link_cache = NULL;
8863 -
8864 -       g_static_mutex_lock (&mutex);
8865 -       if (!link_cache)
8866 -               link_cache = rtnl_link_alloc_cache (nlh);
8867 -       if (!link_cache)
8868 -               nm_warning ("ERROR: couldn't allocate rtnl link cache!");
8869 -       else
8870 -               nl_cache_update (nlh, link_cache);
8871 -       g_static_mutex_unlock (&mutex);
8872 -
8873 -       return link_cache;
8874 -}
8875 -
8876 -
8877  static void iface_to_rtnl_index (const char *iface, struct nl_handle *nlh, struct rtnl_addr *addr)
8878  {
8879         struct nl_cache *       cache = NULL;
8880 @@ -194,14 +186,17 @@
8881         g_return_if_fail (nlh != NULL);
8882         g_return_if_fail (addr != NULL);
8883  
8884 -       if ((cache = get_link_cache (nlh)))
8885 -       {
8886 -               i = rtnl_link_name2i (cache, iface);
8887 -               if (RTNL_LINK_NOT_FOUND != i)
8888 -                       rtnl_addr_set_ifindex (addr, i);
8889 +       cache = rtnl_link_alloc_cache (nlh);
8890 +       if (!cache) {
8891 +               nm_warning ("%s: couldn't allocate link cache.", __func__);
8892 +               return;
8893         }
8894 -       else
8895 -               nm_warning ("iface_to_rtnl_link() couldn't allocate link cache.");
8896 +
8897 +       nl_cache_update (nlh, cache);
8898 +       i = rtnl_link_name2i (cache, iface);
8899 +       if (RTNL_LINK_NOT_FOUND != i)
8900 +               rtnl_addr_set_ifindex (addr, i);
8901 +       nl_cache_free (cache);
8902  }
8903  
8904  
8905 @@ -213,45 +208,85 @@
8906         g_return_val_if_fail (iface != NULL, NULL);
8907         g_return_val_if_fail (nlh != NULL, NULL);
8908  
8909 -       if ((cache = get_link_cache (nlh)))
8910 -               have_link = rtnl_link_get_by_name (cache, iface);
8911 -       else
8912 -               nm_warning ("iface_to_rtnl_link() couldn't allocate link cache.");
8913 +       cache = rtnl_link_alloc_cache (nlh);
8914 +       if (!cache) {
8915 +               nm_warning ("%s: couldn't allocate link cache.", __func__);
8916 +               return NULL;
8917 +       }
8918 +
8919 +       nl_cache_update (nlh, cache);
8920 +       have_link = rtnl_link_get_by_name (cache, iface);
8921 +       nl_cache_free (cache);
8922  
8923         return have_link;
8924  }
8925  
8926 -
8927 -static struct nl_handle * new_nl_handle (void)
8928 +static struct
8929 +nl_handle *new_nl_handle (gboolean recursive)
8930  {
8931 -       struct nl_handle *      nlh = NULL;
8932 +       struct nl_handle *nlh = NULL;
8933 +       struct nl_cb *cb;
8934  
8935 -       nlh = nl_handle_alloc_nondefault(NL_CB_VERBOSE);
8936 -       nl_handle_set_pid (nlh, (pthread_self() << 16 | getpid()));
8937 -       if (nl_connect(nlh, NETLINK_ROUTE) < 0)
8938 -       {
8939 -               nm_warning ("%s: couldn't connecto to netlink: %s", __func__, nl_geterror());
8940 +       cb = nl_cb_alloc (NL_CB_VERBOSE);
8941 +       nlh = nl_handle_alloc_cb (cb);
8942 +       if (!nlh) {
8943 +               nm_warning ("%s: couldn't allocate netlink handle: %s", __func__, nl_geterror ());
8944 +               return NULL;
8945 +       }
8946 +
8947 +       if (nl_connect (nlh, NETLINK_ROUTE) < 0) {
8948 +               /* HACK: try one more time. Because the netlink monitor for link state
8949 +                * inits before we get here, it grabs the port that matches the PID
8950 +                * of the NM process, which also happens to be the PID that libnl uses
8951 +                * the first time too.  The real fix is to convert nm-netlink-monitor.c
8952 +                * over to use libnl.
8953 +                */
8954                 nl_handle_destroy (nlh);
8955 -               nlh = NULL;
8956 +               if (recursive)
8957 +                       return NULL;
8958 +
8959 +               nlh = new_nl_handle (TRUE);
8960 +               if (!nlh) {
8961 +                       nm_warning ("%s: couldn't connect to netlink: %s", __func__, nl_geterror ());
8962 +                       return NULL;
8963 +               }
8964         }
8965  
8966         return nlh;
8967  }
8968  
8969 +static void
8970 +destroy_nl_handle (struct nl_handle *nlh)
8971 +{
8972 +       g_return_if_fail (nlh != NULL);
8973 +
8974 +       nl_close (nlh);
8975 +       nl_handle_destroy (nlh);
8976 +}
8977  
8978  int
8979  nm_system_get_rtnl_index_from_iface (const char *iface)
8980  {
8981         struct nl_handle *      nlh = NULL;
8982 -       struct nl_cache *       cache = NULL;
8983 +       struct nl_cache *       cache;
8984         int                             i = RTNL_LINK_NOT_FOUND;
8985  
8986 -       nlh = new_nl_handle ();
8987 -       if (nlh && (cache = get_link_cache (nlh)))
8988 -               i = rtnl_link_name2i (cache, iface);
8989 -       nl_close (nlh);
8990 -       nl_handle_destroy (nlh);
8991 +       nlh = new_nl_handle (FALSE);
8992 +       if (!nlh)
8993 +               return RTNL_LINK_NOT_FOUND;
8994 +
8995 +       cache = rtnl_link_alloc_cache (nlh);
8996 +       if (!cache) {
8997 +               nm_warning ("%s: couldn't allocate link cache.", iface);
8998 +               goto out;
8999 +       }
9000 +
9001 +       nl_cache_update (nlh, cache);
9002 +       i = rtnl_link_name2i (cache, iface);
9003 +       nl_cache_free (cache);
9004  
9005 +out:
9006 +       destroy_nl_handle (nlh);
9007         return i;
9008  }
9009  
9010 @@ -264,19 +299,32 @@
9011         struct nl_cache *       cache = NULL;
9012         char *                  buf = NULL;
9013  
9014 -       nlh = new_nl_handle ();
9015 -       if (nlh && (cache = get_link_cache (nlh)))
9016 -       {
9017 -               buf = g_malloc0 (MAX_IFACE_LEN);
9018 -               if (!rtnl_link_i2name (cache, rtnl_index, buf, MAX_IFACE_LEN - 1))
9019 -               {
9020 -                       g_free (buf);
9021 -                       buf = NULL;
9022 -               }
9023 +       nlh = new_nl_handle (FALSE);
9024 +       if (!nlh)
9025 +               return NULL;
9026 +
9027 +       cache = rtnl_link_alloc_cache (nlh);
9028 +       if (!cache) {
9029 +               nm_warning ("Couldn't allocate link cache.");
9030 +               goto out;
9031 +       }
9032 +
9033 +       nl_cache_update (nlh, cache);
9034 +
9035 +       buf = g_malloc0 (MAX_IFACE_LEN);
9036 +       if (!buf)
9037 +               goto destroy_cache;
9038 +
9039 +       if (!rtnl_link_i2name (cache, rtnl_index, buf, MAX_IFACE_LEN - 1)) {
9040 +               g_free (buf);
9041 +               buf = NULL;
9042         }
9043 -       nl_close (nlh);
9044 -       nl_handle_destroy (nlh);
9045  
9046 +destroy_cache:
9047 +       nl_cache_free (cache);
9048 +
9049 +out:
9050 +       destroy_nl_handle (nlh);
9051         return buf;
9052  }
9053  
9054 @@ -303,13 +351,15 @@
9055         config = nm_device_get_ip4_config (dev);
9056         g_return_val_if_fail (config != NULL, FALSE);
9057  
9058 +       nlh = new_nl_handle (FALSE);
9059 +       if (!nlh)
9060 +               return FALSE;
9061 +
9062         nm_system_delete_default_route ();
9063         nm_system_device_flush_addresses (dev);
9064         nm_system_device_flush_routes (dev);
9065         nm_system_flush_arp_cache ();
9066  
9067 -       nlh = new_nl_handle ();
9068 -
9069         if ((addr = nm_ip4_config_to_rtnl_addr (config, NM_RTNL_ADDR_DEFAULT)))
9070         {
9071                 iface_to_rtnl_index (nm_device_get_iface (dev), nlh, addr);
9072 @@ -320,8 +370,7 @@
9073         else
9074                 nm_warning ("nm_system_device_set_from_ip4_config(): couldn't create rtnl address!\n");
9075  
9076 -       nl_close (nlh);
9077 -       nl_handle_destroy (nlh);
9078 +       destroy_nl_handle (nlh);
9079  
9080         sleep (1);
9081         nm_system_device_set_ip4_route (dev, nm_ip4_config_get_gateway (config), 0, 0, nm_ip4_config_get_mss (config));
9082 @@ -414,7 +463,13 @@
9083   * Set IPv4 configuration of a VPN device from an NMIP4Config object.
9084   *
9085   */
9086 -gboolean nm_system_vpn_device_set_from_ip4_config (NMNamedManager *named, NMDevice *active_device, const char *iface, NMIP4Config *config, char **routes, int num_routes)
9087 +gboolean
9088 +nm_system_vpn_device_set_from_ip4_config (NMNamedManager *named,
9089 +                                          NMDevice *active_device,
9090 +                                          const char *iface,
9091 +                                          NMIP4Config *config,
9092 +                                          char **routes,
9093 +                                          int num_routes)
9094  {
9095         NMIP4Config *           ad_config = NULL;
9096         struct nl_handle *      nlh = NULL;
9097 @@ -427,71 +482,73 @@
9098         if (active_device && (ad_config = nm_device_get_ip4_config (active_device)))
9099                 nm_system_device_set_ip4_route (active_device, nm_ip4_config_get_gateway (ad_config), nm_ip4_config_get_gateway (config), 0xFFFFFFFF, nm_ip4_config_get_mss (config));
9100  
9101 -       if (iface != NULL && strlen (iface))
9102 -       {
9103 -               nm_system_device_set_up_down_with_iface (iface, TRUE);
9104 +       if (!iface || !strlen (iface))
9105 +               goto done;
9106  
9107 -               nlh = new_nl_handle ();
9108 +       nlh = new_nl_handle (FALSE);
9109 +       if (!nlh)
9110 +               goto done;
9111  
9112 -               if ((addr = nm_ip4_config_to_rtnl_addr (config, NM_RTNL_ADDR_PTP_DEFAULT)))
9113 -               {
9114 -                       int err = 0;
9115 -                       iface_to_rtnl_index (iface, nlh, addr);
9116 -                       if ((err = rtnl_addr_add (nlh, addr, 0)) < 0)
9117 -                               nm_warning ("nm_system_device_set_from_ip4_config(): error %d returned from rtnl_addr_add():\n%s", err, nl_geterror());
9118 -                       rtnl_addr_put (addr);
9119 -               }
9120 -               else
9121 -                       nm_warning ("nm_system_vpn_device_set_from_ip4_config(): couldn't create rtnl address!\n");
9122 +       nm_system_device_set_up_down_with_iface (iface, TRUE);
9123  
9124 -               /* Set the MTU */
9125 -               if ((request = rtnl_link_alloc ()))
9126 -               {
9127 -                       struct rtnl_link * old;
9128 +       if ((addr = nm_ip4_config_to_rtnl_addr (config, NM_RTNL_ADDR_PTP_DEFAULT)))
9129 +       {
9130 +               int err = 0;
9131 +               iface_to_rtnl_index (iface, nlh, addr);
9132 +               if ((err = rtnl_addr_add (nlh, addr, 0)) < 0)
9133 +                       nm_warning ("nm_system_device_set_from_ip4_config(): error %d returned from rtnl_addr_add():\n%s", err, nl_geterror());
9134 +               rtnl_addr_put (addr);
9135 +       }
9136 +       else
9137 +               nm_warning ("nm_system_vpn_device_set_from_ip4_config(): couldn't create rtnl address!\n");
9138  
9139 -                       old = iface_to_rtnl_link (iface, nlh);
9140 -                       rtnl_link_set_mtu (request, 1412);
9141 -                       rtnl_link_change (nlh, old, request, 0);
9142 +       /* Set the MTU */
9143 +       if ((request = rtnl_link_alloc ()))
9144 +       {
9145 +               struct rtnl_link * old;
9146  
9147 -                       rtnl_link_put (old);
9148 -                       rtnl_link_put (request);
9149 -               }
9150 +               old = iface_to_rtnl_link (iface, nlh);
9151 +               rtnl_link_set_mtu (request, 1412);
9152 +               rtnl_link_change (nlh, old, request, 0);
9153  
9154 -               nl_close (nlh);
9155 -               nl_handle_destroy (nlh);
9156 +               rtnl_link_put (old);
9157 +               rtnl_link_put (request);
9158 +       }
9159  
9160 -               sleep (1);
9161 +       destroy_nl_handle (nlh);
9162  
9163 -               nm_system_device_flush_routes_with_iface (iface);
9164 -               if (num_routes <= 0)
9165 -               {
9166 -                       nm_system_delete_default_route ();
9167 -                       nm_system_device_add_default_route_via_device_with_iface (iface);
9168 -               }
9169 -               else
9170 +       sleep (1);
9171 +
9172 +       nm_system_device_flush_routes_with_iface (iface);
9173 +       if (num_routes <= 0)
9174 +       {
9175 +               nm_system_delete_default_route ();
9176 +               nm_system_device_add_default_route_via_device_with_iface (iface);
9177 +       }
9178 +       else
9179 +       {
9180 +               int i;
9181 +               for (i = 0; i < num_routes; i++)
9182                 {
9183 -                       int i;
9184 -                       for (i = 0; i < num_routes; i++)
9185 -                       {
9186 -                               char *valid_ip4_route;
9187 +                       char *valid_ip4_route;
9188  
9189 -                               /* Make sure the route is valid, otherwise it's a security risk as the route
9190 -                                * text is simply taken from the user, and passed directly to system().  If
9191 -                                * we did not check the route, think of:
9192 -                                *
9193 -                                *     system("/sbin/ip route add `rm -rf /` dev eth0")
9194 -                                *
9195 -                                * where `rm -rf /` was the route text.  As UID 0 (root), we have to be careful.
9196 -                                */
9197 -                               if ((valid_ip4_route = validate_ip4_route (routes[i])))
9198 -                               {
9199 -                                       nm_system_device_add_route_via_device_with_iface (iface, valid_ip4_route);
9200 -                                       g_free (valid_ip4_route);
9201 -                               }
9202 +                       /* Make sure the route is valid, otherwise it's a security risk as the route
9203 +                        * text is simply taken from the user, and passed directly to system().  If
9204 +                        * we did not check the route, think of:
9205 +                        *
9206 +                        *     system("/sbin/ip route add `rm -rf /` dev eth0")
9207 +                        *
9208 +                        * where `rm -rf /` was the route text.  As UID 0 (root), we have to be careful.
9209 +                        */
9210 +                       if ((valid_ip4_route = validate_ip4_route (routes[i])))
9211 +                       {
9212 +                               nm_system_device_add_route_via_device_with_iface (iface, valid_ip4_route);
9213 +                               g_free (valid_ip4_route);
9214                         }
9215                 }
9216         }
9217  
9218 +done:
9219         nm_named_manager_add_ip4_config (named, config);
9220  
9221         return TRUE;
9222 @@ -538,7 +595,8 @@
9223  
9224         g_return_val_if_fail (iface != NULL, FALSE);
9225  
9226 -       if (!(nlh = new_nl_handle ()))
9227 +       nlh = new_nl_handle (FALSE);
9228 +       if (!nlh)
9229                 return FALSE;
9230  
9231         if (!(request = rtnl_link_alloc ()))
9232 @@ -559,9 +617,7 @@
9233         success = TRUE;
9234  
9235  out:
9236 -       nl_close (nlh);
9237 -       nl_handle_destroy (nlh);
9238 -
9239 +       destroy_nl_handle (nlh);
9240         return success;
9241  }
9242  
9243 @@ -583,7 +639,7 @@
9244         if (!mtu)
9245                 return;
9246  
9247 -       nlh = new_nl_handle ();
9248 +       nlh = new_nl_handle (FALSE);
9249         if (!nlh)
9250                 return;
9251  
9252 @@ -604,6 +660,6 @@
9253  out_request:
9254         rtnl_link_put (request);
9255  out_nl_close:
9256 -       nl_close (nlh);
9257 -       nl_handle_destroy (nlh);
9258 +       destroy_nl_handle (nlh);
9259  }
9260 +
9261 diff -urN NetworkManager-0.6.5/src/nm-activation-request.c NetworkManager-SVNr3284/src/nm-activation-request.c
9262 --- NetworkManager-0.6.5/src/nm-activation-request.c    2007-04-18 20:13:06.000000000 +0200
9263 +++ NetworkManager-SVNr3284/src/nm-activation-request.c 2008-02-04 16:00:13.000000000 +0100
9264 @@ -36,6 +36,7 @@
9265         NMData *                        data;
9266         NMDevice *              dev;
9267         NMAccessPoint * ap;
9268 +       NMWiredNetwork *wired_net;
9269         NMIP4Config *           ip4_config;
9270  
9271         gboolean                        user_requested;
9272 @@ -48,16 +49,13 @@
9273  };
9274  
9275  
9276 -NMActRequest * nm_act_request_new (NMData *data, NMDevice *dev, NMAccessPoint *ap, gboolean user_requested)
9277 +NMActRequest * nm_act_request_new (NMData *data, NMDevice *dev, gboolean user_requested)
9278  {
9279         NMActRequest *  req;
9280  
9281         g_return_val_if_fail (data != NULL, NULL);
9282         g_return_val_if_fail (dev != NULL, NULL);
9283  
9284 -       if (nm_device_is_802_11_wireless (dev))
9285 -               g_return_val_if_fail (ap != NULL, NULL);
9286 -
9287         req = g_malloc0 (sizeof (NMActRequest));
9288         req->refcount = 1;
9289         req->data = data;
9290 @@ -65,10 +63,6 @@
9291         g_object_ref (G_OBJECT (dev));
9292         req->dev = dev;
9293  
9294 -       if (ap)
9295 -               nm_ap_ref (ap);
9296 -       req->ap = ap;
9297 -
9298         req->user_requested = user_requested;
9299         req->dhcp_state = nm_dhcp_manager_get_state_for_device (data->dhcp_manager, dev);
9300  
9301 @@ -103,6 +97,9 @@
9302                         g_source_destroy (source);
9303                 }
9304  
9305 +               if (req->wired_net)
9306 +                       g_object_unref (req->wired_net);
9307 +
9308                 memset (req, 0, sizeof (NMActRequest));
9309                 g_free (req);
9310         }
9311 @@ -124,6 +121,14 @@
9312  }
9313  
9314  
9315 +gboolean nm_act_request_get_user_requested (NMActRequest *req)
9316 +{
9317 +       g_return_val_if_fail (req != NULL, FALSE);
9318 +
9319 +       return req->user_requested;
9320 +}
9321 +
9322 +
9323  NMAccessPoint * nm_act_request_get_ap (NMActRequest *req)
9324  {
9325         g_return_val_if_fail (req != NULL, NULL);
9326 @@ -132,11 +137,42 @@
9327  }
9328  
9329  
9330 -gboolean nm_act_request_get_user_requested (NMActRequest *req)
9331 +void nm_act_request_set_ap (NMActRequest *req, NMAccessPoint *ap)
9332  {
9333 -       g_return_val_if_fail (req != NULL, FALSE);
9334 +       g_return_if_fail (req != NULL);
9335  
9336 -       return req->user_requested;
9337 +       if (req->ap)
9338 +       {
9339 +               nm_ap_unref (req->ap);
9340 +               req->ap = NULL;
9341 +       }
9342 +       if (ap)
9343 +       {
9344 +               nm_ap_ref (ap);
9345 +               req->ap = ap;
9346 +       }
9347 +}
9348 +
9349 +
9350 +NMWiredNetwork *nm_act_request_get_wired_network (NMActRequest *req)
9351 +{
9352 +       g_return_val_if_fail (req != NULL, NULL);
9353 +
9354 +       return req->wired_net;
9355 +}
9356 +
9357 +
9358 +void nm_act_request_set_wired_network (NMActRequest *req, NMWiredNetwork *wired_net)
9359 +{
9360 +       g_return_if_fail (req != NULL);
9361 +
9362 +       if (req->wired_net)
9363 +       {
9364 +               g_object_unref (req->wired_net);
9365 +               req->wired_net = NULL;
9366 +       }
9367 +       if (wired_net)
9368 +               req->wired_net = g_object_ref (wired_net);
9369  }
9370  
9371  
9372 @@ -242,4 +278,3 @@
9373  
9374         req->dhcp_timeout = dhcp_timeout;
9375  }
9376 -
9377 diff -urN NetworkManager-0.6.5/src/nm-activation-request.h NetworkManager-SVNr3284/src/nm-activation-request.h
9378 --- NetworkManager-0.6.5/src/nm-activation-request.h    2007-04-18 20:13:06.000000000 +0200
9379 +++ NetworkManager-SVNr3284/src/nm-activation-request.h 2008-02-04 16:00:13.000000000 +0100
9380 @@ -28,19 +28,25 @@
9381  #include "NetworkManagerMain.h"
9382  #include "nm-device.h"
9383  #include "NetworkManagerAP.h"
9384 +#include "nm-wired-network.h"
9385  #include "nm-ip4-config.h"
9386  
9387  
9388  
9389 -NMActRequest *         nm_act_request_new                              (NMData *data, NMDevice *dev, NMAccessPoint *ap, gboolean user_requested);
9390 +NMActRequest *         nm_act_request_new                              (NMData *data, NMDevice *dev, gboolean user_requested);
9391  void                           nm_act_request_ref                              (NMActRequest *req);
9392  void                           nm_act_request_unref                    (NMActRequest *req);
9393  
9394  NMDevice *             nm_act_request_get_dev                  (NMActRequest *req);
9395  NMData *                       nm_act_request_get_data                 (NMActRequest *req);
9396 -NMAccessPoint *        nm_act_request_get_ap                   (NMActRequest *req);
9397  gboolean                       nm_act_request_get_user_requested       (NMActRequest *req);
9398  
9399 +NMAccessPoint *        nm_act_request_get_ap                   (NMActRequest *req);
9400 +void                   nm_act_request_set_ap                   (NMActRequest *req, NMAccessPoint *ap);
9401 +
9402 +NMWiredNetwork *nm_act_request_get_wired_network       (NMActRequest *req);
9403 +void                   nm_act_request_set_wired_network        (NMActRequest *req, NMWiredNetwork *network);
9404 +
9405  NMIP4Config *          nm_act_request_get_ip4_config           (NMActRequest *req);
9406  void                           nm_act_request_set_ip4_config           (NMActRequest *req, NMIP4Config *ip4_config);
9407  
9408 diff -urN NetworkManager-0.6.5/src/nm-ap-security.c NetworkManager-SVNr3284/src/nm-ap-security.c
9409 --- NetworkManager-0.6.5/src/nm-ap-security.c   2007-04-18 20:13:06.000000000 +0200
9410 +++ NetworkManager-SVNr3284/src/nm-ap-security.c        2008-02-04 16:00:13.000000000 +0100
9411 @@ -171,7 +171,7 @@
9412  nm_ap_security_write_supplicant_config (NMAPSecurity *self,
9413                                          struct wpa_ctrl *ctrl,
9414                                          int nwid,
9415 -                                        gboolean adhoc)
9416 +                                        NMAPSecurityWriteFlags flag)
9417  {
9418         g_return_val_if_fail (self != NULL, FALSE);
9419         g_return_val_if_fail (ctrl != NULL, FALSE);
9420 @@ -181,7 +181,7 @@
9421                 return FALSE;
9422  
9423         return NM_AP_SECURITY_GET_CLASS (self)->write_supplicant_config_func (self,
9424 -                       ctrl, nwid, adhoc);
9425 +                       ctrl, nwid, flag);
9426  }
9427  
9428  void
9429 @@ -240,7 +240,7 @@
9430  real_write_supplicant_config (NMAPSecurity *self,
9431                                struct wpa_ctrl *ctrl,
9432                                int nwid,
9433 -                              gboolean adhoc)
9434 +                              NMAPSecurityWriteFlags flag)
9435  {
9436         /* Unencrypted network setup */
9437         if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
9438 diff -urN NetworkManager-0.6.5/src/nm-ap-security.h NetworkManager-SVNr3284/src/nm-ap-security.h
9439 --- NetworkManager-0.6.5/src/nm-ap-security.h   2007-04-18 20:13:06.000000000 +0200
9440 +++ NetworkManager-SVNr3284/src/nm-ap-security.h        2008-02-04 16:00:13.000000000 +0100
9441 @@ -40,6 +40,12 @@
9442  #define NM_IS_AP_SECURITY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),  NM_TYPE_AP_SECURITY))
9443  #define NM_AP_SECURITY_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj),  NM_TYPE_AP_SECURITY, NMAPSecurityClass))
9444  
9445 +typedef enum {
9446 +       NM_AP_SECURITY_WRITE_FLAG_NONE,
9447 +       NM_AP_SECURITY_WRITE_FLAG_ADHOC,
9448 +       NM_AP_SECURITY_WRITE_FLAG_WIRED
9449 +} NMAPSecurityWriteFlags;
9450 +
9451  typedef struct _NMAPSecurity NMAPSecurity;
9452  typedef struct _NMAPSecurityClass NMAPSecurityClass;
9453  typedef struct _NMAPSecurityPrivate NMAPSecurityPrivate;
9454 @@ -67,7 +73,7 @@
9455         gboolean        (*write_supplicant_config_func)(NMAPSecurity *self,
9456                                                                           struct wpa_ctrl *ctrl,
9457                                                                           int nwid,
9458 -                                                                         gboolean adhoc);
9459 +                                                                         NMAPSecurityWriteFlags flag);
9460  
9461         guint32 (*get_default_capabilities_func)(NMAPSecurity *self);
9462         gboolean (*get_authentication_required_func)(NMAPSecurity *self);
9463 @@ -94,7 +100,7 @@
9464  gboolean               nm_ap_security_write_supplicant_config (NMAPSecurity *self,
9465                                                                         struct wpa_ctrl *ctrl,
9466                                                                         int nwid,
9467 -                                                                       gboolean adhoc);
9468 +                                                                       NMAPSecurityWriteFlags flag);
9469  
9470  const char *   nm_ap_security_get_description (NMAPSecurity *self);
9471  
9472 diff -urN NetworkManager-0.6.5/src/nm-ap-security-leap.c NetworkManager-SVNr3284/src/nm-ap-security-leap.c
9473 --- NetworkManager-0.6.5/src/nm-ap-security-leap.c      2007-04-18 20:13:06.000000000 +0200
9474 +++ NetworkManager-SVNr3284/src/nm-ap-security-leap.c   2008-02-04 16:00:13.000000000 +0100
9475 @@ -100,7 +100,7 @@
9476  real_write_supplicant_config (NMAPSecurity *instance,
9477                                struct wpa_ctrl *ctrl,
9478                                int nwid,
9479 -                              gboolean user_created)
9480 +                              NMAPSecurityWriteFlags flag)
9481  {
9482         NMAPSecurityLEAP *      self = NM_AP_SECURITY_LEAP (instance);
9483         gboolean                        success = FALSE;
9484 @@ -109,6 +109,11 @@
9485  
9486         g_return_val_if_fail (nm_ap_security_get_we_cipher (instance) == NM_AUTH_TYPE_LEAP, FALSE);
9487  
9488 +       /* LEAP is not valid for wired */
9489 +       if (flag == NM_AP_SECURITY_WRITE_FLAG_WIRED)
9490 +               goto out;
9491 +
9492 +
9493         if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, "SET_NETWORK %i proto WPA", nwid))
9494                    goto out;
9495  
9496 diff -urN NetworkManager-0.6.5/src/nm-ap-security-wep.c NetworkManager-SVNr3284/src/nm-ap-security-wep.c
9497 --- NetworkManager-0.6.5/src/nm-ap-security-wep.c       2007-04-18 20:13:06.000000000 +0200
9498 +++ NetworkManager-SVNr3284/src/nm-ap-security-wep.c    2008-02-04 16:00:13.000000000 +0100
9499 @@ -115,12 +115,16 @@
9500  real_write_supplicant_config (NMAPSecurity *instance,
9501                                struct wpa_ctrl *ctrl,
9502                                int nwid,
9503 -                              gboolean adhoc)
9504 +                              NMAPSecurityWriteFlags flag)
9505  {
9506         gboolean                        success = FALSE;
9507         char *                  msg = NULL;
9508         const char *            key = nm_ap_security_get_key (instance);
9509  
9510 +       /* WEP is not valid for wired */
9511 +       if (flag == NM_AP_SECURITY_WRITE_FLAG_WIRED)
9512 +               goto out;
9513 +
9514         /* WEP network setup */
9515         if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
9516                         "SET_NETWORK %i key_mgmt NONE", nwid))
9517 diff -urN NetworkManager-0.6.5/src/nm-ap-security-wpa-eap.c NetworkManager-SVNr3284/src/nm-ap-security-wpa-eap.c
9518 --- NetworkManager-0.6.5/src/nm-ap-security-wpa-eap.c   2007-04-18 20:13:06.000000000 +0200
9519 +++ NetworkManager-SVNr3284/src/nm-ap-security-wpa-eap.c        2008-02-04 16:00:13.000000000 +0100
9520 @@ -57,7 +57,6 @@
9521         NMAPSecurityWPA_EAP *   security = NULL;
9522         int                                     eap_method;
9523         int                                     key_type;
9524 -       int                                     phase2_type;
9525         int                                     wpa_version;
9526         char *                          identity = NULL;
9527         char *                          passwd = NULL;
9528 @@ -172,7 +171,7 @@
9529  real_write_supplicant_config (NMAPSecurity *instance,
9530                                struct wpa_ctrl *ctrl,
9531                                int nwid,
9532 -                              gboolean adhoc)
9533 +                              NMAPSecurityWriteFlags flag)
9534  {
9535         NMAPSecurityWPA_EAP * self = NM_AP_SECURITY_WPA_EAP (instance);
9536         gboolean                        success = FALSE;
9537 @@ -213,15 +212,17 @@
9538  
9539         /* WPA-EAP network setup */
9540  
9541 -       if (self->priv->wpa_version == IW_AUTH_WPA_VERSION_WPA)
9542 -       {
9543 -               if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, "SET_NETWORK %i proto WPA", nwid))
9544 -                       goto out;
9545 -       }
9546 -       else
9547 -       {
9548 -               if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, "SET_NETWORK %i proto WPA2", nwid))
9549 -                       goto out;
9550 +       if (flag != NM_AP_SECURITY_WRITE_FLAG_WIRED) {
9551 +               if (self->priv->wpa_version == IW_AUTH_WPA_VERSION_WPA)
9552 +               {
9553 +                       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, "SET_NETWORK %i proto WPA", nwid))
9554 +                               goto out;
9555 +               }
9556 +               else
9557 +               {
9558 +                       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, "SET_NETWORK %i proto WPA2", nwid))
9559 +                               goto out;
9560 +               }
9561         }
9562  
9563         if (key_type != IW_AUTH_CIPHER_WEP104)
9564 @@ -308,7 +309,8 @@
9565          * Set the pairwise and group cipher, if the user provided one.  If user selected "Automatic", we
9566          * let wpa_supplicant sort it out.  Likewise, if the user selected "Dynamic WEP", we do nothing.
9567          */
9568 -       if (key_type != NM_AUTH_TYPE_WPA_PSK_AUTO && key_type != IW_AUTH_CIPHER_WEP104)
9569 +       if (flag != NM_AP_SECURITY_WRITE_FLAG_WIRED &&
9570 +           key_type != NM_AUTH_TYPE_WPA_PSK_AUTO && key_type != IW_AUTH_CIPHER_WEP104)
9571         {
9572                 const char *cipher;
9573  
9574 @@ -330,6 +332,10 @@
9575                         goto out;
9576         }
9577  
9578 +       if (flag != NM_AP_SECURITY_WRITE_FLAG_WIRED)
9579 +               nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
9580 +                                                                                               "SET_NETWORK %i fragment_size 1300", nwid);
9581 +
9582         success = TRUE;
9583  
9584  out:
9585 diff -urN NetworkManager-0.6.5/src/nm-ap-security-wpa-psk.c NetworkManager-SVNr3284/src/nm-ap-security-wpa-psk.c
9586 --- NetworkManager-0.6.5/src/nm-ap-security-wpa-psk.c   2007-04-18 20:13:06.000000000 +0200
9587 +++ NetworkManager-SVNr3284/src/nm-ap-security-wpa-psk.c        2008-02-04 16:00:13.000000000 +0100
9588 @@ -134,7 +134,7 @@
9589  real_write_supplicant_config (NMAPSecurity *instance,
9590                                struct wpa_ctrl *ctrl,
9591                                int nwid,
9592 -                              gboolean adhoc)
9593 +                              NMAPSecurityWriteFlags flag)
9594  {
9595         NMAPSecurityWPA_PSK * self = NM_AP_SECURITY_WPA_PSK (instance);
9596         gboolean                        success = FALSE;
9597 @@ -145,6 +145,11 @@
9598         char *                  pairwise_cipher = NULL;
9599         char *                  group_cipher = NULL;
9600  
9601 +
9602 +       /* WPA-PSK is not valid for wired */
9603 +       if (flag == NM_AP_SECURITY_WRITE_FLAG_WIRED)
9604 +               goto out;
9605 +
9606         /* WPA-PSK network setup */
9607  
9608         if (self->priv->wpa_version == IW_AUTH_WPA_VERSION_WPA)
9609 @@ -161,7 +166,7 @@
9610         }
9611  
9612         /* Ad-Hoc has to be WPA-NONE */
9613 -       if (adhoc)
9614 +       if (flag == NM_AP_SECURITY_WRITE_FLAG_ADHOC)
9615                 key_mgmt = "WPA-NONE";
9616  
9617         if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
9618 @@ -189,7 +194,7 @@
9619                 pairwise_cipher = group_cipher = "NONE";
9620  
9621         /* Ad-Hoc requires pairwise cipher of NONE */
9622 -       if (adhoc)
9623 +       if (flag == NM_AP_SECURITY_WRITE_FLAG_ADHOC)
9624                 pairwise_cipher = "NONE";
9625  
9626         /* If user selected "Automatic", we let wpa_supplicant sort it out */
9627 diff -urN NetworkManager-0.6.5/src/nm-dbus-device.c NetworkManager-SVNr3284/src/nm-dbus-device.c
9628 --- NetworkManager-0.6.5/src/nm-dbus-device.c   2007-04-18 20:13:06.000000000 +0200
9629 +++ NetworkManager-SVNr3284/src/nm-dbus-device.c        2008-02-04 16:00:13.000000000 +0100
9630 @@ -448,8 +448,17 @@
9631                                 }
9632                         }
9633                 }
9634 -               else
9635 +               else {
9636 +                       NMActRequest *req = nm_device_get_act_request (dev);
9637 +
9638 +                       if (req) {
9639 +                               NMWiredNetwork *wired_net = nm_act_request_get_wired_network (req);
9640 +                               if (wired_net)
9641 +                                       active_network_path = g_strdup (nm_wired_network_get_network_id (wired_net));
9642 +                       }
9643 +
9644                         speed = nm_device_802_3_ethernet_get_speed (NM_DEVICE_802_3_ETHERNET (dev));
9645 +               }
9646  
9647                 if (!active_network_path)
9648                         active_network_path = g_strdup ("");
9649 diff -urN NetworkManager-0.6.5/src/nm-dbus-nm.c NetworkManager-SVNr3284/src/nm-dbus-nm.c
9650 --- NetworkManager-0.6.5/src/nm-dbus-nm.c       2007-04-18 20:13:06.000000000 +0200
9651 +++ NetworkManager-SVNr3284/src/nm-dbus-nm.c    2008-02-04 16:00:13.000000000 +0100
9652 @@ -1,3 +1,5 @@
9653 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
9654 +
9655  /* NetworkManager -- Network link manager
9656   *
9657   * Dan Williams <dcbw@redhat.com>
9658 @@ -227,10 +229,11 @@
9659         const char * INVALID_ARGS_MESSAGE = "NetworkManager::setActiveDevice called with invalid arguments.";
9660         NMDevice *              dev = NULL;
9661         DBusMessage *           reply = NULL;
9662 -       char *                  dev_path;
9663 -       NMAccessPoint * ap = NULL;
9664 +       char *                  dev_path = NULL;
9665 +       NMAPSecurity *  security = NULL;
9666         NMActRequest * req;
9667         DBusMessageIter iter;
9668 +       char *                  network_id = NULL;
9669  
9670         g_return_val_if_fail (connection != NULL, NULL);
9671         g_return_val_if_fail (message != NULL, NULL);
9672 @@ -253,62 +256,62 @@
9673         if (!dev || !(nm_device_get_capabilities (dev) & NM_DEVICE_CAP_NM_SUPPORTED))
9674         {
9675                 reply = nm_dbus_create_error_message (message, NM_DBUS_INTERFACE, "DeviceNotFound",
9676 -                                               "The requested network device does not exist.");
9677 +                                                                          "The requested network device does not exist.");
9678                 nm_warning ("%s:%d (%s): Invalid device (device not found).", __FILE__, __LINE__, __func__);
9679                 goto out;
9680         }
9681  
9682 -       if (nm_device_is_802_11_wireless (dev))
9683 -       {
9684 -               NMAPSecurity *  security = NULL;
9685 -               char *                  essid = NULL;
9686 -
9687 -               if (!dbus_message_iter_next (&iter) || (dbus_message_iter_get_arg_type (&iter) != DBUS_TYPE_STRING))
9688 -               {
9689 -                       nm_warning ("%s:%d (%s): Invalid argument type (essid).", __FILE__, __LINE__, __func__);
9690 +       /* Next up is the network id... */
9691 +       if (dbus_message_iter_next (&iter) && (dbus_message_iter_get_arg_type (&iter) == DBUS_TYPE_STRING))
9692 +               dbus_message_iter_get_basic (&iter, &network_id);
9693 +
9694 +       /* and finally, the security object */
9695 +       if (dbus_message_iter_next (&iter)) {
9696 +               security = nm_ap_security_new_deserialize (&iter);
9697 +               if (!security) {
9698 +                       /* There was security info, but it was invalid */
9699 +                       reply = nm_dbus_create_error_message (message, NM_DBUS_INTERFACE, INVALID_ARGS_ERROR, INVALID_ARGS_MESSAGE);
9700 +                       nm_warning ("%s:%d (%s): Invalid argument (security info).", __FILE__, __LINE__, __func__);
9701                         goto out;
9702                 }
9703 +       }
9704  
9705 -               /* grab ssid and ensure validity */
9706 -               dbus_message_iter_get_basic (&iter, &essid);
9707 -               if (!essid || (strlen (essid) <= 0))
9708 -               {
9709 -                       nm_warning ("%s:%d (%s): Invalid argument (essid).", __FILE__, __LINE__, __func__);
9710 -                       goto out;
9711 -               }
9712 +       req = nm_act_request_new (data->data, dev, TRUE);
9713  
9714 -               /* If there's security information, we use that.  If not, we
9715 -                * make some up from the scan list.
9716 -                */
9717 -               if (dbus_message_iter_next (&iter))
9718 -               {
9719 -                       if (!(security = nm_ap_security_new_deserialize (&iter)))
9720 -                       {
9721 -                               /* There was security info, but it was invalid */
9722 -                               reply = nm_dbus_create_error_message (message, NM_DBUS_INTERFACE, INVALID_ARGS_ERROR, INVALID_ARGS_MESSAGE);
9723 -                               nm_warning ("%s:%d (%s): Invalid argument (wireless security info).", __FILE__, __LINE__, __func__);
9724 -                               goto out;
9725 -                       }
9726 +       if (nm_device_is_802_11_wireless (dev)) {
9727 +               NMAccessPoint *ap;
9728 +
9729 +               if (!network_id || (strlen (network_id) <= 0)) {
9730 +                       nm_warning ("%s:%d (%s): Invalid argument type (essid).", __FILE__, __LINE__, __func__);
9731 +                       goto out;
9732                 }
9733  
9734                 /* Set up the wireless-specific activation request properties */
9735 -               ap = nm_device_802_11_wireless_get_activation_ap (NM_DEVICE_802_11_WIRELESS (dev), essid, security);
9736 -               if (security)
9737 -                       g_object_unref (G_OBJECT (security));
9738 +               ap = nm_device_802_11_wireless_get_activation_ap (NM_DEVICE_802_11_WIRELESS (dev), network_id, security);
9739 +               nm_act_request_set_ap (req, ap);
9740 +       } else if (nm_device_is_802_3_ethernet (dev)) {
9741 +               if (network_id && security) {
9742 +                       NMWiredNetwork *wired_net;
9743  
9744 -               nm_info ("User Switch: %s / %s", dev_path, essid);
9745 +                       wired_net = nm_wired_network_new (network_id, security);
9746 +                       nm_act_request_set_wired_network (req, wired_net);
9747 +                       g_object_unref (wired_net);
9748 +               }
9749         }
9750 -       else if (nm_device_is_802_3_ethernet (dev))
9751 -       {
9752 +
9753 +       if (network_id)
9754 +               nm_info ("User Switch: %s / %s", dev_path, network_id);
9755 +       else
9756                 nm_info ("User Switch: %s", dev_path);
9757 -       }
9758  
9759         nm_device_deactivate (dev);
9760         nm_schedule_state_change_signal_broadcast (data->data);
9761 -       req = nm_act_request_new (data->data, dev, ap, TRUE);
9762         nm_policy_schedule_device_activation (req);
9763         nm_act_request_unref (req);
9764  
9765 +       if (security)
9766 +               g_object_unref (security);
9767 +
9768         /* empty success message */
9769         reply = dbus_message_new_method_return (message);
9770         if (!reply)
9771 @@ -398,7 +401,10 @@
9772         g_object_unref (G_OBJECT (security));
9773         nm_ap_set_user_created (new_ap, TRUE);
9774  
9775 -       req = nm_act_request_new (data->data, dev, new_ap, TRUE);
9776 +       req = nm_act_request_new (data->data, dev, TRUE);
9777 +       nm_act_request_set_ap (req, new_ap);
9778 +       nm_ap_unref (new_ap);
9779 +
9780         nm_policy_schedule_device_activation (req);
9781         nm_act_request_unref (req);
9782  
9783 @@ -483,52 +489,83 @@
9784         return (reply);
9785  }
9786  
9787 -static DBusMessage *nm_dbus_nm_set_wireless_enabled (DBusConnection *connection, DBusMessage *message, NMDbusCBData *data)
9788 +static DBusMessage *nm_dbus_nm_set_wireless_enabled (DBusConnection *connection, DBusMessage *message, NMDbusCBData *cb_data)
9789  {
9790         gboolean        enabled = FALSE;
9791         DBusError       err;
9792 -       NMData  *app_data;
9793 +       NMData  *       data;
9794 +       DBusMessage * ret = NULL;
9795  
9796 -       g_return_val_if_fail (data && data->data && connection && message, NULL);
9797 +       g_return_val_if_fail (cb_data && cb_data->data && connection && message, NULL);
9798  
9799         dbus_error_init (&err);
9800         if (!dbus_message_get_args (message, &err, DBUS_TYPE_BOOLEAN, &enabled, DBUS_TYPE_INVALID))
9801 -               return NULL;
9802 +               goto out;
9803  
9804 -       app_data = data->data;
9805 -       app_data->wireless_enabled = enabled;
9806 +       data = cb_data->data;
9807 +       if (enabled == data->wireless_enabled)
9808 +               goto out;
9809  
9810 -       if (!enabled)
9811 -       {
9812 -               GSList  *elt;
9813 +       /* Hardware rfkill overrides whatever user wants */
9814 +       if (!data->hw_rf_enabled) {
9815 +               nm_info ("User request to %s wireless overridden by radio killswitch.",
9816 +                        enabled ? "enable" : "disable");
9817  
9818 -               /* Physically down all wireless devices */
9819 -               nm_lock_mutex (app_data->dev_list_mutex, __FUNCTION__);
9820 -               for (elt = app_data->dev_list; elt; elt = g_slist_next (elt))
9821 -               {
9822 -                       NMDevice        *dev = (NMDevice *)(elt->data);
9823 -                       if (nm_device_is_802_11_wireless (dev))
9824 -                       {
9825 +               /* Return error if user tries to re-enable wireless, or just ignore
9826 +                * a disable wireless request when wireless is already disabled.
9827 +                */
9828 +               if (enabled) {
9829 +                       ret = nm_dbus_create_error_message (message,
9830 +                                                           NM_DBUS_INTERFACE,
9831 +                                                           "DisabledBySystem",
9832 +                                                           "Wireless disabled by hardware switch.");
9833 +               }
9834 +               goto out;
9835 +       }
9836 +
9837 +       nm_info ("User request to %s wireless.", enabled ? "enable" : "disable");
9838 +
9839 +       data->wireless_enabled = enabled;
9840 +       if (!data->wireless_enabled) {
9841 +               GSList * elt;
9842 +
9843 +               /* Deactivate all wireless devices and force them down so they
9844 +                * turn off their radios.
9845 +                */
9846 +               nm_lock_mutex (data->dev_list_mutex, __FUNCTION__);
9847 +               for (elt = data->dev_list; elt; elt = g_slist_next (elt)) {
9848 +                       NMDevice * dev = (NMDevice *) elt->data;
9849 +                       if (nm_device_is_802_11_wireless (dev)) {
9850                                 nm_device_deactivate (dev);
9851                                 nm_device_bring_down (dev);
9852                         }
9853                 }
9854 -               nm_unlock_mutex (app_data->dev_list_mutex, __FUNCTION__);
9855 +               nm_unlock_mutex (data->dev_list_mutex, __FUNCTION__);
9856         }
9857  
9858 -       nm_policy_schedule_device_change_check (data->data);
9859 +       nm_policy_schedule_device_change_check (data);
9860 +       nm_dbus_signal_wireless_enabled (data);
9861  
9862 -       return NULL;
9863 +out:
9864 +       return ret;
9865  }
9866  
9867 -static DBusMessage *nm_dbus_nm_get_wireless_enabled (DBusConnection *connection, DBusMessage *message, NMDbusCBData *data)
9868 +static DBusMessage *nm_dbus_nm_get_wireless_enabled (DBusConnection *connection, DBusMessage *message, NMDbusCBData *cb_data)
9869  {
9870 +       NMData * data;
9871         DBusMessage     *reply = NULL;
9872  
9873 -       g_return_val_if_fail (data && data->data && connection && message, NULL);
9874 +       g_return_val_if_fail (cb_data && connection && message, NULL);
9875  
9876 -       if ((reply = dbus_message_new_method_return (message)))
9877 -               dbus_message_append_args (reply, DBUS_TYPE_BOOLEAN, &data->data->wireless_enabled, DBUS_TYPE_INVALID);
9878 +       data = cb_data->data;
9879 +       g_return_val_if_fail (data != NULL, NULL);
9880 +
9881 +       if ((reply = dbus_message_new_method_return (message))) {
9882 +               dbus_message_append_args (reply,
9883 +                                         DBUS_TYPE_BOOLEAN, &data->wireless_enabled,
9884 +                                         DBUS_TYPE_BOOLEAN, &data->hw_rf_enabled,
9885 +                                         DBUS_TYPE_INVALID);
9886 +       }
9887  
9888         return reply;
9889  }
9890 diff -urN NetworkManager-0.6.5/src/nm-dbus-nmi.c NetworkManager-SVNr3284/src/nm-dbus-nmi.c
9891 --- NetworkManager-0.6.5/src/nm-dbus-nmi.c      2007-04-18 20:13:06.000000000 +0200
9892 +++ NetworkManager-SVNr3284/src/nm-dbus-nmi.c   2008-02-04 16:00:13.000000000 +0100
9893 @@ -1,3 +1,5 @@
9894 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
9895 +
9896  /* NetworkManager -- Network link manager
9897   *
9898   * Dan Williams <dcbw@redhat.com>
9899 @@ -22,6 +24,7 @@
9900  #include "NetworkManager.h"
9901  #include "nm-device.h"
9902  #include "nm-activation-request.h"
9903 +#include "nm-device-802-3-ethernet.h"
9904  #include "NetworkManagerAPList.h"
9905  #include "NetworkManagerPolicy.h"
9906  #include "NetworkManagerUtils.h"
9907 @@ -29,42 +32,23 @@
9908  #include "nm-utils.h"
9909  
9910  
9911 -/*
9912 - * nm_dbus_get_user_key_for_network_cb
9913 - *
9914 - * Callback from nm_dbus_get_user_key_for_network when NetworkManagerInfo returns
9915 - * the new user key.
9916 - *
9917 - */
9918 -static void nm_dbus_get_user_key_for_network_cb (DBusPendingCall *pcall, NMActRequest *req)
9919 +static gboolean
9920 +nm_dbus_get_wireless_user_key_done (DBusMessage *reply, NMActRequest *req)
9921  {
9922 -       DBusMessage *           reply = NULL;
9923 -       NMData *                        data;
9924 -       NMDevice *              dev;
9925 -       NMAccessPoint * ap;
9926 -       NMAPSecurity *          security;
9927 -       DBusMessageIter iter;
9928 +       NMAccessPoint *ap;
9929 +       NMData *data;
9930 +       NMAPSecurity *security;
9931 +       DBusMessageIter iter;
9932  
9933 -       g_return_if_fail (pcall != NULL);
9934 -       g_return_if_fail (req != NULL);
9935 +       const char *iface = nm_device_get_iface (nm_act_request_get_dev (req));
9936  
9937         data = nm_act_request_get_data (req);
9938         g_assert (data);
9939  
9940 -       dev = nm_act_request_get_dev (req);
9941 -       g_assert (dev);
9942 -
9943         ap = nm_act_request_get_ap (req);
9944         g_assert (ap);
9945  
9946 -       if (!dbus_pending_call_get_completed (pcall))
9947 -               goto out;
9948 -
9949 -       if (!(reply = dbus_pending_call_steal_reply (pcall)))
9950 -               goto out;
9951 -
9952 -       if (message_is_error (reply))
9953 -       {
9954 +       if (message_is_error (reply)) {
9955                 DBusError err;
9956  
9957                 dbus_error_init (&err);
9958 @@ -72,10 +56,8 @@
9959  
9960                 /* Check for cancelled error */
9961                 if (strcmp (err.name, NMI_DBUS_USER_KEY_CANCELED_ERROR) == 0)
9962 -               {
9963                         nm_info ("Activation (%s) New wireless user key request for network '%s' was canceled.",
9964 -                                       nm_device_get_iface (dev), nm_ap_get_essid (ap));
9965 -               }
9966 +                                   iface, nm_ap_get_essid (ap));
9967                 else
9968                         nm_warning ("nm_dbus_get_user_key_for_network_cb(): dbus returned an error.\n  (%s) %s\n", err.name, err.message);
9969  
9970 @@ -87,15 +69,13 @@
9971                  * here...  ad nauseum.  Figure out how to deal with a failure here.
9972                  */
9973                 nm_ap_list_append_ap (data->invalid_ap_list, ap);
9974 -               nm_policy_schedule_activation_failed (req);
9975 -               goto out;
9976 +               return FALSE;
9977         }
9978  
9979 -       nm_info ("Activation (%s) New wireless user key for network '%s' received.", nm_device_get_iface (dev), nm_ap_get_essid (ap));
9980 +       nm_info ("Activation (%s) New wireless user key for network '%s' received.", iface, nm_ap_get_essid (ap));
9981  
9982         dbus_message_iter_init (reply, &iter);
9983 -       if ((security = nm_ap_security_new_deserialize (&iter)))
9984 -       {
9985 +       if ((security = nm_ap_security_new_deserialize (&iter))) {
9986                 NMAccessPoint *allowed_ap;
9987  
9988                 nm_ap_set_security (ap, security);
9989 @@ -106,11 +86,91 @@
9990                         nm_ap_set_security (allowed_ap, security);
9991  
9992                 g_object_unref (G_OBJECT (security));   /* set_security copies the object */
9993 -               nm_device_activate_schedule_stage1_device_prepare (req);
9994         }
9995 +
9996 +       return TRUE;
9997 +}
9998 +
9999 +static gboolean
10000 +nm_dbus_get_wired_user_key_done (DBusMessage *reply, NMActRequest *req)
10001 +{
10002 +       NMAPSecurity *security;
10003 +       DBusMessageIter iter;
10004 +       NMWiredNetwork *wired_net;
10005 +       const char *iface = nm_device_get_iface (nm_act_request_get_dev (req));
10006 +
10007 +       wired_net = nm_act_request_get_wired_network (req);
10008 +       g_assert (wired_net);
10009 +
10010 +       if (message_is_error (reply)) {
10011 +               DBusError err;
10012 +
10013 +               dbus_error_init (&err);
10014 +               dbus_set_error_from_message (&err, reply);
10015 +
10016 +               /* Check for cancelled error */
10017 +               if (strcmp (err.name, NMI_DBUS_USER_KEY_CANCELED_ERROR) == 0)
10018 +                       nm_info ("Activation (%s) New wired user key request was canceled.", iface);
10019 +               else
10020 +                       nm_warning ("nm_dbus_get_user_key_for_network_cb(): dbus returned an error.\n  (%s) %s\n", err.name, err.message);
10021 +
10022 +               dbus_error_free (&err);
10023 +               return FALSE;
10024 +       }
10025 +
10026 +       nm_info ("Activation (%s) New wired user key received.", iface);
10027 +
10028 +       dbus_message_iter_init (reply, &iter);
10029 +       if ((security = nm_ap_security_new_deserialize (&iter))) {
10030 +               nm_wired_network_set_security (wired_net, security);
10031 +               g_object_unref (security);
10032 +       }
10033 +
10034 +       return TRUE;
10035 +}
10036 +
10037 +/*
10038 + * nm_dbus_get_user_key_for_network_cb
10039 + *
10040 + * Callback from nm_dbus_get_user_key_for_network when NetworkManagerInfo returns
10041 + * the new user key.
10042 + *
10043 + */
10044 +static void nm_dbus_get_user_key_for_network_cb (DBusPendingCall *pcall, NMActRequest *req)
10045 +{
10046 +       NMDevice *dev;
10047 +       gboolean success;
10048 +       DBusMessage *reply = NULL;
10049 +
10050 +       g_return_if_fail (pcall != NULL);
10051 +       g_return_if_fail (req != NULL);
10052 +
10053 +       if (!dbus_pending_call_get_completed (pcall))
10054 +               goto out;
10055 +
10056 +       if (!(reply = dbus_pending_call_steal_reply (pcall)))
10057 +               goto out;
10058 +
10059 +       dev = nm_act_request_get_dev (req);
10060 +       g_assert (dev);
10061 +
10062         nm_act_request_set_user_key_pending_call (req, NULL);
10063  
10064 -out:
10065 +       if (NM_IS_DEVICE_802_11_WIRELESS (dev))
10066 +               success = nm_dbus_get_wireless_user_key_done (reply, req);
10067 +       else if (NM_IS_DEVICE_802_3_ETHERNET (dev))
10068 +               success = nm_dbus_get_wired_user_key_done (reply, req);
10069 +       else {
10070 +               g_error ("Unhandled device type (%s)", G_OBJECT_TYPE_NAME (dev));
10071 +               return;
10072 +       }
10073 +
10074 +       if (success)
10075 +               nm_device_activate_schedule_stage1_device_prepare (req);
10076 +       else
10077 +               nm_policy_schedule_activation_failed (req);
10078 +
10079 + out:
10080         if (reply)
10081                 dbus_message_unref (reply);
10082         nm_act_request_unref (req);
10083 @@ -126,11 +186,8 @@
10084   */
10085  void nm_dbus_get_user_key_for_network (DBusConnection *connection, NMActRequest *req, const gboolean new_key)
10086  {
10087 -       DBusMessage *           message;
10088 -       DBusPendingCall *       pcall;
10089         NMData *                        data;
10090         NMDevice *              dev;
10091 -       NMAccessPoint * ap;
10092         gint32                  attempt = 1;
10093         char *                  dev_path;
10094         char *                  net_path;
10095 @@ -145,22 +202,44 @@
10096         dev = nm_act_request_get_dev (req);
10097         g_assert (dev);
10098  
10099 -       ap = nm_act_request_get_ap (req);
10100 -       g_assert (ap);
10101 +       if (NM_IS_DEVICE_802_11_WIRELESS (dev)) {
10102 +               NMAccessPoint * ap;
10103  
10104 -       essid = nm_ap_get_essid (ap);
10105 -       nm_info ("Activation (%s) New wireless user key requested for network '%s'.", nm_device_get_iface (dev), essid);
10106 +               ap = nm_act_request_get_ap (req);
10107 +               g_assert (ap);
10108  
10109 -       if (!(message = dbus_message_new_method_call (NMI_DBUS_SERVICE, NMI_DBUS_PATH, NMI_DBUS_INTERFACE, "getKeyForNetwork")))
10110 -       {
10111 -               nm_warning ("nm_dbus_get_user_key_for_network(): Couldn't allocate the dbus message");
10112 +               essid = nm_ap_get_essid (ap);
10113 +               net_path = nm_dbus_get_object_path_for_network (dev, ap);
10114 +
10115 +               nm_info ("Activation (%s) New wireless user key requested for network '%s'.",
10116 +                           nm_device_get_iface (dev), essid);
10117 +
10118 +       } else if (NM_IS_DEVICE_802_3_ETHERNET (dev)) {
10119 +               NMWiredNetwork *wired_net;
10120 +
10121 +               wired_net = nm_act_request_get_wired_network (req);
10122 +               g_assert (wired_net);
10123 +               
10124 +               essid = nm_wired_network_get_network_id (wired_net);
10125 +               net_path = g_strdup ("/");
10126 +       } else {
10127 +               g_error ("Unhandled device type (%s)", G_OBJECT_TYPE_NAME (dev));
10128                 return;
10129         }
10130  
10131         dev_path = nm_dbus_get_object_path_for_device (dev);
10132 -       net_path = nm_dbus_get_object_path_for_network (dev, ap);
10133 +
10134         if (dev_path && strlen (dev_path) && net_path && strlen (net_path))
10135         {
10136 +               DBusMessage *message;
10137 +               DBusPendingCall *pcall;
10138 +
10139 +               if (!(message = dbus_message_new_method_call (NMI_DBUS_SERVICE, NMI_DBUS_PATH, NMI_DBUS_INTERFACE, "getKeyForNetwork")))
10140 +               {
10141 +                       nm_warning ("nm_dbus_get_user_key_for_network(): Couldn't allocate the dbus message");
10142 +                       return;
10143 +               }
10144 +
10145                 dbus_message_append_args (message, DBUS_TYPE_OBJECT_PATH, &dev_path,
10146                                                                         DBUS_TYPE_OBJECT_PATH, &net_path,
10147                                                                         DBUS_TYPE_STRING, &essid,
10148 @@ -176,7 +255,11 @@
10149                 }
10150                 else
10151                         nm_warning ("nm_dbus_get_user_key_for_network(): could not send dbus message");
10152 -       } else nm_warning ("nm_dbus_get_user_key_for_network(): bad object path data");
10153 +
10154 +               dbus_message_unref (message);
10155 +       } else
10156 +               nm_warning ("nm_dbus_get_user_key_for_network(): bad object path data");
10157 +
10158         g_free (net_path);
10159         g_free (dev_path);
10160  
10161 @@ -184,8 +267,6 @@
10162          * we just hang in the activation process and nothing happens
10163          * until the user cancels stuff.
10164          */
10165 -
10166 -       dbus_message_unref (message);
10167  }
10168  
10169  
10170 @@ -219,26 +300,15 @@
10171  }
10172  
10173  
10174 -/*
10175 - * nm_dbus_update_network_info
10176 - *
10177 - * Tell NetworkManagerInfo the updated info of the AP
10178 - *
10179 - */
10180 -gboolean nm_dbus_update_network_info (DBusConnection *connection, NMAccessPoint *ap, const gboolean automatic)
10181 -{
10182 -       DBusMessage *           message;
10183 -       gboolean                        success = FALSE;
10184 -       const char *            essid;
10185 -       gchar *                 char_bssid;
10186 -       NMAPSecurity *          security;
10187 -       const struct ether_addr *addr;
10188 -       DBusMessageIter iter;
10189 -
10190 -       g_return_val_if_fail (connection != NULL, FALSE);
10191 -       g_return_val_if_fail (ap != NULL, FALSE);
10192 -
10193 -       essid = nm_ap_get_essid (ap);
10194 +static gboolean update_network_info (DBusConnection *connection,
10195 +                                                         const char *network_id,
10196 +                                                         gboolean automatic,
10197 +                                                         const char *bssid,
10198 +                                                         NMAPSecurity *security)
10199 +{
10200 +       DBusMessage *message;
10201 +       DBusMessageIter iter;
10202 +       gboolean success = FALSE;
10203  
10204         if (!(message = dbus_message_new_method_call (NMI_DBUS_SERVICE, NMI_DBUS_PATH, NMI_DBUS_INTERFACE, "updateNetworkInfo")))
10205         {
10206 @@ -249,19 +319,52 @@
10207         dbus_message_iter_init_append (message, &iter);
10208  
10209         /* First argument: ESSID (STRING) */
10210 -       dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &essid);
10211 +       dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &network_id);
10212  
10213         /* Second argument: Automatic (BOOLEAN) */
10214         dbus_message_iter_append_basic (&iter, DBUS_TYPE_BOOLEAN, &automatic);
10215  
10216         /* Third argument: Access point's BSSID */
10217 +       dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &bssid);
10218 +
10219 +       /* Serialize the AP's security info into the message */
10220 +       if (nm_ap_security_serialize (security, &iter) != 0)
10221 +               goto unref;
10222 +
10223 +       if (dbus_connection_send (connection, message, NULL))
10224 +               success = TRUE;
10225 +       else
10226 +               nm_warning ("update_network_info(): failed to send dbus message.");
10227 +
10228 +unref:
10229 +       dbus_message_unref (message);
10230 +
10231 +out:
10232 +       return success;
10233 +
10234 +}
10235 +
10236 +
10237 +/*
10238 + * nm_dbus_update_network_info
10239 + *
10240 + * Tell NetworkManagerInfo the updated info of the AP
10241 + *
10242 + */
10243 +gboolean nm_dbus_update_network_info (DBusConnection *connection, NMAccessPoint *ap, const gboolean automatic)
10244 +{
10245 +       gboolean success;
10246 +       gchar *char_bssid;
10247 +       const struct ether_addr *addr;
10248 +
10249 +       g_return_val_if_fail (connection != NULL, FALSE);
10250 +       g_return_val_if_fail (ap != NULL, FALSE);
10251 +
10252         addr = nm_ap_get_address (ap);
10253         if ((nm_ap_get_mode (ap) == IW_MODE_INFRA) && nm_ethernet_address_is_valid (addr))
10254         {
10255                 char_bssid = g_new0 (gchar, 20);
10256                 iw_ether_ntop (addr, char_bssid);
10257 -               dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &char_bssid);
10258 -               g_free (char_bssid);
10259         }
10260         else
10261         {
10262 @@ -269,26 +372,30 @@
10263                  * the BSSID is usually randomly constructed by the driver and
10264                  * changed every time you activate the network.
10265                  */
10266 -               char_bssid = " ";
10267 -               dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &char_bssid);
10268 +               char_bssid = g_strdup (" ");
10269         }
10270  
10271 -       /* Serialize the AP's security info into the message */
10272 -       security = nm_ap_get_security (ap);
10273 -       g_assert (security);
10274 -       if (nm_ap_security_serialize (security, &iter) != 0)
10275 -               goto unref;
10276 +       success = update_network_info (connection,
10277 +                                                        nm_ap_get_essid (ap),
10278 +                                                        automatic,
10279 +                                                        char_bssid,
10280 +                                                        nm_ap_get_security (ap));
10281 +       g_free (char_bssid);
10282  
10283 -       if (dbus_connection_send (connection, message, NULL))
10284 -               success = TRUE;
10285 -       else
10286 -               nm_warning ("nm_dbus_update_network_info(): failed to send dbus message.");
10287 +       return success;
10288 +}
10289  
10290 -unref:
10291 -       dbus_message_unref (message);
10292  
10293 -out:
10294 -       return success;
10295 +gboolean nm_dbus_update_wired_network_info (DBusConnection *connection, NMWiredNetwork *wired_net)
10296 +{
10297 +       g_return_val_if_fail (connection != NULL, FALSE);
10298 +       g_return_val_if_fail (wired_net != NULL, FALSE);
10299 +
10300 +       return update_network_info (connection,
10301 +                                                  nm_wired_network_get_network_id (wired_net),
10302 +                                                  FALSE,
10303 +                                                  "WIRED", /* CRAPPY HACK */
10304 +                                                  nm_wired_network_get_security (wired_net));
10305  }
10306  
10307  
10308 diff -urN NetworkManager-0.6.5/src/nm-dbus-nmi.h NetworkManager-SVNr3284/src/nm-dbus-nmi.h
10309 --- NetworkManager-0.6.5/src/nm-dbus-nmi.h      2007-04-18 20:13:06.000000000 +0200
10310 +++ NetworkManager-SVNr3284/src/nm-dbus-nmi.h   2008-02-04 16:00:13.000000000 +0100
10311 @@ -24,6 +24,7 @@
10312  
10313  #include "NetworkManager.h"
10314  #include "NetworkManagerAP.h"
10315 +#include "nm-wired-network.h"
10316  
10317  void                   nm_dbus_get_user_key_for_network                (DBusConnection *connection, NMActRequest *req, const gboolean new_key);
10318  
10319 @@ -33,6 +34,9 @@
10320  
10321  gboolean               nm_dbus_update_network_info                     (DBusConnection *connection, NMAccessPoint *ap, const gboolean user_requested);
10322  
10323 +gboolean               nm_dbus_update_wired_network_info       (DBusConnection *connection, NMWiredNetwork *wired_net);
10324 +
10325 +
10326  void                   nm_dbus_update_one_allowed_network              (DBusConnection *connection, const char *network, NMData *data);
10327  
10328  void                   nm_dbus_update_allowed_networks         (DBusConnection *connection, NMAccessPointList *list, NMData *data);
10329 diff -urN NetworkManager-0.6.5/src/nm-device-802-11-wireless.c NetworkManager-SVNr3284/src/nm-device-802-11-wireless.c
10330 --- NetworkManager-0.6.5/src/nm-device-802-11-wireless.c        2007-04-18 20:13:06.000000000 +0200
10331 +++ NetworkManager-SVNr3284/src/nm-device-802-11-wireless.c     2008-02-04 16:00:13.000000000 +0100
10332 @@ -1,3 +1,5 @@
10333 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
10334 +
10335  /* NetworkManager -- Network link manager
10336   *
10337   * Dan Williams <dcbw@redhat.com>
10338 @@ -35,6 +37,7 @@
10339  #include "nm-device-private.h"
10340  #include "NetworkManagerAPList.h"
10341  #include "NetworkManagerDbus.h"
10342 +#include "nm-supplicant.h"
10343  #include "nm-utils.h"
10344  #include "NetworkManagerUtils.h"
10345  #include "NetworkManagerPolicy.h"
10346 @@ -47,15 +50,6 @@
10347  
10348  #define NM_DEVICE_802_11_WIRELESS_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_DEVICE_802_11_WIRELESS, NMDevice80211WirelessPrivate))
10349  
10350 -struct _Supplicant
10351 -{
10352 -       GPid                            pid;
10353 -       GSource *                       watch;
10354 -       GSource *                       status;
10355 -       struct wpa_ctrl *       ctrl;
10356 -       GSource *                       timeout;
10357 -};
10358 -
10359  struct _NMDevice80211WirelessPrivate
10360  {
10361         gboolean        dispose_has_run;
10362 @@ -77,7 +71,7 @@
10363         GSource *                       scan_timeout;
10364         GSource *                       pending_scan;
10365  
10366 -       struct _Supplicant      supplicant;
10367 +       NMSupplicant *supplicant;
10368  
10369         guint32                 failed_link_count;
10370         GSource *                       link_timeout;
10371 @@ -86,6 +80,7 @@
10372         /* Static options from driver */
10373         guint8                  we_version;
10374         guint32                 capabilities;
10375 +       gboolean                has_scan_capa_ssid;
10376  };
10377  
10378  
10379 @@ -107,14 +102,11 @@
10380  
10381  static void    cancel_scan_results_timeout (NMDevice80211Wireless *self);
10382  
10383 -static void    cancel_pending_scan (NMDevice80211Wireless *self);
10384 -
10385 -static void    request_and_convert_scan_results (NMDevice80211Wireless *self);
10386 -
10387  static gboolean        process_scan_results (NMDevice80211Wireless *dev,
10388                                            const guint8 *res_buf,
10389                                            guint32 res_buf_len);
10390 -static void    schedule_scan (NMDevice80211Wireless *self);
10391 +
10392 +static void    schedule_scan (NMDevice80211Wireless *self, guint32 ms);
10393  
10394  static int     wireless_qual_to_percent (const struct iw_quality *qual,
10395                                           const struct iw_quality *max_qual,
10396 @@ -126,8 +118,6 @@
10397                                                                  NMAccessPoint *ap,
10398                                                                  gboolean default_link);
10399  
10400 -static void            supplicant_cleanup (NMDevice80211Wireless *self);
10401 -
10402  static void            remove_link_timeout (NMDevice80211Wireless *self);
10403  
10404  static void            nm_device_802_11_wireless_set_wep_enc_key (NMDevice80211Wireless *self,
10405 @@ -140,6 +130,9 @@
10406                                                       int data_len,
10407                                                       NMDevice80211Wireless *self);
10408  
10409 +static void            nm_device_802_11_wireless_set_scan_interval (NMDevice80211Wireless *self,
10410 +                                                             NMWirelessScanInterval interval);
10411 +
10412  /*
10413   * nm_device_802_11_wireless_update_signal_strength
10414   *
10415 @@ -379,10 +372,29 @@
10416         self->priv = NM_DEVICE_802_11_WIRELESS_GET_PRIVATE (self);
10417         self->priv->dispose_has_run = FALSE;
10418         self->priv->is_initialized = FALSE;
10419 -
10420 -       self->priv->supplicant.pid = -1;
10421  }
10422  
10423 +
10424 +/* Until a new wireless-tools comes out that has the defs and the structure,
10425 + * need to copy them here.
10426 + */
10427 +/* Scan capability flags - in (struct iw_range *)->scan_capa */
10428 +#define NM_IW_SCAN_CAPA_NONE           0x00
10429 +#define NM_IW_SCAN_CAPA_ESSID          0x01
10430 +
10431 +struct iw_range_with_scan_capa
10432 +{
10433 +       guint32         throughput;
10434 +       guint32         min_nwid;
10435 +       guint32         max_nwid;
10436 +       guint16         old_num_channels;
10437 +       guint8          old_num_frequency;
10438 +
10439 +       guint8          scan_capa;
10440 +/* don't need the rest... */
10441 +};
10442 +
10443 +
10444  static void
10445  real_init (NMDevice *dev)
10446  {
10447 @@ -398,7 +410,8 @@
10448         self->priv->ap_list = nm_ap_list_new (NETWORK_TYPE_DEVICE);
10449  
10450         app_data = nm_device_get_app_data (NM_DEVICE (self));
10451 -       nm_device_802_11_wireless_set_scan_interval (app_data, self, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
10452 +
10453 +       nm_device_802_11_wireless_set_scan_interval (self, NM_WIRELESS_SCAN_INTERVAL_INIT);
10454  
10455         nm_device_802_11_wireless_set_mode (self, IW_MODE_INFRA);
10456  
10457 @@ -422,6 +435,7 @@
10458  
10459                 if (ioctl (nm_dev_sock_get_fd (sk), SIOCGIWRANGE, &wrq) >= 0)
10460                 {
10461 +                       struct iw_range_with_scan_capa *scan_capa_range;
10462                         int i;
10463  
10464                         self->priv->max_qual.qual = range.max_qual.qual;
10465 @@ -440,6 +454,22 @@
10466  
10467                         self->priv->we_version = range.we_version_compiled;
10468  
10469 +                       /* Check for the ability to scan specific SSIDs.  Until the scan_capa
10470 +                        * field gets added to wireless-tools, need to work around that by casting
10471 +                        * to the custom structure.
10472 +                        */
10473 +                       scan_capa_range = (struct iw_range_with_scan_capa *) &range;
10474 +                       if (scan_capa_range->scan_capa & NM_IW_SCAN_CAPA_ESSID) {
10475 +                               self->priv->has_scan_capa_ssid = TRUE;
10476 +                               nm_info ("%s: driver supports SSID scans (scan_capa 0x%02X).",
10477 +                                        nm_device_get_iface (NM_DEVICE (self)),
10478 +                                        scan_capa_range->scan_capa);
10479 +                       } else {
10480 +                               nm_info ("%s: driver does not support SSID scans (scan_capa 0x%02X).",
10481 +                                        nm_device_get_iface (NM_DEVICE (self)),
10482 +                                        scan_capa_range->scan_capa);
10483 +                       }
10484 +
10485                         /* 802.11 wireless-specific capabilities */
10486                         self->priv->capabilities = get_wireless_capabilities (self, &range, wrq.u.data.length);
10487                 }
10488 @@ -582,7 +612,7 @@
10489         NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (dev);
10490  
10491         /* If the supplicant isn't running, we can't possibly have a link */
10492 -       if (!self->priv->supplicant.pid)
10493 +       if (!self->priv->supplicant)
10494                 nm_device_set_active_link (NM_DEVICE (self), FALSE);
10495  }
10496  
10497 @@ -615,16 +645,11 @@
10498         guint                           source_id;
10499  
10500         /* Start the scanning timeout for devices that can do scanning */
10501 -       if (nm_device_get_capabilities (dev) & NM_DEVICE_CAP_WIRELESS_SCAN)
10502 -       {
10503 -               self->priv->pending_scan = g_idle_source_new ();
10504 -               g_source_set_callback (self->priv->pending_scan,
10505 -                                                          nm_device_802_11_wireless_scan,
10506 -                                                          self,
10507 -                                                          nm_device_802_11_wireless_scan_done);
10508 -               source_id = g_source_attach (self->priv->pending_scan,
10509 -                               nm_device_get_main_context (dev));
10510 -               g_source_unref (self->priv->pending_scan);
10511 +       if (nm_device_get_capabilities (dev) & NM_DEVICE_CAP_WIRELESS_SCAN) {
10512 +               /* Stupid orinoco has problems scanning immediately after being up,
10513 +                * so wait a bit before triggering a scan.
10514 +                */
10515 +               schedule_scan (self, 600);
10516         }
10517  
10518         /* Peridoically update link status and signal strength */
10519 @@ -639,7 +664,11 @@
10520  {
10521         NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (dev);
10522  
10523 -       supplicant_cleanup (self);
10524 +       if (self->priv->supplicant) {
10525 +               g_object_unref (self->priv->supplicant);
10526 +               self->priv->supplicant = NULL;
10527 +       }
10528 +
10529         remove_link_timeout (self);
10530  }
10531  
10532 @@ -648,16 +677,15 @@
10533  real_deactivate (NMDevice *dev)
10534  {
10535         NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (dev);
10536 -       NMData *                                app_data;
10537 -
10538 -       app_data = nm_device_get_app_data (dev);
10539 -       g_assert (app_data);
10540  
10541         /* Clean up stuff, don't leave the card associated */
10542         nm_device_802_11_wireless_set_essid (self, "");
10543         nm_device_802_11_wireless_set_wep_enc_key (self, NULL, 0);
10544         nm_device_802_11_wireless_set_mode (self, IW_MODE_INFRA);
10545 -       nm_device_802_11_wireless_set_scan_interval (app_data, self, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
10546 +
10547 +       /* Don't re-set the scan interval if there hasn't been a scan yet */
10548 +       if (self->priv->last_scan > 0)
10549 +               nm_device_802_11_wireless_set_scan_interval (self, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
10550  }
10551  
10552  
10553 @@ -1060,59 +1088,77 @@
10554  
10555  
10556  static gboolean
10557 -set_scan_interval_cb (gpointer user_data)
10558 +set_inactive_scan_interval_cb (gpointer user_data)
10559  {
10560         NMData *data = (NMData*) user_data;
10561  
10562 -       nm_device_802_11_wireless_set_scan_interval (data, NULL, NM_WIRELESS_SCAN_INTERVAL_INACTIVE);
10563 -
10564 +       nm_device_802_11_wireless_ui_activated (data, NM_WIRELESS_SCAN_INTERVAL_INACTIVE);
10565         return FALSE;
10566  }
10567  
10568 -void
10569 -nm_device_802_11_wireless_set_scan_interval (NMData *data,
10570 -                                             NMDevice80211Wireless *self,
10571 +static void
10572 +set_inactive_scan_timeout (NMData *data, NMWirelessScanInterval interval)
10573 +{
10574 +       static GSource *source = NULL;
10575 +
10576 +       if (source) {
10577 +               g_source_destroy (source);
10578 +               g_source_unref (source);
10579 +               source = NULL;
10580 +       }
10581 +
10582 +       if (interval != NM_WIRELESS_SCAN_INTERVAL_INACTIVE) {
10583 +               source = g_timeout_source_new (120000);
10584 +               g_source_set_callback (source, set_inactive_scan_interval_cb, (gpointer) data, NULL);
10585 +               g_source_attach (source, data->main_context);
10586 +       }
10587 +}
10588 +
10589 +static void
10590 +nm_device_802_11_wireless_set_scan_interval (NMDevice80211Wireless *self,
10591                                               NMWirelessScanInterval interval)
10592  {
10593 -       static guint    source_id = 0;
10594 -       GSource *               source = NULL;
10595 -       GSList *                elt;
10596 -       gboolean                found = FALSE;
10597 -       guint8          seconds = nm_wireless_scan_interval_to_seconds (interval);
10598 +       guint8 seconds = nm_wireless_scan_interval_to_seconds (interval);
10599  
10600 -       g_return_if_fail (data != NULL);
10601 +       g_return_if_fail (self != NULL);
10602  
10603 -       if (source_id != 0)
10604 -               g_source_remove (source_id);
10605 +       self->priv->scan_interval = seconds;    
10606  
10607 -       for (elt = data->dev_list; elt; elt = g_slist_next (elt))
10608 -       {
10609 -               NMDevice *d = (NMDevice *)(elt->data);
10610 -               if (self && (NM_DEVICE (self) != d))
10611 -                       continue;
10612 +       if (interval == NM_WIRELESS_SCAN_INTERVAL_ACTIVE && !self->priv->scanning) {
10613 +               glong new_next_scan = self->priv->last_scan + seconds;
10614 +               GTimeVal cur_time;
10615  
10616 -               if (d && nm_device_is_802_11_wireless (d))
10617 -               {
10618 -                       NM_DEVICE_802_11_WIRELESS (d)->priv->scan_interval = seconds;
10619 -                       if (self && (NM_DEVICE (self) == d))
10620 -                               found = TRUE;
10621 +               g_get_current_time (&cur_time);
10622 +
10623 +               if (new_next_scan <= cur_time.tv_sec) {
10624 +                       /* If the interval is now ACTIVE, and the last scan was more than the
10625 +                        * ACTIVE interval seconds ago, schedule an immediate scan.
10626 +                        */
10627 +                       schedule_scan (self, 200);
10628 +               } else if (new_next_scan > cur_time.tv_sec) {
10629 +                       /* If the interval is now ACTIVE, and the last scan was less than the
10630 +                        * ACTIVE interval seconds ago, schedule a scan at last_scan + ACTIVE
10631 +                        * interval seconds.
10632 +                        */
10633 +                       schedule_scan (self, (new_next_scan - cur_time.tv_sec) * 1000);
10634                 }
10635         }
10636  
10637 -       /* In case the scan interval didn't get set (which can happen during card
10638 -        * initialization where the device gets set up before being added to the
10639 -        * device list), set interval here
10640 -        */
10641 -       if (self && !found)
10642 -               self->priv->scan_interval = seconds;
10643 +       set_inactive_scan_timeout (nm_device_get_app_data (NM_DEVICE (self)), interval);
10644 +}
10645  
10646 -       if (interval != NM_WIRELESS_SCAN_INTERVAL_INACTIVE)
10647 -       {
10648 -               source = g_timeout_source_new (120000);
10649 -               g_source_set_callback (source, set_scan_interval_cb, (gpointer) data, NULL);
10650 -               source_id = g_source_attach (source, data->main_context);
10651 -               g_source_unref (source);
10652 +void
10653 +nm_device_802_11_wireless_ui_activated (NMData *data,
10654 +                                        NMWirelessScanInterval interval)
10655 +{
10656 +       GSList *iter;
10657 +
10658 +       for (iter = data->dev_list; iter; iter = g_slist_next (iter)) {
10659 +               if (NM_IS_DEVICE_802_11_WIRELESS (iter->data))
10660 +                       nm_device_802_11_wireless_set_scan_interval (NM_DEVICE_802_11_WIRELESS (iter->data), interval);
10661         }
10662 +
10663 +       set_inactive_scan_timeout (data, interval);
10664  }
10665  
10666  
10667 @@ -1141,7 +1187,7 @@
10668  #endif
10669                 if (iw_get_ext (nm_dev_sock_get_fd (sk), nm_device_get_iface (NM_DEVICE (self)), SIOCGIWMODE, &wrq) == 0)
10670                 {
10671 -                       if ((mode == IW_MODE_ADHOC) || (mode == IW_MODE_INFRA))
10672 +                       if ((wrq.u.mode == IW_MODE_ADHOC) || (wrq.u.mode == IW_MODE_INFRA))
10673                                 mode = wrq.u.mode;
10674                 }
10675                 else
10676 @@ -1400,14 +1446,15 @@
10677         unsigned char   safe_essid[IW_ESSID_MAX_SIZE + 1] = "\0";
10678         const char *    iface;
10679         const char *    driver;
10680 +       gboolean                lock_ssid = TRUE;
10681  
10682         g_return_if_fail (self != NULL);
10683  
10684         /* Make sure the essid we get passed is a valid size */
10685 -       if (!essid)
10686 +       if (!essid) {
10687                 safe_essid[0] = '\0';
10688 -       else
10689 -       {
10690 +               lock_ssid = FALSE;
10691 +       } else {
10692                 strncpy ((char *) safe_essid, essid, IW_ESSID_MAX_SIZE);
10693                 safe_essid[IW_ESSID_MAX_SIZE] = '\0';
10694         }
10695 @@ -1417,7 +1464,7 @@
10696         {
10697                 wreq.u.essid.pointer = (caddr_t) safe_essid;
10698                 wreq.u.essid.length      = strlen ((char *) safe_essid) + 1;
10699 -               wreq.u.essid.flags       = 1;   /* Enable essid on card */
10700 +               wreq.u.essid.flags       = lock_ssid ? 1 : 0;
10701  
10702  #ifdef IOCTL_DEBUG
10703         nm_info ("%s: About to SET IWESSID.", iface);
10704 @@ -1944,7 +1991,6 @@
10705         {
10706                 NMData *        app_data = nm_device_get_app_data (NM_DEVICE (self));
10707                 GSource *       convert_source = g_idle_source_new ();
10708 -               GTimeVal        cur_time;
10709  
10710                 /* We run the scan processing function from the main thread, since it must deliver
10711                  * messages over DBUS.  Plus, that way the main thread is the only thread that has
10712 @@ -1960,8 +2006,6 @@
10713                                                            (GDestroyNotify) free_process_scan_cb_data);
10714                 g_source_attach (convert_source, app_data->main_context);
10715                 g_source_unref (convert_source);
10716 -               g_get_current_time (&cur_time);
10717 -               self->priv->last_scan = cur_time.tv_sec;
10718         }
10719  }
10720  
10721 @@ -1985,10 +2029,22 @@
10722  static gboolean
10723  scan_results_timeout (NMDevice80211Wireless *self)
10724  {
10725 +       GTimeVal cur_time;
10726 +
10727         g_return_val_if_fail (self != NULL, FALSE);
10728  
10729         request_and_convert_scan_results (self);
10730 -       schedule_scan (self);
10731 +
10732 +       self->priv->scanning = FALSE;
10733 +
10734 +       g_get_current_time (&cur_time);
10735 +       self->priv->last_scan = cur_time.tv_sec;
10736 +
10737 +       /* After the first successful scan back down to the ACTIVE scan interval */
10738 +       if (self->priv->scan_interval == nm_wireless_scan_interval_to_seconds (NM_WIRELESS_SCAN_INTERVAL_INIT))
10739 +               nm_device_802_11_wireless_set_scan_interval (self, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
10740 +       else
10741 +               schedule_scan (self, 0);
10742  
10743         return FALSE;
10744  }
10745 @@ -2061,7 +2117,6 @@
10746         NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (user_data);
10747         guint32                         caps;
10748         NMData *                                app_data;
10749 -       gboolean                                success = FALSE;
10750         const char *                    iface;
10751  
10752         g_return_val_if_fail (self != NULL, FALSE);
10753 @@ -2073,7 +2128,7 @@
10754         if (!(caps & NM_DEVICE_CAP_NM_SUPPORTED) || !(caps & NM_DEVICE_CAP_WIRELESS_SCAN))
10755                 goto out;
10756  
10757 -       self->priv->pending_scan = NULL;
10758 +       nm_device_802_11_wireless_scan_done ((gpointer) self);
10759  
10760         /* Reschedule ourselves if all wireless is disabled, we're asleep,
10761          * or we are currently activating.
10762 @@ -2082,9 +2137,8 @@
10763                 || (app_data->asleep == TRUE)
10764                 || (nm_device_is_activating (NM_DEVICE (self)) == TRUE))
10765         {
10766 -               nm_device_802_11_wireless_set_scan_interval (app_data, self, NM_WIRELESS_SCAN_INTERVAL_INIT);
10767 -               schedule_scan (self);
10768 -               goto out;
10769 +               nm_device_802_11_wireless_set_scan_interval (self, NM_WIRELESS_SCAN_INTERVAL_INIT);
10770 +               goto reschedule;
10771         }
10772  
10773         /*
10774 @@ -2094,77 +2148,87 @@
10775          */
10776         if ((self->priv->num_freqs > 14) && nm_device_is_activated (NM_DEVICE (self)) == TRUE)
10777         {
10778 -               nm_device_802_11_wireless_set_scan_interval (app_data, self, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
10779 -               schedule_scan (self);
10780 -               goto out;
10781 +               nm_device_802_11_wireless_set_scan_interval (self, NM_WIRELESS_SCAN_INTERVAL_ACTIVE);
10782 +               goto reschedule;
10783         }
10784  
10785 -       self->priv->scanning = TRUE;
10786 -
10787         /* Device must be up before we can scan */
10788         if (nm_device_bring_up_wait (NM_DEVICE (self), 1))
10789 -       {
10790 -               schedule_scan (self);
10791 -               goto out;
10792 -       }
10793 +               goto reschedule;
10794 +
10795 +       self->priv->scanning = TRUE;
10796  
10797         /* If we're currently connected to an AP, let wpa_supplicant initiate
10798          * the scan request rather than doing it ourselves.
10799          */
10800         iface = nm_device_get_iface (NM_DEVICE (self));
10801 -       if (self->priv->supplicant.ctrl)
10802 -       {
10803 -               if (nm_utils_supplicant_request_with_check (self->priv->supplicant.ctrl,
10804 -                               "OK", __func__, NULL, "SCAN"))
10805 -                       success = TRUE;
10806 -       }
10807 -       else
10808 -       {
10809 -               NMSock *                sk;
10810 -
10811 -               if ((sk = nm_dev_sock_open (NM_DEVICE (self), DEV_WIRELESS, __FUNCTION__, NULL)))
10812 -               {
10813 -                       struct iwreq wrq;
10814 +       if (self->priv->supplicant) {
10815 +               if (!nm_utils_supplicant_request_with_check (nm_supplicant_get_ctrl (self->priv->supplicant),
10816 +                                                     "OK", __func__, NULL, "SCAN")) {
10817 +                       nm_warning ("(%s): could not trigger wireless scan", iface);
10818 +                       goto reschedule;
10819 +               }
10820 +               schedule_scan_results_timeout (self, 10);
10821 +       } else {
10822 +               NMSock *sk = NULL;
10823 +               struct iwreq wrq;
10824 +               int ret;
10825  
10826 -                       wrq.u.data.pointer = NULL;
10827 -                       wrq.u.data.flags = 0;
10828 -                       wrq.u.data.length = 0;
10829 -                       if (iw_set_ext (nm_dev_sock_get_fd (sk), iface, SIOCSIWSCAN, &wrq) == 0)
10830 -                               success = TRUE;
10831 -                       nm_dev_sock_close (sk);
10832 +               sk = nm_dev_sock_open (NM_DEVICE (self), DEV_WIRELESS, __FUNCTION__, NULL);
10833 +               if (!sk) {
10834 +                       nm_warning ("(%s): could not open control socket on device", iface);
10835 +                       goto reschedule;
10836                 }
10837 -       }
10838  
10839 -       if (success)
10840 -       {
10841 +               memset (&wrq, 0, sizeof (wrq));
10842 +               ret = iw_set_ext (nm_dev_sock_get_fd (sk), iface, SIOCSIWSCAN, &wrq);
10843 +               nm_dev_sock_close (sk);
10844 +
10845 +               if (ret != 0) {
10846 +                       nm_warning ("(%s): could not trigger wireless scan: %s", iface, strerror (errno));
10847 +                       goto reschedule;
10848 +               }
10849                 schedule_scan_results_timeout (self, 10);
10850         }
10851 -       else
10852 -       {
10853 -               nm_warning ("could not trigger wireless scan on device %s: %s",
10854 -                               iface, strerror (errno));
10855 -               schedule_scan (self);
10856 -       }
10857 +       return FALSE;
10858  
10859 +reschedule:
10860 +       schedule_scan (self, 0);
10861  out:
10862         return FALSE;   /* Balance g_source_attach(), destroyed on return */
10863  }
10864  
10865  
10866 +static void
10867 +cancel_pending_scan (NMDevice80211Wireless *self)
10868 +{
10869 +       g_return_if_fail (self != NULL);
10870 +
10871 +       self->priv->scanning = FALSE;
10872 +       if (self->priv->pending_scan) {
10873 +               g_source_destroy (self->priv->pending_scan);
10874 +               self->priv->pending_scan = NULL;
10875 +       }
10876 +}
10877 +
10878 +
10879  /*
10880 - * nm_device_wireless_schedule_scan
10881 + * schedule_scan
10882   *
10883   * Schedule a wireless scan in the /device's/ thread.
10884   *
10885   */
10886  static void
10887 -schedule_scan (NMDevice80211Wireless *self)
10888 +schedule_scan (NMDevice80211Wireless *self, guint32 ms)
10889  {
10890 +       guint32 interval;
10891 +
10892         g_return_if_fail (self != NULL);
10893  
10894         cancel_pending_scan (self);
10895  
10896 -       self->priv->pending_scan = g_timeout_source_new (self->priv->scan_interval * 1000);
10897 +       interval = ms ? ms : self->priv->scan_interval * 1000;
10898 +       self->priv->pending_scan = g_timeout_source_new (interval);
10899         g_source_set_callback (self->priv->pending_scan,
10900                                                    nm_device_802_11_wireless_scan,
10901                                                    self,
10902 @@ -2174,20 +2238,6 @@
10903  }
10904  
10905  
10906 -static void
10907 -cancel_pending_scan (NMDevice80211Wireless *self)
10908 -{
10909 -       g_return_if_fail (self != NULL);
10910 -
10911 -       self->priv->scanning = FALSE;
10912 -       if (self->priv->pending_scan)
10913 -       {
10914 -               g_source_destroy (self->priv->pending_scan);
10915 -               self->priv->pending_scan = NULL;
10916 -       }
10917 -}
10918 -
10919 -
10920  /*
10921   * is_associated
10922   *
10923 @@ -2366,144 +2416,205 @@
10924         return auth_required;
10925  }
10926  
10927 -
10928  /****************************************************************************/
10929 -/* WPA Supplicant control stuff
10930 - *
10931 - * Originally from:
10932 - *
10933 - *     wpa_supplicant wrapper
10934 - *
10935 - *     Copyright (C) 2005 Kay Sievers <kay.sievers@vrfy.org>
10936 - *
10937 - *     This program is free software; you can redistribute it and/or modify it
10938 - *     under the terms of the GNU General Public License as published by the
10939 - *     Free Software Foundation version 2 of the License.
10940 - */
10941  
10942 -#define WPA_SUPPLICANT_GLOBAL_SOCKET           LOCALSTATEDIR"/run/wpa_supplicant-global"
10943 -#define WPA_SUPPLICANT_CONTROL_SOCKET          LOCALSTATEDIR"/run/wpa_supplicant"
10944 -#define WPA_SUPPLICANT_NUM_RETRIES             20
10945 -#define WPA_SUPPLICANT_RETRY_TIME_US           100*1000
10946 -
10947 -
10948 -static void
10949 -remove_link_timeout (NMDevice80211Wireless *self)
10950 +static guint32
10951 +find_supported_frequency (NMDevice80211Wireless *self, guint32 *freqs)
10952  {
10953 -       g_return_if_fail (self != NULL);
10954 +       int i;
10955  
10956 -       if (self->priv->link_timeout != NULL)
10957 -       {
10958 -               g_source_destroy (self->priv->link_timeout);
10959 -               self->priv->link_timeout = NULL;
10960 +       for (i = 0; i < self->priv->num_freqs; i++) {
10961 +               while (*freqs) {
10962 +                       if ((guint32) self->priv->freqs[i] == (*freqs * 1000000))
10963 +                               return *freqs;
10964 +                       freqs++;
10965 +               }
10966         }
10967 -}
10968  
10969 -static void
10970 -supplicant_remove_timeout (NMDevice80211Wireless *self)
10971 -{
10972 -       g_return_if_fail (self != NULL);
10973 -
10974 -       /* Remove any pending timeouts on the request */
10975 -       if (self->priv->supplicant.timeout != NULL)
10976 -       {
10977 -               g_source_destroy (self->priv->supplicant.timeout);
10978 -               self->priv->supplicant.timeout = NULL;
10979 -       }
10980 +       return 0;
10981  }
10982  
10983 -static char *
10984 -supplicant_get_device_socket_path (NMDevice80211Wireless *self)
10985 +static gboolean
10986 +supplicant_send_network_config (NMDevice80211Wireless *self,
10987 +                                NMActRequest *req)
10988  {
10989 -       const char *iface;
10990 +       NMAccessPoint * ap = NULL;
10991 +       gboolean                        success = FALSE;
10992 +       char *                  response = NULL;
10993 +       int                             nwid;
10994 +       const char *            essid;
10995 +       struct wpa_ctrl *       ctrl;
10996 +       gboolean                        is_adhoc;
10997 +       char *          hex_essid = NULL;
10998 +       const char *            ap_scan = "AP_SCAN 1";
10999 +       guint32                 caps;
11000 +       gboolean                        supports_wpa;
11001  
11002 -       g_return_val_if_fail (self != NULL, NULL);
11003 +       ap = nm_act_request_get_ap (req);
11004 +       g_assert (ap);
11005  
11006 -       iface = nm_device_get_iface (NM_DEVICE (self));
11007 -       return g_strdup_printf (WPA_SUPPLICANT_CONTROL_SOCKET "/%s", iface);
11008 -}
11009 +       ctrl = nm_supplicant_get_ctrl (self->priv->supplicant);
11010 +       g_assert (ctrl);
11011  
11012 -static void
11013 -supplicant_cleanup (NMDevice80211Wireless *self)
11014 -{
11015 -       char * sock_path;
11016 +       /* Assume that drivers that don't support WPA pretty much suck,
11017 +        * and can't handle NM scanning along with wpa_supplicant.  Which
11018 +        * is the case for most of them, airo in particular.
11019 +        */
11020 +       caps = nm_device_get_type_capabilities (NM_DEVICE (self));
11021 +       supports_wpa = (caps & NM_802_11_CAP_PROTO_WPA)
11022 +                               || (caps & NM_802_11_CAP_PROTO_WPA2);
11023  
11024 -       g_return_if_fail (self != NULL);
11025 +       /* Use "AP_SCAN 2" if:
11026 +        * - The wireless network is non-broadcast and the driver doesn't support
11027 +        *     scanning specific SSIDs
11028 +        * - The wireless network is Ad-Hoc
11029 +        * - The wireless driver does not support WPA (stupid drivers...)
11030 +        */
11031 +       is_adhoc = (nm_ap_get_mode(ap) == IW_MODE_ADHOC);
11032 +       if (is_adhoc || !supports_wpa)
11033 +               ap_scan = "AP_SCAN 2";
11034 +       else if (!nm_ap_get_broadcast (ap))
11035 +               ap_scan = self->priv->has_scan_capa_ssid ? "AP_SCAN 1" : "AP_SCAN 2";
11036  
11037 -       if (self->priv->supplicant.pid > 0)
11038 -       {
11039 -               kill (self->priv->supplicant.pid, SIGTERM);
11040 -               self->priv->supplicant.pid = -1;
11041 -       }
11042 -       if (self->priv->supplicant.watch)
11043 +       /* Tell wpa_supplicant that we'll do the scanning */
11044 +       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, ap_scan))
11045 +               goto out;
11046 +
11047 +       /* Standard network setup info */
11048 +       if (!(response = nm_utils_supplicant_request (ctrl, "ADD_NETWORK")))
11049         {
11050 -               g_source_destroy (self->priv->supplicant.watch);
11051 -               self->priv->supplicant.watch = NULL;
11052 +               nm_warning ("Supplicant error for ADD_NETWORK.\n");
11053 +               goto out;
11054         }
11055 -       if (self->priv->supplicant.status)
11056 +       if (sscanf (response, "%i\n", &nwid) != 1)
11057         {
11058 -               g_source_destroy (self->priv->supplicant.status);
11059 -               self->priv->supplicant.status = NULL;
11060 +               nm_warning ("Supplicant error for ADD_NETWORK.  Response: '%s'\n", response);
11061 +               g_free (response);
11062 +               goto out;
11063         }
11064 -       if (self->priv->supplicant.ctrl)
11065 +       g_free (response);
11066 +
11067 +       if (nm_device_activation_should_cancel (NM_DEVICE (self)))
11068 +               goto out;
11069 +
11070 +       essid = nm_ap_get_orig_essid (ap);
11071 +       hex_essid = cipher_bin2hexstr (essid, strlen (essid), -1);
11072 +       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11073 +                       "SET_NETWORK %i ssid %s", nwid, hex_essid))
11074 +               goto out;
11075 +
11076 +       /* For non-broadcast networks, we need to set "scan_ssid 1" to scan with probe request frames.
11077 +        * However, don't try to probe Ad-Hoc networks.
11078 +        */
11079 +       if (!nm_ap_get_broadcast (ap) && !is_adhoc)
11080         {
11081 -               wpa_ctrl_close (self->priv->supplicant.ctrl);
11082 -               self->priv->supplicant.ctrl = NULL;
11083 +               if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11084 +                               "SET_NETWORK %i scan_ssid 1", nwid))
11085 +                       goto out;
11086         }
11087  
11088 -       supplicant_remove_timeout (self);
11089 -       remove_link_timeout (self);
11090 +       /* Ad-Hoc ? */
11091 +       if (is_adhoc) {
11092 +               guint32 adhoc_freq = nm_ap_get_freq (ap);
11093  
11094 -       /* HACK: should be fixed in wpa_supplicant.  Will likely
11095 -        * require accomodations for selinux.
11096 -        */
11097 -       unlink (WPA_SUPPLICANT_GLOBAL_SOCKET);
11098 -       sock_path = supplicant_get_device_socket_path (self);
11099 -       unlink (sock_path);
11100 -       g_free (sock_path);
11101 -}
11102 +               if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11103 +                               "SET_NETWORK %i mode 1", nwid))
11104 +                       goto out;
11105 +               
11106 +               if (!adhoc_freq) {
11107 +                       guint32 freqs[] = {2412, 2437, 2462, 2472, 0};
11108 +                       adhoc_freq = find_supported_frequency (self, freqs);
11109 +                       if (!adhoc_freq)
11110 +                               adhoc_freq = 2462;
11111 +               }
11112 +               /* Don't make failure to set the frequency option a hard error */
11113 +               nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11114 +                                                       "SET_NETWORK %i frequency %d",
11115 +                                                       nwid, adhoc_freq);
11116 +       }
11117  
11118 -static void
11119 -supplicant_watch_done (gpointer user_data)
11120 -{
11121 -       NMDevice80211Wireless *device = NM_DEVICE_802_11_WIRELESS (user_data);
11122 +       if (nm_device_activation_should_cancel (NM_DEVICE (self)))
11123 +               goto out;
11124  
11125 -       device->priv->supplicant.watch = NULL;
11126 -}
11127 +       if (!nm_ap_security_write_supplicant_config (nm_ap_get_security (ap), ctrl, nwid,
11128 +                                                                               is_adhoc ?
11129 +                                                                               NM_AP_SECURITY_WRITE_FLAG_ADHOC :
11130 +                                                                               NM_AP_SECURITY_WRITE_FLAG_NONE))
11131 +               goto out;
11132  
11133 -static void
11134 -supplicant_watch_cb (GPid pid,
11135 -                     gint status,
11136 -                     gpointer user_data)
11137 -{
11138 -       NMDevice *                      dev = NM_DEVICE (user_data);
11139 -       NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (user_data);
11140 -       
11141 -       g_assert (self);
11142 +       if (nm_device_activation_should_cancel (NM_DEVICE (self)))
11143 +               goto out;
11144  
11145 -       if (WIFEXITED (status))
11146 -               nm_warning ("wpa_supplicant exited with error code %d", WEXITSTATUS (status));
11147 -       else if (WIFSTOPPED (status)) 
11148 -               nm_warning ("wpa_supplicant stopped unexpectedly with signal %d", WSTOPSIG (status));
11149 -       else if (WIFSIGNALED (status))
11150 -               nm_warning ("wpa_supplicant died with signal %d", WTERMSIG (status));
11151 -       else
11152 -               nm_warning ("wpa_supplicant died from an unknown cause");
11153 +       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11154 +                       "ENABLE_NETWORK %i", nwid, essid))
11155 +               goto out;
11156  
11157 -       supplicant_cleanup (self);
11158 +       success = TRUE;
11159 +out:
11160 +       g_free (hex_essid);
11161  
11162 -       nm_device_set_active_link (dev, FALSE);
11163 +       return success;
11164  }
11165  
11166 +#define NM_SUPPLICANT_TIMEOUT  20      /* how long we wait for wpa_supplicant to associate (in seconds) */
11167  
11168 -static void
11169 -link_timeout_done (gpointer user_data)
11170 +static unsigned int
11171 +get_supplicant_timeout (NMDevice80211Wireless *self)
11172  {
11173 -       NMDevice80211Wireless *device = NM_DEVICE_802_11_WIRELESS (user_data);
11174 -
11175 -       device->priv->link_timeout = NULL;
11176 +       if (self->priv->num_freqs > 14)
11177 +               return NM_SUPPLICANT_TIMEOUT * 2;
11178 +       return NM_SUPPLICANT_TIMEOUT;
11179 +}
11180 +
11181 +static gboolean
11182 +supplicant_timed_out (gpointer user_data)
11183 +{
11184 +       NMDevice *dev = NM_DEVICE (user_data);
11185 +       NMDevice80211Wireless *self = NM_DEVICE_802_11_WIRELESS (user_data);
11186 +       NMActRequest *req = nm_device_get_act_request (dev);
11187 +       NMAccessPoint *ap = nm_act_request_get_ap (req);
11188 +       NMData *data = nm_device_get_app_data (dev);
11189 +       gboolean has_key;
11190 +
11191 +       /* Timed out waiting for authentication success; if the security method
11192 +        * in use does not require access point side authentication (Open System
11193 +        * WEP, for example) then we are likely using the wrong authentication
11194 +        * algorithm or key.  Request new one from the user.
11195 +        */
11196 +       if (!ap_is_auth_required (ap, &has_key) && has_key) {
11197 +               /* Activation failed, we must have bad encryption key */
11198 +               nm_info ("Activation (%s/wireless): association took too long (>%us), asking for new key.",
11199 +                               nm_device_get_iface (dev), get_supplicant_timeout (self));
11200 +               nm_dbus_get_user_key_for_network (data->dbus_connection, req, TRUE);
11201 +       } else {
11202 +               nm_info ("Activation (%s/wireless): association took too long (>%us), failing activation.",
11203 +                               nm_device_get_iface (dev), get_supplicant_timeout (self));
11204 +               if (nm_device_is_activating (dev))
11205 +                       nm_policy_schedule_activation_failed (nm_device_get_act_request (dev));
11206 +       }
11207 +
11208 +       return FALSE;
11209  }
11210  
11211 +static void
11212 +remove_link_timeout (NMDevice80211Wireless *self)
11213 +{
11214 +       g_return_if_fail (self != NULL);
11215 +
11216 +       if (self->priv->link_timeout != NULL)
11217 +       {
11218 +               g_source_destroy (self->priv->link_timeout);
11219 +               self->priv->link_timeout = NULL;
11220 +       }
11221 +}
11222 +
11223 +static void
11224 +link_timeout_done (gpointer user_data)
11225 +{
11226 +       NMDevice80211Wireless *device = NM_DEVICE_802_11_WIRELESS (user_data);
11227 +
11228 +       device->priv->link_timeout = NULL;
11229 +}
11230  
11231  /*
11232   * link_timeout_cb
11233 @@ -2533,7 +2644,7 @@
11234                 /* Association/authentication failed, we must have bad encryption key */
11235                 nm_info ("Activation (%s/wireless): disconnected during association,"
11236                          " asking for new key.", nm_device_get_iface (dev));
11237 -               supplicant_remove_timeout(self);
11238 +               nm_supplicant_remove_timeout (self->priv->supplicant);
11239                 nm_dbus_get_user_key_for_network (data->dbus_connection, req, TRUE);
11240         }
11241         else
11242 @@ -2545,418 +2656,58 @@
11243         return FALSE;
11244  }
11245  
11246 -
11247  static void
11248 -supplicant_status_done (gpointer user_data)
11249 -{
11250 -       NMDevice80211Wireless *device = NM_DEVICE_802_11_WIRELESS (user_data);
11251 -
11252 -       device->priv->supplicant.status = NULL;
11253 -}
11254 -
11255 -
11256 -#define MESSAGE_LEN    2048
11257 -
11258 -static gboolean
11259 -supplicant_status_cb (GIOChannel *source,
11260 -                      GIOCondition condition,
11261 -                      gpointer user_data)
11262 -{
11263 -       NMDevice *                      dev = NM_DEVICE (user_data);
11264 -       NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (user_data);
11265 -       char *                          message;
11266 -       size_t                          len;
11267 -       struct wpa_ctrl *               ctrl;
11268 -       NMActRequest *          req;
11269 -
11270 -       g_assert (self);
11271 +supplicant_state_changed (NMSupplicant *supplicant,
11272 +                                        gboolean connected,
11273 +                                        gpointer user_data)
11274 +{
11275 +       NMDevice80211Wireless *self = NM_DEVICE_802_11_WIRELESS (user_data);
11276 +       NMDevice *dev = NM_DEVICE (self);
11277 +       NMActRequest *req = nm_device_get_act_request (NM_DEVICE (self));
11278  
11279 -       /* Do nothing if we're supposed to be canceling activation.
11280 -        * We'll get cleaned up by the cancellation handlers later.
11281 -        */
11282 -       if (nm_device_activation_should_cancel (dev))
11283 -               return TRUE;
11284 -
11285 -       ctrl = self->priv->supplicant.ctrl;
11286 -       g_return_val_if_fail (ctrl != NULL, FALSE);
11287 -
11288 -       req = nm_device_get_act_request (NM_DEVICE (self));
11289 -
11290 -       message = g_malloc (MESSAGE_LEN);
11291 -       len = MESSAGE_LEN;
11292 -       wpa_ctrl_recv (ctrl, message, &len);
11293 -       message[len] = '\0';
11294 -
11295 -       if (strstr (message, WPA_EVENT_CONNECTED) != NULL)
11296 -       {
11297 +       if (connected) {
11298                 remove_link_timeout (self);
11299                 nm_device_set_active_link (dev, TRUE);
11300  
11301                 /* If this is the initial association during device activation,
11302                  * schedule the next activation stage.
11303                  */
11304 -               if (req && (nm_act_request_get_stage (req) == NM_ACT_STAGE_DEVICE_CONFIG))
11305 -               {
11306 -                       NMAccessPoint   *ap = nm_act_request_get_ap (req);
11307 +               if (req && (nm_act_request_get_stage (req) == NM_ACT_STAGE_DEVICE_CONFIG)) {
11308 +                       NMAccessPoint *ap = nm_act_request_get_ap (req);
11309  
11310                         nm_info ("Activation (%s/wireless) Stage 2 of 5 (Device Configure) "
11311 -                                       "successful.  Connected to access point '%s'.",
11312 -                                       nm_device_get_iface (NM_DEVICE (self)),
11313 -                                       nm_ap_get_essid (ap) ? nm_ap_get_essid (ap) : "(none)");
11314 -                       supplicant_remove_timeout (self);
11315 +                                   "successful.  Connected to access point '%s'.",
11316 +                                   nm_device_get_iface (dev),
11317 +                                   nm_ap_get_essid (ap) ? nm_ap_get_essid (ap) : "(none)");
11318 +                       nm_supplicant_remove_timeout (self->priv->supplicant);
11319                         nm_device_activate_schedule_stage3_ip_config_start (req);
11320                 }
11321 -       }
11322 -       else if (strstr (message, WPA_EVENT_DISCONNECTED) != NULL)
11323 -       {
11324 -               if (nm_device_is_activated (dev) || nm_device_is_activating (dev))
11325 -               {
11326 +       } else {
11327 +               if (nm_device_is_activated (dev) || nm_device_is_activating (dev)) {
11328                         /* Start the link timeout so we allow some time for reauthentication */
11329 -                       if ((self->priv->link_timeout == NULL) && !self->priv->scanning)
11330 -                       {
11331 -                               GMainContext *  context = nm_device_get_main_context (dev);
11332 +                       if ((self->priv->link_timeout == NULL) && !self->priv->scanning) {
11333                                 self->priv->link_timeout = g_timeout_source_new (8000);
11334                                 g_source_set_callback (self->priv->link_timeout,
11335 -                                                                          link_timeout_cb,
11336 -                                                                          self,
11337 -                                                                          link_timeout_done);
11338 -                               g_source_attach (self->priv->link_timeout, context);
11339 +                                                                  link_timeout_cb,
11340 +                                                                  self,
11341 +                                                                  link_timeout_done);
11342 +                               g_source_attach (self->priv->link_timeout, nm_device_get_main_context (dev));
11343                                 g_source_unref (self->priv->link_timeout);
11344                         }
11345 -               }
11346 -               else
11347 -               {
11348 +               } else
11349                         nm_device_set_active_link (dev, FALSE);
11350 -               }
11351         }
11352 -
11353 -       g_free (message);
11354 -
11355 -       return TRUE;
11356  }
11357  
11358 -
11359 -#define NM_SUPPLICANT_TIMEOUT  20      /* how long we wait for wpa_supplicant to associate (in seconds) */
11360 -
11361 -static unsigned int
11362 -get_supplicant_timeout (NMDevice80211Wireless *self)
11363 -{
11364 -       if (self->priv->num_freqs > 14)
11365 -               return NM_SUPPLICANT_TIMEOUT * 2;
11366 -       return NM_SUPPLICANT_TIMEOUT;
11367 -}
11368 -
11369 -
11370  static void
11371 -supplicant_timeout_done (gpointer user_data)
11372 -{
11373 -       NMDevice80211Wireless *device = NM_DEVICE_802_11_WIRELESS (user_data);
11374 -
11375 -       device->priv->supplicant.timeout = NULL;
11376 -}
11377 -
11378 -
11379 -/*
11380 - * supplicant_timeout_cb
11381 - *
11382 - * Called when the supplicant has been unable to connect to an access point
11383 - * within a specified period of time.
11384 - */
11385 -static gboolean
11386 -supplicant_timeout_cb (gpointer user_data)
11387 +supplicant_down (NMSupplicant *supplicant,
11388 +                         gpointer user_data)
11389  {
11390 -       NMDevice *                      dev = NM_DEVICE (user_data);
11391 -       NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (user_data);
11392 -       NMActRequest *  req = nm_device_get_act_request (dev);
11393 -       NMAccessPoint * ap = nm_act_request_get_ap (req);
11394 -       NMData *        data = nm_device_get_app_data (dev);
11395 -       gboolean        has_key;
11396 +       NMDevice80211Wireless *self = NM_DEVICE_802_11_WIRELESS (user_data);
11397  
11398 -       g_assert (self);
11399 -               
11400 -       /* Timed out waiting for authentication success; if the security method
11401 -        * in use does not require access point side authentication (Open System
11402 -        * WEP, for example) then we are likely using the wrong authentication
11403 -        * algorithm or key.  Request new one from the user.
11404 -        */
11405 -       if (!ap_is_auth_required (ap, &has_key) && has_key)
11406 -       {
11407 -               /* Activation failed, we must have bad encryption key */
11408 -               nm_info ("Activation (%s/wireless): association took too long (>%us), asking for new key.",
11409 -                               nm_device_get_iface (dev), get_supplicant_timeout (self));
11410 -               nm_dbus_get_user_key_for_network (data->dbus_connection, req, TRUE);
11411 -       }
11412 -       else
11413 -       {
11414 -               nm_info ("Activation (%s/wireless): association took too long (>%us), failing activation.",
11415 -                               nm_device_get_iface (dev), get_supplicant_timeout (self));
11416 -               if (nm_device_is_activating (dev))
11417 -                       nm_policy_schedule_activation_failed (nm_device_get_act_request (dev));
11418 -       }
11419 -
11420 -       return FALSE;
11421 -}
11422 -
11423 -/*
11424 - * supplicant_child_setup
11425 - *
11426 - * Set the process group ID of the newly forked process
11427 - *
11428 - */
11429 -static void
11430 -supplicant_child_setup (gpointer user_data G_GNUC_UNUSED)
11431 -{
11432 -       /* We are in the child process at this point */
11433 -       pid_t pid = getpid ();
11434 -       setpgid (pid, pid);
11435 -}
11436 -
11437 -static gboolean
11438 -supplicant_exec (NMDevice80211Wireless *self)
11439 -{
11440 -       gboolean        success = FALSE;
11441 -       char *  argv[4];
11442 -       GError *        error = NULL;
11443 -       GPid            pid = -1;
11444 -
11445 -       argv[0] = WPA_SUPPLICANT_BIN;
11446 -       argv[1] = "-g";
11447 -       argv[2] = WPA_SUPPLICANT_GLOBAL_SOCKET;
11448 -       argv[3] = NULL;
11449 -
11450 -       success = g_spawn_async ("/", argv, NULL, 0, &supplicant_child_setup, NULL,
11451 -                                &pid, &error);
11452 -       if (!success)
11453 -       {
11454 -               if (error)
11455 -               {
11456 -                       nm_warning ("Couldn't start wpa_supplicant.  Error: (%d) %s",
11457 -                                       error->code, error->message);
11458 -                       g_error_free (error);
11459 -               }
11460 -               else
11461 -                       nm_warning ("Couldn't start wpa_supplicant due to an unknown error.");
11462 -       }
11463 -       else
11464 -       {
11465 -               /* Monitor the child process so we know when it stops */
11466 -               self->priv->supplicant.pid = pid;
11467 -               if (self->priv->supplicant.watch)
11468 -                       g_source_destroy (self->priv->supplicant.watch);
11469 -               self->priv->supplicant.watch = g_child_watch_source_new (pid);
11470 -               g_source_set_callback (self->priv->supplicant.watch,
11471 -                                                          (GSourceFunc) supplicant_watch_cb,
11472 -                                                          self,
11473 -                                                          supplicant_watch_done);
11474 -               g_source_attach (self->priv->supplicant.watch, nm_device_get_main_context (NM_DEVICE (self)));
11475 -               g_source_unref (self->priv->supplicant.watch);
11476 -       }
11477 -
11478 -       return success;
11479 -}
11480 -
11481 -
11482 -static gboolean
11483 -supplicant_interface_init (NMDevice80211Wireless *self)
11484 -{
11485 -       struct wpa_ctrl *       ctrl = NULL;
11486 -       char *                  socket_path;
11487 -       const char *            iface = nm_device_get_iface (NM_DEVICE (self));
11488 -       gboolean                        success = FALSE;
11489 -       int                             tries = 0;
11490 -
11491 -       /* Try to open wpa_supplicant's global control socket */
11492 -       for (tries = 0; tries < WPA_SUPPLICANT_NUM_RETRIES && !ctrl; tries++)
11493 -       {
11494 -               ctrl = wpa_ctrl_open (WPA_SUPPLICANT_GLOBAL_SOCKET, NM_RUN_DIR);
11495 -               g_usleep (WPA_SUPPLICANT_RETRY_TIME_US);
11496 -       }
11497 -
11498 -       if (!ctrl)
11499 -       {
11500 -               nm_info ("Error opening supplicant global control interface.");
11501 -               goto exit;
11502 -       }
11503 -
11504 -       /* wpa_cli -g/var/run/wpa_supplicant-global interface_add eth1 "" wext /var/run/wpa_supplicant */
11505 -       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11506 -                       "INTERFACE_ADD %s\t\twext\t" WPA_SUPPLICANT_CONTROL_SOCKET "\t", iface))
11507 -               goto exit;
11508 -       wpa_ctrl_close (ctrl);
11509 -
11510 -       /* Get a control socket to wpa_supplicant for this interface.
11511 -        * Try a couple times to work around naive socket naming
11512 -        * in wpa_ctrl that sometimes collides with stale ones.
11513 -        */
11514 -       socket_path = supplicant_get_device_socket_path (self);
11515 -       while (!self->priv->supplicant.ctrl && (tries++ < 10))
11516 -               self->priv->supplicant.ctrl = wpa_ctrl_open (socket_path, NM_RUN_DIR);
11517 -       g_free (socket_path);
11518 -       if (!self->priv->supplicant.ctrl)
11519 -       {
11520 -               nm_info ("Error opening control interface to supplicant.");
11521 -               goto exit;
11522 -       }
11523 -       success = TRUE;
11524 -
11525 -exit:
11526 -       return success;
11527 -}
11528 -
11529 -
11530 -static gboolean
11531 -supplicant_send_network_config (NMDevice80211Wireless *self,
11532 -                                NMActRequest *req)
11533 -{
11534 -       NMAccessPoint * ap = NULL;
11535 -       gboolean                        success = FALSE;
11536 -       char *                  response = NULL;
11537 -       int                             nwid;
11538 -       const char *            essid;
11539 -       struct wpa_ctrl *       ctrl;
11540 -       gboolean                        is_adhoc;
11541 -       char *          hex_essid = NULL;
11542 -       const char *            ap_scan = "AP_SCAN 1";
11543 -       guint32                 caps;
11544 -       gboolean                        supports_wpa;
11545 -
11546 -       g_return_val_if_fail (self != NULL, FALSE);
11547 -       g_return_val_if_fail (req != NULL, FALSE);
11548 -
11549 -       ap = nm_act_request_get_ap (req);
11550 -       g_assert (ap);
11551 -
11552 -       ctrl = self->priv->supplicant.ctrl;
11553 -       g_assert (ctrl);
11554 -
11555 -       /* Assume that drivers that don't support WPA pretty much suck,
11556 -        * and can't handle NM scanning along with wpa_supplicant.  Which
11557 -        * is the case for most of them, airo in particular.
11558 -        */
11559 -       caps = nm_device_get_type_capabilities (NM_DEVICE (self));
11560 -       supports_wpa = (caps & NM_802_11_CAP_PROTO_WPA)
11561 -                               || (caps & NM_802_11_CAP_PROTO_WPA2);
11562 -
11563 -       /* Use "AP_SCAN 2" if:
11564 -        * - The wireless network is non-broadcast or Ad-Hoc
11565 -        * - The wireless driver does not support WPA (stupid drivers...)
11566 -        */
11567 -       is_adhoc = (nm_ap_get_mode(ap) == IW_MODE_ADHOC);
11568 -       if (!nm_ap_get_broadcast (ap) || is_adhoc || !supports_wpa)
11569 -               ap_scan = "AP_SCAN 2";
11570 -
11571 -       /* Tell wpa_supplicant that we'll do the scanning */
11572 -       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, ap_scan))
11573 -               goto out;
11574 -
11575 -       /* Standard network setup info */
11576 -       if (!(response = nm_utils_supplicant_request (ctrl, "ADD_NETWORK")))
11577 -       {
11578 -               nm_warning ("Supplicant error for ADD_NETWORK.\n");
11579 -               goto out;
11580 -       }
11581 -       if (sscanf (response, "%i\n", &nwid) != 1)
11582 -       {
11583 -               nm_warning ("Supplicant error for ADD_NETWORK.  Response: '%s'\n", response);
11584 -               g_free (response);
11585 -               goto out;
11586 -       }
11587 -       g_free (response);
11588 -
11589 -       if (nm_device_activation_should_cancel (NM_DEVICE (self)))
11590 -               goto out;
11591 -
11592 -       essid = nm_ap_get_orig_essid (ap);
11593 -       hex_essid = cipher_bin2hexstr (essid, strlen (essid), -1);
11594 -       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11595 -                       "SET_NETWORK %i ssid %s", nwid, hex_essid))
11596 -               goto out;
11597 -
11598 -       /* For non-broadcast networks, we need to set "scan_ssid 1" to scan with probe request frames.
11599 -        * However, don't try to probe Ad-Hoc networks.
11600 -        */
11601 -       if (!nm_ap_get_broadcast (ap) && !is_adhoc)
11602 -       {
11603 -               if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11604 -                               "SET_NETWORK %i scan_ssid 1", nwid))
11605 -                       goto out;
11606 -       }
11607 -
11608 -       /* Ad-Hoc ? */
11609 -       if (is_adhoc)
11610 -       {
11611 -               if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11612 -                               "SET_NETWORK %i mode 1", nwid))
11613 -                       goto out;
11614 -       }
11615 -
11616 -       if (nm_device_activation_should_cancel (NM_DEVICE (self)))
11617 -               goto out;
11618 -
11619 -       if (!nm_ap_security_write_supplicant_config (nm_ap_get_security (ap), ctrl, nwid, is_adhoc))
11620 -               goto out;
11621 -
11622 -       if (nm_device_activation_should_cancel (NM_DEVICE (self)))
11623 -               goto out;
11624 -
11625 -       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
11626 -                       "ENABLE_NETWORK %i", nwid, essid))
11627 -               goto out;
11628 -
11629 -       success = TRUE;
11630 -out:
11631 -       g_free (hex_essid);
11632 -
11633 -       return success;
11634 -}
11635 -
11636 -
11637 -static gboolean
11638 -supplicant_monitor_start (NMDevice80211Wireless *self)
11639 -{
11640 -       gboolean                success = FALSE;
11641 -       int                     fd = -1;
11642 -       GIOChannel *    channel;
11643 -       GMainContext *  context;
11644 -
11645 -       g_return_val_if_fail (self != NULL, FALSE);
11646 -
11647 -       /* register network event monitor */
11648 -       if (wpa_ctrl_attach (self->priv->supplicant.ctrl) != 0)
11649 -               goto out;
11650 -
11651 -       if ((fd = wpa_ctrl_get_fd (self->priv->supplicant.ctrl)) < 0)
11652 -               goto out;
11653 -
11654 -       context = nm_device_get_main_context (NM_DEVICE (self));
11655 -       channel = g_io_channel_unix_new (fd);
11656 -       self->priv->supplicant.status = g_io_create_watch (channel, G_IO_IN);
11657 -       g_io_channel_unref (channel);
11658 -       g_source_set_callback (self->priv->supplicant.status,
11659 -                                                  (GSourceFunc) supplicant_status_cb,
11660 -                                                  self,
11661 -                                                  supplicant_status_done);
11662 -       g_source_attach (self->priv->supplicant.status, context);
11663 -       g_source_unref (self->priv->supplicant.status);
11664 -
11665 -       /* Set up a timeout on the association to kill it after get_supplicant_time() seconds */
11666 -       self->priv->supplicant.timeout = g_timeout_source_new (get_supplicant_timeout (self) * 1000);
11667 -       g_source_set_callback (self->priv->supplicant.timeout,
11668 -                                                  supplicant_timeout_cb,
11669 -                                                  self,
11670 -                                                  supplicant_timeout_done);
11671 -       g_source_attach (self->priv->supplicant.timeout, context);
11672 -       g_source_unref (self->priv->supplicant.timeout);
11673 -
11674 -       success = TRUE;
11675 -
11676 -out:
11677 -       return success;
11678 +       remove_link_timeout (self);
11679  }
11680  
11681 -
11682 -
11683 -
11684  /****************************************************************************/
11685  
11686  static NMActStageReturn
11687 @@ -2965,14 +2716,15 @@
11688  {
11689         NMDevice80211Wireless * self = NM_DEVICE_802_11_WIRELESS (dev);
11690         NMAccessPoint *         ap = nm_act_request_get_ap (req);
11691 -       NMActStageReturn                ret = NM_ACT_STAGE_RETURN_FAILURE;
11692         NMData *                                data = nm_act_request_get_data (req);
11693         const char *                    iface;
11694         gboolean                                ask_user = FALSE;
11695 +       GMainContext *ctx;
11696  
11697         g_assert (ap);
11698  
11699 -       supplicant_cleanup (self);
11700 +       if (self->priv->supplicant)
11701 +               g_object_unref (self->priv->supplicant);
11702  
11703         /* If we need an encryption key, get one */
11704         if (ap_need_key (self, ap, &ask_user))
11705 @@ -2981,23 +2733,36 @@
11706                 return NM_ACT_STAGE_RETURN_POSTPONE;
11707         }
11708  
11709 +       /* Some cards are dumb.  Wait a second */
11710 +       sleep (1);
11711 +
11712         iface = nm_device_get_iface (dev);
11713 -       if (!supplicant_exec (self))
11714 +       ctx = nm_device_get_main_context (dev);
11715 +
11716 +       self->priv->supplicant = nm_supplicant_new ();
11717 +       g_signal_connect (self->priv->supplicant, "state-changed",
11718 +                         G_CALLBACK (supplicant_state_changed),
11719 +                         self);
11720 +
11721 +       g_signal_connect (self->priv->supplicant, "down",
11722 +                         G_CALLBACK (supplicant_down),
11723 +                         self);
11724 +
11725 +       if (!nm_supplicant_exec (self->priv->supplicant, ctx))
11726         {
11727 -               nm_warning ("Activation (%s/wireless): couldn't start the supplicant.",
11728 -                       iface);
11729 +               nm_warning ("Activation (%s/wireless): couldn't start the supplicant.", iface);
11730                 goto out;
11731         }
11732 -       if (!supplicant_interface_init (self))
11733 +       if (!nm_supplicant_interface_init (self->priv->supplicant, iface, "wext"))
11734         {
11735 -               nm_warning ("Activation (%s/wireless): couldn't connect to the supplicant.",
11736 -                       iface);
11737 +               nm_warning ("Activation (%s/wireless): couldn't connect to the supplicant.", iface);
11738                 goto out;
11739         }
11740 -       if (!supplicant_monitor_start (self))
11741 +       if (!nm_supplicant_monitor_start (self->priv->supplicant, ctx,
11742 +                                         get_supplicant_timeout (self),
11743 +                                         supplicant_timed_out, self))
11744         {
11745 -               nm_warning ("Activation (%s/wireless): couldn't monitor the supplicant.",
11746 -                       iface);
11747 +               nm_warning ("Activation (%s/wireless): couldn't monitor the supplicant.", iface);
11748                 goto out;
11749         }
11750         if (!supplicant_send_network_config (self, req))
11751 @@ -3008,10 +2773,13 @@
11752         }
11753  
11754         /* We'll get stage3 started when the supplicant connects */
11755 -       ret = NM_ACT_STAGE_RETURN_POSTPONE;
11756 +       return NM_ACT_STAGE_RETURN_POSTPONE;
11757  
11758  out:
11759 -       return ret;
11760 +       g_object_unref (self->priv->supplicant);
11761 +       self->priv->supplicant = NULL;
11762 +
11763 +       return NM_ACT_STAGE_RETURN_FAILURE;
11764  }
11765  
11766  
11767 @@ -3113,6 +2881,14 @@
11768                 /* Activation failed, we must have bad encryption key */
11769                 nm_debug ("Activation (%s/wireless): could not get IP configuration info for '%s', asking for new key.",
11770                                 nm_device_get_iface (dev), nm_ap_get_essid (ap) ? nm_ap_get_essid (ap) : "(none)");
11771 +
11772 +               /* Kill the supplicant */
11773 +               if (self->priv->supplicant) {
11774 +                       g_object_unref (self->priv->supplicant);
11775 +                       self->priv->supplicant = NULL;
11776 +               }
11777 +               remove_link_timeout (self);
11778 +
11779                 nm_dbus_get_user_key_for_network (data->dbus_connection, req, TRUE);
11780                 ret = NM_ACT_STAGE_RETURN_POSTPONE;
11781         }
11782 @@ -3446,10 +3222,9 @@
11783         char *genie, *gpos, *gend, *custom;
11784         NMAccessPoint *ap = NULL;
11785         size_t clen;
11786 -       int maxrate;
11787 +       int maxrate = 0;
11788         struct iw_event iwe_buf, *iwe = &iwe_buf;
11789         struct stream_descr     stream;
11790 -       struct wireless_scan *  wscan = NULL;
11791         int                     ret;
11792  
11793         g_return_val_if_fail (dev != NULL, FALSE);
11794 diff -urN NetworkManager-0.6.5/src/nm-device-802-11-wireless.h NetworkManager-SVNr3284/src/nm-device-802-11-wireless.h
11795 --- NetworkManager-0.6.5/src/nm-device-802-11-wireless.h        2007-04-18 20:13:06.000000000 +0200
11796 +++ NetworkManager-SVNr3284/src/nm-device-802-11-wireless.h     2008-02-04 16:00:13.000000000 +0100
11797 @@ -92,9 +92,8 @@
11798                                                                                                         const char *essid,
11799                                                                                                         NMAPSecurity *security);
11800  
11801 -void                   nm_device_802_11_wireless_set_scan_interval (struct NMData *data,
11802 -                                                            NMDevice80211Wireless *dev,
11803 -                                                            NMWirelessScanInterval interval);
11804 +void                   nm_device_802_11_wireless_ui_activated (struct NMData *data,
11805 +                                                        NMWirelessScanInterval interval);
11806  
11807  void   nm_device_802_11_wireless_copy_allowed_to_dev_list (NMDevice80211Wireless *self,
11808                                                                                           struct NMAccessPointList *allowed_list);
11809 diff -urN NetworkManager-0.6.5/src/nm-device-802-3-ethernet.c NetworkManager-SVNr3284/src/nm-device-802-3-ethernet.c
11810 --- NetworkManager-0.6.5/src/nm-device-802-3-ethernet.c 2007-04-18 20:13:06.000000000 +0200
11811 +++ NetworkManager-SVNr3284/src/nm-device-802-3-ethernet.c      2008-02-04 16:00:13.000000000 +0100
11812 @@ -1,3 +1,5 @@
11813 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
11814 +
11815  /* NetworkManager -- Network link manager
11816   *
11817   * Dan Williams <dcbw@redhat.com>
11818 @@ -30,8 +32,10 @@
11819  #include "nm-device-private.h"
11820  #include "NetworkManagerMain.h"
11821  #include "nm-activation-request.h"
11822 +#include "nm-supplicant.h"
11823  #include "NetworkManagerUtils.h"
11824  #include "NetworkManagerPolicy.h"
11825 +#include "nm-dbus-nmi.h"
11826  #include "nm-utils.h"
11827  #include "kernel-types.h"
11828  
11829 @@ -44,6 +48,9 @@
11830         char *                  carrier_file_path;
11831         gulong                  link_connected_id;
11832         gulong                  link_disconnected_id;
11833 +       NMSupplicant *          supplicant;
11834 +       GSource *                       link_timeout;
11835 +       gboolean                        failed_8021x;
11836  };
11837  
11838  static gboolean supports_mii_carrier_detect (NMDevice8023Ethernet *dev);
11839 @@ -56,6 +63,8 @@
11840                                                            GObject *obj,
11841                                                            NMDevice8023Ethernet *self);
11842  
11843 +static void remove_link_timeout (NMDevice8023Ethernet *self);
11844 +
11845  
11846  static void
11847  nm_device_802_3_ethernet_init (NMDevice8023Ethernet * self)
11848 @@ -99,7 +108,9 @@
11849  static gboolean
11850  link_activated_helper (NMDevice8023Ethernet *self)
11851  {
11852 -       nm_device_set_active_link (NM_DEVICE (self), TRUE);
11853 +       if (!self->priv->failed_8021x)
11854 +               nm_device_set_active_link (NM_DEVICE (self), TRUE);
11855 +
11856         return FALSE;
11857  }
11858  
11859 @@ -108,18 +119,16 @@
11860                                           GObject *obj,
11861                                           NMDevice8023Ethernet *self)
11862  {
11863 +       GSource * source;
11864 +
11865         /* Make sure signal is for us */
11866         if (NM_DEVICE (self) != NM_DEVICE (obj))
11867                 return;
11868  
11869 -       if (!nm_device_has_active_link (NM_DEVICE (self)))
11870 -       {
11871 -               GSource *       source = g_idle_source_new ();
11872 -
11873 -               g_source_set_callback (source, (GSourceFunc) link_activated_helper, self, NULL);
11874 -               g_source_attach (source, nm_device_get_main_context (NM_DEVICE (self)));
11875 -               g_source_unref (source);
11876 -       }
11877 +       source = g_idle_source_new ();
11878 +       g_source_set_callback (source, (GSourceFunc) link_activated_helper, self, NULL);
11879 +       g_source_attach (source, nm_device_get_main_context (NM_DEVICE (self)));
11880 +       g_source_unref (source);
11881  }
11882  
11883  
11884 @@ -135,48 +144,50 @@
11885                                             GObject *obj,
11886                                             NMDevice8023Ethernet *self)
11887  {
11888 +       GSource * source;
11889 +
11890         /* Make sure signal is for us */
11891         if (NM_DEVICE (self) != NM_DEVICE (obj))
11892                 return;
11893  
11894 -       if (nm_device_has_active_link (NM_DEVICE (self)))
11895 -       {
11896 -               GSource *       source = g_idle_source_new ();
11897 -
11898 -               g_source_set_callback (source, (GSourceFunc) link_deactivated_helper, self, NULL);
11899 -               g_source_attach (source, nm_device_get_main_context (NM_DEVICE (self)));
11900 -               g_source_unref (source);
11901 -       }
11902 +       source = g_idle_source_new ();
11903 +       g_source_set_callback (source, (GSourceFunc) link_deactivated_helper, self, NULL);
11904 +       g_source_attach (source, nm_device_get_main_context (NM_DEVICE (self)));
11905 +       g_source_unref (source);
11906  }
11907  
11908 -static void
11909 -real_update_link (NMDevice *dev)
11910 +static gboolean
11911 +poll_link_state (NMDevice8023Ethernet *self)
11912  {
11913 -       NMDevice8023Ethernet *  self = NM_DEVICE_802_3_ETHERNET (dev);
11914 -       gboolean        have_link = FALSE;
11915 +       gboolean have_link = FALSE;
11916         guint32 caps;
11917 -       gchar * contents;
11918 -       gsize   length;
11919 +       gchar *contents;
11920 +       gsize length;
11921  
11922 -       if (nm_device_get_removed (NM_DEVICE (self)))
11923 -               goto out;
11924 +       if (nm_device_get_removed (NM_DEVICE (self)) || self->priv->failed_8021x)
11925 +               return FALSE;
11926  
11927         /* Devices that don't support carrier detect are always "on" and
11928          * must be manually chosen by the user.
11929          */
11930         caps = nm_device_get_capabilities (NM_DEVICE (self));
11931 -       if (!(caps & NM_DEVICE_CAP_CARRIER_DETECT)) {
11932 -               have_link = TRUE;
11933 -               goto out;
11934 -       }
11935 +       if (!(caps & NM_DEVICE_CAP_CARRIER_DETECT))
11936 +               return TRUE;
11937  
11938         if (g_file_get_contents (self->priv->carrier_file_path, &contents, &length, NULL)) {
11939                 have_link = atoi (contents) > 0 ? TRUE : FALSE;
11940                 g_free (contents);
11941         }
11942  
11943 -out:
11944 -       nm_device_set_active_link (NM_DEVICE (self), have_link);
11945 +       return have_link;
11946 +}
11947 +
11948 +static void
11949 +real_update_link (NMDevice *dev)
11950 +{
11951 +       NMDevice8023Ethernet *self = NM_DEVICE_802_3_ETHERNET (dev);
11952 +
11953 +       nm_device_set_active_link (NM_DEVICE (self), poll_link_state (self));
11954  }
11955  
11956  
11957 @@ -211,6 +222,287 @@
11958         return caps;
11959  }
11960  
11961 +
11962 +static void
11963 +real_deactivate_quickly (NMDevice *dev)
11964 +{
11965 +       NMDevice8023Ethernet *self = NM_DEVICE_802_3_ETHERNET (dev);
11966 +       gboolean have_link;
11967 +
11968 +       if (self->priv->supplicant) {
11969 +               g_object_unref (self->priv->supplicant);
11970 +               self->priv->supplicant = NULL;
11971 +       }
11972 +
11973 +       remove_link_timeout (self);
11974 +
11975 +       self->priv->failed_8021x = FALSE;
11976 +       have_link = poll_link_state (self);
11977 +       if (nm_device_has_active_link (dev) != have_link) {
11978 +               GSource * source;
11979 +
11980 +               source = g_idle_source_new ();
11981 +               if (have_link)
11982 +                       g_source_set_callback (source, (GSourceFunc) link_activated_helper, self, NULL);
11983 +               else
11984 +                       g_source_set_callback (source, (GSourceFunc) link_deactivated_helper, self, NULL);
11985 +               g_source_attach (source, nm_device_get_main_context (NM_DEVICE (self)));
11986 +               g_source_unref (source);
11987 +       }
11988 +}
11989 +
11990 +
11991 +static NMActStageReturn
11992 +real_act_stage1_prepare (NMDevice *dev, NMActRequest *req)
11993 +{
11994 +       NMDevice8023Ethernet * self = NM_DEVICE_802_3_ETHERNET (dev);
11995 +       NMDevice8023EthernetClass *     klass;
11996 +       NMDeviceClass * parent_class;
11997 +
11998 +       /* Ensure ethernet devices have a link before going further with activation,
11999 +        * partially works around Fedora #194124.
12000 +        */
12001 +       if (!nm_device_has_active_link (dev))
12002 +               return NM_ACT_STAGE_RETURN_FAILURE;
12003 +
12004 +       /* Chain up to parent */
12005 +       klass = NM_DEVICE_802_3_ETHERNET_GET_CLASS (self);
12006 +       parent_class = NM_DEVICE_CLASS (g_type_class_peek_parent (klass));
12007 +       return parent_class->act_stage1_prepare (dev, req);
12008 +}
12009 +
12010 +static gboolean
12011 +supplicant_send_network_config (NMDevice8023Ethernet *self,
12012 +                                NMAPSecurity *security)
12013 +{
12014 +       gboolean success = FALSE;
12015 +       char *response = NULL;
12016 +       int nwid;
12017 +       struct wpa_ctrl *ctrl;
12018 +
12019 +       ctrl = nm_supplicant_get_ctrl (self->priv->supplicant);
12020 +       g_assert (ctrl);
12021 +
12022 +       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL, "AP_SCAN 0"))
12023 +               goto out;
12024 +
12025 +       /* Standard network setup info */
12026 +       if (!(response = nm_utils_supplicant_request (ctrl, "ADD_NETWORK"))) {
12027 +               nm_warning ("Supplicant error for ADD_NETWORK.\n");
12028 +               goto out;
12029 +       }
12030 +       if (sscanf (response, "%i\n", &nwid) != 1)
12031 +       {
12032 +               nm_warning ("Supplicant error for ADD_NETWORK.  Response: '%s'\n", response);
12033 +               g_free (response);
12034 +               goto out;
12035 +       }
12036 +       g_free (response);
12037 +
12038 +       if (!nm_ap_security_write_supplicant_config (security, ctrl, nwid, NM_AP_SECURITY_WRITE_FLAG_WIRED))
12039 +               goto out;
12040 +
12041 +       if (nm_device_activation_should_cancel (NM_DEVICE (self)))
12042 +               goto out;
12043 +
12044 +       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
12045 +                                                                               "ENABLE_NETWORK %i", nwid))
12046 +               goto out;
12047 +
12048 +       success = TRUE;
12049 +out:
12050 +       return success;
12051 +}
12052 +
12053 +static void
12054 +remove_link_timeout (NMDevice8023Ethernet *self)
12055 +{
12056 +       if (self->priv->link_timeout) {
12057 +               g_source_destroy (self->priv->link_timeout);
12058 +               self->priv->link_timeout = NULL;
12059 +       }
12060 +}
12061 +
12062 +static void
12063 +link_timeout_done (gpointer user_data)
12064 +{
12065 +       NMDevice8023Ethernet *self = NM_DEVICE_802_3_ETHERNET (user_data);
12066 +
12067 +       self->priv->link_timeout = NULL;
12068 +}
12069 +
12070 +static gboolean
12071 +link_timeout_cb (gpointer user_data)
12072 +{
12073 +       NMDevice *                      dev = NM_DEVICE (user_data);
12074 +       NMDevice8023Ethernet *  self = NM_DEVICE_802_3_ETHERNET (user_data);    
12075 +       NMActRequest *                  req = nm_device_get_act_request (dev);
12076 +       NMData *                                data = nm_device_get_app_data (dev);
12077 +
12078 +       /* Disconnect event during initial authentication and credentials
12079 +        * ARE checked - we are likely to have wrong key.  Ask the user for
12080 +        * another one.
12081 +        */
12082 +       if (nm_act_request_get_stage (req) == NM_ACT_STAGE_DEVICE_CONFIG) {
12083 +               /* Association/authentication failed, we must have bad encryption key */
12084 +               nm_info ("Activation (%s/wired): disconnected during association,"
12085 +                        " asking for new key.", nm_device_get_iface (dev));
12086 +               nm_supplicant_remove_timeout (self->priv->supplicant);
12087 +               nm_dbus_get_user_key_for_network (data->dbus_connection, req, TRUE);
12088 +       } else {
12089 +               nm_info ("%s: link timed out.", nm_device_get_iface (dev));
12090 +               self->priv->failed_8021x = TRUE;
12091 +               nm_device_set_active_link (dev, FALSE);
12092 +       }
12093 +
12094 +       return FALSE;
12095 +}
12096 +
12097 +static gboolean
12098 +supplicant_timed_out (gpointer user_data)
12099 +{
12100 +       NMDevice *dev = NM_DEVICE (user_data);
12101 +       NMData *data = nm_device_get_app_data (dev);
12102 +       NMActRequest *req = nm_device_get_act_request (dev);
12103 +
12104 +       nm_info ("Activation (%s/): association took too long, asking for new key.", nm_device_get_iface (dev));
12105 +       nm_dbus_get_user_key_for_network (data->dbus_connection, req, TRUE);
12106 +
12107 +       return FALSE;
12108 +}
12109 +
12110 +static void
12111 +supplicant_state_changed (NMSupplicant *supplicant,
12112 +                                        gboolean connected,
12113 +                                        gpointer user_data)
12114 +{
12115 +       NMDevice8023Ethernet *self = NM_DEVICE_802_3_ETHERNET (user_data);
12116 +       NMDevice *dev = NM_DEVICE (self);
12117 +       NMActRequest *req = nm_device_get_act_request (NM_DEVICE (self));
12118 +
12119 +       if (connected) {
12120 +               remove_link_timeout (self);
12121 +               nm_device_set_active_link (dev, TRUE);
12122 +
12123 +               /* If this is the initial association during device activation,
12124 +                * schedule the next activation stage.
12125 +                */
12126 +               if (req && (nm_act_request_get_stage (req) == NM_ACT_STAGE_DEVICE_CONFIG)) {
12127 +                       nm_info ("Activation (%s) Stage 2 of 5 (Device Configure) successful.",
12128 +                                   nm_device_get_iface (dev));
12129 +                       nm_supplicant_remove_timeout (self->priv->supplicant);
12130 +                       nm_device_activate_schedule_stage3_ip_config_start (req);
12131 +               }
12132 +       } else {
12133 +               if (nm_device_is_activated (dev) || nm_device_is_activating (dev)) {
12134 +                       /* Start the link timeout so we allow some time for reauthentication */
12135 +                       if (!self->priv->link_timeout) {
12136 +                               self->priv->link_timeout = g_timeout_source_new (8000);
12137 +                               g_source_set_callback (self->priv->link_timeout,
12138 +                                                                  link_timeout_cb,
12139 +                                                                  self,
12140 +                                                                  link_timeout_done);
12141 +                               g_source_attach (self->priv->link_timeout, nm_device_get_main_context (dev));
12142 +                               g_source_unref (self->priv->link_timeout);
12143 +                       }
12144 +               } else
12145 +                       nm_device_set_active_link (dev, FALSE);
12146 +       }
12147 +}
12148 +
12149 +static void
12150 +supplicant_down (NMSupplicant *supplicant,
12151 +                         gpointer user_data)
12152 +{
12153 +       NMDevice8023Ethernet *self = NM_DEVICE_802_3_ETHERNET (user_data);
12154 +
12155 +       remove_link_timeout (self);
12156 +}
12157 +
12158 +static NMActStageReturn
12159 +real_act_stage2_config (NMDevice *dev, NMActRequest *req)
12160 +{
12161 +       NMDevice8023Ethernet *self = NM_DEVICE_802_3_ETHERNET (dev);
12162 +       NMWiredNetwork *wired_net;
12163 +       NMAPSecurity *security;
12164 +       const char *iface;
12165 +       GMainContext *ctx;
12166 +
12167 +       if (self->priv->supplicant)
12168 +               g_object_unref (self->priv->supplicant);
12169 +
12170 +       wired_net = nm_act_request_get_wired_network (req);
12171 +       if (!wired_net)
12172 +               return NM_ACT_STAGE_RETURN_SUCCESS;
12173 +
12174 +       iface = nm_device_get_iface (dev);
12175 +       security = nm_wired_network_get_security (wired_net);
12176 +
12177 +       if (!nm_ap_security_get_key (security)) {
12178 +               NMData *data = nm_act_request_get_data (req);
12179 +
12180 +               nm_info ("Activation (%s): using 802.1X authentication, but NO valid key exists. New key needed.", iface);
12181 +               nm_dbus_get_user_key_for_network (data->dbus_connection, req, FALSE);
12182 +
12183 +               return NM_ACT_STAGE_RETURN_POSTPONE;
12184 +       }
12185 +
12186 +       nm_info ("Activation (%s): using 802.1X authentication and a key exists. No new key needed.", iface);
12187 +
12188 +       self->priv->supplicant = nm_supplicant_new ();
12189 +       g_signal_connect (self->priv->supplicant, "state-changed",
12190 +                                  G_CALLBACK (supplicant_state_changed),
12191 +                                  self);
12192 +
12193 +       g_signal_connect (self->priv->supplicant, "down",
12194 +                                  G_CALLBACK (supplicant_down),
12195 +                                  self);
12196 +
12197 +       ctx = nm_device_get_main_context (dev);
12198 +
12199 +       if (!nm_supplicant_exec (self->priv->supplicant, ctx)) {
12200 +               nm_warning ("Activation (%s): couldn't start the supplicant.", iface);
12201 +               goto out;
12202 +       }
12203 +       if (!nm_supplicant_interface_init (self->priv->supplicant, iface, "wired")) {
12204 +               nm_warning ("Activation (%s): couldn't connect to the supplicant.", iface);
12205 +               goto out;
12206 +       }
12207 +       if (!nm_supplicant_monitor_start (self->priv->supplicant, ctx, 10,
12208 +                                                           supplicant_timed_out, self)) {
12209 +               nm_warning ("Activation (%s): couldn't monitor the supplicant.", iface);
12210 +               goto out;
12211 +       }
12212 +       if (!supplicant_send_network_config (self, security)) {
12213 +               nm_warning ("Activation (%s): couldn't send security information"
12214 +                                 " to the supplicant.", iface);
12215 +               goto out;
12216 +       }
12217 +
12218 +       /* We'll get stage3 started when the supplicant connects */
12219 +       return NM_ACT_STAGE_RETURN_POSTPONE;
12220 +
12221 +out:
12222 +       g_object_unref (self->priv->supplicant);
12223 +       self->priv->supplicant = NULL;
12224 +
12225 +       return NM_ACT_STAGE_RETURN_FAILURE;
12226 +}
12227 +
12228 +static void
12229 +real_activation_success_handler (NMDevice *dev, NMActRequest *req)
12230 +{
12231 +       NMWiredNetwork *wired_net;
12232 +
12233 +       wired_net = nm_act_request_get_wired_network (req);
12234 +       if (wired_net) {
12235 +               NMData *app_data;
12236 +
12237 +               app_data = nm_act_request_get_data (req);
12238 +               nm_dbus_update_wired_network_info (app_data->dbus_connection, wired_net);
12239 +       }
12240 +}
12241 +
12242  static void
12243  nm_device_802_3_ethernet_dispose (GObject *object)
12244  {
12245 @@ -275,6 +567,10 @@
12246         parent_class->get_generic_capabilities = real_get_generic_capabilities;
12247         parent_class->init = real_init;
12248         parent_class->update_link = real_update_link;
12249 +       parent_class->act_stage1_prepare = real_act_stage1_prepare;
12250 +       parent_class->act_stage2_config = real_act_stage2_config;
12251 +       parent_class->deactivate_quickly = real_deactivate_quickly;
12252 +       parent_class->activation_success_handler = real_activation_success_handler;
12253  
12254         g_type_class_add_private (object_class, sizeof (NMDevice8023EthernetPrivate));
12255  }
12256 @@ -386,7 +682,9 @@
12257  /**************************************/
12258  /*    MII capability detection        */
12259  /**************************************/
12260 +#define _LINUX_IF_H
12261  #include <linux/mii.h>
12262 +#undef _LINUX_IF_H
12263  
12264  static int
12265  mdio_read (NMDevice8023Ethernet *self, NMSock *sk, struct ifreq *ifr, int location)
12266 diff -urN NetworkManager-0.6.5/src/nm-device.c NetworkManager-SVNr3284/src/nm-device.c
12267 --- NetworkManager-0.6.5/src/nm-device.c        2007-04-18 20:13:06.000000000 +0200
12268 +++ NetworkManager-SVNr3284/src/nm-device.c     2008-02-04 16:00:13.000000000 +0100
12269 @@ -620,7 +620,7 @@
12270                                 do_switch = TRUE;
12271  
12272                         /* FIXME: Why is this activation request created here and never used? */
12273 -                       /* if (do_switch && (act_req = nm_act_request_new (app_data, self, NULL, TRUE))) */
12274 +                       /* if (do_switch && (act_req = nm_act_request_new (app_data, self, TRUE))) */
12275                         if (do_switch)
12276                         {
12277                                 nm_info ("Will activate wired connection '%s' because it now has a link.", nm_device_get_iface (self));
12278 @@ -856,6 +856,12 @@
12279         data = nm_act_request_get_data (req);
12280         g_assert (data);
12281  
12282 +       /* Sometimes the device gets downed by wpa_supplicant; in any case, make
12283 +        * sure it's up before anything tries to use it.
12284 +        */
12285 +       if (!nm_device_is_up (self))
12286 +               nm_device_bring_up (self);
12287 +
12288         /* DHCP devices try DHCP, non-DHCP default to SUCCESS */
12289         if (nm_device_get_use_dhcp (self))
12290         {
12291 diff -urN NetworkManager-0.6.5/src/nm-netlink-monitor.c NetworkManager-SVNr3284/src/nm-netlink-monitor.c
12292 --- NetworkManager-0.6.5/src/nm-netlink-monitor.c       2007-04-18 20:13:06.000000000 +0200
12293 +++ NetworkManager-SVNr3284/src/nm-netlink-monitor.c    2008-02-04 16:00:13.000000000 +0100
12294 @@ -174,7 +174,7 @@
12295         }
12296  
12297         monitor_address.nl_family = AF_NETLINK;
12298 -       monitor_address.nl_pid = getpid ();
12299 +       monitor_address.nl_pid = UINT_MAX;
12300         monitor_address.nl_groups = RTMGRP_LINK;
12301  
12302         if (bind (fd, 
12303 @@ -365,7 +365,7 @@
12304         packet.header.nlmsg_len = NLMSG_LENGTH (sizeof (struct rtgenmsg));
12305         packet.header.nlmsg_flags = NLM_F_ROOT | NLM_F_MATCH | NLM_F_REQUEST;
12306         packet.header.nlmsg_type = RTM_GETLINK;
12307 -       packet.header.nlmsg_pid = getpid ();
12308 +       packet.header.nlmsg_pid = UINT_MAX;
12309         /* Might be good to generate a unique sequence number and track
12310            the response */
12311         packet.header.nlmsg_seq = sequence_number << 16;
12312 diff -urN NetworkManager-0.6.5/src/nm-supplicant.c NetworkManager-SVNr3284/src/nm-supplicant.c
12313 --- NetworkManager-0.6.5/src/nm-supplicant.c    1970-01-01 01:00:00.000000000 +0100
12314 +++ NetworkManager-SVNr3284/src/nm-supplicant.c 2008-02-04 16:00:13.000000000 +0100
12315 @@ -0,0 +1,420 @@
12316 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
12317 +
12318 +#include <signal.h>
12319 +#include <sys/wait.h>
12320 +#include <unistd.h>
12321 +
12322 +#include "nm-supplicant.h"
12323 +#include "NetworkManagerUtils.h"
12324 +#include "nm-utils.h"
12325 +#include "wpa_ctrl.h"
12326 +
12327 +
12328 +/****************************************************************************/
12329 +/* WPA Supplicant control stuff
12330 + *
12331 + * Originally from:
12332 + *
12333 + *     wpa_supplicant wrapper
12334 + *
12335 + *     Copyright (C) 2005 Kay Sievers <kay.sievers@vrfy.org>
12336 + *
12337 + *     This program is free software; you can redistribute it and/or modify it
12338 + *     under the terms of the GNU General Public License as published by the
12339 + *     Free Software Foundation version 2 of the License.
12340 + */
12341 +
12342 +#define WPA_SUPPLICANT_GLOBAL_SOCKET           LOCALSTATEDIR"/run/wpa_supplicant-global"
12343 +#define WPA_SUPPLICANT_CONTROL_SOCKET          LOCALSTATEDIR"/run/wpa_supplicant"
12344 +#define WPA_SUPPLICANT_NUM_RETRIES             20
12345 +#define WPA_SUPPLICANT_RETRY_TIME_US           100*1000
12346 +
12347 +G_DEFINE_TYPE (NMSupplicant, nm_supplicant, G_TYPE_OBJECT)
12348 +
12349 +#define NM_SUPPLICANT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SUPPLICANT, NMSupplicantPrivate))
12350 +
12351 +typedef struct {
12352 +       GPid pid;
12353 +       GSource *watch;
12354 +       GSource *status;
12355 +       GSource *timeout;
12356 +       struct wpa_ctrl *ctrl;
12357 +
12358 +       char *socket_path;
12359 +       char *message;
12360 +} NMSupplicantPrivate;
12361 +
12362 +enum {
12363 +       STATE_CHANGED,
12364 +       DOWN,
12365 +
12366 +       LAST_SIGNAL
12367 +};
12368 +
12369 +static guint signals[LAST_SIGNAL] = { 0 };
12370 +
12371 +NMSupplicant *
12372 +nm_supplicant_new (void)
12373 +{
12374 +       return (NMSupplicant *) g_object_new (NM_TYPE_SUPPLICANT, NULL);
12375 +}
12376 +
12377 +void
12378 +nm_supplicant_remove_timeout (NMSupplicant *self)
12379 +{
12380 +       NMSupplicantPrivate *priv = NM_SUPPLICANT_GET_PRIVATE (self);
12381 +
12382 +       /* Remove any pending timeouts on the request */
12383 +       if (priv->timeout != NULL) {
12384 +               g_source_destroy (priv->timeout);
12385 +               priv->timeout = NULL;
12386 +       }
12387 +}
12388 +
12389 +void
12390 +nm_supplicant_down (NMSupplicant *self)
12391 +{
12392 +       NMSupplicantPrivate *priv;
12393 +
12394 +       g_return_if_fail (NM_IS_SUPPLICANT (self));
12395 +
12396 +       priv = NM_SUPPLICANT_GET_PRIVATE (self);
12397 +
12398 +       if (priv->pid > 0) {
12399 +               kill (priv->pid, SIGTERM);
12400 +               priv->pid = -1;
12401 +       }
12402 +
12403 +       if (priv->watch) {
12404 +               g_source_destroy (priv->watch);
12405 +               priv->watch = NULL;
12406 +       }
12407 +
12408 +       if (priv->status) {
12409 +               g_source_destroy (priv->status);
12410 +               priv->status = NULL;
12411 +       }
12412 +
12413 +       if (priv->ctrl) {
12414 +               wpa_ctrl_close (priv->ctrl);
12415 +               priv->ctrl = NULL;
12416 +       }
12417 +
12418 +       nm_supplicant_remove_timeout (self);
12419 +
12420 +       /* HACK: should be fixed in wpa_supplicant.  Will likely
12421 +        * require accomodations for selinux.
12422 +        */
12423 +       unlink (WPA_SUPPLICANT_GLOBAL_SOCKET);
12424 +       unlink (priv->socket_path);
12425 +
12426 +       g_signal_emit (self, signals[DOWN], 0);
12427 +}
12428 +
12429 +static void
12430 +supplicant_watch_done (gpointer user_data)
12431 +{
12432 +       NMSupplicantPrivate *priv = NM_SUPPLICANT_GET_PRIVATE (user_data);
12433 +
12434 +       priv->watch = NULL;
12435 +}
12436 +
12437 +static void
12438 +supplicant_watch_cb (GPid pid,
12439 +                     gint status,
12440 +                     gpointer user_data)
12441 +{
12442 +       NMSupplicant *self = NM_SUPPLICANT (user_data);
12443 +
12444 +       if (WIFEXITED (status))
12445 +               nm_warning ("wpa_supplicant exited with error code %d", WEXITSTATUS (status));
12446 +       else if (WIFSTOPPED (status)) 
12447 +               nm_warning ("wpa_supplicant stopped unexpectedly with signal %d", WSTOPSIG (status));
12448 +       else if (WIFSIGNALED (status))
12449 +               nm_warning ("wpa_supplicant died with signal %d", WTERMSIG (status));
12450 +       else
12451 +               nm_warning ("wpa_supplicant died from an unknown cause");
12452 +
12453 +       nm_supplicant_down (self);
12454 +}
12455 +
12456 +/*
12457 + * supplicant_child_setup
12458 + *
12459 + * Set the process group ID of the newly forked process
12460 + *
12461 + */
12462 +static void
12463 +supplicant_child_setup (gpointer user_data G_GNUC_UNUSED)
12464 +{
12465 +       /* We are in the child process at this point */
12466 +       pid_t pid = getpid ();
12467 +       setpgid (pid, pid);
12468 +}
12469 +
12470 +gboolean
12471 +nm_supplicant_exec (NMSupplicant *self,
12472 +                               GMainContext *ctx)
12473 +{
12474 +       gboolean success;
12475 +       char *argv[4];
12476 +       GPid pid;
12477 +       GError *err = NULL;
12478 +
12479 +       g_return_val_if_fail (NM_IS_SUPPLICANT (self), FALSE);
12480 +
12481 +       argv[0] = WPA_SUPPLICANT_BIN;
12482 +       argv[1] = "-g";
12483 +       argv[2] = WPA_SUPPLICANT_GLOBAL_SOCKET;
12484 +       argv[3] = NULL;
12485 +
12486 +       success = g_spawn_async ("/", argv, NULL, 0, &supplicant_child_setup, NULL, &pid, &err);
12487 +       if (!success) {
12488 +               if (err) {
12489 +                       nm_warning ("Couldn't start wpa_supplicant. Error: (%d) %s", err->code, err->message);
12490 +                       g_error_free (err);
12491 +               } else
12492 +                       nm_warning ("Couldn't start wpa_supplicant due to an unknown error.");
12493 +       } else {
12494 +               NMSupplicantPrivate *priv = NM_SUPPLICANT_GET_PRIVATE (self);
12495 +
12496 +               /* Monitor the child process so we know when it stops */
12497 +               priv->pid = pid;
12498 +               if (priv->watch)
12499 +                       g_source_destroy (priv->watch);
12500 +
12501 +               priv->watch = g_child_watch_source_new (pid);
12502 +               g_source_set_callback (priv->watch,
12503 +                                                  (GSourceFunc) supplicant_watch_cb,
12504 +                                                  self,
12505 +                                                  supplicant_watch_done);
12506 +               g_source_attach (priv->watch, ctx);
12507 +               g_source_unref (priv->watch);
12508 +       }
12509 +
12510 +       return success;
12511 +}
12512 +
12513 +gboolean
12514 +nm_supplicant_interface_init (NMSupplicant *self, 
12515 +                                               const char *iface,
12516 +                                               const char *supplicant_driver)
12517 +{
12518 +       NMSupplicantPrivate *priv;
12519 +       struct wpa_ctrl *ctrl = NULL;
12520 +       int tries;
12521 +
12522 +       g_return_val_if_fail (NM_IS_SUPPLICANT (self), FALSE);
12523 +       g_return_val_if_fail (iface != NULL, FALSE);
12524 +
12525 +       /* Try to open wpa_supplicant's global control socket */
12526 +       for (tries = 0; tries < WPA_SUPPLICANT_NUM_RETRIES && !ctrl; tries++) {
12527 +               ctrl = wpa_ctrl_open (WPA_SUPPLICANT_GLOBAL_SOCKET, NM_RUN_DIR);
12528 +               g_usleep (WPA_SUPPLICANT_RETRY_TIME_US);
12529 +       }
12530 +
12531 +       if (!ctrl) {
12532 +               nm_info ("Error opening supplicant global control interface.");
12533 +               return FALSE;
12534 +       }
12535 +
12536 +       /* wpa_cli -g/var/run/wpa_supplicant-global interface_add eth1 "" wext /var/run/wpa_supplicant */
12537 +       if (!nm_utils_supplicant_request_with_check (ctrl, "OK", __func__, NULL,
12538 +                                                                               "INTERFACE_ADD %s\t\t%s\t" WPA_SUPPLICANT_CONTROL_SOCKET "\t",
12539 +                                                                               iface, supplicant_driver)) {
12540 +               wpa_ctrl_close (ctrl);
12541 +               return FALSE;
12542 +       }
12543 +
12544 +       wpa_ctrl_close (ctrl);
12545 +
12546 +       priv = NM_SUPPLICANT_GET_PRIVATE (self);
12547 +
12548 +       /* Get a control socket to wpa_supplicant for this interface.
12549 +        * Try a couple times to work around naive socket naming
12550 +        * in wpa_ctrl that sometimes collides with stale ones.
12551 +        */
12552 +       priv->socket_path = g_strdup_printf (WPA_SUPPLICANT_CONTROL_SOCKET "/%s", iface);
12553 +
12554 +       while (!priv->ctrl && (tries++ < 10))
12555 +               priv->ctrl = wpa_ctrl_open (priv->socket_path, NM_RUN_DIR);
12556 +
12557 +       if (!priv->ctrl)
12558 +               nm_info ("Error opening control interface to supplicant.");
12559 +
12560 +       return priv->ctrl != NULL;
12561 +}
12562 +
12563 +static void
12564 +supplicant_status_done (gpointer user_data)
12565 +{
12566 +       NMSupplicantPrivate *priv = NM_SUPPLICANT_GET_PRIVATE (user_data);
12567 +
12568 +       priv->status = NULL;
12569 +}
12570 +
12571 +static void
12572 +supplicant_state_changed (NMSupplicant *self, gboolean up)
12573 +{
12574 +       nm_info ("Supplicant state changed: %d", up);
12575 +       g_signal_emit (self, signals[STATE_CHANGED], 0, up);
12576 +}
12577 +
12578 +#define MESSAGE_LEN    2048
12579 +
12580 +static gboolean
12581 +supplicant_status_cb (GIOChannel *source,
12582 +                      GIOCondition condition,
12583 +                      gpointer user_data)
12584 +{
12585 +       NMSupplicant *self = NM_SUPPLICANT (user_data);
12586 +       NMSupplicantPrivate *priv = NM_SUPPLICANT_GET_PRIVATE (self);
12587 +       size_t len = MESSAGE_LEN;
12588 +
12589 +       wpa_ctrl_recv (priv->ctrl, priv->message, &len);
12590 +       priv->message[len] = '\0';
12591 +
12592 +       if (strstr (priv->message, WPA_EVENT_CONNECTED) != NULL)
12593 +               supplicant_state_changed (self, TRUE);
12594 +       else if (strstr (priv->message, WPA_EVENT_DISCONNECTED) != NULL)
12595 +               supplicant_state_changed (self, FALSE);
12596 +
12597 +       return TRUE;
12598 +}
12599 +
12600 +typedef struct {
12601 +       NMSupplicant *supplicant;
12602 +       GSourceFunc callback;
12603 +       gpointer user_data;
12604 +} TimeoutInfo;
12605 +
12606 +static void
12607 +supplicant_timeout_done (gpointer user_data)
12608 +{
12609 +       TimeoutInfo *info = (TimeoutInfo *) user_data;
12610 +
12611 +       NM_SUPPLICANT_GET_PRIVATE (info->supplicant)->timeout = NULL;
12612 +
12613 +       g_free (info);
12614 +}
12615 +
12616 +static void
12617 +supplicant_timeout_cb (gpointer user_data)
12618 +{
12619 +       TimeoutInfo *info = (TimeoutInfo *) user_data;
12620 +
12621 +       info->callback (info->user_data);
12622 +}
12623 +
12624 +gboolean
12625 +nm_supplicant_monitor_start (NMSupplicant *self,
12626 +                                           GMainContext *context,
12627 +                                           guint32 timeout,
12628 +                                           GSourceFunc timeout_cb,
12629 +                                           gpointer user_data)
12630 +{
12631 +       NMSupplicantPrivate *priv;
12632 +       int fd;
12633 +       GIOChannel *channel;
12634 +
12635 +       g_return_val_if_fail (NM_IS_SUPPLICANT (self), FALSE);
12636 +
12637 +       priv = NM_SUPPLICANT_GET_PRIVATE (self);
12638 +
12639 +       /* register network event monitor */
12640 +       if (wpa_ctrl_attach (priv->ctrl) != 0)
12641 +               return FALSE;
12642 +
12643 +       if ((fd = wpa_ctrl_get_fd (priv->ctrl)) < 0)
12644 +               return FALSE;
12645 +
12646 +       channel = g_io_channel_unix_new (fd);
12647 +       priv->status = g_io_create_watch (channel, G_IO_IN);
12648 +       g_io_channel_unref (channel);
12649 +       g_source_set_callback (priv->status,
12650 +                                          (GSourceFunc) supplicant_status_cb,
12651 +                                          self,
12652 +                                          supplicant_status_done);
12653 +       g_source_attach (priv->status, context);
12654 +       g_source_unref (priv->status);
12655 +
12656 +       if (timeout_cb) {
12657 +               TimeoutInfo *info;
12658 +
12659 +               info = g_new (TimeoutInfo, 1);
12660 +               info->supplicant = self;
12661 +               info->callback = timeout_cb;
12662 +               info->user_data = user_data;
12663 +
12664 +               priv->timeout = g_timeout_source_new (timeout * 1000);
12665 +               g_source_set_callback (priv->timeout,
12666 +                                                  (GSourceFunc) supplicant_timeout_cb,
12667 +                                                  info,
12668 +                                                  supplicant_timeout_done);
12669 +               g_source_attach (priv->timeout, context);
12670 +               g_source_unref (priv->timeout);
12671 +       }
12672 +
12673 +       return TRUE;
12674 +}
12675 +
12676 +struct wpa_ctrl *
12677 +nm_supplicant_get_ctrl (NMSupplicant *self)
12678 +{
12679 +       g_return_val_if_fail (NM_IS_SUPPLICANT (self), NULL);
12680 +
12681 +       return NM_SUPPLICANT_GET_PRIVATE (self)->ctrl;
12682 +}
12683 +
12684 +/*****************************************************************************/
12685 +
12686 +static void
12687 +nm_supplicant_init (NMSupplicant *supplicant)
12688 +{
12689 +       NMSupplicantPrivate *priv = NM_SUPPLICANT_GET_PRIVATE (supplicant);
12690 +
12691 +       priv->message = g_malloc (MESSAGE_LEN);
12692 +}
12693 +
12694 +static void
12695 +finalize (GObject *object)
12696 +{
12697 +       NMSupplicantPrivate *priv = NM_SUPPLICANT_GET_PRIVATE (object);
12698 +
12699 +       nm_supplicant_down (NM_SUPPLICANT (object));
12700 +
12701 +       g_free (priv->socket_path);
12702 +       g_free (priv->message);
12703 +
12704 +       G_OBJECT_CLASS (nm_supplicant_parent_class)->finalize (object);
12705 +}
12706 +
12707 +static void
12708 +nm_supplicant_class_init (NMSupplicantClass *supplicant_class)
12709 +{
12710 +       GObjectClass *object_class = G_OBJECT_CLASS (supplicant_class);
12711 +
12712 +       g_type_class_add_private (supplicant_class, sizeof (NMSupplicantPrivate));
12713 +
12714 +       object_class->finalize = finalize;
12715 +
12716 +       /* signals */
12717 +       signals[STATE_CHANGED] =
12718 +               g_signal_new ("state-changed",
12719 +                                   G_OBJECT_CLASS_TYPE (object_class),
12720 +                                   G_SIGNAL_RUN_FIRST,
12721 +                                   G_STRUCT_OFFSET (NMSupplicantClass, state_changed),
12722 +                                   NULL, NULL,
12723 +                                   g_cclosure_marshal_VOID__BOOLEAN,
12724 +                                   G_TYPE_NONE, 1,
12725 +                                   G_TYPE_BOOLEAN);
12726 +
12727 +       signals[DOWN] =
12728 +               g_signal_new ("down",
12729 +                                   G_OBJECT_CLASS_TYPE (object_class),
12730 +                                   G_SIGNAL_RUN_FIRST,
12731 +                                   G_STRUCT_OFFSET (NMSupplicantClass, down),
12732 +                                   NULL, NULL,
12733 +                                   g_cclosure_marshal_VOID__VOID,
12734 +                                   G_TYPE_NONE, 0);
12735 +}
12736 diff -urN NetworkManager-0.6.5/src/nm-supplicant.h NetworkManager-SVNr3284/src/nm-supplicant.h
12737 --- NetworkManager-0.6.5/src/nm-supplicant.h    1970-01-01 01:00:00.000000000 +0100
12738 +++ NetworkManager-SVNr3284/src/nm-supplicant.h 2008-02-04 16:00:13.000000000 +0100
12739 @@ -0,0 +1,53 @@
12740 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
12741 +
12742 +#ifndef NM_SUPPLICANT_H
12743 +#define NM_SUPPLICANT_H 1
12744 +
12745 +#include <glib/gtypes.h>
12746 +#include <glib-object.h>
12747 +
12748 +#define NM_TYPE_SUPPLICANT            (nm_supplicant_get_type ())
12749 +#define NM_SUPPLICANT(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_SUPPLICANT, NMSupplicant))
12750 +#define NM_SUPPLICANT_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), NM_TYPE_SUPPLICANT, NMSupplicantClass))
12751 +#define NM_IS_SUPPLICANT(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NM_TYPE_SUPPLICANT))
12752 +#define NM_IS_SUPPLICANT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), NM_TYPE_SUPPLICANT))
12753 +#define NM_SUPPLICANT_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_SUPPLICANT, NMSupplicantClass))
12754 +
12755 +typedef struct {
12756 +       GObject parent;
12757 +} NMSupplicant;
12758 +
12759 +typedef struct {
12760 +       GObjectClass parent;
12761 +
12762 +       /* Signals */
12763 +       void (*state_changed) (NMSupplicant *supplicant,
12764 +                                          gboolean connected);
12765 +
12766 +       void (*down) (NMSupplicant *supplicant);
12767 +} NMSupplicantClass;
12768 +
12769 +GType nm_supplicant_get_type (void);
12770 +
12771 +NMSupplicant *nm_supplicant_new (void);
12772 +gboolean      nm_supplicant_exec (NMSupplicant *self,
12773 +                                                   GMainContext *ctx);
12774 +
12775 +gboolean      nm_supplicant_interface_init (NMSupplicant *self, 
12776 +                                                                   const char *iface,
12777 +                                                                   const char *supplicant_driver);
12778 +
12779 +gboolean      nm_supplicant_monitor_start  (NMSupplicant *self,
12780 +                                                                   GMainContext *context,
12781 +                                                                   guint32 timeout,
12782 +                                                                   GSourceFunc timeout_cb,
12783 +                                                                   gpointer user_data);
12784 +
12785 +void          nm_supplicant_remove_timeout (NMSupplicant *self);
12786 +
12787 +void          nm_supplicant_down           (NMSupplicant *self);
12788 +
12789 +struct wpa_ctrl *nm_supplicant_get_ctrl     (NMSupplicant *self);
12790 +
12791 +
12792 +#endif /* NM_SUPPLICANT_H */
12793 diff -urN NetworkManager-0.6.5/src/nm-wired-network.c NetworkManager-SVNr3284/src/nm-wired-network.c
12794 --- NetworkManager-0.6.5/src/nm-wired-network.c 1970-01-01 01:00:00.000000000 +0100
12795 +++ NetworkManager-SVNr3284/src/nm-wired-network.c      2008-02-04 16:00:13.000000000 +0100
12796 @@ -0,0 +1,89 @@
12797 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
12798 +
12799 +#include "nm-wired-network.h"
12800 +
12801 +G_DEFINE_TYPE (NMWiredNetwork, nm_wired_network, G_TYPE_OBJECT)
12802 +
12803 +#define NM_WIRED_NETWORK_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_WIRED_NETWORK, NMWiredNetworkPrivate))
12804 +
12805 +typedef struct {
12806 +       char *network_id;
12807 +       NMAPSecurity *security;
12808 +} NMWiredNetworkPrivate;
12809 +
12810 +NMWiredNetwork *
12811 +nm_wired_network_new (const char *network_id, NMAPSecurity *security)
12812 +{
12813 +       NMWiredNetwork *wired_net;
12814 +       NMWiredNetworkPrivate *priv;
12815 +
12816 +       g_return_val_if_fail (network_id != NULL, NULL);
12817 +       g_return_val_if_fail (security != NULL, NULL);
12818 +
12819 +       wired_net = (NMWiredNetwork *) g_object_new (NM_TYPE_WIRED_NETWORK, NULL);
12820 +       if (!wired_net)
12821 +               return NULL;
12822 +
12823 +       priv = NM_WIRED_NETWORK_GET_PRIVATE (wired_net);
12824 +       priv->network_id = g_strdup (network_id);
12825 +       priv->security = g_object_ref (security);
12826 +
12827 +       return wired_net;
12828 +}
12829 +
12830 +const char *
12831 +nm_wired_network_get_network_id (NMWiredNetwork *net)
12832 +{
12833 +       g_return_val_if_fail (NM_IS_WIRED_NETWORK (net), NULL);
12834 +
12835 +       return NM_WIRED_NETWORK_GET_PRIVATE (net)->network_id;
12836 +}
12837 +
12838 +NMAPSecurity *
12839 +nm_wired_network_get_security (NMWiredNetwork *net)
12840 +{
12841 +       g_return_val_if_fail (NM_IS_WIRED_NETWORK (net), NULL);
12842 +
12843 +       return NM_WIRED_NETWORK_GET_PRIVATE (net)->security;
12844 +}
12845 +
12846 +void
12847 +nm_wired_network_set_security (NMWiredNetwork *net, NMAPSecurity *security)
12848 +{
12849 +       NMWiredNetworkPrivate *priv;
12850 +
12851 +       g_return_if_fail (NM_IS_WIRED_NETWORK (net));
12852 +
12853 +       priv = NM_WIRED_NETWORK_GET_PRIVATE (net);
12854 +       if (priv->security)
12855 +               g_object_unref (priv->security);
12856 +
12857 +       priv->security = security ? g_object_ref (security) : NULL;
12858 +}
12859 +
12860 +
12861 +static void
12862 +nm_wired_network_init (NMWiredNetwork *wired_net)
12863 +{
12864 +}
12865 +
12866 +static void
12867 +finalize (GObject *object)
12868 +{
12869 +       NMWiredNetworkPrivate *priv = NM_WIRED_NETWORK_GET_PRIVATE (object);
12870 +
12871 +       g_free (priv->network_id);
12872 +       g_object_unref (priv->security);
12873 +
12874 +       G_OBJECT_CLASS (nm_wired_network_parent_class)->finalize (object);
12875 +}
12876 +
12877 +static void
12878 +nm_wired_network_class_init (NMWiredNetworkClass *wired_class)
12879 +{
12880 +       GObjectClass *object_class = G_OBJECT_CLASS (wired_class);
12881 +
12882 +       g_type_class_add_private (wired_class, sizeof (NMWiredNetworkPrivate));
12883 +
12884 +       object_class->finalize = finalize;
12885 +}
12886 diff -urN NetworkManager-0.6.5/src/nm-wired-network.h NetworkManager-SVNr3284/src/nm-wired-network.h
12887 --- NetworkManager-0.6.5/src/nm-wired-network.h 1970-01-01 01:00:00.000000000 +0100
12888 +++ NetworkManager-SVNr3284/src/nm-wired-network.h      2008-02-04 16:00:13.000000000 +0100
12889 @@ -0,0 +1,35 @@
12890 +/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */
12891 +
12892 +#ifndef NM_WIRED_NETWORK_H
12893 +#define NM_WIRED_NETWORK_H 1
12894 +
12895 +#include <glib/gtypes.h>
12896 +#include <glib-object.h>
12897 +#include "nm-ap-security.h"
12898 +
12899 +#define NM_TYPE_WIRED_NETWORK            (nm_wired_network_get_type ())
12900 +#define NM_WIRED_NETWORK(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_WIRED_NETWORK, NMWiredNetwork))
12901 +#define NM_WIRED_NETWORK_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), NM_TYPE_WIRED_NETWORK, NMWiredNetworkClass))
12902 +#define NM_IS_WIRED_NETWORK(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NM_TYPE_WIRED_NETWORK))
12903 +#define NM_IS_WIRED_NETWORK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), NM_TYPE_WIRED_NETWORK))
12904 +#define NM_WIRED_NETWORK_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_WIRED_NETWORK, NMWiredNetworkClass))
12905 +
12906 +typedef struct {
12907 +       GObject parent;
12908 +} NMWiredNetwork;
12909 +
12910 +typedef struct {
12911 +       GObjectClass parent;
12912 +} NMWiredNetworkClass;
12913 +
12914 +GType nm_wired_network_get_type (void);
12915 +
12916 +NMWiredNetwork *nm_wired_network_new            (const char     *network_id,
12917 +                                                                           NMAPSecurity   *security);
12918 +
12919 +const char     *nm_wired_network_get_network_id (NMWiredNetwork *net);
12920 +NMAPSecurity   *nm_wired_network_get_security   (NMWiredNetwork *net);
12921 +void            nm_wired_network_set_security   (NMWiredNetwork *net,
12922 +                                                                           NMAPSecurity   *security);
12923 +
12924 +#endif /* NM_WIRED_NETWORK_H */
12925 diff -urN NetworkManager-0.6.5/src/vpn-manager/nm-dbus-vpn.c NetworkManager-SVNr3284/src/vpn-manager/nm-dbus-vpn.c
12926 --- NetworkManager-0.6.5/src/vpn-manager/nm-dbus-vpn.c  2007-04-18 20:13:05.000000000 +0200
12927 +++ NetworkManager-SVNr3284/src/vpn-manager/nm-dbus-vpn.c       2008-02-04 16:00:09.000000000 +0100
12928 @@ -410,8 +410,6 @@
12929         NMData *                        data = (NMData *) user_data;
12930         DBusMessage *           reply;
12931         DBusMessageIter iter, array_iter;
12932 -       GSList *                        remove_list = NULL;
12933 -       GSList *                        elt;
12934  
12935         g_return_if_fail (pcall);
12936         g_return_if_fail (data != NULL);
12937 @@ -427,22 +425,15 @@
12938  
12939         nm_info ("Updating VPN Connections...");
12940  
12941 -       remove_list = nm_vpn_manager_vpn_connection_list_copy (data->vpn_manager);
12942 -
12943         dbus_message_iter_init (reply, &iter);
12944         dbus_message_iter_recurse (&iter, &array_iter);
12945         while (dbus_message_iter_get_arg_type (&array_iter) == DBUS_TYPE_STRING)
12946         {
12947                 DBusMessage *           message;
12948                 const char *            con_name;
12949 -               NMVPNConnection *       vpn;
12950  
12951                 dbus_message_iter_get_basic (&array_iter, &con_name);
12952  
12953 -               /* If the connection already exists, remove it from the remove list */
12954 -               if ((vpn = nm_vpn_manager_find_connection_by_name (data->vpn_manager, con_name)))
12955 -                       remove_list = g_slist_remove (remove_list, vpn);
12956 -
12957                 if ((message = dbus_message_new_method_call (NMI_DBUS_SERVICE, NMI_DBUS_PATH, NMI_DBUS_INTERFACE, "getVPNConnectionProperties")))
12958                 {
12959                         DBusPendingCall *               vpn_pcall = NULL;
12960 @@ -463,15 +454,6 @@
12961         }
12962         dbus_message_unref (reply);
12963  
12964 -       /* VPN connections left in the remove list aren't known by NMI, therefore we delete them */
12965 -       for (elt = remove_list; elt; elt = g_slist_next (elt))
12966 -       {
12967 -               nm_vpn_manager_remove_connection (data->vpn_manager, elt->data);
12968 -               nm_vpn_connection_unref (elt->data);
12969 -       }
12970 -
12971 -       g_slist_free (remove_list);
12972 -
12973  out:
12974         dbus_pending_call_unref (pcall);
12975  }
12976 @@ -527,6 +509,8 @@
12977         g_return_val_if_fail (data->dbus_connection != NULL, FALSE);
12978         g_return_val_if_fail (data->vpn_manager != NULL, FALSE);
12979  
12980 +       nm_vpn_manager_clear_connections (data->vpn_manager);
12981 +
12982         if (!(message = dbus_message_new_method_call (NMI_DBUS_SERVICE, NMI_DBUS_PATH, NMI_DBUS_INTERFACE, "getVPNConnections")))
12983         {
12984                 nm_warning ("nm_dbus_vpn_connections_update (): Couldn't allocate the dbus message");
12985 diff -urN NetworkManager-0.6.5/src/vpn-manager/nm-vpn-manager.c NetworkManager-SVNr3284/src/vpn-manager/nm-vpn-manager.c
12986 --- NetworkManager-0.6.5/src/vpn-manager/nm-vpn-manager.c       2007-04-18 20:13:05.000000000 +0200
12987 +++ NetworkManager-SVNr3284/src/vpn-manager/nm-vpn-manager.c    2008-02-04 16:00:09.000000000 +0100
12988 @@ -130,28 +130,6 @@
12989  
12990  
12991  /*
12992 - * nm_vpn_manager_vpn_connection_list_copy
12993 - *
12994 - * Make a shallow copy of the VPN connection list, should
12995 - * only be used by nm-dbus-vpn.c
12996 - *
12997 - */
12998 -GSList *nm_vpn_manager_vpn_connection_list_copy (NMVPNManager *manager)
12999 -{
13000 -       GSList *        list;
13001 -       GSList *        elt;
13002 -
13003 -       g_return_val_if_fail (manager != NULL, NULL);
13004 -
13005 -       list = g_slist_copy (manager->connections);
13006 -       for (elt = list; elt; elt = g_slist_next (elt))
13007 -               nm_vpn_connection_ref (elt->data);
13008 -
13009 -       return list;
13010 -}
13011 -
13012 -
13013 -/*
13014   * nm_vpn_manager_add_connection
13015   *
13016   * Add a new VPN connection if none already exits, otherwise update the existing one.
13017 @@ -227,6 +205,29 @@
13018  
13019  
13020  /*
13021 + * nm_vpn_manager_clear_connections
13022 + *
13023 + * Remove all VPN connections.
13024 + *
13025 + */
13026 +void
13027 +nm_vpn_manager_clear_connections (NMVPNManager *manager)
13028 +{
13029 +       GSList *connections;
13030 +       GSList *iter;
13031 +
13032 +       g_return_if_fail (manager != NULL);
13033 +
13034 +       connections = g_slist_copy (manager->connections);
13035 +
13036 +       for (iter = connections; iter; iter = iter->next)
13037 +               nm_vpn_manager_remove_connection (manager, (NMVPNConnection *) iter->data);
13038 +
13039 +       g_slist_free (connections);
13040 +}
13041 +
13042 +
13043 +/*
13044   * nm_vpn_manager_get_connection_names
13045   *
13046   * Return an array of strings of all the VPN Connection names
13047 diff -urN NetworkManager-0.6.5/src/vpn-manager/nm-vpn-manager.h NetworkManager-SVNr3284/src/vpn-manager/nm-vpn-manager.h
13048 --- NetworkManager-0.6.5/src/vpn-manager/nm-vpn-manager.h       2007-04-18 20:13:05.000000000 +0200
13049 +++ NetworkManager-SVNr3284/src/vpn-manager/nm-vpn-manager.h    2008-02-04 16:00:09.000000000 +0100
13050 @@ -29,13 +29,12 @@
13051  NMVPNManager *         nm_vpn_manager_new                                              (NMData *app_data);
13052  NMVPNConnection *      nm_vpn_manager_add_connection                           (NMVPNManager *manager, const char *name, const char *service_name, const char *user_name);
13053  void                           nm_vpn_manager_remove_connection                        (NMVPNManager *manager, NMVPNConnection *vpn);
13054 +void                           nm_vpn_manager_clear_connections                        (NMVPNManager *manager);
13055  char   **                      nm_vpn_manager_get_connection_names             (NMVPNManager *manager);
13056  void                           nm_vpn_manager_dispose                                  (NMVPNManager *manager);
13057  
13058  NMVPNActRequest *      nm_vpn_manager_get_vpn_act_request                      (NMVPNManager *manager);
13059  
13060 -GSList *                       nm_vpn_manager_vpn_connection_list_copy         (NMVPNManager *manager);
13061 -
13062  void                           nm_vpn_manager_activate_vpn_connection          (NMVPNManager *manager, NMVPNConnection *vpn, char **password_items,
13063                                                                                 int password_count, char **data_items, int data_count,
13064                                                                                 char **user_routes, int user_routes_count );
13065 diff -urN NetworkManager-0.6.5/test/libnm_glib_test.c NetworkManager-SVNr3284/test/libnm_glib_test.c
13066 --- NetworkManager-0.6.5/test/libnm_glib_test.c 2007-04-18 20:13:03.000000000 +0200
13067 +++ NetworkManager-SVNr3284/test/libnm_glib_test.c      2008-02-04 15:59:52.000000000 +0100
13068 @@ -23,6 +23,8 @@
13069  #include <stdio.h>
13070  #include <stdlib.h>
13071  #include <string.h>
13072 +#include <signal.h>
13073 +
13074  #include "libnm_glib.h"
13075  
13076  
13077 @@ -56,10 +58,33 @@
13078         }
13079  }
13080  
13081 +static GMainLoop *loop = NULL;
13082 +
13083 +static void
13084 +signal_handler (int signo)
13085 +{
13086 +       if (signo == SIGINT || signo == SIGTERM) {
13087 +               g_message ("Caught signal %d, shutting down...", signo);
13088 +               g_main_loop_quit (loop);
13089 +       }
13090 +}
13091 +
13092 +static void
13093 +setup_signals (void)
13094 +{
13095 +       struct sigaction action;
13096 +       sigset_t mask;
13097 +
13098 +       sigemptyset (&mask);
13099 +       action.sa_handler = signal_handler;
13100 +       action.sa_mask = mask;
13101 +       action.sa_flags = 0;
13102 +       sigaction (SIGTERM,  &action, NULL);
13103 +       sigaction (SIGINT,  &action, NULL);
13104 +}
13105  
13106  int main( int argc, char *argv[] )
13107  {
13108 -       GMainLoop       *loop;
13109         libnm_glib_ctx *ctx;
13110         guint id;
13111  
13112 @@ -79,7 +104,10 @@
13113         fprintf (stderr, "Registered Callback with ID %d\n", id);
13114  
13115         loop = g_main_loop_new (NULL, FALSE);
13116 +       setup_signals ();
13117         g_main_loop_run (loop);
13118  
13119 +       libnm_glib_shutdown (ctx);
13120 +
13121         exit (0);
13122  }
13123 diff -urN NetworkManager-0.6.5/test/nm-dhcp-opt-test.c NetworkManager-SVNr3284/test/nm-dhcp-opt-test.c
13124 --- NetworkManager-0.6.5/test/nm-dhcp-opt-test.c        1970-01-01 01:00:00.000000000 +0100
13125 +++ NetworkManager-SVNr3284/test/nm-dhcp-opt-test.c     2008-02-04 15:59:52.000000000 +0100
13126 @@ -0,0 +1,270 @@
13127 +/* nm-dhcp-opt-test - test app for NetworkManager's DHCP Options interface
13128 + *
13129 + * Dan Williams <dcbw@redhat.com>
13130 + *
13131 + * This program is free software; you can redistribute it and/or modify
13132 + * it under the terms of the GNU General Public License as published by
13133 + * the Free Software Foundation; either version 2 of the License, or
13134 + * (at your option) any later version.
13135 + *
13136 + * This program is distributed in the hope that it will be useful,
13137 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
13138 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13139 + * GNU General Public License for more details.
13140 + *
13141 + * You should have received a copy of the GNU General Public License
13142 + * along with this program; if not, write to the Free Software
13143 + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
13144 + *
13145 + * (C) Copyright 2005 Red Hat, Inc.
13146 + */
13147 +
13148 +#include <glib.h>
13149 +#include <dbus/dbus.h>
13150 +#include <dbus/dbus-glib.h>
13151 +#include <stdio.h>
13152 +#include <string.h>
13153 +#include <stdlib.h>
13154 +
13155 +#include <sys/socket.h>
13156 +#include <netinet/in.h>
13157 +#include <arpa/inet.h>
13158 +
13159 +#include "NetworkManager.h"
13160 +
13161 +/* Return codes for functions that use dbus */
13162 +enum
13163 +{
13164 +       RETURN_SUCCESS = 1,
13165 +       RETURN_FAILURE = 0,
13166 +       RETURN_NO_NM = -1
13167 +};
13168 +
13169 +
13170 +#define        DBUS_NO_SERVICE_ERROR                   "org.freedesktop.DBus.Error.ServiceDoesNotExist"
13171 +#define        NM_DHCP_OPT_NOT_FOUND_ERROR             "org.freedesktop.NetworkManager.OptionNotFound"
13172 +
13173 +static char *dbus_type_to_string (int type)
13174 +{
13175 +       switch (type)
13176 +       {
13177 +               case DBUS_TYPE_UINT32:
13178 +                       return "uint32";
13179 +
13180 +               case DBUS_TYPE_BOOLEAN:
13181 +                       return "boolean";
13182 +
13183 +               case DBUS_TYPE_BYTE:
13184 +                       return "byte";
13185 +
13186 +               case DBUS_TYPE_STRING:
13187 +                       return "string";
13188 +       }
13189 +       g_assert_not_reached ();
13190 +       return NULL;
13191 +}
13192 +
13193 +
13194 +/*
13195 + * call_nm_method
13196 + *
13197 + * Do a method call on NetworkManager.
13198 + *
13199 + * Returns:    RETURN_SUCCESS on success
13200 + *                     RETURN_FAILURE on failure
13201 + *                     RETURN_NO_NM if NetworkManager service no longer exists
13202 + */
13203 +static int call_nm_method (DBusConnection *con, const char *method, int opt, gboolean is_array, int arg_type, void **arg, int *item_count)
13204 +{
13205 +       DBusMessage     *message;
13206 +       DBusMessage     *reply;
13207 +       DBusError                error;
13208 +       dbus_bool_t      ret = TRUE;
13209 +       DBusMessageIter iter;
13210 +
13211 +       g_return_val_if_fail (con != NULL, RETURN_FAILURE);
13212 +       g_return_val_if_fail (method != NULL, RETURN_FAILURE);
13213 +       g_return_val_if_fail (arg != NULL, RETURN_FAILURE);
13214 +
13215 +       if (is_array)
13216 +       {
13217 +               g_return_val_if_fail (item_count != NULL, RETURN_FAILURE);
13218 +               *item_count = 0;
13219 +       }
13220 +
13221 +       if (!(message = dbus_message_new_method_call (NM_DBUS_SERVICE, NM_DBUS_PATH_DHCP, NM_DBUS_INTERFACE_DHCP, method)))
13222 +       {
13223 +               fprintf (stderr, "call_nm_method(): Couldn't allocate the dbus message\n");
13224 +               return (RETURN_FAILURE);
13225 +       }
13226 +       dbus_message_append_args (message, DBUS_TYPE_UINT32, &opt, DBUS_TYPE_INVALID);
13227 +
13228 +       dbus_error_init (&error);
13229 +       reply = dbus_connection_send_with_reply_and_block (con, message, -1, &error);
13230 +       dbus_message_unref (message);
13231 +       if (dbus_error_is_set (&error))
13232 +       {
13233 +               int     ret = RETURN_FAILURE;
13234 +
13235 +               if (!strcmp (error.name, DBUS_NO_SERVICE_ERROR))
13236 +                       ret = RETURN_NO_NM;
13237 +
13238 +               if (ret != RETURN_SUCCESS && (strcmp (error.name, NM_DHCP_OPT_NOT_FOUND_ERROR) != 0))
13239 +                       fprintf (stderr, "call_nm_method(): %s raised:\n %s\n\n", error.name, error.message);
13240 +
13241 +               dbus_error_free (&error);
13242 +               return (ret);
13243 +       }
13244 +
13245 +       if (reply == NULL)
13246 +       {
13247 +               fprintf (stderr, "call_nm_method(): dbus reply message was NULL\n" );
13248 +               return (RETURN_FAILURE);
13249 +       }
13250 +
13251 +       if (is_array)
13252 +               ret = dbus_message_get_args (reply, NULL, DBUS_TYPE_ARRAY, arg_type, arg, item_count, DBUS_TYPE_INVALID);
13253 +       else
13254 +               ret = dbus_message_get_args (reply, NULL, arg_type, arg, DBUS_TYPE_INVALID);
13255 +
13256 +/*
13257 +  We simply don't unref the message, so that the values returned stay
13258 +  valid in the caller of this function.
13259 +       dbus_message_unref (reply);
13260 +*/
13261 +       if (!ret)
13262 +       {
13263 +               fprintf (stderr, "call_nm_method(): error while getting args.\n");
13264 +               return (RETURN_FAILURE);
13265 +       }
13266 +
13267 +       return (RETURN_SUCCESS);
13268 +}
13269 +
13270 +void print_array (DBusConnection *connection, int opt)
13271 +{
13272 +       int num_items;
13273 +       unsigned int    *uint32 = NULL;
13274 +       int                     *int32 = NULL;
13275 +       gboolean                *bool = NULL;
13276 +       unsigned char   *byte = NULL;
13277 +       char                    **string = NULL;
13278 +       void                    *item = NULL;
13279 +       char                    *method = NULL;
13280 +       int                      ret;
13281 +       const char      *name = NULL;
13282 +       int                      opt_type = -1;
13283 +       unsigned int foo;
13284 +
13285 +       ret = call_nm_method (connection, "getName", opt, FALSE, DBUS_TYPE_STRING, (void *)(&name), NULL);
13286 +       if (ret != RETURN_SUCCESS)
13287 +               return;
13288 +
13289 +       ret = call_nm_method (connection, "getElementType", opt, FALSE, DBUS_TYPE_UINT32, (void *)(&opt_type), NULL);
13290 +       if (ret != RETURN_SUCCESS)
13291 +               return;
13292 +
13293 +       switch (opt_type)
13294 +       {
13295 +               case DBUS_TYPE_UINT32:
13296 +                       item = &uint32;
13297 +                       method = "getInteger";
13298 +                       break;
13299 +
13300 +               case DBUS_TYPE_BOOLEAN:
13301 +                       item = &bool;
13302 +                       method = "getBoolean";
13303 +                       break;
13304 +
13305 +               case DBUS_TYPE_BYTE:
13306 +                       item = &byte;
13307 +                       method = "getByte";
13308 +                       break;
13309 +
13310 +               case DBUS_TYPE_STRING:
13311 +                       item = &string;
13312 +                       method = "getString";
13313 +                       break;
13314 +
13315 +               default:
13316 +                       fprintf (stderr, "%d: Type %c\n", opt, opt_type);
13317 +                       g_assert_not_reached ();
13318 +                       break;
13319 +       }
13320 +
13321 +       ret = call_nm_method (connection, method, opt, TRUE, opt_type, item, &num_items);
13322 +       if ((ret == RETURN_SUCCESS) && (num_items > 0))
13323 +       {
13324 +               int i;
13325 +               fprintf (stderr, "%d ('%s'): (%d %s of type %s)  ", opt, name, num_items, num_items > 1 ? "elements" : "element", dbus_type_to_string (opt_type));
13326 +               for (i = 0; i < num_items; i++)
13327 +               {
13328 +                       struct in_addr  in;
13329 +                       gboolean        last = (i == num_items - 1) ? TRUE : FALSE;
13330 +
13331 +                       switch (opt_type)
13332 +                       {
13333 +                               case DBUS_TYPE_BYTE:
13334 +                                       fprintf (stderr, "%d%s", byte[i], last ? "" : ", ");
13335 +                                       break;
13336 +                               case DBUS_TYPE_BOOLEAN:
13337 +                                       fprintf (stderr, "%d%s", bool[i], last ? "" : ", ");
13338 +                                       break;
13339 +                               case DBUS_TYPE_UINT32:
13340 +                                       in.s_addr = uint32[i];
13341 +                                       fprintf (stderr, "%u (%s)%s", uint32[i], inet_ntoa(in), last ? "" : ", ");
13342 +                                       break;
13343 +                               case DBUS_TYPE_STRING:
13344 +                                       fprintf (stderr, "'%s'%s", string[i], last ? "" : ", ");
13345 +                                       break;
13346 +
13347 +                               default:
13348 +                                       g_assert_not_reached ();
13349 +                                       break;
13350 +                       }
13351 +               }
13352 +               fprintf (stderr, "\n");
13353 +       }
13354 +       else
13355 +               fprintf (stderr, "%d ('%s'): could not get option value\n", opt, name);
13356 +}
13357 +
13358 +
13359 +void print_each_dhcp_option (DBusConnection *connection)
13360 +{
13361 +       DBusMessage     *message;
13362 +       DBusMessage     *reply;
13363 +       DBusMessageIter iter;
13364 +       DBusError                error;
13365 +       int                      i;
13366 +       int                      opt_type;
13367 +       int                      ret;
13368 +
13369 +       g_return_if_fail (connection != NULL);
13370 +
13371 +       /* Loop through all available DHCP options and print each one. */
13372 +       for (i = 1; i < 62; i++)
13373 +               print_array (connection, i);
13374 +}
13375 +
13376 +
13377 +int main (int argc, char **argv)
13378 +{
13379 +       DBusConnection *connection;
13380 +       DBusError                error;
13381 +
13382 +       g_type_init ();
13383 +
13384 +       dbus_error_init (&error);
13385 +       connection = dbus_bus_get (DBUS_BUS_SYSTEM, &error);
13386 +       if (connection == NULL)
13387 +       {
13388 +               fprintf (stderr, "Error connecting to system bus: %s\n", error.message);
13389 +               dbus_error_free (&error);
13390 +               return 1;
13391 +       }
13392 +
13393 +       print_each_dhcp_option (connection);
13394 +
13395 +       exit (0);
13396 +}
13397 diff -urN NetworkManager-0.6.5/test/NMLoadModules NetworkManager-SVNr3284/test/NMLoadModules
13398 --- NetworkManager-0.6.5/test/NMLoadModules     1970-01-01 01:00:00.000000000 +0100
13399 +++ NetworkManager-SVNr3284/test/NMLoadModules  2008-02-04 15:59:52.000000000 +0100
13400 @@ -0,0 +1,61 @@
13401 +#! /bin/bash
13402 +# Load kernel modules for all network devices
13403 +
13404 +CWD=`pwd`
13405 +cd /etc/sysconfig/network-scripts
13406 +
13407 +# find all the interfaces besides loopback.
13408 +# ignore aliases, alternative configurations, and editor backup files
13409 +interfaces=`ls ifcfg* | LANG=C egrep -v '(ifcfg-lo|:|rpmsave|rpmorig|rpmnew)' | \
13410 +           LANG=C egrep -v '(~|\.bak)$' | \
13411 +            LANG=C egrep 'ifcfg-[A-Za-z0-9\._-]+$' | \
13412 +            sed 's/^ifcfg-//g' |
13413 +            sed 's/[0-9]/ &/' | LANG=C sort -k 1,1 -k 2n | sed 's/ //'`
13414 +
13415 +# bring up all other interfaces configured to come up at boot time
13416 +for i in $interfaces; do
13417 +       eval $(LANG=C fgrep "DEVICE=" ifcfg-$i)
13418 +       eval $(LANG=C fgrep "TYPE=" ifcfg-$i)
13419 +       eval $(LANG=C fgrep "SLAVE=" ifcfg-$i)
13420 +       eval $(LANG=C fgrep "BRIDGE=" ifcfg-$i)
13421 +               
13422 +       if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi
13423 +
13424 +       if [ "${DEVICE##cipcb}" != "$DEVICE" ] ; then
13425 +               unset DEVICE TYPE SLAVE BRIDGE
13426 +               continue
13427 +       fi
13428 +
13429 +       if [ "$TYPE" = "xDSL" ]; then
13430 +               unset DEVICE TYPE SLAVE BRIDGE
13431 +               continue
13432 +       fi
13433 +               
13434 +       if [ -n "$BRIDGE" ]; then
13435 +               unset DEVICE TYPE SLAVE BRIDGE
13436 +               continue
13437 +       fi
13438 +
13439 +       if [ "${DEVICE%%.*}" != "$DEVICE" ] ; then
13440 +               unset DEVICE TYPE SLAVE BRIDGE
13441 +               continue
13442 +       fi
13443 +               
13444 +       if [ "$SLAVE" = "yes" ]; then
13445 +               unset DEVICE TYPE SLAVE BRIDGE
13446 +               continue
13447 +       fi
13448 +       unset DEVICE TYPE SLAVE BRIDGE
13449 +
13450 +       # Load the module
13451 +       LC_ALL= LANG= /sbin/ip -o link | grep -q $i
13452 +       if [ "$?" = "1" ]; then
13453 +               alias=`modprobe -c | awk "/^(alias|install)[[:space:]]+$i[[:space:]]/ { print \\$3 }"`
13454 +               if [ -n "$alias" -a "$alias" != "off" -a "$alias" != "/bin/true" ]; then
13455 +                       modprobe $alias > /dev/null 2>&1
13456 +               fi
13457 +       fi
13458 +       continue
13459 +done
13460 +
13461 +exit 0
13462 diff -urN NetworkManager-0.6.5/test/nmnetlinktest.c NetworkManager-SVNr3284/test/nmnetlinktest.c
13463 --- NetworkManager-0.6.5/test/nmnetlinktest.c   1970-01-01 01:00:00.000000000 +0100
13464 +++ NetworkManager-SVNr3284/test/nmnetlinktest.c        2008-02-04 15:59:52.000000000 +0100
13465 @@ -0,0 +1,76 @@
13466 +#include <sys/types.h>
13467 +
13468 +#include <sys/socket.h>
13469 +#include <asm/types.h>
13470 +#include <linux/types.h>
13471 +#include <linux/netlink.h>
13472 +#include <linux/rtnetlink.h>
13473 +#include <linux/if.h>
13474 +#include <errno.h>
13475 +
13476 +#include <glib.h>
13477 +#include <nm-netlink-monitor.h>
13478 +
13479 +static void
13480 +device_added (NmNetlinkMonitor *monitor,
13481 +             const gchar      *device_name)
13482 +{
13483 +       g_print ("interface '%s' connected\n", device_name);
13484 +}
13485 +
13486 +
13487 +static void
13488 +device_removed (NmNetlinkMonitor *monitor,
13489 +               const gchar      *device_name)
13490 +{
13491 +       g_print ("interface '%s' disconnected\n", device_name);
13492 +}
13493 +
13494 +int
13495 +main (void)
13496 +{
13497 +       NmNetlinkMonitor *monitor;
13498 +       GMainLoop *loop;
13499 +       GError *error;
13500 +
13501 +       g_type_init ();
13502 +
13503 +       monitor = nm_netlink_monitor_new ();
13504 +
13505 +       error = NULL;
13506 +       nm_netlink_monitor_open_connection (monitor, &error);
13507 +
13508 +       if (error != NULL)
13509 +       {
13510 +               g_printerr ("could not open connection: %s\n",
13511 +                           error->message);
13512 +               g_error_free (error);
13513 +               return 1;
13514 +       }
13515 +
13516 +       loop = g_main_loop_new (NULL, FALSE);
13517 +
13518 +       g_signal_connect (G_OBJECT (monitor),
13519 +                         "interface-connected",
13520 +                         G_CALLBACK (device_added), NULL);
13521 +
13522 +       g_signal_connect (G_OBJECT (monitor),
13523 +                         "interface-disconnected",
13524 +                         G_CALLBACK (device_removed), NULL);
13525 +
13526 +       nm_netlink_monitor_attach (monitor, NULL);
13527 +
13528 +       nm_netlink_monitor_request_status (monitor, &error);
13529 +
13530 +       if (error != NULL)
13531 +       {
13532 +               g_printerr ("could not request status of interfaces: %s\n",
13533 +                           error->message);
13534 +               g_error_free (error);
13535 +               return 2;
13536 +       }
13537 +
13538 +       g_main_loop_run (loop);
13539 +
13540 +       return 0;
13541 +}
This page took 1.069691 seconds and 3 git commands to generate.