summaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2000-02-11 13:11:54 +0000
committerPascal Rigaux <pixel@mandriva.com>2000-02-11 13:11:54 +0000
commit32a83378c4a49d7b0bf6d574db66b52956a432c3 (patch)
tree37b7b436478f16934669b83a4d6c301f4f62b535 /docs
parent4167dc1ad8d3466546f4cfaa84f1f2b4885755aa (diff)
downloaddrakx-32a83378c4a49d7b0bf6d574db66b52956a432c3.tar
drakx-32a83378c4a49d7b0bf6d574db66b52956a432c3.tar.gz
drakx-32a83378c4a49d7b0bf6d574db66b52956a432c3.tar.bz2
drakx-32a83378c4a49d7b0bf6d574db66b52956a432c3.tar.xz
drakx-32a83378c4a49d7b0bf6d574db66b52956a432c3.zip
no_comment
Diffstat (limited to 'docs')
-rw-r--r--docs/TODO2
1 files changed, 2 insertions, 0 deletions
diff --git a/docs/TODO b/docs/TODO
index 453f5c221..bea11c050 100644
--- a/docs/TODO
+++ b/docs/TODO
@@ -7,6 +7,8 @@ after clear all and auto allocate, try maximal size available).
-to test--------------------------------------------------------------------------------
+what happens if a module fails to insmod (scsi step), in beginner/normal/expert
+
fstab must be sorted (/usr/local after /usr)
in chooseResolutions: display the graphic card found
akroam?h=2007.1'>bin/drakroam405
-rwxr-xr-xbin/draksambashare322
-rw-r--r--bin/drakvpn1139
-rwxr-xr-xbin/drakvpn-old847
-rw-r--r--bin/net_applet489
-rwxr-xr-xbin/net_monitor162
-rw-r--r--config/drakroam.console3
-rw-r--r--config/drakroam.pamd5
-rw-r--r--data/icons/configure-16.pngbin0 -> 704 bytes-rw-r--r--data/icons/configure-24.pngbin0 -> 1186 bytes-rw-r--r--data/icons/draknetprofile-16.pngbin0 -> 600 bytes-rw-r--r--data/icons/draknetprofile-24.pngbin0 -> 911 bytes-rw-r--r--data/icons/draknetprofile-32.pngbin0 -> 1415 bytes-rw-r--r--data/icons/draknetprofile-52.pngbin0 -> 3513 bytes-rw-r--r--data/icons/draknetprofile-64.pngbin0 -> 4852 bytes-rw-r--r--data/icons/draknetprofile.pngbin0 -> 3166 bytes-rw-r--r--data/icons/draknetprofile_128.pngbin0 -> 12803 bytes-rw-r--r--data/icons/drakvpn-16.pngbin0 -> 765 bytes-rw-r--r--data/icons/drakvpn-24.pngbin0 -> 1296 bytes-rw-r--r--data/icons/drakvpn-32.pngbin0 -> 1959 bytes-rw-r--r--data/icons/drakvpn-52.pngbin0 -> 3531 bytes-rw-r--r--data/icons/drakvpn-64.pngbin0 -> 4502 bytes-rw-r--r--data/icons/drakvpn.pngbin3313 -> 3256 bytes-rw-r--r--data/icons/drakvpn_128.pngbin0 -> 12507 bytes-rw-r--r--data/icons/invictus-16.pngbin0 -> 705 bytes-rw-r--r--data/icons/invictus-24.pngbin0 -> 1271 bytes-rw-r--r--data/icons/invictus-32.pngbin0 -> 2079 bytes-rw-r--r--data/icons/invictus-52.pngbin0 -> 3674 bytes-rw-r--r--data/icons/invictus-64.pngbin0 -> 4702 bytes-rw-r--r--data/icons/invictus.pngbin0 -> 3368 bytes-rw-r--r--data/icons/invictus_128.pngbin0 -> 13551 bytes-rw-r--r--data/icons/monitor-16.pngbin0 -> 795 bytes-rw-r--r--data/icons/monitor-24.pngbin0 -> 1226 bytes-rw-r--r--data/net_applet.desktop14
-rw-r--r--data/pixmaps/bluetooth-128.pngbin0 -> 13473 bytes-rw-r--r--data/pixmaps/bluetooth-16.pngbin0 -> 960 bytes-rw-r--r--data/pixmaps/bluetooth-24.pngbin0 -> 1069 bytes-rw-r--r--data/pixmaps/bluetooth-32.pngbin0 -> 1872 bytes-rw-r--r--data/pixmaps/bluetooth-48.pngbin0 -> 3220 bytes-rw-r--r--data/pixmaps/bluetooth-52.pngbin0 -> 3570 bytes-rw-r--r--data/pixmaps/bluetooth-64.pngbin0 -> 4841 bytes-rw-r--r--data/pixmaps/cablemodem-128.pngbin0 -> 15278 bytes-rw-r--r--data/pixmaps/cablemodem-16.pngbin0 -> 748 bytes-rw-r--r--data/pixmaps/cablemodem-24.pngbin0 -> 1218 bytes-rw-r--r--data/pixmaps/cablemodem-32.pngbin0 -> 2309 bytes-rw-r--r--data/pixmaps/cablemodem-48.pngbin0 -> 3915 bytes-rw-r--r--data/pixmaps/cablemodem-52.pngbin0 -> 4352 bytes-rw-r--r--data/pixmaps/cablemodem-64.pngbin0 -> 5853 bytes-rw-r--r--data/pixmaps/cellular-128.pngbin0 -> 11758 bytes-rw-r--r--data/pixmaps/cellular-16.pngbin0 -> 541 bytes-rw-r--r--data/pixmaps/cellular-24.pngbin0 -> 906 bytes-rw-r--r--data/pixmaps/cellular-32.pngbin0 -> 1571 bytes-rw-r--r--data/pixmaps/cellular-48.pngbin0 -> 2712 bytes-rw-r--r--data/pixmaps/cellular-52.pngbin0 -> 2777 bytes-rw-r--r--data/pixmaps/cellular-64.pngbin0 -> 4027 bytes-rw-r--r--data/pixmaps/dvb-128.pngbin0 -> 12815 bytes-rw-r--r--data/pixmaps/dvb-16.pngbin0 -> 622 bytes-rw-r--r--data/pixmaps/dvb-24.pngbin0 -> 992 bytes-rw-r--r--data/pixmaps/dvb-32.pngbin0 -> 1662 bytes-rw-r--r--data/pixmaps/dvb-48.pngbin0 -> 3046 bytes-rw-r--r--data/pixmaps/dvb-52.pngbin0 -> 3154 bytes-rw-r--r--data/pixmaps/dvb-64.pngbin0 -> 4814 bytes-rw-r--r--data/pixmaps/encryption-open-24.pngbin0 -> 871 bytes-rw-r--r--data/pixmaps/encryption-strong-24.pngbin0 -> 906 bytes-rw-r--r--data/pixmaps/encryption-weak-24.pngbin0 -> 793 bytes-rw-r--r--data/pixmaps/ethernet-128.pngbin0 -> 10107 bytes-rw-r--r--data/pixmaps/ethernet-16.pngbin0 -> 574 bytes-rw-r--r--data/pixmaps/ethernet-24.pngbin0 -> 840 bytes-rw-r--r--data/pixmaps/ethernet-32.pngbin0 -> 1566 bytes-rw-r--r--data/pixmaps/ethernet-48.pngbin0 -> 2562 bytes-rw-r--r--data/pixmaps/ethernet-52.pngbin0 -> 2790 bytes-rw-r--r--data/pixmaps/ethernet-64.pngbin0 -> 3837 bytes-rw-r--r--data/pixmaps/isdn-128.pngbin0 -> 9294 bytes-rw-r--r--data/pixmaps/isdn-16.pngbin0 -> 641 bytes-rw-r--r--data/pixmaps/isdn-24.pngbin0 -> 1016 bytes-rw-r--r--data/pixmaps/isdn-32.pngbin0 -> 1588 bytes-rw-r--r--data/pixmaps/isdn-48.pngbin0 -> 2588 bytes-rw-r--r--data/pixmaps/isdn-52.pngbin0 -> 2809 bytes-rw-r--r--data/pixmaps/isdn-64.pngbin0 -> 3667 bytes-rw-r--r--data/pixmaps/potsmodem-128.pngbin0 -> 12428 bytes-rw-r--r--data/pixmaps/potsmodem-16.pngbin0 -> 627 bytes-rw-r--r--data/pixmaps/potsmodem-24.pngbin0 -> 1085 bytes-rw-r--r--data/pixmaps/potsmodem-32.pngbin0 -> 1869 bytes-rw-r--r--data/pixmaps/potsmodem-48.pngbin0 -> 3303 bytes-rw-r--r--data/pixmaps/potsmodem-52.pngbin0 -> 3521 bytes-rw-r--r--data/pixmaps/potsmodem-64.pngbin0 -> 4458 bytes-rw-r--r--data/pixmaps/wireless-128.pngbin0 -> 11433 bytes-rw-r--r--data/pixmaps/wireless-16.pngbin0 -> 634 bytes-rw-r--r--data/pixmaps/wireless-24.pngbin0 -> 1085 bytes-rw-r--r--data/pixmaps/wireless-32.pngbin0 -> 2173 bytes-rw-r--r--data/pixmaps/wireless-48.pngbin0 -> 2913 bytes-rw-r--r--data/pixmaps/wireless-52.pngbin0 -> 3372 bytes-rw-r--r--data/pixmaps/wireless-64.pngbin0 -> 4681 bytes-rw-r--r--data/pixmaps/xdsl-128.pngbin0 -> 13729 bytes-rw-r--r--data/pixmaps/xdsl-16.pngbin0 -> 738 bytes-rw-r--r--data/pixmaps/xdsl-24.pngbin0 -> 1374 bytes-rw-r--r--data/pixmaps/xdsl-32.pngbin0 -> 2193 bytes-rw-r--r--data/pixmaps/xdsl-48.pngbin0 -> 3674 bytes-rw-r--r--data/pixmaps/xdsl-52.pngbin0 -> 4099 bytes-rw-r--r--data/pixmaps/xdsl-64.pngbin0 -> 5277 bytes-rw-r--r--lib/network/.perl_checker1
-rw-r--r--lib/network/adsl.pm334
-rw-r--r--lib/network/connection.pm235
-rw-r--r--lib/network/connection/cable.pm77
-rw-r--r--lib/network/connection/cellular.pm52
-rw-r--r--lib/network/connection/cellular_bluetooth.pm94
-rw-r--r--lib/network/connection/cellular_card.pm180
-rw-r--r--lib/network/connection/dvb.pm73
-rw-r--r--lib/network/connection/ethernet.pm512
-rw-r--r--lib/network/connection/isdn.pm (renamed from lib/network/isdn.pm)107
-rw-r--r--lib/network/connection/isdn/consts.pm (renamed from lib/network/isdn_consts.pm)2
-rw-r--r--lib/network/connection/pots.pm133
-rw-r--r--lib/network/connection/ppp.pm138
-rw-r--r--lib/network/connection/providers/cellular.pm28
-rw-r--r--lib/network/connection/providers/xdsl.pm (renamed from lib/network/adsl_consts.pm)453
-rw-r--r--lib/network/connection/wireless.pm744
-rw-r--r--lib/network/connection/xdsl.pm375
-rw-r--r--lib/network/drakfirewall.pm34
-rw-r--r--lib/network/drakvpn.pm120
-rw-r--r--lib/network/ethernet.pm162
-rw-r--r--lib/network/ifw.pm16
-rw-r--r--lib/network/invictus.pm30
-rw-r--r--lib/network/ipsec.pm178
-rw-r--r--lib/network/modem.pm9
-rw-r--r--lib/network/monitor.pm50
-rw-r--r--lib/network/ndiswrapper.pm46
-rw-r--r--lib/network/netconnect.pm1200
-rw-r--r--lib/network/network.pm299
-rw-r--r--lib/network/rfswitch.pm38
-rw-r--r--lib/network/shorewall.pm151
-rw-r--r--lib/network/signal_strength.pm14
-rw-r--r--lib/network/squid.pm5
-rw-r--r--lib/network/test.pm79
-rw-r--r--lib/network/thirdparty.pm451
-rw-r--r--lib/network/tools.pm76
-rw-r--r--lib/network/vpn.pm191
-rw-r--r--lib/network/vpn/openvpn.pm407
-rw-r--r--lib/network/vpn/vpnc.pm74
-rw-r--r--lib/network/wireless.pm239
-rw-r--r--po/Makefile41
-rw-r--r--po/af.po5919
-rw-r--r--po/am.po5433
-rw-r--r--po/ar.po5925
-rw-r--r--po/az.po5558
-rw-r--r--po/be.po5452
-rw-r--r--po/bg.po5533
-rw-r--r--po/bn.po5919
-rw-r--r--po/br.po5486
-rw-r--r--po/bs.po6031
-rw-r--r--po/ca.po5650
-rw-r--r--po/cs.po6006
-rw-r--r--po/cy.po6027
-rw-r--r--po/da.po5707
-rw-r--r--po/de.po6083
-rw-r--r--po/drakx-net.pot5181
-rw-r--r--po/el.po5547
-rw-r--r--po/eo.po5484
-rw-r--r--po/es.po5734
-rw-r--r--po/et.po6003
-rw-r--r--po/eu.po5656
-rw-r--r--po/fa.po5917
-rw-r--r--po/fi.po5609
-rw-r--r--po/fr.po6158
-rw-r--r--po/fur.po5435
-rw-r--r--po/ga.po5445
-rw-r--r--po/gl.po5793
-rw-r--r--po/he.po6015
-rw-r--r--po/hi.po5660
-rw-r--r--po/hr.po5538
-rw-r--r--po/hu.po6077
-rw-r--r--po/id.po6041
-rw-r--r--po/is.po5883
-rw-r--r--po/it.po6046
-rw-r--r--po/ja.po6002
-rw-r--r--po/ko.po5509
-rw-r--r--po/ky.po5552
-rw-r--r--po/lt.po5492
-rw-r--r--po/ltg.po5540
-rw-r--r--po/lv.po5540
-rw-r--r--po/mk.po5566
-rw-r--r--po/mn.po5470
-rw-r--r--po/ms.po5439
-rw-r--r--po/mt.po5746
-rw-r--r--po/nb.po5723
-rw-r--r--po/nl.po6055
-rw-r--r--po/nn.po5574
-rw-r--r--po/pa_IN.po5725
-rw-r--r--po/pl.po6048
-rw-r--r--po/pt.po6049
-rw-r--r--po/pt_BR.po5738
-rw-r--r--po/ro.po5487
-rw-r--r--po/ru.po6022
-rw-r--r--po/sc.po5444
-rw-r--r--po/sk.po6007
-rw-r--r--po/sl.po6070
-rw-r--r--po/sq.po5556
-rw-r--r--po/sr.po5546
-rw-r--r--po/sr@Latn.po5546
-rw-r--r--po/sv.po5711
-rw-r--r--po/ta.po5511
-rw-r--r--po/tg.po5973
-rw-r--r--po/th.po5473
-rw-r--r--po/tl.po5949
-rw-r--r--po/tr.po5551
-rw-r--r--po/uk.po5944
-rw-r--r--po/uz.po10936
-rw-r--r--po/uz@Latn.po10936
-rw-r--r--po/vi.po5987
-rw-r--r--po/wa.po5681
-rw-r--r--po/zh_CN.po5632
-rw-r--r--po/zh_TW.po5583
-rwxr-xr-xscripts/net_applet.xinit4
226 files changed, 424713 insertions, 4480 deletions
diff --git a/.perl_checker b/.perl_checker
new file mode 100644
index 0000000..752eb89
--- /dev/null
+++ b/.perl_checker
@@ -0,0 +1,18 @@
+AutoLoader
+Carp::Heavy
+constant
+Cwd
+Date::Manip
+Digest::MD5
+Encode
+encoding
+File::Find
+File::FnMatch
+File::Path
+File::Temp
+Gtk2::Gdk::Keysyms
+IO::Handle
+Net::DBus::Binding::Introspector
+String::ShellQuote
+Text::ParseWords
+Term::ReadKey
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..77a9eca
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,48 @@
+NAME = drakx-net
+VERSION = 0.12
+
+DESTDIR=
+libdir=/usr/lib
+bindir=/usr/bin
+sbindir=/usr/sbin
+desktopdir=/usr/share/applications
+autostartdir=/usr/share/autostart
+autostartgnomedir=/usr/share/gnome/autostart
+xinitdir=/etc/X11/xinit.d
+iconsdir=/usr/lib/libDrakX/icons
+pixmapsdir=/usr/share/libDrakX/pixmaps
+pamdir=/etc/pam.d
+consoleappsdir=/etc/security/console.apps
+
+BIN_TOOLS= net_applet
+SBIN_TOOLS=drakconnect drakfirewall drakgw drakhosts drakids drakinvictus draknetprofile draknfs drakproxy drakroam draksambashare drakvpn net_monitor
+
+all:
+ (find lib -name '*.pm'; find bin -type f) | xargs perl -pi -e 's/\s*use\s+(diagnostics|vars|strict).*//g'
+ make -C po
+
+check:
+ @for p in `find lib -name *.pm`; do perl -cw -I$(libdir)/libDrakX $$p || exit 1; done
+ @for p in bin/*; do perl -cw $$p || exit 1; done
+
+install:
+ install -d $(DESTDIR){$(libdir),$(bindir),$(sbindir),$(desktopdir),$(autostartdir),$(autostartgnomedir),$(xinitdir),$(iconsdir),$(pixmapsdir),$(pamdir),$(consoleappsdir)}
+ cp -a lib/* $(DESTDIR)$(libdir)/libDrakX/
+ find $(DESTDIR) -name .perl_checker -exec rm {} \;
+ (cd bin; \
+ install -m755 $(BIN_TOOLS) $(DESTDIR)$(bindir); \
+ install -m755 $(SBIN_TOOLS) $(DESTDIR)$(sbindir); \
+ )
+ install -m755 scripts/net_applet.xinit $(DESTDIR)$(xinitdir)/70net_applet
+ install -m644 $(wildcard data/*.desktop) $(DESTDIR)$(desktopdir)
+ install -m644 $(wildcard data/icons/*.png) $(DESTDIR)$(iconsdir)
+ install -m644 $(wildcard data/pixmaps/*.png) $(DESTDIR)$(pixmapsdir)
+ install -m644 config/drakroam.pamd $(DESTDIR)$(pamdir)/drakroam
+ install -m644 config/drakroam.console $(DESTDIR)$(consoleappsdir)/drakroam
+ ln -s consolehelper $(DESTDIR)$(bindir)/drakroam
+ perl -pe 's/\s+--force//g' $(DESTDIR)$(desktopdir)/net_applet.desktop > $(DESTDIR)$(autostartdir)/net_applet.desktop
+ perl -pe 's/.*X-KDE.*\n//;s/\s+--force//g' $(DESTDIR)$(desktopdir)/net_applet.desktop > $(DESTDIR)$(autostartgnomedir)/net_applet.desktop
+ make -C po install
+
+clean:
+ make -C po clean
diff --git a/NEWS b/NEWS
new file mode 100644
index 0000000..a33821a
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,86 @@
+0.12:
+- fix check of nfs-utils-clients installation (Tv)
+
+0.11:
+- enhance selection of multiple thirdparty packages
+- make thirdparty packages code easier to re-use
+ (for example in automatic install, useful for live systems)
+
+0.10:
+- drakroam: do not show "More networks" menu if empty (#28626)
+- don't translate program names in old interface (Emmanuel Blindauer, #29196)
+- drakconnect: make net_applet reload its configuration after an
+ interface is deleted(#28680)
+- draknfs: fix missing use of gtkset (aginies)
+
+0.9:
+- allow drakroam to be run as user (#23771)
+- do not allow drakconnect to be run as user anymore
+- fix gateway detection for new ppp daemon (#27886)
+
+0.8:
+- prefer DNS variables over MS_DNS one in ifcfg files
+ (should fix ppp ifcfg files and static net install)
+- drakroam: rt73-firmware support (#29691)
+- drakroam: do not detect network with empty ssid as configured
+- drakroam: fix rf_kill detection for ipw3945 by checking it before
+ interface presence
+- drakroam: remove ipw3945d service support
+- drakroam: reload ipw3945 module if no interface is present when the
+ device is not rf-killed (fix missing interface is booting with rf-kill)
+- drakroam: try to find wireless driver if unknown (fix rt61 detection)
+- drakroam: rt61 firmware support
+
+0.7:
+- add missing tools: drakhosts, draknfs, draksambashare
+ (thanks Titi for the hint)
+- drakconnect: match PCI domain when looking up devices by MAC address
+ (Titi)
+- drakconnect: use a link detection delay for r8169
+- drakconnect: default to NEEDHOSTNAME=no
+- drakroam: merge flags from configured wpa_supplicant networks in all
+ matching scanned networks
+- drakroam: detect ad-hoc networks when wpa_supplicant is used
+- drakroam: pre-select detected wireless mode of the configured network
+- drakroam: allow to configure ad-hoc networks with wpa_supplicant
+- drakroam: write more settings in ifcfg files when wpa_supplicant is
+ used
+- drakroam: do not write Roaming WIRELESS_MODE anymore, ifup scripts
+ will rely on WIRELESS_WPA_DRIVER
+- drakroam: do not override AP address with "any" when parsing
+ wpa_supplicant network list
+- net_applet: start it using GNOME own autostart infrastructure
+ (Frederic Crozat)
+- net_applet: fix detection of running net_applet processes
+
+0.6:
+- use link detection delay for forcedeth and sky2 drivers (#28023)
+- use ifplugd for forcedeth driver, it works fine (even if mii-tool does not handle it)
+- override pcitable driver with detected network driver (useful to detect ndiswrapper)
+- do not ask ndiswrapper firmware if already configured for selected device (#25968, #27850)
+- drakroam: show window before wait message (fix window icon)
+- drakroam: install required per-connection-type packages (useful for 3G connections)
+- drakroam: write module alias in modprobe.conf
+- drakroam: fix WEP keys quoting in wpa_supplicant.conf
+- net_applet: sort wireless networks in menus
+
+0.5:
+- add rt73 in the old rt2x00 list
+- drakhosts, draknfs, draksambashare: initial import
+
+0.4:
+- net_monitor: fix choosing color
+
+0.3:
+- do not run tools in restricted mode (#27458)
+- fix crash in restricted mode
+- use /media instead of /mnt for cdrom/floppy
+- get translations from "drakx-net" domain
+- update tarball so that perl_checker is not required
+
+0.2:
+- net_applet: show simplified menu on left click (instead of running net_monitor)
+- drakfirewall: really disable services if asked to (#27295)
+
+0.1:
+- initial drakx-net release
diff --git a/bin/.perl_checker b/bin/.perl_checker
new file mode 100644
index 0000000..202e053
--- /dev/null
+++ b/bin/.perl_checker
@@ -0,0 +1 @@
+Basedir ..
diff --git a/bin/drakconnect b/bin/drakconnect
index 64b300e..ece74c5 100755
--- a/bin/drakconnect
+++ b/bin/drakconnect
@@ -2,7 +2,7 @@
# DrakConnect $Id$
-# Copyright (C) 1999-2005 Mandriva
+# Copyright (C) 1999-2006 Mandriva
# Damien "Dam's" Krotkine
# Damien "poulpy" Chaumette
# Thierry Vignaud <tvignaud@mandriva.com>
@@ -25,28 +25,33 @@ use strict;
use lib qw(/usr/lib/libDrakX);
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use standalone; #- warning, standalone must be loaded very first, for 'explanations'
use interactive;
use common;
+use run_program;
use network::netconnect;
-use network::ethernet;
+use network::connection::ethernet;
use network::tools;
use network::modem;
use network::network;
use detect_devices;
use c;
use modules;
-use network::isdn;
use network::adsl;
+use network::connection::isdn;
use network::test;
use POSIX ":sys_wait_h";
$ugtk2::wm_icon = "drakconnect";
my $in = 'interactive'->vnew('su');
if ($in->isa('interactive::gtk')) {
+ require mygtk2;
require ugtk2;
ugtk2->import(qw(:create :dialogs :helpers :wrappers));
+ mygtk2->import(qw(gtknew));
}
my $net = {};
@@ -73,11 +78,10 @@ add_intf();
old:
my @all_cards;
-my $window1 = ugtk2->new('drakconnect');
+my $window1 = ugtk2->new(N("Network configuration (%d adapters)", scalar @all_cards));
$window1->{rwindow}->signal_connect(delete_event => sub { ugtk2->exit(0) });
unless ($::isEmbedded) {
$window1->{rwindow}->set_position('center');
- $window1->{rwindow}->set_title(N("Network configuration (%d adapters)", scalar @all_cards));
$window1->{rwindow}->set_size_request(-1, -1);
}
$window1->{rwindow}->set_border_width(10);
@@ -86,7 +90,7 @@ my $button_apply;
my $hostname = chomp_(`hostname`);
-my $int_label = Gtk2::Label->new($net->{type} eq 'lan' ? N("Gateway:") : N("Interface:"));
+my $int_label = Gtk2::WrappedLabel->new($net->{type} eq 'lan' ? N("Gateway:") : N("Interface:"));
my $int_name = Gtk2::Label->new($net->{type} eq 'lan' ? $net->{network}{GATEWAY} : $net->{net_interface});
my $isconnected = -1;
@@ -121,8 +125,8 @@ my ($label_host, $int_state);
$window1->{window}->add(
- gtkpack_(Gtk2::VBox->new(0,10),
- 0, gtkpack(Gtk2::HBox->new,
+ gtkpack__(Gtk2::VBox->new(0,10),
+ gtkpack(Gtk2::HBox->new,
Gtk2::Label->new(N("Hostname: ")),
$label_host = Gtk2::Label->new($hostname),
gtksignal_connect(Gtk2::Button->new(N("Configure hostname...")),
@@ -139,7 +143,7 @@ $window1->{window}->add(
}
),
),
- 1, gtkadd(gtkcreate_frame(N("LAN configuration")),
+ gtkadd(gtkcreate_frame(N("LAN configuration")),
gtkpack_(gtkset_border_width(Gtk2::VBox->new(0,0), 5),
0, $list,
0, Gtk2::HBox->new(0,0),
@@ -149,9 +153,9 @@ $window1->{window}->add(
),
)
),
- 0, gtkpack(Gtk2::HButtonBox->new,
+ gtkpack(Gtk2::HButtonBox->new,
gtksignal_connect(Gtk2::Button->new(N("Help")), clicked => sub {
- exec("drakhelp --id internet-connection") unless fork() }),
+ run_program::raw({ detach => 1 }, 'drakhelp', '--id', 'internet-connection') }),
$button_apply = gtksignal_connect(gtkset_sensitive(Gtk2::Button->new(N("Apply")), 0),
clicked => \&apply),
gtksignal_connect(Gtk2::Button->new(N("Cancel")), clicked => \&quit_global),
@@ -192,8 +196,8 @@ sub manage() {
$notebook->set_property('show-tabs', 0);
$notebook->set_property('show-border', 0);
- @all_cards = network::ethernet::get_eth_cards($modules_conf);
- my %names = network::ethernet::get_eth_cards_names(@all_cards);
+ @all_cards = network::connection::ethernet::get_eth_cards($modules_conf);
+ my %names = network::connection::ethernet::get_eth_cards_names(@all_cards);
foreach (keys %names) {
my $dev = detect_devices::is_lan_interface($_) ? $names{$_} : $_;
$p->{$dev} = {
@@ -212,7 +216,7 @@ sub manage() {
$window->{rwindow}->add(gtkpack_(Gtk2::VBox->new,
0, gtkpack__(Gtk2::HBox->new,
- Gtk2::Label->new(N("Device selected")),
+ gtknew('Label', text => N("Device: "), alignment => [ 0, 0 ]),
$interface_menu = gtksignal_connect(Gtk2::ComboBox->new_text,
changed => sub {
$selected = $interface_menu->get_text;
@@ -233,7 +237,7 @@ sub manage() {
},
},
undef, undef, '',
- [ N("Help"), sub { exec("drakhelp --id internet-connection") unless fork() } ],
+ [ N("Help"), sub { run_program::raw({ detach => 1 }, 'drakhelp', '--id', 'internet-connection') } ],
[ N("Apply"), sub { save($p, $apply_button) }, 0, 1 ],
),
),
@@ -266,7 +270,7 @@ sub build_tree {
network::adsl::adsl_probe_info($net);
$intf->{save} = sub {
$net->{type} = 'adsl';
- network::adsl::adsl_conf_backend($in, $modules_conf, $net);
+ network::adsl::adsl_conf_backend($in, $net);
};
}
elsif ($interface eq 'modem') {
@@ -276,8 +280,8 @@ sub build_tree {
}
elsif ($interface eq 'isdn') {
$intf->{pages} = { 'TCP/IP' => 1, 'Account' => 1, 'Modem' => 1, 'Options' => 1 };
- network::isdn::read_config($intf);
- $intf->{save} = sub { network::isdn::write_config($in, $intf) };
+ network::connection::isdn::read_config($intf);
+ $intf->{save} = sub { network::connection::isdn::apply_config($in, $intf) };
}
else {
#- ethernet is default
@@ -291,13 +295,14 @@ sub build_notebook {
my $apply = sub { $apply_button->set_sensitive(1) };
my $is_ethernet = detect_devices::is_lan_interface($interface);
+ my $size_group = Gtk2::SizeGroup->new('horizontal');
+
if ($intf->{pages}{'TCP/IP'}) {
- gtkpack($gui->{sheet}{'TCP/IP'} = Gtk2::HBox->new,
- gtkadd(gtkcreate_frame(N("IP configuration")),
- gtkpack_(gtkset_border_width(Gtk2::VBox->new(0,10), 5),
+ gtkpack__($gui->{sheet}{'TCP/IP'} = gtkset_border_width(Gtk2::VBox->new(0,10), 5),
+ gtknew('Title2', label => N("IP configuration")),
if_($is_ethernet,
- 0, gtkpack__(Gtk2::HBox->new,
- Gtk2::Label->new(N("Protocol")),
+ gtkpack(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("Protocol")),
$gui->{intf}{BOOTPROTO} = gtksignal_connect(Gtk2::ComboBox->new_text, changed => sub {
return if !$_[0]->realized;
my $proto = $gui->{intf}{BOOTPROTO};
@@ -312,39 +317,34 @@ sub build_notebook {
),
),
),
- 0, gtkpack(Gtk2::VBox->new(1,0),
- gtkpack__(Gtk2::HBox->new, Gtk2::Label->new(N("IP address"))),
- gtkpack__(Gtk2::HBox->new, gtksignal_connect($gui->{intf}{IPADDR} = Gtk2::Entry->new,
- key_press_event => $apply)),
+ gtkpack(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("IP address")),
+ gtksignal_connect($gui->{intf}{IPADDR} = Gtk2::Entry->new,
+ key_press_event => $apply),
),
- 0, gtkpack(Gtk2::VBox->new(1,0),
- gtkpack__(Gtk2::HBox->new, Gtk2::Label->new(N("Netmask"))),
- gtkpack__(Gtk2::HBox->new, gtksignal_connect($gui->{intf}{NETMASK} = Gtk2::Entry->new,
- key_press_event => $apply)),
+ gtkpack(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("Netmask")),
+ gtksignal_connect($gui->{intf}{NETMASK} = Gtk2::Entry->new,
+ key_press_event => $apply),
),
if_($is_ethernet,
- 0, gtkpack(Gtk2::VBox->new(1,0),
- gtkpack__(Gtk2::HBox->new, Gtk2::Label->new(N("Gateway"))),
- gtkpack__(Gtk2::HBox->new, gtksignal_connect($gui->{network}{GATEWAY} = Gtk2::Entry->new,
- key_press_event => $apply)),
+ gtkpack(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("Gateway")),
+ gtksignal_connect($gui->{network}{GATEWAY} = Gtk2::Entry->new,
+ key_press_event => $apply),
),
),
- ),
- ),
- gtkpack_(Gtk2::VBox->new,
- 1, gtkadd(gtkcreate_frame(N("DNS servers")),
- gtkpack(Gtk2::VBox->new(0,0),
- Gtk2::Label->new($intf->{dns1} || $net->{resolv}{dnsServer}),
- if_($intf->{dns2} || $net->{resolv}{dnsServer2},
- Gtk2::Label->new($intf->{dns2} || $net->{resolv}{dnsServer2})),
- if_($intf->{dns3} || $net->{resolv}{dnsServer3},
- Gtk2::Label->new($intf->{dns3} || $net->{resolv}{dnsServer3}))),
- ),
- 1, gtkadd(gtkcreate_frame(N("Search Domain")),
- Gtk2::Label->new($intf->{domain} || $net->{resolv}{DOMAINNAME} || 'none'),
- ),
+ gtknew('Title2', label => N("DNS servers")),
+ gtknew('Label_Left', text => join(', ', grep { $_ } $intf->{dns1} || $net->{resolv}{dnsServer},
+ $intf->{dns2} || $net->{resolv}{dnsServer2},
+ $intf->{dns3} || $net->{resolv}{dnsServer3}),
+ ),
+ gtkpack(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("Search Domain")),
+ my $w2 = gtknew('Label_Left', text => $intf->{domain} || $net->{resolv}{DOMAINNAME} || 'none'),
),
);
+ $size_group->add_widget($_) foreach $w2, $gui->{intf}{BOOTPROTO}, $gui->{intf}{IPADDR}, $gui->{intf}{NETMASK}, $gui->{network}{GATEWAY};
if ($is_ethernet) {
my $proto = $gui->{intf}{BOOTPROTO};
@@ -365,18 +365,18 @@ sub build_notebook {
if ($intf->{pages}{DHCP}) {
gtkpack(gtkset_border_width($gui->{sheet}{DHCP} = Gtk2::HBox->new(0,10), 5),
gtkpack__(gtkset_border_width(Gtk2::VBox->new(0,10), 5),
- gtkpack__(Gtk2::HBox->new,
- Gtk2::Label->new(N("DHCP client")),
- gtksignal_connect($gui->{intf}{DHCP_CLIENT} = Gtk2::ComboBox->new_with_strings(\@network::ethernet::dhcp_clients,
- $intf->{DHCP_CLIENT} || $network::ethernet::dhcp_clients[0]),
+ gtkpack__(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("DHCP client")),
+ gtksignal_connect($gui->{intf}{DHCP_CLIENT} = Gtk2::ComboBox->new_with_strings(\@network::connection::ethernet::dhcp_clients,
+ $intf->{DHCP_CLIENT} || $network::connection::ethernet::dhcp_clients[0]),
changed => $apply)),
gtksignal_connect($gui->{intf_bool}{NEEDHOSTNAME} = Gtk2::CheckButton->new(N("Assign host name from DHCP address")), toggled => $apply),
- gtkpack__(Gtk2::HBox->new,
- Gtk2::Label->new(N("DHCP host name")),
+ gtkpack__(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("DHCP host name")),
gtksignal_connect($gui->{intf}{DHCP_HOSTNAME} = Gtk2::Entry->new,
key_press_event => $apply)),
- gtkpack__(Gtk2::HBox->new,
- Gtk2::Label->new(N("DHCP timeout (in seconds)")),
+ gtkpack__(Gtk2::HBox->new(1,0),
+ gtknew('Label_Left', text => N("DHCP timeout (in seconds)")),
gtksignal_connect($gui->{intf}{DHCP_TIMEOUT} = Gtk2::Entry->new,
key_press_event => $apply)),
gtksignal_connect($gui->{intf_bool}{PEERDNS} = Gtk2::CheckButton->new(N("Get DNS servers from DHCP")), toggled => $apply),
@@ -392,6 +392,8 @@ sub build_notebook {
$gui->{intf}{DHCP_CLIENT}->set_text($intf->{DHCP_CLIENT});
$gui->{sheet}{DHCP}->set_sensitive($intf->{BOOTPROTO} eq 'dhcp');
}
+ my $size_group2 = Gtk2::SizeGroup->new('horizontal');
+ $size_group2->add_widget($_) foreach $gui->{intf}{DHCP_HOSTNAME}, $gui->{intf}{DHCP_TIMEOUT}, $gui->{intf}{DHCP_CLIENT};
if ($intf->{pages}{Wireless}) {
gtkpack(gtkset_border_width($gui->{sheet}{Wireless} = Gtk2::HBox->new(0,10), 5),
@@ -434,7 +436,7 @@ sub build_notebook {
if_($is_ethernet,
map { ($gui->{intf_bool}{$_->[0]} = gtksignal_connect(Gtk2::CheckButton->new($_->[1]),
toggled => $apply));
- } ([ "HWADDR", N("Track network card id (useful for laptops)") ],
+ } (
[ "MII_NOT_SUPPORTED", N("Network Hotplugging") ],
),
),
@@ -456,8 +458,8 @@ sub build_notebook {
key_press_event => $apply),
),
),
- gtkpack__(Gtk2::HBox->new(0,5),
- Gtk2::Label->new(N("Metric")),
+ gtkpack__(Gtk2::HBox->new(0,1),
+ gtknew('Label_Left', text => N("Metric")),
gtksignal_connect(gtkset_text($gui->{intf}{METRIC} = Gtk2::Entry->new, $intf->{METRIC}),
key_press_event => $apply)),
@@ -468,7 +470,6 @@ sub build_notebook {
$speed_radio[1]->signal_connect(toggled => sub { $gui->{intf_radio}{speed} = '128'; $apply->() });
$gui->{intf_bool}{ONBOOT}->set_active($intf->{ONBOOT} eq 'yes' ? 1 : 0);
$gui->{intf_bool}{MII_NOT_SUPPORTED}->set_active($intf->{MII_NOT_SUPPORTED} eq 'no' ? 1 : 0);
- $gui->{intf_bool}{HWADDR}->set_active($intf->{HWADDR});
}
if ($intf->{pages}{Account}) {
@@ -576,7 +577,7 @@ sub build_notebook {
if ($intf->{pages}{Information}) {
my ($info) = $gui->{description} ?
- find { $_->{description} eq $gui->{description} } detect_devices::probeall : network::ethernet::mapIntfToDevice($interface_name);
+ find { $_->{description} eq $gui->{description} } detect_devices::probeall : network::connection::ethernet::mapIntfToDevice($interface_name);
my @intfs = grep { $interface_name eq $_->[0] } @all_cards;
if (is_empty_hash_ref($info) && @intfs == 1) {
my $driver = $intfs[0][1];
@@ -666,7 +667,6 @@ sub save_notebook {
$gui->{intf_radio}{$_} and $intf->{$_} = $gui->{intf_radio}{$_} foreach keys %{$gui->{intf_radio}};
$intf->{$_} = bool2yesno($gui->{intf_bool}{$_}->get_active) foreach keys %{$gui->{intf_bool}};
$gui->{intf_bool}{MII_NOT_SUPPORTED} and $intf->{MII_NOT_SUPPORTED} = bool2yesno(!$gui->{intf_bool}{MII_NOT_SUPPORTED}->get_active);
- $gui->{intf_bool}{HWADDR} and (bool2yesno($gui->{intf_bool}{HWADDR}->get_active) eq 'yes' ? ($intf->{HWADDR} = 'yes') : delete $intf->{HWADDR});
if (my $proto = $gui->{intf}{BOOTPROTO}) {
$intf->{BOOTPROTO} = { reverse %{$proto->{protocols}} }->{$proto->get_text};
@@ -681,6 +681,10 @@ sub save_notebook {
return 0;
}
}
+
+ delete $intf->{IPADDR} if $intf->{IPADDR} eq N("No IP");
+ delete $intf->{NETMASK} if $intf->{NETMASK} eq N("No Mask");
+
if ($net->{network}{GATEWAY} && !is_ip($net->{network}{GATEWAY})) {
$in->ask_warn(N("Error"), N("Gateway address should be in format 1.2.3.4"));
return 0;
@@ -691,6 +695,7 @@ sub save_notebook {
sub add_intf() {
$::isWizard = 1;
network::netconnect::safe_main($net, $in, $modules_conf);
+ $modules_conf->write;
$in->exit(0);
}
@@ -700,8 +705,8 @@ sub del_intf() {
$in->ask_warn(N("Error"), N("No ethernet network adapter has been detected on your system. Please run the hardware configuration tool."));
$in->exit(0);
}
- @all_cards = network::ethernet::get_eth_cards($modules_conf);
- my %ethernet_names = network::ethernet::get_eth_cards_names(@all_cards);
+ @all_cards = network::connection::ethernet::get_eth_cards($modules_conf);
+ my %ethernet_names = network::connection::ethernet::get_eth_cards_names(@all_cards);
require wizards;
my $wiz = wizards->new(
{
@@ -736,6 +741,7 @@ sub del_intf() {
}
};
$failure = $@;
+ network::network::reload_net_applet();
return "end";
},
},
@@ -772,7 +778,7 @@ my %intf;
sub update_list {
my ($modules_conf) = @_;
- @all_cards = network::ethernet::get_eth_cards($modules_conf);
+ @all_cards = network::connection::ethernet::get_eth_cards($modules_conf);
my %new_intf = map { @$_ } @all_cards;
my @new_intf = sort keys %new_intf;
foreach my $interface (difference2(\@new_intf, [ keys %intf ])) {
@@ -913,7 +919,7 @@ Configure them first by clicking on 'Configure'")));
if (-e "/etc/sysconfig/network-scripts/ifcfg-$interface") {
$widget_temp = gtksignal_connect(Gtk2::Button->new(get_intf_status($interface)),
clicked => sub {
- system("/sbin/if" . (ethisup($interface) ? N("down") : N("up")) . " $interface");
+ system("/sbin/if" . (ethisup($interface) ? "down" : "up") . " $interface");
$_[0]->set_label(get_intf_status($interface));
update();
});
@@ -944,7 +950,7 @@ Configure them first by clicking on 'Configure'")));
if ($net->{ifcfg}{$interface}{BOOTPROTO} ne "static") {
delete @{$net->{ifcfg}{$interface}}{qw(IPADDR NETWORK NETMASK BROADCAST)};
} else {
- if ($infos[1]->get_text ne "No ip") {
+ if ($infos[1]->get_text ne N("No IP")) {
$net->{ifcfg}{$interface}{IPADDR} = $infos[1]->get_text;
$net->{ifcfg}{$interface}{NETMASK} = $infos[3]->get_text;
}
@@ -966,7 +972,7 @@ Configure them first by clicking on 'Configure'")));
sub configure_net() {
- my $dialog = ugtk2->new('drakconnect');
+ my $dialog = ugtk2->new(N("Internet connection configuration"));
my $exit_dialogsub = sub { Gtk2->main_quit };
if (!$net->{type}) {
$in->ask_warn(
@@ -978,7 +984,6 @@ Run the \"%s\" assistant from the Mandriva Linux Control Center", N("Set up a ne
}
unless ($::isEmbedded) {
$dialog->{rwindow}->set_position('center');
- $dialog->{rwindow}->set_title(N("Internet connection configuration"));
$dialog->{rwindow}->set_size_request(-1, -1);
$dialog->{rwindow}->set_icon(gtkcreate_pixbuf("drakconnect"));
}
@@ -1007,7 +1012,7 @@ Run the \"%s\" assistant from the Mandriva Linux Control Center", N("Set up a ne
}
$infos[2*$i+1]->set_text(${$_->[1]});
$i++;
- [ $_->[0], $c ];
+ [ Gtk2::WrappedLabel->new($_->[0]), $c ];
} @conf_data
)
);
@@ -1016,11 +1021,11 @@ Run the \"%s\" assistant from the Mandriva Linux Control Center", N("Set up a ne
0, Gtk2::Label->new(N("Internet Connection Configuration")),
1, gtkadd(gtkcreate_frame(N("Internet access")),
gtkset_border_width(create_packtable({ col_spacings => 5, row_spacings => 5, homogenous => 1 },
- [ Gtk2::Label->new(N("Connection type: ")),
- Gtk2::Label->new(translate($net->{type})) ],
+ [ Gtk2::WrappedLabel->new(N("Connection type: ")),
+ Gtk2::WrappedLabel->new(translate($net->{type})) ],
[ $int_label, $int_name ],
- [ Gtk2::Label->new(N("Status:")),
- $int_state = Gtk2::Label->new(N("Testing your connection...")) ]
+ [ Gtk2::WrappedLabel->new(N("Status:")),
+ $int_state = Gtk2::WrappedLabel->new(N("Testing your connection...")) ]
),
5),
),
diff --git a/bin/drakfirewall b/bin/drakfirewall
index 093543c..4588047 100755
--- a/bin/drakfirewall
+++ b/bin/drakfirewall
@@ -1,6 +1,6 @@
#!/usr/bin/perl
-# Copyright (C) 1999-2005 Mandriva (pixel@mandrakesoft.com)
+# Copyright (C) 1999-2006 Mandriva (pixel@mandrakesoft.com)
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -18,6 +18,8 @@
use lib qw(/usr/lib/libDrakX);
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use standalone; #- warning, standalone must be loaded very first, for 'explanations'
use interactive;
diff --git a/bin/drakgw b/bin/drakgw
index 78f0b1c..965665c 100755
--- a/bin/drakgw
+++ b/bin/drakgw
@@ -5,7 +5,7 @@
# modified by Florin Grad (florin@mandrakesoft.com)
# wizardified by Olivier Blin (oblin@mandriva.com)
#
-# Copyright 2000-2005 Mandriva
+# Copyright 2000-2006 Mandriva
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2, as
@@ -24,13 +24,15 @@
use strict;
use lib qw(/usr/lib/libDrakX);
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use standalone; #- warning, standalone must be loaded very first, for 'explanations'
use common;
use detect_devices;
use interactive;
use network::network;
-use network::ethernet;
+use network::connection::ethernet;
use run_program;
use log;
use c;
@@ -45,21 +47,15 @@ my $cups_conf = "$::prefix/etc/cups/cupsd.conf";
my $in = 'interactive'->vnew('su');
-my ($kernel_version) = c::kernel_version() =~ /(...)/;
-unless ($kernel_version >= 2.4) {
- $in->ask_warn(N("Error"), N("Sorry, we support only 2.4 and above kernels."));
- $in->exit(-1);
-}
-
my $net = {};
network::network::read_net_conf($net);
my $modules_conf = modules::any_conf->read;
-my %eth_intf = map { $_->[0] => join(': ', $_->[0], $_->[2]) } network::ethernet::get_eth_cards($modules_conf);
+my %eth_intf = map { $_->[0] => join(': ', $_->[0], $_->[2]) } network::connection::ethernet::get_eth_cards($modules_conf);
my $shorewall = network::shorewall::read();
my $choice;
my $gw_enabled;
-my ($net_interface_name, $lan_interface_name, $lan_intf, $internal_domain_name);
+my ($lan_interface_name, $lan_intf, $internal_domain_name);
my $use_dhcpd = 1;
my $use_caching_dns = 1;
my $use_caching_proxy = 1;
@@ -121,17 +117,17 @@ What would you like to do?"); #- FIXME : not used for now
choose_net_interface =>
{
pre => sub {
- $net_interface_name = $shorewall->{net_interface};
+ $shorewall->{masq}{net_interface} = network::tools::get_default_gateway_interface($net);
},
- name => translate($network::shorewall::ask_shorewall_interface_label),
- data => network::shorewall::shorewall_interface_choices(\$net_interface_name),
+ name => N("Please select the network interface directly connected to the internet."),
+ data => [ { label => N("Net Device"), val => \$shorewall->{masq}{net_interface}, list => [ sort keys %{$net->{ifcfg}} ], format => sub { network::tools::get_interface_description($net, $_[0]) } } ],
post => sub {
- network::shorewall::set_net_interface($shorewall, $net_interface_name);
- my $locals = @{$shorewall->{loc_interface}};
+ network::shorewall::add_interface_to_net_zone($shorewall, $shorewall->{masq}{net_interface});
+ my $locals = @{$shorewall->{loc_zone}};
if ($locals == 0) {
return "end_no_lan_interface";
} elsif ($locals == 1) {
- $lan_interface_name = $shorewall->{loc_interface}[0];
+ $lan_interface_name = $shorewall->{loc_zone}[0];
return "one_lan_interface";
} else {
return "choose_lan_interface";
@@ -155,7 +151,7 @@ I am about to setup your Local Area Network with that adapter.", format_interfac
{
name => N("Please choose what network adapter will be connected to your Local Area Network."),
data => sub {
- [ { type => "list", val => \$lan_interface_name, list => $shorewall->{loc_interface}, format => \&format_interfaces } ];
+ [ { type => "list", val => \$lan_interface_name, list => $shorewall->{loc_zone}, format => \&format_interfaces } ];
},
post => sub {
log::explanations("Choosing network device: $lan_interface_name");
@@ -212,10 +208,10 @@ I am about to setup your Local Area Network with that adapter.", format_interfac
complete => sub {
!$use_caching_dns || $::testing and return 0;
#- install a caching name server if the specified DNS is the gateway
- !$in->do_pkgs->ensure_is_installed('caching-nameserver', '/var/named/named.local');
+ !$in->do_pkgs->ensure_is_installed('bind', '/usr/sbin/named');
},
post => sub {
- services::set_status($_, $use_caching_dns) foreach qw(named caching-nameserver);
+ services::set_status($_, $use_caching_dns) foreach qw(named);
return "dhcpd";
},
},
@@ -360,7 +356,7 @@ sub set_proxy_port {
}
sub gw_disable() {
- my $_wait_disabl = $in->wait_message('', N("Disabling servers..."));
+ my $_wait_disabl = $in->wait_message(N("Please wait"), N("Disabling servers..."));
return if $::testing;
services::set_status($_, 0) foreach qw(dhcpd squid named);
delete_proxy_ports();
@@ -384,7 +380,7 @@ sub gw_configure() {
N("Configuring firewall..."));
$shorewall->{disabled} = 0;
- $shorewall->{masq_subnet} = "$lan_intf->{NETWORK}/$lan_intf->{NETMASK}";
+ $shorewall->{masq}{subnet} = "$lan_intf->{NETWORK}/$lan_intf->{NETMASK}";
network::shorewall::write($shorewall);
#- be sure that FORWARD_IPV4 is enabled in /etc/sysconfig/network
diff --git a/bin/drakhosts b/bin/drakhosts
index 32c6fd1..cdd5a22 100644
--- a/bin/drakhosts
+++ b/bin/drakhosts
@@ -1,6 +1,6 @@
#!/usr/bin/perl
#
-# Copyright (C) 2005 by Mandriva aginies _ateuh_ mandriva.com
+# Copyright (C) 2005-2006 by Mandriva aginies _ateuh_ mandriva.com
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -28,6 +28,8 @@ use strict;
use common;
use network::network;
+$ugtk2::wm_icon = 'IC-Dhost-48';
+use mygtk2 qw(gtknew);
use ugtk2 qw(:ask :wrappers :create :dialogs);
use constant FALSE => 0;
@@ -47,7 +49,7 @@ my %size_groups = map { $_ => Gtk2::SizeGroup->new('horizontal') } qw(label widg
my $label_and_widgets = sub {
my ($label, $widget) = @_;
gtkpack_(Gtk2::HBox->new(0,5),
- 0, gtkadd_widget($size_groups{label}, $label),
+ 0, gtkadd_widget($size_groups{label}, gtknew('Label_Left', text => $label)),
1, gtkadd_widget($size_groups{widget}, $widget),
);
};
@@ -74,7 +76,7 @@ sub write_conf_hosts() {
}
sub add_modify_entry {
- my ($treeview, $wanted) = @_;
+ my ($treeview, $wanted, $title) = @_;
my $model = $treeview->get_model;
my $selection = $treeview->get_selection;
my $iter;
@@ -88,7 +90,7 @@ sub add_modify_entry {
my $dialog = _create_dialog();
$dialog->set_transient_for($::main_window);
- $dialog->set_title("Drakhosts $wanted entry");
+ $dialog->set_title($title);
$dialog->set_modal(1);
$dialog->set_resizable(1);
$dialog->set_size_request(300, -1);
@@ -109,15 +111,12 @@ sub add_modify_entry {
$text = N("Please delete information") if $wanted =~ /delete/;
$text = N("Please add information") if $wanted =~ /add/;
- gtkpack_($dialog->vbox,
- 0, gtkadd(Gtk2::Frame->new($text),
- gtkpack_(gtkset_border_width(Gtk2::VBox->new, 5),
- 0, $label_and_widgets->(N("IP address:"), $ip),
- 0, $label_and_widgets->(N("Host name:"), $hostname),
- 0, $label_and_widgets->(N("Host Aliases:"), $alias),
- ),
- ),
- 0, create_okcancel({
+ gtkpack__($dialog->vbox,
+ gtknew('Title2', label => $text),
+ $label_and_widgets->(N("IP address:"), $ip),
+ $label_and_widgets->(N("Host name:"), $hostname),
+ $label_and_widgets->(N("Host Aliases:"), $alias),
+ create_okcancel({
cancel_clicked => sub { $dialog->destroy },
ok_clicked => sub {
is_ip($ip->get_text) or err_dialog(N("Error!"), N("Please enter a valid IP address.")) and return;
@@ -204,7 +203,7 @@ sub add_columns {
# create model
my $model = create_model();
-my $window = ugtk2->new("Drakhosts");
+my $window = ugtk2->new(N("Manage hosts definitions"));
$::main_window = $window->{real_window};
$window->{rwindow}->set_size_request(500, 400) unless $::isEmbedded;
my $W = $window->{window};
@@ -220,7 +219,7 @@ $treeview->signal_connect(button_press_event => sub {
my $selection = $treeview->get_selection;
my $iter = $selection->get_selected;
if ($iter) {
- add_modify_entry($treeview, "modify") if $event->type eq '2button-press';
+ add_modify_entry($treeview, 'modify', N("Modify entry")) if $event->type eq '2button-press';
}
});
@@ -234,20 +233,20 @@ my $okcancel = create_okcancel({
# main interface
$W->add(gtkpack_(Gtk2::VBox->new(0,0),
- if_(!$::isEmbedded, 0, Gtk2::Banner->new('IC-Dhost-48', N("DrakHOSTS manage hosts definitions"))),
+ if_(!$::isEmbedded, 0, Gtk2::Banner->new('IC-Dhost-48', N("Manage hosts definitions"))),
#if_($::isEmbedded, 0, Gtk2::Label->new("Here you can add, remove and alter hosts definition.")),
1, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 0),
1, create_scrolled_window($treeview),
0, gtkpack_(gtkset_border_width(create_vbox('start', 3)),
0, gtksignal_connect(Gtk2::Button->new(N("Add")), clicked => sub {
- eval { add_modify_entry($treeview, "add") };
+ eval { add_modify_entry($treeview, 'add', N("Add entry")) };
my $err = $@;
if ($err) {
err_dialog(N("Error"), N("Failed to add host.") . "\n\n" . $err);
}
}),
0, gtksignal_connect(Gtk2::Button->new(N("Modify")), clicked => sub {
- eval { add_modify_entry($treeview, "modify") };
+ eval { add_modify_entry($treeview, 'modify', N("Modify entry")) };
my $err = $@;
if ($err) {
err_dialog(N("Error"), N("Failed to Modify host.") . "\n\n" . $err);
diff --git a/bin/drakids b/bin/drakids
index d786cd2..77b4a82 100644
--- a/bin/drakids
+++ b/bin/drakids
@@ -2,6 +2,8 @@
use strict;
use lib qw(/usr/lib/libDrakX);
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use common;
use standalone;
@@ -30,10 +32,17 @@ $whitelist->set_headers_clickable(1);
$whitelist->get_column(0)->signal_connect('clicked', \&sort_by_column, $whitelist->get_model);
$whitelist->get_column(0)->set_sort_column_id(0);
+my $i_m_ifw2 = member("--ifw2", @ARGV);
+my $services_log = create_service_list('status');
+my $allowed_services = create_service_list();
+my $blocked_services = create_service_list();
+
my $w = ugtk2->new(N("Interactive Firewall"),
icon => "/usr/lib/libDrakX/icons/drakfirewall.png");
-my $ifw = network::ifw->new(dbus_object::system_bus(), sub {
+my $ifw;
+eval {
+ $ifw = network::ifw->new(dbus_object::system_bus(), sub {
my ($_con, $msg) = @_;
my $member = $msg->get_member;
if ($member eq 'Attack') {
@@ -49,11 +58,47 @@ my $ifw = network::ifw->new(dbus_object::system_bus(), sub {
} elsif ($member eq 'ManageRequest') {
$w->{window}->present;
}
-});
+ });
+};
+
+if ($@) {
+ err_dialog(N("Interactive Firewall"), N("Unable to contact daemon"));
+ ugtk2::exit;
+}
+
init_lists();
gtkadd($w->{window},
gtknew('Notebook', children => [
+ if_($i_m_ifw2,
+ gtknew('Label', text => N("Log")),
+ gtknew('VBox', spacing => 5, children => [
+ 1, gtknew('ScrolledWindow', width => 600, height => 400, child => $services_log),
+ 0, gtknew('HButtonBox', layout => 'edge', children_loose => [
+ gtknew('Button', text => N("Allow"), clicked => sub {}),
+ gtknew('Button', text => N("Block"), clicked => sub {}),
+ gtknew('Button', text => N("Close"), clicked => sub { Gtk2->main_quit })
+ ]),
+ ]),
+ gtknew('Label', text => N("Allowed services")),
+ gtknew('VBox', spacing => 5, children => [
+ 1, gtknew('ScrolledWindow', width => 600, height => 400, child => $allowed_services),
+ 0, gtknew('HButtonBox', layout => 'edge', children_loose => [
+ gtknew('Button', text => N("Remove"), clicked => sub {}),
+ gtknew('Button', text => N("Block"), clicked => sub {}),
+ gtknew('Button', text => N("Close"), clicked => sub { Gtk2->main_quit })
+ ]),
+ ]),
+ gtknew('Label', text => N("Blocked services")),
+ gtknew('VBox', spacing => 5, children => [
+ 1, gtknew('ScrolledWindow', width => 600, height => 400, child => $blocked_services),
+ 0, gtknew('HButtonBox', layout => 'edge', children_loose => [
+ gtknew('Button', text => N("Remove"), clicked => sub {}),
+ gtknew('Button', text => N("Allow"), clicked => sub {}),
+ gtknew('Button', text => N("Close"), clicked => sub { Gtk2->main_quit })
+ ]),
+ ]),
+ ),
gtknew('Label', text => N("Log")),
gtknew('VBox', spacing => 5, children => [
1, gtknew('ScrolledWindow', width => 600, height => 400, child => $loglist),
@@ -231,6 +276,22 @@ sub attack_list_add {
];
}
+sub create_service_list {
+ my ($o_status) = @_;
+ my $service_list = Gtk2::SimpleList->new(
+ N("Application") => 'text',
+ N("Service") => 'text',
+ if_($o_status, N("Status") => 'text'),
+ );
+ N_("Allowed");
+ N_("Blocked");
+ $service_list->set_headers_clickable(1);
+ foreach (0, 1, if_($o_status, 2)) {
+ $service_list->get_column($_)->signal_connect('clicked', \&sort_by_column, $service_list->get_model);
+ }
+ $service_list;
+}
+
#- may throw an exception
sub init_loglist() {
my @packets = $ifw->get_reports(1);
@@ -254,7 +315,7 @@ sub get_selected_log() {
uniq(map { $loglist->{data}[$_][0] } $loglist->get_selected_indices);
}
-sub clear_log {
+sub clear_log() {
eval {
$ifw->clear_processed_reports;
$ifw->send_alert_ack;
diff --git a/bin/drakinvictus b/bin/drakinvictus
new file mode 100755
index 0000000..ad6e142
--- /dev/null
+++ b/bin/drakinvictus
@@ -0,0 +1,151 @@
+#!/usr/bin/perl
+
+# Copyright (C) 2006 Mandriva
+# Olivier Blin <blino@mandriva.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+use strict;
+
+use lib qw(/usr/lib/libDrakX);
+
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
+use standalone;
+
+use common;
+use network::invictus;
+use network::network;
+use detect_devices;
+use mygtk2 qw(gtknew);
+use ugtk2 qw(:create :helpers :wrappers :dialogs);
+
+$ugtk2::wm_icon = 'invictus-16';
+my $title = N("Invictus Firewall");
+my $w = ugtk2->new($title);
+$::main_window = $w->{real_window}; #- so that transient_for is defined for wait messages and dialogs
+
+my $net = {};
+network::network::read_net_conf($net);
+my @interfaces = detect_devices::get_lan_interfaces;
+
+my $invictus = {};
+network::invictus::read_config($invictus);
+
+my %interface_addresses = map { $_ => {
+ real_address => gtknew('Entry', text => $invictus->{ucarp}{$_}{SRCIP}),
+ virtual_address => gtknew('Entry', text => $invictus->{ucarp}{$_}{VIRTIP}),
+ vid => do { my $w = gtknew('Entry', text => $invictus->{ucarp}{$_}{VHID}); $w->set_width_chars(5); $w },
+} } @interfaces;
+
+my $master_checkbutton = gtknew('CheckButton', text => N("Start as master"), active => do {
+ my $m = find { $_->{TAKEOVER} } values %{$invictus->{ucarp}};
+ $m && text2bool($m->{TAKEOVER});
+});
+my $password_entry = gtknew('Entry', text => do {
+ my $p = find { $_->{PASSWORD} } values %{$invictus->{ucarp}};
+ $p && $p->{PASSWORD};
+});
+$password_entry->set_visibility(0);
+my $ct_sync_interface_list;
+my $cmarkbit_entry;
+
+sub apply_invictus_firewall() {
+ require interactive;
+ my $in = 'interactive'->vnew;
+ $in->do_pkgs->ensure_is_installed('invictus-firewall', '/etc/rc.d/init.d/ct_sync') or return;
+ $in->do_pkgs->ensure_is_installed('ucarp', '/etc/rc.d/init.d/ucarp') or return;
+
+ my $password = $password_entry->get_text;
+ $password or err_dialog(N("Error"), N("A password is required.")), return;
+ foreach (@interfaces) {
+ @{$invictus->{ucarp}{$_}}{qw(INTERFACE SRCIP VIRTIP VHID PASSWORD TAKEOVER)} = (
+ $_,
+ (map { $_->get_text } @{$interface_addresses{$_}}{qw(real_address virtual_address vid)}),
+ $password,
+ bool2yesno($master_checkbutton->get_active),
+ );
+ }
+ network::invictus::write_config($invictus);
+
+ require services;
+ services::enable('ct_sync');
+ services::enable('ucarp');
+}
+
+sub update_ct_sync_state() {
+ my $enable_ct_sync = text2bool($invictus->{ct_sync}{ENABLE});
+ $_->set_sensitive($enable_ct_sync) foreach $ct_sync_interface_list, $cmarkbit_entry;
+ foreach my $interface (@interfaces) {
+ my $enable = !$enable_ct_sync || $interface ne $invictus->{ct_sync}{INTERFACE};
+ $_->set_sensitive($enable) foreach values %{$interface_addresses{$interface}};
+ }
+}
+
+gtkadd($w->{window},
+ gtknew('VBox', spacing => 5, children_tight => [
+ $::isEmbedded ? () : Gtk2::Banner->new('invictus-52', $title),
+ gtknew('WrappedLabel', text => N("This tool allows to set up network interfaces failover and firewall replication.")),
+ gtknew('Frame', border_width => 5,
+ text => N("Network redundancy (leave empty if interface is not used)"),
+ child => gtknew('VBox', border_width => 10, children_tight => [
+ gtknew('Table', children => [
+ [ N("Interface"), N("Real address"), N("Virtual shared address"), N("Virtual ID") ],
+ (map {
+ [ $_, @{$interface_addresses{$_}}{qw(real_address virtual_address vid)} ];
+ } @interfaces),
+ ]),
+ gtknew('HBox', spacing => 5, children_tight => [ N("Password"), $password_entry ]),
+ $master_checkbutton,
+ ])),
+ gtknew('Frame', border_width => 5,
+ text => N("Firewall replication"),
+ child => gtknew('VBox', border_width => 10, children_tight => [
+ gtknew('CheckButton', text => N("Synchronize firewall conntrack tables"),
+ active => text2bool($invictus->{ct_sync}{ENABLE}),
+ toggled => sub {
+ $invictus->{ct_sync}{ENABLE} = bool2yesno($_[0]->get_active);
+ update_ct_sync_state();
+ }),
+ gtknew('HBox', spacing => 5, children => [
+ 0, N("Synchronization network interface"),
+ 1, $ct_sync_interface_list =
+ gtknew('ComboBox', list => \@interfaces, text => $invictus->{ct_sync}{INTERFACE},
+ changed => sub {
+ $invictus->{ct_sync}{INTERFACE} = $_[0]->get_active_text;
+ update_ct_sync_state();
+ }),
+ ]),
+ gtknew('HBox', spacing => 5, children_tight => [
+ N("Connection mark bit"),
+ $cmarkbit_entry =
+ gtknew('ComboBox', list => [ 0 .. 31 ], text => $invictus->{ct_sync}{CMARKBIT}, changed => sub {
+ $invictus->{ct_sync}{CMARKBIT} = $_[0]->get_active_text;
+ }),
+ ]),
+ ])),
+ gtknew('HButtonBox', layout => 'edge', children_tight => [
+ gtknew('Button', text => N("Apply"), clicked => \&apply_invictus_firewall),
+ gtknew('Button', text => N("Quit"), clicked => sub { $w->exit }),
+ ]),
+ ]),
+ );
+
+
+
+
+update_ct_sync_state();
+
+$w->main;
diff --git a/bin/draknetcenter b/bin/draknetcenter
new file mode 100755
index 0000000..280be2d
--- /dev/null
+++ b/bin/draknetcenter
@@ -0,0 +1,132 @@
+#!/usr/bin/perl
+# Olivier Blin, 2007 <oblin@mandriva.com>
+# Licensed under the GPL
+
+
+use strict;
+use lib qw(lib /usr/lib/libDrakX);
+
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
+
+use standalone;
+use common;
+use run_program;
+use detect_devices;
+use interactive;
+use mygtk2;
+use ugtk2 qw(:create :helpers :wrappers);
+use Gtk2::SimpleList;
+use network::monitor;
+use network::signal_strength;
+use network::network;
+use network::tools;
+use network::connection;
+use network::connection::wireless;
+use network::connection::cellular_card;
+
+my $title = N("Network Center");
+my $icon = '/usr/share/mcc/themes/default/drakroam-mdk.png';
+
+$ugtk2::wm_icon = $icon;
+my $w = ugtk2->new($title);
+#- so that transient_for is defined, for wait messages and popups to be centered
+$::main_window = $w->{real_window};
+
+my @connections = map { $_->get_connections(automatic_only => 1) } network::connection::get_types;
+@connections = reverse(uniq_ { $_->{device} } reverse(@connections));
+
+sub build_networks_list {
+ my ($connection) = @_;
+
+ #- from drakroam
+ my %pixbufs =
+ (
+ state => { map { $_ => gtkcreate_pixbuf($_) } qw(connected disconnected refresh) },
+ link_level => { map {
+ $_ => gtkcreate_pixbuf('wifi-' . sprintf('%03d', $_) . '.png')->scale_simple(24, 24, 'hyper');
+ } qw(20 40 60 80 100) },
+ encryption => { map {
+ $_ => gtkcreate_pixbuf("encryption-$_-24.png");
+ } qw(open weak strong) },
+ );
+
+ #- from drakroam
+ my $networks_list = Gtk2::SimpleList->new(
+ "AP" => "hidden",
+ '' => "pixbuf",
+ '' => "pixbuf",
+ N("Signal strength") => "pixbuf",
+ N("SSID") => "text",
+ );
+ $networks_list->get_selection->set_mode('single');
+ $networks_list->set_headers_visible(0);
+
+ my $net = {};
+ network::network::read_net_conf($net);
+
+ #- from drakroam::update_networks()
+ $connection->{networks} = $connection->get_networks;
+ $connection->{network} ||= find { $connection->{networks}{$_}{current} } keys %{$connection->{networks}};
+ my $routes = network::tools::get_routes();
+ my $interface = $connection->get_interface;
+ my $connected = exists $routes->{$interface}{network};
+
+
+ $_->{configured} = $connection->network_is_configured($_) foreach values %{$connection->{networks}};
+ my @networks = sort {
+ $b->{configured} <=> $a->{configured} || $b->{signal_strength} <=> $a->{signal_strength} || $a->{name} cmp $b->{name};
+ } values %{$connection->{networks}};
+ my @valuable_networks = splice @networks, 0, 3;
+ foreach (@valuable_networks) {
+ my $ap = $_->{ap};
+ push @{$networks_list->{data}}, [
+ $ap || $_->{name},
+ $_->{current} ? $connected ? $pixbufs{state}{connected} : $pixbufs{state}{refresh} : undef,
+ $pixbufs{encryption}{$_->{flags} =~ /WPA/i ? 'strong' : $_->{flags} =~ /WEP/i ? 'weak' : 'open'},
+ network::signal_strength::get_strength_icon($_),
+ !$_->{essid} && exists $net->{wireless}{$ap} && $net->{wireless}{$ap}{WIRELESS_ESSID} || $_->{name},
+ ];
+ }
+
+ $networks_list;
+}
+
+sub gtkset_image {
+ my ($w, $file, $o_size) = @_;
+ my $image = $o_size
+ ? Gtk2::Image->new_from_pixbuf(gtkcreate_pixbuf($file)->scale_simple($o_size, $o_size, 'hyper'))
+ : gtknew('Image', file => $file);
+ $w->set_image($image);
+ $w;
+}
+
+gtkadd($w->{window},
+ gtknew('VBox', spacing => 5, children => [
+ $::isEmbedded ? () : (0, Gtk2::Banner->new($icon, $title)),
+ 1, gtknew('ScrolledWindow', width => 500, height => 300, child => gtknew('VBox', spacing => 5, children_tight => [
+ map {
+ gtknew('VBox', children_tight => [
+ gtknew('HBox', children_tight => [
+ gtknew('Image', file => $_->get_type_icon),
+ $_->get_description,
+ ]),
+ gtknew('HBox', children => [
+ 0, gtknew('Label', padding => [ 20, 0 ]),
+ 0, gtknew('VBox', children_tight => [
+ gtknew('HBox', children_tight => [
+ gtkset_image(gtknew('Button'), 'connected'),
+ gtkset_image(gtknew('Button'), 'monitor-24'),
+ gtkset_image(gtknew('Button'), 'configure-24'),
+ ($_->can('get_networks') ? (0, gtkset_image(gtknew('Button'), 'refresh')) : ()),
+ ]),
+ ]),
+ ($_->can('get_networks') && !$_->network_scan_is_slow ? (1, build_networks_list($_)) : ()),
+ ]),
+ ]);
+ } @connections,
+ ])),
+ ]),
+ );
+
+$w->main;
diff --git a/bin/draknetprofile b/bin/draknetprofile
new file mode 100755
index 0000000..49ca287
--- /dev/null
+++ b/bin/draknetprofile
@@ -0,0 +1,153 @@
+#!/usr/bin/perl
+
+# Copyright (C) 2006 Mandriva
+# Olivier Blin <blino@mandriva.com>
+# Thierry Vignaud <tvignaud@mandriva.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+use strict;
+
+use lib qw(/usr/lib/libDrakX);
+
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
+use standalone;
+
+use common;
+use network::network;
+use mygtk2;
+use Gtk2::SimpleList;
+use ugtk2 qw(:create :helpers :wrappers :dialogs);
+
+$ugtk2::wm_icon = 'draknetprofile-16';
+my $title = N("Network profiles");
+my $w = ugtk2->new($title);
+$::main_window = $w->{real_window}; #- so that transient_for is defined for wait messages and dialogs
+
+my $net = {};
+my @profiles;
+my $default_profile = "default";
+my %buttons;
+
+package Gtk2::CellRendererRadio;
+
+sub new {
+ my $renderer = Gtk2::CellRendererToggle->new;
+ $renderer->set_radio(1);
+ $renderer->set_property('mode', 'inert');
+ $renderer;
+}
+
+1;
+
+package main;
+
+Gtk2::SimpleList->add_column_type(
+ 'radio',
+ type => 'Glib::Boolean',
+ renderer => 'Gtk2::CellRendererRadio',
+ attr => 'active',
+);
+
+my $profiles_list = Gtk2::SimpleList->new(
+ "" => 'radio',
+ N("Profile") => 'text',
+);
+$profiles_list->get_selection->signal_connect('changed' => sub {
+ my ($index) = $profiles_list->get_selected_indices;
+ $_->set_sensitive(defined $index) foreach values %buttons;
+ });
+
+sub get_selected_profile() {
+ my ($index) = $profiles_list->get_selected_indices;
+ defined $index && $profiles_list->{data}[$index][1];
+}
+
+sub update_profiles() {
+ my $previous_profile = get_selected_profile();
+ network::network::netprofile_read($net);
+ @profiles = network::network::netprofile_list();
+ @{$profiles_list->{data}} = map { [ $_ eq $net->{PROFILE}, $_ ] } @profiles;
+ my $index = eval { find_index { $_ eq $previous_profile } @profiles };
+ $profiles_list->select($index) if defined $index;
+}
+
+sub set_selected_profile() {
+ my $profile = get_selected_profile();
+ gtkset_mousecursor_wait($w->{window}->window);
+ gtkflush();
+ network::network::netprofile_set($net, $profile);
+ gtkset_mousecursor_normal($w->{window}->window);
+ update_profiles();
+}
+
+sub clone_profile() {
+ my $source_profile = get_selected_profile();
+ my $dialog = _create_dialog(N("New profile..."));
+ my $entry_dialog = Gtk2::Entry->new;
+ gtkpack($dialog->vbox,
+ Gtk2::WrappedLabel->new(N("Name of the profile to create (the new profile is created as a copy of the current one):")),
+ $entry_dialog,
+ );
+ gtkpack($dialog->action_area,
+ gtksignal_connect(Gtk2::Button->new(N("Cancel")),
+ clicked => sub { $dialog->destroy }),
+ gtksignal_connect(my $bok = Gtk2::Button->new(N("Ok")), clicked => sub {
+ my $dest_profile = $entry_dialog->get_text;
+ # netprofile does not like spaces in profile names...
+ $dest_profile =~ s/ /_/g;
+ if (member($dest_profile, @profiles)) {
+ err_dialog(N("Error"), N("The \"%s\" profile already exists!", $dest_profile), { transient => $dialog });
+ return 1;
+ }
+ $dialog->destroy;
+ network::network::netprofile_clone($source_profile, $dest_profile);
+ update_profiles();
+ }),
+ );
+ $bok->can_default(1);
+ $bok->grab_default;
+ $dialog->show_all;
+}
+
+sub delete_selected_profile() {
+ my $profile = get_selected_profile();
+ if ($profile eq $default_profile) {
+ warn_dialog(N("Warning"), N("You can not delete the default profile"));
+ } elsif ($profile eq $net->{PROFILE}) {
+ warn_dialog(N("Warning"), N("You can not delete the current profile"));
+ } else {
+ network::network::netprofile_delete($profile);
+ update_profiles();
+ }
+}
+
+gtkadd($w->{window},
+ gtknew('VBox', spacing => 5, children => [
+ $::isEmbedded ? () : (0, Gtk2::Banner->new('draknetprofile', $title)),
+ 0, gtknew('WrappedLabel', text => N("This tool allows to activate an existing network profile, and to manage (clone, delete) profiles.") . "\n\n" . N("To modify a profile, you have to activate it first.")),
+ 1, gtknew('ScrolledWindow', width => 300, height => 150, child => $profiles_list),
+ 0, gtknew('HButtonBox', children_loose => [
+ $buttons{activate} = gtknew('Button', text => N("Activate"), clicked => \&set_selected_profile),
+ $buttons{clone} = gtknew('Button', text => N("Clone"), clicked => \&clone_profile),
+ $buttons{delete} = gtknew('Button', text => N("Delete"), clicked => \&delete_selected_profile),
+ gtknew('Button', text => N("Quit"), clicked => sub { Gtk2->main_quit }),
+ ]),
+ ]),
+ );
+
+update_profiles();
+$w->main;
diff --git a/bin/draknfs b/bin/draknfs
index f1bd916..a81d62d 100644
--- a/bin/draknfs
+++ b/bin/draknfs
@@ -1,6 +1,6 @@
#!/usr/bin/perl
#
-# Copyright (C) 2005 by Mandriva aginies _ateuh_ mandriva.com
+# Copyright (C) 2005-2006 by Mandriva aginies _ateuh_ mandriva.com
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -17,18 +17,18 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
-my $version = "0.3";
-
use strict;
use lib qw(/usr/lib/libDrakX);
use standalone;
use common;
use network::network;
use interactive;
+$ugtk2::wm_icon = 'IC-NFS-48';
+use mygtk2 qw(gtknew gtkset);
use ugtk2 qw(:ask :wrappers :create :dialogs);
my $in = 'interactive'->vnew('su');
-$in->do_pkgs->ensure_is_installed('nfs-utils', '/usr/sbin/rpc.nfsd') or return;
+$in->do_pkgs->ensure_is_installed('nfs-utils', '/sbin/rpc.statd') or return;
use constant COLUMN_DIR => 0;
use constant COLUMN_ACCESS => 1;
@@ -55,13 +55,14 @@ my @yesno = qw(yes no);
sub get_items() {
my @items = (
- [ "/_File", undef, undef, undef, '<Branch>', ],
- [ "/_File/_Write conf", undef, \&write_conf, 1, '<StockItem>', 'gtk-execute' ],
- [ "/_File/_Exit", undef, \&quit_all, 1, '<StockItem>', 'gtk-quit' ],
+ [ N("/_File"), undef, undef, undef, '<Branch>', ],
+ [ N("/_File") . N("/_Write conf"), undef, \&write_conf, 1, '<Item>', ],
+ [ N("/_File") . N("/_Quit"), N("<control>Q"), \&quit_all, 1, '<Item>', ],
+
- [ "/_NFS Server", undef, undef, undef, '<Branch>', ],
- [ "/_NFS Server/_Restart", undef, \&restart_dialog, 1, '<StockItem>', 'gtk-execute' ],
- [ "/_NFS Server/R_eload", undef, \&reload_dialog, 1, '<StockItem>', 'gtk-refresh' ],
+ [ N("/_NFS Server"), undef, undef, undef, '<Branch>', ],
+ [ N("/_NFS Server") . N("/_Restart"), undef, \&restart_dialog, 1, '<Item>', ],
+ [ N("/_NFS Server") . N("/R_eload"), undef, \&reload_dialog, 1, '<Item>', ],
);
return @items;
}
@@ -81,18 +82,18 @@ sub reload_dialog() {
sub wait_action {
my ($cmd) = @_;
my $w = $in->wait_message(N("NFS server"), N("Restarting/Reloading NFS server..."));
- run_program::get_stdout($cmd) !~ /unknown|error/ or err_dialog(N("Error!"), N("Error Restarting/Reloading NFS server")) and return;
+ run_program::get_stdout($cmd) !~ /unknown|error/ or err_dialog(N("Error"), N("Error Restarting/Reloading NFS server")) and return;
undef $w;
}
my %size_groups = map { $_ => Gtk2::SizeGroup->new('horizontal') } qw(label widget button);
my $label_and_widgets = sub {
my ($label, $widget, $button) = @_;
- gtkpack_(Gtk2::HBox->new(0,0),
- 0, gtkadd_widget($size_groups{label}, $label),
+ gtknew('HBox', children => [
+ 0, gtkadd_widget($size_groups{label}, gtknew('Label_Left', text => $label)),
0, gtkadd_widget($size_groups{widget}, $widget),
0, gtkadd_widget($size_groups{button}, $button),
- );
+ ]);
};
my $fdwidget = sub {
@@ -102,7 +103,7 @@ my $fdwidget = sub {
$fd->signal_connect("destroy", sub { $fd->hide });
$fd->ok_button->signal_connect(clicked => sub {
my $file = $fd->get_filename;
- -d $file or err_dialog(N("Error!"), N("Should be a directory.")) and return;
+ -d $file or err_dialog(N("Error"), N("Should be a directory.")) and return;
$data->set_text($file);
$fd->hide;
}, $fd);
@@ -168,46 +169,21 @@ my %adv_options = (
secured => N("Secured Connection:"),
ro => N("Read-Only share:"),
);
-my $help_global = join("\n\n\n", N("<span weight=\"bold\">Advanced Options</span>"),
-N("<span foreground=\"royalblue3\">%s:</span> this option requires that requests originate on an internet port less than IPPORT_RESERVED (1024). This option is on by default.", $adv_options{secured}),
-N("<span foreground=\"royalblue3\">%s:</span> allow either only read or both read and write requests on this NFS volume. The default is to disallow any request which changes the filesystem. This can also be made explicit by using this option.", $adv_options{ro}),
-N("<span foreground=\"royalblue3\">%s:</span> disallows the NFS server to violate the NFS protocol and to reply to requests before any changes made by these requests have been committed to stable storage (e.g. disc drive).", $adv_options{sync}),
+my $help_global = join("\n\n\n", '<b><big>' . N("Advanced Options") . '</big></b>',
+N("<span foreground=\"royalblue3\">%s</span> this option requires that requests originate on an internet port less than IPPORT_RESERVED (1024). This option is on by default.", $adv_options{secured}),
+N("<span foreground=\"royalblue3\">%s</span> allow either only read or both read and write requests on this NFS volume. The default is to disallow any request which changes the filesystem. This can also be made explicit by using this option.", $adv_options{ro}),
+N("<span foreground=\"royalblue3\">%s</span> disallows the NFS server to violate the NFS protocol and to reply to requests before any changes made by these requests have been committed to stable storage (e.g. disc drive).", $adv_options{sync}),
);
-sub create_pango_help_box {
- # perl code from draksec
- my ($help) = @_;
- my $text = Gtk2::TextView->new;
- use Gtk2::Pango;
- my %common_opts = ('left-margin' => '10', 'right-margin' => '10');
- gtktext_insert($text, [ map {
- if (s!^/span>!!) {
- [ $_, \%common_opts ];
- } elsif (s!span !!) {
- my %tags = %common_opts;
- while (s!(\w+?)="(\w+?)"!!) {
- $tags{weight} ||= Gtk2::Pango->PANGO_WEIGHT_BOLD if $1 eq 'foreground';
- $tags{$1} = $2 eq "bold" ? Gtk2::Pango->PANGO_WEIGHT_BOLD : $2;
- }
- s/^>//;
- [ $_, \%tags ];
- } else {
- [ $_, \%common_opts ];
- }
- } split("<", formatAlaTeX($help)) ]);
- gtkset_size_request(create_scrolled_window($text), 350, 300);
-}
-
sub help_b {
- my ($tittle, $help_data) = @_;
- gtksignal_connect(new Gtk2::Button->new(N("Information")), clicked => sub {
- my $dialog = _create_dialog();
- $dialog->set_transient_for($::main_window);
- $dialog->set_title(N("Help"));
- $dialog->set_modal(1);
+ my ($help_data) = @_;
+ gtksignal_connect(gtknew('Button', text => N("Information")), clicked => sub {
+ my $dialog = _create_dialog(N("Help"), { transient_for => $::main_window, modal => 1 });
gtkpack_($dialog->vbox,
- 1, create_pango_help_box($help_data),
- 0, gtksignal_connect(Gtk2::Button->new(N("Close")), clicked => sub {
+ 1, gtknew('ScrolledWindow', width => 350, height => 300,
+ child => gtknew('TextView', text => ugtk2::markup_to_TextView_format(formatAlaTeX($help_data)))
+ ),
+ 0, gtknew('Button', text => N("Close"), clicked => sub {
$dialog->destroy;
}
),
@@ -220,7 +196,7 @@ sub help_b {
sub get_access_list() {
my $net = {};
network::network::read_net_conf($net);
- my $interface ||= $net->{net_interface};
+ my $interface = $net->{net_interface};
my $ip_address = network::tools::get_interface_ip_address($net, $interface);
my $domain = chomp_(`dnsdomainname`);
my @o = split(/\./, $ip_address);
@@ -250,12 +226,8 @@ sub get_data_from_id {
sub get_user_or_group {
my ($what) = @_;
my $conf = "/etc/" . $what;
- my @data; local $_;
- foreach (cat_($conf)) {
- push @data, "$1 [$2]" if m/^([^#:]+):[^:]+:([^:]+):/ and $2 > 499;
- }
- push @data, " ";
- return sort(@data);
+ my @data = map { if_(m/^([^#:]+):[^:]+:([^:]+):/ && $2 > 499, "$1 [$2]") } cat_($conf);
+ return sort(@data, " ");
}
@@ -268,11 +240,11 @@ sub add_modify_entry {
my ($lr, $luserid, $lsecure, $lsync, $lr_data, $lsync_data, $lsecure_data);
undef $i; undef $iter;
- $_ = Gtk2::Entry->new foreach $dir, $options;
+ $_ = gtknew('Entry') foreach $dir, $options;
$_ = Gtk2::OptionMenu->new foreach $lr, $luserid, $lsecure, $lsync;
$access = Gtk2::Combo->new;
-# $access = Gtk2::ComboBox->new_text;
+# $access = gtknew('ComboBox');
my @access_list = get_access_list();
# foreach (@access_list) {
# $_ and $access->append_text($_);
@@ -285,20 +257,15 @@ sub add_modify_entry {
$lsecure->set_popdown_strings(@yesno);
my $file_dialog = $fdwidget->($dir);
- my $button = Gtk2::Button->new(N("Directory"));
+ my $button = gtknew('Button', text => N("Directory"));
$button->signal_connect(clicked => sub { $file_dialog->show });
# test if modify or add a nfs share
- my $dialog = _create_dialog();
- $dialog->set_transient_for($::main_window);
+ my $dialog = _create_dialog(N("Draknfs entry"), { transient_for => $::main_window, modal => 1 });
local $::main_window = $dialog;
- $dialog->set_title("Draknfs entry");
- $dialog->set_position('center');
- $dialog->set_modal(1);
- $dialog->set_resizable(1);
- my $anonuid = Gtk2::ComboBox->new_with_strings([ get_user_or_group('passwd') ]);
- my $anongid = Gtk2::ComboBox->new_with_strings([ get_user_or_group('group') ]);
+ my $anonuid = gtknew('ComboBox', list => [ get_user_or_group('passwd') ]);
+ my $anongid = gtknew('ComboBox', list => [ get_user_or_group('group') ]);
$_->set_wrap_width(3) foreach $anonuid, $anongid;
if ($wanted =~ /modify/) {
@@ -374,41 +341,29 @@ sub add_modify_entry {
}
my $expender = Gtk2::Expander->new('Advanced options');
- $expender->add(gtkpack_(Gtk2::VBox->new,
- 0, $label_and_widgets->($adv_options{sync}, $lsync, help_b(N_("Advanced Options Help"), $help_global)),
- 0, $label_and_widgets->($adv_options{secured}, $lsecure, ""),
- 0, $label_and_widgets->($adv_options{ro}, $lr, ""),
- ),
+ $expender->add(gtknew('VBox', spacing => 5, children_tight => [
+ $label_and_widgets->($adv_options{sync}, $lsync, help_b($help_global)),
+ $label_and_widgets->($adv_options{secured}, $lsecure, ""),
+ $label_and_widgets->($adv_options{ro}, $lr, ""),
+ ]),
);
$expender->signal_connect(activate => sub {
- gtkset_size_request($dialog, -1, -1);
+ gtkset($dialog);
gtkflush();
});
- gtkpack_($dialog->vbox,
- 0, gtkadd(Gtk2::Frame->new(N("NFS directory")),
- gtkpack_(gtkset_border_width(Gtk2::VBox->new, 5),
- 0, $label_and_widgets->(N("Directory:"), $dir, $button),
- ),
- ),
- 0, gtkadd(Gtk2::Frame->new(N("Host access")),
- gtkpack_(gtkset_border_width(Gtk2::VBox->new, 5),
- 0, $label_and_widgets->(N("Access:"), $access, help_b(N_("Hosts Access"), $help_access)),
- ),
- ),
- 0, gtkadd(Gtk2::Frame->new(N("User ID Mapping")),
- gtkpack_(gtkset_border_width(Gtk2::VBox->new, 5),
- 0, $label_and_widgets->(N("User ID:"), $luserid, help_b(N_("Help User ID"), $help_userid)),
- 0, $label_and_widgets->(N("Anonymous user ID:"), $anonuid, ""),
- 0, $label_and_widgets->(N("Anonymous Group ID:"), $anongid, ""),
- ),
- ),
- 0, gtkadd(Gtk2::Frame->new(""),
- gtkpack_(gtkset_border_width(Gtk2::VBox->new, 5),
- 0, $expender,
- ),
- ),
- 0, create_okcancel({
+ $dialog->vbox->set_spacing(5);
+ gtkpack__($dialog->vbox,
+ gtknew('Title2', label => N("NFS directory")),
+ $label_and_widgets->(N("Directory:"), $dir, $button),
+ gtknew('Title2', label => N("Host access")),
+ $label_and_widgets->(N("Access:"), $access, help_b($help_access)),
+ gtknew('Title2', label => N("User ID Mapping")),
+ $label_and_widgets->(N("User ID:"), $luserid, help_b($help_userid)),
+ $label_and_widgets->(N("Anonymous user ID:"), $anonuid, ""),
+ $label_and_widgets->(N("Anonymous Group ID:"), $anongid, ""),
+ $expender,
+ create_okcancel({
cancel_clicked => sub { $dialog->destroy },
ok_clicked => sub {
my ($anonu, $anong);
@@ -441,10 +396,13 @@ sub add_modify_entry {
my $all_right = join(",", grep { defined $_ } $luserid_toput, $anonu, $anong, $lsync_data, $lsecure_data, $lr_data);
my $test_dir = $dir->get_text;
- mkdir_p($test_dir) or err_dialog(N("Error!"), N("Can't create this directory.")) and return;
+ if (! $test_dir) {
+ err_dialog(N("Error"), N("Please specify a directory to share.")) and return;
+ }
+ mkdir_p($test_dir) or err_dialog(N("Error"), N("Can't create this directory.")) and return;
#my $test_access = $access->child->get_text;
my $test_access = $access->entry->get_text;
- $test_access or err_dialog(N("Error!"), N("You must specify hosts access.")) and return;
+ $test_access or err_dialog(N("Error"), N("You must specify hosts access.")) and return;
if ($wanted =~ /add/) {
$iter = $model->append;
$i = "-1";
@@ -477,7 +435,7 @@ sub add_modify_entry {
}
sub remove_entry {
- my ($widget, $treeview) = @_;
+ my ($treeview) = @_;
my $model = $treeview->get_model;
my $selection = $treeview->get_selection;
my $iter = $selection->get_selected;
@@ -536,14 +494,14 @@ sub cell_edited {
if ($column == COLUMN_DIR) {
my $i = ($path->get_indices)[0];
$listshare[$i]{dir} = $new_text;
- -d $new_text or err_dialog(N("Error!"), N("Please enter a directory to share.")) and return;
+ -d $new_text or err_dialog(N("Error"), N("Please enter a directory to share.")) and return;
$model->set($iter, $column, $listshare[$i]{dir});
} elsif ($column == COLUMN_ACCESS) {
my $i = ($path->get_indices)[0];
$listshare[$i]{access} = $new_text;
$model->set($iter, $column, $listshare[$i]{access});
} elsif ($column == COLUMN_RIGHT) {
- err_dialog(N("Error!"), N("Please use the modify button to set right access.")) and return;
+ err_dialog(N("Error"), N("Please use the modify button to set right access.")) and return;
} elsif ($column == COLUMN_OPTIONS) {
my $i = ($path->get_indices)[0];
$listshare[$i]{options} = $new_text;
@@ -558,7 +516,7 @@ sub cell_edited {
# create model
my $model = create_model();
-my $window = ugtk2->new("DrakNFS");
+my $window = ugtk2->new(N("Manage NFS shares"));
$::main_window = $window->{real_window};
$window->{rwindow}->set_size_request(550, 400) unless $::isEmbedded;
$window->{rwindow}->set_position('center') if !$::isEmbedded;
@@ -595,38 +553,38 @@ my $okcancel = create_okcancel({
);
# main interface
-$W->add(gtkpack_(Gtk2::VBox->new(0,0),
+$W->add(gtknew('VBox', children => [
0, $menu,
- if_(!$::isEmbedded, 0, Gtk2::Banner->new('IC-NFS-48', N("DrakNFS manage NFS shares"))),
- #if_($::isEmbedded, 0, Gtk2::Label->new("Here you can add, remove and alter NFS shares.")),
- 1, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 0),
- 1, create_scrolled_window($treeview),
+ 0, Gtk2::Banner->new('IC-NFS-48', N("DrakNFS manage NFS shares")),
+ #if_($::isEmbedded, 0, gtknew('Label', text => "Here you can add, remove and alter NFS shares.")),
+ 1, gtknew('HBox', border_width => 0, children => [
+ 1, gtknew('ScrolledWindow', child => $treeview),
0, gtkpack_(create_vbox('start'),
- 0, gtksignal_connect(Gtk2::Button->new(N("Add")), clicked => sub {
+ 0, gtknew('Button', text => N("Add"), clicked => sub {
eval { add_modify_entry($treeview, "add") };
my $err = $@;
if ($err) {
err_dialog(N("Error"), N("Failed to add NFS share.") . "\n\n" . $err);
}
}),
- 0, gtksignal_connect(Gtk2::Button->new(N("Modify")), clicked => sub {
+ 0, gtknew('Button', text => N("Modify"), clicked => sub {
eval { add_modify_entry($treeview, "modify") };
my $err = $@;
if ($err) {
err_dialog(N("Error"), N("Failed to Modify NFS share.") . "\n\n" . $err);
}
}),
- 0, gtksignal_connect(Gtk2::Button->new(N("Remove")), clicked => sub {
- eval { remove_entry($model, $treeview) };
+ 0, gtknew('Button', text => N("Remove"), clicked => sub {
+ eval { remove_entry($treeview) };
my $err = $@;
if ($err) {
err_dialog(N("Error"), N("Failed to remove an NFS share.") . "\n\n" . $err);
}
}),
),
- ),
+ ]),
0, $okcancel,
- ),
+ ]),
);
$W->show_all;
diff --git a/bin/drakproxy b/bin/drakproxy
index 9ef2f28..0752f7b 100755
--- a/bin/drakproxy
+++ b/bin/drakproxy
@@ -2,7 +2,7 @@
# DrakProxy
-# Copyright (C) 1999-2005 Mandriva (damien@mandrakesoft.com)
+# Copyright (C) 1999-2006 Mandriva (damien@mandrakesoft.com)
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -20,6 +20,8 @@
use lib qw(/usr/lib/libDrakX);
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use standalone; #- warning, standalone must be loaded very first, for 'explanations'
use interactive;
use network::network;
@@ -29,6 +31,11 @@ use common;
$ugtk2::wm_icon = "/usr/share/mcc/themes/default/drakproxy-mdk.png";
my $u = { getVarsFromSh('/etc/profile.d/proxy.sh') };
my $in = 'interactive'->vnew('su');
-network::network::miscellaneous_choose($in, $u);
-network::network::proxy_configure($u);
+if (network::network::miscellaneous_choose($in, $u)) {
+ network::network::proxy_configure($u);
+ if ($in->ask_okcancel(N("Warning"), N("You need to log out and back in again for changes to take effect"), 1)) {
+ my $wm = any::running_window_manager();
+ $wm and any::ask_window_manager_to_logout($wm);
+ }
+}
$in->exit(0);
diff --git a/bin/drakroam b/bin/drakroam
index 5511e76..a642aec 100755
--- a/bin/drakroam
+++ b/bin/drakroam
@@ -2,12 +2,14 @@
# drakroam: wireless network roaming GUI
# Austin Acton, 2004 <austin@mandriva.org>
-# Olivier Blin, 2005 <oblin@mandriva.com>
+# Olivier Blin, 2005-2006 <oblin@mandriva.com>
# Licensed under the GPL
use strict;
use lib qw(/usr/lib/libDrakX);
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use standalone;
use common;
use run_program;
@@ -16,33 +18,104 @@ use interactive;
use mygtk2;
use ugtk2 qw(:create :helpers :wrappers);
use Gtk2::SimpleList;
-use network::ethernet;
use network::monitor;
+use network::signal_strength;
use network::network;
use network::tools;
-use network::wireless;
-
+use network::connection;
+use network::connection::wireless;
+use network::connection::cellular_card;
+use modules;
+
+my $title = N("Wireless connection");
+my $icon = '/usr/share/mcc/themes/default/drakroam-mdk.png';
+
+$ugtk2::wm_icon = $icon;
+my $w = ugtk2->new($title);
+#- so that transient_for is defined, for wait messages and popups to be centered
+$::main_window = $w->{real_window};
my $in = 'interactive'->vnew('su');
-my $arg_ap;
-/^--ap=(.*)/ and $arg_ap = $1 foreach @ARGV;
+my %args = map { if_(/^--(\w+)=(.*)$/ && member($1, qw(ap interface)), $1 => $2) } @ARGV;
+
+my @connection_types = qw(network::connection::wireless network::connection::cellular_card);
+my @connections;
+my $connection;
+
+my %buttons;
+
+my $model = Gtk2::ListStore->new('Gtk2::Gdk::Pixbuf', 'Glib::String');
+my $connections_combo = Gtk2::ComboBox->new($model);
+$connections_combo = Gtk2::ComboBox->new($model);
+my $pix_r = Gtk2::CellRendererPixbuf->new;
+$connections_combo->pack_start($pix_r, 0,);
+$connections_combo->add_attribute($pix_r, pixbuf => 0);
+my $text_r = Gtk2::CellRendererText->new;
+$connections_combo->pack_start($text_r, 1);
+$connections_combo->add_attribute($text_r, text => 1);
+
+my $pixbuf_size = 32;
+my $empty_pixbuf = Gtk2::Gdk::Pixbuf->new('rgb', 1, 8, $pixbuf_size, $pixbuf_size);
+$empty_pixbuf->fill(0);
+
+sub update_connections_list() {
+ $model->set($model->append, 0, $empty_pixbuf , 1, N("No device found")) unless @connections;
+ $model->set($model->append,
+ 0, gtknew('Pixbuf', file => $_->get_type_icon)->scale_simple($pixbuf_size, $pixbuf_size, 'hyper'),
+ 1, $_->get_description) foreach @connections;
+ my $index = $connection && eval { find_index { $_ == $connection } @connections };
+ $connections_combo->set_active($index) if defined $index;
+}
-my $wireless_device = detect_devices::get_wireless_interface();
+sub get_connection() {
+ @connections or return;
+ my $index = $connections_combo->get_active;
+ defined $index && $connections[$index];
+}
-unless ($wireless_device) {
- ugtk2::err_dialog(N("Error"), N("You do not have any wireless interface.
-Run the \"%s\" assistant from the Mandriva Linux Control Center", N("Set up a new network interface (LAN, ISDN, ADSL, ...)")));
- ugtk2::exit(0) if !$::testing;
+sub prepare_connection() {
+ my @packages = $connection->can('get_packages') ? $connection->get_packages : ();
+ if (@packages && !$in->do_pkgs->install(@packages)) {
+ $in->ask_warn(N("Error"), N("Could not install the packages (%s)!", join(', ', @packages)));
+ return;
+ }
+ $connection->prepare_device;
+ $connection->setup_thirdparty($in) or return;
+ if ($connection->can("check_device") && !$connection->check_device) {
+ $in->ask_warn(N("Error"), $connection->{device}{error});
+ return;
+ }
+ if ($connection->can('get_hardware_settings')) {
+ $connection->guess_hardware_settings if $connection->can('guess_hardware_settings');
+ $in->ask_from_({
+ title => "Network settings",
+ messages => N("Please enter settings for network")
+ }, $connection->get_hardware_settings) or return;
+ }
+ if ($connection->can('check_hardware')) {
+ my $_w = $in->wait_message('', N("Configuring device..."));
+ if (!$connection->check_hardware) {
+ $in->ask_warn(N("Error"), $connection->{hardware}{error}) if $connection->{hardware}{error};
+ return;
+ }
+ }
}
-my $modules_conf = modules::any_conf->read;
-my $dev = find { $_->[0] eq $wireless_device } network::ethernet::get_eth_cards($modules_conf);
-my $wireless_module = $dev->[1];
+sub select_connection() {
+ $connection = get_connection();
+ prepare_connection() if $connection;
+ update_on_connection_change();
+}
+
+sub update_on_connection_change() {
+ $buttons{refresh}->set_sensitive(to_bool($connection));
+ update_networks();
+}
my $net = {};
network::network::read_net_conf($net);
-my $wireless_list = Gtk2::SimpleList->new(
+my $networks_list = Gtk2::SimpleList->new(
"AP" => "hidden",
'' => "pixbuf",
N("SSID") => "text",
@@ -51,13 +124,39 @@ my $wireless_list = Gtk2::SimpleList->new(
N("Encryption") => "text",
N("Operating Mode") => "text",
);
-$wireless_list->get_selection->set_mode('single');
+$networks_list->get_selection->set_mode('single');
+
+my $status_bar = Gtk2::Statusbar->new;
+my $status_bar_cid = $status_bar->get_context_id("Network event");
+
+sub get_network_event_message {
+ my ($member, @args) = @_;
+ #- FIXME: the hostname.d script and s2u use a different D-Bus interface
+ if ($member eq 'hostname') {
+ my ($hostname) = @args;
+ N("Hostname changed to \"%s\"", $hostname);
+ } elsif ($member eq 'status') {
+ my ($status, $interface) = @args;
+ my $event_connection = find { $_->get_interface eq $interface } @connections;
+ $event_connection && $event_connection->get_status_message($status);
+ }
+}
-my ($dbus, $monitor);
+my $dbus;
eval { $dbus = dbus_object::system_bus() };
-eval { $monitor = network::monitor->new($dbus) } if $dbus;
-my $wireless_networks = {};
-my $has_roaming;
+if ($dbus) {
+ eval { $net->{monitor} = network::monitor->new($dbus) };
+ $dbus->{connection}->add_filter(sub {
+ my ($_con, $msg) = @_;
+ my $member = $msg->get_member;
+ my $message = get_network_event_message($member, $msg->get_args_list) or return;
+ my $m_id = $status_bar->push($status_bar_cid, $message);
+ Glib::Timeout->add(20000, sub { $status_bar->remove($status_bar_cid, $m_id); 0 });
+ update_networks() if $member eq 'status';
+ });
+ $dbus->{connection}->add_match("type='signal',interface='com.mandriva.network'");
+ dbus_object::set_gtk2_watch_helper($dbus);
+}
my %pixbufs =
(
@@ -65,174 +164,176 @@ my %pixbufs =
link_level => { map {
$_ => gtkcreate_pixbuf('wifi-' . sprintf('%03d', $_) . '.png')->scale_simple(24, 24, 'hyper');
} qw(20 40 60 80 100) },
- keyring => gtkcreate_pixbuf("/usr/share/pixmaps/keyring-small.png")->scale_simple(24, 24, 'hyper'), #- provided by usermode, required by drakxtools
+ encryption => { map {
+ $_ => gtkcreate_pixbuf("encryption-$_-24.png");
+ } qw(open weak strong) },
);
sub update_networks() {
- ($wireless_networks, $has_roaming) = network::monitor::list_wireless($monitor, $wireless_device);
- @{$wireless_list->{data}} = ();
-
- my $routes = network::tools::get_routes();
- my $connected = exists $routes->{$wireless_device}{network};
-
- while (my ($ap, $network) = each(%$wireless_networks)) {
- push @{$wireless_list->{data}}, [
- $ap,
- $network->{current} ? $connected ? $pixbufs{state}{connected} : $pixbufs{state}{refresh} : undef,
- $network->{essid} || exists $net->{wireless}{$ap} && $net->{wireless}{$ap}{WIRELESS_ESSID} || "[$ap]",
- $pixbufs{link_level}{$network->{approx_level}},
- $network->{flags} ? $pixbufs{keyring} : undef,
- $network->{flags},
- $network->{mode},
- ];
+ @{$networks_list->{data}} = ();
+
+ if ($connection) {
+ my $wait = $connection->network_scan_is_slow && $in->wait_message('', N("Scanning for networks..."));
+ $connection->{networks} = $connection->get_networks;
+ undef $wait;
+
+ $connection->{network} ||= find { $connection->{networks}{$_}{current} } keys %{$connection->{networks}};
+
+ my $routes = network::tools::get_routes();
+ my $interface = $connection->get_interface;
+ my $connected = exists $routes->{$interface}{network};
+
+ while (my ($ap, $network) = each(%{$connection->{networks}})) {
+ push @{$networks_list->{data}}, [
+ $ap || $network->{name},
+ $network->{current} ? $connected ? $pixbufs{state}{connected} : $pixbufs{state}{refresh} : undef,
+ !$network->{essid} && exists $net->{wireless}{$ap} && $net->{wireless}{$ap}{WIRELESS_ESSID} || $network->{name},
+ network::signal_strength::get_strength_icon($network),
+ $pixbufs{encryption}{$network->{flags} =~ /WPA/i ? 'strong' : $network->{flags} =~ /WEP/i ? 'weak' : 'open'},
+ $network->{flags},
+ $network->{mode},
+ ];
+ }
+
+ if ($connection->{network}) {
+ my $index = eval { find_index { $_->[0] eq $connection->{network} } @{$networks_list->{data}} };
+ $networks_list->select($index) if defined $index;
+ }
}
- 1;
-}
-sub configure_ap {
- my ($ap) = @_;
- my $network = $wireless_networks->{$ap};
- my $essid = $network->{essid};
- my $wireless_net =
- $essid && exists $net->{wireless}{$essid} ?
- $net->{wireless}{$essid} :
- exists $net->{wireless}{$ap} ?
- $net->{wireless}{$ap} :
- {};
- $wireless_net->{WIRELESS_ESSID} = $essid if $essid;
+ update_on_network_change();
+}
- my ($wireless_enc_mode, $wireless_enc_key, $wireless_restricted);
- ($wireless_enc_key, $wireless_restricted) = network::wireless::get_wep_key_from_iwconfig($wireless_net->{WIRELESS_ENC_KEY});
- $wireless_enc_mode = $network->{flags} =~ /wpa/i ? 'wpa-psk' : $network->{flags} =~ /wep/i ? $wireless_restricted ? 'restricted' : 'open' : 'none';
+sub load_settings() {
+ $connection->load_interface_settings;
+ $connection->guess_network_access_settings if $connection->can('guess_network_access_settings');
+ $connection->guess_protocol($net) if $connection->can('guess_protocol');
+ $connection->guess_access_settings if $connection->can('guess_access_settings');
+ $connection->guess_address_settings if $connection->can('guess_address_settings');
+ $connection->guess_hostname_settings if $connection->can('guess_hostname_settings');
+ $connection->guess_network_control_settings if $connection->can('guess_network_control_settings');
+ $connection->guess_control_settings;
+}
- my $dhcp = to_bool(!exists($wireless_net->{BOOTPROTO}) || $wireless_net->{BOOTPROTO} eq "dhcp");
+sub configure_network() {
+ load_settings();
$in->ask_from_({
- title => "Wireless settings",
- messages => N("Please enter settings for wireless network \"%s\"", $essid || $ap)
+ title => "Network settings",
+ messages => N("Please enter settings for network")
},
[
- { label => N("Network name (ESSID)"), val => \$wireless_net->{WIRELESS_ESSID}, disabled => sub { $essid } },
- { label => N("Encryption mode"), val => \$wireless_enc_mode,
- list => [ keys %network::wireless::wireless_enc_modes ],
- sort => 1,
- format => sub { translate($network::wireless::wireless_enc_modes{$_[0]}) } },
- { label => N("Encryption key"), val => \$wireless_enc_key, disabled => sub { $wireless_enc_mode eq 'none' } },
- { text => N("Automatic IP (BOOTP/DHCP)"), val => \$dhcp, type => 'bool' },
- { label => N("IP address"), val => \$wireless_net->{IPADDR}, disabled => sub { $dhcp } },
- { label => N("DNS server"), val => \$wireless_net->{MS_DNS1}, disabled => sub { $dhcp } },
- { label => N("Gateway IP address"), val => \$wireless_net->{GATEWAY}, disabled => sub { $dhcp } },
+ $connection->can('get_network_access_settings') ? (
+ { label => $connection->get_network_access_settings_label, title => 1, advanced => 1 },
+ @{$connection->get_network_access_settings},
+ ) : (),
+ $connection->can('get_protocols') ? (
+ @{$connection->get_protocol_settings},
+ ) : (),
+ $connection->can('get_access_settings') ? (
+ { label => $connection->get_access_settings_label, title => 1, advanced => 1 },
+ @{$connection->get_access_settings}
+ ) : (),
+ $connection->can('get_address_settings') ? (
+ { label => $connection->get_address_settings_label, title => 1, advanced => 1 },
+ @{$connection->get_address_settings('show_all')}
+ ) : (),
+ $connection->can('get_network_control_settings') ? (
+ @{$connection->get_network_control_settings}
+ ) : (),
],
) or return;
- $wireless_net->{BOOTPROTO} = $dhcp ? 'dhcp' : 'static';
- $wireless_net->{WIRELESS_ENC_KEY} = $wireless_enc_key && network::wireless::convert_wep_key_for_iwconfig($wireless_enc_key, $wireless_enc_mode eq 'restricted');
- $wireless_net->{WIRELESS_MODE} = $network->{mode} eq 'Ad-Hoc' ? $network->{mode} : 'Managed';
-
- if ($has_roaming || $wireless_enc_mode eq 'wpa-psk') {
- $wireless_net->{WIRELESS_WPA_DRIVER} = network::wireless::wpa_supplicant_get_driver($wireless_module);
- network::wireless::wpa_supplicant_add_network($wireless_net->{WIRELESS_ESSID}, $wireless_enc_mode, $wireless_enc_key);
- } else {
- delete $wireless_net->{WIRELESS_WPA_DRIVER};
- }
-
- my $ssid = $essid || $ap;
- $net->{wireless}{$ssid} = $wireless_net;
+ $connection->install_packages($in) if $connection->can('install_packages');
+ $connection->unload_connection if $connection->can('unload_connection');
- network::network::write_wireless_conf($ssid, $wireless_net);
-
- if ($has_roaming) {
- #- this should be handled by the monitoring daemon instead
- run_program::run('/usr/sbin/wpa_cli', 'reconfigure');
- } else {
- overwrite_wireless_ifcfg($wireless_net);
- }
+ my $modules_conf = modules::any_conf->read;
+ $connection->write_settings($net, $modules_conf);
+ $modules_conf->write;
1;
}
-sub overwrite_wireless_ifcfg {
- my ($wireless_net) = @_;
- my $ifcfg = $net->{ifcfg}{$wireless_device} ||= {};
- delete $ifcfg->{$_} foreach grep { /wireless/i } keys %$ifcfg;
- put_in_hash($ifcfg, $wireless_net);
- network::network::write_interface_conf($net, $wireless_device);
-}
-
-sub wait_and_run_sub {
- my ($time, $sub) = @_;
- gtkset_mousecursor_wait();
- Glib::Timeout->add($time, sub {
- $sub->();
- gtkset_mousecursor_normal();
- 0;
- });
-}
-
-sub connect_to_ap {
- my ($ap, $o_disable_configure) = @_;
- my $network = $wireless_networks->{$ap};
- my $found;
-
- if ($network) {
- my $wireless_net = !$has_roaming && ($net->{wireless}{$ap} || $net->{wireless}{$network->{essid}});
- if (defined $network->{id}) {
- eval { $monitor->select_network($network->{id}) };
- $found = !$@;
- $found or ugtk2::err_dialog(N("Wireless connection"), N("Unable to contact daemon"));
- } elsif ($wireless_net) {
- network::tools::stop_interface($wireless_device, 0);
- overwrite_wireless_ifcfg($wireless_net);
- network::tools::start_interface($wireless_device, 1);
- $found = 1;
+sub connect_to_network() {
+ if ($connection->selected_network_is_configured || configure_network()) {
+ gtkset_mousecursor_wait($w->{window}->window);
+ my $_wait = $in->wait_message(N("Please wait"), N("Connecting..."));
+ #- settings have to be rewritten only if they are impacted by choices from the main window
+ if ($connection->can('get_networks')) {
+ load_settings();
+ $connection->write_settings($net);
}
+ $connection->prepare_connection if $connection->can('prepare_connection');
+ $connection->disconnect;
+ $connection->connect($in, $net);
+ gtkset_mousecursor_normal($w->{window}->window);
}
+}
- $found || !$o_disable_configure or return;
-
- if (!$found) {
- if ($has_roaming) {
- configure_ap($ap);
- #- wait for wpa_supplicant to reconfigure the device
- wait_and_run_sub(2000, sub { connect_to_ap($ap, 1) });
- return;
- } else {
- network::tools::stop_interface($wireless_device, 0);
- configure_ap($ap);
- network::tools::start_interface($wireless_device, 0);
- }
+sub select_network() {
+ if ($connection) {
+ my ($selected) = $networks_list->get_selected_indices;
+ $connection->{network} = defined $selected && $networks_list->{data}[$selected][0];
}
- wait_and_run_sub(10000, \&update_networks);
+ update_on_network_change();
}
-sub configure_selected() {
- my ($selected) = $wireless_list->get_selected_indices or return;
- configure_ap($wireless_list->{data}[$selected][0]);
+sub update_on_network_change() {
+ $buttons{connect}->set_label(toggle_would_disconnect() ? N("Disconnect") : N("Connect"));
+ #- always allow to disconnect if connected
+ $buttons{connect}->set_sensitive($connection && ($connection->get_status || $connection->{network}));
+ #- allow to configure only if a network is selected
+ $buttons{configure}->set_sensitive($connection && $connection->{network});
}
-sub connect_to_selected() {
- my ($selected) = $wireless_list->get_selected_indices or return;
- connect_to_ap($wireless_list->{data}[$selected][0]);
+sub toggle_would_disconnect() {
+ my $network = $connection && $connection->get_selected_network;
+ $connection && $connection->get_status &&
+ (!$network || keys(%{$connection->{networks}}) <= 1 || $network->{current});
}
-update_networks();
+sub toggle_connection() {
+ if (toggle_would_disconnect()) {
+ gtkset_mousecursor_wait($w->{window}->window);
+ my $_wait = $in->wait_message(N("Please wait"), N("Disconnecting..."));
+ $connection->disconnect;
+ gtkset_mousecursor_normal($w->{window}->window);
+ } elsif ($connection) {
+ $connection->{network} or return;
+ connect_to_network();
+ }
+ update_on_network_change();
+}
-my $w = ugtk2->new(N("Wireless connection"));
gtkadd($w->{window},
gtknew('VBox', spacing => 5, children => [
- $::isEmbedded ? () : (0, Gtk2::Banner->new('/usr/share/mcc/themes/default/drakroam-mdk.png', N("Wireless connection"))),
- 1, gtknew('HBox', spacing => 5, children => [
- 1, gtknew('ScrolledWindow', width => 500, height => 300, child => $wireless_list),
- 0, gtknew('VButtonBox', layout => 'edge', children_loose => [
- gtknew('Button', text => N("Configure"), clicked => \&configure_selected),
- gtknew('Button', text => N("Connect"), clicked => \&connect_to_selected),
- gtknew('Button', text => N("Refresh"), clicked => \&update_networks),
+ $::isEmbedded ? () : (0, Gtk2::Banner->new($icon, $title)),
+ 0, gtknew('HBox', children_tight => [ gtknew('Label_Left', text => N("Device: "), alignment => [ 0.5, 0.5 ]),
+ gtksignal_connect($connections_combo, changed => \&select_connection) ]),
+ 1, gtknew('ScrolledWindow', width => 500, height => 300, child => $networks_list),
+ 0, gtknew('HButtonBox', layout => 'edge', children_loose => [
+ $buttons{configure} = gtknew('Button', text => N("Configure"), clicked => \&configure_network),
+ $buttons{connect} = gtknew('Button', relief => 'half', clicked => \&toggle_connection),
+ $buttons{refresh} = gtknew('Button', text => N("Refresh"), clicked => \&update_networks),
gtknew('Button', text => N("Quit"), clicked => sub { Gtk2->main_quit })
- ]),
]),
+ 0, $status_bar,
]),
);
+$networks_list->get_selection->signal_connect('changed' => \&select_network);
+
+$w->show;
-$arg_ap and Glib::Timeout->add(100, sub { connect_to_ap($arg_ap); 0 });
+@connections = map { $_->get_connections(automatic_only => 1) } @connection_types;
+$connection = $args{interface} && find { $_->get_interface eq $args{interface} } @connections;
+$connection ||= find { !$_->network_scan_is_slow } @connections;
+update_connections_list();
+update_on_connection_change();
+
+if ($args{ap} && $connection) {
+ $connection->{network} = $args{ap};
+ $w->{window}->show_all;
+ connect_to_network();
+}
$w->main;
diff --git a/bin/draksambashare b/bin/draksambashare
index bd29dfc..e747d66 100755
--- a/bin/draksambashare
+++ b/bin/draksambashare
@@ -1,6 +1,7 @@
#!/usr/bin/perl
+# -*- coding: utf-8 -*-
#
-# Copyright (C) 2005 by Mandriva aginies _ateuh_ mandriva.com
+# Copyright (C) 2006 by Mandriva aginies _ateuh_ mandriva.com
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -19,16 +20,18 @@
my $version = "0.2";
+use utf8;
use strict;
use lib qw(/usr/lib/libDrakX);
use standalone;
use common;
use network::network;
use interactive;
-use ugtk2 qw(:ask :wrappers :create :dialogs);
use mygtk2 qw(gtknew);
+use ugtk2 qw(:ask :wrappers :create :dialogs);
use Gtk2::SimpleList;
use Gtk2::Gdk::Keysyms;
+use run_program;
# use libconf
use Libconf::Templates;
@@ -130,7 +133,7 @@ sub sort_by_column {
#path comment browseable printable print command guest ok writable write list inherit permissions printing lpq command create mode use client driver
-my $samba = new Libconf::Glueconf::Samba::Smb_conf({ filename => '/etc/samba/smb.conf'});
+my $samba = Libconf::Glueconf::Samba::Smb_conf->new({ filename => '/etc/samba/smb.conf' });
my (@listshare, @listprinters, @listusers);
my @yesno = qw(yes no); push @yesno, "";
my @default_case = qw(upper lower); push @default_case, "";
@@ -151,20 +154,39 @@ my %adv_options = (
inherit_permissions => N("Inherit permissions"),
);
+my $window;
+
sub get_items() {
my @items = (
- [ "/_File", undef, undef, undef, '<Branch>', ],
- [ "/_File/_Write conf", undef, \&write_conf, 1, '<StockItem>', 'gtk-execute' ],
- [ "/_File/_Exit", undef, \&quit_all, 1, '<StockItem>', 'gtk-quit' ],
-
- [ "/_Samba Server", undef, undef, undef, '<Branch>', ],
- [ "/_Samba Server/_Restart", undef, \&restart_dialog, 1, '<StockItem>', 'gtk-execute' ],
- [ "/_Samba Server/R_eload", undef, \&reload_dialog, 1, '<StockItem>', 'gtk-refresh' ],
-
- [ "/_About/Report a bug", undef, sub { unless (fork()) { exec("drakbug --report draksambashare &") } }, 1, '<StockItem>', 'gtk-stop' ],
- [ "/_About/About...", undef, sub {
- create_dialog(N("About Draksambashare"), N("Mandriva Linux \nRelease: %s\nAuthor: Antoine Ginies\n\nThis is a simple tool to easily manage Samba configuration.", $version));
- }, 1, '<StockItem>', 'gtk-preferences' ],
+ [ N("/_File"), undef, undef, undef, '<Branch>', ],
+ [ N("/_File") . N("/_Write conf"), undef, \&write_conf, 1, '<Item>', ],
+ [ N("/_File") . N("/_Quit"), N("<control>Q"), \&quit_all, 1, '<Item>', ],
+
+ [ N("/_Samba Server"), undef, undef, undef, '<Branch>', ],
+ [ N("/_Samba Server") . N("/_Restart"), undef, \&restart_dialog, 1, '<Item>', ],
+ [ N("/_Samba Server") . N("/R_eload"), undef, \&reload_dialog, 1, '<Item>', ],
+
+ [ N("/_About") . N("/_Report Bug"), undef, sub { run_program::raw({ detach => 1 }, 'drakbug', '--report', 'draksambashare') }, 1, '<Item>', ],
+ [ N("/_About") . N("/About..."), undef, sub {
+ my $license = formatAlaTeX(translate($::license));
+ $license =~ s/\n/\n\n/sg; # nicer formatting
+ my $w = gtknew('AboutDialog', name => N("Draksambashare"),
+ version => '2007',
+ copyright => N("Copyright (C) %s by Mandriva", '2001-2006'),
+ license => $license, wrap_license => 1,
+ comments => N("This is a simple tool to easily manage Samba configuration."),
+ website => 'http://mandrivalinux.com',
+ website_label => N("Mandriva Linux"),
+ authors => 'Antoine Ginies <aginies@mandriva.com>',
+ artists => 'Hélène Durosini <ln@mandriva.com>',
+ translator_credits =>
+ #-PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+ N("_: Translator(s) name(s) & email(s)\n"),
+ transient_for => $window->{real_window}, modal => 1, position_policy => 'center-on-parent',
+ );
+ $w->show_all;
+ $w->run;
+ }, 1, '<Item>', ],
);
return @items;
}
@@ -183,7 +205,7 @@ sub reload_dialog() {
sub wait_action {
my ($cmd) = @_;
- my $w = $in->wait_message(N("Samba server"), N("Restarting/Reloading Samba server..."));
+ my $w = $in->wait_message(N("Please wait"), N("Restarting/Reloading Samba server..."));
run_program::get_stdout($cmd) !~ /unknown|error/ or err_dialog(N("Error!"), N("Error Restarting/Reloading Samba server")) and return;
undef $w;
}
@@ -288,61 +310,17 @@ sub write_conf() {
$samba->write_conf("/etc/samba/smb.conf");
}
-sub create_pango_help_box {
- # perl code from draksec
- my ($help) = @_;
- my $text = Gtk2::TextView->new;
- use Gtk2::Pango;
- my %common_opts = ('left-margin' => '10', 'right-margin' => '10');
- gtktext_insert($text, [ map {
- if (s!^/span>!!) {
- [ $_, \%common_opts ];
- } elsif (s!span !!) {
- my %tags = %common_opts;
- while (s!(\w+?)="(\w+?)"!!) {
- $tags{weight} ||= Gtk2::Pango->PANGO_WEIGHT_BOLD if $1 eq 'foreground';
- $tags{$1} = $2 eq "bold" ? Gtk2::Pango->PANGO_WEIGHT_BOLD : $2;
- }
- s/^>//;
- [ $_, \%tags ];
- } else {
- [ $_, \%common_opts ];
- }
- } split("<", formatAlaTeX($help)) ]);
- gtkset_size_request(create_scrolled_window($text), 350, 300);
-}
-
-sub help_b {
- my ($help_data) = @_;
- gtksignal_connect(new Gtk2::Button->new_from_stock('gtk-dialog-info'), clicked => sub {
- my $dialog = _create_dialog();
- $dialog->set_transient_for($::main_window);
- $dialog->set_title(N("Help"));
- $dialog->set_modal(1);
- gtkpack_($dialog->vbox,
- 1, create_pango_help_box($help_data),
- 0, gtksignal_connect(Gtk2::Button->new_from_stock('gtk-close'), clicked => sub {
- $dialog->destroy;
- }
- ),
- );
- $dialog->show_all;
- }
- );
-}
sub printdollar_section() {
- $samba->{'print$'};
$samba->{'print$'}{browseable} = "yes";
$samba->{'print$'}{path} = "/var/lib/samba/printers";
$samba->{'print$'}{browseable} = "yes";
- $samba->{'print$'}{'write list'} = "\@adm root";
+ $samba->{'print$'}{'write list'} = '@adm root';
$samba->{'print$'}{'guest ok'} = "yes";
$samba->{'print$'}{'inherit permissions'} = "yes";
}
sub pdf_section() {
- $samba->{'pdf-gen'};
$samba->{'pdf-gen'}{path} = "/var/tmp";
$samba->{'pdf-gen'}{'guest ok'} = "no";
$samba->{'pdf-gen'}{printable} = "yes";
@@ -353,7 +331,6 @@ sub pdf_section() {
}
sub printers_section() {
- $samba->{printers};
$samba->{printers}{comment} = "All Printers";
$samba->{printers}{browseable} = "no";
$samba->{printers}{'guest ok'} = "yes";
@@ -366,71 +343,70 @@ sub printers_section() {
}
sub add_entry() {
- require wizards;
- my ($wiz_addshare_name, $wiz_addshare_comment, $wiz_addshare_path);
- my $wiz = wizards->new({
- name => N("Add a Samba share"),
- pages => {
- welcome => {
- name => N("Goal of this wizard is to easily create a new Samba share."),
- data => [
- { label => N("Name of the share:"), val => \$wiz_addshare_name },
- { label => N("Comment:"), val => \$wiz_addshare_comment },
- { label => N("Path:"), val => \$wiz_addshare_path },
- ],
- complete => sub {
- foreach my $clef (keys %$samba) {
- if ($clef =~ /$wiz_addshare_name/) {
- err_dialog(N("Error"), N("Share with the same name already exist or share name empty, please choose another name.")) and return 'welcome';
- }
- }
- if (!$wiz_addshare_path) {
- err_dialog(N("Error"), N("Can't create the directory, please enter a correct path.")) and return 'welcome';
- }
- if (!$wiz_addshare_comment) {
- err_dialog(N("Error"), N("Please enter a Comment for this share.")) and return 'welcome';
- }
- if (! -d $wiz_addshare_path) {
- mkdir_p($wiz_addshare_path) or err_dialog(N("Error"), N("Can't create the directory, please enter a correct path.")) and return 'welcome';
- }
- },
- post => sub {
- push @{$share_list->{data}}, [
- $pixbuf_file,
- $wiz_addshare_name,
- $wiz_addshare_path,
- $wiz_addshare_comment,
- ];
- my $share = $wiz_addshare_name;
- # update listshare
- push @listshare, {
- share_name => $share,
- path => $wiz_addshare_path,
- comment => $wiz_addshare_comment,
- };
- # update samba conf
- $samba->{$share};
- $samba->{$share}{path} = $wiz_addshare_path;
- $samba->{$share}{comment} = $wiz_addshare_comment;
- return;
- },
- no_back => 1,
- next => 'end_add',
- },
- end_add => {
- name => N("Congratulations"),
- data => [ { label => N("The wizard successfully added the Samba share. Now just double click on it in treeview to modify it") } ],
- no_back => 1,
- end => 1,
- next => 0,
- },
- }
- });
- $wiz->process($in);
- $::isWizard = 0;
- gtkset_mousecursor_normal();
+ my ($addshare_name, $addshare_comment, $addshare_dir);
+ $_ = Gtk2::Entry->new foreach $addshare_name, $addshare_comment, $addshare_dir;
+ my $file_dialog = $fdwidget->($addshare_dir, "");
+ my $button = Gtk2::Button->new(N("Open"));
+ $button->signal_connect(clicked => sub { $file_dialog->show });
+
+ my $dialog = _create_dialog(N("DrakSamba add entry"), { transient_for => $::main_window, modal => 1 });
+ local $::main_window = $dialog;
+
+ gtkpack_($dialog->vbox,
+ 0, gtkadd(Gtk2::Frame->new(N("Add a share")),
+ gtkpack_(gtkset_border_width(Gtk2::VBox->new, 3),
+ 0, gtkpack_(gtkset_border_width(Gtk2::VBox->new, 1),
+ 0, $label_and_widgets->(N("Name of the share:"), $addshare_name, ""),
+ 0, $label_and_widgets->(N("Comment:"), $addshare_comment, ""),
+ 0, $label_and_widgets->(N("Directory:"), $addshare_dir, $button),
+ ),
+ 0, gtkpack_(gtkset_border_width(Gtk2::VBox->new, 1),
+ 0, create_okcancel({
+ cancel_clicked => sub { $dialog->destroy },
+ ok_clicked => sub {
+ my $share = $addshare_name->get_text;
+ my $comment = $addshare_comment->get_text;
+ my $test_dir = $addshare_dir->get_text;
+ foreach my $clef (keys %$samba) {
+ if ($clef =~ /$share/) {
+ err_dialog(N("Error"), N("Share with the same name already exist or share name empty, please choose another name.")) and return;
+ }
+ }
+ if ($share ne 'homes' && !-d $test_dir) {
+ err_dialog(N("Error!"), N("Please enter a directory to share.")) and return;
+ }
+ if (! -d $test_dir) {
+ mkdir_p($test_dir) or err_dialog(N("Error"), N("Can't create the directory, please enter a correct path.")) and return;
+ }
+ if (! $comment) {
+ err_dialog(N("Error"), N("Please enter a Comment for this share.")) and return;
+ }
+ push @{$share_list->{data}}, [
+ $pixbuf_file,
+ $share,
+ $test_dir,
+ $comment,
+ ];
+ # update listshare
+ push @listshare, {
+ share_name => $share,
+ path => $test_dir,
+ comment => $comment,
+ };
+ # update samba conf
+ $samba->{$share}{path} = $test_dir;
+ $samba->{$share}{comment} = $comment;
+ $dialog->destroy;
+ }
+ }
+ ),
+ ),
+ ),
+ ),
+ );
+ $dialog->show_all;
}
-
+
sub add_printers_entry() {
require wizards;
my %print = (
@@ -446,7 +422,6 @@ sub add_printers_entry() {
data => [
{ label => "", type => 'list', val => \$wiz_todo, list => [ keys %print ], format => sub { $print{$_[0]} } }
],
- no_back => 1,
next => 'end_add',
post => sub {
if ($wiz_todo == 1) {
@@ -532,9 +507,16 @@ sub add_printers_entry() {
},
}
});
- $wiz->process($in);
+ eval { $wiz->process($in) };
+ my $err = $@;
$::isWizard = 0;
+ $::WizardWindow->destroy;
+ undef $::WizardTable;
+ undef $::WizardWindow;
# gtkset_mousecursor_normal()
+ if ($err && $err !~ /wizcancel/) {
+ err_dialog(N("Error"), N("Failed to add printers.") . "\n\n" . $err);
+ }
}
sub modify_printers_entry {
@@ -564,16 +546,12 @@ sub modify_printers_entry {
$use_client_driver->set_text($printer_list->{data}[$selected][14]);
my $file_dialog = $fdwidget->($dir, "");
- my $button = Gtk2::Button->new_from_stock('gtk-open');
+ my $button = Gtk2::Button->new(N("Open"));
$button->signal_connect(clicked => sub { $file_dialog->show });
- my $dialog = _create_dialog();
- $dialog->set_transient_for($::main_window);
+ my $dialog = _create_dialog(N("DrakSamba Printers entry"), { transient_for => $::main_window, modal => 1 });
+
local $::main_window = $dialog;
- $dialog->set_title("DrakSamba Printers entry");
- $dialog->set_position('center');
- $dialog->set_modal(1);
- $dialog->set_resizable(1);
if ($s eq "printers") { $printable->set_text("yes");
$printing->set_text("");
@@ -689,7 +667,7 @@ sub modify_entry {
$_->set_popdown_strings(@yesno) foreach $browseable, $public, $writable, $hide_dot_files, $preserve_case, $inherit_permissions;
my $file_dialog = $fdwidget->($dir, "");
- my $button = Gtk2::Button->new_from_stock('gtk-open');
+ my $button = Gtk2::Button->new(N("Open"));
$button->signal_connect(clicked => sub { $file_dialog->show });
my $w = ugtk2->new(N("DrakSamba entry"));
@@ -792,7 +770,7 @@ sub modify_entry {
my $share = $share_name->get_text;
my $test_dir = $dir->get_text;
$comment->get_text or err_dialog(N("Information"), N("Please enter a Comment for this share.")) and return 1;
- if ($share !~ /^homes$/ and !-d $test_dir) {
+ if ($share ne 'homes' && !-d $test_dir) {
err_dialog(N("Error!"), N("Please enter a directory to share.")) and return;
}
foreach ($create_mask->get_text, $directory_mask->get_text) {
@@ -803,7 +781,7 @@ sub modify_entry {
foreach ($read_list->get_text, $write_list->get_text, $admin_users->get_text, $valid_users->get_text) {
my @users = split(" ", $_);
foreach my $user (@users) {
- if (!any { /^$user:/ } cat_("/etc/samba/smbpasswd") and !/\@/) {
+ if (!(any { /^$user:/ } cat_("/etc/samba/smbpasswd")) && !/\@/) {
err_dialog(N("Error"), N("Please create this Samba user: %s", $user)) and return;
}
}
@@ -899,20 +877,16 @@ sub remove_user {
sub get_user() {
my $conf = "/etc/passwd";
- my @data; local $_;
- foreach (cat_($conf)) {
- push @data, $1 if m/^([^#:]+):[^:]+:([^:]+):/ and $2 > 499;
- }
- push @data, " ";
- return sort(@data);
+ my @data = map { if_(m/^([^#:]+):[^:]+:([^:]+):/ && $2 > 499, $1) } cat_($conf);
+ return sort(@data, " ");
}
sub modify_user_info {
- my ($user, $passwd, $todo) = @_;
+ my ($user, $_passwd, $todo) = @_;
my ($buser, $bpasswd);
my $dialog = new Gtk2::Dialog();
- $dialog->set_title("Add Samba user");
+ $dialog->set_title(N("Add Samba user"));
$dialog->set_modal(1);
$dialog->set_position('center');
$dialog->set_resizable(0);
@@ -1043,7 +1017,8 @@ add_data_printer_list($printer_list);
add_data_user_list($user_list);
$_->set_rules_hint(1) foreach $share_list, $printer_list, $user_list;
-my $window = ugtk2->new("DrakSamba");
+$ugtk2::wm_icon = $fileshare_icon;
+$window = ugtk2->new(N("Manage Samba configuration"));
$::main_window = $window->{real_window};
$window->{rwindow}->set_size_request(600, 410) unless $::isEmbedded;
$window->{rwindow}->set_position('center') if !$::isEmbedded;
@@ -1085,7 +1060,7 @@ my $menuitem1 = Gtk2::MenuItem->new(N("Modify"));
my $menuitem2 = Gtk2::MenuItem->new(N("Remove"));
$menuitem1->signal_connect(activate => sub {
my ($selected) = $share_list->get_selected_indices;
- modify_entry($selected, $share_list);
+ modify_entry($selected);
});
$menuitem2->signal_connect(activate => sub {
my ($selected) = $share_list->get_selected_indices;
@@ -1095,17 +1070,17 @@ $menuitem2->signal_connect(activate => sub {
$_->show foreach $menuitem1, $menuitem2;
$menupopup->append($_) foreach $menuitem1, $menuitem2;
$share_list->signal_connect('button-press-event' => sub {
- my ($widget, $event) = @_;
+ my (undef, $event) = @_;
return unless $event->button == 3;
$menupopup->popup(undef, undef, undef, undef, $event->button, $event->time);
}
);
$share_list->signal_connect(key_press_event => sub {
- my ($widget, $event) = @_;
+ my (undef, $event) = @_;
return unless $event->keyval == $Gtk2::Gdk::Keysyms{Return};
my ($selected) = $share_list->get_selected_indices;
- modify_entry($selected, $share_list);
+ modify_entry($selected);
return 1;
});
@@ -1124,19 +1099,11 @@ my $okcancel = create_okcancel({
gtkappend_page(my $nb = Gtk2::Notebook->new, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 0),
1, create_scrolled_window($share_list),
0, gtkpack_(create_vbox('start'),
- 0, gtksignal_connect(Gtk2::Button->new(N("Add")), clicked => sub {
- eval { add_entry() };
- my $err = $@;
- $::WizardWindow->destroy if defined $::WizardWindow;
- undef $::WizardWindow;
- if ($err && $err !~ /wizcancel/) {
- err_dialog(N("Error"), N("Failed to add Samba share.") . "\n\n" . $err);
- }
- }),
+ 0, gtksignal_connect(Gtk2::Button->new(N("Add")), clicked => \&add_entry),
0, Gtk2::HSeparator->new,
0, gtksignal_connect(Gtk2::Button->new(N("Modify")), clicked => sub {
my ($selected) = $share_list->get_selected_indices;
- eval { modify_entry($selected, $share_list) };
+ eval { modify_entry($selected) };
my $err = $@;
if ($err) {
err_dialog(N("Error"), N("Failed to Modify Samba share.") . "\n\n" . $err);
@@ -1163,15 +1130,7 @@ gtkappend_page(my $nb = Gtk2::Notebook->new, gtkpack_(gtkset_border_width(Gtk2::
gtkappend_page($nb, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 0),
1, create_scrolled_window($printer_list),
0, gtkpack_(create_vbox('start'),
- 0, gtksignal_connect(Gtk2::Button->new(N("Add printers")), clicked => sub {
- eval { add_printers_entry() };
- my $err = $@;
- $::WizardWindow->destroy if defined $::WizardWindow;
- undef $::WizardWindow;
- if ($err && $err !~ /wizcancel/) {
- err_dialog(N("Error"), N("Failed to add printers.") . "\n\n" . $err);
- }
- }),
+ 0, gtksignal_connect(Gtk2::Button->new(N("Add")), clicked => \&add_printers_entry),
0, Gtk2::HSeparator->new,
0, gtksignal_connect(Gtk2::Button->new(N("Modify")), clicked => sub {
my ($selected) = $printer_list->get_selected_indices;
@@ -1202,23 +1161,23 @@ gtkappend_page($nb, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 0),
gtkappend_page($nb, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 0),
1, create_scrolled_window($user_list),
0, gtkpack_(create_vbox('start'),
- 0, gtksignal_connect(Gtk2::Button->new(N("Change password")), clicked => sub {
- my ($selected) = $user_list->get_selected_indices;
- eval { modify_user_info($user_list->{data}[$selected][1], "", "change") };
+ 0, gtksignal_connect(Gtk2::Button->new(N("Add")), clicked => sub {
+ eval { modify_user_info("", "", "add") };
my $err = $@;
- if ($err) {
- err_dialog(N("Error"), N("Failed to change user password.") . "\n\n" . $err);
+ if ($err) {
+ err_dialog(N("Error"), N("Failed to add user.") . "\n\n" . $err);
}
}),
0, Gtk2::HSeparator->new,
- 0, gtksignal_connect(Gtk2::Button->new(N("Add user")), clicked => sub {
- eval { modify_user_info("", "", "add") };
+ 0, gtksignal_connect(Gtk2::Button->new(N("Modify")), clicked => sub {
+ my ($selected) = $user_list->get_selected_indices;
+ eval { modify_user_info($user_list->{data}[$selected][1], "", "change") };
my $err = $@;
- if ($err) {
- err_dialog(N("Error"), N("Failed to add user.") . "\n\n" . $err);
+ if ($err) {
+ err_dialog(N("Error"), N("Failed to change user password.") . "\n\n" . $err);
}
}),
- 0, gtksignal_connect(Gtk2::Button->new(N("Delete user")), clicked => sub {
+ 0, gtksignal_connect(Gtk2::Button->new(N("Remove")), clicked => sub {
my ($selected) = $user_list->get_selected_indices;
ask_okcancel("Remove entry ?", "Remove $user_list->{data}[$selected][1]") or return;
eval {
@@ -1231,6 +1190,7 @@ gtkappend_page($nb, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 0),
}
}),
0, Gtk2::HSeparator->new,
+ # FIXME: Why do we have both an "add" button and a "userdrake" one ???
0, gtksignal_connect(Gtk2::Button->new(N("Userdrake")), clicked => sub {
run_program::raw({ detach => 1 }, 'userdrake');
}
@@ -1248,7 +1208,7 @@ $nb->set_show_border(0);
# main interface
$W->add(gtkpack_(Gtk2::VBox->new(0,0),
0, $menu,
- if_(!$::isEmbedded, 0, Gtk2::Banner->new('IC-winacces1-48', N("DrakSamba manage Samba shares"))),
+ 0, Gtk2::Banner->new('IC-winacces1-48', N("DrakSamba manage Samba shares")),
#if_($::isEmbedded, 0, Gtk2::Label->new("Here you can add, remove and alter Samba shares.")),
1, $nb,
0, $okcancel,
diff --git a/bin/drakvpn b/bin/drakvpn
index 09ddae8..fbf10a6 100644
--- a/bin/drakvpn
+++ b/bin/drakvpn
@@ -1,1136 +1,17 @@
#!/usr/bin/perl
-#
-# author Florin Grad (florin@mandrakesoft.com)
-#
-# Copyright 2005 Mandriva
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2, as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-
+# drakvpn: VPN configuration GUI
+# Olivier Blin, 2006 <oblin@mandriva.com>
+# Licensed under the GPL
+use strict;
use lib qw(/usr/lib/libDrakX);
-use standalone; #- warning, standalone must be loaded very first, for 'explanations'
-
-use common;
-use detect_devices;
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
+use standalone;
use interactive;
-use network::network;
-use log;
-use c;
-use network::netconnect;
-use network::shorewall;
-use network::ipsec;
-use Data::Dumper;
-
-$::isInstall and die "Not supported during install.\n";
-
-
-local $_ = join '', @ARGV;
-
-$::Wizard_pix_up = "drakvpn.png";
-$ugtk2::wm_icon = "drakvpn";
-
-my $direct = /-direct/;
-
-my ($kernel_version) = c::kernel_version() =~ /(...)/;
-log::l("[drakvpn] kernel_version $kernel_version");
-
-$kernel_version >= 2.4 or fatal_quit(N("Sorry, we support only 2.4 and above kernels."));
-
-my $tunnels_file = "/etc/shorewall/tunnels";
-my $ipsec_conf = "";
-my $racoon_conf = "/etc/racoon/racoon.conf";
-my $proc_version = "";
-my $ipsec_package = "";
-
-my $in = interactive->vnew('su');
-my $shorewall = network::shorewall::read($in);
-my @section_names;
-
-if ($kernel_version > 2.5) {
- $ipsec_conf = "/etc/ipsec.conf";
-} else {
- $ipsec_conf = "/etc/freeswan/ipsec.conf";
-}
-my $ipsec = network::ipsec::read_ipsec_conf($ipsec_conf,$kernel_version);
-my $racoon = network::ipsec::read_racoon_conf($racoon_conf);
-
-#print network::ipsec::display_ipsec_conf($ipsec_conf,$ipsec,$kernel_version);
-
-$::Wizard_title = N("DrakVPN");
-
-$in->isa('interactive::gtk') and $::isWizard = 1;
-
-my $wait_configuring;
-
-sub fatal_quit ($) {
- log::l("[drakvpn] FATAL: $_[0]");
- undef $wait_configuring;
- $in->ask_warn('', $_[0]);
- quit_global($in, -1);
-}
-
-begin:
-
-#- **********************************
-#- * 0th step: verify if we are already set up
-
-if ($shorewall && any { !/^\s*(?:#|\n)/ } cat_($tunnels_file)) {
- $::Wizard_no_previous = 1;
-
- if (!$shorewall->{disabled}) {
- my $r = $in->ask_from_list_(N("The VPN connection is enabled."),
-N("The setup of a VPN connection has already been done.
-
-It's currently enabled.
-
-What would you like to do?"),
- [ N_("disable"), N_("reconfigure"), N_("dismiss") ]) or quit_global($in, 0);
- # FIXME: reconfigure is not handled
- if ($r eq "disable") {
- if (!$::testing) {
- my $_wait_disabl = $in->wait_message('', N("Disabling VPN..."));
- network::ipsec::stop_daemons();
- }
- foreach ($ipsec_conf, $tunnels_file) {
- if (-f $_) { rename($_, "$_.drakvpndisable") or die "Could not rename $_ to $_.drakvpndisable" }
- }
- network::ipsec::sys("/etc/init.d/shorewall restart >/dev/null");
- log::l("[drakvpn] Disabled");
- $::Wizard_finished = 1;
- $in->ask_okcancel('', N("The VPN connection is now disabled."));
- quit_global($in, 0);
- }
- if ($r eq "dismiss") {
- quit_global($in, 0);
- }
- } else {
- my $r = $in->ask_from_list_(N("VPN connection currently disabled"),
-N("The setup of a VPN connection has already been done.
-
-It's currently disabled.
-
-What would you like to do?"),
- [ N_("enable"), N_("reconfigure"), N_("dismiss") ]);
- # FIXME: reconfigure is not handled
- if ($r eq "enable") {
- foreach ($ipsec_conf, $tunnels_file) {
- rename($_, "$_.old") if -f $_;
- rename("$_.drakvpndisable", $_) or die "Could not find configuration. Please reconfigure.";
- }
- {
- my $_wait_enabl = $in->wait_message('', N("Enabling VPN..."));
- network::ipsec::start_daemons();
- }
- log::l("[drakvpn] Enabled");
- }
- $::Wizard_finished = 1;
- $in->ask_okcancel('', N("The VPN connection is now enabled."));
- quit_global($in, 0);
- if ($r eq "dismiss") {
- quit_global($in, 0);
- }
- }
- }
-
-#- **********************************
-#- * 1st step: detect/setup
-step_ask_confirm:
-
-$::Wizard_no_previous = 1;
-
-$direct or $in->ask_okcancel(N("Simple VPN setup."),
-N("You are about to configure your computer to use a VPN connection.
-
-With this feature, computers on your local private network and computers
-on some other remote private networks, can share resources, through
-their respective firewalls, over the Internet, in a secure manner.
-
-The communication over the Internet is encrypted. The local and remote
-computers look as if they were on the same network.
-
-Make sure you have configured your Network/Internet access using
-drakconnect before going any further."), 1) or goto begin;
-
-undef $::Wizard_no_previous;
-
-if ($kernel_version < 2.5) {
- system("/sbin/modprobe ipsec") if -e "/sbin/modprobe";
- $proc_version = cat_("/proc/net/ipsec_version") if -e "/proc/net/ipsec_version";
- if ($proc_version =~ /super/i) {
- $ipsec_package = "super-freeswan";
- } else {
- $ipsec_package = "freeswan";
- }
-} else {
- $ipsec_package = "ipsec-tools";
- $proc_version = "ipsec native";
-}
-
-$direct or $in->ask_okcancel(N("Simple VPN setup."),
-N("VPN connection.
-
-This program is based on the following projects:
- - FreeSwan: \t\t\thttp://www.freeswan.org/
- - Super-FreeSwan: \t\thttp://www.freeswan.ca/
- - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/
- - ipsec-howto: \t\thttp://www.ipsec-howto.org
- - the docs and man pages coming with the %s package
-
-Please read AT LEAST the ipsec-howto docs
-before going any further.",$ipsec_package)) or goto begin;
-
-$direct or $in->ask_okcancel(N("Kernel module."),
-N("The kernel needs to have ipsec support.
-
-You're running a %s kernel version.
-
-This kernel has '%s' support.", $kernel_version, $proc_version)) or goto begin;
-
-step_detectsetup:
-
-#my @configured_devices = map { /ifcfg-(\S+)/ } glob('/etc/sysconfig/network-scripts/ifcfg*');
-
-my %aliased_devices;
-/^\s*alias\s+(eth[0-9])\s+(\S+)/ and $aliased_devices{$1} = $2 foreach cat_("/etc/modules.conf");
-
-#- **********************************
-#- * 2nd step: configure
-
-#$wait_configuring = $in->wait_message(N("Configuring..."),
-# N("Configuring scripts, installing software, starting servers..."));
-
-#- if the kernel has super-freeswan support, remove the freeswan package
-#- and vice-versa
-#- if you're using e kernel 2.5 and above with native ipsec support, remove
-#- both freeswan and super-freeswan packages
-
-if (!$::testing && $ipsec_package =~ /super/i && $kernel_version < 2.5) {
- log::l("[drakvpn] removing the freeswan package");
- $in->do_pkgs->remove("freeswan") if -e "/etc/freeswan/ipsec.d/policies/clear";
- log::l("[drakvpn] removing the ipsec-tools package");
- $in->do_pkgs->remove("ipsec-tools") if -e "/sbin/setkey";
- $in->do_pkgs->remove("libipsec-tools0") if -e "/lib/libipsec.so.0";
-} elsif (!$::testing && $kernel_version < 2.5) {
- log::l("[drakvpn] removing the $ipsec_package package");
- $in->do_pkgs->remove("super-freeswan") if -e "/usr/lib/ipsec/auto.advroute";
- log::l("[drakvpn] removing the ipsec-tools package");
- $in->do_pkgs->remove("ipsec-tools") if -e "/sbin/setkey";
- $in->do_pkgs->remove("libipsec-tools0") if -e "/sbin/setkey";
-} else {
- log::l("[drakvpn] removing the freeswan AND the super-freeswan packages");
- $in->do_pkgs->remove("freeswan") if -e "/etc/freeswan/ipsec.d/policies/clear";
- $in->do_pkgs->remove("super-freeswan-doc") if -e "/usr/sbin/ipsec";
- $in->do_pkgs->remove("super-freeswan") if -e "/usr/lib/ipsec/auto.advroute";
-}
-
-
-#- install and setup the RPM packages, if needed
-
-my %rpm2file;
-log::l("[drakvpn] install the $ipsec_package and the shorewall rpm packages");
-if (!$::testing && $ipsec_package =~ /ipsec-tools/i) {
- %rpm2file = ($ipsec_package => '/sbin/setkey',
- shorewall => '/sbin/shorewall');
-} else {
- %rpm2file = ($ipsec_package => '/usr/sbin/ipsec',
- shorewall => '/sbin/shorewall');
-}
-
-#- first: try to install all in one step, if needed
-if (! ($ipsec_package =~ /super/i && -e "/usr/lib/ipsec/auto.advroute" ||
- $ipsec_package =~ /^freeswan/i && -e "/etc/freeswan/ipsec.d/policies/clear" ||
- $ipsec_package =~ /ipsec-tools/i && -e "/sbin/setkey")) {
-
- my @needed_to_install = grep { !-e $rpm2file{$_} } keys %rpm2file;
- @needed_to_install and $in->do_pkgs->install(@needed_to_install) if !$::testing;
- #- second: try one by one if failure detected
- if (!$::testing && any { !-e $rpm2file{$_} } keys %rpm2file) {
- foreach (keys %rpm2file) {
- -e $rpm2file{$_} or $in->do_pkgs->install($_);
- -e $rpm2file{$_} or fatal_quit(N("Problems installing package %s", $_));
- }
- }
-}
-
-undef $wait_configuring;
-
-#- configure the $ipsec_conf file
-#- Add, Remove config|conn entries
-
-step_configuration:
-
-my $c;
-
-my %messages = (ipsec => N("Security Policies"), racoon => N("IKE daemon racoon"));
-
-if ($kernel_version > 2.5) {
- $in->ask_from(N("Configuration file"),
-N("Configuration step!
-
-You need to define the Security Policies and then to
-configure the automatic key exchange (IKE) daemon.
-The KAME IKE daemon we're using is called 'racoon'.
-
-What would you like to configure?\n"),
- [ { val => \$c, type => "list", list => [ keys %messages ], format => sub { $messages{$_[0]} } } ]) or goto step_detectsetup;
-
-} else {
-$in->ask_okcancel(N("Configuration file"),
-N("Next, we will configure the %s file.\n
-
-Simply click on Next.\n", $ipsec_conf)) or goto step_detectsetup;
-
- $c = "configure";
-}
-
-#-------------------------------------------------------------------
-#---------------------- configure ipsec_conf -----------------------
-#-------------------------------------------------------------------
-
-if ($c eq "ipsec" || $c eq "configure") {
-
-step_configure_ipsec_conf:
-
-@section_names = network::ipsec::get_section_names_ipsec_conf($ipsec,$kernel_version) if $ipsec;
-
-my $choice = $section_names[0];
-my $d = $in->ask_from_list_(N("%s entries", $ipsec_conf),
-N("The %s file contents
-is divided into sections.\n
-You can now:\n
- - display, add, edit, or remove sections, then
- - commit the changes
-
-What would you like to do?\n", $ipsec_conf),
- [ N_("_:display here is a verb\nDisplay"), N_("Add"), N_("Edit"), N_("Remove"), N_("Commit") ]) or goto step_configuration;
-
-my $existing_section = "";
-
-#- display $ipsec_conf -------------------------
-
-step_display_ipsec_conf:
-
-if ($d eq "display $ipsec_conf" || $d eq "_:display here is a verb\nDisplay") {
- my $ipsec_exists = 0;
- foreach my $key (keys %$ipsec) {
- $ipsec_exists = 1 if $ipsec->{$key};
- }
- if ($ipsec_exists) {
- $in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
- network::ipsec::display_ipsec_conf($ipsec,$kernel_version));
- goto step_configure_ipsec_conf;
- } else {
-$in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
-N("The %s file does not exist.\n
-This must be a new configuration.\n
-You'll have to go back and choose 'add'.\n", $ipsec_conf));
- goto step_configure_ipsec_conf;
- }
-
-#- add ---------------------
-
-} elsif ($d eq "Add") {
-
-step_add_section:
-
-if ($kernel_version < 2.5) {
-
-#- add ---- kernel 2.4 part -------------------------------
-
-my $e = $in->ask_from_list_(N("ipsec.conf entries"),
-N("The %s file contains different sections.\n
-Here is its skeleton: 'config setup'
- 'conn default'
- 'normal1'
- 'normal2' \n
-You can now add one of these sections.\n
-Choose the section you would like to add.\n", $ipsec_conf),
- [ N_("config setup"), N_("conn %default"), N_("normal conn"), N_("dismiss") ]) or goto step_configure_ipsec_conf;
- if ($e eq "config setup") {
-
- $existing_section = network::ipsec::already_existing_section_ipsec_conf("config setup", $ipsec, $kernel_version);
-
- if ($existing_section eq "already existing") {
-$in->ask_okcancel(N("Exists!"),
-N("A section with this name already exists.
-The section names have to be unique.\n
-You'll have to go back and add another section
-or change its name.\n"));
- goto step_add_section;
-}
-
- my $config_setup = {
- 1 => [ "config", "setup" ],
- 2 => [ "interfaces", "%defaultroute" ],
- 3 => [ "klipsdebug", "none" ],
- 4 => [ "plutodebug", "none" ],
- 5 => [ "plutoload", "%search" ],
- 6 => [ "plutostart", "%search" ],
- 7 => [ "uniqueids", "yes" ],
- };
- $in->ask_from('',
-N("This section has to be on top of your
-%s file.\n
-Make sure all other sections follow this config
-setup section.\n
-Choose continue or previous when you are done.\n", $ipsec_conf),
- [ { label => N("interfaces"), val => \$config_setup->{2}[1], type => 'entry' },
- { label => N("klipsdebug"), val => \$config_setup->{3}[1], type => 'entry' },
- { label => N("plutodebug"), val => \$config_setup->{4}[1], type => 'entry' },
- { label => N("plutoload"), val => \$config_setup->{5}[1], type => 'entry' },
- { label => N("plutostart"), val => \$config_setup->{6}[1], type => 'entry' },
- { label => N("uniqueids"), val => \$config_setup->{7}[1], type => 'entry' },
- ]
-) or goto step_configure_ipsec_conf;
-
- network::ipsec::add_section_ipsec_conf($config_setup, $ipsec);
-
- goto step_configure_ipsec_conf;
-
- } elsif ($e eq "conn %default") {
-
- $existing_section = network::ipsec::already_existing_section_ipsec_conf("conn %default", $ipsec, $kernel_version);
-
- if ($existing_section eq "already existing") {
-$in->ask_okcancel(N("Exists!"),
-N("A section with this name already exists.
-The section names have to be unique.\n
-You'll have to go back and add another section
-or change its name.\n"));
- goto step_add_section;
-}
-
- my $conn_default = {
- 1 => [ "conn", "%default" ],
- 2 => [ "pfs", "yes" ],
- 3 => [ "keyingtries", "1" ],
- 4 => [ "compress", "yes" ],
- 5 => [ "disablearrivalcheck", "no" ],
- 6 => [ "left", "" ],
- 7 => [ "leftcert", "" ],
- 8 => [ "leftrsasigkey", "%cert" ],
- 9 => [ "leftsubnet", "" ],
- 10 => [ "leftnexthop", "" ],
- };
- $in->ask_from('',
-N("This is the first section after the config
-setup one.\n
-Here you define the default settings.
-All the other sections will follow this one.
-The left settings are optional. If do not define
-them here, globally, you can define them in each
-section.\n",),
- [ { label => N("PFS"), val => \$conn_default->{2}[1], type => 'entry' },
- { label => N("keyingtries"), val => \$conn_default->{3}[1], type => 'entry' },
- { label => N("compress"), val => \$conn_default->{4}[1], type => 'entry' },
- { label => N("disablearrivalcheck"), val => \$conn_default->{5}[1], type => 'entry' },
- { label => N("left"), val => \$conn_default->{6}[1], type => 'entry' },
- { label => N("leftcert"), val => \$conn_default->{7}[1], type => 'entry' },
- { label => N("leftrsasigkey"), val => \$conn_default->{8}[1], type => 'entry' },
- { label => N("leftsubnet"), val => \$conn_default->{9}[1], type => 'entry' },
- { label => N("leftnexthop"), val => \$conn_default->{10}[1], type => 'entry' },
- ]
-) or goto step_configure_ipsec_conf;
-
- network::ipsec::add_section_ipsec_conf($conn_default, $ipsec);
-
- goto step_configure_ipsec_conf;
-
- } elsif ($e eq "normal conn") {
-
-
- my $normal_conn = {
- 1 => [ "conn", "my-connection" ],
- 2 => [ "authby", "rsasig" ],
- 3 => [ "auto", "start" ],
- 4 => [ "left", "" ],
- 5 => [ "leftcert", "" ],
- 6 => [ "leftrsasigkey", "%cert" ],
- 7 => [ "leftsubnet", "" ],
- 8 => [ "leftnexthop", "" ],
- 9 => [ "right", "" ],
- 10 => [ "rightcert", "" ],
- 11 => [ "rightrsasigkey", "%cert" ],
- 12 => [ "rightsubnet", "" ],
- 13 => [ "rightnexthop", "" ],
- };
-
-step_add_normal_conn:
- $in->ask_from('',
-N("Your %s file has several sections, or connections.\n
-You can now add a new section.
-Choose continue when you are done to write the data.\n", $ipsec_conf),
- [ { label => N("section name"), val => \$normal_conn->{1}[1], type => 'entry' },
- { label => N("authby"), val => \$normal_conn->{2}[1], type => 'entry' },
- { label => N("auto"), val => \$normal_conn->{3}[1], type => 'entry' },
- { label => N("left"), val => \$normal_conn->{4}[1], type => 'entry' },
- { label => N("leftcert"), val => \$normal_conn->{5}[1], type => 'entry' },
- { label => N("leftrsasigkey"), val => \$normal_conn->{6}[1], type => 'entry' },
- { label => N("leftsubnet"), val => \$normal_conn->{7}[1], type => 'entry' },
- { label => N("leftnexthop"), val => \$normal_conn->{8}[1], type => 'entry' },
- { label => N("right"), val => \$normal_conn->{9}[1], type => 'entry' },
- { label => N("rightcert"), val => \$normal_conn->{10}[1], type => 'entry' },
- { label => N("rightrsasigkey"), val => \$normal_conn->{11}[1], type => 'entry' },
- { label => N("rightsubnet"), val => \$normal_conn->{12}[1], type => 'entry' },
- { label => N("rightnexthop"), val => \$normal_conn->{13}[1], type => 'entry' },
- ]
-) or goto step_configure_ipsec_conf;
-
- $existing_section = network::ipsec::already_existing_section_ipsec_conf($normal_conn->{1}[0] . " " . $normal_conn->{1}[1], $ipsec, $kernel_version);
-
- if ($existing_section eq "already existing") {
-$in->ask_okcancel(N("Exists!"),
-N("A section with this name already exists.
-The section names have to be unique.\n
-You'll have to go back and add another section
-or change the name of the section.\n"));
- goto step_add_normal_conn;
-}
-
- network::ipsec::add_section_ipsec_conf($normal_conn, $ipsec);
-
- goto step_configure_ipsec_conf;
-
- }
-
-} else {
-
-#- add ---- kernel 2.6 part -------------------------------
-
- my $section = { command => 'spdadd',
- src_range => 'src_network_address',
- dst_range => 'dest_network_address',
- upperspec => 'any',
- flag => '-P',
- direction => 'in or out',
- ipsec => 'ipsec',
- protocol => 'esp',
- mode => 'tunnel',
- src_dest => 'source-destination',
- level => 'require' };
-
-step_add_section_ipsec_conf_k26:
-
- ask_info3('',
-N("Add a Security Policy.\n
-You can now add a Security Policy.\n
-Choose continue when you are done to write the data.\n"), $section) or goto step_configure_ipsec_conf;
-
-# $existing_section = network::ipsec::already_existing_section_ipsec_conf($section->{src_dest}, $ipsec, $kernel_version);
-#
-# if ($existing_section eq "already existing") {
-#$in->ask_okcancel(N("Exists!"),
-#N("A section with this name already exists.
-#The section names have to be unique.\n
-#You'll have to go back and add another section
-#or change the name of the section.\n"));
-# goto step_add_section_ipsec_conf_k26;
-#};
-
- if (!$ipsec->{1}) {
- put_in_hash($ipsec, { max(keys %$ipsec) + 1 => "#!/sbin/setkey -f" });
- put_in_hash($ipsec, { max(keys %$ipsec) + 1 => "flush;" });
- put_in_hash($ipsec, { max(keys %$ipsec) + 1 => "spdflush;" });
- }
-
- network::ipsec::add_section_ipsec_conf($section, $ipsec);
-
- @section_names = network::ipsec::get_section_names_ipsec_conf($ipsec,$kernel_version);
-
- goto step_configure_ipsec_conf;
-}
-
-#- edit ---------------------
-
-} elsif ($d eq "Edit") {
-
-step_edit_ipsec_conf:
-$in->ask_from(N("Edit section"),
-N("Your %s file has several sections or connections.\n
-You can choose here below the one you want to edit
-and then click on next.\n", $ipsec_conf),
- [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ])
- or goto step_configure_ipsec_conf;
-
-my $number = network::ipsec::matched_section_key_number_ipsec_conf($choice,$ipsec,$kernel_version);
-
-#- edit ---- kernel 2.4 part -------------------------------
-
-if ($kernel_version < 2.5) {
-if ($choice =~ /^version|block|private|clear|packet/) {
-
-$in->ask_okcancel(N("Can not edit!"),
-N("You cannot edit this section.\n
-This section is mandatory for Freeswan 2.X.
-One has to specify version 2.0 on the top
-of the %s file, and eventually, disable or
-enable the opportunistic encryption.\n",$ipsec_conf));
- goto step_edit_ipsec_conf;
-
-} elsif ($choice =~ /^config setup/) {
- $in->ask_from('',
-N("Your %s file has several sections.\n
-You can now edit the config setup section entries.
-Choose continue when you are done to write the data.\n", $ipsec_conf),
-
-[ network::ipsec::dynamic_list($number, $ipsec) ]
-
-) or goto step_configure_ipsec_conf;
-
- goto step_configure_ipsec_conf;
-} elsif ($choice =~ /^conn %default/) {
- $in->ask_from('',
-N("Your %s file has several sections or connections.\n
-You can now edit the default section entries.
-Choose continue when you are done to write the data.\n", $ipsec_conf),
-
-[ network::ipsec::dynamic_list($number, $ipsec) ]
-
-) or goto step_configure_ipsec_conf;
-
- goto step_configure_ipsec_conf;
-
-} elsif ($choice =~ /^conn/) {
-
- $in->ask_from('',
-N("Your %s file has several sections or connections.\n
-You can now edit the normal section entries.\n
-Choose continue when you are done to write the data.\n", $ipsec_conf),
-
-[ network::ipsec::dynamic_list($number, $ipsec) ]
-
-) or goto step_configure_ipsec_conf;
-
- goto step_configure_ipsec_conf;
-
-} else {
-
- goto step_configure_ipsec_conf;
-
-}
-
-#- edit ---- kernel 2.6 part -------------------------------
-
-} else {
-
- ask_info3('',
-N("Edit a Security Policy.\n
-You can now edit a Security Policy.\n
-Choose continue when you are done to write the data.\n"), $ipsec->{$number}) or goto step_configure_ipsec_conf;
-
-goto step_configure_ipsec_conf;
-
-}
-
-#- remove ---------------------
-
-} elsif ($d eq "Remove") {
-$in->ask_from(N("Remove section"),
-N("Your %s file has several sections or connections.\n
-You can choose here below the one you want to remove
-and then click on next.\n", $ipsec_conf),
- [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ]);
-
- network::ipsec::remove_section_ipsec_conf($choice,$ipsec,$kernel_version);
-
- @section_names = network::ipsec::get_section_names_ipsec_conf($ipsec,$kernel_version) if $ipsec;
-
- goto step_configure_ipsec_conf;
-
-#- continue and write ---------------------
-
-} elsif ($d eq "Commit") {
- log::l("[drakvpn] Modify the $ipsec_conf file");
- network::ipsec::write_ipsec_conf($ipsec_conf, $ipsec,$kernel_version);
- }
-#-------------------------------------------------------------------
-#---------------------- configure racoon_conf -----------------------
-#-------------------------------------------------------------------
-
-} elsif ($c eq "racoon") {
-
-step_configure_racoon_conf:
-
-@section_names = network::ipsec::get_section_names_racoon_conf($racoon) if $racoon;
-
-my $choice = $section_names[0];
-my $d = $in->ask_from_list_(N("%s entries", $racoon_conf),
-N("The racoon.conf file configuration.\n
-The contents of this file is divided into sections.
-You can now:
- - display \t\t (display the file contents)
- - add \t\t (add one section)
- - edit \t\t\t (modify parameters of an existing section)
- - remove \t\t (remove an existing section)
- - commit \t\t (writes the changes to the real file)"),
- [ N_("_:display here is a verb\nDisplay"), N_("Add"), N_("Edit"), N_("Remove"), N_("Commit") ]) or goto step_configuration;
-
-
-#- display $racoon_conf -------------------------
-
-step_display_racoon_conf:
-
-if ($d eq "_:display here is a verb\nDisplay") {
-
- my $racoon_exists = 0;
- foreach my $key (keys %$racoon) {
- $racoon_exists = 1 if $racoon->{$key};
- }
-
- if ($racoon_exists) {
- $in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
- network::ipsec::display_racoon_conf($racoon));
- goto step_configure_racoon_conf;
- } else {
-$in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
-N("The %s file does not exist\n
-This must be a new configuration.\n
-You'll have to go back and choose configure.\n", $racoon_conf));
- goto step_configure_racoon_conf;
- }
-
-#- add $racoon_conf ------------------------------
-
-} elsif ($d eq "Add") {
-
-step_add_section_racoon:
-
-#my $existing_section = "";
-
-my $e = $in->ask_from_list_(N("racoonf.conf entries"),
-N("The 'add' sections step.\n
-Here below is the racoon.conf file skeleton:
-\t'path'
-\t'remote'
-\t'sainfo' \n
-Choose the section you would like to add.\n"),
- [ N_("path"), N_("remote"), N_("sainfo"), N_("dismiss") ]) or goto step_configure_racoon_conf;
-if ($e eq "path") {
-
- my $path_section = {
- 1 => [ 'path', 'path_type', '"/etc/racoon/certs"' ],
- };
-
- $in->ask_from('',
-N("The 'add path' section step.\n
-The path sections have to be on top of your racoon.conf file.\n
-Put your mouse over the certificate entry to obtain online help."),
- [ { label => N("path type"),
- val => \$path_section->{1}[1],
- list => [ 'certificate', 'pre_shared_key', 'include' ],
- help =>
-N("path include path: specifies a path to include
-a file. See File Inclusion.
- Example: path include '/etc/racoon'
-
-path pre_shared_key file: specifies a file containing
-pre-shared key(s) for various ID(s). See Pre-shared key File.
- Example: path pre_shared_key '/etc/racoon/psk.txt' ;
-
-path certificate path: racoon(8) will search this directory
-if a certificate or certificate request is received.
- Example: path certificate '/etc/cert' ;
-
-File Inclusion: include file
-other configuration files can be included.
- Example: include \"remote.conf\" ;
-
-Pre-shared key File: Pre-shared key file defines a pair
-of the identifier and the shared secret key which are used at
-Pre-shared key authentication method in phase 1."),
-},
- { label => N("real file"), val => \$path_section->{1}[2], type => 'entry' },
- ]
-) or goto step_configure_racoon_conf;
-
-network::ipsec::add_section_racoon_conf($path_section, $racoon);
-} elsif ($e eq "remote") {
- my $main_remote_section = { 1 => [ 'remote', 'address' ],
- 2 => [ 'exchange_mode', 'aggressive,main' ],
- 3 => [ 'generate_policy', 'on' ],
- 4 => [ 'passive', 'on' ],
- 5 => [ 'certificate_type', 'x509', '"my_certificate.pem"', '"my_private_key.pem"' ],
- 6 => [ 'peers_certfile', '"remote.public"' ],
- 7 => [ 'verify_cert', 'on' ],
- 8 => [ 'my_identifier', 'asn1dn' ],
- 9 => [ 'peers_identifier', 'asn1dn' ]
- };
- my $proposal_remote_section = { 1 => [ 'proposal' ],
- 2 => [ 'encryption_algorithm', '3des' ],
- 3 => [ 'hash_algorithm', 'md5' ],
- 4 => [ 'authentication_method', 'rsasig' ],
- 5 => [ 'dh_group', 'modp1024' ]
- };
- ask_info2('',
-N("Make sure you already have the path sections
-on the top of your racoon.conf file.
-
-You can now choose the remote settings.
-Choose continue or previous when you are done.\n"), $main_remote_section, $proposal_remote_section) or goto step_configure_racoon_conf;
-
-network::ipsec::add_section_racoon_conf($main_remote_section, $racoon);
-network::ipsec::add_section_racoon_conf($proposal_remote_section, $racoon);
-} elsif ($e eq "sainfo") {
- my $sainfo_section = { 1 => [ 'sainfo', 'address', '192.168.100.2', 'any', 'address', '10.0.0.2', 'any' ],
- 2 => [ 'pfs_group', '1' ],
- 3 => [ 'lifetime', 'time', '30', 'sec' ],
- 4 => [ 'encryption_algorithm', '3des' ],
- 5 => [ 'authentication_algorithm', 'hmac_sha1' ],
- 6 => [ 'compression_algorithm', 'deflate' ],
- };
- ask_info('',
-N("Make sure you already have the path sections
-on the top of your %s file.
-
-You can now choose the sainfo settings.
-Choose continue or previous when you are done.\n", $racoon_conf), $sainfo_section) or goto step_configure_racoon_conf;
-
-network::ipsec::add_section_racoon_conf($sainfo_section, $racoon);
-}
-
-@section_names = network::ipsec::get_section_names_racoon_conf($racoon) if $racoon;
-
-goto step_configure_racoon_conf;
-
-#- edit $racoon_conf -----------------------------
-
-} elsif ($d eq "Edit") {
-$in->ask_from(N("Edit section"),
-N("Your %s file has several sections or connections.
-
-You can choose here in the list below the one you want
-to edit and then click on next.\n", $racoon_conf),
- [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ])
- or goto step_configure_racoon_conf;
-
-my $number = network::ipsec::matched_section_key_number_racoon_conf($choice,$racoon);
-
-if ($choice =~ /^remote/) {
- ask_info2('',
-N("Your %s file has several sections.\n
-
-You can now edit the remote section entries.
-
-Choose continue when you are done to write the data.\n", $racoon_conf), $racoon->{$number}, $racoon->{$number+2})
- or goto step_configure_racoon_conf;
-
-} elsif ($choice =~ /^sainfo/) {
- ask_info('',
-N("Your %s file has several sections.
-
-You can now edit the sainfo section entries.
-
-Choose continue when you are done to write the data.", $racoon_conf), $racoon->{$number}) or goto step_configure_racoon_conf;
-
-} elsif ($choice =~ /^path/) {
- $in->ask_from('',
-N("This section has to be on top of your
-%s file.\n
-Make sure all other sections follow these path
-sections.\n
-You can now edit the path entries.
-
-Choose continue or previous when you are done.\n", $racoon_conf),
- [ { label => N("path_type"), val => \$racoon->{$number}{1}[1], list => [ 'certificate', 'pre_shared_key', 'include' ] },
- { label => N("real file"), val => \$racoon->{$number}{1}[2], type => 'entry' },
- ]
-) or goto step_configure_racoon_conf;
-}
-
-goto step_configure_racoon_conf;
-
-#- remove $racoon_conf ---------------------------
-
-} elsif ($d eq "Remove") {
-$in->ask_from(N("Remove section"),
-N("Your %s file has several sections or connections.\n
-You can choose here below the one you want to remove
-and then click on next.\n", $racoon_conf),
- [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ]);
-
-my $number = network::ipsec::matched_section_key_number_racoon_conf($choice,$racoon);
-network::ipsec::remove_section_racoon_conf($choice,$racoon,$number);
- @section_names = network::ipsec::get_section_names_racoon_conf($racoon) if $racoon;
-
- goto step_configure_racoon_conf;
-
-#- write $racoon_conf and continue ---------------
-} elsif ($d eq "Commit") {
- log::l("[drakvpn] Modify the $racoon_conf file");
- network::ipsec::write_racoon_conf($racoon_conf, $racoon);
-}
-}
-
-#- start the daemons
-network::ipsec::start_daemons();
-
-#- bye-bye message
-
-undef $wait_configuring;
-
-$::Wizard_no_previous = 1;
-$::Wizard_finished = 1;
-
-$in->ask_okcancel(N("Congratulations!"),
-N("Everything has been configured.\n
-You may now share resources through the Internet,
-in a secure way, using a VPN connection.
-
-You should make sure that that the tunnels shorewall
-section is configured."));
-
-log::l("[drakvpn] Installation complete, exiting");
-quit_global($in, 0);
-
-sub quit_global {
- my ($in, $exitcode) = @_;
- $in->exit($exitcode);
- goto begin;
-}
-
-
-sub ask_info {
- my ($title, $text, $data) = @_;
- $in->ask_from($title, $text,
- [ { label => N("Sainfo source address"), val => \$data->{1}[2], type => 'entry',
- help => N("sainfo (source_id destination_id | anonymous) { statements }
-defines the parameters of the IKE phase 2
-(IPsec-SA establishment).
-
-source_id and destination_id are constructed like:
-
- address address [/ prefix] [[port]] ul_proto
-
-Examples: \n
-sainfo anonymous (accepts connections from anywhere)
- leave blank this entry if you want anonymous
-
-sainfo address 203.178.141.209 any address 203.178.141.218 any
- 203.178.141.209 is the source address
-
-sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any
- 172.16.1.0/24 is the source address") },
- { label => N("Sainfo source protocol"), val => \$data->{1}[3], type => 'entry',
- help => N("sainfo (source_id destination_id | anonymous) { statements }
-defines the parameters of the IKE phase 2
-(IPsec-SA establishment).
-
-source_id and destination_id are constructed like:
-
- address address [/ prefix] [[port]] ul_proto
-
-Examples: \n
-sainfo anonymous (accepts connections from anywhere)
- leave blank this entry if you want anonymous
-
-sainfo address 203.178.141.209 any address 203.178.141.218 any
- the first 'any' allows any protocol for the source") },
- { label => N("Sainfo destination address"), val => \$data->{1}[5], type => 'entry',
- help => N("sainfo (source_id destination_id | anonymous) { statements }
-defines the parameters of the IKE phase 2
-(IPsec-SA establishment).
-
-source_id and destination_id are constructed like:
-
- address address [/ prefix] [[port]] ul_proto
-
-Examples: \n
-sainfo anonymous (accepts connections from anywhere)
- leave blank this entry if you want anonymous
-
-sainfo address 203.178.141.209 any address 203.178.141.218 any
- 203.178.141.218 is the destination address
-
-sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any
- 172.16.2.0/24 is the destination address") },
- { label => N("Sainfo destination protocol"), val => \$data->{1}[6], type => 'entry',
- help => N("sainfo (source_id destination_id | anonymous) { statements }
-defines the parameters of the IKE phase 2
-(IPsec-SA establishment).
-
-source_id and destination_id are constructed like:
-
- address address [/ prefix] [[port]] ul_proto
-
-Examples: \n
-sainfo anonymous (accepts connections from anywhere)
- leave blank this entry if you want anonymous
-
-sainfo address 203.178.141.209 any address 203.178.141.218 any
- the last 'any' allows any protocol for the destination") },
- { label => N("PFS group"), val => \$data->{2}[1],
- list => [ qw(modp768 modp1024 modp1536 1 2 5) ],
- help => N("define the group of Diffie-Hellman exponentiations.
-If you do not require PFS then you can omit this directive.
-Any proposal will be accepted if you do not specify one.
-group is one of the following: modp768, modp1024, modp1536.
-Or you can define 1, 2, or 5 as the DH group number.") },
- { label => N("Lifetime number"), val => \$data->{3}[2], type => 'entry',
- help => N("define a lifetime of a certain time which will be pro-
-posed in the phase 1 negotiations. Any proposal will be
-accepted, and the attribute(s) will not be proposed to
-the peer if you do not specify it(them). They can be
-individually specified in each proposal.
-
-Examples: \n
- lifetime time 1 min; # sec,min,hour
- lifetime time 1 min; # sec,min,hour
- lifetime time 30 sec;
- lifetime time 30 sec;
- lifetime time 60 sec;
- lifetime time 12 hour;
-
-So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.
-") },
- { label => N("Lifetime unit"), val => \$data->{3}[3],
- list => [ qw(sec min hour) ],
- help => N("define a lifetime of a certain time which will be pro-
-posed in the phase 1 negotiations. Any proposal will be
-accepted, and the attribute(s) will not be proposed to
-the peer if you do not specify it(them). They can be
-individually specified in each proposal.
-
-Examples: \n
- lifetime time 1 min; # sec,min,hour
- lifetime time 1 min; # sec,min,hour
- lifetime time 30 sec;
- lifetime time 30 sec;
- lifetime time 60 sec;
- lifetime time 12 hour;
-
-So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and 'hour'.
-") },
- { label => N("Encryption algorithm"), val => \$data->{4}[1],
- list => [ qw(des 3des des_iv64 des_iv32 rc5 rc4 idea 3idea cast128 blowfish null_enc twofish rijndae) ] },
- { label => N("Authentication algorithm"), val => \$data->{5}[1],
- list => [ qw(des 3des des_iv64 des_iv32 hmac_md5 hmac_sha1 non_auth) ] },
- { label => N("Compression algorithm"), val => \$data->{6}[1],
- list => [ N_("deflate") ], format => \&translate, allow_empty_list => 1 }
-
-]) }
-
-sub ask_info2 {
- my ($title, $text, $main_remote_section, $proposal_remote_section) = @_;
- $in->ask_from($title, $text,,
- [ { label => N("Remote"), val => \$main_remote_section->{1}[1], type => 'entry',
- help => N("remote (address | anonymous) [[port]] { statements }
-specifies the parameters for IKE phase 1 for each remote node.
-The default port is 500. If anonymous is specified, the state-
-ments apply to all peers which do not match any other remote
-directive.\n
-Examples: \n
-remote anonymous
-remote ::1 [8000]") },
- { label => N("Exchange mode"), val => \$main_remote_section->{2}[1],
- list => [ qw(main,agressive agressive,main) ],
- help => N("defines the exchange mode for phase 1 when racoon is the
-initiator. Also it means the acceptable exchange mode
-when racoon is responder. More than one mode can be
-specified by separating them with a comma. All of the
-modes are acceptable. The first exchange mode is what
-racoon uses when it is the initiator.\n") },
- { label => N("Generate policy"), val => \$main_remote_section->{3}[1],
- list => [ N_("off"), N_("on") ], format => \&translate,
- help => N("This directive is for the responder. Therefore you
-should set passive on in order that racoon(8) only
-becomes a responder. If the responder does not have any
-policy in SPD during phase 2 negotiation, and the direc-
-tive is set on, then racoon(8) will choice the first pro-
-posal in the SA payload from the initiator, and generate
-policy entries from the proposal. It is useful to nego-
-tiate with the client which is allocated IP address
-dynamically. Note that inappropriate policy might be
-installed into the responder's SPD by the initiator. So
-that other communication might fail if such policies
-installed due to some policy mismatches between the ini-
-tiator and the responder. This directive is ignored in
-the initiator case. The default value is off.") },
- { label => N("Passive"), val => \$main_remote_section->{4}[1],
- list => [ N_("off"), N_("on") ], format => \&translate,
- help => N("If you do not want to initiate the negotiation, set this
-to on. The default value is off. It is useful for a
-server.") },
- { label => N("Certificate type"), val => \$main_remote_section->{5}[1],
- list => [ 'x509' ], allow_empty_list => 1 },
- { label => N("My certfile"), val => \$main_remote_section->{5}[2], type => 'entry',
- help => N("Name of the certificate") },
- { label => N("My private key"), val => \$main_remote_section->{5}[3], type => 'entry',
- help => N("Name of the private key") },
- { label => N("Peers certfile"), val => \$main_remote_section->{6}[1], type => 'entry',
- help => N("Name of the peers certificate") },
- { label => N("Verify cert"), val => \$main_remote_section->{7}[1],
- list => [ N_("off"), N_("on") ], format => \&translate,
- help => N("If you do not want to verify the peer's certificate for
-some reason, set this to off. The default is on.") },
- { label => N("My identifier"), val => \$main_remote_section->{8}[1], type => 'entry',
- help => N("specifies the identifier sent to the remote host and the
-type to use in the phase 1 negotiation. address, FQDN,
-user_fqdn, keyid and asn1dn can be used as an idtype.
-they are used like:
- my_identifier address [address];
- the type is the IP address. This is the default
- type if you do not specify an identifier to use.
- my_identifier user_fqdn string;
- the type is a USER_FQDN (user fully-qualified
- domain name).
- my_identifier FQDN string;
- the type is a FQDN (fully-qualified domain name).
- my_identifier keyid file;
- the type is a KEY_ID.
- my_identifier asn1dn [string];
- the type is an ASN.1 distinguished name. If
- string is omitted, racoon(8) will get DN from
- Subject field in the certificate.\n
-Examples: \n
-my_identifier user_fqdn \"myemail\@mydomain.com\"") },
- { label => N("Peers identifier"), val => \$main_remote_section->{9}[1], type => 'entry' },
- { label => N("Proposal"), val => \$proposal_remote_section->{1}[0], list => [ 'proposal' ], allow_empty_list => 1 },
- { label => N("Encryption algorithm"), val => \$proposal_remote_section->{2}[1], list => [ qw(des 3des blowfish cast128) ],
- help => N("specify the encryption algorithm used for the
-phase 1 negotiation. This directive must be defined.
-algorithm is one of the following:
-
-DES, 3DES, blowfish, cast128 for oakley.
-
-For other transforms, this statement should not be used.") },
- { label => N("Hash algorithm"), val => \$proposal_remote_section->{3}[1], type => 'entry' },
- { label => N("Authentication method"), val => \$proposal_remote_section->{4}[1], type => 'entry' },
- { label => N("DH group"), val => \$proposal_remote_section->{5}[1], list => [ qw(modp768 modp1024 modp1536 1 2 5) ], },
- ]);
-}
-
-sub ask_info3 {
- my ($title, $text, $section) = @_;
- $in->ask_from($title, $text,,
- [ { label => N("Command"), val => \$section->{command}, list => [ 'spdadd' ], allow_empty_list => 1 },
- { label => N("Source IP range"), val => \$section->{src_range}, type => 'entry' },
- { label => N("Destination IP range"), val => \$section->{dst_range}, type => 'entry' },
- { label => N("Upper-layer protocol"), val => \$section->{upperspec}, list => [ N_("any") ],
- format => \&translate, allow_empty_list => 1 },
- { label => N("Flag"), val => \$section->{flag}, list => [ '-P' ], allow_empty_list => 1 },
- { label => N("Direction"), val => \$section->{direction}, list => [ 'in', 'out' ] },
- { label => N("IPsec policy"), val => \$section->{ipsec}, list => [ N_("ipsec"), N_("discard"), N_("none") ],
- format => \&translate },
- { label => N("Protocol"), val => \$section->{protocol}, list => [ 'esp', 'ah', 'ipcomp' ] },
- { label => N("Mode"), val => \$section->{mode}, list => [ N_("tunnel"), N_("transport"), N_("any") ],
- format => \&translate },
- { label => N("Source/destination"), val => \$section->{src_dest}, type => 'entry' },
- { label => N("Level"), val => \$section->{level}, list => [ N_("require"), N_("default"), N_("use"), N_("unique") ],
- format => \&translate },
- ]);
-}
+use network::drakvpn;
+my $in = 'interactive'->vnew('su');
+network::drakvpn::create_connection($in);
diff --git a/bin/drakvpn-old b/bin/drakvpn-old
new file mode 100755
index 0000000..b658325
--- /dev/null
+++ b/bin/drakvpn-old
@@ -0,0 +1,847 @@
+#!/usr/bin/perl
+
+#
+# author Florin Grad (florin@mandrakesoft.com)
+#
+# Copyright 2006 Mandriva
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2, as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+
+
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
+use lib qw(/usr/lib/libDrakX);
+
+use standalone; #- warning, standalone must be loaded very first, for 'explanations'
+
+use common;
+use detect_devices;
+use interactive;
+use network::network;
+use log;
+use c;
+use network::netconnect;
+use network::shorewall;
+use network::ipsec;
+use Data::Dumper;
+
+$::isInstall and die "Not supported during install.\n";
+
+
+local $_ = join '', @ARGV;
+
+$::Wizard_pix_up = "drakvpn.png";
+$ugtk2::wm_icon = "drakvpn";
+
+my $direct = /-direct/;
+
+my $tunnels_file = "/etc/shorewall/tunnels";
+my $ipsec_conf = "";
+my $racoon_conf = "/etc/racoon/racoon.conf";
+my $ipsec_package = "";
+
+my $in = interactive->vnew('su');
+my $shorewall = network::shorewall::read($in);
+my @section_names;
+
+ $ipsec_conf = "/etc/ipsec.conf";
+my $ipsec = network::ipsec::read_ipsec_conf($ipsec_conf);
+my $racoon = network::ipsec::read_racoon_conf($racoon_conf);
+
+#print network::ipsec::display_ipsec_conf($ipsec_conf,$ipsec);
+
+$::Wizard_title = N("DrakVPN");
+
+$in->isa('interactive::gtk') and $::isWizard = 1;
+
+my $wait_configuring;
+
+sub fatal_quit ($) {
+ log::l("[drakvpn] FATAL: $_[0]");
+ undef $wait_configuring;
+ $in->ask_warn('', $_[0]);
+ quit_global($in, -1);
+}
+
+begin:
+
+#- **********************************
+#- * 0th step: verify if we are already set up
+
+if ($shorewall && any { !/^\s*(?:#|\n)/ } cat_($tunnels_file)) {
+ $::Wizard_no_previous = 1;
+
+ if (!$shorewall->{disabled}) {
+ my $r = $in->ask_from_list_(N("The VPN connection is enabled."),
+N("The setup of a VPN connection has already been done.
+
+It's currently enabled.
+
+What would you like to do?"),
+ [ N_("disable"), N_("reconfigure"), N_("dismiss") ]) or quit_global($in, 0);
+ # FIXME: reconfigure is not handled
+ if ($r eq "disable") {
+ if (!$::testing) {
+ my $_wait_disabl = $in->wait_message('', N("Disabling VPN..."));
+ network::ipsec::stop_daemons();
+ }
+ foreach ($ipsec_conf, $tunnels_file) {
+ if (-f $_) { rename($_, "$_.drakvpndisable") or die "Could not rename $_ to $_.drakvpndisable" }
+ }
+ network::ipsec::sys("/etc/init.d/shorewall restart >/dev/null");
+ log::l("[drakvpn] Disabled");
+ $::Wizard_finished = 1;
+ $in->ask_okcancel('', N("The VPN connection is now disabled."));
+ quit_global($in, 0);
+ }
+ if ($r eq "dismiss") {
+ quit_global($in, 0);
+ }
+ } else {
+ my $r = $in->ask_from_list_(N("VPN connection currently disabled"),
+N("The setup of a VPN connection has already been done.
+
+It's currently disabled.
+
+What would you like to do?"),
+ [ N_("enable"), N_("reconfigure"), N_("dismiss") ]);
+ # FIXME: reconfigure is not handled
+ if ($r eq "enable") {
+ foreach ($ipsec_conf, $tunnels_file) {
+ rename($_, "$_.old") if -f $_;
+ rename("$_.drakvpndisable", $_) or die "Could not find configuration. Please reconfigure.";
+ }
+ {
+ my $_wait_enabl = $in->wait_message('', N("Enabling VPN..."));
+ network::ipsec::start_daemons();
+ }
+ log::l("[drakvpn] Enabled");
+ }
+ $::Wizard_finished = 1;
+ $in->ask_okcancel('', N("The VPN connection is now enabled."));
+ quit_global($in, 0);
+ if ($r eq "dismiss") {
+ quit_global($in, 0);
+ }
+ }
+ }
+
+#- **********************************
+#- * 1st step: detect/setup
+step_ask_confirm:
+
+$::Wizard_no_previous = 1;
+
+$direct or $in->ask_okcancel(N("Simple VPN setup."),
+N("You are about to configure your computer to use a VPN connection.
+
+With this feature, computers on your local private network and computers
+on some other remote private networks, can share resources, through
+their respective firewalls, over the Internet, in a secure manner.
+
+The communication over the Internet is encrypted. The local and remote
+computers look as if they were on the same network.
+
+Make sure you have configured your Network/Internet access using
+drakconnect before going any further."), 1) or goto begin;
+
+undef $::Wizard_no_previous;
+
+ $ipsec_package = "ipsec-tools";
+
+$direct or $in->ask_okcancel(N("Simple VPN setup."),
+N("VPN connection.
+
+This program is based on the following projects:
+ - FreeSwan: \t\t\thttp://www.freeswan.org/
+ - Super-FreeSwan: \t\thttp://www.freeswan.ca/
+ - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/
+ - ipsec-howto: \t\thttp://www.ipsec-howto.org
+ - the docs and man pages coming with the %s package
+
+Please read AT LEAST the ipsec-howto docs
+before going any further.",$ipsec_package)) or goto begin;
+
+step_detectsetup:
+
+#my @configured_devices = map { /ifcfg-(\S+)/ } glob('/etc/sysconfig/network-scripts/ifcfg*');
+
+my %aliased_devices;
+/^\s*alias\s+(eth[0-9])\s+(\S+)/ and $aliased_devices{$1} = $2 foreach cat_("/etc/modules.conf");
+
+#- **********************************
+#- * 2nd step: configure
+
+#$wait_configuring = $in->wait_message(N("Configuring..."),
+# N("Configuring scripts, installing software, starting servers..."));
+
+
+
+#- install and setup the RPM packages, if needed
+
+my %rpm2file;
+log::l("[drakvpn] install the $ipsec_package and the shorewall rpm packages");
+ %rpm2file = ($ipsec_package => '/sbin/setkey',
+ shorewall => '/sbin/shorewall');
+
+#- first: try to install all in one step, if needed
+if (!-e "/sbin/setkey") {
+
+ my @needed_to_install = grep { !-e $rpm2file{$_} } keys %rpm2file;
+ @needed_to_install and $in->do_pkgs->install(@needed_to_install) if !$::testing;
+ #- second: try one by one if failure detected
+ if (!$::testing && any { !-e $rpm2file{$_} } keys %rpm2file) {
+ foreach (keys %rpm2file) {
+ -e $rpm2file{$_} or $in->do_pkgs->install($_);
+ -e $rpm2file{$_} or fatal_quit(N("Problems installing package %s", $_));
+ }
+ }
+}
+
+undef $wait_configuring;
+
+#- configure the $ipsec_conf file
+#- Add, Remove config|conn entries
+
+step_configuration:
+
+my $c;
+
+my %messages = (ipsec => N("Security Policies"), racoon => N("IKE daemon racoon"));
+
+ $in->ask_from(N("Configuration file"),
+N("Configuration step!
+
+You need to define the Security Policies and then to
+configure the automatic key exchange (IKE) daemon.
+The KAME IKE daemon we're using is called 'racoon'.
+
+What would you like to configure?\n"),
+ [ { val => \$c, type => "list", list => [ keys %messages ], format => sub { $messages{$_[0]} } } ]) or goto step_detectsetup;
+
+#-------------------------------------------------------------------
+#---------------------- configure ipsec_conf -----------------------
+#-------------------------------------------------------------------
+
+if ($c eq "ipsec" || $c eq "configure") {
+
+step_configure_ipsec_conf:
+
+@section_names = network::ipsec::get_section_names_ipsec_conf($ipsec) if $ipsec;
+
+my $choice = $section_names[0];
+my $d = $in->ask_from_list_(N("%s entries", $ipsec_conf),
+N("The %s file contents
+is divided into sections.\n
+You can now:\n
+ - display, add, edit, or remove sections, then
+ - commit the changes
+
+What would you like to do?\n", $ipsec_conf),
+ [ N_("_:display here is a verb\nDisplay"), N_("Add"), N_("Edit"), N_("Remove"), N_("Commit") ]) or goto step_configuration;
+
+#my $existing_section = "";
+
+#- display $ipsec_conf -------------------------
+
+step_display_ipsec_conf:
+
+if ($d eq "display $ipsec_conf" || $d eq "_:display here is a verb\nDisplay") {
+ my $ipsec_exists = 0;
+ foreach my $key (keys %$ipsec) {
+ $ipsec_exists = 1 if $ipsec->{$key};
+ }
+ if ($ipsec_exists) {
+ $in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
+ network::ipsec::display_ipsec_conf($ipsec));
+ goto step_configure_ipsec_conf;
+ } else {
+$in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
+N("The %s file does not exist.\n
+This must be a new configuration.\n
+You'll have to go back and choose 'add'.\n", $ipsec_conf));
+ goto step_configure_ipsec_conf;
+ }
+
+#- add ---------------------
+
+} elsif ($d eq "Add") {
+
+step_add_section:
+
+#- add ---- kernel 2.6 part -------------------------------
+
+ my $section = { command => 'spdadd',
+ src_range => 'src_network_address',
+ dst_range => 'dest_network_address',
+ upperspec => 'any',
+ flag => '-P',
+ direction => 'in or out',
+ ipsec => 'ipsec',
+ protocol => 'esp',
+ mode => 'tunnel',
+ src_dest => 'source-destination',
+ level => 'require' };
+
+step_add_section_ipsec_conf_k26:
+
+ ask_info3('',
+N("Add a Security Policy.\n
+You can now add a Security Policy.\n
+Choose continue when you are done to write the data.\n"), $section) or goto step_configure_ipsec_conf;
+
+# $existing_section = network::ipsec::already_existing_section_ipsec_conf($section->{src_dest}, $ipsec);
+#
+# if ($existing_section eq "already existing") {
+#$in->ask_okcancel(N("Exists!"),
+#N("A section with this name already exists.
+#The section names have to be unique.\n
+#You'll have to go back and add another section
+#or change the name of the section.\n"));
+# goto step_add_section_ipsec_conf_k26;
+#};
+
+ if (!$ipsec->{1}) {
+ put_in_hash($ipsec, { max(keys %$ipsec) + 1 => "#!/sbin/setkey -f" });
+ put_in_hash($ipsec, { max(keys %$ipsec) + 1 => "flush;" });
+ put_in_hash($ipsec, { max(keys %$ipsec) + 1 => "spdflush;" });
+ }
+
+ network::ipsec::add_section_ipsec_conf($section, $ipsec);
+
+ @section_names = network::ipsec::get_section_names_ipsec_conf($ipsec);
+
+ goto step_configure_ipsec_conf;
+
+#- edit ---------------------
+
+} elsif ($d eq "Edit") {
+
+step_edit_ipsec_conf:
+$in->ask_from(N("Edit section"),
+N("Your %s file has several sections or connections.\n
+You can choose here below the one you want to edit
+and then click on next.\n", $ipsec_conf),
+ [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ])
+ or goto step_configure_ipsec_conf;
+
+my $number = network::ipsec::matched_section_key_number_ipsec_conf($choice,$ipsec);
+
+
+ ask_info3('',
+N("Edit a Security Policy.\n
+You can now edit a Security Policy.\n
+Choose continue when you are done to write the data.\n"), $ipsec->{$number}) or goto step_configure_ipsec_conf;
+
+goto step_configure_ipsec_conf;
+
+#- remove ---------------------
+
+} elsif ($d eq "Remove") {
+$in->ask_from(N("Remove section"),
+N("Your %s file has several sections or connections.\n
+You can choose here below the one you want to remove
+and then click on next.\n", $ipsec_conf),
+ [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ]);
+
+ network::ipsec::remove_section_ipsec_conf($choice,$ipsec);
+
+ @section_names = network::ipsec::get_section_names_ipsec_conf($ipsec) if $ipsec;
+
+ goto step_configure_ipsec_conf;
+
+#- continue and write ---------------------
+
+} elsif ($d eq "Commit") {
+ log::l("[drakvpn] Modify the $ipsec_conf file");
+ network::ipsec::write_ipsec_conf($ipsec_conf, $ipsec);
+ }
+#-------------------------------------------------------------------
+#---------------------- configure racoon_conf -----------------------
+#-------------------------------------------------------------------
+
+} elsif ($c eq "racoon") {
+
+step_configure_racoon_conf:
+
+@section_names = network::ipsec::get_section_names_racoon_conf($racoon) if $racoon;
+
+my $choice = $section_names[0];
+my $d = $in->ask_from_list_(N("%s entries", $racoon_conf),
+N("The racoon.conf file configuration.\n
+The contents of this file is divided into sections.
+You can now:
+ - display \t\t (display the file contents)
+ - add \t\t (add one section)
+ - edit \t\t\t (modify parameters of an existing section)
+ - remove \t\t (remove an existing section)
+ - commit \t\t (writes the changes to the real file)"),
+ [ N_("_:display here is a verb\nDisplay"), N_("Add"), N_("Edit"), N_("Remove"), N_("Commit") ]) or goto step_configuration;
+
+
+#- display $racoon_conf -------------------------
+
+step_display_racoon_conf:
+
+if ($d eq "_:display here is a verb\nDisplay") {
+
+ my $racoon_exists = 0;
+ foreach my $key (keys %$racoon) {
+ $racoon_exists = 1 if $racoon->{$key};
+ }
+
+ if ($racoon_exists) {
+ $in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
+ network::ipsec::display_racoon_conf($racoon));
+ goto step_configure_racoon_conf;
+ } else {
+$in->ask_okcancel(N("_:display here is a verb\nDisplay configuration"),
+N("The %s file does not exist\n
+This must be a new configuration.\n
+You'll have to go back and choose configure.\n", $racoon_conf));
+ goto step_configure_racoon_conf;
+ }
+
+#- add $racoon_conf ------------------------------
+
+} elsif ($d eq "Add") {
+
+step_add_section_racoon:
+
+#my $existing_section = "";
+
+my $e = $in->ask_from_list_(N("racoon.conf entries"),
+N("The 'add' sections step.\n
+Here below is the racoon.conf file skeleton:
+\t'path'
+\t'remote'
+\t'sainfo' \n
+Choose the section you would like to add.\n"),
+ [ N_("path"), N_("remote"), N_("sainfo"), N_("dismiss") ]) or goto step_configure_racoon_conf;
+if ($e eq "path") {
+
+ my $path_section = {
+ 1 => [ 'path', 'path_type', '"/etc/racoon/certs"' ],
+ };
+
+ $in->ask_from('',
+N("The 'add path' section step.\n
+The path sections have to be on top of your racoon.conf file.\n
+Put your mouse over the certificate entry to obtain online help."),
+ [ { label => N("path type"),
+ val => \$path_section->{1}[1],
+ list => [ 'certificate', 'pre_shared_key', 'include' ],
+ help =>
+N("path include path: specifies a path to include
+a file. See File Inclusion.
+ Example: path include '/etc/racoon'
+
+path pre_shared_key file: specifies a file containing
+pre-shared key(s) for various ID(s). See Pre-shared key File.
+ Example: path pre_shared_key '/etc/racoon/psk.txt' ;
+
+path certificate path: racoon(8) will search this directory
+if a certificate or certificate request is received.
+ Example: path certificate '/etc/cert' ;
+
+File Inclusion: include file
+other configuration files can be included.
+ Example: include \"remote.conf\" ;
+
+Pre-shared key File: Pre-shared key file defines a pair
+of the identifier and the shared secret key which are used at
+Pre-shared key authentication method in phase 1."),
+},
+ { label => N("real file"), val => \$path_section->{1}[2], type => 'entry' },
+ ]
+) or goto step_configure_racoon_conf;
+
+network::ipsec::add_section_racoon_conf($path_section, $racoon);
+} elsif ($e eq "remote") {
+ my $main_remote_section = { 1 => [ 'remote', 'address' ],
+ 2 => [ 'exchange_mode', 'aggressive,main' ],
+ 3 => [ 'generate_policy', 'on' ],
+ 4 => [ 'passive', 'on' ],
+ 5 => [ 'certificate_type', 'x509', '"my_certificate.pem"', '"my_private_key.pem"' ],
+ 6 => [ 'peers_certfile', '"remote.public"' ],
+ 7 => [ 'verify_cert', 'on' ],
+ 8 => [ 'my_identifier', 'asn1dn' ],
+ 9 => [ 'peers_identifier', 'asn1dn' ]
+ };
+ my $proposal_remote_section = { 1 => [ 'proposal' ],
+ 2 => [ 'encryption_algorithm', '3des' ],
+ 3 => [ 'hash_algorithm', 'md5' ],
+ 4 => [ 'authentication_method', 'rsasig' ],
+ 5 => [ 'dh_group', 'modp1024' ]
+ };
+ ask_info2('',
+N("Make sure you already have the path sections
+on the top of your racoon.conf file.
+
+You can now choose the remote settings.
+Choose continue or previous when you are done.\n"), $main_remote_section, $proposal_remote_section) or goto step_configure_racoon_conf;
+
+network::ipsec::add_section_racoon_conf($main_remote_section, $racoon);
+network::ipsec::add_section_racoon_conf($proposal_remote_section, $racoon);
+} elsif ($e eq "sainfo") {
+ my $sainfo_section = { 1 => [ 'sainfo', 'address', '192.168.100.2', 'any', 'address', '10.0.0.2', 'any' ],
+ 2 => [ 'pfs_group', '1' ],
+ 3 => [ 'lifetime', 'time', '30', 'sec' ],
+ 4 => [ 'encryption_algorithm', '3des' ],
+ 5 => [ 'authentication_algorithm', 'hmac_sha1' ],
+ 6 => [ 'compression_algorithm', 'deflate' ],
+ };
+ ask_info('',
+N("Make sure you already have the path sections
+on the top of your %s file.
+
+You can now choose the sainfo settings.
+Choose continue or previous when you are done.\n", $racoon_conf), $sainfo_section) or goto step_configure_racoon_conf;
+
+network::ipsec::add_section_racoon_conf($sainfo_section, $racoon);
+}
+
+@section_names = network::ipsec::get_section_names_racoon_conf($racoon) if $racoon;
+
+goto step_configure_racoon_conf;
+
+#- edit $racoon_conf -----------------------------
+
+} elsif ($d eq "Edit") {
+$in->ask_from(N("Edit section"),
+N("Your %s file has several sections or connections.
+
+You can choose here in the list below the one you want
+to edit and then click on next.\n", $racoon_conf),
+ [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ])
+ or goto step_configure_racoon_conf;
+
+my $number = network::ipsec::matched_section_key_number_racoon_conf($choice,$racoon);
+
+if ($choice =~ /^remote/) {
+ ask_info2('',
+N("Your %s file has several sections.\n
+
+You can now edit the remote section entries.
+
+Choose continue when you are done to write the data.\n", $racoon_conf), $racoon->{$number}, $racoon->{$number+2})
+ or goto step_configure_racoon_conf;
+
+} elsif ($choice =~ /^sainfo/) {
+ ask_info('',
+N("Your %s file has several sections.
+
+You can now edit the sainfo section entries.
+
+Choose continue when you are done to write the data.", $racoon_conf), $racoon->{$number}) or goto step_configure_racoon_conf;
+
+} elsif ($choice =~ /^path/) {
+ $in->ask_from('',
+N("This section has to be on top of your
+%s file.\n
+Make sure all other sections follow these path
+sections.\n
+You can now edit the path entries.
+
+Choose continue or previous when you are done.\n", $racoon_conf),
+ [ { label => N("path_type"), val => \$racoon->{$number}{1}[1], list => [ 'certificate', 'pre_shared_key', 'include' ] },
+ { label => N("real file"), val => \$racoon->{$number}{1}[2], type => 'entry' },
+ ]
+) or goto step_configure_racoon_conf;
+}
+
+goto step_configure_racoon_conf;
+
+#- remove $racoon_conf ---------------------------
+
+} elsif ($d eq "Remove") {
+$in->ask_from(N("Remove section"),
+N("Your %s file has several sections or connections.\n
+You can choose here below the one you want to remove
+and then click on next.\n", $racoon_conf),
+ [ { val => \$choice, list => \@section_names, label => N("Section names"), sort => 0, not_edit => 0 } ]);
+
+my $number = network::ipsec::matched_section_key_number_racoon_conf($choice,$racoon);
+network::ipsec::remove_section_racoon_conf($choice,$racoon,$number);
+ @section_names = network::ipsec::get_section_names_racoon_conf($racoon) if $racoon;
+
+ goto step_configure_racoon_conf;
+
+#- write $racoon_conf and continue ---------------
+} elsif ($d eq "Commit") {
+ log::l("[drakvpn] Modify the $racoon_conf file");
+ network::ipsec::write_racoon_conf($racoon_conf, $racoon);
+}
+}
+
+#- start the daemons
+network::ipsec::start_daemons();
+
+#- bye-bye message
+
+undef $wait_configuring;
+
+$::Wizard_no_previous = 1;
+$::Wizard_finished = 1;
+
+$in->ask_okcancel(N("Congratulations!"),
+N("Everything has been configured.\n
+You may now share resources through the Internet,
+in a secure way, using a VPN connection.
+
+You should make sure that the tunnels shorewall
+section is configured."));
+
+log::l("[drakvpn] Installation complete, exiting");
+quit_global($in, 0);
+
+sub quit_global {
+ my ($in, $exitcode) = @_;
+ $in->exit($exitcode);
+ goto begin;
+}
+
+
+sub ask_info {
+ my ($title, $text, $data) = @_;
+ $in->ask_from($title, $text,
+ [ { label => N("Sainfo source address"), val => \$data->{1}[2], type => 'entry',
+ help => N("sainfo (source_id destination_id | anonymous) { statements }
+defines the parameters of the IKE phase 2
+(IPsec-SA establishment).
+
+source_id and destination_id are constructed like:
+
+ address address [/ prefix] [[port]] ul_proto
+
+Examples: \n
+sainfo anonymous (accepts connections from anywhere)
+ leave blank this entry if you want anonymous
+
+sainfo address 203.178.141.209 any address 203.178.141.218 any
+ 203.178.141.209 is the source address
+
+sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any
+ 172.16.1.0/24 is the source address") },
+ { label => N("Sainfo source protocol"), val => \$data->{1}[3], type => 'entry',
+ help => N("sainfo (source_id destination_id | anonymous) { statements }
+defines the parameters of the IKE phase 2
+(IPsec-SA establishment).
+
+source_id and destination_id are constructed like:
+
+ address address [/ prefix] [[port]] ul_proto
+
+Examples: \n
+sainfo anonymous (accepts connections from anywhere)
+ leave blank this entry if you want anonymous
+
+sainfo address 203.178.141.209 any address 203.178.141.218 any
+ the first 'any' allows any protocol for the source") },
+ { label => N("Sainfo destination address"), val => \$data->{1}[5], type => 'entry',
+ help => N("sainfo (source_id destination_id | anonymous) { statements }
+defines the parameters of the IKE phase 2
+(IPsec-SA establishment).
+
+source_id and destination_id are constructed like:
+
+ address address [/ prefix] [[port]] ul_proto
+
+Examples: \n
+sainfo anonymous (accepts connections from anywhere)
+ leave blank this entry if you want anonymous
+
+sainfo address 203.178.141.209 any address 203.178.141.218 any
+ 203.178.141.218 is the destination address
+
+sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any
+ 172.16.2.0/24 is the destination address") },
+ { label => N("Sainfo destination protocol"), val => \$data->{1}[6], type => 'entry',
+ help => N("sainfo (source_id destination_id | anonymous) { statements }
+defines the parameters of the IKE phase 2
+(IPsec-SA establishment).
+
+source_id and destination_id are constructed like:
+
+ address address [/ prefix] [[port]] ul_proto
+
+Examples: \n
+sainfo anonymous (accepts connections from anywhere)
+ leave blank this entry if you want anonymous
+
+sainfo address 203.178.141.209 any address 203.178.141.218 any
+ the last 'any' allows any protocol for the destination") },
+ { label => N("PFS group"), val => \$data->{2}[1],
+ list => [ qw(modp768 modp1024 modp1536 1 2 5) ],
+ help => N("define the group of Diffie-Hellman exponentiations.
+If you do not require PFS then you can omit this directive.
+Any proposal will be accepted if you do not specify one.
+group is one of the following: modp768, modp1024, modp1536.
+Or you can define 1, 2, or 5 as the DH group number.") },
+ { label => N("Lifetime number"), val => \$data->{3}[2], type => 'entry',
+ help => N("define a lifetime of a certain time which will be pro-
+posed in the phase 1 negotiations. Any proposal will be
+accepted, and the attribute(s) will not be proposed to
+the peer if you do not specify it(them). They can be
+individually specified in each proposal.
+
+Examples: \n
+ lifetime time 1 min; # sec,min,hour
+ lifetime time 1 min; # sec,min,hour
+ lifetime time 30 sec;
+ lifetime time 30 sec;
+ lifetime time 60 sec;
+ lifetime time 12 hour;
+
+So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.
+") },
+ { label => N("Lifetime unit"), val => \$data->{3}[3],
+ list => [ qw(sec min hour) ],
+ help => N("define a lifetime of a certain time which will be pro-
+posed in the phase 1 negotiations. Any proposal will be
+accepted, and the attribute(s) will not be proposed to
+the peer if you do not specify it(them). They can be
+individually specified in each proposal.
+
+Examples: \n
+ lifetime time 1 min; # sec,min,hour
+ lifetime time 1 min; # sec,min,hour
+ lifetime time 30 sec;
+ lifetime time 30 sec;
+ lifetime time 60 sec;
+ lifetime time 12 hour;
+
+So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and 'hour'.
+") },
+ { label => N("Encryption algorithm"), val => \$data->{4}[1],
+ list => [ qw(des 3des des_iv64 des_iv32 rc5 rc4 idea 3idea cast128 blowfish null_enc twofish rijndae) ] },
+ { label => N("Authentication algorithm"), val => \$data->{5}[1],
+ list => [ qw(des 3des des_iv64 des_iv32 hmac_md5 hmac_sha1 non_auth) ] },
+ { label => N("Compression algorithm"), val => \$data->{6}[1],
+ list => [ N_("deflate") ], format => \&translate, allow_empty_list => 1 }
+
+]) }
+
+sub ask_info2 {
+ my ($title, $text, $main_remote_section, $proposal_remote_section) = @_;
+ $in->ask_from($title, $text,,
+ [ { label => N("Remote"), val => \$main_remote_section->{1}[1], type => 'entry',
+ help => N("remote (address | anonymous) [[port]] { statements }
+specifies the parameters for IKE phase 1 for each remote node.
+The default port is 500. If anonymous is specified, the state-
+ments apply to all peers which do not match any other remote
+directive.\n
+Examples: \n
+remote anonymous
+remote ::1 [8000]") },
+ { label => N("Exchange mode"), val => \$main_remote_section->{2}[1],
+ list => [ qw(main,agressive agressive,main) ],
+ help => N("defines the exchange mode for phase 1 when racoon is the
+initiator. Also it means the acceptable exchange mode
+when racoon is responder. More than one mode can be
+specified by separating them with a comma. All of the
+modes are acceptable. The first exchange mode is what
+racoon uses when it is the initiator.\n") },
+ { label => N("Generate policy"), val => \$main_remote_section->{3}[1],
+ list => [ N_("off"), N_("on") ], format => \&translate,
+ help => N("This directive is for the responder. Therefore you
+should set passive on in order that racoon(8) only
+becomes a responder. If the responder does not have any
+policy in SPD during phase 2 negotiation, and the direc-
+tive is set on, then racoon(8) will choose the first pro-
+posal in the SA payload from the initiator, and generate
+policy entries from the proposal. It is useful to nego-
+tiate with the client which is allocated IP address
+dynamically. Note that inappropriate policy might be
+installed into the responder's SPD by the initiator. So
+that other communication might fail if such policies
+installed due to some policy mismatches between the ini-
+tiator and the responder. This directive is ignored in
+the initiator case. The default value is off.") },
+ { label => N("Passive"), val => \$main_remote_section->{4}[1],
+ list => [ N_("off"), N_("on") ], format => \&translate,
+ help => N("If you do not want to initiate the negotiation, set this
+to on. The default value is off. It is useful for a
+server.") },
+ { label => N("Certificate type"), val => \$main_remote_section->{5}[1],
+ list => [ 'x509' ], allow_empty_list => 1 },
+ { label => N("My certfile"), val => \$main_remote_section->{5}[2], type => 'entry',
+ help => N("Name of the certificate") },
+ { label => N("My private key"), val => \$main_remote_section->{5}[3], type => 'entry',
+ help => N("Name of the private key") },
+ { label => N("Peers certfile"), val => \$main_remote_section->{6}[1], type => 'entry',
+ help => N("Name of the peers certificate") },
+ { label => N("Verify cert"), val => \$main_remote_section->{7}[1],
+ list => [ N_("off"), N_("on") ], format => \&translate,
+ help => N("If you do not want to verify the peer's certificate for
+some reason, set this to off. The default is on.") },
+ { label => N("My identifier"), val => \$main_remote_section->{8}[1], type => 'entry',
+ help => N("specifies the identifier sent to the remote host and the
+type to use in the phase 1 negotiation. address, FQDN,
+user_fqdn, keyid and asn1dn can be used as an idtype.
+they are used like:
+ my_identifier address [address];
+ the type is the IP address. This is the default
+ type if you do not specify an identifier to use.
+ my_identifier user_fqdn string;
+ the type is a USER_FQDN (user fully-qualified
+ domain name).
+ my_identifier FQDN string;
+ the type is a FQDN (fully-qualified domain name).
+ my_identifier keyid file;
+ the type is a KEY_ID.
+ my_identifier asn1dn [string];
+ the type is an ASN.1 distinguished name. If
+ string is omitted, racoon(8) will get DN from
+ Subject field in the certificate.\n
+Examples: \n
+my_identifier user_fqdn \"myemail\@mydomain.com\"") },
+ { label => N("Peers identifier"), val => \$main_remote_section->{9}[1], type => 'entry' },
+ { label => N("Proposal"), val => \$proposal_remote_section->{1}[0], list => [ 'proposal' ], allow_empty_list => 1 },
+ { label => N("Encryption algorithm"), val => \$proposal_remote_section->{2}[1], list => [ qw(des 3des blowfish cast128) ],
+ help => N("specify the encryption algorithm used for the
+phase 1 negotiation. This directive must be defined.
+algorithm is one of the following:
+
+DES, 3DES, blowfish, cast128 for oakley.
+
+For other transforms, this statement should not be used.") },
+ { label => N("Hash algorithm"), val => \$proposal_remote_section->{3}[1], type => 'entry' },
+ { label => N("Authentication method"), val => \$proposal_remote_section->{4}[1], type => 'entry' },
+ { label => N("DH group"), val => \$proposal_remote_section->{5}[1], list => [ qw(modp768 modp1024 modp1536 1 2 5) ], },
+ ]);
+}
+
+sub ask_info3 {
+ my ($title, $text, $section) = @_;
+ $in->ask_from($title, $text,,
+ [ { label => N("Command"), val => \$section->{command}, list => [ 'spdadd' ], allow_empty_list => 1 },
+ { label => N("Source IP range"), val => \$section->{src_range}, type => 'entry' },
+ { label => N("Destination IP range"), val => \$section->{dst_range}, type => 'entry' },
+ { label => N("Upper-layer protocol"), val => \$section->{upperspec}, list => [ N_("any") ],
+ format => \&translate, allow_empty_list => 1 },
+ { label => N("Flag"), val => \$section->{flag}, list => [ '-P' ], allow_empty_list => 1 },
+ { label => N("Direction"), val => \$section->{direction}, list => [ 'in', 'out' ] },
+ { label => N("IPsec policy"), val => \$section->{ipsec}, list => [ N_("ipsec"), N_("discard"), N_("none") ],
+ format => \&translate },
+ { label => N("Protocol"), val => \$section->{protocol}, list => [ 'esp', 'ah', 'ipcomp' ] },
+ { label => N("Mode"), val => \$section->{mode}, list => [ N_("tunnel"), N_("transport"), N_("any") ],
+ format => \&translate },
+ { label => N("Source/destination"), val => \$section->{src_dest}, type => 'entry' },
+ { label => N("Level"), val => \$section->{level}, list => [ N_("require"), N_("default"), N_("use"), N_("unique") ],
+ format => \&translate },
+ ]);
+}
+
diff --git a/bin/net_applet b/bin/net_applet
index a0c9efe..d4eb999 100644
--- a/bin/net_applet
+++ b/bin/net_applet
@@ -2,20 +2,26 @@
use strict;
use lib qw(/usr/lib/libDrakX);
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use c;
use common;
use standalone;
use network::network;
use network::tools;
+use network::connection;
+use network::connection::ethernet;
+use network::vpn;
use run_program;
-use mygtk2 qw(gtknew);
+use mygtk2 qw(gtknew gtkset);
use dbus_object;
use network::ifw;
use network::monitor;
+use network::signal_strength;
use detect_devices;
+use modules;
use Gtk2::TrayIcon;
-use Gtk2::NotificationBubble;
use ugtk2 qw(:create :helpers :wrappers :dialogs);
@@ -24,33 +30,45 @@ shouldStart() or die "$onstartupfile should be set to TRUE or use net_applet --f
#- Allow multiple instances, but only one per user:
is_running('net_applet') and die "net_applet already running\n";
-my ($eventbox, $img, $bubble);
-my ($current_state, $current_interface, $menu, $wireless_device, $wireless_menu, $timeout, $update_timeout);
+my ($eventbox, $img);
+my ($current_state, $current_interface, $current_description, $simple_menu, $menu, $wireless_device, $timeout, $update_timeout);
add_icon_path("/usr/share/libDrakX/pixmaps/");
my $net = {};
+my $modules_conf = modules::any_conf->read;
my $watched_interface;
my %pixbufs =
(
- firewall => gtkcreate_pixbuf('/usr/lib/libDrakX/icons/drakfirewall.png'),
- firewall_icon => gtkcreate_pixbuf('/usr/lib/libDrakX/icons/drakfirewall.png')->scale_simple(24, 24, 'hyper'),
- state => { map { $_ => gtkcreate_pixbuf($_) } qw(connected disconnected) },
+ firewall => gtknew('Pixbuf', file => 'drakfirewall.png'),
+ firewall_icon => gtknew('Pixbuf', file => 'drakfirewall.png')->scale_simple(24, 24, 'hyper'),
+ state => { map { $_ => gtknew('Pixbuf', file => $_) } qw(connected disconnected) },
link_level => { map {
- $_ => gtkcreate_pixbuf('wifi-' . sprintf('%03d', $_) . '.png')->scale_simple(24, 24, 'hyper');
+ $_ => gtknew('Pixbuf', file => 'wifi-' . sprintf('%03d', $_) . '.png')->scale_simple(24, 24, 'hyper');
} qw(20 40 60 80 100) },
- keyring => gtkcreate_pixbuf("/usr/share/pixmaps/keyring-small.png")->scale_simple(24, 24, 'hyper'), #- provided by usermode, required by drakxtools
+ encryption => { map {
+ $_ => gtknew('Pixbuf', file => "encryption-$_-24.png");
+ } qw(open weak strong) },
);
my %wireless_networks;
-my %tooltips =
- (
- connected => N_("Network is up on interface %s"),
- disconnected =>
- #-PO: keep the "Configure Network" substring synced with the "Configure Network" message below
- N_("Network is down on interface %s. Click on \"Configure Network\""),
- notconfigured => N_("You do not have any configured Internet connection.
-Run the \"%s\" assistant from the Mandriva Linux Control Center", N("Set up a new network interface (LAN, ISDN, ADSL, ...)")),
- );
+
+sub get_state_message {
+ my ($o_interface) = @_;
+ my $interface = $o_interface || $current_interface;
+ my $network = get_current_network();
+ formatAlaTeX(
+ $current_state eq 'connected' ?
+ N("Network is up on interface %s.", $interface) .
+ "\n\n" . N("IP address: %s", network::tools::get_interface_ip_address($net, $interface)) .
+ "\n\n" . N("Gateway: %s", [ network::tools::get_interface_status($interface) ]->[1]) .
+ ($network && "\n\n" . N("Connected to %s (link level: %d %%)", $network->{name}, $network->{signal_strength}))
+ : $current_state eq 'disconnected' ?
+ N("Network is down on interface %s.", $interface)
+ :
+ N("You do not have any configured Internet connection.
+Run the \"%s\" assistant from the Mandriva Linux Control Center", N("Set up a new network interface (LAN, ISDN, ADSL, ...)"))
+ );
+}
my %actions = (
'upNetwork' => { name => sub { N("Connect %s", $_[0]) }, launch => sub { network::tools::start_interface($_[0], 1) } },
@@ -58,7 +76,12 @@ my %actions = (
'monitorNetwork' => { name => N("Monitor Network"), launch => \&run_net_monitor },
'monitorIFW' => { name => N("Interactive Firewall"), launch => \&run_drakids },
'wireless' => { name => N("Manage wireless networks"), launch => sub { run_drakroam() } },
- 'confNetwork' => { name => N("Configure Network"), launch => sub { system("/usr/sbin/drakconnect --skip-wizard &") } },
+ 'drakvpn' => {
+ name => N("Manage VPN connections"), launch => sub {
+ run_program::raw({ detach => 1 }, '/usr/sbin/drakvpn');
+ },
+ },
+ 'confNetwork' => { name => N("Configure Network"), launch => sub { system("/usr/sbin/drakconnect &") } },
'chooseInterface' => {
name => N("Watched interface"),
choices => sub { N("Auto-detect"), sort keys %{$net->{ifcfg}} },
@@ -76,6 +99,12 @@ my %actions = (
my ($is_up, $_gw) = network::tools::get_interface_status($_[0]);
$is_up;
},
+ get_icon => sub {
+ my $ifcfg = $net->{ifcfg}{$_[0]};
+ require network::connection;
+ my $type = $ifcfg && network::connection->find_ifcfg_type($ifcfg);
+ $type && $type->get_type_icon;
+ },
launch => sub {
my ($is_up, $_gw) = network::tools::get_interface_status($_[0]);
if ($is_up) {
@@ -93,9 +122,18 @@ my %actions = (
launch => sub {
require run_program;
$net->{PROFILE} = $_[0];
- run_program::raw({ detach => 1 }, network::tools::wrap_command_for_root('/sbin/set-netprofile', $net->{PROFILE}));
+ run_program::raw({ detach => 1 }, common::wrap_command_for_root('/sbin/set-netprofile', $net->{PROFILE}));
}
},
+ 'chooseVPN' => {
+ name => N("VPN connection"),
+ header => "drakvpn",
+ choices => sub { map { $_->get_configured_connections } network::vpn::list_types },
+ allow_single_choice => 1,
+ format_choice => \&network::vpn::get_label,
+ choice_selected => sub { $_[0]->is_started },
+ launch => sub { require interactive; $_[0]->is_started ? $_[0]->stop : $_[0]->start(interactive->vnew) },
+ },
'help' => { name => N("Get Online Help"), launch => sub { system("drakhelp --id internet-connection &") } },
'quit' => { name => N("Quit"), launch => \&mainQuit },
);
@@ -107,7 +145,7 @@ gtkadd(my $icon = Gtk2::TrayIcon->new("Net_Applet"),
);
$icon->show_all;
-my ($dbus, $monitor, $ifw, $interactive_cb, @attacks_queue, $ifw_alert);
+my ($dbus, $monitor, $ifw, $interactive_cb, $ifw_alert);
eval { $dbus = dbus_object::system_bus() };
eval { $monitor = network::monitor->new($dbus) } if $dbus;
eval {
@@ -115,7 +153,9 @@ eval {
my ($_con, $msg) = @_;
my $member = $msg->get_member;
if ($member eq 'Attack') {
- handle_attack($msg->get_args_list);
+ handle_ifw_message($msg->get_args_list);
+ } elsif ($member eq 'Listen') {
+ handle_ifw_listen($msg->get_args_list);
} elsif ($member eq 'Init') {
$ifw->attach_object;
checkNetworkForce();
@@ -125,27 +165,24 @@ eval {
});
} if $dbus;
-$bubble = Gtk2::NotificationBubble->new;
-$bubble->attach($icon);
-$bubble->signal_connect(timeout => sub {
- set_verdict($attacks_queue[0], \&apply_verdict_ignore);
-});
-$bubble->signal_connect(clicked => sub {
- $bubble->hide;
- eval { $ifw->send_alert_ack };
- $ifw_alert = 0;
- update_tray_icon();
- ask_attack_verdict($attacks_queue[0]);
-});
+my $bubble_queue = Gtk2::NotificationBubble::Queue->new;
+$bubble_queue->{bubble}->attach($icon);
$eventbox->signal_connect(button_press_event => sub {
- $_[1]->button == 1 and ($ifw_alert ? run_drakids() : run_net_monitor());
- $_[1]->button == 3 && $menu and $menu->popup(undef, undef, undef, undef, $_[1]->button, $_[1]->time);
+ if ($_[1]->button == 1) {
+ if ($ifw_alert) {
+ run_drakids();
+ } elsif ($simple_menu) {
+ $simple_menu->popup(undef, undef, undef, undef, $_[1]->button, $_[1]->time);
+ }
+ } elsif ($_[1]->button == 3 && $menu) {
+ $menu->popup(undef, undef, undef, undef, $_[1]->button, $_[1]->time);
+ }
});
checkNetworkForce();
cronNetwork();
-get_unprocessed_attacks();
+get_unprocessed_ifw_messages();
$SIG{HUP} = sub {
print "received SIGHUP, reloading network configuration\n";
@@ -160,7 +197,7 @@ sub is_running {
my ($name) = @_;
any {
my ($ppid, $pid, $n) = /^\s*(\d+)\s+(\d+)\s+(.*)/;
- $pid != $$ && $n eq $name;
+ $ppid != 1 && $pid != $$ && $n eq $name;
} `ps -o '%P %p %c' -u $ENV{USER}`;
}
sub shouldStart() {
@@ -186,44 +223,57 @@ sub run_drakids() {
}
}
sub generate_wireless_menuitem {
- my ($wnet, $ap) = @_;
- $wnet->{menuitem} = Gtk2::CheckMenuItem->new;
- $wnet->{menuitem}->set_draw_as_radio(1);
- $wnet->{menuitem}->add(gtkpack_(gtkshow(Gtk2::HBox->new),
- 1, gtkset_alignment($wnet->{ssid_label} = Gtk2::Label->new, 0, 0),
- 0, $wnet->{keyring_image} = Gtk2::Image->new_from_pixbuf($pixbufs{keyring}),
- 0, $wnet->{level_image} = Gtk2::Image->new));
- $wnet->{activate} = $wnet->{menuitem}->signal_connect('activate' => sub {
+ my ($wnet) = @_;
+ my $menuitem = {};
+ $menuitem->{widget} = Gtk2::CheckMenuItem->new;
+ $menuitem->{widget}->set_draw_as_radio(1);
+ $menuitem->{widget}->add(gtkpack_(gtkshow(gtknew('HBox')),
+ 1, gtkset_alignment($menuitem->{label} = gtknew('Label'), 0, 0.5),
+ 0, $menuitem->{strength} = Gtk2::Image->new,
+ 0, $menuitem->{security} = Gtk2::Image->new,
+ ));
+ $menuitem->{activate} = $menuitem->{widget}->signal_connect('activate' => sub {
if (exists $wnet->{id}) {
eval { $monitor->select_network($wnet->{id}) };
$@ and err_dialog(N("Interactive Firewall"), N("Unable to contact daemon"));
} else {
- run_drakroam($ap);
+ run_drakroam($wnet->{ap});
}
checkNetworkForce();
});
- undef $current_state; #- force menu redraw
+ update_wireless_item($menuitem, $wnet);
+ push @{$wnet->{menuitems}}, $menuitem;
+ return $menuitem->{widget};
}
sub update_wireless_item {
- my ($wnet, $ap_address) = @_;
- $wnet->{ssid_label}->set_text($wnet->{essid} || "[$ap_address]");
- $wnet->{keyring_image}->visible(to_bool($wnet->{flags}));
- $wnet->{level_image}->set_from_pixbuf($pixbufs{link_level}{$wnet->{approx_level}});
-
- $wnet->{menuitem}->signal_handler_block($wnet->{activate});
- $wnet->{menuitem}->set_active($wnet->{current});
- $wnet->{menuitem}->signal_handler_unblock($wnet->{activate});
+ my ($menuitem, $wnet) = @_;
+ $menuitem->{label}->set_text($wnet->{name});
+ $menuitem->{security}->set_from_pixbuf($pixbufs{encryption}{$wnet->{flags} =~ /WPA/i ? 'strong' : $wnet->{flags} =~ /WEP/i ? 'weak' : 'open'});
+ $menuitem->{strength}->set_from_pixbuf(network::signal_strength::get_strength_icon($wnet));
+
+ $menuitem->{widget}->signal_handler_block($menuitem->{activate});
+ $menuitem->{widget}->set_active($wnet->{current});
+ $menuitem->{widget}->signal_handler_unblock($menuitem->{activate});
}
sub checkWireless() {
$wireless_device or return;
- my ($networks) = network::monitor::list_wireless($monitor, $wireless_device);
+ my ($networks) = network::monitor::list_wireless($monitor);
+ my $force_applet_update;
foreach (keys %$networks) {
- my $wnet = $wireless_networks{$_} ||= {};
- put_in_hash($wnet, $networks->{$_});
- exists $wnet->{menuitem} or generate_wireless_menuitem($wnet, $_);
- update_wireless_item($wnet, $_);
+ exists $wireless_networks{$_} or $force_applet_update = 1;
+ put_in_hash($wireless_networks{$_} ||= {}, $networks->{$_});
+ }
+ if ($force_applet_update) {
+ undef $current_state;
+ } else {
+ foreach my $wnet (values %wireless_networks) {
+ my $is_valuable = exists $networks->{$wnet->{ap}};
+ foreach (@{$wnet->{menuitems}}) {
+ update_wireless_item($_, $wnet) if $is_valuable;
+ $_->{widget}->visible($is_valuable);
+ }
+ }
}
- $wireless_networks{$_}{menuitem}->visible(exists $networks->{$_}) foreach keys %wireless_networks;
}
sub checkNetwork() {
my ($gw_intf, $_is_up, $gw_address) = $watched_interface ?
@@ -249,85 +299,172 @@ sub cronNetwork() {
}
sub go2State {
my ($state_type, $interface) = @_;
- if ($current_state ne $state_type || $current_interface ne $interface) {
- $current_state = $state_type;
- $current_interface = $interface;
- $wireless_device = detect_devices::get_wireless_interface();
- if ($menu) {
- if (my $m = $wireless_menu && $wireless_menu->get_submenu) {
- $_->{menuitem}->get_parent and $m->remove($_->{menuitem}) foreach values %wireless_networks;
- }
- $menu->destroy;
+ my $need_update;
+ my ($old_interface, $old_description);
+ if ($current_interface ne $interface) {
+ my $card = find { $_->[0] eq $interface } network::connection::ethernet::get_eth_cards($modules_conf);
+ if ($state_type eq 'disconnected') {
+ $old_interface = $current_interface;
+ $old_description = $current_description;
}
- $menu = generate_menu($interface);
+ $current_description = $card && $card->[2];
+ $current_interface = $interface;
+ $need_update = 1;
+ }
+ if ($current_state ne $state_type) {
+ my $show = defined $current_state; # don't show bubble at applet startup
+ $current_state = $state_type;
+ $bubble_queue->add({
+ title => $old_description || $current_description || N("Network connection"),
+ pixbuf => get_state_pixbuf(),
+ message => get_state_message($old_interface || $current_interface),
+ }) if $show;
+ $need_update = 1;
+ }
+
+ update_applet() if $need_update;
+}
+
+sub get_current_network() {
+ detect_devices::is_wireless_interface($current_interface) && find { $_->{current} } values %wireless_networks;
+}
+
+sub get_state_pixbuf() {
+ my $pixbuf;
+ if ($current_state eq 'connected') {
+ my $wnet = get_current_network();
+ $pixbuf = $wnet ?
+ network::signal_strength::get_strength_icon($wnet) :
+ $pixbufs{state}{connected};
+ } else {
+ $pixbuf = $pixbufs{state}{disconnected};
}
+ $pixbuf;
}
+
sub update_tray_icon() {
if (!$ifw_alert || $img->get_storage_type ne 'pixbuf') {
- my $pixbuf;
- if ($current_state eq 'connected') {
- if (detect_devices::is_wireless_interface($current_interface)) {
- my $wnet = find { $_->{current} } values %wireless_networks;
- $pixbuf = $pixbufs{link_level}{$wnet->{approx_level}} if $wnet;
- }
- $pixbuf ||= $pixbufs{state}{connected};
- } else {
- $pixbuf = $pixbufs{state}{disconnected};
- }
- $img->set_from_pixbuf($pixbuf);
+ $img->set_from_pixbuf(get_state_pixbuf());
} else {
$img->set_from_stock('gtk-dialog-warning', 'small-toolbar');
}
}
-sub generate_menu {
- my ($interface) = @_;
+
+sub enable_ifw_alert() {
+ unless ($ifw_alert) {
+ $ifw_alert = 1;
+ update_tray_icon();
+ Glib::Timeout->add(1000, sub {
+ update_tray_icon();
+ $ifw_alert;
+ });
+ }
+}
+
+sub disable_ifw_alert() {
+ eval { $ifw->send_alert_ack };
+ $ifw_alert = 0;
+ update_tray_icon();
+}
+
+sub update_applet() {
+ $wireless_device = detect_devices::get_wireless_interface();
+
+ generate_simple_menu();
+ generate_menu();
update_tray_icon();
- gtkset_tip(Gtk2::Tooltips->new, $eventbox, formatAlaTeX(sprintf(translate($tooltips{$current_state}), $interface)));
-
- my $menu = Gtk2::Menu->new;
- my $create_item = sub {
- my ($action) = @_;
- my $name = ref($actions{$action}{name}) eq 'CODE' ? $actions{$action}{name}->($interface) : $actions{$action}{name};
- my $launch = $actions{$action}{launch};
- my @choices = exists $actions{$action}{choices} ? $actions{$action}{choices}->() : ();
- my $w;
- if (@choices == 0) {
- $w = gtksignal_connect(gtkshow(Gtk2::MenuItem->new_with_label($name)), activate => sub { $launch->($interface) });
- } elsif (@choices > 1) {
- my $selected = $actions{$action}{choice_selected};
- my $format = $actions{$action}{format_choice};
- $w = gtkshow(create_menu($name, map {
- my $choice = $_;
- my $w = gtkshow(gtkset_active(Gtk2::CheckMenuItem->new_with_label($format ? $format->($choice) : $choice), $selected->($choice)));
- gtksignal_connect($w, activate => sub { $launch->($choice) });
- $w->set_draw_as_radio(!$actions{$action}{use_checkbox});
- $w;
- } $actions{$action}{choices}->()));
- }
- #- don't add submenu if only one choice exists
+ gtkset_tip(Gtk2::Tooltips->new, $eventbox, get_state_message()); #gtkset($eventbox, tip => get_state_message());
+}
+
+sub create_menu_choices {
+ my ($action) = @_;
+ my @choices = $actions{$action}{choices}->();
+ #- don't add submenu if only zero or one choice exists
+ @choices > ($actions{$action}{allow_single_choice} ? 0 : 1) or return ();
+ my $selected = $actions{$action}{choice_selected};
+ my $format = $actions{$action}{format_choice};
+ my $get_icon = $actions{$action}{get_icon};
+ map {
+ my $choice = $_;
+ my $label = $format ? $format->($choice) : $choice;
+ my $w = gtkshow(gtkset_active(gtkadd(
+ Gtk2::CheckMenuItem->new,
+ gtknew('HBox', children => [
+ 1, gtkset_alignment(gtknew('Label', text => $label), 0, 0.5),
+ $get_icon ?
+ (0, gtknew('Image', file => $get_icon->($_))) :
+ (),
+ ])), $selected->($choice)));
+ gtksignal_connect($w, activate => sub { $actions{$action}{launch}->($choice) });
+ $w->set_draw_as_radio(!$actions{$action}{use_checkbox});
$w;
- };
+ } $actions{$action}{choices}->();
+}
+
+sub create_action_item {
+ my ($action) = @_;
+ my $name = ref($actions{$action}{name}) eq 'CODE' ? $actions{$action}{name}->($current_interface) : $actions{$action}{name};
+ if (exists $actions{$action}{choices}) {
+ gtkshow(create_menu($name,
+ if_($actions{$action}{header},
+ create_action_item($actions{$action}{header}),
+ gtkshow(Gtk2::SeparatorMenuItem->new),
+ ),
+ create_menu_choices($action),
+ ));
+ } else {
+ gtksignal_connect(gtkshow(Gtk2::MenuItem->new_with_label($name)), activate => sub { $actions{$action}{launch}->($current_interface) });
+ }
+}
+
+sub empty_menu {
+ my ($menu) = @_;
+ delete $_->{menuitems} foreach values %wireless_networks;
+ $menu->destroy if $menu;
+ Gtk2::Menu->new;
+}
+
+sub get_wireless_networks_sorted() {
+ sort {
+ $b->{signal_strength} <=> $a->{signal_strength} || $a->{name} cmp $b->{name};
+ } values %wireless_networks;
+}
+
+sub generate_simple_menu() {
+ $simple_menu = empty_menu($simple_menu);
+
+ if ($wireless_device) {
+ my @networks = get_wireless_networks_sorted();
+ my @valuable_networks = splice @networks, 0, 7;
+ gtkappend($simple_menu,
+ (map { generate_wireless_menuitem($_) } @valuable_networks),
+ (@networks ? create_menu(N("More networks"), map { generate_wireless_menuitem($_) } @networks) : ()),
+ Gtk2::SeparatorMenuItem->new,
+ );
+ }
+ gtkappend($simple_menu, create_menu_choices('setInterface'));
+}
+
+sub generate_menu() {
+ $menu = empty_menu($menu);
my (@settings);
my $interactive;
eval { $interactive = $ifw->get_interactive };
if ($current_state eq 'connected') {
- $menu->append($create_item->($_)) foreach qw(downNetwork monitorNetwork);
+ $menu->append(create_action_item($_)) foreach qw(downNetwork monitorNetwork);
} elsif ($current_state eq 'disconnected') {
- $menu->append($create_item->('upNetwork'));
+ $menu->append(create_action_item('upNetwork'));
}
- $menu->append($create_item->('monitorIFW')) if $current_state ne 'notconfigured' && defined $interactive;
+ $menu->append(create_action_item('monitorIFW')) if $current_state ne 'notconfigured' && defined $interactive;
- $menu->append($create_item->('confNetwork'));
+ $menu->append(create_action_item('confNetwork'));
- if ($current_state ne 'notconfigured') {
- $menu->append($create_item->('wireless')) if $wireless_device;
- push @settings, $create_item->('chooseInterface');
- }
+ push @settings, create_action_item('chooseInterface') if $current_state ne 'notconfigured';
- push @settings, $create_item->('chooseProfile');
+ push @settings, create_action_item('chooseProfile');
if (defined $interactive) {
$interactive_cb = gtkshow(gtksignal_connect(gtkset_active(Gtk2::CheckMenuItem->new_with_label(N("Interactive Firewall automatic mode")),
!$interactive),
@@ -338,13 +475,18 @@ sub generate_menu {
toggled => sub { setAutoStart(uc(bool2text($_[0]->get_active))) }));
$menu->append(gtkshow(Gtk2::SeparatorMenuItem->new));
- $wireless_device and $menu->append(gtkshow($wireless_menu = create_menu(N("Wireless networks"),
- map { $_->{menuitem} } values %wireless_networks)));
- if (my $set = $current_state ne 'notconfigured' && $create_item->('setInterface')) { $menu->append($set) }
- $menu->append(gtkshow(create_menu(N("Settings"), grep { $_ } @settings)));
+ if ($current_state ne 'notconfigured' && $wireless_device) {
+ $menu->append(gtkshow(create_menu(N("Wireless networks"),
+ create_action_item('wireless'),
+ gtkshow(Gtk2::SeparatorMenuItem->new),
+ map { generate_wireless_menuitem($_) } get_wireless_networks_sorted())));
+ }
+ if (my $vpn = create_action_item('chooseVPN')) { $menu->append($vpn) }
+ if (my $set = $current_state ne 'notconfigured' && create_action_item('setInterface')) { $menu->append($set) }
+ $menu->append(gtkshow(create_menu(N("Settings"), @settings)));
$menu->append(gtkshow(Gtk2::SeparatorMenuItem->new));
- $menu->append($create_item->('help'));
- $menu->append($create_item->('quit'));
+ $menu->append(create_action_item('help'));
+ $menu->append(create_action_item('quit'));
$menu;
}
sub mainQuit() {
@@ -363,27 +505,17 @@ sub setAutoStart {
);
}
-sub get_unprocessed_attacks() {
+sub get_unprocessed_ifw_messages() {
my @packets = eval { $ifw->get_reports };
- while (my @attack = splice(@packets, 0, 10)) {
- handle_attack(@attack);
+ while (my @ifw_message = splice(@packets, 0, 10)) {
+ handle_ifw_message(@ifw_message);
}
}
-sub handle_attack {
- my $attack = network::ifw::attack_to_hash(\@_);
- push @attacks_queue, $attack;
- @attacks_queue == 1 and notify_attack($attacks_queue[0]);
-}
-
sub set_verdict {
my ($attack, $apply_verdict) = @_;
eval { $apply_verdict->($attack) };
$@ and err_dialog(N("Interactive Firewall"), N("Unable to contact daemon"));
-
- shift @attacks_queue;
- #- wait for some time so that the new bubble is noticeable
- @attacks_queue and Glib::Timeout->add(500, sub { notify_attack($attacks_queue[0]); 0 });
}
sub apply_verdict_blacklist {
@@ -402,33 +534,40 @@ sub apply_verdict_whitelist {
apply_verdict_ignore($attack);
}
-sub notify_attack {
- my ($attack) = @_;
+sub handle_ifw_message {
+ my $attack = network::ifw::attack_to_hash(\@_);
unless ($attack->{msg}) {
print "unhandled attack type, skipping\n";
return;
}
- unless ($ifw_alert) {
- $ifw_alert = 1;
- update_tray_icon();
- Glib::Timeout->add(1000, sub {
- update_tray_icon();
- $ifw_alert;
- });
- }
- $bubble->set(N("Interactive Firewall"), Gtk2::Image->new_from_pixbuf($pixbufs{firewall}), $attack->{msg});
- $bubble->show(5000);
+ enable_ifw_alert();
+ $bubble_queue->add({
+ title => N("Interactive Firewall"),
+ pixbuf => $pixbufs{firewall},
+ message => $attack->{msg},
+ timeout => sub {
+ set_verdict($attack, \&apply_verdict_ignore);
+ },
+ clicked => sub {
+ disable_ifw_alert();
+ ask_attack_verdict($attack);
+ },
+ });
}
sub ask_attack_verdict {
my ($attack) = @_;
my $w = ugtk2->new(N("Interactive Firewall: intrusion detected"),
- icon => "/usr/lib/libDrakX/icons/drakfirewall.png");
+ icon => "drakfirewall.png");
my ($blacklist, $whitelist, $ignore, $auto);
my $update_automatic_mode = sub { $auto->get_active and $interactive_cb->set_active(1) };
-
+ my $set_verdict = sub {
+ my ($verdict) = @_;
+ set_verdict($attack, $verdict);
+ $bubble_queue->process_next;
+ };
gtkadd($w->{window},
gtknew('VBox', spacing => 5, children_loose => [
gtknew('HBox', children => [
@@ -467,23 +606,63 @@ sub ask_attack_verdict {
$blacklist = gtknew('Button', text => N("Blacklist"), clicked => sub {
$w->destroy;
$update_automatic_mode->();
- set_verdict($attack, \&apply_verdict_blacklist);
+ $set_verdict->(\&apply_verdict_blacklist);
}),
$whitelist = gtknew('Button', text => N("Whitelist"), clicked => sub {
$w->destroy;
$update_automatic_mode->();
- set_verdict($attack, \&apply_verdict_whitelist);
+ $set_verdict->(\&apply_verdict_whitelist);
}),
$ignore = gtknew('Button', text => N("Ignore"), clicked => sub {
$w->destroy;
- set_verdict($attack, \&apply_verdict_ignore);
+ $set_verdict->(\&apply_verdict_ignore);
}),
]),
]));
eval { $auto->set_active(!$ifw->get_interactive) };
$blacklist->grab_focus;
gtksignal_connect($w->{window}, delete_event => sub {
- set_verdict($attack, \&apply_verdict_ignore);
+ $set_verdict->(\&apply_verdict_ignore);
});
$w->{window}->show_all;
}
+
+sub handle_ifw_listen {
+ my $listen = network::ifw::parse_listen_message(\@_);
+ enable_ifw_alert();
+ $bubble_queue->add({
+ title => N("Interactive Firewall: new service"),
+ pixbuf => $pixbufs{firewall},
+ message => $listen->{message},
+ clicked => sub {
+ disable_ifw_alert();
+ ask_listen_verdict($listen);
+ },
+ });
+}
+
+sub ask_listen_verdict {
+ my ($listen) = @_;
+
+ my $w = ugtk2->new(N("Interactive Firewall: new service"), icon => "drakfirewall.png");
+ my $set_verdict = sub {
+ $bubble_queue->process_next;
+ };
+ gtkadd($w->{window},
+ gtknew('VBox', spacing => 5, children_loose => [
+ gtknew('HBox', children => [
+ 0, Gtk2::Image->new_from_stock('gtk-dialog-warning', 'dialog'),
+ 1, gtknew('VBox', children => [
+ 0, $listen->{message},
+ 0, N("Do you want to open this service?"),
+ ])
+ ]),
+ gtknew('CheckButton', text => N("Remember this answer"), toggled => sub {}),
+ gtknew('HButtonBox', layout => 'edge', children_loose => [
+ gtknew('Button', text => N("Allow"), clicked => sub { $w->destroy; $set_verdict->(1) }),
+ gtknew('Button', text => N("Block"), clicked => sub { $w->destroy; $set_verdict->(0) }),
+ ]),
+ ]));
+ gtksignal_connect($w->{window}, delete_event => sub { $set_verdict->() });
+ $w->{window}->show_all;
+}
diff --git a/bin/net_monitor b/bin/net_monitor
index b513b54..b9ca3de 100755
--- a/bin/net_monitor
+++ b/bin/net_monitor
@@ -2,7 +2,7 @@
# NetMonitor
-# Copyright (C) 1999-2005 Mandriva
+# Copyright (C) 1999-2006 Mandriva
# Damien "Dam's" Krotkine
# Thierry Vignaud <tvignaud@mandriva.com>
#
@@ -23,10 +23,13 @@
use lib qw(/usr/lib/libDrakX);
use strict;
+# i18n: IMPORTANT: to get correct namespace (drakx-net instead of libDrakX)
+BEGIN { unshift @::textdomains, 'drakx-net' }
use standalone; #- warning, standalone must be loaded very first, for 'explanations'
use c;
use interactive;
+use mygtk2 qw(gtknew gtkset);
use ugtk2 qw(:create :helpers :wrappers);
use common;
use network::network;
@@ -86,38 +89,38 @@ my %config = getVarsFromSh($cfg_file);
my $use_same_scale = text2bool($config{use_same_scale});
gtkadd($window1->{window},
- gtkpack_(Gtk2::VBox->new(0,5),
- 1, gtkpack_(Gtk2::HBox->new(0,5),
- 0, my $notebook = Gtk2::Notebook->new,
- 1, gtkpack_(Gtk2::VBox->new(0,5),
- 0, gtkadd(gtkset_shadow_type(Gtk2::Frame->new(N("Settings")), 'etched_out'),
- gtkpack__(gtkset_border_width(Gtk2::HBox->new(0,0),5),
+ gtknew('VBox', spacing => 5, children => [
+ 1, gtknew('HBox', spacing => 5, children => [
+ 0, my $notebook = gtknew('Notebook'),
+ 1, gtknew('VBox', spacing => 5, children => [
+ 0, gtknew('Frame', text => N("Settings"), shadow_type => 'etched_out', child =>
+ gtknew('HBox', border_width => 5, children_tight => [
N("Connection type: "),
- my $label_cnx_type = Gtk2::Label->new("")),
+ my $label_cnx_type = gtknew('Label', text => "")]),
),
- 1, gtkadd(gtkset_shadow_type(Gtk2::Frame->new(N("Global statistics")), 'etched_out'),
- gtkpack__(gtkset_border_width(Gtk2::VBox->new(0,0),5),
- create_packtable({ col_spacings => 1, row_spacings => 5, homogeneous => 1 },
- [ Gtk2::Label->new(""), Gtk2::Label->new(N("Instantaneous")) , Gtk2::Label->new(N("Average")) ],
- [ Gtk2::WrappedLabel->new(N("Sending\nspeed:")), my $label_st = Gtk2::Label->new(""), my $label_sta = Gtk2::Label->new(N("unknown")) ],
- [ Gtk2::WrappedLabel->new(N("Receiving\nspeed:")), my $label_sr = Gtk2::Label->new(""), my $label_sra = Gtk2::Label->new(N("unknown")) ],
- ),
- Gtk2::HSeparator->new,
- gtkpack__(gtkset_border_width(Gtk2::HBox->new(0,0),5),
+ 1, gtknew('Frame', text => N("Global statistics"), shadow_type => 'etched_out', child =>
+ gtknew('VBox', border_width => 5, children_tight => [
+ gtknew('Table', col_spacings => 1, row_spacings => 5, homogeneous => 1, children => [
+ [ gtknew('Label', text => ""), gtknew('Label', text => N("Instantaneous")) , gtknew('Label', text => N("Average")) ],
+ [ gtknew('WrappedLabel', text => N("Sending\nspeed:")), my $label_st = gtknew('Label', text => ""), my $label_sta = gtknew('Label', text => N("unknown")) ],
+ [ gtknew('WrappedLabel', text => N("Receiving\nspeed:")), my $label_sr = gtknew('Label', text => ""), my $label_sra = gtknew('Label', text => N("unknown")) ],
+ ]),
+ gtknew('HSeparator'),
+ gtknew('HBox', border_width => 5, children_tight => [
N("Connection\ntime: "),
- my $label_ct = Gtk2::Label->new(N("unknown")),
- ),
- )
+ my $label_ct = gtknew('Label', text => N("unknown")),
+ ]),
+ ])
),
- )
- ),
- 0, gtksignal_connect(gtkset_active(Gtk2::CheckButton->new(N("Use same scale for received and transmitted")), $use_same_scale), clicked => sub { $use_same_scale = !$use_same_scale }),
- 0, gtkpack(create_hbox('edge'),
- gtksignal_connect(my $button_connect = gtkset_sensitive(Gtk2::Button->new(N("Wait please")), 0), clicked => \&connection),
- gtksignal_connect(my $button_close = Gtk2::Button->new(N("Close")), clicked => \&main_quit),
- ),
+ ])
+ ]),
+ 0, gtksignal_connect(gtkset_active(gtknew('CheckButton', text => N("Use same scale for received and transmitted")), $use_same_scale), clicked => sub { $use_same_scale = !$use_same_scale }),
+ 0, gtknew('HButtonBox', layout => 'edge', children_loose => [
+ my $button_connect = gtknew('Button', text => N("Wait please"), sensitive => 0, clicked => \&connection),
+ my $button_close = gtknew('Button', text => N("Close"), clicked => \&main_quit),
+ ]),
0, my $statusbar = Gtk2::Statusbar->new
- ),
+ ]),
);
$window1->{window}->show_all;
@@ -185,7 +188,7 @@ sub connection() {
$ct_tag = Glib::Timeout->add(1000, sub {
my ($sec, $min, $hour) = gmtime(time() - $c_time);
my $e = sprintf("%02d:%02d:%02d", $hour, $min, $sec);
- $label_ct->set_label($e); 1 });
+ gtkset($label_ct, text => $e); 1 });
}
my $nb_point = 1;
$first = 1;
@@ -295,19 +298,19 @@ sub rescan() {
draw_monitor($monitor->{$intf}, $intf);
}
- $label_sr->set_label(formatXiB($monitor->{sr}) . "/s");
- $label_st->set_label(formatXiB($monitor->{st}) . "/s");
+ gtkset($label_sr, text => formatXiB($monitor->{sr}) . "/s");
+ gtkset($label_st, text => formatXiB($monitor->{st}) . "/s");
$monitor->{sra} += $monitor->{sr};
$monitor->{sta} += $monitor->{st};
$monitor->{nba}++;
if ($monitor->{nba} > 9) {
- $label_sra->set_label(formatXiB($monitor->{sra}/10) . "/s");
- $label_sta->set_label(formatXiB($monitor->{sta}/10) . "/s");
+ gtkset($label_sra, text => formatXiB($monitor->{sra}/10) . "/s");
+ gtkset($label_sta, text => formatXiB($monitor->{sta}/10) . "/s");
$monitor->{sra} = 0;
$monitor->{sta} = 0;
$monitor->{nba} = 0;
}
- $label_cnx_type->set_label(translate($net->{type}));
+ gtkset($label_cnx_type, text => translate($net->{type}));
$monitor->{$_} = 0 foreach 'sr', 'st';
1;
}
@@ -351,6 +354,19 @@ $scale_r = $scale_t = $height;
sub scale_tranmistted($) { $_[0] * $scale_t }
sub scale_received($) { $_[0] * $scale_r }
+sub color_button {
+ my ($gc, $color) = @_;
+ gtknew('Button', relief => 'none', clicked => sub {
+ $color = change_color($color);
+ $gc->set_rgb_fg_color($color);
+ $_[0]->queue_draw;
+ },
+ child => gtksignal_connect(gtkshow(gtksize(gtkset(Gtk2::DrawingArea->new, width => 10, height => 10), 10, 10)),
+ expose_event => sub { $_[0]->window->draw_rectangle($gc, 1, 0, 0, 10, 10) })
+ );
+}
+
+
sub update() {
if (!$during_connection) {
my $isconnect = test_connected(0);
@@ -369,54 +385,38 @@ sub update() {
$monitor->{$intf}{initialt} = $monitor->{$intf}{val}[8];
$darea->{$intf} = Gtk2::DrawingArea->new;
$darea->{$intf}->set_events(["pointer_motion_mask"]);
- $notebook->append_page(gtkshow(my $page = gtkpack_(Gtk2::VBox->new(0,0),
- 0, gtkpack__(gtkset_border_width(Gtk2::HBox->new(0,0), 5),
- gtksize($darea->{$intf}, $width, $height)),
- 0, gtkpack_(Gtk2::HBox->new(0,0),
- 1, gtkpack__(Gtk2::VBox->new(0,0),
- gtkpack__(gtkset_border_width(Gtk2::HBox->new(0,5), 5),
- gtksignal_connect(my $button_t = gtkset_relief(Gtk2::Button->new, 'none'), clicked => sub {
- $colort = change_color($colort);
- $gct->set_foreground($colort);
- $_[0]->queue_draw;
- }),
- N("sent: "), $monitor->{$intf}{labelt} = Gtk2::Label->new("0")),
- gtkpack__(gtkset_border_width(Gtk2::HBox->new(0,5), 5),
- gtksignal_connect(my $button_r = gtkset_relief(Gtk2::Button->new, 'none'), clicked => sub {
- $colorr = change_color($colorr);
- $gcr->set_foreground($colorr);
- $_[0]->queue_draw;
- }),
- N("received: "), $monitor->{$intf}{labelr} = Gtk2::Label->new("0")),
- gtkpack__(gtkset_border_width(Gtk2::HBox->new(0,5), 5),
- gtksignal_connect(my $button_a = gtkset_relief(Gtk2::Button->new, 'none'), clicked => sub {
- $colora = change_color($colora);
- $gca->set_foreground($colora);
- $_[0]->queue_draw;
- }),
- N("average"))
- ),
- 0, gtkpack__(gtkset_border_width(Gtk2::VBox->new(0,0), 5),
- gtkadd(gtkset_shadow_type(Gtk2::Frame->new(N("Local measure")), 'etched_out'),
- gtkpack__(gtkset_border_width(Gtk2::VBox->new(0,0), 5),
- gtkpack__(Gtk2::HBox->new(0,0),
+ $notebook->append_page(gtkshow(my $page = gtknew('VBox', children => [
+ 0, gtknew('HBox', border_width => 5, children_tight => [
+ gtksize($darea->{$intf}, $width, $height)]),
+ 0, gtknew('HBox', children => [
+ 1, gtknew('VBox', children_tight => [
+ gtknew('HBox', spacing => 5, border_width => 5, children_tight => [
+ color_button($gct, $colort),
+ N("sent: "), $monitor->{$intf}{labelt} = gtknew('Label', text => "0")]),
+ gtknew('HBox', spacing => 5, border_width => 5, children_tight => [
+ color_button($gcr, $colorr),
+ N("received: "), $monitor->{$intf}{labelr} = gtknew('Label', text => "0")]),
+ gtknew('HBox', spacing => 5, border_width => 5, children_tight => [
+ color_button($gca, $colora),
+ N("average")])
+ ]),
+ 0, gtknew('VBox', border_width => 5, children_tight => [
+ gtknew('Frame', text => N("Local measure"), shadow_type => 'etched_out', child =>
+ gtknew('VBox', border_width => 5, children_tight => [
+ gtknew('HBox', children_tight => [
N("sent: "),
- my $measure_t = Gtk2::Label->new("0")
- ),
- gtkpack__(Gtk2::HBox->new(0,0),
+ my $measure_t = gtknew('Label', text => "0")
+ ]),
+ gtknew('HBox', children_tight => [
N("received: "),
- my $measure_r = Gtk2::Label->new("0")
- )
- )
+ my $measure_r = gtknew('Label', text => "0")
+ ])
+ ])
)
- )
- )
- )),
- Gtk2::Label->new($intf));
- foreach my $i ([$button_t, $gct], [$button_r, $gcr], [$button_a, $gca]) {
- $i->[0]->add(gtksignal_connect(gtkshow(gtksize(gtkset_size_request(Gtk2::DrawingArea->new, 10, 10), 10, 10)),
- expose_event => sub { $_[0]->window->draw_rectangle($i->[1], 1, 0, 0, 10, 10) }));
- }
+ ])
+ ])
+ ])),
+ gtknew('Label', text => $intf));
$monitor->{$intf}{page} = $notebook->page_num($page);
$darea->{$intf}->realize;
$pixmap->{$intf} = Gtk2::Gdk::Pixmap->new($darea->{$intf}->window, $width, $height, $darea->{$intf}->window->get_depth);
@@ -428,8 +428,8 @@ sub update() {
my $x = $e->x - 50;
my $received = $x >= 0 ? $monitor->{$intf}{stack_r}[$x] : 0;
my $transmitted = $x >= 0 ? $monitor->{$intf}{stack_t}[$x] : 0;
- $measure_r->set_label(formatXiB($received));
- $measure_t->set_label(formatXiB($transmitted));
+ gtkset($measure_r, text => formatXiB($received));
+ gtkset($measure_t, text => formatXiB($transmitted));
});
$darea->{$intf}->signal_connect(expose_event => sub {
$darea->{$intf}->window->draw_drawable($darea->{$intf}->style->bg_gc('normal'), $pixmap->{$intf}, 0, 0, 0, 0, $width, $height);
diff --git a/config/drakroam.console b/config/drakroam.console
new file mode 100644
index 0000000..55180f9
--- /dev/null
+++ b/config/drakroam.console
@@ -0,0 +1,3 @@
+PROGRAM=/usr/sbin/drakroam
+FALLBACK=false
+SESSION=true
diff --git a/config/drakroam.pamd b/config/drakroam.pamd
new file mode 100644
index 0000000..f2b63f5
--- /dev/null
+++ b/config/drakroam.pamd
@@ -0,0 +1,5 @@
+#%PAM-1.0
+auth sufficient pam_rootok.so
+auth required pam_console.so
+account required pam_permit.so
+session optional pam_xauth.so
diff --git a/data/icons/configure-16.png b/data/icons/configure-16.png
new file mode 100644
index 0000000..ce5ad74
--- /dev/null
+++ b/data/icons/configure-16.png
Binary files differ
diff --git a/data/icons/configure-24.png b/data/icons/configure-24.png
new file mode 100644
index 0000000..ea08079
--- /dev/null
+++ b/data/icons/configure-24.png
Binary files differ
diff --git a/data/icons/draknetprofile-16.png b/data/icons/draknetprofile-16.png
new file mode 100644
index 0000000..b30ef62
--- /dev/null
+++ b/data/icons/draknetprofile-16.png
Binary files differ
diff --git a/data/icons/draknetprofile-24.png b/data/icons/draknetprofile-24.png
new file mode 100644
index 0000000..a658ec3
--- /dev/null
+++ b/data/icons/draknetprofile-24.png
Binary files differ
diff --git a/data/icons/draknetprofile-32.png b/data/icons/draknetprofile-32.png
new file mode 100644
index 0000000..fecbc38
--- /dev/null
+++ b/data/icons/draknetprofile-32.png
Binary files differ
diff --git a/data/icons/draknetprofile-52.png b/data/icons/draknetprofile-52.png
new file mode 100644
index 0000000..f76fe47
--- /dev/null
+++ b/data/icons/draknetprofile-52.png
Binary files differ
diff --git a/data/icons/draknetprofile-64.png b/data/icons/draknetprofile-64.png
new file mode 100644
index 0000000..01e3018
--- /dev/null
+++ b/data/icons/draknetprofile-64.png
Binary files differ
diff --git a/data/icons/draknetprofile.png b/data/icons/draknetprofile.png
new file mode 100644
index 0000000..0ccb25c
--- /dev/null
+++ b/data/icons/draknetprofile.png
Binary files differ
diff --git a/data/icons/draknetprofile_128.png b/data/icons/draknetprofile_128.png
new file mode 100644
index 0000000..cc4a58a
--- /dev/null
+++ b/data/icons/draknetprofile_128.png
Binary files differ
diff --git a/data/icons/drakvpn-16.png b/data/icons/drakvpn-16.png
new file mode 100644
index 0000000..22194c2
--- /dev/null
+++ b/data/icons/drakvpn-16.png
Binary files differ
diff --git a/data/icons/drakvpn-24.png b/data/icons/drakvpn-24.png
new file mode 100644
index 0000000..fc2b56e
--- /dev/null
+++ b/data/icons/drakvpn-24.png
Binary files differ
diff --git a/data/icons/drakvpn-32.png b/data/icons/drakvpn-32.png
new file mode 100644
index 0000000..435aae0
--- /dev/null
+++ b/data/icons/drakvpn-32.png
Binary files differ
diff --git a/data/icons/drakvpn-52.png b/data/icons/drakvpn-52.png
new file mode 100644
index 0000000..d5e383f
--- /dev/null
+++ b/data/icons/drakvpn-52.png
Binary files differ
diff --git a/data/icons/drakvpn-64.png b/data/icons/drakvpn-64.png
new file mode 100644
index 0000000..a49d2f9
--- /dev/null
+++ b/data/icons/drakvpn-64.png
Binary files differ
diff --git a/data/icons/drakvpn.png b/data/icons/drakvpn.png
index 89cf3ec..64ed072 100644
--- a/data/icons/drakvpn.png
+++ b/data/icons/drakvpn.png
Binary files differ
diff --git a/data/icons/drakvpn_128.png b/data/icons/drakvpn_128.png
new file mode 100644
index 0000000..8cd1535
--- /dev/null
+++ b/data/icons/drakvpn_128.png
Binary files differ
diff --git a/data/icons/invictus-16.png b/data/icons/invictus-16.png
new file mode 100644
index 0000000..37c7560
--- /dev/null
+++ b/data/icons/invictus-16.png
Binary files differ
diff --git a/data/icons/invictus-24.png b/data/icons/invictus-24.png
new file mode 100644
index 0000000..0de361e
--- /dev/null
+++ b/data/icons/invictus-24.png
Binary files differ
diff --git a/data/icons/invictus-32.png b/data/icons/invictus-32.png
new file mode 100644
index 0000000..e30ab0c
--- /dev/null
+++ b/data/icons/invictus-32.png
Binary files differ
diff --git a/data/icons/invictus-52.png b/data/icons/invictus-52.png
new file mode 100644
index 0000000..ac2ec05
--- /dev/null
+++ b/data/icons/invictus-52.png
Binary files differ
diff --git a/data/icons/invictus-64.png b/data/icons/invictus-64.png
new file mode 100644
index 0000000..20fd281
--- /dev/null
+++ b/data/icons/invictus-64.png
Binary files differ
diff --git a/data/icons/invictus.png b/data/icons/invictus.png
new file mode 100644
index 0000000..f18bd1b
--- /dev/null
+++ b/data/icons/invictus.png
Binary files differ
diff --git a/data/icons/invictus_128.png b/data/icons/invictus_128.png
new file mode 100644
index 0000000..d60284c
--- /dev/null
+++ b/data/icons/invictus_128.png
Binary files differ
diff --git a/data/icons/monitor-16.png b/data/icons/monitor-16.png
new file mode 100644
index 0000000..3065411
--- /dev/null
+++ b/data/icons/monitor-16.png
Binary files differ
diff --git a/data/icons/monitor-24.png b/data/icons/monitor-24.png
new file mode 100644
index 0000000..998850f
--- /dev/null
+++ b/data/icons/monitor-24.png
Binary files differ
diff --git a/data/net_applet.desktop b/data/net_applet.desktop
index dbfc8b8..405d795 100644
--- a/data/net_applet.desktop
+++ b/data/net_applet.desktop
@@ -1,12 +1,8 @@
[Desktop Entry]
-Encoding=UTF-8
Name=NetApplet
-GenericName=Network Watcher Applet
-GenericName[fr]=Applet de Contrôle du réseau
-Exec=net_applet
-Icon=disconnected
+Comment=Network monitoring applet
+Exec=/usr/bin/net_applet --force
+Icon=/usr/share/libDrakX/pixmaps/connected.png
Type=Application
-Terminal=0
-X-KDE-autostart-after=panel
-X-KDE-UniqueApplet=true
-X-KDE-autostart-condition=General:AutoStart:true
+Categories=GTK;X-MandrivaLinux-System-Monitoring;System;Monitor;
+X-KDE-autostart-after=kdesktop
diff --git a/data/pixmaps/bluetooth-128.png b/data/pixmaps/bluetooth-128.png
new file mode 100644
index 0000000..5207339
--- /dev/null
+++ b/data/pixmaps/bluetooth-128.png
Binary files differ
diff --git a/data/pixmaps/bluetooth-16.png b/data/pixmaps/bluetooth-16.png
new file mode 100644
index 0000000..0863bd7
--- /dev/null
+++ b/data/pixmaps/bluetooth-16.png
Binary files differ
diff --git a/data/pixmaps/bluetooth-24.png b/data/pixmaps/bluetooth-24.png
new file mode 100644
index 0000000..b339dc4
--- /dev/null
+++ b/data/pixmaps/bluetooth-24.png
Binary files differ
diff --git a/data/pixmaps/bluetooth-32.png b/data/pixmaps/bluetooth-32.png
new file mode 100644
index 0000000..d4a38db
--- /dev/null
+++ b/data/pixmaps/bluetooth-32.png
Binary files differ
diff --git a/data/pixmaps/bluetooth-48.png b/data/pixmaps/bluetooth-48.png
new file mode 100644
index 0000000..4674919
--- /dev/null
+++ b/data/pixmaps/bluetooth-48.png
Binary files differ
diff --git a/data/pixmaps/bluetooth-52.png b/data/pixmaps/bluetooth-52.png
new file mode 100644
index 0000000..d2a9cd2
--- /dev/null
+++ b/data/pixmaps/bluetooth-52.png
Binary files differ
diff --git a/data/pixmaps/bluetooth-64.png b/data/pixmaps/bluetooth-64.png
new file mode 100644
index 0000000..5d9fbc2
--- /dev/null
+++ b/data/pixmaps/bluetooth-64.png
Binary files differ
diff --git a/data/pixmaps/cablemodem-128.png b/data/pixmaps/cablemodem-128.png
new file mode 100644
index 0000000..c67f938
--- /dev/null
+++ b/data/pixmaps/cablemodem-128.png
Binary files differ
diff --git a/data/pixmaps/cablemodem-16.png b/data/pixmaps/cablemodem-16.png
new file mode 100644
index 0000000..158ce35
--- /dev/null
+++ b/data/pixmaps/cablemodem-16.png
Binary files differ
diff --git a/data/pixmaps/cablemodem-24.png b/data/pixmaps/cablemodem-24.png
new file mode 100644
index 0000000..53da1e8
--- /dev/null
+++ b/data/pixmaps/cablemodem-24.png
Binary files differ
diff --git a/data/pixmaps/cablemodem-32.png b/data/pixmaps/cablemodem-32.png
new file mode 100644
index 0000000..3ba9e20
--- /dev/null
+++ b/data/pixmaps/cablemodem-32.png
Binary files differ
diff --git a/data/pixmaps/cablemodem-48.png b/data/pixmaps/cablemodem-48.png
new file mode 100644
index 0000000..974fd5a
--- /dev/null
+++ b/data/pixmaps/cablemodem-48.png
Binary files differ
diff --git a/data/pixmaps/cablemodem-52.png b/data/pixmaps/cablemodem-52.png
new file mode 100644
index 0000000..18868b8
--- /dev/null
+++ b/data/pixmaps/cablemodem-52.png
Binary files differ
diff --git a/data/pixmaps/cablemodem-64.png b/data/pixmaps/cablemodem-64.png
new file mode 100644
index 0000000..21f2f3f
--- /dev/null
+++ b/data/pixmaps/cablemodem-64.png
Binary files differ
diff --git a/data/pixmaps/cellular-128.png b/data/pixmaps/cellular-128.png
new file mode 100644
index 0000000..f27523f
--- /dev/null
+++ b/data/pixmaps/cellular-128.png
Binary files differ
diff --git a/data/pixmaps/cellular-16.png b/data/pixmaps/cellular-16.png
new file mode 100644
index 0000000..c140c35
--- /dev/null
+++ b/data/pixmaps/cellular-16.png
Binary files differ
diff --git a/data/pixmaps/cellular-24.png b/data/pixmaps/cellular-24.png
new file mode 100644
index 0000000..ad30a47
--- /dev/null
+++ b/data/pixmaps/cellular-24.png
Binary files differ
diff --git a/data/pixmaps/cellular-32.png b/data/pixmaps/cellular-32.png
new file mode 100644
index 0000000..f745cbd
--- /dev/null
+++ b/data/pixmaps/cellular-32.png
Binary files differ
diff --git a/data/pixmaps/cellular-48.png b/data/pixmaps/cellular-48.png
new file mode 100644
index 0000000..699fe7b
--- /dev/null
+++ b/data/pixmaps/cellular-48.png
Binary files differ
diff --git a/data/pixmaps/cellular-52.png b/data/pixmaps/cellular-52.png
new file mode 100644
index 0000000..0203a17
--- /dev/null
+++ b/data/pixmaps/cellular-52.png
Binary files differ
diff --git a/data/pixmaps/cellular-64.png b/data/pixmaps/cellular-64.png
new file mode 100644
index 0000000..4a1b267
--- /dev/null
+++ b/data/pixmaps/cellular-64.png
Binary files differ
diff --git a/data/pixmaps/dvb-128.png b/data/pixmaps/dvb-128.png
new file mode 100644
index 0000000..4683ea5
--- /dev/null
+++ b/data/pixmaps/dvb-128.png
Binary files differ
diff --git a/data/pixmaps/dvb-16.png b/data/pixmaps/dvb-16.png
new file mode 100644
index 0000000..2cd8d9a
--- /dev/null
+++ b/data/pixmaps/dvb-16.png
Binary files differ
diff --git a/data/pixmaps/dvb-24.png b/data/pixmaps/dvb-24.png
new file mode 100644
index 0000000..4b4caaa
--- /dev/null
+++ b/data/pixmaps/dvb-24.png
Binary files differ
diff --git a/data/pixmaps/dvb-32.png b/data/pixmaps/dvb-32.png
new file mode 100644
index 0000000..fd91383
--- /dev/null
+++ b/data/pixmaps/dvb-32.png
Binary files differ
diff --git a/data/pixmaps/dvb-48.png b/data/pixmaps/dvb-48.png
new file mode 100644
index 0000000..f92fcf3
--- /dev/null
+++ b/data/pixmaps/dvb-48.png
Binary files differ
diff --git a/data/pixmaps/dvb-52.png b/data/pixmaps/dvb-52.png
new file mode 100644
index 0000000..ce023fb
--- /dev/null
+++ b/data/pixmaps/dvb-52.png
Binary files differ
diff --git a/data/pixmaps/dvb-64.png b/data/pixmaps/dvb-64.png
new file mode 100644
index 0000000..f477b11
--- /dev/null
+++ b/data/pixmaps/dvb-64.png
Binary files differ
diff --git a/data/pixmaps/encryption-open-24.png b/data/pixmaps/encryption-open-24.png
new file mode 100644
index 0000000..a3c6814
--- /dev/null
+++ b/data/pixmaps/encryption-open-24.png
Binary files differ
diff --git a/data/pixmaps/encryption-strong-24.png b/data/pixmaps/encryption-strong-24.png
new file mode 100644
index 0000000..bc9eca0
--- /dev/null
+++ b/data/pixmaps/encryption-strong-24.png
Binary files differ
diff --git a/data/pixmaps/encryption-weak-24.png b/data/pixmaps/encryption-weak-24.png
new file mode 100644
index 0000000..d5b1c3e
--- /dev/null
+++ b/data/pixmaps/encryption-weak-24.png
Binary files differ
diff --git a/data/pixmaps/ethernet-128.png b/data/pixmaps/ethernet-128.png
new file mode 100644
index 0000000..1660a75
--- /dev/null
+++ b/data/pixmaps/ethernet-128.png
Binary files differ
diff --git a/data/pixmaps/ethernet-16.png b/data/pixmaps/ethernet-16.png
new file mode 100644
index 0000000..25fac7d
--- /dev/null
+++ b/data/pixmaps/ethernet-16.png
Binary files differ
diff --git a/data/pixmaps/ethernet-24.png b/data/pixmaps/ethernet-24.png
new file mode 100644
index 0000000..55c706a
--- /dev/null
+++ b/data/pixmaps/ethernet-24.png
Binary files differ
diff --git a/data/pixmaps/ethernet-32.png b/data/pixmaps/ethernet-32.png
new file mode 100644
index 0000000..1cf789e
--- /dev/null
+++ b/data/pixmaps/ethernet-32.png
Binary files differ
diff --git a/data/pixmaps/ethernet-48.png b/data/pixmaps/ethernet-48.png
new file mode 100644
index 0000000..9ccbc36
--- /dev/null
+++ b/data/pixmaps/ethernet-48.png
Binary files differ
diff --git a/data/pixmaps/ethernet-52.png b/data/pixmaps/ethernet-52.png
new file mode 100644
index 0000000..9f16c9f
--- /dev/null
+++ b/data/pixmaps/ethernet-52.png
Binary files differ
diff --git a/data/pixmaps/ethernet-64.png b/data/pixmaps/ethernet-64.png
new file mode 100644
index 0000000..bacdb0a
--- /dev/null
+++ b/data/pixmaps/ethernet-64.png
Binary files differ
diff --git a/data/pixmaps/isdn-128.png b/data/pixmaps/isdn-128.png
new file mode 100644
index 0000000..d09ce4a
--- /dev/null
+++ b/data/pixmaps/isdn-128.png
Binary files differ
diff --git a/data/pixmaps/isdn-16.png b/data/pixmaps/isdn-16.png
new file mode 100644
index 0000000..6d7086b
--- /dev/null
+++ b/data/pixmaps/isdn-16.png
Binary files differ
diff --git a/data/pixmaps/isdn-24.png b/data/pixmaps/isdn-24.png
new file mode 100644
index 0000000..6ca1655
--- /dev/null
+++ b/data/pixmaps/isdn-24.png
Binary files differ
diff --git a/data/pixmaps/isdn-32.png b/data/pixmaps/isdn-32.png
new file mode 100644
index 0000000..3f90c80
--- /dev/null
+++ b/data/pixmaps/isdn-32.png
Binary files differ
diff --git a/data/pixmaps/isdn-48.png b/data/pixmaps/isdn-48.png
new file mode 100644
index 0000000..7dc1776
--- /dev/null
+++ b/data/pixmaps/isdn-48.png
Binary files differ
diff --git a/data/pixmaps/isdn-52.png b/data/pixmaps/isdn-52.png
new file mode 100644
index 0000000..64690ec
--- /dev/null
+++ b/data/pixmaps/isdn-52.png
Binary files differ
diff --git a/data/pixmaps/isdn-64.png b/data/pixmaps/isdn-64.png
new file mode 100644
index 0000000..0626636
--- /dev/null
+++ b/data/pixmaps/isdn-64.png
Binary files differ
diff --git a/data/pixmaps/potsmodem-128.png b/data/pixmaps/potsmodem-128.png
new file mode 100644
index 0000000..908bd67
--- /dev/null
+++ b/data/pixmaps/potsmodem-128.png
Binary files differ
diff --git a/data/pixmaps/potsmodem-16.png b/data/pixmaps/potsmodem-16.png
new file mode 100644
index 0000000..09e0e4d
--- /dev/null
+++ b/data/pixmaps/potsmodem-16.png
Binary files differ
diff --git a/data/pixmaps/potsmodem-24.png b/data/pixmaps/potsmodem-24.png
new file mode 100644
index 0000000..8f5609a
--- /dev/null
+++ b/data/pixmaps/potsmodem-24.png
Binary files differ
diff --git a/data/pixmaps/potsmodem-32.png b/data/pixmaps/potsmodem-32.png
new file mode 100644
index 0000000..2472208
--- /dev/null
+++ b/data/pixmaps/potsmodem-32.png
Binary files differ
diff --git a/data/pixmaps/potsmodem-48.png b/data/pixmaps/potsmodem-48.png
new file mode 100644
index 0000000..5811ba0
--- /dev/null
+++ b/data/pixmaps/potsmodem-48.png
Binary files differ
diff --git a/data/pixmaps/potsmodem-52.png b/data/pixmaps/potsmodem-52.png
new file mode 100644
index 0000000..5ca17f4
--- /dev/null
+++ b/data/pixmaps/potsmodem-52.png
Binary files differ
diff --git a/data/pixmaps/potsmodem-64.png b/data/pixmaps/potsmodem-64.png
new file mode 100644
index 0000000..dc87fce
--- /dev/null
+++ b/data/pixmaps/potsmodem-64.png
Binary files differ
diff --git a/data/pixmaps/wireless-128.png b/data/pixmaps/wireless-128.png
new file mode 100644
index 0000000..cb44484
--- /dev/null
+++ b/data/pixmaps/wireless-128.png
Binary files differ
diff --git a/data/pixmaps/wireless-16.png b/data/pixmaps/wireless-16.png
new file mode 100644
index 0000000..edfa36a
--- /dev/null
+++ b/data/pixmaps/wireless-16.png
Binary files differ
diff --git a/data/pixmaps/wireless-24.png b/data/pixmaps/wireless-24.png
new file mode 100644
index 0000000..12fadb0
--- /dev/null
+++ b/data/pixmaps/wireless-24.png
Binary files differ
diff --git a/data/pixmaps/wireless-32.png b/data/pixmaps/wireless-32.png
new file mode 100644
index 0000000..304ce11
--- /dev/null
+++ b/data/pixmaps/wireless-32.png
Binary files differ
diff --git a/data/pixmaps/wireless-48.png b/data/pixmaps/wireless-48.png
new file mode 100644
index 0000000..20350af
--- /dev/null
+++ b/data/pixmaps/wireless-48.png
Binary files differ
diff --git a/data/pixmaps/wireless-52.png b/data/pixmaps/wireless-52.png
new file mode 100644
index 0000000..7373e0d
--- /dev/null
+++ b/data/pixmaps/wireless-52.png
Binary files differ
diff --git a/data/pixmaps/wireless-64.png b/data/pixmaps/wireless-64.png
new file mode 100644
index 0000000..405e940
--- /dev/null
+++ b/data/pixmaps/wireless-64.png
Binary files differ
diff --git a/data/pixmaps/xdsl-128.png b/data/pixmaps/xdsl-128.png
new file mode 100644
index 0000000..d76fb5a
--- /dev/null
+++ b/data/pixmaps/xdsl-128.png
Binary files differ
diff --git a/data/pixmaps/xdsl-16.png b/data/pixmaps/xdsl-16.png
new file mode 100644
index 0000000..3b74b69
--- /dev/null
+++ b/data/pixmaps/xdsl-16.png
Binary files differ
diff --git a/data/pixmaps/xdsl-24.png b/data/pixmaps/xdsl-24.png
new file mode 100644
index 0000000..638907a
--- /dev/null
+++ b/data/pixmaps/xdsl-24.png
Binary files differ
diff --git a/data/pixmaps/xdsl-32.png b/data/pixmaps/xdsl-32.png
new file mode 100644
index 0000000..b2e590f
--- /dev/null
+++ b/data/pixmaps/xdsl-32.png
Binary files differ
diff --git a/data/pixmaps/xdsl-48.png b/data/pixmaps/xdsl-48.png
new file mode 100644
index 0000000..c5fe46b
--- /dev/null
+++ b/data/pixmaps/xdsl-48.png
Binary files differ
diff --git a/data/pixmaps/xdsl-52.png b/data/pixmaps/xdsl-52.png
new file mode 100644
index 0000000..074af50
--- /dev/null
+++ b/data/pixmaps/xdsl-52.png
Binary files differ
diff --git a/data/pixmaps/xdsl-64.png b/data/pixmaps/xdsl-64.png
new file mode 100644
index 0000000..1440801
--- /dev/null
+++ b/data/pixmaps/xdsl-64.png
Binary files differ
diff --git a/lib/network/.perl_checker b/lib/network/.perl_checker
new file mode 100644
index 0000000..2326e2f
--- /dev/null
+++ b/lib/network/.perl_checker
@@ -0,0 +1 @@
+Basedir ../..
diff --git a/lib/network/adsl.pm b/lib/network/adsl.pm
index 3768c17..c012219 100644
--- a/lib/network/adsl.pm
+++ b/lib/network/adsl.pm
@@ -4,10 +4,6 @@ use common;
use run_program;
use network::tools;
use modules;
-use vars qw(@ISA @EXPORT);
-
-@ISA = qw(Exporter);
-@EXPORT = qw(adsl_conf_backend);
sub adsl_probe_info {
my ($net) = @_;
@@ -16,12 +12,16 @@ sub adsl_probe_info {
foreach (qw(/etc/ppp/peers/ppp0 /etc/ppp/options /etc/ppp/options.adsl)) {
($login) = map { if_(/^user\s+"([^"]+)"/, $1) } cat_("$::prefix/$_") if !$login && -r "$::prefix/$_";
}
- my %pppoe_conf; %pppoe_conf = getVarsFromSh($pppoe_file) if (!exists $net->{adsl}{method} || $net->{adsl}{method} eq 'pppoe') && -f $pppoe_file;
- $login ||= $pppoe_conf{USER};
+ my %pppoe_conf = -f $pppoe_file && getVarsFromSh($pppoe_file);
+ $login = $pppoe_conf{USER} if !$login || $net->{adsl}{method} eq 'pppoe';
my $passwd = network::tools::passwd_by_login($login);
if (!$net->{adsl}{vpi} && !$net->{adsl}{vci}) {
- ($net->{adsl}{vpi}, $net->{adsl}{vci}) =
- (map { if_(/^.*-vpi\s+(\d+)\s+-vci\s+(\d+)/, map { sprintf("%x", $_) } $1, $2) } cat_("$::prefix/etc/ppp/peers/ppp0"));
+ foreach (cat_("$::prefix/etc/ppp/peers/ppp0")) {
+ if (/^.*-vpi\s+(\d+)\s+-vci\s+(\d+)/ || /^plugin pppoatm.so (\d+)\.(\d+)$/) {
+ ($net->{adsl}{vpi}, $net->{adsl}{vci}) = ($1, $2);
+ last;
+ }
+ }
}
$pppoe_conf{DNS1} ||= '';
$pppoe_conf{DNS2} ||= '';
@@ -29,308 +29,24 @@ sub adsl_probe_info {
add2hash($net->{adsl}, { login => $login, passwd => $passwd });
}
-sub adsl_detect() {
- require list_modules;
- require detect_devices;
- my @modules = list_modules::category2modules('network/usb_dsl');
- # return an hash compatible with what drakconnect expect us to return:
- my %compat = (
- 'speedtch' => 'speedtouch',
- 'eagle-usb' => 'sagem',
- );
-
- return {
- bewan => [ detect_devices::getBewan() ],
- eci => [ detect_devices::getECI() ],
- map { $compat{$_} || $_ => [ detect_devices::matching_driver($_) ] } @modules,
- };
-}
-
-sub sagem_set_parameters {
- my ($net) = @_;
- my %l = map { $_ => sprintf("%08s", $net->{adsl}{$_}) } qw(vci vpi Encapsulation);
-
- my $static_ip = $net->{adsl}{method} eq 'static' && $net->{ifcfg}{sagem}{IPADDR};
- foreach my $cfg_file (qw(/etc/analog/adiusbadsl.conf /etc/eagle-usb/eagle-usb.conf)) {
- substInFile {
- s/Linetype=.*\n/Linetype=0000000A\n/; #- use CMVs
- s/VCI=.*\n/VCI=$l{vci}\n/;
- s/VPI=.*\n/VPI=$l{vpi}\n/;
- s/Encapsulation=.*\n/Encapsulation=$l{Encapsulation}\n/;
- s/ISP=.*\n/ISP=$net->{adsl}{provider_id}\n/;
- s/STATIC_IP=.*\n//;
- s!</eaglectrl>!STATIC_IP=$static_ip\n</eaglectrl>! if $static_ip;
- } "$::prefix$cfg_file";
- }
- #- create CMV symlinks for both POTS and ISDN lines
- foreach my $type (qw(p i)) {
- my $cmv;
- my ($country) = $net->{adsl}{provider_id} =~ /^([a-zA-Z]+)\d+$/;
- #- try to find a CMV for this specific ISP
- $cmv = "$::prefix/etc/eagle-usb/CMVe${type}$net->{adsl}{provider_id}.txt" if $net->{adsl}{provider_id};
- #- if not found, try to found a CMV for the country
- -f $cmv or $cmv = "$::prefix/etc/eagle-usb/CMVe${type}${country}.txt";
- #- fallback on the generic CMV if no other matched
- -f $cmv or $cmv = "$::prefix/etc/eagle-usb/CMVe${type}WO.txt";
- symlinkf($cmv, "$::prefix/etc/eagle-usb/CMVe${type}.txt");
- }
- #- remove this otherwise eaglectrl won't start
- unlink("$::prefix/etc/eagle-usb/eagle-usb_must_be_configured");
-}
-
sub adsl_conf_backend {
- my ($in, $modules_conf, $net) = @_;
-
- my $bewan_module;
- $bewan_module = $net->{adsl}{bus} eq 'PCI' ? 'unicorn_pci_atm' : 'unicorn_usb_atm' if $net->{adsl}{device} eq "bewan";
-
- my $adsl_type = $net->{adsl}{method};
- my $adsl_device = $net->{adsl}{device};
-
- # all supported modems came with their own pppoa module, so no need for "plugin pppoatm.so"
- my %modems =
- (
- bewan =>
- {
- start => qq(
-# ActivationMode=1
-modprobe $bewan_module
-# wait for the modem to be set up:
-sleep 10
-),
- stop => qq(modprobe -r $bewan_module),
- plugin => {
- pppoa => "pppoatm.so " . join('.', hex($net->{adsl}{vpi}), hex($net->{adsl}{vci}))
- },
- ppp_options => qq(
-default-asyncmap
-hide-password
-noaccomp
-nobsdcomp
-nodeflate
-novj novjccomp
-lcp-echo-interval 20
-lcp-echo-failure 3
-sync
-),
- },
-
- speedtouch =>
- {
- modules => [ qw(speedtch) ],
- start => '/usr/bin/speedtouch-start --nocall',
- overide_script => 1,
- server => {
- pppoa => qq("/usr/sbin/pppoa3 -c")
- },
- plugin => {
- pppoa => "pppoatm.so " . join('.', hex($net->{adsl}{vpi}), hex($net->{adsl}{vci})),
- },
- ppp_options => qq(
-sync
-noaccomp),
- aliases => [
- ['char-major-108', 'ppp_generic'],
- ['tty-ldisc-3', 'ppp_async'],
- ['tty-ldisc-13', 'n_hdlc'],
- ['tty-ldisc-14', 'ppp_synctty'],
- ['ppp-compress-21', 'bsd_comp'],
- ['ppp-compress-24', 'ppp_deflate'],
- ['ppp-compress-26', 'ppp_deflate']
- ],
- },
-
- sagem =>
- {
- modules => [ qw(eagle-usb) ],
- start => '/sbin/eaglectrl -i >/dev/null 2>/dev/null || /sbin/eaglectrl -d',
- stop => "/usr/bin/killall pppoa",
- get_intf => '/sbin/eaglectrl -i',
- server => {
- pppoa => q("/sbin/fctStartAdsl -t 1 -i"),
- },
- ppp_options => qq(
-mru 1492
-mtu 1492
-nobsdcomp
-nodeflate
-noaccomp -am
-novjccomp),
- aliases => [
- ['char-major-108', 'ppp_generic'],
- ['tty-ldisc-3', 'ppp_async'],
- ['tty-ldisc-13', 'n_hdlc'],
- ['tty-ldisc-14', 'ppp_synctty']
- ],
- },
-
- eci =>
- {
- start => '/usr/bin/startmodem',
- server => {
- pppoe => qq("/usr/bin/pppoeci -v 1 -vpi $net->{adsl}{vpi} -vci $net->{adsl}{vci}"),
- },
- ppp_options => qq(
-noipdefault
-sync
-noaccomp
-linkname eciadsl
-lcp-echo-interval 0)
- },
-
- pptp_modem =>
- {
- server => {
- pptp => qq("/usr/sbin/pptp 10.0.0.138 --nolaunchpppd"),
- },
- },
-
- capi_modem =>
- {
- ppp_options => qq(
-connect /bin/true
-ipcp-accept-remote
-ipcp-accept-local
-
-sync
-noauth
-lcp-echo-interval 5
-lcp-echo-failure 3
-lcp-max-configure 50
-lcp-max-terminate 2
-
-noccp
-noipx
-mru 1492
-mtu 1492),
- plugin => {
- capi => qq(capiplugin.so
-avmadsl)
- },
- },
- );
-
- my %generic =
- (
- pppoe =>
- {
- server => '"pppoe -I ' . (exists $modems{$adsl_device}{get_intf} ? "`$modems{$adsl_device}{get_intf}`" : $net->{adsl}{ethernet_device}) . '"',
- ppp_options => qq(default-asyncmap
-mru 1492
-mtu 1492
-noaccomp
-noccp
-nobsdcomp
-novjccomp
-nodeflate
-lcp-echo-interval 20
-lcp-echo-failure 3
-),
- }
- );
-
- if ($adsl_type =~ /^pp|^capi$/) {
- mkdir_p("$::prefix/etc/ppp");
- $in->do_pkgs->install('ppp');
- my %packages = (
- pppoa => [ qw(ppp-pppoatm) ],
- pppoe => [ qw(ppp-pppoe rp-pppoe) ],
- pptp => [ qw(pptp-linux) ],
- capi => [ qw(isdn4k-utils) ], #- capi4linux service
- );
- $in->do_pkgs->install(@{$packages{$adsl_type}});
-
- my $pty_option =
- exists $modems{$adsl_device}{server}{$adsl_type} ? "pty $modems{$adsl_device}{server}{$adsl_type}" :
- exists $generic{$adsl_type}{server} ? "pty $generic{$adsl_type}{server}" :
- "";
- my $plugin = exists $modems{$adsl_device}{plugin}{$adsl_type} && "plugin $modems{$adsl_device}{plugin}{$adsl_type}";
- my $noipdefault = $adsl_type eq 'pptp' ? '' : 'noipdefault';
- my $ppp_options =
- exists $modems{$adsl_device}{ppp_options} ? $modems{$adsl_device}{ppp_options} :
- exists $generic{$adsl_type}{ppp_options} ? $generic{$adsl_type}{ppp_options} :
- "";
- output("$::prefix/etc/ppp/peers/ppp0",
-qq(lock
-persist
-noauth
-usepeerdns
-defaultroute
-$noipdefault
-$ppp_options
-kdebug 1
-nopcomp
-noccp
-novj
-holdoff 4
-maxfail 25
-$pty_option
-$plugin
-user "$net->{adsl}{login}"
-));
-
- network::tools::write_secret_backend($net->{adsl}{login}, $net->{adsl}{passwd});
-
- my $ethernet_device = $net->{adsl}{ethernet_device};
- if ($ethernet_device =~ /^eth/) {
- $net->{ifcfg}{$ethernet_device} = {
- DEVICE => $ethernet_device,
- BOOTPROTO => 'none',
- NETMASK => '255.255.255.0',
- NETWORK => '10.0.0.0',
- BROADCAST => '10.0.0.255',
- MII_NOT_SUPPORTED => 'yes',
- ONBOOT => 'yes',
- };
- }
- }
-
- #- FIXME: ppp0 and ippp0 are hardcoded
- my $metric = network::tools::get_default_metric("adsl"); #- FIXME, do not override if already set
- put_in_hash($net->{ifcfg}{ppp0} ||= {}, {
- DEVICE => 'ppp0',
- TYPE => 'ADSL',
- METRIC => $metric,
- }) unless member($adsl_type, qw(static dhcp));
- #- don't overwrite ONBOOT setting, it may have been handled earlier in netconnect
- $net->{ifcfg}{ppp0}{ONBOOT} ||= 'yes';
-
- #- remove file used with sagem for dhcp/static connections
- unlink("$::prefix/etc/sysconfig/network-scripts/ifcfg-sagem");
-
- #- set vpi, vci and encapsulation parameters for sagem
- $adsl_device eq 'sagem' and sagem_set_parameters($net);
-
- #- set aliases
- if (exists $modems{$adsl_device}{aliases}) {
- $modules_conf->set_alias($_->[0], $_->[1]) foreach @{$modems{$adsl_device}{aliases}};
- $::isStandalone and $modules_conf->write;
- }
- #- remove the "speedtch off" alias that was written by Mandrakelinux 10.0
- $adsl_device eq 'speedtouch' and $modules_conf->remove_alias('speedtch');
-
- if ($adsl_type eq "capi") {
- require network::isdn;
- network::isdn::setup_capi_conf($in, $net->{adsl}{capi_card});
- services::disable('isdn4linux');
- services::enable('capi4linux');
-
- #- install and run drdsl for dsl connections, once capi driver is loaded
- $in->do_pkgs->ensure_is_installed_if_available("drdsl", "/usr/sbin/drdsl");
- run_program::rooted($::prefix, "/usr/sbin/drdsl");
- }
-
- #- load modules and run modem-specific start programs
- #- useful during install, or in case the packages have been installed after the device has been plugged
- my @modules = (@{$modems{$adsl_device}{modules}}, map { $_->[1] } @{$modems{$adsl_device}{aliases}});
- @modules or @modules = qw(ppp_synctty ppp_async ppp_generic n_hdlc); #- required for pppoe/pptp connections
- #- pppoa connections need the pppoatm module
- #- pppd should run "modprobe pppoatm", but it will fail during install
- push @modules, 'pppoatm' if $adsl_type eq 'pppoa';
- foreach (@modules) {
- eval { modules::load($_) } or log::l("failed to load $_ module: $@");
- }
- $modems{$adsl_device}{start} and run_program::rooted($::prefix, $modems{$adsl_device}{start});
+ my ($in, $net) = @_;
+
+ require network::connection::xdsl;
+ my $xdsl = network::connection::xdsl->new(
+ $net->{adsl}{method} eq "capi" ?
+ $net->{adsl}{capi_card} :
+ { driver => $net->{adsl}{driver}, ethernet_device => $net->{adsl}{ethernet_device} });
+ $xdsl->{protocol} = $net->{adsl}{method};
+ $xdsl->{access}{login} = $net->{adsl}{login};
+ $xdsl->{access}{password} = $net->{adsl}{passwd};
+ $xdsl->{access}{vpi} = $net->{adsl}{vpi};
+ $xdsl->{access}{vci} = $net->{adsl}{vci};
+
+ $xdsl->install_packages($in);
+ $xdsl->unload_connection;
+ $xdsl->write_settings($net);
+ $xdsl->prepare_connection;
}
1;
diff --git a/lib/network/connection.pm b/lib/network/connection.pm
new file mode 100644
index 0000000..0088ede
--- /dev/null
+++ b/lib/network/connection.pm
@@ -0,0 +1,235 @@
+package network::connection;
+
+use common;
+use network::vpn;
+
+sub get_types {
+ sort { $a->get_metric <=> $b->get_metric } grep { $_->can('get_devices') } common::load_modules_from_base(__PACKAGE__);
+}
+
+=item get_type_name()
+
+Get the connection type name, unstranslated
+
+=cut
+
+sub get_type_name() { N("Unknown connection type") }
+sub get_type_description {
+ my ($class) = @_;
+ $class->get_type_name;
+}
+
+=item get_type_icon()
+
+Get the connection type icon path
+
+=cut
+
+sub get_type_icon() { '/usr/share/mcc/themes/default/drakconnect-mdk.png' }
+
+=item get_devices()
+
+Get the devices supported by this connection type
+
+=cut
+
+=item get_connections()
+
+List connections that can be configured by the class
+
+=cut
+
+sub get_connections {
+ my ($class, %options) = @_;
+ map { $class->new($_) } $class->get_devices(%options);
+}
+
+=item find_ifcfg_type($ifcfg)
+
+Returns the class matching the connection type of the ifcfg hash
+
+=cut
+
+sub find_ifcfg_type {
+ my ($_class, $ifcfg) = @_;
+ find { $_->can('handles_ifcfg') && $_->handles_ifcfg($ifcfg) } sort { $b->get_metric <=> $a->get_metric } get_types();
+}
+
+sub new {
+ my ($class, $device) = @_;
+ bless {
+ device => $device,
+ settings => {},
+ networks => {},
+ }, $class;
+}
+
+sub get_description {
+ my ($self) = @_;
+ $self->{device}{description};
+}
+
+sub get_driver {
+ my ($self) = @_;
+ $self->{device}{driver};
+}
+
+sub get_interface {
+ my ($_self) = @_;
+ die "unable to get interface";
+}
+
+sub get_metric { 60 }
+
+sub get_status {
+ my ($self) = @_;
+ require network::tools;
+ my ($_is_up, $gw_address) = network::tools::get_interface_status($self->get_interface);
+ $self->{status} = to_bool($gw_address);
+}
+
+sub get_ifcfg_bool {
+ my ($self, $field) = @_;
+ defined $self->{ifcfg}{$field} ? text2bool($self->{ifcfg}{$field}) : undef;
+}
+
+sub get_selected_network {
+ my ($self) = @_;
+ exists $self->{networks}{$self->{network}} && $self->{networks}{$self->{network}};
+}
+
+sub load_interface_settings {
+ my ($self) = @_;
+ require network::network;
+ my $file = network::network::get_ifcfg_file($self->get_interface);
+ $self->{ifcfg} = { getVarsFromSh($file) };
+ $self->{vpn_list} = [ map { $_->get_configured_connections } network::vpn->list_types ];
+ $self->{control}{onboot} = $self->get_ifcfg_bool('ONBOOT');
+ $self->{control}{userctl} = $self->get_ifcfg_bool('USERCTL');
+ $self->{control}{metric} = $self->{ifcfg}{METRIC};
+}
+
+#- override to return 1 if the connection network scan is slow
+sub network_scan_is_slow { 0 }
+
+sub get_network_access_settings_label { N("Network access settings") }
+sub get_access_settings_label { N("Access settings") }
+sub get_address_settings_label { N("Address settings") }
+
+sub set_provider {
+ my ($self, $provider_data) = @_;
+ $self->{provider} = $provider_data;
+}
+
+#- check that $self->can('get_protocols') first
+sub get_protocol_settings {
+ my ($self) = @_;
+ my $protocols = $self->get_protocols;
+ [
+ {
+ val => \$self->{protocol}, type => 'list',
+ list => [ sort { $protocols->{$a} cmp $protocols->{$b} } keys %$protocols ],
+ format => sub { $protocols->{$_[0]} },
+ }
+ ];
+}
+
+sub guess_network_control_settings {
+ my ($self) = @_;
+ $self->{control}{vpn} = find {
+ $self->{ifcfg}{VPN_TYPE} eq $_->get_type &&
+ $self->{ifcfg}{VPN_NAME} eq $_->get_name;
+ } @{$self->{vpn_list}};
+}
+
+sub get_network_control_settings {
+ my ($self) = @_;
+ [
+ if_(@{$self->{vpn_list}},
+ { label => N("VPN connection"), val => \$self->{control}{vpn},
+ list => [ undef, @{$self->{vpn_list}} ],
+ format => sub { defined $_[0] ? $_[0]->get_label : N("None") } }),
+ ];
+}
+
+sub guess_control_settings {
+ my ($self) = @_;
+ $self->{control}{metric} ||= $self->get_metric;
+}
+
+sub get_control_settings {
+ my ($self) = @_;
+ [
+ { text => N("Allow users to manage the connection"), val => \$self->{control}{userctl}, type => "bool" },
+ { text => N("Start the connection at boot"), val => \$self->{control}{onboot}, type => "bool" },
+ { label => N("Metric"), val => \$self->{control}{metric}, advanced => 1 },
+ ];
+}
+
+sub build_ifcfg_settings {
+ my ($self, $o_options) = @_;
+ put_in_hash($o_options, {
+ DEVICE => $self->get_interface,
+ ONBOOT => bool2yesno($self->{control}{onboot}),
+ USERCTL => bool2yesno($self->{control}{userctl}),
+ METRIC => $self->{control}{metric},
+ VPN_TYPE => defined $self->{control}{vpn} && $self->{control}{vpn}->get_type,
+ VPN_NAME => defined $self->{control}{vpn} && $self->{control}{vpn}->get_name,
+ #- FIXME: add MS_DNSx variables if DNS servers are specified
+ });
+}
+
+sub write_settings {
+ my ($self, $_o_net, $_o_modules_conf) = @_;
+ require network::network;
+ my $file = network::network::get_ifcfg_file($self->get_interface);
+ network::network::write_interface_settings($self->build_ifcfg_settings, $file);
+ network::network::write_hostname($self->{address}{hostname}) if $self->{address}{hostname};
+ require network::shorewall;
+ network::shorewall::update_interfaces_list($self->get_interface);
+ network::network::reload_net_applet();
+}
+
+sub connect {
+ my ($self) = @_;
+ require network::tools;
+ network::tools::start_interface($self->get_interface, 0);
+}
+
+sub disconnect {
+ my ($self) = @_;
+ require network::tools;
+ network::tools::stop_interface($self->get_interface, 0);
+}
+
+sub setup_thirdparty {
+ my ($self, $in) = @_;
+ my $driver = $self->get_driver;
+ # FIXME: weird return code
+ $driver && $self->can('get_thirdparty_settings') or return 1;
+ require network::thirdparty;
+ $self->{thirdparty} = network::thirdparty::apply_settings($in, ref $self, $self->get_thirdparty_settings, $driver);
+ $self->{device} = $self->{thirdparty}{device} if $self->{thirdparty} && $self->{thirdparty}{device};
+ $self->{thirdparty};
+}
+
+sub prepare_device {
+ my ($self) = @_;
+ my $driver = $self->get_driver;
+ if ($driver) {
+ require modules;
+ eval { modules::load($driver) };
+ }
+}
+
+#- status messages can be sent using mdv-network-event
+sub get_status_message {
+ my ($self, $status) = @_;
+ my $interface = $self->get_interface;
+ {
+ link_up => N("Link detected on interface %s", $interface),
+ link_down => N("Link beat lost on interface %s", $interface),
+ }->{$status};
+}
+
+1;
diff --git a/lib/network/connection/cable.pm b/lib/network/connection/cable.pm
new file mode 100644
index 0000000..e74ac6a
--- /dev/null
+++ b/lib/network/connection/cable.pm
@@ -0,0 +1,77 @@
+package network::connection::cable;
+
+use strict;
+use common;
+
+use base qw(network::connection::ethernet);
+
+use strict;
+use common;
+use modules;
+use detect_devices;
+
+sub get_type_name() { N("Cable") }
+sub get_type_description() { N("Cable modem") }
+sub get_type_icon() { 'cablemodem-24.png' }
+sub get_metric { 20 }
+
+sub handles_ifcfg {
+ my ($_class, $_ifcfg) = @_;
+ 0;
+}
+
+my $bpalogin_file = '/etc/bpalogin.conf';
+
+sub guess_protocol {
+ my ($self) = @_;
+ $self->{protocol} = 'dhcp';
+}
+
+sub guess_access_settings {
+ my ($self) = @_;
+ $self->{access}{use_bpalogin} = -e $::prefix . $bpalogin_file;
+ if ($self->{access}{use_bpalogin}) {
+ foreach (cat_($::prefix . $bpalogin_file)) {
+ /^username (.*)/ and $self->{access}{login} = $1;
+ /^password (.*)/ and $self->{access}{password} = $1;
+ }
+ }
+}
+
+sub get_access_settings {
+ my ($self) = @_;
+ my %auth = (
+ 0 => N("None"),
+ 1 => N("Use BPALogin (needed for Telstra)"),
+ );
+ [
+ { label => N("Authentication"), type => "list", val => \$self->{access}{use_bpalogin},
+ list => [ sort keys %auth ], format => sub { $auth{$_[0]} } },
+ { label => N("Account Login (user name)"), val => \$self->{access}{login},
+ disabled => sub { !$self->{access}{use_bpalogin} } },
+ { label => N("Account Password"), val => \$self->{access}{password}, hidden => 1,
+ disabled => sub { !$self->{access}{use_bpalogin} } },
+ ];
+}
+
+sub write_settings {
+ my ($self, $o_net, $o_modules_conf) = @_;
+ if ($self->{access}{use_bpalogin}) {
+ substInFile {
+ s/username\s+.*\n/username $self->{access}{login}\n/;
+ s/password\s+.*\n/password $self->{access}{password}\n/;
+ } $::prefix . $bpalogin_file;
+ }
+ services::set_status("bpalogin", $self->{access}{use_bpalogin});
+ $self->SUPER::write_settings($o_net, $o_modules_conf);
+}
+
+sub install_packages {
+ my ($self, $in) = @_;
+ if ($self->{access}{use_bpalogin}) {
+ $in->do_pkgs->ensure_is_installed('bpalogin', '/usr/sbin/bpalogin') or return;
+ }
+ $self->SUPER::install_packages($in);
+}
+
+1;
diff --git a/lib/network/connection/cellular.pm b/lib/network/connection/cellular.pm
new file mode 100644
index 0000000..a9c0d78
--- /dev/null
+++ b/lib/network/connection/cellular.pm
@@ -0,0 +1,52 @@
+package network::connection::cellular;
+
+use base qw(network::connection::ppp);
+
+use strict;
+use common;
+
+my $cellular_d = "/etc/sysconfig/network-scripts/cellular.d";
+
+sub get_providers {
+ require network::connection::providers::cellular;
+ (\%network::connection::providers::cellular::data, '|');
+}
+
+sub get_cellular_settings_file {
+ my ($self) = @_;
+ my $network = $self->get_selected_network or return;
+ $::prefix . $cellular_d . '/' . $network->{name};
+}
+
+sub load_cellular_settings {
+ my ($self) = @_;
+ my $file = $self->get_cellular_settings_file or return;
+ -f $file && { getVarsFromSh($file) };
+}
+
+sub selected_network_is_configured {
+ my ($self) = @_;
+ defined($self->load_cellular_settings);
+}
+
+sub write_cellular_settings {
+ my ($self) = @_;
+ my $file = $self->get_cellular_settings_file or return;
+ setVarsInShMode($file, 0600, { map { (uc($_) => $self->{access}{$_}) } qw(login password apn) });
+}
+
+sub guess_access_settings {
+ my ($self) = @_;
+ my $settings = $self->load_cellular_settings || {};
+ $self->{access}{$_} = $settings->{uc($_)} || $self->{provider}{$_} foreach qw(login password apn);
+}
+
+sub get_access_settings {
+ my ($self) = @_;
+ [
+ { label => N("Access Point Name"), val => \$self->{access}{apn} },
+ @{$self->SUPER::get_access_settings},
+ ];
+}
+
+1;
diff --git a/lib/network/connection/cellular_bluetooth.pm b/lib/network/connection/cellular_bluetooth.pm
new file mode 100644
index 0000000..1457795
--- /dev/null
+++ b/lib/network/connection/cellular_bluetooth.pm
@@ -0,0 +1,94 @@
+package network::connection::cellular_bluetooth;
+
+use base qw(network::connection::cellular);
+
+use strict;
+use common;
+
+my $rfcomm_dev_prefix = "/dev/rfcomm";
+
+sub get_type_name { N("Bluetooth") }
+sub get_type_description { N("Bluetooth Dial Up Networking") }
+sub get_type_icon { 'bluetooth-24.png' }
+sub get_devices { search_services('DUN') }
+sub get_metric { 45 }
+sub get_interface { "ppp0" }
+
+sub get_rfcomm_device {
+ my ($self) = @_;
+ $self->{rfcomm_device} ||= find { ! -e ($rfcomm_dev_prefix . $_) } 0 .. 99;
+}
+
+sub get_tty_device {
+ my ($self) = @_;
+ $rfcomm_dev_prefix . $self->get_rfcomm_device;
+}
+
+# http://www.hingston.demon.co.uk/mike/nokia6680.html
+# http://kapsi.fi/~mcfrisk/linux_gprs.html
+# GPRS specific commands http://www.phonestar.com.my/s_at_10.html
+
+sub search_services {
+ my ($service_type) = @_;
+ my (@services);
+ my $service = {};
+ my ($key, $value);
+ my $push_service = sub { push @services, $service if exists $service->{class} };
+ my $use_key = sub { $key = $_[0]; undef $value };
+ foreach (run_program::rooted_get_stdout($::prefix, 'sdptool', 'search', $service_type)) {
+ if (/^Searching for $service_type on (.+) \.\.\.$/) {
+ $push_service->();
+ $service = { addr => $1 };
+ } elsif (/^Service Name:\s+(.*)$/) {
+ $service->{name} = $1;
+ } elsif (/^Service Provider:\s+(.*)$/) {
+ $service->{name} = $1;
+ } elsif (/^\s*Channel:\s*(\d+)$/) {
+ $service->{channel} = $1;
+ } elsif (/^Service Class ID List/) {
+ $use_key->('class');
+ } else {
+ $value = chomp_($_);
+ }
+ if ($key && $value) {
+ $service->{$key} = $value;
+ $use_key->(undef);
+ }
+ }
+ $push_service->();
+ my %names;
+ foreach (@services) {
+ $names{$_->{addr}} ||= chomp_(run_program::rooted_get_stdout($::prefix, 'hcitool', 'name', $_->{addr}));
+ $_->{description} = $names{$_->{addr}};
+ }
+ @services;
+}
+
+sub write_settings {
+ my ($self) = @_;
+
+ $self->write_cellular_settings;
+
+ my $dev = $self->get_rfcomm_device;
+ output("$::prefix/etc/bluetooth/rfcomm.conf", qq(
+rfcomm$dev {
+ bind yes;
+ device $self->{device}{addr};
+ channel $self->{device}{channel};
+ comment "Dial-up networking";
+}
+));
+
+ my $cid = 1;
+ $self->{access}{at_commands} = [ qq(AT+CGDCONT=$cid,"IP","$self->{access}{apn}") ];
+ $self->{access}{dial_number} = "*99***$cid#";
+
+ $self->SUPER::write_settings;
+}
+
+sub prepare_connection {
+ my ($self) = @_;
+ run_program::rooted_get_stdout($::prefix, 'rfcomm', 'bind', $self->get_rfcomm_device);
+}
+
+1;
diff --git a/lib/network/connection/cellular_card.pm b/lib/network/connection/cellular_card.pm
new file mode 100644
index 0000000..9132f49
--- /dev/null
+++ b/lib/network/connection/cellular_card.pm
@@ -0,0 +1,180 @@
+package network::connection::cellular_card;
+
+use base qw(network::connection::cellular);
+
+use strict;
+use common;
+
+sub get_type_name() { N("GPRS/Edge/3G") }
+sub get_type_icon() { 'cellular-24.png' }
+sub get_devices() {
+ require detect_devices;
+ my @maybe_usbserial_modules = ('usbserial_generic', 'unknown');
+ my @serial = grep { $_->{description} =~ /GPRS|EDGE|3G|UMTS|H.DPA/i } detect_devices::matching_driver('serial_cs', 'usbserial', @maybe_usbserial_modules);
+ member($_->{driver}, @maybe_usbserial_modules) and $_->{driver} = 'usbserial' foreach @serial;
+ @serial, detect_devices::probe_category('network/cellular');
+}
+sub get_metric { 40 }
+sub get_interface() { "ppp0" }
+
+sub get_packages { 'comgt', 'ppp' }
+
+my @thirdparty_settings = (
+ {
+ name => 'nozomi',
+ description => 'Option GlobeTrotter 3G/EDGE and FUSION+',
+ url => 'http://www.pharscape.org/',
+ kernel_module => 1,
+ },
+);
+
+sub get_thirdparty_settings() {
+ \@thirdparty_settings;
+}
+
+sub guess_hardware_settings {
+ my ($self) = @_;
+ $self->{hardware}{pin} ||= chomp_(cat_("/etc/sysconfig/network-scripts/pin-" . $self->get_interface));
+}
+
+sub get_tty_device {
+ my ($self) = @_;
+ $self->{device}{device} ?
+ "/dev/" . $self->{device}{device} :
+ $self->get_driver eq "nozomi" ?
+ "/dev/noz0" :
+ "/dev/ttyUSB0";
+}
+
+sub network_scan_is_slow() { 1 }
+
+sub get_networks {
+ my ($self) = @_;
+ my $cmd = "gcom -d " . $self->get_tty_device;
+ my ($network, $state) = `$cmd reg` =~ /^Registered on \w+ network: "(.*)",(\d+)$/m;
+ my ($strength) = `$cmd sig` =~ /^Signal Quality:\s+(\d+),\d+$/;
+ $self->{networks} = $network && {
+ $network => {
+ name => $network,
+ signal_strength => $strength * 5,
+ current => $state == 2,
+ }
+ };
+}
+
+sub get_hardware_settings {
+ my ($self) = @_;
+ [ { label => N("PIN number"), val => \$self->{hardware}{pin}, hidden => 1 } ];
+}
+
+sub get_peer_default_options {
+ my ($self) = @_;
+ $self->SUPER::get_peer_default_options,
+ "noccp", # disable CCP to avoid warning messages
+ "debug";
+}
+
+sub build_peer {
+ my ($self) = @_;
+ $self->SUPER::build_peer;
+ #- don't run gcom for now, it hangs on ttyUSB0 devices when run from pppd
+ #- $self->{access}{peer}->{init} = "gcom -d $dev < $pin_file"
+}
+
+sub write_settings {
+ my ($self) = @_;
+
+ $self->write_cellular_settings;
+
+ my $interface = $self->get_interface;
+ my $pin_file = "/etc/sysconfig/network-scripts/pin-$interface";
+
+ output_with_perm($pin_file, 0600, $self->{hardware}{pin} . "\n");
+
+ my $cid = 3;
+ $self->{access}{at_commands} = [
+ "AT+CPIN?",
+ # Set +CGEE to 2
+ "AT+CMEE=2",
+ qq(AT+CGDCONT=$cid,"IP","$self->{access}{apn}"),
+ # Setup +CGEQREG (QoS, don't set it for now)
+ # qq(AT+CGEQREQ=3,3,64,384,0,0,2,0,"0E0","0E0",3,0,0),
+ # Attached to network, will return 1
+ "AT+CGATT?",
+ ];
+ $self->{access}{dial_number} = "*99***$cid#";
+
+ $self->SUPER::write_settings;
+}
+
+sub prepare_device {
+ my ($self) = @_;
+
+ my $driver = $self->get_driver;
+ require modules;
+ my $modules_conf = !is_empty_hash_ref($::o) ? $::o->{modules_conf} : modules::any_conf->read;
+ modules::load_and_configure($modules_conf, $driver,
+ if_($driver eq 'usbserial', join(
+ ' ',
+ "vendor=0x" . sprintf("%4x", $self->{device}{vendor}),
+ "product=0x" . sprintf("%4x", $self->{device}{id}))));
+ $modules_conf->write if !ref $::o;
+ sleep 2 if $driver eq 'usbserial';
+}
+
+sub check_device {
+ my ($self) = @_;
+
+ my $dev = $self->get_tty_device;
+ if (! -e $dev) {
+ $self->{device}{error} = N("Unable to open device %s", $dev);
+ return;
+ }
+
+ 1;
+}
+
+sub check_hardware {
+ my ($self) = @_;
+
+ my $device_ready = 0;
+
+ require IPC::Open2;
+ require IO::Select;
+ require c;
+ use POSIX qw(:errno_h);
+
+ my $pid = IPC::Open2::open2(my $cmd_out, my $cmd_in, "gcom", "-d", $self->get_tty_device);
+ common::nonblock($cmd_out);
+ my $selector = IO::Select->new($cmd_out);
+ while ($selector->can_read) {
+ local $_;
+ my $rv = sysread($cmd_out, $_, 512);
+ $rv == 0 and $selector->remove($cmd_out);
+ if (/^\*\*\*SIM ERROR\*\*\*/m) {
+ $self->{hardware}{error} = N("Please check that your SIM card is inserted.");
+ last;
+ } elsif (/^Enter PIN number:/m) {
+ $self->{hardware}{pin} or last;
+ print $cmd_in $self->{hardware}{pin} . "\n";
+ } elsif (/^ERROR entering PIN/m) {
+ $self->{hardware}{error} = N("You entered a wrong PIN code.
+Entering the wrong PIN code multiple times may lock your SIM card!");
+ last;
+ } elsif (/^Waiting for Registration/m) {
+ #- the card seems to be resetted if gcom is killed right here, wait a bit
+ sleep 1;
+ #- don't wait the full scan
+ $device_ready = 1;
+ last;
+ }
+ }
+ kill 'TERM', $pid;
+ close($cmd_out);
+ close($cmd_in);
+ waitpid($pid, c::WNOHANG());
+
+ $device_ready;
+}
+
+1;
diff --git a/lib/network/connection/dvb.pm b/lib/network/connection/dvb.pm
new file mode 100644
index 0000000..3364886
--- /dev/null
+++ b/lib/network/connection/dvb.pm
@@ -0,0 +1,73 @@
+package network::connection::dvb;
+
+use strict;
+use common;
+
+use base qw(network::connection::ethernet);
+
+use strict;
+use common;
+use modules;
+
+sub get_type_name() { N("DVB") }
+sub get_type_description() { N("Satellite (DVB)") }
+sub get_type_icon() { 'dvb-24.png' }
+
+sub get_devices() {
+ require detect_devices;
+ detect_devices::probe_category("multimedia/dvb");
+}
+
+sub get_metric { 15 }
+
+sub handles_ifcfg {
+ my ($_class, $ifcfg) = @_;
+ exists $ifcfg->{DVB_ADAPTER_ID};
+}
+
+sub get_interface {
+ my ($self) = @_;
+ defined $self->{hardware}{adapter_id} && defined $self->{hardware}{network_demux} or return "dvb";
+ 'dvb' . $self->{hardware}{adapter_id} . '_' . $self->{hardware}{network_demux};
+}
+
+sub get_dvb_device {
+ find { sysopen(undef, $_, c::O_RDWR() | c::O_NONBLOCK()) } glob("/dev/dvb/adapter*/net*");
+}
+
+sub load_interface_settings {
+ my ($self) = @_;
+ $self->guess_hardware_settings; #- so that matching interface settings can be loaded
+ $self->network::connection::load_interface_settings;
+ $self->{hardware}{adapter_id} = $self->{ifcfg}{DVB_ADAPTER_ID};
+ $self->{hardware}{network_demux} = $self->{ifcfg}{DVB_NETWORK_DEMUX};
+ $self->{hardware}{network_pid} = $self->{ifcfg}{DVB_NETWORK_PID};
+}
+
+sub guess_hardware_settings {
+ my ($self) = @_;
+ my $device = get_dvb_device() or return;
+ ($self->{hardware}{adapter_id}, $self->{hardware}{network_demux}) = $device =~ m,/dev/dvb/adapter(\d+)/net(\d+),;
+}
+
+sub get_hardware_settings {
+ my ($self) = @_;
+ [
+ { label => N("Adapter card"), val => \$self->{hardware}{adapter_id} },
+ { label => N("Net demux"), val => \$self->{hardware}{network_demux} },
+ { label => N("PID"), val => \$self->{hardware}{network_pid} },
+ ];
+}
+
+sub build_ifcfg_settings {
+ my ($self) = @_;
+ my $settings = {
+ DVB_ADAPTER_ID => qq("$self->{hardware}{adapter_id}"),
+ DVB_NETWORK_DEMUX => qq("$self->{hardware}{network_demux}"),
+ DVB_NETWORK_PID => qq("$self->{hardware}{network_pid}"),
+ MII_NOT_SUPPORTED => "yes",
+ };
+ $self->SUPER::build_ifcfg_settings($settings);
+}
+
+1;
diff --git a/lib/network/connection/ethernet.pm b/lib/network/connection/ethernet.pm
new file mode 100644
index 0000000..39752f5
--- /dev/null
+++ b/lib/network/connection/ethernet.pm
@@ -0,0 +1,512 @@
+package network::connection::ethernet; # $Id: ethernet.pm 147431 2007-03-21 17:06:09Z blino $
+
+use base qw(network::connection);
+
+use strict;
+use common;
+
+our @dhcp_clients = qw(dhclient dhcpcd pump dhcpxd);
+
+sub get_type_name() { N("Ethernet") }
+sub get_type_icon() { 'ethernet-24.png' }
+
+sub get_devices() {
+ #require list_modules;
+ #- FIXME: try to use list_modules::ethernet_categories() (but remove wireless stuff)
+ require detect_devices;
+ my @devices = detect_devices::probe_category('network/main|gigabit|pcmcia|tokenring|usb|firewire');
+ my @lan = grep { detect_devices::is_lan_interface($_) && !detect_devices::is_wireless_interface($_) } detect_devices::get_all_net_devices();
+ @devices, get_unlisted_devices(\@lan, \@devices);
+}
+
+sub get_unlisted_devices {
+ my ($interfaces, $listed_devices) = @_;
+ my @unlisted_interfaces = sort(difference2($interfaces, [ map { device_to_interface($_) } @$listed_devices ]));
+ map { interface_to_device($_) || +{ description => $_, interface => $_ } } @unlisted_interfaces;
+}
+
+sub handles_ifcfg {
+ my ($_class, $ifcfg) = @_;
+ require detect_devices;
+ detect_devices::is_lan_interface($ifcfg->{DEVICE});
+}
+
+sub is_gigabit {
+ my ($self) = @_;
+ require list_modules;
+ member($self->get_driver, list_modules::category2modules('network/gigabit'));
+}
+
+sub get_metric {
+ my ($self) = @_;
+ $self->is_gigabit ? 5 : 10;
+}
+
+sub get_interface {
+ my ($self) = @_;
+ $self->{device}{interface} || device_to_interface($self->{device});
+}
+
+sub check_device {
+ my ($self) = @_;
+ if (!$self->get_interface) {
+ $self->{device}{error} = N("Unable to find network interface for selected device (using %s driver).", $self->get_driver);
+ return 0;
+ }
+ return 1;
+}
+
+sub get_protocols() {
+ {
+ static => N("Manual configuration"),
+ dhcp => N("Automatic IP (BOOTP/DHCP)"),
+ };
+}
+
+sub load_interface_settings {
+ my ($self) = @_;
+
+ $self->network::connection::load_interface_settings;
+
+ $self->{protocol} = $self->{ifcfg}{BOOTPROTO};
+
+ $self->{address}{needhostname} = $self->get_ifcfg_bool('NEEDHOSTNAME');
+ $self->{address}{peerdns} = $self->get_ifcfg_bool('PEERDNS');
+ $self->{address}{peeryp} = $self->get_ifcfg_bool('PEERYP');
+ $self->{address}{peerntpd} = $self->get_ifcfg_bool('PEERNTPD');
+
+ $self->{address}{dhcp_client} = $self->{ifcfg}{DHCP_CLIENT};
+ $self->{address}{dhcp_hostname} = $self->{ifcfg}{DHCP_HOSTNAME};
+ $self->{address}{dhcp_timeout} = $self->{ifcfg}{DHCP_TIMEOUT};
+ $self->{address}{ip_address} = $self->{ifcfg}{IPADDR};
+ $self->{address}{netmask} = $self->{ifcfg}{NETMASK};
+ $self->{address}{gateway} = $self->{ifcfg}{GATEWAY};
+ $self->{address}{dns1} = $self->{ifcfg}{DNS1} || $self->{ifcfg}{MS_DNS1};
+ $self->{address}{dns2} = $self->{ifcfg}{DNS2} || $self->{ifcfg}{MS_DNS2};
+ $self->{address}{domain} = $self->{ifcfg}{DOMAIN};
+
+ my $blacklist_ifplugd = $self->get_ifcfg_bool('MII_NOT_SUPPORTED');
+ $self->{control}{use_ifplugd} = !$blacklist_ifplugd if defined $blacklist_ifplugd;
+ $self->{control}{ipv6_tunnel} = $self->get_ifcfg_bool('IPV6TO4INIT');
+}
+
+sub guess_protocol {
+ my ($self) = @_;
+ $self->{protocol} ||= 'dhcp';
+}
+
+sub guess_address_settings {
+ my ($self) = @_;
+ $self->{address}{dhcp_client} ||= find { -x "$::prefix/sbin/$_" } @dhcp_clients;
+ $self->{address}{peerdns} = 1 if !defined $self->{address}{peerdns};
+ $self->{address}{peeryp} = 1 if !defined $self->{address}{peeryp};
+ $self->supplement_address_settings;
+}
+
+sub supplement_address_settings {
+ my ($self) = @_;
+ if ($self->{protocol} eq 'static' && network::network::is_ip($self->{address}{ip_address})) {
+ require network::network;
+ $self->{address}{netmask} ||= network::network::netmask($self->{address}{ip_address});
+ $self->{address}{gateway} ||= network::network::gateway($self->{address}{ip_address});
+ $self->{address}{dns1} ||= network::network::dns($self->{address}{ip_address});
+ }
+}
+
+sub get_address_settings_label { N("IP settings") }
+
+sub get_address_settings {
+ my ($self, $o_show_all) = @_;
+ my $auto_dns = sub { $self->{protocol} eq 'dhcp' && $self->{address}{peerdns} };
+ my $not_static = sub { $self->{protocol} ne 'static' };
+ my $not_dhcp = sub { $self->{protocol} ne 'dhcp' };
+ [
+ if_($self->{protocol} eq 'static' || $o_show_all,
+ { label => N("IP address"), val => \$self->{address}{ip_address}, disabled => $not_static,
+ focus_out => sub {
+ $self->supplement_address_settings if $self->can('supplement_address_settings');
+ },
+ help => N("Please enter the IP configuration for this machine.
+Each item should be entered as an IP address in dotted-decimal
+notation (for example, 1.2.3.4).") },
+ { label => N("Netmask"), val => \$self->{address}{netmask}, disabled => $not_static },
+ { label => N("Gateway"), val => \$self->{address}{gateway}, disabled => $not_static },
+ ),
+ if_($self->{protocol} eq 'dhcp' || $o_show_all,
+ { text => N("Get DNS servers from DHCP"), val => \$self->{address}{peerdns}, type => "bool", disabled => $not_dhcp },
+ ),
+ { label => N("DNS server 1"), val => \$self->{address}{dns1}, disabled => $auto_dns },
+ { label => N("DNS server 2"), val => \$self->{address}{dns2}, disabled => $auto_dns },
+ { label => N("Search domain"), val => \$self->{address}{domain}, disabled => $auto_dns, advanced => 1,
+ help => N("By default search domain will be set from the fully-qualified host name") },
+ if_($self->{protocol} eq 'dhcp',
+ { label => N("DHCP client"), val => \$self->{address}{dhcp_client}, list => \@dhcp_clients, advanced => 1 },
+ { label => N("DHCP timeout (in seconds)"), val => \$self->{address}{dhcp_timeout}, advanced => 1 },
+ { text => N("Get YP servers from DHCP"), val => \$self->{address}{peeryp}, type => "bool", advanced => 1 },
+ { text => N("Get NTPD servers from DHCP"), val => \$self->{address}{peerntpd}, type => "bool", advanced => 1 },
+ { label => N("DHCP host name"), val => \$self->{address}{dhcp_hostname}, advanced => 1 },
+ #- FIXME: install zcip if not checked
+ if_(0, { text => N("Do not fallback to Zeroconf (169.254.0.0 network)"), type => "bool", val => \$self->{address}{skip_zeroconf}, advanced => 1 }),
+ ),
+ ];
+}
+
+sub check_address_settings {
+ my ($self, $net) = @_;
+
+ if ($self->{protocol} eq 'static') {
+ require network::network;
+ if (!network::network::is_ip($self->{address}{ip_address})) {
+ $self->{address}{error}{message} = N("IP address should be in format 1.2.3.4");
+ $self->{address}{error}{field} = \$self->{address}{ip_address};
+ return 0;
+ }
+ if (!network::network::is_ip($self->{address}{netmask})) {
+ $self->{address}{error}{message} = N("Netmask should be in format 255.255.224.0");
+ $self->{address}{error}{field} = \$self->{address}{netmask};
+ return 0;
+ }
+ if (network::network::is_ip_forbidden($self->{address}{ip_address})) {
+ $self->{address}{error}{message} = N("Warning: IP address %s is usually reserved!", $self->{address}{ip_address});
+ $self->{address}{error}{field} = \$self->{address}{ip_address};
+ return 0;
+ }
+ #- test if IP address is already used
+ if (find { text2bool($_->{ONBOOT}) && $_->{DEVICE} ne $self->get_interface && $_->{IPADDR} eq $self->{address}{ip_address} } values %{$net->{ifcfg}}) {
+ $self->{address}{error}{message} = N("%s already in use\n", $self->{address}{ip_address});
+ $self->{address}{error}{field} = \$self->{address}{ip_address};
+ return 0;
+ }
+ }
+
+ return 1;
+}
+
+sub guess_hostname_settings {
+ my ($self) = @_;
+ $self->{address}{needhostname} = 0 if !defined $self->{address}{needhostname};
+ if (!defined $self->{address}{hostname}) {
+ require network::network;
+ my $network = network::network::read_conf($::prefix . $network::network::network_file);
+ $self->{address}{hostname} = $network->{HOSTNAME};
+ }
+}
+
+sub get_hostname_settings {
+ my ($self) = @_;
+ my $auto_hostname = sub { $self->{protocol} eq 'dhcp' && $self->{address}{needhostname} };
+ [
+ if_($self->{protocol} eq 'dhcp',
+ { text => N("Assign host name from DHCP address"), val => \$self->{address}{needhostname}, type => "bool" },
+ ),
+ { label => N("Host name"), val => \$self->{address}{hostname}, disabled => $auto_hostname },
+ ];
+}
+
+sub guess_control_settings {
+ my ($self) = @_;
+
+ $self->network::connection::guess_control_settings($self);
+
+ $self->{control}{onboot} = 1 if !defined $self->{control}{onboot};
+ $self->{control}{use_ifplugd} = !is_ifplugd_blacklisted($self->get_driver)
+ if !defined $self->{control}{use_ifplugd};
+}
+
+sub get_control_settings {
+ my ($self) = @_;
+ [
+ @{$self->network::connection::get_control_settings},
+ { text => N("Network Hotplugging"), val => \$self->{control}{use_ifplugd}, type => "bool",
+ #- FIXME: force ifplugd if wireless roaming is enabled
+ disabled => sub { $self->{control}{force_ifplugd} }, advanced => 1, },
+ #- FIXME: $need_network_restart = $ipv6_tunnel ^ text2bool($ethntf->{IPV6TO4INIT});
+ { text => N("Enable IPv6 to IPv4 tunnel"), val => \$self->{control}{ipv6_tunnel}, type => "bool", advanced => 1 },
+ ];
+}
+
+sub install_packages {
+ my ($self, $in) = @_;
+ if ($self->{protocol} eq 'dhcp') {
+ install_dhcp_client($in, $self->{address}{dhcp_client}) or return;
+ }
+ 1;
+}
+
+sub build_ifcfg_settings {
+ my ($self, $o_options) = @_;
+ my $settings = put_in_hash($o_options, {
+ BOOTPROTO => $self->{protocol},
+ IPADDR => $self->{address}{ip_address},
+ GATEWAY => $self->{address}{gateway},
+ NETMASK => $self->{address}{netmask},
+ NEEDHOSTNAME => bool2yesno($self->{address}{needhostname}),
+ PEERYP => bool2yesno($self->{address}{peeryp}),
+ PEERDNS => bool2yesno($self->{address}{peerdns}),
+ RESOLV_MODS => bool2yesno($self->{address}{dns1} || $self->{address}{dns2}),
+ PEERNTPD => bool2yesno($self->{address}{peerntpd}),
+ DHCP_CLIENT => $self->{address}{dhcp_client},
+ DHCP_HOSTNAME => $self->{address}{dhcp_hostname},
+ DHCP_TIMEOUT => $self->{address}{dhcp_timeout},
+ MII_NOT_SUPPORTED => bool2yesno(!$self->{control}{use_ifplugd}),
+ IPV6INIT => bool2yesno($self->{control}{ipv6_tunnel}),
+ IPV6TO4INIT => bool2yesno($self->{control}{ipv6_tunnel}),
+ DNS1 => $self->{address}{dns1},
+ DNS2 => $self->{address}{dns2},
+ DOMAIN => $self->{address}{domain},
+ LINK_DETECTION_DELAY => $self->get_link_detection_delay,
+ });
+ $self->network::connection::build_ifcfg_settings($settings);
+}
+
+sub write_settings {
+ my ($self, $o_net, $o_modules_conf) = @_;
+ $o_modules_conf->set_alias($self->get_interface, $self->get_driver) if $o_modules_conf;
+ $self->SUPER::write_settings($o_net, $o_modules_conf);
+}
+
+sub get_status_message {
+ my ($self, $status) = @_;
+ my $interface = $self->get_interface;
+ {
+ link_up => N("Link beat detected on interface %s", $interface),
+ link_down => N("Link beat lost on interface %s", $interface),
+ map { (
+ "$_->[0]_request" => N("Requesting a network address on interface %s (%s protocol)...", $interface, $_->[1]),
+ "$_->[0]_success" => N("Got a network address on interface %s (%s protocol)", $interface, $_->[1]),
+ "$_->[0]_failure" => N("Failed to get a network address on interface %s (%s protocol)", $interface, $_->[1]),
+ ) } ([ 'dhcp', 'DHCP' ], [ 'zcip', 'ZeroConf' ]),
+ }->{$status} || $self->network::connection::get_status_message($status);
+}
+
+use c;
+use detect_devices;
+use common;
+use run_program;
+
+sub install_dhcp_client {
+ my ($in, $client) = @_;
+ my %packages = (
+ "dhclient" => "dhcp-client",
+ );
+ #- use default dhcp client if none is provided
+ $client ||= $dhcp_clients[0];
+ $client = $packages{$client} if exists $packages{$client};
+ $in->do_pkgs->ensure_is_installed($client, undef, 1);
+}
+
+my @hwaddr_fields = qw(pci_domain pci_bus pci_device pci_function);
+
+sub are_same_HwIDs {
+ my ($device1, $device2) = @_;
+ every { $device1->{$_} == $device2->{$_} } @hwaddr_fields;
+}
+
+sub parse_hwaddr {
+ my ($hw_addr) = @_;
+ return if !$hw_addr;
+ my %device;
+ @device{@hwaddr_fields} = map { hex($_) } ($hw_addr =~ /([0-9a-f]+):([0-9a-f]+):([0-9a-f]+)\.([0-9a-f]+)/);
+ (every { defined $_ } keys %device) ? \%device : undef;
+}
+
+sub mapIntfToDevice {
+ my ($interface) = @_;
+ my $hw_addr = c::getHwIDs($interface);
+ return {} if $hw_addr =~ /^usb/;
+ my $device = parse_hwaddr($hw_addr);
+ $device ? grep { are_same_HwIDs($_, $device) } detect_devices::probeall__real() : {};
+}
+
+sub device_matches_interface_HwIDs {
+ my ($device, $interface) = @_;
+ my $hw_addr = c::getHwIDs($interface);
+ $hw_addr =~ /^usb/ and return;
+ my ($device2) = parse_hwaddr($hw_addr);
+ return if !$device2;
+ are_same_HwIDs($device, $device2);
+}
+
+sub get_interface_sysfs_path {
+ my ($interface) = @_;
+ my $dev_path = "/sys/class/net/$interface/device";
+ my $bus = detect_devices::get_sysfs_field_from_link($dev_path, 'bus');
+ if ($bus eq 'ieee1394') {
+ my $child = first(glob("$dev_path/host_id/*-*"));
+ $dev_path = $child if $child;
+ }
+ $dev_path;
+}
+
+sub get_interface_ids {
+ my ($interface) = @_;
+ detect_devices::get_ids_from_sysfs_device(get_interface_sysfs_path($interface));
+}
+
+sub device_matches_interface {
+ my ($device, $interface) = @_;
+ detect_devices::device_matches_sysfs_ids($device, get_interface_ids($interface));
+}
+
+sub device_to_interface {
+ my ($device) = @_;
+ my @all_interfaces = detect_devices::get_net_interfaces();
+ find {
+ device_matches_interface_HwIDs($device, $_) ||
+ device_matches_interface($device, $_);
+ } @all_interfaces;
+}
+
+sub interface_to_device {
+ my ($interface) = @_;
+ my $sysfs_ids = get_interface_ids($interface);
+ find { detect_devices::device_matches_sysfs_ids($_, $sysfs_ids) } detect_devices::probeall__real();
+}
+
+sub interface_to_driver {
+ my ($interface) = @_;
+ my $dev_path = get_interface_sysfs_path($interface);
+ #- FIXME: use $bus and move in get_interface_sysfs_path if possible
+ my $child = -f "$dev_path/idVendor" && first(glob("$dev_path/*-*:*.*"));
+ $dev_path = $child if -f "$child/driver";
+ detect_devices::get_sysfs_field_from_link($dev_path, 'driver');
+}
+
+# return list of [ intf_name, module, device_description ] tuples such as:
+# [ "eth0", "3c59x", "3Com Corporation|3c905C-TX [Fast Etherlink]" ]
+#
+# this function try several method in order to get interface's driver and description in order to support both:
+# - hotplug managed devices (USB, firewire)
+# - special interfaces (IP aliasing, VLAN)
+sub get_eth_cards {
+ my ($modules_conf) = @_;
+ my @all_cards = detect_devices::get_lan_interfaces();
+
+ my @devs = detect_devices::pcmcia_probe();
+ my $saved_driver;
+ # compute device description and return (interface, driver, description) tuples:
+ return map {
+ my $interface = $_;
+ my $description;
+ # 1) get interface's driver through ETHTOOL ioctl:
+ my ($a, $detected_through_ethtool);
+ $a = c::getNetDriver($interface);
+ if ($a) {
+ $detected_through_ethtool = 1;
+ } else {
+ # 2) get interface's driver through module aliases:
+ $a = $modules_conf->get_alias($interface);
+ }
+
+ # workaround buggy drivers that returns a bogus driver name for the GDRVINFO command of the ETHTOOL ioctl:
+ my %fixes = (
+ "p80211_prism2_cs" => 'prism2_cs',
+ "p80211_prism2_pci" => 'prism2_pci',
+ "p80211_prism2_usb" => 'prism2_usb',
+ "ip1394" => "eth1394",
+ "DL2K" => "dl2k",
+ "orinoco" => undef, #- should be orinoco_{cs,nortel,pci,plx,tmd}
+ "hostap" => undef, #- should be hostap_{cs,pci,plx}
+ );
+ if (exists $fixes{$a}) {
+ $a = $fixes{$a};
+ $a or undef $detected_through_ethtool;
+ }
+
+ # 3) try to match a PCMCIA device for device description:
+ if (my $b = find { $_->{device} eq $interface } @devs) { # PCMCIA case
+ $a = $b->{driver};
+ $description = $b->{description};
+ } else {
+ # 4) try to lookup a device by hardware address for device description:
+ # maybe should have we try sysfs first for robustness?
+ ($description) = (mapIntfToDevice($interface))[0]->{description};
+ }
+ # 5) try to match a device through sysfs for driver & device description:
+ # (eg: ipw2100 driver for intel centrino do not support ETHTOOL)
+ if (!$description || !$a) {
+ my $drv = interface_to_driver($interface);
+ $a = $drv if $drv && !$detected_through_ethtool;
+ my $card = interface_to_device($interface);
+ $description ||= $card->{description} if $card;
+ }
+ # 6) try to match a device by driver for device description:
+ # (eg: madwifi, ndiswrapper, ...)
+ if (!$description) {
+ my @cards = grep { $_->{driver} eq ($a || $saved_driver) } detect_devices::probeall__real();
+ $description = $cards[0]{description} if @cards == 1;
+ }
+ $a and $saved_driver = $a; # handle multiple cards managed by the same driver
+ [ $interface, $saved_driver, if_($description, $description) ];
+ } @all_cards;
+}
+
+sub get_eth_cards_names {
+ my (@all_cards) = @_;
+ map { $_->[0] => join(': ', $_->[0], $_->[2]) } @all_cards;
+}
+
+#- returns (link_type, mac_address)
+sub get_eth_card_mac_address {
+ my ($intf) = @_;
+ #- don't look for 6 bytes addresses only because of various non-standard MAC addresses
+ `$::prefix/sbin/ip -o link show $intf 2>/dev/null` =~ m|.*link/(\S+)\s((?:[0-9a-f]{2}:?)+)\s|;
+}
+
+#- write interfaces MAC address in iftab
+sub update_iftab() {
+ #- skip aliases interfaces
+ foreach my $intf (grep { !/:\d+$/ } detect_devices::get_lan_interfaces()) {
+ my ($link_type, $mac_address) = get_eth_card_mac_address($intf) or next;
+ #- do not write zeroed MAC addresses in iftab, it confuses ifrename
+ $mac_address =~ /^[0:]+$/ and next;
+ # ifrename supports alsa IEEE1394, EUI64 and IRDA
+ member($link_type, 'ether', 'ieee1394', 'irda', '[27]') or next;
+ substInFile {
+ s/^$intf\s+.*\n//;
+ s/^.*\s+$mac_address\n//;
+ $_ .= qq($intf mac $mac_address\n) if eof;
+ } "$::prefix/etc/iftab";
+ }
+}
+
+sub update_udev_net_config() {
+ my $lib = arch() =~ /x86_64/ ? "lib64" : "lib";
+ my $net_name_helper = "/$lib/udev/net_name_helper";
+ my $udev_net_config = "/etc/udev/rules.d/61-net_config.rules";
+ my @old_config = cat_($udev_net_config);
+ #- skip aliases and vlan interfaces
+ foreach my $intf (grep { !/[:.]\d+$/ } detect_devices::get_lan_interfaces()) {
+ (undef, my $mac_address) = get_eth_card_mac_address($intf) or next;
+ #- do not write zeroed MAC addresses
+ $mac_address =~ /^[0:]+$/ and next;
+ #- skip already configured addresses
+ any { !/^\s*#/ && /"$mac_address"/ } @old_config and next;
+ local $ENV{INTERFACE} = $intf;
+ local $ENV{SUBSYSTEM} = 'net';
+ run_program::rooted($::prefix, $net_name_helper, '>', '/dev/null', $mac_address);
+ }
+}
+
+# automatic net aliases configuration
+sub configure_eth_aliases {
+ my ($modules_conf) = @_;
+ foreach my $card (get_eth_cards($modules_conf)) {
+ $modules_conf->set_alias($card->[0], $card->[1]);
+ }
+ $::isStandalone and $modules_conf->write;
+ update_iftab();
+ update_udev_net_config();
+}
+
+sub get_link_detection_delay {
+ my ($self) = @_;
+ member($self->get_driver, qw(forcedeth r8169 skge sky2 tg3)) && 6;
+}
+
+sub is_ifplugd_blacklisted {
+ my ($module) = @_;
+ !$module || member($module, qw(via-velocity));
+}
+
+1;
diff --git a/lib/network/isdn.pm b/lib/network/connection/isdn.pm
index 740741b..4b85d1d 100644
--- a/lib/network/isdn.pm
+++ b/lib/network/connection/isdn.pm
@@ -1,18 +1,40 @@
-package network::isdn; # $Id$
+package network::connection::isdn;
+
+use base qw(network::connection);
use strict;
-use network::isdn_consts;
use common;
+
+sub get_type_name { N("ISDN") }
+sub get_type_icon { 'isdn-24.png' }
+
+sub get_devices {
+ require modules;
+ #- FIXME: module alias should be written when config is written only
+ @{detect_backend(modules::any_conf->read)};
+}
+sub get_metric { 30 }
+
+use network::connection::isdn::consts;
use modules;
use run_program;
use log;
use network::tools;
use services;
-
-sub write_config {
+sub apply_config {
my ($in, $isdn) = @_;
- $in->do_pkgs->install('isdn4net', if_($isdn->{speed} =~ /128/, 'ibod'), 'isdn4k-utils');
+
+ $isdn = find_capi_card($isdn) if $isdn->{driver} eq "capidrv";
+ unload_connection($isdn);
+ install_packages($isdn, $in);
+ write_settings($isdn);
+ write_capi_conf($isdn) if $isdn->{driver} eq "capidrv";
+ prepare_connection($isdn);
+}
+
+sub write_settings {
+ my ($isdn) = @_;
output_with_perm("$::prefix/etc/isdn/profile/link/myisp", 0600,
qq(
@@ -44,33 +66,13 @@ usepeerdns
defaultroute
";
- services::stop("isdn4linux"); #- to be stopped before capi is loaded
- if ($isdn->{driver} eq "capidrv") {
- setup_capi_conf($in, get_capi_card($in, $isdn));
- services::enable('capi4linux');
- } else {
- services::disable('capi4linux');
- }
- services::enable('isdn4linux');
-
network::tools::write_secret_backend($isdn->{login}, $isdn->{passwd});
1;
}
-
-sub setup_capi_conf {
- my ($in, $capi_card) = @_;
-
- $in->do_pkgs->ensure_is_installed('isdn4k-utils', "/etc/rc.d/init.d/capi4linux"); #- capi4linux service
- is_module_installed($capi_card->{driver}) or $in->do_pkgs->install(@{$capi_card->{packages}});
- if ($capi_card->{firmware} && ! -f "$::prefix/usr/lib/isdn/$capi_card->{firmware}") {
- $in->do_pkgs->install("$capi_card->{driver}-firmware");
- }
-
- #- stop capi4linux before new config is written so that it can unload the driver
- services::stop("capi4linux");
-
+sub write_capi_conf {
+ my ($capi_card) = @_;
my $capi_conf;
my $firmware = $capi_card->{firmware} || '-';
if ($capi_card->{driver} eq "fcclassic") {
@@ -80,9 +82,43 @@ sub setup_capi_conf {
} else {
$capi_conf = "$capi_card->{driver} $firmware - - - - -\n";
}
+
output("$::prefix/etc/capi.conf", $capi_conf);
}
+sub unload_connection {
+ my ($isdn) = @_;
+ require services;
+ services::stop("isdn4linux"); #- to be stopped before capi is loaded
+ if ($isdn->{driver} eq "capidrv") {
+ #- stop capi4linux before new config is written so that it can unload the driver
+ services::stop("capi4linux");
+ }
+}
+
+sub install_packages {
+ my ($isdn, $in) = @_;
+
+ $in->do_pkgs->install(
+ 'isdn4k-utils',
+ $isdn->{driver} eq "capidrv" ?
+ (if_(!modules::module_is_available($isdn->{driver}), @{$isdn->{packages}}),
+ if_($isdn->{firmware} && ! -f "$::prefix/usr/lib/isdn/$isdn->{firmware}", "$isdn->{driver}-firmware"))
+ :
+ ('isdn4net', if_($isdn->{speed} =~ /128/, 'ibod'))
+ );
+}
+
+sub prepare_connection {
+ my ($isdn) = @_;
+ if ($isdn->{driver} eq "capidrv") {
+ services::enable('capi4linux');
+ } else {
+ services::disable('capi4linux');
+ }
+ services::enable('isdn4linux');
+}
+
sub read_config {
my ($isdn) = @_;
@@ -145,7 +181,7 @@ sub detect_backend {
}
$c->{options} =~ /protocol=(\d)/ and $isdn->{protocol} = $1;
push @isdn, $isdn;
- } modules::probe_category('network/isdn');
+ } detect_devices::probe_category('network/isdn');
\@isdn;
}
@@ -168,21 +204,20 @@ sub get_cards() {
}
-sub is_module_installed {
- my ($driver) = @_;
- find { m!/\Q$driver\E\.k?o! } cat_($::prefix . '/lib/modules/' . c::kernel_version() . '/modules.dep');
+sub find_capi_card {
+ my ($isdn) = @_;
+ find {
+ hex($isdn->{vendor}) == $_->{vendor} && hex($isdn->{id}) == $_->{id};
+ } @isdn_capi;
}
-
sub get_capi_card {
my ($in, $isdn) = @_;
- my $capi_card = find {
- hex($isdn->{vendor}) == $_->{vendor} && hex($isdn->{id}) == $_->{id};
- } @isdn_capi or return;
+ my $capi_card = find_capi_card($isdn) or return;
#- check if the capi driver is available
- unless (is_module_installed($capi_card->{driver}) || ($capi_card->{packages} = $in->do_pkgs->check_kernel_module_packages("$capi_card->{driver}-kernel"))) {
+ unless (modules::module_is_available($capi_card->{driver}) || ($capi_card->{packages} = $in->do_pkgs->check_kernel_module_packages($capi_card->{driver}))) {
log::explanations("a capi driver ($capi_card->{driver}) exists to replace $isdn->{driver}, but it is not installed and no packages provide it");
return;
}
diff --git a/lib/network/isdn_consts.pm b/lib/network/connection/isdn/consts.pm
index b2361fe..a53ddbe 100644
--- a/lib/network/isdn_consts.pm
+++ b/lib/network/connection/isdn/consts.pm
@@ -1,4 +1,4 @@
-package network::isdn_consts; # $Id$
+package network::connection::isdn::consts; # $Id: consts.pm 54070 2006-08-07 17:34:38Z blino $
use vars qw(@ISA @EXPORT);
@ISA = qw(Exporter);
@EXPORT = qw(@isdndata @isdn_capi);
diff --git a/lib/network/connection/pots.pm b/lib/network/connection/pots.pm
new file mode 100644
index 0000000..be7bf9f
--- /dev/null
+++ b/lib/network/connection/pots.pm
@@ -0,0 +1,133 @@
+package network::connection::pots;
+
+use base qw(network::connection::ppp);
+
+use strict;
+use common;
+
+sub get_type_name {
+ #-PO: POTS means "Plain old telephone service"
+ N("POTS");
+}
+sub get_type_description {
+ #-PO: POTS means "Plain old telephone service"
+ #-PO: remove it if it doesn't have an equivalent in your language
+ #-PO: for example, in French, it can be translated as "RTC"
+ N("Analog telephone modem (POTS)");
+}
+sub get_type_icon { 'potsmodem-24.png' }
+sub get_metric { 50 }
+
+sub handles_ifcfg {
+ my ($_class, $ifcfg) = @_;
+ $ifcfg->{DEVICE} =~ /^ppp/ && exists $ifcfg->{MODEMPORT};
+}
+
+sub get_devices {
+ require detect_devices;
+ require modules;
+ #- FIXME: module alias should be written when config is written only
+ #detect_devices::getModem(modules::any_conf->read);
+ ();
+}
+
+my @thirdparty_settings = (
+ {
+ matching => qr/^Hcf:/,
+ description => 'HCF 56k Modem',
+ url => 'http://www.linuxant.com/drivers/hcf/',
+ name => 'hcfpcimodem',
+ kernel_module => {
+ test_file => 'hcfpciengine',
+ },
+ tools => {
+ test_file => '/usr/sbin/hcfpciconfig',
+ },
+ device => '/dev/ttySHCF0',
+ post => '/usr/sbin/hcfpciconfig --auto',
+ restart_service => 'hcfpci',
+ },
+
+ {
+ matching => qr/^Hsf:/,
+ description => 'HSF 56k Modem',
+ url => 'http://www.linuxant.com/drivers/hsf/',
+ name => 'hsfmodem',
+ kernel_module => {
+ test_file => 'hsfengine',
+ },
+ tools => {
+ test_file => '/usr/sbin/hsfconfig',
+ },
+ device => '/dev/ttySHSF0',
+ post => '/usr/sbin/hsfconfig --auto',
+ restart_service => 'hsf',
+ },
+
+ {
+ matching => qr/^LT:/,
+ description => 'LT WinModem',
+ url => 'http://www.heby.de/ltmodem/',
+ name => 'ltmodem',
+ kernel_module => 1,
+ tools => {
+ test_file => '/etc/devfs/conf.d/ltmodem.conf',
+ },
+ device => '/dev/ttyS14',
+ links => [
+ 'http://linmodems.technion.ac.il/Ltmodem.html',
+ 'http://linmodems.technion.ac.il/packages/ltmodem/',
+ ],
+ },
+
+ {
+ matching => [ list_modules::category2modules('network/slmodem') ],
+ description => 'Smartlink WinModem',
+ url => 'http://www.smlink.com/content.aspx?id=135/',
+ name => 'slmodem',
+ kernel_module => 1,
+ tools => {
+ test_file => '/usr/sbin/slmodemd',
+ },
+ device => '/dev/ttySL0',
+ post => sub {
+ my ($driver) = @_;
+ addVarsInSh("$::prefix/etc/sysconfig/slmodemd", { SLMODEMD_MODULE => $driver });
+ },
+ restart_service => "slmodemd",
+ },
+
+ {
+ name => 'sm56',
+ description => 'Motorola SM56 WinModem',
+ url => 'http://www.motorola.com/softmodem/driver.htm#linux',
+ kernel_module => {
+ package => 'sm56',
+ },
+ no_club => 1,
+ device => '/dev/sm56',
+ },
+);
+
+sub get_thirdparty_settings { \@thirdparty_settings }
+
+sub get_providers {
+ my $db_path = "/usr/share/apps/kppp/Provider";
+ #$in->do_pkgs->ensure_is_installed('kdenetwork-kppp-provider', $db_path);
+ my $separator = "|";
+ my %providers;
+ foreach (all($::prefix . $db_path)) {
+ s!_! !g;
+ my $country = $_;
+ my $t_country = translate($country);
+ my $country_root = $::prefix . $db_path . '/' . $country;
+ foreach (grep { $_ ne '.directory' } all($country_root)) {
+ my $path = $country_root . $_;
+ s/%([0-9]{3})/chr(int($1))/eg;
+ $providers{$t_country . $separator . $_} = { path => $path };
+ }
+ }
+ (\%providers, $separator);
+}
+
+1;
diff --git a/lib/network/connection/ppp.pm b/lib/network/connection/ppp.pm
new file mode 100644
index 0000000..d1db2b3
--- /dev/null
+++ b/lib/network/connection/ppp.pm
@@ -0,0 +1,138 @@
+package network::connection::ppp;
+
+use strict;
+use common;
+
+use base qw(network::connection);
+
+my %authentication_methods = (
+ script => N_("Script-based"),
+ pap => N_("PAP"),
+ terminal_ => N_("Terminal-based"),
+ chap => N_("CHAP"),
+ pap_chap => N_("PAP/CHAP"),
+);
+
+my @kppp_authentication_methods = qw(script pap terminal chap pap_chap);
+my @secrets_files = qw(pap-secrets chap-secrets);
+
+sub get_access_settings {
+ my ($self) = @_;
+ [
+ { label => N("Account Login (user name)"), val => \$self->{access}{login} },
+ { label => N("Account Password"), val => \$self->{access}{password}, hidden => 1 },
+ ];
+}
+
+sub get_secret {
+ my ($_self, $login) = @_;
+ foreach (@secrets_files) {
+ my $file = "$::prefix/etc/ppp/$_";
+ foreach (cat_($file)) {
+ my ($l, undef, $password) = split(' ');
+ if ($l && $password) {
+ s/^(['"]?)(.*)\1$/$2/ foreach $l, $password;
+ return $password if $l eq $login;
+ }
+ }
+ }
+}
+
+sub write_secrets {
+ my ($self) = @_;
+ foreach (@secrets_files) {
+ my $file = "$::prefix/etc/ppp/$_";
+ substInFile {
+ s/^'$self->{access}{login}'.*\n//;
+ $_ .= "\n'$self->{access}{login}' * '$self->{access}{password}' * \n" if eof;
+ } $file;
+ chmod 0600, $file;
+ }
+}
+
+sub get_options {
+ #- options: PAPNAME PEERDNS
+}
+
+sub get_tty_device { "/dev/modem" }
+
+sub build_ifcfg_settings {
+ my ($self) = @_;
+ my $modemport = $self->get_tty_device;
+ my $settings = put_in_hash($self->{settings}, {
+ if_($modemport, MODEMPORT => $modemport),
+ LINESPEED => "115200",
+ PERSIST => "yes",
+ DEBUG => "yes",
+ DEFROUTE => "yes",
+ });
+ $self->SUPER::build_ifcfg_settings($settings);
+}
+
+sub build_chat {
+ my ($self) = @_;
+ #- required access parameters:
+ #- dial_number
+ #- optional:
+ #- auth_method: key of %authentication_methods
+ #- login
+ #- password
+ #- at_commands: array ref of AT commands
+ (map { "ABORT $_" } "BUSY", "ERROR", "'NO CARRIER'", "'NO DIALTONE'", "'Invalid Login'", "'Login incorrect'", "VOICE", "'NO ANSWER'", "DELAYED", "'SIM PIN'"),
+ qq('' ATZ),
+ if_(ref $self->{access}{at_commands}, map { qq(OK-AT-OK '$_') } @{$self->{access}{at_commands}}),
+ qq(OK 'ATDT$self->{access}{dial_number}'),
+ qq(TIMEOUT 120),
+ qq(CONNECT ''),
+ if_(member($self->{access}{auth_method}, qw(script terminal)),
+ qq('ogin:--ogin:' '$self->{access}{login}'),
+ qq('ord:' '$self->{access}{password}')),
+ qq(TIMEOUT 5),
+ qq('~--' '');
+}
+
+sub write_chat {
+ my ($self) = @_;
+ my $interface = $self->get_interface;
+ my $chat_file = "/etc/sysconfig/network-scripts/chat-$interface";
+ output_with_perm($::prefix . $chat_file, 0755, join("\n", $self->build_chat, ''));
+}
+
+sub get_peer_default_options {
+ my ($_self) = @_;
+ qw(noauth defaultroute usepeerdns);
+}
+
+sub build_peer {
+ my ($self) = @_;
+ #- options:
+ #- init
+ #- connect
+ #- pty
+ #- plugin
+ if ($self->{access}{dial_number}) {
+ my $interface = $self->get_interface;
+ my $chat_file = "/etc/sysconfig/network-scripts/chat-$interface";
+ $self->{access}{peer}{connect} ||= qq("/usr/sbin/chat -v -f $chat_file");
+ }
+ $self->get_peer_default_options,
+ (map { if_($self->{access}{peer}{$_}, $_ . " " . $self->{access}{peer}{$_}) } qw(init connect pty plugin)),
+ if_($self->{access}{login}, qq(user "$self->{access}{login}"));
+}
+
+sub write_peer {
+ my ($self) = @_;
+ my $interface = $self->get_interface;
+ my $peer_file = "/etc/ppp/peers/$interface";
+ output_with_perm($::prefix . $peer_file, 0755, join("\n", $self->build_peer, ''));
+}
+
+sub write_settings {
+ my ($self) = @_;
+ $self->write_secrets if $self->{access}{login};
+ $self->write_chat if $self->{access}{dial_number};
+ $self->write_peer;
+ $self->network::connection::write_settings;
+}
+
+1;
diff --git a/lib/network/connection/providers/cellular.pm b/lib/network/connection/providers/cellular.pm
new file mode 100644
index 0000000..ef630b4
--- /dev/null
+++ b/lib/network/connection/providers/cellular.pm
@@ -0,0 +1,28 @@
+package network::connection::providers::cellular;
+
+use common;
+use utf8;
+
+# http://www.reqwireless.com/apns.html
+# http://wiki.mig33.com/mig33/show/apn
+# http://www.unlocks.co.uk/gprs_settings.php
+# http://www.opera.com/products/smartphone/docs/connect/
+# http://www.taniwha.org.uk/gprs.html
+
+our %data = (
+ N("France") . "|Orange Grand Public" => {
+ apn => "orange.fr",
+ login => "orange",
+ password => "orange",
+ },
+ N("France") . "|Orange Entreprises" => {
+ apn => "internet-entreprise",
+ login => "orange",
+ password => "orange",
+ },
+ N("France") . "|SFR" => {
+ apn => "websfr",
+ },
+);
+
+1;
diff --git a/lib/network/adsl_consts.pm b/lib/network/connection/providers/xdsl.pm
index c3cc03b..6956e1c 100644
--- a/lib/network/adsl_consts.pm
+++ b/lib/network/connection/providers/xdsl.pm
@@ -1,20 +1,23 @@
-package network::adsl_consts; # $Id$
+# -*- coding: utf-8 -*-
+package network::connection::providers::xdsl; # $Id: xdsl.pm 59309 2006-09-01 12:08:15Z tv $
# This should probably be splitted out into ldetect-lst as some provider db
-use vars qw(@ISA @EXPORT);
use common;
use utf8;
-@ISA = qw(Exporter);
-@EXPORT = qw(@adsl_data);
-
# Originally from :
# http://www.eagle-usb.org/article.php3?id_article=23
# http://www.sagem.com/web-modems/download/support-fast1000-fr.htm
# http://perso.wanadoo.fr/michel-m/protocolesfai.htm
+# Then other ISP found in :
+# http://www.adslayuda.com/Comtrend500+file-16.html
+
+# the output is provided in html at http://faq.eagle-usb.org/wakka.php?wiki=ListConfigADSL
+# this file should be put in /usr/share/eagle-usb/ for eagle-usb driver
+# or in /usr/lib/libDrakX/network/ as part of the drakxtools
-our %adsl_data = (
+our %data = (
## format chosen is the following :
# country|provider => { VPI, VCI_hexa, ... } all parameters
# country is automagically translated into LANG with N function
@@ -32,11 +35,11 @@ our %adsl_data = (
# 6 RFC2364 PPPoA VCmux
# see http://faq.eagle-usb.org/wakka.php?wiki=AdslDescription
# dns are provided for when !usepeerdns in peers config file
- # dnsServer2 dnsServer3 : main DNS
- # dnsServers_text : string with any valid DNS (when more than 2)
+ # dnsServers : array ref with any valid DNS (order matters)
# DOMAINNAME2 : used for search key in /etc/resolv.conf
# method : PPPoA, pppoe, static or dhcp
- # methods_all : all methods for connection with this ISP (when more than 1)
+ # login_format : e.g. fti/login for France Telecom
+ # encryption : for pppd connection, when encryption is supported
# modem : model of modem provided by ISP or tested with ISP
# please forward updates to http://forum.eagle-usb.org
# try to order alphabetically by country (in English) / ISP (local language)
@@ -48,19 +51,37 @@ our %adsl_data = (
vci => 23,
Encapsulation => 1,
method => 'pppoe',
- dnsServer2 => '82.101.136.29',
- dnsServer3 => '82.101.136.206',
+ dnsServers => [ qw(82.101.136.29 82.101.136.206) ],
+ },
+
+ N("Algeria") . "|Algerie Telecom (FAWRI)" =>
+ {
+ provider_id => 'DZ02',
+ vpi => 0,
+ vci => 26,
+ Encapsulation => 1,
+ method => 'pppoe',
+ dnsServers => [ qw(61.88.88.88 205.252.144.228) ],
},
N("Argentina") . "|Speedy" =>
{
provider_id => 'AR01',
- vpi => 1,
+ vpi => 8,
vci => 23,
Encapsulation => 1,
method => 'pppoe',
- dnsServer2 => '200.51.254.238',
- dnsServer3 => '200.51.209.22',
+ dnsServers => [ qw(200.51.254.238 200.51.209.22) ],
+ },
+
+ N("Argentina") . "|Arnet" =>
+ {
+ provider_id => 'AR02',
+ vpi => 8,
+ vci => 21,
+ Encapsulation => 1,
+ method => 'pppoe',
+ dnsServers => [ qw(200.45.191.35 200.45.191.40) ],
},
N("Austria") . "|Any" =>
@@ -90,6 +111,36 @@ our %adsl_data = (
method => 'pppoe',
},
+ N("Australia") . "|Arachnet" =>
+ {
+ provider_id => 'AU01',
+ url_tech => "http://www.ains.com.au/consumer/support/technical.htm",
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ method => 'pppoa',
+ },
+
+ N("Australia") . "|Speedstream On net" =>
+ {
+ provider_id => 'AU02',
+ url_tech => "http://www.ains.com.au/consumer/support/technical.htm",
+ vpi => 8,
+ vci => 22,
+ Encapsulation => 6,
+ method => 'pppoa',
+ },
+
+ N("Australia") . "|Speedstream Off net" =>
+ {
+ provider_id => 'AU03',
+ url_tech => "http://www.ains.com.au/consumer/support/technical.htm",
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 1,
+ method => 'pppoe',
+ },
+
N("Belgium") . "|ADSL Office" =>
{
provider_id => 'BE04',
@@ -106,8 +157,7 @@ our %adsl_data = (
vci => 23,
Encapsulation => 6,
method => 'pppoa',
- dnsServer2 => '212.35.2.1',
- dnsServer3 => '212.35.2.2',
+ dnsServers => [ qw(212.35.2.1 212.35.2.2 212.233.1.34 212.233.2.34) ],
DOMAINNAME2 => 'tiscali.be',
},
@@ -129,6 +179,15 @@ our %adsl_data = (
method => 'pppoa',
},
+ N("Belgium") . "|Scarlet ADSL" =>
+ {
+ provider_id => 'BE05',
+ vpi => 8,
+ vci => 20,
+ Encapsulation => 6,
+ method => 'pppoa',
+ },
+
N("Brazil") . "|Speedy/Telefonica" =>
{
provider_id => 'BR01',
@@ -136,8 +195,7 @@ our %adsl_data = (
vci => 23,
Encapsulation => 1,
method => 'pppoe',
- dnsServer2 => '200.204.0.10',
- dnsServer3 => '200.204.0.138',
+ dnsServers => [ qw(200.204.0.10 200.204.0.138) ],
},
N("Brazil") . "|Velox/Telemar" =>
@@ -365,23 +423,61 @@ our %adsl_data = (
method => 'pppoe',
},
- N("Czech Republic") . "|Cesky Telecom" =>
+ N("Czech Republic") . "|Cesky Telecom PPPoA" =>
{
provider_id => 'CZ01',
url_tech => 'http://www.telecom.cz/domacnosti/internet/pristupove_sluzby/broadband/vse_o_kz_a_moznostech_instalace.php',
vpi => 8,
- vci => 48,
+ vci => 30,
Encapsulation => 6,
method => 'pppoa',
},
+ N("Czech Republic") . "|Cesky Telecom PPPoE" =>
+ {
+ provider_id => 'CZ02',
+ url_tech => 'http://www.telecom.cz/zakaznicka_podpora/dokumenty_ke_stazeni/internet_expres.php',
+ vpi => 8,
+ vci => 30,
+ Encapsulation => 1,
+ method => 'pppoe',
+ },
+
N("Denmark") . "|Any" =>
{
provider_id => 'DK01',
vpi => 0,
vci => 65,
- method => 'pppoe',
Encapsulation => 3,
+ method => 'pppoe',
+ },
+
+ N("Denmark") . "|Cybercity" =>
+ {
+ provider_id => 'DK02',
+ vpi => 0,
+ vci => 23,
+ Encapsulation => 6,
+ method => 'pppoa',
+ },
+
+ N("Denmark") . "|Tiscali" =>
+ {
+ provider_id => 'DK03',
+ vpi => 0,
+ vci => 23,
+ Encapsulation => 6,
+ method => 'pppoa',
+ },
+
+ N("Egypt") . "|Raya Telecom" =>
+ {
+ provider_id => 'EG01',
+ vpi => 8,
+ vci => 50,
+ method => 'pppoa',
+ Encapsulation => 6,
+ dnsServers => [ qw(62.240.110.197 62.240.110.198) ],
},
N("Finland") . "|Sonera" =>
@@ -399,8 +495,20 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '213.228.0.23',
- dnsServer3 => '212.27.32.176',
+ CMVep => 'FR',
+ dnsServers => [ qw(213.228.0.23 212.27.32.176) ],
+ method => 'pppoa',
+ DOMAINNAME2 => 'free.fr',
+ },
+
+ N("France") . "|Free non dégroupé ADSL Max" =>
+ {
+ provider_id => 'FR11',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ CMVep => 'FR04',
+ dnsServers => [ qw(213.228.0.23 212.27.32.176) ],
method => 'pppoa',
DOMAINNAME2 => 'free.fr',
},
@@ -411,8 +519,8 @@ our %adsl_data = (
vpi => 8,
vci => 24,
Encapsulation => 4,
- dnsServer2 => '213.228.0.23',
- dnsServer3 => '212.27.32.176',
+ CMVep => 'FR04',
+ dnsServers => [ qw(213.228.0.23 212.27.32.176 213.228.0.68 212.27.32.176 212.27.32.177 212.27.39.2 212.27.39.1) ],
method => 'dhcp',
DOMAINNAME2 => 'free.fr',
},
@@ -423,8 +531,8 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '212.30.93.108',
- dnsServer3 => '212.203.124.146',
+ CMVep => 'FR',
+ dnsServers => [ qw(212.30.93.108 212.203.124.146 62.62.156.12 62.62.156.13) ],
method => 'pppoa',
},
@@ -434,9 +542,22 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '212.94.174.85',
- dnsServer3 => '212.94.174.86',
+ CMVep => 'FR',
+ dnsServers => [ qw(212.94.174.85 212.94.174.86) ],
+ method => 'pppoa',
+ login_format => 'login@cegetel.net',
+ },
+
+ N("France") . "|Cegetel ADSL Max 8 Mb" =>
+ {
+ provider_id => 'FR10',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ CMVep => 'FR10',
+ dnsServers => [ qw(212.94.174.85 212.94.174.86) ],
method => 'pppoa',
+ login_format => 'login@cegetel.net',
},
N("France") . "|Club-Internet" =>
@@ -445,8 +566,8 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '194.117.200.10',
- dnsServer3 => '194.117.200.15',
+ CMVep => 'FR',
+ dnsServers => [ qw(194.117.200.10 194.117.200.15) ],
method => 'pppoa',
DOMAINNAME2 => 'club-internet.fr',
},
@@ -457,9 +578,10 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '80.10.246.2',
- dnsServer3 => '80.10.246.129',
+ CMVep => 'FR',
+ dnsServers => [ qw(80.10.246.2 80.10.246.129) ],
method => 'pppoa',
+ login_format => 'fti/login',
DOMAINNAME2 => 'wanadoo.fr',
},
@@ -469,8 +591,8 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '212.151.136.242',
- dnsServer3 => '130.244.127.162',
+ CMVep => 'FR',
+ dnsServers => [ qw(212.151.136.242 130.244.127.162 212.151.136.246) ],
method => 'pppoa',
},
@@ -480,8 +602,8 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 5,
- dnsServer2 => '213.36.80.1',
- dnsServer3 => '213.36.80.2',
+ CMVep => 'FR',
+ dnsServers => [ qw(213.36.80.1 213.36.80.2) ],
method => 'pppoa',
},
@@ -491,8 +613,8 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '213.36.80.1',
- dnsServer3 => '213.36.80.2',
+ CMVep => 'FR',
+ dnsServers => [ qw(213.36.80.1 213.36.80.2) ],
method => 'pppoa',
},
@@ -511,8 +633,17 @@ our %adsl_data = (
vpi => 1,
vci => 20,
Encapsulation => 1,
- dnsServer2 => '195.20.224.234',
- dnsServer3 => '194.25.2.129',
+ dnsServers => [ qw(195.20.224.234 194.25.2.129) ],
+ method => 'pppoe',
+ },
+
+ N("Germany") . "|Alice DSL" =>
+ {
+ provider_id => 'DE03',
+ vpi => 1,
+ vci => 20,
+ Encapsulation => 1,
+ dnsServers => [ qw(213.191.73.65 213.191.74.20) ],
method => 'pppoe',
},
@@ -549,20 +680,34 @@ our %adsl_data = (
vpi => 8,
vci => 30,
Encapsulation => 6,
- dnsServer2 => '192.115.106.10',
- dnsServer3 => '192.115.106.11',
+ dnsServers => [ qw(192.115.106.10 192.115.106.11 192.115.106.35) ],
method => 'pppoa',
},
- N("Italy") . "|Libero.it" =>
+ N("India") . "|Any" =>
{
- provider_id => 'IT04',
- url_tech => 'http://internet.libero.it/assistenza/adsl/installazione_ass.phtml',
- vpi => 8,
+ provider_id => 'IN01',
+ vpi => 0,
+ vci => 20,
+ Encapsulation => 6,
+ method => 'pppoa',
+ },
+
+ N("Iceland") . "|Islandssimi" =>
+ {
+ provider_id => 'IS01',
+ vpi => 0,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '193.70.192.25',
- dnsServer3 => '193.70.152.25',
+ method => 'pppoa',
+ },
+
+ N("Iceland") . "|Landssimi" =>
+ {
+ provider_id => 'IS02',
+ vpi => 8,
+ vci => 30,
+ Encapsulation => 6,
method => 'pppoa',
},
@@ -572,8 +717,8 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '195.20.224.234',
- dnsServer3 => '194.25.2.129',
+ CMVep => 'IT',
+ dnsServers => [ qw(195.20.224.234 194.25.2.129) ],
method => 'pppoa',
},
@@ -583,6 +728,7 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 3,
+ CMVep => 'IT',
method => 'static',
},
@@ -592,9 +738,33 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '195.20.224.234',
- dnsServer3 => '194.25.2.129',
+ CMVep => 'IT',
+ dnsServers => [ qw(195.20.224.234 194.25.2.129) ],
+ method => 'pppoa',
+ },
+
+ N("Italy") . "|Libero.it" =>
+ {
+ provider_id => 'IT04',
+ url_tech => 'http://internet.libero.it/assistenza/adsl/installazione_ass.phtml',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ CMVep => 'IT',
+ dnsServers => [ qw(193.70.192.25 193.70.152.25) ],
+ method => 'pppoa',
+ },
+
+ N("Sri Lanka") . "|Srilanka Telecom" =>
+ {
+ provider_id => 'LK01',
+ url_tech => 'http://www.sltnet.lk',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ dnsServers => [ qw(203.115.0.1 203.115.0.18) ],
method => 'pppoa',
+ encryption => 1,
},
N("Lithuania") . "|Lietuvos Telekomas" =>
@@ -606,14 +776,34 @@ our %adsl_data = (
method => 'pppoe',
},
+ N("Mauritius") . "|wanadoo.mu" =>
+ {
+ provider_id => 'MU01',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ dnsServers => [ qw(202.123.2.6 202.123.2.11) ],
+ method => 'pppoa',
+ },
+
+ N("Mauritius") . "|Telecom Plus (Mauritius Telecom)" =>
+ {
+ provider_id => 'MU02',
+ url_tech => 'http://www.telecomplus.net',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ dnsServers => [ qw(202.123.1.6 202.123.1.11) ],
+ method => 'pppoa',
+ },
+
N("Morocco") . "|Maroc Telecom" =>
{
provider_id => 'MA01',
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '212.217.0.1',
- dnsServer3 => '212.217.0.12',
+ dnsServers => [ qw(212.217.0.1 212.217.0.12) ],
method => 'pppoa',
},
@@ -632,7 +822,7 @@ our %adsl_data = (
vpi => 0,
vci => 21,
Encapsulation => 3,
- method => 'dhcp',
+ method => 'pppoe',
},
N("Netherlands") . "|Tiscali" =>
@@ -640,8 +830,8 @@ our %adsl_data = (
provider_id => 'NL03',
vpi => 0,
vci => 22,
- Encapsulation => 3,
- method => 'dhcp',
+ Encapsulation => 1,
+ method => 'pppoe',
},
N("Netherlands") . "|Versatel" =>
@@ -650,54 +840,71 @@ our %adsl_data = (
vpi => 0,
vci => 20,
Encapsulation => 3,
- method => 'dhcp',
+ method => 'pppoe',
},
N("Norway") . "|Bluecom" =>
{
+ provider_id => 'NO01',
method => 'dhcp',
},
N("Norway") . "|Firstmile" =>
{
+ provider_id => 'NO02',
method => 'dhcp',
},
N("Norway") . "|NextGenTel" =>
{
+ provider_id => 'NO03',
method => 'dhcp',
},
N("Norway") . "|SSC" =>
{
+ provider_id => 'NO04',
method => 'dhcp',
},
N("Norway") . "|Tele2" =>
{
+ provider_id => 'NO05',
method => 'dhcp',
},
N("Norway") . "|Telenor ADSL" =>
{
+ provider_id => 'NO06',
method => 'PPPoE',
},
N("Norway") . "|Tiscali" =>
{
+ provider_id => 'NO07',
vpi => 8,
vci => 35,
method => 'dhcp',
},
+ N("Pakistan") . "|Micronet BroadBand" =>
+ {
+ provider_id => 'PK01',
+ vpi => 1,
+ vci => 20,
+ Encapsulation => 3,
+ dnsServers => [ qw(203.82.48.3 203.82.48.4) ],
+ method => 'pppoe',
+ encryption => 1,
+ },
+
N("Poland") . "|Telekomunikacja Polska (TPSA/neostrada)" =>
{
provider_id => 'PL01',
vpi => 0,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '194.204.152.34',
- dnsServer3 => '217.98.63.164',
+ dnsServers => [ qw(194.204.152.34 217.98.63.164) ],
method => 'pppoa',
},
@@ -708,8 +915,7 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 1,
- dnsServer2 => '195.114.181.130',
- dnsServer3 => '195.114.161.61',
+ dnsServers => [ qw(195.114.181.130 195.114.161.61) ],
method => 'pppoe',
},
@@ -727,13 +933,21 @@ our %adsl_data = (
provider_id => 'RU01',
url_tech => 'http://stream.ru/s-requirements',
vpi => 1,
- vci => 50,
+ vci => 32,
Encapsulation => 1,
- dnsServer2 => '212.188.4.10',
- dnsServer3 => '195.34.32.116',
+ dnsServers => [ qw(212.188.4.10 195.34.32.116) ],
method => 'pppoe',
},
-
+
+ N("Singapore") . "|Singnet" =>
+ {
+ provider_id => 'SG01',
+ vpi => 0,
+ vci => 64,
+ method => 'pppoa',
+ Encapsulation => 6,
+ },
+
N("Senegal") . "|Sonatel Multimedia Sentoo" =>
{
provider_id => 'SN01',
@@ -751,8 +965,7 @@ our %adsl_data = (
vci => 20,
method => 'pppoe',
Encapsulation => 1,
- dnsServer2 => '193.189.160.11',
- dnsServer3 => '193.189.160.12',
+ dnsServers => [ qw(193.189.160.11 193.189.160.12) ],
DOMAINNAME2 => 'siol.net',
},
@@ -762,9 +975,10 @@ our %adsl_data = (
vpi => 8,
vci => 20,
Encapsulation => 1,
- dnsServer2 => '80.58.32.33',
- dnsServer3 => '80.58.0.97',
+ CMVep => 'ES',
+ dnsServers => [ qw(80.58.32.33 80.58.0.97) ],
method => 'pppoe',
+ login_format => 'adslppp@telefonicanetpa / adslppp',
},
N("Spain") . "|Telefónica ip fija" =>
@@ -773,9 +987,10 @@ our %adsl_data = (
vpi => 8,
vci => 20,
Encapsulation => 3,
+ CMVep => 'ES',
+ dnsServers => [ qw(80.58.32.33 80.58.0.97) ],
method => 'static',
- dnsServer2 => '80.58.32.33',
- dnsServer3 => '80.58.0.97',
+ login_format => 'adslppp@telefonicanetpa / adslppp',
},
N("Spain") . "|Wanadoo/Eresmas Retevision" =>
@@ -784,9 +999,11 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 6,
- dnsServer2 => '80.58.0.33',
- dnsServer3 => '80.58.32.97',
+ CMVep => 'ES',
+ dnsServers => [ qw(80.58.0.33 80.58.32.97) ],
method => 'pppoa',
+ login_format => 'rtxxxxx@wanadooadsl',
+ encryption => 1,
},
N("Spain") . "|Wanadoo PPPoE" =>
@@ -795,6 +1012,7 @@ our %adsl_data = (
vpi => 8,
vci => 20,
Encapsulation => 1,
+ CMVep => 'ES',
method => 'pppoe',
},
@@ -804,6 +1022,7 @@ our %adsl_data = (
vpi => 8,
vci => 20,
Encapsulation => 3,
+ CMVep => 'ES',
method => 'static',
},
@@ -813,7 +1032,9 @@ our %adsl_data = (
vpi => 1,
vci => 20,
Encapsulation => 6,
+ CMVep => 'ES',
method => 'pppoa',
+ login_format => 'login@tiscali.es',
},
N("Spain") . "|Arrakis" =>
@@ -822,6 +1043,7 @@ our %adsl_data = (
vpi => 0,
vci => 23,
Encapsulation => 6,
+ CMVep => 'ES',
method => 'pppoa',
},
@@ -831,6 +1053,7 @@ our %adsl_data = (
vpi => 0,
vci => 23,
Encapsulation => 6,
+ CMVep => 'ES',
method => 'pppoa',
},
@@ -840,6 +1063,7 @@ our %adsl_data = (
vpi => 0,
vci => 21,
Encapsulation => 6,
+ CMVep => 'ES',
method => 'pppoa',
},
@@ -849,6 +1073,7 @@ our %adsl_data = (
vpi => 8,
vci => 20,
Encapsulation => 1,
+ CMVep => 'ES',
method => 'pppoe',
},
@@ -858,6 +1083,7 @@ our %adsl_data = (
vpi => 1,
vci => 21,
Encapsulation => 6,
+ CMVep => 'ES',
method => 'pppoa',
},
@@ -867,7 +1093,9 @@ our %adsl_data = (
vpi => 8,
vci => 20,
Encapsulation => 1,
+ CMVep => 'ES',
method => 'pppoe',
+ login_format => 'adXXXXXXXXX@yacomadsl',
},
N("Spain") . "|Ya.com static" =>
@@ -876,7 +1104,46 @@ our %adsl_data = (
vpi => 8,
vci => 20,
Encapsulation => 3,
+ CMVep => 'ES',
method => 'static',
+ login_format => 'adXXXXXXXXX@yacomadsl',
+ },
+
+ N("Spain") . "|Arsys" =>
+ {
+ provider_id => 'ES14',
+ vpi => 1,
+ vci => 21,
+ Encapsulation => 1,
+ CMVep => 'ES',
+ dnsServers => [ qw(217.76.128.4 217.76.129.4) ],
+ method => 'pppoe',
+ login_format => 'login@arsystel',
+ },
+
+ N("Spain") . "|Terra" =>
+ {
+ provider_id => 'ES15',
+ vpi => 8,
+ vci => 20,
+ Encapsulation => 1,
+ CMVep => 'ES',
+ dnsServers => [ qw(213.4.132.1 213.4.141.1) ],
+ method => 'pppoe',
+ login_format => 'login@terraadsl',
+ },
+
+ N("Spain") . "|Jazztel" =>
+ {
+ provider_id => 'ES16',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 6,
+ CMVep => 'ES',
+ dnsServers => [ qw(62.14.63.145 62.14.2.1) ],
+ method => 'pppoa',
+ login_format => 'username@adsl',
+ encryption => 1,
},
N("Sweden") . "|Telia" =>
@@ -903,12 +1170,11 @@ our %adsl_data = (
vpi => 8,
vci => 23,
Encapsulation => 5,
- dnsServer2 => '195.186.4.108',
- dnsServer3 => '195.186.4.109',
+ dnsServers => [ qw(195.186.4.108 195.186.4.109) ],
method => 'pppoa',
},
- N("Switzerland") . "|Tiscali.ch" =>
+ N("Switzerland") . "|VTX Datacomm (ex-Tiscali)" =>
{
provider_id => 'CH03',
vpi => 8,
@@ -923,21 +1189,32 @@ our %adsl_data = (
vpi => 0,
vci => 64,
Encapsulation => 1,
- dnsServer2 => '203.144.225.242',
- dnsServer3 => '203.144.225.72',
+ dnsServers => [ qw(203.144.225.242 203.144.225.72 203.144.223.66) ],
method => 'pppoe',
},
N("Tunisia") . "|Planet.tn" =>
{
- provider_id => 'TH01',
+ provider_id => 'TU01',
url_tech => 'http://www.planet.tn/',
vpi => 0,
vci => 23,
Encapsulation => 5,
- dnsServer2 => '193.95.93.77',
- dnsServer3 => '193.95.66.10',
+ dnsServers => [ qw(193.95.93.77 193.95.66.10) ],
+ method => 'pppoe',
+ },
+
+ N("Turkey") . "|TTnet" =>
+ {
+ provider_id => 'TR01',
+ url_tech => 'http://www.ttnet.net.tr',
+ vpi => 8,
+ vci => 23,
+ Encapsulation => 1,
+ dnsServers => [ qw(195.175.37.14 195.175.37.69) ],
method => 'pppoe',
+ encryption => 1,
+ login_format => 'login@ttnet',
},
N("United Arab Emirates") . "|Etisalat" =>
@@ -946,8 +1223,7 @@ our %adsl_data = (
vpi => 0,
vci => 32,
Encapsulation => 5,
- dnsServer2 => '213.42.20.20',
- dnsServer3 => '195.229.241.222',
+ dnsServers => [ qw(213.42.20.20 195.229.241.222) ],
method => 'pppoa',
},
@@ -957,8 +1233,7 @@ our %adsl_data = (
vpi => 0,
vci => 26,
Encapsulation => 6,
- dnsServer2 => '212.74.112.66',
- dnsServer3 => '212.74.112.67',
+ dnsServers => [ qw(212.74.112.66 212.74.112.67) ],
method => 'pppoa',
},
@@ -968,12 +1243,10 @@ our %adsl_data = (
vpi => 0,
vci => 26,
Encapsulation => 6,
- dnsServer2 => '194.74.65.69',
- dnsServer3 => '194.72.9.38',
+ dnsServers => [ qw(194.74.65.69 194.72.9.38) ],
method => 'pppoa',
},
);
-
1;
diff --git a/lib/network/connection/wireless.pm b/lib/network/connection/wireless.pm
new file mode 100644
index 0000000..df1a210
--- /dev/null
+++ b/lib/network/connection/wireless.pm
@@ -0,0 +1,744 @@
+package network::connection::wireless;
+
+use strict;
+use common;
+
+use base qw(network::connection::ethernet);
+
+use strict;
+use common;
+
+sub get_type_name() { N("Wireless") }
+sub get_type_icon() { 'wireless-24.png' }
+sub get_devices {
+ my ($_class, %options) = @_;
+ require detect_devices;
+ my @devices = detect_devices::probe_category('network/wireless');
+ my @wireless = grep { detect_devices::is_wireless_interface($_) } detect_devices::get_lan_interfaces();
+ my @all_devices = (@devices, network::connection::ethernet::get_unlisted_devices(\@wireless, \@devices));
+ foreach (@all_devices) {
+ my $interface = network::connection::ethernet::device_to_interface($_) or next;
+ my $driver = network::connection::ethernet::interface_to_driver($interface) or next;
+ $_->{driver} = $driver if $driver;
+ }
+ @all_devices,
+ if_(!$options{automatic_only}, {
+ driver => 'ndiswrapper',
+ description => N("Use a Windows driver (with ndiswrapper)"),
+ });
+}
+
+sub handles_ifcfg {
+ my ($_class, $ifcfg) = @_;
+ require detect_devices;
+ detect_devices::is_wireless_interface($ifcfg->{DEVICE}) || exists $ifcfg->{WIRELESS_MODE};
+}
+
+sub get_metric { 35 }
+
+#- class attributes:
+#- network: ID of the selected network
+
+our %wireless_enc_modes = (
+ none => N_("None"),
+ open => N_("Open WEP"),
+ restricted => N_("Restricted WEP"),
+ 'wpa-psk' => N_("WPA Pre-Shared Key"),
+);
+
+my @thirdparty_settings = (
+ {
+ name => 'zd1201',
+ description => 'ZyDAS ZD1201',
+ url => 'http://linux-lc100020.sourceforge.net/',
+ firmware => {
+ test_file => 'zd1201*.fw',
+ },
+ },
+
+ (map {
+ {
+ name => "ipw${_}",
+ description => "Intel(R) PRO/Wireless ${_}",
+ url => "http://ipw${_}.sourceforge.net/",
+ firmware => {
+ url => "http://ipw${_}.sourceforge.net/firmware.php",
+ test_file => "ipw$_-*.fw",
+ },
+ };
+ } (2100, 2200)),
+
+ {
+ name => "ipw3945",
+ description => "Intel(R) PRO/Wireless 3945",
+ url => "http://ipw3945.sourceforge.net/",
+ firmware => {
+ package => "ipw3945-ucode",
+ test_file => "ipw3945.ucode",
+ },
+ tools => {
+ package => "ipw3945d",
+ test_file => '/usr/sbin/ipw3945d',
+ },
+ },
+
+ {
+ name => 'prism54',
+ description => 'Prism GT / Prism Duette / Prism Indigo Chipsets',
+ url => 'http://prism54.org/',
+ firmware => {
+ url => 'http://prism54.org/~mcgrof/firmware/',
+ test_file => "isl38*",
+ },
+ },
+
+ {
+ name => 'atmel',
+ matching => [ qw(at76_usb atmel_cs atmel_pci) ],
+ description => 'Atmel at76c50x cards',
+ url => 'http://thekelleys.org.uk/atmel/',
+ firmware => {
+ test_file => 'atmel_at76c50*',
+ },
+ links => 'http://at76c503a.berlios.de/',
+ },
+
+ {
+ name => 'madwifi',
+ matching => 'ath_pci',
+ description => 'Multiband Atheros Driver for WiFi',
+ url => 'http://madwifi.org/',
+ kernel_module => 1,
+ tools => {
+ optional => 1,
+ test_file => '/usr/bin/athstats',
+ },
+ },
+
+ {
+ name => 'prism2',
+ matching => qr/^prism2_/,
+ description => 'Prism2 based cards',
+ tools => {
+ package => 'prism2-utils',
+ test_file => '/sbin/wlanctl-ng',
+ },
+ },
+
+ {
+ name => 'zd1211',
+ matching => 'zd1211rw',
+ description => 'ZD1211 chip',
+ firmware => {
+ url => 'http://sourceforge.net/projects/zd1211/',
+ test_file => 'zd1211/zd1211_*',
+ },
+ },
+
+ {
+ name => 'bcm43xx',
+ description => 'Broadcom bcm43xx wireless chips',
+ url => 'http://bcm43xx.berlios.de/',
+ firmware => {
+ test_file => 'bcm43xx_microcode*.fw',
+ extract => {
+ name => 'bcm43xx-fwcutter',
+ test_file => '/usr/bin/bcm43xx-fwcutter',
+ windows_source => 'bcmwl5.sys',
+ default_source => 'bcmwl5.sys',
+ run => sub {
+ my ($file) = @_;
+ run_program::rooted($::prefix, '/usr/bin/bcm43xx-fwcutter',
+ '-w', $network::thirdparty::firmware_directory, $file);
+ },
+ },
+ },
+ },
+
+ {
+ name => 'acx100',
+ matching => [ qw(acx-pci acx-usb) ],
+ description => 'ACX100/ACX111/TNETW1450',
+ firmware => {
+ url => 'http://acx100.sourceforge.net/wiki/Firmware',
+ test_file => 'tiacx1*',
+ no_package => 1,
+ },
+ },
+
+ {
+ name => 'ndiswrapper',
+ description => 'Wireless device using ndiswrapper (windows drivers)',
+ tools => {
+ test_file => '/usr/sbin/ndiswrapper',
+ },
+ firmware => {
+ user_install => sub {
+ my ($settings, $in) = @_;
+ require network::ndiswrapper;
+ $settings->{device} = network::ndiswrapper::select_device($in) or return;
+ $settings->{device}{driver} = $settings->{name};
+ network::ndiswrapper::setup_device($in, $settings->{device});
+ },
+ url => 'http://ndiswrapper.sourceforge.net/mediawiki/index.php/List',
+ explanations => N_("Firmware files are required for this device."),
+ no_package => 1,
+ },
+ },
+
+ {
+ name => 'rt61',
+ description => 'Ralink RT61 802.11abg WLAN',
+ firmware => {
+ url => 'http://rt2x00.serialmonkey.com/',
+ test_file => 'rt2661.bin',
+ },
+ },
+
+ {
+ name => 'rt73',
+ description => 'Ralink RT73 802.11abg WLAN',
+ firmware => {
+ url => 'http://rt2x00.serialmonkey.com/',
+ test_file => 'rt73.bin',
+ },
+ },
+
+);
+
+sub get_packages { 'wireless-tools' }
+
+sub get_thirdparty_settings() {
+ \@thirdparty_settings;
+}
+
+sub setup_thirdparty {
+ my ($self, $in) = @_;
+ require network::rfswitch;
+ network::rfswitch::configure();
+ if ($self->get_driver eq 'ndiswrapper') {
+ require network::ndiswrapper;
+ my @devices = map { network::ndiswrapper::present_devices($_) } network::ndiswrapper::installed_drivers();
+ return {} if member($self->{device}, @devices) && network::ndiswrapper::find_interface($self->{device});
+ }
+ my $thirdparty = $self->SUPER::setup_thirdparty($in);
+ my $driver = $self->get_driver;
+ if ($self->{thirdparty} && $driver eq 'ipw3945' && !$self->rf_killed && !$self->SUPER::check_device) {
+ log::explanations("Reloading module $driver");
+ eval { modules::unload($driver) };
+ eval { modules::load($driver) };
+ }
+ $thirdparty;
+}
+
+sub rf_killed {
+ my ($self) = @_;
+ if ($self->{device}{sysfs_device}) {
+ my $rf_kill_path = $self->{device}{sysfs_device} . "/rf_kill";
+ if (-e $rf_kill_path) {
+ my $rf_kill = chomp_(cat_($rf_kill_path));
+ #- for ipw drivers, 0 means no RF kill switch
+ return $rf_kill != 0;
+ }
+ }
+ undef;
+}
+
+sub check_device {
+ my ($self) = @_;
+ if ($self->rf_killed) {
+ $self->{device}{error} = N("Your wireless card is disabled, please enable the wireless switch (RF kill switch) first.");
+ return 0;
+ }
+ return $self->SUPER::check_device;
+}
+
+sub load_interface_settings {
+ my ($self) = @_;
+ $self->SUPER::load_interface_settings;
+}
+
+sub get_networks {
+ my ($self) = @_;
+ require network::monitor;
+ ($self->{networks}, $self->{control}{roaming}) = network::monitor::list_wireless(undef, $self->get_interface);
+ $self->{networks};
+}
+
+sub guess_network {
+ my ($_self) = @_;
+ #- FIXME: try to find the AP matching $self->{ifcfg}{WIRELESS_ESSID};
+}
+
+sub get_network_ifcfg {
+ my ($ssid) = @_;
+ require network::network;
+ my $file = $::prefix . $network::network::wireless_d . '/' . $ssid;
+ -f $file && { getVarsFromSh($file) };
+}
+
+sub guess_network_access_settings {
+ my ($self) = @_;
+
+ my $ifcfg;
+ my $network = $self->get_selected_network;
+ $ifcfg = $network ?
+ get_network_ifcfg($network->{ap}) || get_network_ifcfg($network->{essid}) :
+ $self->{ifcfg};
+ $ifcfg ||= {};
+
+ $self->{access}{network}{essid} = $network && $network->{essid} || $ifcfg->{WIRELESS_ESSID} || !$network && "any";
+ ($self->{access}{network}{key}, my $restricted) = get_wep_key_from_iwconfig($ifcfg->{WIRELESS_ENC_KEY});
+ $self->{access}{network}{encryption} =
+ $network && $network->{flags} =~ /wpa/i ?
+ 'wpa-psk' :
+ $network && $network->{flags} =~ /wep/i || $self->{access}{network}{key} ?
+ ($restricted ? 'restricted' : 'open') :
+ 'none';
+
+ undef $self->{ifcfg}{WIRELESS_IWPRIV} if is_old_rt2x00($self->get_driver) && $self->{ifcfg}{WIRELESS_IWPRIV} =~ /WPAPSK/;
+
+ $self->{control}{roaming} = exists $self->{ifcfg}{WIRELESS_WPA_DRIVER} && !is_old_rt2x00($self->get_driver);
+
+ $self->{access}{network}{mode} =
+ $network && $network->{mode} ||
+ $ifcfg->{WIRELESS_MODE} ||
+ 'Managed';
+}
+
+sub get_network_access_settings_label { N("Wireless settings") }
+
+sub get_network_access_settings {
+ my ($self) = @_;
+ [
+ { label => N("Operating Mode"), val => \$self->{access}{network}{mode},
+ list => [ N_("Ad-hoc"), N_("Managed"), N_("Master"), N_("Repeater"), N_("Secondary"), N_("Auto") ],
+ format => \&translate,
+ },
+ { label => N("Network name (ESSID)"), val => \$self->{access}{network}{essid},
+ disabled => sub { my $network = $self->get_selected_network; $network && $network->{essid} } },
+ { label => N("Encryption mode"), val => \$self->{access}{network}{encryption}, list => [ keys %wireless_enc_modes ],
+ sort => 1, format => sub { translate($wireless_enc_modes{$_[0]}) } },
+ { label => N("Encryption key"), val => \$self->{access}{network}{key},
+ disabled => sub { $self->{access}{network}{encryption} eq 'none' } },
+ { label => N("Network ID"), val => \$self->{ifcfg}{WIRELESS_NWID}, advanced => 1 },
+ { label => N("Operating frequency"), val => \$self->{ifcfg}{WIRELESS_FREQ}, advanced => 1 },
+ { label => N("Sensitivity threshold"), val => \$self->{ifcfg}{WIRELESS_SENS}, advanced => 1 },
+ { label => N("Bitrate (in b/s)"), val => \$self->{ifcfg}{WIRELESS_RATE}, advanced => 1 },
+ { label => N("RTS/CTS"), val => \$self->{ifcfg}{WIRELESS_RTS}, advanced => 1,
+ help => N("RTS/CTS adds a handshake before each packet transmission to make sure that the
+channel is clear. This adds overhead, but increase performance in case of hidden
+nodes or large number of active nodes. This parameter sets the size of the
+smallest packet for which the node sends RTS, a value equal to the maximum
+packet size disable the scheme. You may also set this parameter to auto, fixed
+or off.")
+ },
+ { label => N("Fragmentation"), val => \$self->{ifcfg}{WIRELESS_FRAG}, advanced => 1 },
+ { label => N("iwconfig command extra arguments"), val => \$self->{ifcfg}{WIRELESS_IWCONFIG}, advanced => 1,
+ help => N("Here, one can configure some extra wireless parameters such as:
+ap, channel, commit, enc, power, retry, sens, txpower (nick is already set as the hostname).
+
+See iwconfig(8) man page for further information."),
+ },
+ { label =>
+ #-PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+ N("iwspy command extra arguments"), val => \$self->{ifcfg}{WIRELESS_IWSPY}, advanced => 1,
+ help => N("iwspy is used to set a list of addresses in a wireless network
+interface and to read back quality of link information for each of those.
+
+This information is the same as the one available in /proc/net/wireless :
+quality of the link, signal strength and noise level.
+
+See iwpspy(8) man page for further information."),
+ },
+ { label => N("iwpriv command extra arguments"), val => \$self->{ifcfg}{WIRELESS_IWPRIV}, advanced => 1,
+ disabled => sub { $self->need_rt2x00_iwpriv },
+ help => N("iwpriv enable to set up optionals (private) parameters of a wireless network
+interface.
+
+iwpriv deals with parameters and setting specific to each driver (as opposed to
+iwconfig which deals with generic ones).
+
+In theory, the documentation of each device driver should indicate how to use
+those interface specific commands and their effect.
+
+See iwpriv(8) man page for further information."),
+ },
+ ];
+}
+
+sub check_network_access_settings {
+ my ($self) = @_;
+
+ if ($self->{access}{network}{encryption} ne 'none' && !$self->{access}{network}{key}) {
+ $self->{network_access}{error}{message} = N("An encryption key is required.");
+ $self->{network_access}{error}{field} = \$self->{access}{network}{key};
+ return 0;
+ }
+
+ if ($self->{ifcfg}{WIRELESS_FREQ} && $self->{ifcfg}{WIRELESS_FREQ} !~ /[0-9.]*[kGM]/) {
+ $self->{network_access}{error}{message} = N("Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz frequency), or add enough '0' (zeroes).");
+ $self->{network_access}{error}{field} = \$self->{ifcfg}{WIRELESS_FREQ};
+ return 0;
+ }
+
+ if ($self->{ifcfg}{WIRELESS_RATE} && $self->{ifcfg}{WIRELESS_RATE} !~ /[0-9.]*[kGM]/) {
+ $self->{network_access}{error}{message} = N("Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add enough '0' (zeroes).");
+ $self->{network_access}{error}{field} = \$self->{ifcfg}{WIRELESS_RATE};
+ return 0;
+ }
+
+ return 1;
+}
+
+sub get_control_settings {
+ my ($self) = @_;
+ [
+ @{$self->SUPER::get_control_settings},
+ { text => N("Allow access point roaming"), val => \$self->{control}{roaming}, type => "bool",
+ disabled => sub { is_wpa_supplicant_blacklisted($self->get_driver) } },
+ ];
+}
+
+sub need_wpa_supplicant {
+ my ($self) = @_;
+ ($self->{control}{roaming} || $self->{access}{network}{encryption} eq 'wpa-psk') && !is_old_rt2x00($self->get_driver);
+}
+
+sub install_packages {
+ my ($self, $in) = @_;
+ if ($self->need_wpa_supplicant) {
+ $in->do_pkgs->ensure_is_installed('wpa_supplicant', '/usr/sbin/wpa_supplicant') or return;
+ }
+ $self->SUPER::install_packages($in);
+}
+
+
+sub build_ifcfg_settings {
+ my ($self) = @_;
+ my $settings = {
+ WIRELESS_MODE => $self->{access}{network}{mode},
+ if_($self->need_wpa_supplicant,
+ WIRELESS_WPA_DRIVER => wpa_supplicant_get_driver($self->get_driver),
+ MII_NOT_SUPPORTED => 'no',
+ ),
+ WIRELESS_ESSID => $self->{access}{network}{essid},
+ if_($self->{access}{network}{encryption} ne 'none',
+ WIRELESS_ENC_KEY => convert_wep_key_for_iwconfig($self->{access}{network}{key}, $self->{access}{network}{encryption} eq 'restricted')),
+ if_($self->need_rt2x00_iwpriv,
+ #- use iwpriv for WPA with rt2400/rt2500 drivers, they don't plan to support wpa_supplicant
+ WIRELESS_IWPRIV => qq(set AuthMode=WPAPSK
+set EncrypType=TKIP
+set SSID=$self->{access}{network}{essid}
+set WPAPSK="$self->{access}{network}{key}"
+set TxRate=0)),
+ (map { $_ => $self->{ifcfg}{$_} }
+ qw(WIRELESS_NWID WIRELESS_FREQ WIRELESS_SENS WIRELESS_RATE WIRELESS_RTS WIRELESS_FRAG WIRELESS_IWCONFIG WIRELESS_IWSPY), if_(!$self->need_rt2x00_iwpriv, 'WIRELESS_IWPRIV')),
+ };
+ $self->SUPER::build_ifcfg_settings($settings);
+}
+
+sub write_settings {
+ my ($self, $o_net, $o_modules_conf) = @_;
+
+ wpa_supplicant_add_network($self->{access}{network}{essid}, $self->{access}{network}{encryption}, $self->{access}{network}{key}, $self->{access}{network}{mode}) if $self->need_wpa_supplicant;
+
+ wlan_ng_configure($self->{access}{network}{essid}, $self->{access}{network}{key}, $self->get_interface, $self->get_driver) if $self->{thirdparty}{name} eq 'prism2';
+
+ my $network = $self->get_selected_network;
+ network::network::write_wireless_conf($_, $self->build_ifcfg_settings) foreach
+ grep { $_ } ($network ? $network->{ap} : ()), $self->{access}{network}{essid};
+
+ $self->SUPER::write_settings($o_net, $o_modules_conf);
+}
+
+sub network_is_configured {
+ my ($self, $network) = @_;
+ if ($self->{control}{roaming}) {
+ return defined $network->{id};
+ } else {
+ my $wireless_ifcfg = get_network_ifcfg($network->{ap}) || defined $network->{essid} && get_network_ifcfg($network->{essid});
+ return $wireless_ifcfg;
+ }
+}
+
+sub selected_network_is_configured {
+ my ($self) = @_;
+
+ my $network = $self->get_selected_network or return;
+ $self->network_is_configured($network);
+}
+
+sub prepare_connection {
+ my ($self) = @_;
+ if ($self->{control}{roaming}) {
+ #- this should be handled by the monitoring daemon instead
+ run_program::run('/usr/sbin/wpa_cli', 'reconfigure');
+ sleep 2;
+ }
+}
+
+sub connect {
+ my ($self, $_in, $net) = @_;
+
+ $self->SUPER::connect;
+
+ if ($self->{control}{roaming}) {
+ my $network = $self->get_selected_network;
+ if ($network && defined $network->{id}) {
+ eval { $net->{monitor}->select_network($network->{id}) };
+ return !$@;
+ }
+ }
+}
+
+sub get_status_message {
+ my ($self, $status) = @_;
+ my $interface = $self->get_interface;
+ my ($current_essid, $current_ap) = get_access_point($interface);
+ my $network = $current_essid || $current_ap && "[$current_ap]";
+ {
+ link_up => N("Associated to wireless network \"%s\" on interface %s", $network, $interface),
+ link_down => N("Lost association to wireless network on interface %s", $interface),
+ }->{$status} || $self->SUPER::get_status_message($status);
+}
+
+
+
+my $wpa_supplicant_conf = "/etc/wpa_supplicant.conf";
+
+sub get_access_point {
+ my ($intf) = @_;
+ (chomp_(`/sbin/iwgetid -r $intf 2>/dev/null`), lc(chomp_(`/sbin/iwgetid -r -a $intf 2>/dev/null`)));
+}
+
+sub is_old_rt2x00 {
+ my ($module) = @_;
+ member($module, qw(rt2400 rt2500 rt2570 rt61 rt73));
+}
+
+sub is_wpa_supplicant_blacklisted {
+ my ($module) = @_;
+ is_old_rt2x00($module);
+}
+
+sub need_rt2x00_iwpriv {
+ my ($self) = @_;
+ is_old_rt2x00($self->get_driver) && $self->{access}{network}{encryption} eq 'wpa-psk';
+}
+
+sub get_hex_key {
+ my ($key) = @_;
+ if ($key =~ /^([[:xdigit:]]{4}[\:-]?)+[[:xdigit:]]{2,}$/) {
+ $key =~ s/[\:-]//g;
+ return lc($key);
+ }
+}
+
+sub convert_wep_key_for_iwconfig {
+ #- 5 or 13 characters, consider the key as ASCII and prepend "s:"
+ #- else consider the key as hexadecimal, do not strip dashes
+ #- always quote the key as string
+ my ($real_key, $restricted) = @_;
+ my $key = get_hex_key($real_key) || "s:$real_key";
+ $restricted ? "restricted $key" : "open $key";
+}
+
+sub convert_wep_key_for_wpa_supplicant {
+ my ($key) = @_;
+ get_hex_key($key) || qq("$key");
+}
+
+sub get_wep_key_from_iwconfig {
+ #- strip "s:" if the key is 5 or 13 characters (ASCII)
+ #- else the key as hexadecimal, do not modify
+ my ($key) = @_;
+ my ($mode, $real_key) = $key =~ /^(?:(open|restricted)\s+)?(.*)$/;
+ $real_key =~ s/^s://;
+ ($real_key, $mode eq 'restricted');
+}
+
+sub convert_key_for_wpa_supplicant {
+ my ($key) = @_;
+ length($key) == 64 && get_hex_key($key) || qq("$key");
+}
+
+#- FIXME: to be improved (quotes, comments) and moved in common files
+sub wlan_ng_update_vars {
+ my ($file, $vars) = @_;
+ substInFile {
+ while (my ($key, $value) = each(%$vars)) {
+ s/^#?\Q$key\E=(?:"[^#]*"|[^#\s]*)(\s*#.*)?/$key=$value$1/ and delete $vars->{$key};
+ }
+ $_ .= join('', map { "$_=$vars->{$_}\n" } keys %$vars) if eof;
+ } $file;
+}
+
+sub wlan_ng_configure {
+ my ($essid, $key, $device, $module) = @_;
+ my $wlan_conf_file = "$::prefix/etc/wlan/wlan.conf";
+ my @wlan_devices = split(/ /, (cat_($wlan_conf_file) =~ /^WLAN_DEVICES="(.*)"/m)[0]);
+ push @wlan_devices, $device unless member($device, @wlan_devices);
+ #- enable device and make it use the choosen ESSID
+ wlan_ng_update_vars($wlan_conf_file,
+ {
+ WLAN_DEVICES => qq("@wlan_devices"),
+ "SSID_$device" => qq("$essid"),
+ "ENABLE_$device" => "y"
+ });
+
+ my $wlan_ssid_file = "$::prefix/etc/wlan/wlancfg-$essid";
+ #- copy default settings for this ESSID if config file does not exist
+ -f $wlan_ssid_file or cp_f("$::prefix/etc/wlan/wlancfg-DEFAULT", $wlan_ssid_file);
+
+ #- enable/disable encryption
+ wlan_ng_update_vars($wlan_ssid_file,
+ {
+ (map { $_ => $key ? "true" : "false" } qw(lnxreq_hostWEPEncrypt lnxreq_hostWEPDecrypt dot11PrivacyInvoked dot11ExcludeUnencrypted)),
+ AuthType => $key ? qq("sharedkey") : qq("opensystem"),
+ if_($key,
+ dot11WEPDefaultKeyID => 0,
+ dot11WEPDefaultKey0 => qq("$key")
+ )
+ });
+ #- hide settings for non-root users
+ chmod 0600, $wlan_conf_file;
+ chmod 0600, $wlan_ssid_file;
+
+ #- apply settings on wlan interface
+ require services;
+ services::restart($module eq 'prism2_cs' ? 'pcmcia' : 'wlan');
+}
+
+sub wpa_supplicant_get_driver {
+ my ($module) = @_;
+ $module =~ /^hostap_/ ? "hostap" :
+ $module eq "prism54" ? "prism54" :
+ $module =~ /^ath_/ ? "madwifi" :
+ $module =~ /^at76c50|atmel_/ ? "atmel" :
+ "wext";
+}
+
+sub wpa_supplicant_add_network {
+ my ($essid, $enc_mode, $key, $mode) = @_;
+ my $conf = wpa_supplicant_read_conf();
+ my $network = {
+ ssid => qq("$essid"),
+ scan_ssid => 1,
+ };
+
+ if ($enc_mode eq 'wpa-psk') {
+ $network->{psk} = convert_key_for_wpa_supplicant($key);
+ } else {
+ $network->{key_mgmt} = 'NONE';
+ $network->{mode} = to_bool($mode eq 'Ad-Hoc');
+ if (member($enc_mode, qw(open restricted))) {
+ put_in_hash($network, {
+ wep_key0 => convert_wep_key_for_wpa_supplicant($key),
+ wep_tx_keyidx => 0,
+ auth_alg => $enc_mode eq 'restricted' ? 'SHARED' : 'OPEN',
+ });
+ }
+ }
+
+ @$conf = difference2($conf, [ wpa_supplicant_find_similar($conf, $network) ]);
+ push @$conf, $network;
+ wpa_supplicant_write_conf($conf);
+}
+
+sub wpa_supplicant_find_similar {
+ my ($conf, $network) = @_;
+ grep {
+ my $current = $_;
+ any { exists $network->{$_} && $network->{$_} eq $current->{$_} } qw(ssid bssid);
+ } @$conf;
+}
+
+sub wpa_supplicant_read_conf() {
+ my @conf;
+ my $network;
+ foreach (cat_($::prefix . $wpa_supplicant_conf)) {
+ if ($network) {
+ #- in a "network = {}" block
+ if (/^\s*(\w+)=(.*?)(?:\s*#.*)?$/) {
+ $network->{$1} = $2;
+ } elsif (/^\}/) {
+ #- end of network block
+ push @conf, $network;
+ undef $network;
+ }
+ } elsif (/^\s*network={/) {
+ #- beginning of a new network block
+ $network = {};
+ }
+ }
+ \@conf;
+}
+
+sub wpa_supplicant_write_conf {
+ my ($conf) = @_;
+ my $buf;
+ my @conf = @$conf;
+ my $network;
+ foreach (cat_($::prefix . $wpa_supplicant_conf)) {
+ if ($network) {
+ #- in a "network = {}" block
+ if (/^\s*(\w+)=(.*)$/) {
+ push @{$network->{entries}}, { key => $1, value => $2 };
+ member($1, qw(ssid bssid)) and $network->{$1} = $2;
+ } elsif (/^\}/) {
+ #- end of network block, write it
+ $buf .= "network={$network->{comment}\n";
+
+ my $new_network = first(wpa_supplicant_find_similar(\@conf, $network));
+ foreach (@{$network->{entries}}) {
+ my $key = $_->{key};
+ if ($new_network) {
+ #- do not write entry if not provided in the new network
+ exists $new_network->{$key} or next;
+ #- update value from the new network
+ $_->{value} = delete $new_network->{$key};
+ }
+ $buf .= " ";
+ $buf .= "$key=$_->{value}" if $key;
+ $buf .= "$_->{comment}\n";
+ }
+ if ($new_network) {
+ #- write new keys
+ while (my ($key, $value) = each(%$new_network)) {
+ $buf .= " $key=$value\n";
+ }
+ }
+ $buf .= "}\n";
+ $new_network and @conf = grep { $_ != $new_network } @conf;
+ undef $network;
+ } else {
+ #- unrecognized, keep it anyway
+ push @{$network->{entries}}, { comment => $_ };
+ }
+ } else {
+ if (/^\s*network={/) {
+ #- beginning of a new network block
+ $network = {};
+ } else {
+ #- keep other options, comments
+ $buf .= $_;
+ }
+ }
+ }
+
+ #- write remaining networks
+ foreach (@conf) {
+ $buf .= "\nnetwork={\n";
+ while (my ($key, $value) = each(%$_)) {
+ $buf .= " $key=$value\n";
+ }
+ $buf .= "}\n";
+ }
+
+ output($::prefix . $wpa_supplicant_conf, $buf);
+ #- hide keys for non-root users
+ chmod 0600, $::prefix . $wpa_supplicant_conf;
+}
+
+1;
diff --git a/lib/network/connection/xdsl.pm b/lib/network/connection/xdsl.pm
new file mode 100644
index 0000000..337d4f7
--- /dev/null
+++ b/lib/network/connection/xdsl.pm
@@ -0,0 +1,375 @@
+package network::connection::xdsl;
+
+use base qw(network::connection::ppp);
+
+use strict;
+use common;
+
+sub get_type_name() { N("DSL") }
+sub get_type_icon() { 'xdsl-24.png' }
+
+sub get_devices() {
+ require detect_devices;
+ require network::connection::isdn;
+ require network::connection::ethernet;
+ my @usb_devices = detect_devices::get_xdsl_usb_devices();
+ $_->{xdsl_type} = 'usb' foreach @usb_devices;
+ my @capi_devices = grep { $_->{driver} =~ /dsl/i } map { network::connection::isdn::find_capi_card($_) } network::connection::isdn->get_devices;
+ $_->{xdsl_type} = 'capi' foreach @capi_devices;
+ my @ethernet_devices = network::connection::ethernet::get_devices();
+ $_->{xdsl_type} = 'ethernet' foreach @ethernet_devices;
+ @usb_devices, @capi_devices, @ethernet_devices;
+}
+
+sub get_metric { 25 }
+sub get_interface() { "ppp0" }
+
+my @non_ppp_protocols = qw(static dhcp);
+sub uses_ppp {
+ my ($self) = @_;
+ !member($self->{protocol}, @non_ppp_protocols);
+}
+
+my %protocol_settings = (
+ pppoa => {
+ plugin => sub {
+ my ($self) = @_;
+ "pppoatm.so " . join('.', $self->{access}{peer}{vpi}, $self->{access}{peer}{vci});
+ },
+ },
+ pppoe => {
+ pty => sub {
+ my ($self) = @_;
+ my $eth_interface = $self->network::connection::ethernet::get_interface;
+ qq("pppoe -m 1412 -I $eth_interface");
+ },
+ options => [
+ qw(default-asyncmap noaccomp nobsdcomp novjccomp nodeflate),
+ "mru 1492",
+ "mtu 1492",
+ "lcp-echo-interval 20",
+ "lcp-echo-failure 3",
+ ],
+ },
+ pptp => {
+ pty => qq("/usr/sbin/pptp 10.0.0.138 --nolaunchpppd"),
+ options => [ qw(noipdefault) ],
+ },
+ capi => {
+ plugin => "capiplugin.so avmadsl",
+ options => [
+ qw(ipcp-accept-remote ipcp-accept-local sync noipx),
+ "connect /bin/true",
+ "lcp-echo-interval 5",
+ "lcp-echo-failure 3",
+ "lcp-max-configure 50",
+ "lcp-max-terminate 2",
+ "mru 1492",
+ "mtu 1492"
+ ],
+ },
+);
+
+my @thirdparty_settings = (
+ {
+ matching => 'speedtch',
+ description => N_("Alcatel speedtouch USB modem"),
+ url => "http://www.speedtouch.com/supuser.htm",
+ name => 'speedtouch',
+ firmware =>
+ {
+ package => 'speedtouch-firmware',
+ test_file => 'speedtch-*.bin*',
+ extract => {
+ name => 'speedtouch-firmware-extractor',
+ test_file => '/usr/sbin/firmware-extractor',
+ windows_source => 'alcaudsl.sys',
+ floppy_source => 'mgmt*.o',
+ default_source => '/usr/share/speedtouch/mgmt.o',
+ run => sub {
+ my ($file) = @_;
+ run_program::raw({ root => $::prefix, chdir => $network::thirdparty::firmware_directory },
+ '/usr/sbin/firmware-extractor', $file);
+ },
+ },
+ },
+ links => 'http://linux-usb.sourceforge.net/SpeedTouch/mandrake/index.html',
+ ppp => {
+ options => [ qw(noaccomp sync) ],
+ },
+ },
+
+ {
+ name => 'eciadsl',
+ explanations => N_("The ECI Hi-Focus modem cannot be supported due to binary driver distribution problem.
+
+You can find a driver on http://eciadsl.flashtux.org/"),
+ no_club => 1,
+ tools => {
+ test_file => '/usr/sbin/pppoeci',
+ },
+ ppp => {
+ options => [
+ qw(noipdefault noaccomp sync),
+ "linkname eciadsl",
+ "lcp-echo-interval 0",
+ ],
+ protocols => {
+ pppoe => {
+ pty => sub {
+ my ($self) = @_;
+ qq("/usr/bin/pppoeci -v 1 -vpi $self->{access}{peer}{vpi} -vci $self->{access}{peer}{vci}");
+ },
+ },
+ },
+ },
+ },
+
+ {
+ matching => [ 'ueagle-atm', 'eagle-usb' ],
+ description => 'Eagle chipset (from Analog Devices), e.g. Sagem F@st 800/840/908',
+ url => 'http://www.eagle-usb.org/',
+ name => 'ueagle',
+ firmware => {
+ test_file => 'ueagle-atm/eagle*.fw',
+ },
+ links => 'http://atm.eagle-usb.org/wakka.php?wiki=UeagleAtmDoc',
+ },
+
+ {
+ matching => qr/^unicorn_.*_atm$/,
+ description => 'Bewan Adsl (Unicorn)',
+ url => 'http://www.bewan.com/bewan/users/downloads/',
+ name => 'unicorn',
+ kernel_module => {
+ test_file => 'unicorn_.*_atm',
+ },
+ tools => {
+ optional => 1,
+ test_file => '/usr/bin/bewan_adsl_status',
+ },
+ sleep => 10,
+ ppp => {
+ options => [
+ qw(default-asyncmap hide-password noaccomp nobsdcomp nodeflate novjccomp sync),
+ "lcp-echo-interval 20",
+ "lcp-echo-failure 3",
+ ],
+ },
+ },
+);
+
+sub get_thirdparty_settings() {
+ \@thirdparty_settings;
+}
+
+sub get_providers {
+ my ($self) = @_;
+ require network::connection::providers::xdsl;
+ if_($self->{device}{xdsl_type} ne 'capi', \%network::connection::providers::xdsl::data, '|');
+}
+
+sub get_protocols {
+ my ($self) = @_;
+ $self->{device}{xdsl_type} eq 'capi' ?
+ {
+ capi => N("DSL over CAPI"),
+ } :
+ {
+ dhcp => N("Dynamic Host Configuration Protocol (DHCP)"),
+ static => N("Manual TCP/IP configuration"),
+ pptp => N("Point to Point Tunneling Protocol (PPTP)"),
+ pppoe => N("PPP over Ethernet (PPPoE)"),
+ pppoa => N("PPP over ATM (PPPoA)"),
+ };
+}
+
+sub guess_protocol {
+ my ($self, $net) = @_;
+ $self->{protocol} = $self->{provider} && $self->{provider}{method};
+ if ($self->{device}{xdsl_type} eq 'capi') {
+ $self->{protocol} = 'capi';
+ } elsif ($self->{device}{xdsl_type} eq 'ethernet') {
+ require network::connection::ethernet;
+ my $interface = $self->network::connection::ethernet::get_interface;
+ if (my $ifcfg = $net->{ifcfg}{$interface}) {
+ $self->{protocol} = $ifcfg->{BOOTPROTO} if member($ifcfg->{BOOTPROTO}, @non_ppp_protocols);
+ $self->{protocol} ||= 'dhcp';
+ #- pppoa shouldn't be selected by default for ethernet devices, fallback on pppoe
+ $self->{protocol} = 'pppoe' if $self->{protocol} eq 'pppoa';
+ }
+ }
+}
+
+sub guess_access_settings {
+ my ($self) = @_;
+ require network::adsl;
+ my $probe = {};
+ network::adsl::adsl_probe_info($probe);
+ $self->{access}{login} = $probe->{adsl}{login};
+ $self->{access}{password} = $probe->{adsl}{passwd};
+ $self->{access}{peer}{$_} = $probe->{adsl}{$_} foreach qw(vpi vci);
+ if ($self->{provider}) {
+ $self->{access}{peer}{$_} = hex($self->{provider}{$_}) foreach qw(vpi vci);
+ }
+}
+
+sub get_access_settings {
+ my ($self) = @_;
+
+ [
+ @{$self->network::connection::ppp::get_access_settings},
+ if_(member($self->{protocol}, qw(pppoa pppoe)),
+ { label => N("Virtual Path ID (VPI):"), val => \$self->{access}{peer}{vpi}, advanced => 1 },
+ { label => N("Virtual Circuit ID (VCI):"), val => \$self->{access}{peer}{vci}, advanced => 1 }
+ ),
+ ];
+}
+
+sub get_peer_default_options {
+ my ($self) = @_;
+ $self->network::connection::ppp::get_peer_default_options,
+ qw(lock persist nopcomp noccp novj),
+ "kdebug 1",
+ "holdoff 4",
+ "maxfail 25";
+}
+
+sub build_peer {
+ my ($self) = @_;
+ my $may_call = sub { ref $_[0] eq 'CODE' ? $_[0]->($self) : $_[0] };
+ my @ppp_fields = qw(plugin pty);
+ my @ppp_options;
+ if ($self->{thirdparty}) {
+ foreach my $settings (grep { $_ } $self->{thirdparty}{ppp}{protocols}{$self->{protocol}}, $self->{thirdparty}{ppp}) {
+ @ppp_options = @{$settings->{options}} if $settings->{options};
+ foreach (@ppp_fields) {
+ $self->{access}{peer}{$_} ||= $may_call->($settings->{$_}) if defined $settings->{$_};
+ }
+ }
+ }
+ if (my $generic_settings = $protocol_settings{$self->{protocol}}) {
+ @ppp_options = @{$generic_settings->{options} || []} if !@ppp_options;
+ foreach (@ppp_fields) {
+ $self->{access}{peer}{$_} ||= $may_call->($generic_settings->{$_}) if defined $generic_settings->{$_};
+ }
+ }
+
+ @ppp_options, #- write them before pty/plugin stuff
+ $self->network::connection::ppp::build_peer;
+}
+
+sub write_settings {
+ my ($self, $net) = @_;
+
+ if ($self->{device}{xdsl_type} eq 'ethernet' && $self->{protocol} eq 'pppoe') {
+ my $interface = $self->network::connection::ethernet::get_interface;
+ $net->{ifcfg}{$interface} = {
+ DEVICE => $interface,
+ BOOTPROTO => 'none',
+ NETMASK => '255.255.255.0',
+ NETWORK => '10.0.0.0',
+ BROADCAST => '10.0.0.255',
+ MII_NOT_SUPPORTED => 'yes',
+ ONBOOT => 'yes',
+ };
+ }
+
+ if ($self->{protocol} eq 'capi') {
+ require network::connection::isdn;
+ network::connection::isdn::write_capi_conf($self->{device});
+ }
+
+ #- TODO: add "options ueagle-atm cmv_file= $net->{adsl}{cmv}.bin" in /etc/modprobe.d/ueagle-atm
+ # if ($self->get_driver eq 'ueagle-atm') { ... }
+
+ if ($self->uses_ppp) {
+ $self->network::connection::ppp::write_settings;
+ } else {
+ $self->network::connection::write_settings;
+ }
+}
+
+sub build_ifcfg_settings {
+ my ($self) = @_;
+ my $settings = {
+ if_($self->uses_ppp, TYPE => 'ADSL'),
+ };
+ if ($self->{device}{xdsl_type} eq 'usb' && !$self->uses_ppp) {
+ #- use ATMARP with the atm0 interface
+ put_in_hash({
+ DEVICE => "atm0",
+ ATM_ADDR => join('.', @{$self->{access}{peer}}{qw(vpi vci)}),
+ MII_NOT_SUPPORTED => "yes",
+ }, $settings);
+ }
+ $self->network::connection::build_ifcfg_settings($settings);
+}
+
+sub unload_connection {
+ my ($self) = @_;
+ require network::connection::isdn;
+ network::connection::isdn::unload_connection($self->{device}) if $self->{protocol} eq 'capi';
+}
+
+sub install_packages {
+ my ($self, $in) = @_;
+ my $packages = {
+ pppoa => [ qw(ppp-pppoatm) ],
+ pppoe => [ qw(rp-pppoe) ],
+ pptp => [ qw(pptp-linux) ],
+ capi => [ qw(ppp) ],
+ }->{$self->{protocol}};
+ if ($packages && !$in->do_pkgs->install(@$packages)) {
+ $in->ask_warn(N("Error"), N("Could not install the packages (%s)!", @$packages));
+ return;
+ }
+ if ($self->{protocol} eq 'capi') {
+ require network::connection::isdn;
+ network::connection::isdn::install_packages($self->{device}, $in);
+ $in->do_pkgs->ensure_is_installed_if_available("drdsl", "/usr/sbin/drdsl");
+ }
+ 1;
+}
+
+sub prepare_connection {
+ my ($self) = @_;
+
+ if ($::isInstall) {
+ #- load modules that are not automatically loaded during install
+ my @modules = qw(ppp_synctty ppp_async ppp_generic n_hdlc); #- required for pppoe/pptp connections
+ push @modules, 'pppoatm' if $self->{protocol} eq 'pppoa';
+ foreach (@modules) {
+ eval { modules::load($_) } or log::l("failed to load $_ module: $@");
+ }
+ }
+
+ if ($self->{protocol} eq 'capi') {
+ require network::connection::isdn;
+ network::connection::isdn::prepare_connection($self->{device});
+ require run_program;
+ run_program::rooted($::prefix, "/usr/sbin/drdsl");
+ }
+
+ 1;
+}
+
+sub connect {
+ my ($self) = @_;
+ if ($self->{device}{xdsl_type} eq 'ethernet') {
+ require network::tools;
+ network::tools::start_interface($self->network::connection::ethernet::get_interface, 0);
+ }
+ $self->network::connection::connect;
+}
+
+sub disconnect {
+ my ($self) = @_;
+ $self->network::connection::disconnect;
+ if ($self->{device}{xdsl_type} eq 'ethernet') {
+ require network::tools;
+ network::tools::stop_interface($self->network::connection::ethernet::get_interface, 0);
+ }
+}
+
+1;
diff --git a/lib/network/drakfirewall.pm b/lib/network/drakfirewall.pm
index e67da22..600a5d3 100644
--- a/lib/network/drakfirewall.pm
+++ b/lib/network/drakfirewall.pm
@@ -137,7 +137,7 @@ sub get_ports() {
}
sub set_ports {
- my ($do_pkgs, $disabled, $ports, $o_in) = @_;
+ my ($do_pkgs, $disabled, $ports, $log_net_drop, $o_in) = @_;
my $shorewall = network::shorewall::read($o_in) or return;
@@ -146,8 +146,9 @@ sub set_ports {
$shorewall->{disabled} = $disabled;
$shorewall->{ports} = $ports;
+ $shorewall->{log_net_drop} = $log_net_drop;
log::l($disabled ? "disabling shorewall" : "configuring shorewall to allow ports: $ports");
- network::shorewall::write($shorewall);
+ network::shorewall::write($shorewall, $o_in);
}
}
@@ -160,15 +161,15 @@ sub get_conf {
if ($o_ports) {
$disabled, from_ports($o_ports);
} elsif (my $shorewall = network::shorewall::read()) {
- $shorewall->{disabled}, from_ports($shorewall->{ports});
+ $shorewall->{disabled}, from_ports($shorewall->{ports}), $shorewall->{log_net_drop};
} else {
- $in->ask_okcancel('', N("drakfirewall configurator
+ $in->ask_okcancel(N("Firewall configuration"), N("drakfirewall configurator
This configures a personal firewall for this Mandriva Linux machine.
For a powerful and dedicated firewall solution, please look to the
specialized Mandriva Security Firewall distribution."), 1) or return;
- $in->ask_okcancel('', N("drakfirewall configurator
+ $in->ask_okcancel(N("Firewall configuration"), N("drakfirewall configurator
Make sure you have configured your Network/Internet access with
drakconnect before going any further."), 1) or return;
@@ -178,7 +179,7 @@ drakconnect before going any further."), 1) or return;
}
sub choose_allowed_services {
- my ($in, $disabled, $servers, $unlisted) = @_;
+ my ($in, $disabled, $servers, $unlisted, $log_net_drop) = @_;
$_->{on} = 0 foreach @all_servers;
$_->{on} = 1 foreach @$servers;
@@ -206,10 +207,11 @@ You can also give a range of ports (eg: 24300:24350/udp)", $invalid_port));
[
{ text => N("Everything (no firewall)"), val => \$disabled, type => 'bool' },
(map { { text => translate($_->{name}), val => \$_->{on}, type => 'bool', disabled => sub { $disabled } } } @l),
- { label => N("Other ports"), val => \$unlisted, advanced => 1, disabled => sub { $disabled } }
+ { label => N("Other ports"), val => \$unlisted, advanced => 1, disabled => sub { $disabled } },
+ { text => N("Log firewall messages in system logs"), val => \$log_net_drop, type => 'bool', advanced => 1, disabled => sub { $disabled } },
]) or return;
- $disabled, [ grep { $_->{on} } @l ], $unlisted;
+ $disabled, [ grep { $_->{on} } @l ], $unlisted, $log_net_drop;
}
sub set_ifw {
@@ -218,16 +220,16 @@ sub set_ifw {
$do_pkgs->ensure_is_installed('mandi-ifw', '/etc/ifw/start', $::isInstall) or return;
my $ports_by_proto = network::shorewall::ports_by_proto($ports);
- output_with_perm("$::prefix/etc/ifw/rules", 0644, map { "$_\n" } (
- (map { "source /etc/ifw/rules.d/$_" } @$rules),
+ output_with_perm("$::prefix/etc/ifw/rules", 0644,
+ (map { "source /etc/ifw/rules.d/$_\n" } @$rules),
map {
my $proto = $_;
map {
my $multiport = /:/ && " -m multiport";
"iptables -A Ifw -m state --state NEW -p $proto$multiport --dport $_ -j IFWLOG --log-prefix NEW\n";
} @{$ports_by_proto->{$proto}};
- } keys %$ports_by_proto,
- ));
+ } intersection([ qw(tcp udp) ], [ keys %$ports_by_proto ]),
+ );
}
my $set_in_file = sub {
@@ -252,7 +254,7 @@ sub choose_watched_services {
messages =>
N("Interactive Firewall") . "\n\n" .
N("You can be warned when someone accesses to a service or tries to intrude into your computer.
-Please select which network activity should be watched."),
+Please select which network activities should be watched."),
title => N("Interactive Firewall"),
},
[
@@ -270,14 +272,14 @@ Please select which network activity should be watched."),
sub main {
my ($in, $disabled) = @_;
- ($disabled, my $servers, my $unlisted) = get_conf($in, $disabled) or return;
+ ($disabled, my $servers, my $unlisted, my $log_net_drop) = get_conf($in, $disabled) or return;
- ($disabled, $servers, $unlisted) = choose_allowed_services($in, $disabled, $servers, $unlisted) or return;
+ ($disabled, $servers, $unlisted, $log_net_drop) = choose_allowed_services($in, $disabled, $servers, $unlisted, $log_net_drop) or return;
choose_watched_services($in, $servers, $unlisted) unless $disabled;
my $ports = to_ports($servers, $unlisted);
- set_ports($in->do_pkgs, $disabled, $ports, $in) or return;
+ set_ports($in->do_pkgs, $disabled, $ports, $log_net_drop, $in) or return;
($disabled, $ports);
}
diff --git a/lib/network/drakvpn.pm b/lib/network/drakvpn.pm
new file mode 100644
index 0000000..158b40c
--- /dev/null
+++ b/lib/network/drakvpn.pm
@@ -0,0 +1,120 @@
+package network::drakvpn;
+
+=head1 NAME
+
+network::drakvpn - Interactive VPN configuration
+
+=head1 SYNOPSIS
+
+ use interactive;
+ use network::drakvpn;
+
+ my $in = 'interactive'->vnew('su');
+ network::drakvpn::create_connection($in);
+
+=cut
+
+use strict;
+use common;
+
+use network::vpn;
+
+sub create_connection {
+ my ($in) = @_;
+ my $vpn_type;
+ my $vpn_connection;
+ my $new_name;
+ require wizards;
+ my $wiz = wizards->new({
+ defaultimage => "drakvpn",
+ name => N("VPN configuration"),
+ pages => {
+ welcome => {
+ if_(!$::isInstall, no_back => 1),
+ name => N("Choose the VPN type"),
+ data => [ {
+ val => \$vpn_type, type => 'list',
+ list => [ sort { $a->get_description cmp $b->get_description } network::vpn::list_types ],
+ format => sub { $_[0] && $_[0]->get_description },
+ allow_empty_list => 1,
+ } ],
+ complete => sub {
+ $vpn_type or return 1;
+ my @packages = $vpn_type->get_packages;
+ if (@packages && !$in->do_pkgs->install(@packages)) {
+ $in->ask_warn(N("Error"), N("Could not install the packages (%s)!", join(', ', @packages)));
+ return 1;
+ }
+ if ($vpn_type->can('prepare')) {
+ my $wait = $in->wait_message('', N("Initializing tools and detecting devices for %s...", $vpn_type->get_type));
+ if (!$vpn_type->prepare) {
+ undef $wait;
+ $in->ask_warn(N("Error"), N("Unable to initialize %s connection type!", $vpn_type->get_type));
+ return 1;
+ }
+ }
+ },
+ next => "vpn_name",
+ },
+ vpn_name => {
+ name => N("Please select an existing VPN connection or enter a new name."),
+ data => sub { [
+ { label => N("VPN connection"), val => \$vpn_connection, type => 'list',
+ list => [ $vpn_type->get_configured_connections, '' ],
+ format => sub { $_[0] ? $_[0]{name} : N("Configure a new connection...") },
+ gtk => { use_boxradio => 1 } },
+ { label => N("New name"), val => \$new_name, disabled => sub { $vpn_connection } },
+ ] },
+ complete => sub {
+ if (!$vpn_connection && !$new_name) {
+ $in->ask_warn(N("Warning"), N("You must select an existing connection or enter a new name."));
+ 1;
+ }
+ },
+ post => sub {
+ $vpn_connection ||= $vpn_type->new($new_name);
+ $vpn_connection->read_config;
+ $vpn_connection->can('get_key_settings') ? "vpn_key_settings" : "vpn_settings";
+ },
+ },
+ vpn_key_settings => {
+ name => N("Please enter the required key(s)"),
+ data => sub { $vpn_connection->get_key_settings },
+ next => "vpn_settings",
+ },
+ vpn_settings => {
+ name => N("Please enter the settings of your VPN connection"),
+ data => sub { $vpn_connection->get_settings },
+ post => sub {
+ $vpn_connection->write_config;
+ "connect";
+ },
+ },
+ connect => {
+ name => N("Do you want to start the connection now?"),
+ type => "yesorno",
+ post => sub {
+ my ($connect) = @_;
+ if ($connect) {
+ $vpn_connection->is_started and $vpn_connection->stop;
+ $vpn_connection->start($in) or $in->ask_warn(N("Warning"), N("Connection failed."));
+ }
+ require network::network;
+ network::network::reload_net_applet();
+ "end";
+ },
+ },
+ end => {
+ name => N("The VPN connection is now configured.
+
+This VPN connection can be automatically started together with a network connection.
+It can be done by reconfiguring the network connection and selecting this VPN connection.
+"),
+ end => 1,
+ },
+ },
+ });
+ $wiz->process($in);
+}
+
+1;
diff --git a/lib/network/ethernet.pm b/lib/network/ethernet.pm
deleted file mode 100644
index c97f45f..0000000
--- a/lib/network/ethernet.pm
+++ /dev/null
@@ -1,162 +0,0 @@
-package network::ethernet; # $Id$
-
-use c;
-use detect_devices;
-use common;
-use run_program;
-
-our @dhcp_clients = qw(dhclient dhcpcd pump dhcpxd);
-
-sub install_dhcp_client {
- my ($in, $client) = @_;
- my %packages = (
- "dhclient" => "dhcp-client",
- );
- #- use default dhcp client if none is provided
- $client ||= $dhcp_clients[0];
- $client = $packages{$client} if exists $packages{$client};
- $in->do_pkgs->install($client);
-}
-
-sub mapIntfToDevice {
- my ($interface) = @_;
- my $hw_addr = c::getHwIDs($interface);
- return {} if $hw_addr =~ /^usb/;
- my ($bus, $slot, $func) = map { hex($_) } ($hw_addr =~ /([0-9a-f]+):([0-9a-f]+)\.([0-9a-f]+)/);
- $hw_addr && (every { defined $_ } $bus, $slot, $func) ?
- grep { $_->{pci_bus} == $bus && $_->{pci_device} == $slot && $_->{pci_function} == $func } detect_devices::probeall() : {};
-}
-
-
-# return list of [ intf_name, module, device_description ] tuples such as:
-# [ "eth0", "3c59x", "3Com Corporation|3c905C-TX [Fast Etherlink]" ]
-#
-# this function try several method in order to get interface's driver and description in order to support both:
-# - hotplug managed devices (USB, firewire)
-# - special interfaces (IP aliasing, VLAN)
-sub get_eth_cards {
- my ($modules_conf) = @_;
- my @all_cards = detect_devices::getNet();
-
- my @devs = detect_devices::pcmcia_probe();
- my $saved_driver;
- # compute device description and return (interface, driver, description) tuples:
- return map {
- my $interface = $_;
- my $description;
- # 1) get interface's driver through ETHTOOL ioctl:
- my ($a, $detected_through_ethtool);
- $a = c::getNetDriver($interface);
- if ($a) {
- $detected_through_ethtool = 1;
- } else {
- # 2) get interface's driver through module aliases:
- $a = $modules_conf->get_alias($interface);
- }
-
- # workaround buggy drivers that returns a bogus driver name for the GDRVINFO command of the ETHTOOL ioctl:
- my %fixes = (
- "p80211_prism2_cs" => 'prism2_cs',
- "p80211_prism2_pci" => 'prism2_pci',
- "p80211_prism2_usb" => 'prism2_usb',
- "ip1394" => "eth1394",
- "DL2K" => "dl2k",
- "orinoco" => undef, #- should be orinoco_{cs,nortel,pci,plx,tmd}
- "hostap" => undef, #- should be hostap_{cs,pci,plx}
- );
- if (exists $fixes{$a}) {
- $a = $fixes{$a};
- $a or undef $detected_through_ethtool;
- }
-
- # 3) try to match a PCMCIA device for device description:
- if (my $b = find { $_->{device} eq $interface } @devs) { # PCMCIA case
- $a = $b->{driver};
- $description = $b->{description};
- } else {
- # 4) try to lookup a device by hardware address for device description:
- # maybe should have we try sysfs first for robustness?
- ($description) = (mapIntfToDevice($interface))[0]->{description};
- }
- # 5) try to match a device through sysfs for driver & device description:
- # (eg: ipw2100 driver for intel centrino do not support ETHTOOL)
- if (!$description || !$a) {
- my $dev_path = "/sys/class/net/$interface/device";
- my $drv = readlink("$dev_path/driver");
- if ($drv && $drv =~ s!.*/!!) {
- $a = $drv unless $detected_through_ethtool;
- my $sysfs_fields = detect_devices::get_sysfs_device_id_map($dev_path);
- my %l = map { $_ => hex(chomp_(cat_("$dev_path/" . $sysfs_fields->{$_}))) } keys %$sysfs_fields;
- my @cards = grep { my $dev = $_; every { $dev->{$_} eq $l{$_} } keys %l } detect_devices::probeall();
- $description ||= $cards[0]{description} if @cards == 1;
- } elsif (!$a && -e "/sys/class/net/$interface/wireless") {
- # probably a rt2400/rt2500 device (PCI or PCMCIA CardBus) or zd1201 (USB)
- # these broken drivers don't create the "device" link
- # try to see if rt2400/rt2500/zd1201 is loaded, and assume current wireless device uses it
- # FIXME: remove this code as soon as the drivers are fixed
- $a = find { -e "/sys/bus/pci/drivers/$_" } qw(rt2400 rt2500);
- $a ||= find { -e "/sys/bus/usb/drivers/$_" } qw(zd1201);
- }
- }
- # 6) try to match a device by driver for device description:
- # (eg: madwifi, ndiswrapper, ...)
- if (!$description) {
- my @cards = grep { $_->{driver} eq ($a || $saved_driver) } detect_devices::probeall();
- $description = $cards[0]{description} if @cards == 1;
- }
- $a and $saved_driver = $a; # handle multiple cards managed by the same driver
- [ $interface, $saved_driver, if_($description, $description) ];
- } @all_cards;
-}
-
-sub get_eth_cards_names {
- my (@all_cards) = @_;
- map { $_->[0] => join(': ', $_->[0], $_->[2]) } @all_cards;
-}
-
-#- returns (link_type, mac_address)
-sub get_eth_card_mac_address {
- my ($intf) = @_;
- #- don't look for 6 bytes addresses only because of various non-standard MAC addresses
- `$::prefix/sbin/ip -o link show $intf 2>/dev/null` =~ m|.*link/(\S+)\s((?:[0-9a-f]{2}:?)+)\s|;
-}
-
-#- write interfaces MAC address in iftab
-sub update_iftab() {
- #- skip aliases interfaces
- foreach my $intf (grep { !/:\d+$/ } detect_devices::getNet()) {
- my ($link_type, $mac_address) = get_eth_card_mac_address($intf) or next;
- #- do not write zeroed MAC addresses in iftab, it confuses ifrename
- $mac_address =~ /^[0:]+$/ and next;
- # ifrename supports alsa IEEE1394, EUI64 and IRDA
- member($link_type, 'ether', 'ieee1394', 'irda', '[27]') or next;
- substInFile {
- s/^$intf\s+.*\n//;
- s/^.*\s+$mac_address\n//;
- $_ .= qq($intf mac $mac_address\n) if eof;
- } "$::prefix/etc/iftab";
- }
-}
-
-# automatic net aliases configuration
-sub configure_eth_aliases {
- my ($modules_conf) = @_;
- my @pcmcia_interfaces = map { $_->{device} } detect_devices::pcmcia_probe();
- foreach my $card (get_eth_cards($modules_conf)) {
- if (member($card->[0], @pcmcia_interfaces)) {
- #- do not write aliases for pcmcia cards, or cardmgr will not be loaded
- $modules_conf->remove_alias($card->[0]);
- } else {
- $modules_conf->set_alias($card->[0], $card->[1]);
- }
- }
- $::isStandalone and $modules_conf->write;
- update_iftab();
-}
-
-sub is_ifplugd_blacklisted {
- my ($module) = @_;
- member($module, qw(forcedeth via-velocity));
-}
-
-1;
diff --git a/lib/network/ifw.pm b/lib/network/ifw.pm
index 40ff0ac..44f58da 100644
--- a/lib/network/ifw.pm
+++ b/lib/network/ifw.pm
@@ -18,7 +18,7 @@ sub new {
"com.mandriva.monitoring",
"/com/mandriva/monitoring/ifw",
"com.mandriva.monitoring.ifw");
- dbus_object::set_gtk2_watch($o);
+ $o->set_gtk2_watch;
$o;
}
@@ -138,4 +138,18 @@ sub attack_to_hash {
$attack;
}
+sub parse_listen_message {
+ my ($args) = @_;
+ my $listen = { mapn { $_[0] => $_[1] } [ 'program', 'port' ], $args };
+ $listen->{port} = unpack('S', pack('n', $listen->{port}));
+ $listen->{service} = get_service($listen->{port});
+ $listen->{message} = N("The \"%s\" application is trying to make a service (%s) available to the network.",
+ $listen->{program},
+ $listen->{service} ne $listen->{port} ? $listen->{service} :
+ #-PO: this should be kept lowercase since the expression is meant to be used between brackets
+ N("port %d", $listen->{port}),
+ );
+ $listen;
+}
+
1;
diff --git a/lib/network/invictus.pm b/lib/network/invictus.pm
new file mode 100644
index 0000000..91806d5
--- /dev/null
+++ b/lib/network/invictus.pm
@@ -0,0 +1,30 @@
+package network::invictus;
+
+use MDK::Common;
+
+my $ucarp_d = "/etc/ucarp.d";
+my $ct_sync_config = "/etc/sysconfig/ct_sync";
+
+sub read_config {
+ my ($invictus) = @_;
+ foreach (all($::prefix . $ucarp_d)) {
+ $invictus->{ucarp}{$_} = +{ getVarsFromSh($::prefix . $ucarp_d . '/' . $_) };
+ }
+ $invictus->{ct_sync} = +{ getVarsFromSh($::prefix . $ct_sync_config) };
+ $invictus->{ct_sync}{CMARKBIT} ||= 30;
+}
+
+sub write_config {
+ my ($invictus) = @_;
+ mkdir_p($::prefix . $ucarp_d);
+ foreach (keys %{$invictus->{ucarp}}) {
+ $invictus->{ucarp}{$_}{UPSCRIPT} ||= '/usr/share/invictus-firewall/ucarp-up.sh';
+ $invictus->{ucarp}{$_}{DOWNSCRIPT} ||= '/usr/share/invictus-firewall/ucarp-down.sh';
+ setVarsInShMode($::prefix . $ucarp_d . '/' . $_, 0600, $invictus->{ucarp}{$_},
+ qw(INTERFACE SRCIP VIRTIP VHID PASSWORD TAKEOVER UPSCRIPT DOWNSCRIPT));
+ }
+ setVarsInSh($::prefix . $ct_sync_config, $invictus->{ct_sync},
+ qw(ENABLE INTERFACE CMARKBIT));
+}
+
+1;
diff --git a/lib/network/ipsec.pm b/lib/network/ipsec.pm
index c0ca768..846b07a 100644
--- a/lib/network/ipsec.pm
+++ b/lib/network/ipsec.pm
@@ -9,23 +9,7 @@ use log;
#- debugg functions ----------
sub recreate_ipsec_conf {
- my ($ipsec, $kernel_version) = @_;
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- foreach my $key1 (ikeys %$ipsec) {
- print "$ipsec->{$key1}\n" if ! $ipsec->{$key1}{1};
- foreach my $key2 (ikeys %{$ipsec->{$key1}}) {
- if ($ipsec->{$key1}{$key2}[0] =~ m/^#/) {
- print "\t$ipsec->{$key1}{$key2}[0]\n";
- } elsif ($ipsec->{$key1}{$key2}[0] =~ m/(conn|config|version)/) {
- print "$ipsec->{$key1}{$key2}[0] $ipsec->{$key1}{$key2}[1]\n";
- } else {
- print "\t$ipsec->{$key1}{$key2}[0]=$ipsec->{$key1}{$key2}[1]\n";
- }
- }
- }
- } else {
- #- kernel 2.6 part -------------------------------
+ my ($ipsec) = @_;
foreach my $key1 (ikeys %$ipsec) {
if (! $ipsec->{$key1}{command}) {
print "$ipsec->{$key1}\n";
@@ -43,7 +27,6 @@ sub recreate_ipsec_conf {
$ipsec->{$key1}{level} . ";\n";
}
}
- }
}
sub recreate_racoon_conf {
@@ -479,7 +462,7 @@ sub remove_section_racoon_conf {
#-------------------------------------------------------------------
sub read_ipsec_conf {
- my ($ipsec_conf, $kernel_version) = @_;
+ my ($ipsec_conf) = @_;
my %conf;
my $nb = 0; #total number
my $i = 0; #nb within a connexion
@@ -487,48 +470,6 @@ sub read_ipsec_conf {
my $line = "";
my @line1;
local $_;
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- open(my $LIST, "< $ipsec_conf"); #or die "Can not open the $ipsec_conf file for reading";
- while (<$LIST>) {
- chomp($_);
- $line = $_;
- $line =~ s/^\s+//;
- if (!$line) {
- $nb++;
- put_in_hash(\%conf, { $nb => $line });
- $in_a_conn = "n";
- } elsif ($line =~ /^#/) {
- if ($in_a_conn eq "y") {
- put_in_hash($conf{$nb} ||= {}, { $i => [$line] });
- $i++;
- } else {
- $nb++;
- put_in_hash(\%conf, { $nb => $line });
- $in_a_conn = "n";
- }
- } elsif ($line =~ /^conn|^config|^version/ && $in_a_conn eq "n") {
- @line1 = split /\s+/,$line;
- $i=1;
- $nb++;
- put_in_hash($conf{$nb} ||= {}, { $i => [$line1[0], $line1[1]] });
- $in_a_conn = "y" if $line !~ /^version/;
- $i++;
- } elsif ($line =~ /^conn|^config|^version/ && $in_a_conn eq "y") {
- @line1 = split /\s+/,$line;
- $i=1;
- $nb++;
- put_in_hash($conf{$nb} ||= {}, { $i => [$line1[0], $line1[1]] });
- $i++;
- } else {
- @line1 = split /=/,$line;
- put_in_hash($conf{$nb} ||= {}, { $i => [$line1[0], $line1[1]] });
- $i++;
- }
- }
-
- } else {
- #- kernel 2.6 part -------------------------------
my @mylist;
my $myline = "";
open(my $LIST, "< $ipsec_conf"); #or die "Can not open the $ipsec_conf file for reading";
@@ -561,31 +502,12 @@ sub read_ipsec_conf {
put_in_hash(\%conf, { $nb => $myline });
}
}
-
- }
\%conf;
}
sub write_ipsec_conf {
- my ($ipsec_conf, $ipsec, $kernel_version) = @_;
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- open(my $ADD, "> $ipsec_conf") or die "Can not open the $ipsec_conf file for writing";
- foreach my $key1 (ikeys %$ipsec) {
- print $ADD "$ipsec->{$key1}\n" if ! $ipsec->{$key1}{1};
- foreach my $key2 (ikeys %{$ipsec->{$key1}}) {
- if ($ipsec->{$key1}{$key2}[0] =~ m/^#/) {
- print $ADD "\t$ipsec->{$key1}{$key2}[0]\n";
- } elsif ($ipsec->{$key1}{$key2}[0] =~ m/(^conn|^config|^version)/) {
- print $ADD "$ipsec->{$key1}{$key2}[0] $ipsec->{$key1}{$key2}[1]\n";
- } else {
- print $ADD "\t$ipsec->{$key1}{$key2}[0]=$ipsec->{$key1}{$key2}[1]\n" if $ipsec->{$key1}{$key2}[0] && $ipsec->{$key1}{$key2}[1];
- }
- }
- }
- } else {
- #- kernel 2.6 part -------------------------------
+ my ($ipsec_conf, $ipsec) = @_;
my $display = "";
foreach my $key1 (ikeys %$ipsec) {
if (! $ipsec->{$key1}{command}) {
@@ -606,30 +528,12 @@ sub write_ipsec_conf {
}
open(my $ADD, "> $ipsec_conf") or die "Can not open the $ipsec_conf file for writing";
print $ADD $display;
- }
}
sub display_ipsec_conf {
- my ($ipsec, $kernel_version) = @_;
+ my ($ipsec) = @_;
my $display = "";
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- foreach my $key1 (ikeys %$ipsec) {
- $display .= "$ipsec->{$key1}\n" if ! $ipsec->{$key1}{1};
- foreach my $key2 (ikeys %{$ipsec->{$key1}}) {
- if ($ipsec->{$key1}{$key2}[0] =~ m/^#/) {
- $display .= "\t$ipsec->{$key1}{$key2}[0]\n";
- } elsif ($ipsec->{$key1}{$key2}[0] =~ m/(^conn|^config|^version)/) {
- $display .= "$ipsec->{$key1}{$key2}[0] $ipsec->{$key1}{$key2}[1]\n";
- } else {
- $display .= "\t$ipsec->{$key1}{$key2}[0]=$ipsec->{$key1}{$key2}[1]\n";
- }
- }
- }
-
- } else {
- #- kernel 2.6 part -------------------------------
foreach my $key1 (ikeys %$ipsec) {
if (! $ipsec->{$key1}{command}) {
$display .= "$ipsec->{$key1}\n";
@@ -648,54 +552,26 @@ sub display_ipsec_conf {
}
}
- }
-
$display;
}
sub get_section_names_ipsec_conf {
- my ($ipsec, $kernel_version) = @_;
+ my ($ipsec) = @_;
my @section_names;
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- foreach my $key1 (ikeys %$ipsec) {
- foreach my $key2 (ikeys %{$ipsec->{$key1}}) {
- if ($ipsec->{$key1}{$key2}[0] =~ m/(^conn|^config|^version)/) {
- push(@section_names, "$ipsec->{$key1}{$key2}[0] $ipsec->{$key1}{$key2}[1]");
- }
- }
- }
-
- } else {
- #- kernel 2.6 part -------------------------------
foreach my $key1 (ikeys %$ipsec) {
if ($ipsec->{$key1}{command} =~ m/(^spdadd)/) {
push(@section_names, "$ipsec->{$key1}{src_range} $ipsec->{$key1}{dst_range}");
}
}
- }
@section_names;
}
sub remove_section_ipsec_conf {
- my ($section_name, $ipsec, $kernel_version) = @_;
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- foreach my $key1 (ikeys %$ipsec) {
- if (find {
- my $s = $ipsec->{$key1}{$_}[0];
- $s !~ /^#/ && $s =~ m/(^conn|^config|^version)/ &&
- $section_name eq "$s $ipsec->{$key1}{$_}[1]";
- } ikeys %{$ipsec->{$key1}}) {
- delete $ipsec->{$key1};
- }
- }
- } else {
- #- kernel 2.6 part -------------------------------
+ my ($section_name, $ipsec) = @_;
foreach my $key1 (ikeys %$ipsec) {
if (find {
my $s = "$ipsec->{$key1}{src_range} $ipsec->{$key1}{dst_range}";
@@ -705,7 +581,6 @@ sub remove_section_ipsec_conf {
delete $ipsec->{$key1};
}
}
- }
}
sub add_section_ipsec_conf {
@@ -715,20 +590,7 @@ sub add_section_ipsec_conf {
}
sub already_existing_section_ipsec_conf {
- my ($section_name, $ipsec, $kernel_version) = @_;
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- foreach my $key1 (ikeys %$ipsec) {
- if (find {
- my $s = $ipsec->{$key1}{$_}[0];
- $s !~ /^#/ && $s =~ m/(^conn|^config|^version)/ &&
- $section_name eq "$s $ipsec->{$key1}{$_}[1]";
- } ikeys %{$ipsec->{$key1}}) {
- return "already existing";
- }
- }
- } else {
- #- kernel 2.6 part -------------------------------
+ my ($section_name, $ipsec) = @_;
foreach my $key1 (ikeys %$ipsec) {
if (find {
my $s = "$ipsec->{$key1}{src_range} $ipsec->{$key1}{dst_range}";
@@ -738,35 +600,12 @@ sub already_existing_section_ipsec_conf {
return "already existing";
}
}
- }
return "no";
}
-#- returns the reference to the dynamical list for editing
-sub dynamic_list {
- my ($number, $ipsec) = @_;
- my @list = map { { label => $ipsec->{$number}{$_}[0] . "=",
- val => \$ipsec->{$number}{$_}[1] } } ikeys %{$ipsec->{$number}};
-
- @list;
-}
-
#- returns the hash key number of $section_name
sub matched_section_key_number_ipsec_conf {
- my ($section_name, $ipsec, $kernel_version) = @_;
- if ($kernel_version < 2.5) {
- #- kernel 2.4 part -------------------------------
- foreach my $key1 (ikeys %$ipsec) {
- if (find {
- my $s = $ipsec->{$key1}{$_}[0];
- $s !~ /^#/ && $s =~ m/(^conn|^config|^version)/ &&
- $section_name eq "$s $ipsec->{$key1}{$_}[1]";
- } ikeys %{$ipsec->{$key1}}) {
- return $key1;
- }
- }
- } else {
- #- kernel 2.6 part -------------------------------
+ my ($section_name, $ipsec) = @_;
foreach my $key1 (ikeys %$ipsec) {
if (find {
my $s = "$ipsec->{$key1}{src_range} $ipsec->{$key1}{dst_range}";
@@ -776,6 +615,5 @@ sub matched_section_key_number_ipsec_conf {
return $key1;
}
}
- }
}
1
diff --git a/lib/network/modem.pm b/lib/network/modem.pm
index 29afb69..839b71c 100644
--- a/lib/network/modem.pm
+++ b/lib/network/modem.pm
@@ -37,12 +37,7 @@ sub ppp_read_conf() {
/^METRIC=(.*)/ and $modem->{METRIC} = $1;
}
$modem->{login} ||= $l{Username};
- my $secret = network::tools::read_secret_backend();
- foreach (@$secret) {
- $modem->{passwd} ||= $_->{passwd} if $_->{login} eq $modem->{login};
- }
- #my $secret = network::tools::read_secret_backend();
- #my @cnx_list = map { $_->{server} } @$secret;
+ $modem->{passwd} = network::tools::passwd_by_login($modem->{login});
$modem->{$_} ||= '' foreach qw(connection phone login passwd auth domain dns1 dns2);
$modem->{auto_gateway} ||= defined $modem->{Gateway} && $modem->{Gateway} ne '0.0.0.0' ? N("Manual") : N("Automatic");
$modem->{auto_ip} ||= defined $modem->{IPAddr} && $modem->{IPAddr} ne '0.0.0.0' ? N("Manual") : N("Automatic");
@@ -60,7 +55,7 @@ sub ppp_configure {
if ($modem->{device} ne "/dev/modem") {
my $dev = $modem->{device};
$dev =~ s!^/dev/!!;
- any::devfssymlinkf({ device => $dev }, 'modem');
+ devices::symlink_now_and_register({ device => $dev }, 'modem');
}
my %toreplace = map { $_ => $modem->{$_} } qw(Authentication AutoName connection dns1 dns2 domain IPAddr login passwd phone SubnetMask);
diff --git a/lib/network/monitor.pm b/lib/network/monitor.pm
index c0ed8f8..7cd1277 100644
--- a/lib/network/monitor.pm
+++ b/lib/network/monitor.pm
@@ -31,28 +31,41 @@ sub list_wireless {
if ($results && $list) {
#- bssid / frequency / signal level / flags / ssid
while ($results =~ /^((?:[0-9a-f]{2}:){5}[0-9a-f]{2})\t(\d+)\t(\d+)\t(.*?)\t(.*)$/mg) {
+ my ($ap, $frequency, $signal_strength, $flags, $essid) = ($1, $2, $3, $4, $5);
+ $networks{$ap}{ap} ||= $ap;
#- wpa_supplicant may list the network two times, use ||=
- $networks{$1}{frequency} ||= $2;
+ $networks{$ap}{frequency} ||= $frequency;
#- signal level is really too high in wpa_supplicant
#- this should be standardized at some point
- $networks{$1}{signal_level} ||= int($3/3.5);
- $networks{$1}{flags} ||= $4;
- $networks{$1}{essid} ||= $5 if $5 ne '<hidden>';
+ $networks{$ap}{signal_strength} ||= int($signal_strength/3.5);
+ my $adhoc = $flags =~ s/\[ibss\]//i;
+ $networks{$ap}{mode} ||= $adhoc ? "Ad-Hoc" : "Managed";
+ $networks{$ap}{flags} ||= $flags;
+ $networks{$ap}{essid} ||= $essid;
}
#- network id / ssid / bssid / flags
while ($list =~ /^(\d+)\t(.*?)\t(.*?)\t(.*)$/mg) {
- if (my $net = $networks{$3} || find { $_->{essid} eq $2 } values(%networks)) {
+ foreach my $net (uniq(if_($networks{$3}, $networks{$3}), grep { $_->{essid} eq $2 } values(%networks))) {
+ $net->{ap} = $3 if $3 ne 'any';
$net->{id} = $1;
$net->{essid} ||= $2;
$net->{current} = to_bool($4 eq '[CURRENT]');
}
}
- } elsif ($o_intf) {
+ } else {
#- else use iwlist
- my $current_essid = chomp_(`/sbin/iwgetid -r $o_intf`);
- my $current_ap = lc(chomp_(`/sbin/iwgetid -r -a $o_intf`));
- my @list = `/sbin/iwlist $o_intf scanning`;
+ require network::connection::wireless;
+ my ($current_essid, $current_ap) = network::connection::wireless::get_access_point($o_intf);
+ if ($o_intf && !$> && !`/sbin/ip link show $o_intf up`) {
+ system("/sbin/ip link set $o_intf up");
+ }
+ my @list = `/sbin/iwlist $o_intf scanning 2>/dev/null`;
my $net = {};
+ my $quality_match = qr/Quality[:=](\S*)/;
+ my $eval_quality = sub {
+ my ($qual) = @_;
+ $qual =~ m!/! ? eval($qual)*100 : $qual;
+ };
foreach (@list) {
if ((/^\s*$/ || /Cell/) && exists $net->{ap}) {
$net->{current} = to_bool($net->{essid} && $net->{essid} eq $current_essid || $net->{ap} eq $current_ap);
@@ -62,16 +75,23 @@ sub list_wireless {
/Address: (.*)/ and $net->{ap} = lc($1);
/ESSID:"(.*?)"/ and $net->{essid} = $1;
/Mode:(\S*)/ and $net->{mode} = $1;
- if (m!Quality[:=](\S*)/!) {
- my $qual = $1;
- $net->{signal_level} = $qual =~ m!/! ? eval($qual)*100 : $qual;
- }
- /Extra:wpa_ie=/ and $net->{flags} = '[WPA]';
+ $_ =~ $quality_match and $net->{signal_strength} = $eval_quality->($1);
+ m|Signal level:([0-9]+/[0-9]+)| && !$net->{signal_strength} and $net->{signal_strength} = eval($1)*100;
+ /Extra:wpa_ie=|IE:.*WPA/ and $net->{flags} = '[WPA]';
/key:(\S*)\s/ and $net->{flags} ||= $1 eq 'on' && '[WEP]';
}
+ if ($current_ap && exists $networks{$current_ap}) {
+ foreach (`/sbin/iwconfig $o_intf 2>/dev/null`) {
+ my $quality = $_ =~ $quality_match && $eval_quality->($1);
+ $networks{$current_ap}{signal_strength} = $quality if $quality;
+ }
+ }
}
- $networks{$_}{approx_level} = 20 + min(80, int($networks{$_}{signal_level}/20)*20) foreach keys %networks;
+ foreach (values %networks) {
+ $_->{essid} eq '<hidden>' and undef $_->{essid};
+ $_->{name} = $_->{essid} || "[$_->{ap}]";
+ }
(\%networks, $has_roaming);
}
diff --git a/lib/network/ndiswrapper.pm b/lib/network/ndiswrapper.pm
index 83f0c37..27df51c 100644
--- a/lib/network/ndiswrapper.pm
+++ b/lib/network/ndiswrapper.pm
@@ -15,7 +15,7 @@ sub present_devices {
my ($driver) = @_;
my @supported_devices;
foreach (all($::prefix . "$ndiswrapper_root/$driver")) {
- my ($ids) = /^([0-9A-Z]{4}:[0-9A-Z]{4})\.[05]\.conf$/;
+ my ($ids) = /^([0-9A-F]{4}:[0-9A-F]{4})\.[0-9A-F]\.conf$/;
$ids and push @supported_devices, $ids;
}
grep { member(uc(sprintf("%04x:%04x", $_->{vendor}, $_->{id})), @supported_devices) } detect_devices::probeall();
@@ -30,7 +30,7 @@ sub get_devices {
sub ask_driver {
my ($in) = @_;
- if (my $inf_file = $in->ask_file(N("Please select the Windows driver (.inf file)"), "/mnt/cdrom")) {
+ if (my $inf_file = $in->ask_file(N("Please select the Windows driver (.inf file)"), "/media/cdrom")) {
my $driver = basename(lc($inf_file));
$driver =~ s/\.inf$//;
@@ -53,13 +53,10 @@ sub find_matching_devices {
my $net_path = '/sys/class/net';
my @devices;
+ require network::connection::ethernet;
foreach my $interface (all($net_path)) {
- my $dev_path = "$net_path/$interface/device";
- -l $dev_path or next;
- my $map = detect_devices::get_sysfs_device_id_map($dev_path);
- if (every { hex(chomp_(cat_("$dev_path/" . $map->{$_}))) eq $device->{$_} } keys %$map) {
- my $driver = readlink("$dev_path/driver");
- $driver =~ s!.*/!!;
+ if (network::connection::ethernet::device_matches_interface($device, $interface)) {
+ my $driver = network::connection::ethernet::interface_to_driver($interface);
push @devices, [ $interface, $driver ] if $driver;
}
}
@@ -94,6 +91,10 @@ sub setup_device {
if (@conflicts) {
$in->ask_yesorno(N("Warning"), N("The selected device has already been configured with the %s driver.
Do you really want to use a ndiswrapper driver?", $conflicts[0][1])) or return;
+ #- unload the old module and try immediately to load ndiswrapper
+ eval { modules::unload($conflicts[0][1]) };
+ eval { modules::unload("ndiswrapper") };
+ eval { modules::load("ndiswrapper") };
}
my $interface = find_interface($device);
@@ -105,4 +106,33 @@ Do you really want to use a ndiswrapper driver?", $conflicts[0][1])) or return;
$interface;
}
+sub select_device {
+ my ($in) = @_;
+ my $driver;
+ my @drivers = installed_drivers();
+ if (@drivers) {
+ $driver ||= first(@drivers);
+ $in->ask_from('', N("Choose an ndiswrapper driver"), [
+ { type => "list", val => \$driver, allow_empty_list => 1,
+ list => [ undef, @drivers ],
+ format => sub { defined $_[0] ? N("Use the ndiswrapper driver %s", $_[0]) : N("Install a new driver") } }
+ ]) or return;
+ }
+ $driver ||= ask_driver($in) or return;
+
+ my @devices = get_devices($in, $driver) or return;
+ my $device;
+ if (@devices == 1) {
+ #- only one device matches installed driver
+ $device = $devices[0];
+ } else {
+ $in->ask_from('', N("Select a device:"), [
+ { type => "list", val => \$device, allow_empty_list => 1,
+ list => [ present_devices($driver) ],
+ format => sub { $_[0]{description} } }
+ ]) or return;
+ }
+ return $device;
+}
+
1;
diff --git a/lib/network/netconnect.pm b/lib/network/netconnect.pm
index adf7f20..ee47c56 100644
--- a/lib/network/netconnect.pm
+++ b/lib/network/netconnect.pm
@@ -11,22 +11,14 @@ use services;
use network::network;
use network::tools;
use network::thirdparty;
+use network::connection;
sub detect {
my ($modules_conf, $auto_detect, $o_class) = @_;
my %l = (
isdn => sub {
- require network::isdn;
- $auto_detect->{isdn} = network::isdn::detect_backend($modules_conf);
- },
- lan => sub { # ethernet
- require network::ethernet;
- modules::load_category($modules_conf, list_modules::ethernet_categories());
- $auto_detect->{lan} = { map { $_->[0] => $_->[1] } network::ethernet::get_eth_cards($modules_conf) };
- },
- adsl => sub {
- require network::adsl;
- $auto_detect->{adsl} = network::adsl::adsl_detect();
+ require network::connection::isdn;
+ $auto_detect->{isdn} = network::connection::isdn::detect_backend($modules_conf);
},
modem => sub {
$auto_detect->{modem} = { map { $_->{description} || "$_->{MANUFACTURER}|$_->{DESCRIPTION} ($_->{device})" => $_ } detect_devices::getModem($modules_conf) };
@@ -59,30 +51,17 @@ sub real_main {
my ($net, $in, $modules_conf) = @_;
#- network configuration should have been already read in $net at this point
my $mouse = $::o->{mouse} || {};
- my ($cnx_type, @all_cards, %eth_intf, %all_eth_intf, %unavailable_wireless_intf);
- my (%connections, @connection_list);
+ my (@connections_list, $connection, @providers_data, $provider_name, $protocol_settings, $access_settings, $control_settings);
+ my $connection_compat;
+ my ($hardware_settings, $network_access_settings, $address_settings, $hostname_settings);
my ($modem, $modem_name, $modem_dyn_dns, $modem_dyn_ip);
- my $cable_no_auth;
- my (@adsl_devices, %adsl_cards, %adsl_data, $adsl_data, $adsl_provider, $adsl_old_provider, $adsl_vpi, $adsl_vci);
- my ($ntf_name, $gateway_ex, $up);
+ my ($up);
my ($isdn, $isdn_name, $isdn_type, %isdn_cards, @isdn_dial_methods);
my $my_isdn = join('', N("Manual choice"), " (", N("Internal ISDN card"), ")");
- my (@ndiswrapper_drivers, $ndiswrapper_driver, $ndiswrapper_device);
- my ($is_wireless, $wireless_enc_mode, $wireless_enc_key, $need_rt2x00_iwpriv, $wireless_roaming, $need_wpa_supplicant);
- my ($dvb_adapter, $dvb_ad, $dvb_net, $dvb_pid);
- my ($module, $auto_ip, $protocol, $onboot, $needhostname, $peerdns, $peeryp, $peerntpd, $ifplugd, $track_network_id, $ipv6_tunnel, $need_network_restart);
my $success = 1;
- my $ethntf = {};
my $db_path = "/usr/share/apps/kppp/Provider";
my (%countries, @isp, $country, $provider, $old_provider);
- my %l10n_lan_protocols = (
- static => N("Manual configuration"),
- dhcp => N("Automatic IP (BOOTP/DHCP)"),
- if_(0,
- dhcp_zeroconf => N("Automatic IP (BOOTP/DHCP/Zeroconf)"),
- )
- );
my $_w = N("Protocol for the rest of the world");
my %isdn_protocols = (
2 => N("European protocol (EDSS1)"),
@@ -91,56 +70,6 @@ sub real_main {
$net->{autodetect} = {};
- my $lan_detect = sub {
- detect($modules_conf, $net->{autodetect}, 'lan');
- @all_cards = network::ethernet::get_eth_cards($modules_conf);
- %all_eth_intf = network::ethernet::get_eth_cards_names(@all_cards); #- needed not to loose GATEWAYDEV
- %eth_intf = map { $_->[0] => join(': ', $_->[0], $_->[2] || N("Unknown driver")) }
- grep { to_bool($is_wireless) == detect_devices::is_wireless_interface($_->[0]) } @all_cards;
- my %available;
- $available{$_->[2]} = undef foreach grep { $_->[2] } @all_cards;
- %unavailable_wireless_intf = map {
- $_->{driver} => sprintf('%s (%s): %s', N("unknown"), $_->{driver}, $_->{description});
- } grep { !exists($available{$_->{description}}) } modules::probe_category('network/wireless');
- };
-
- my $is_dvb_interface = sub { $_[0]{DEVICE} =~ /^dvb\d+_\d+/ };
-
- my $find_lan_module = sub {
- if (my $dev = find { $_->{device} eq $ethntf->{DEVICE} } detect_devices::pcmcia_probe()) { # PCMCIA case
- $module = $dev->{driver};
- } elsif ($dev = find { $_->[0] eq $ethntf->{DEVICE} } @all_cards) {
- $module = $dev->[1];
- } elsif ($is_dvb_interface->($ethntf)) {
- $module = $dvb_adapter->{driver};
- } else { $module = "" }
- };
-
- my %adsl_descriptions = (
- speedtouch => N("Alcatel speedtouch USB modem"),
- sagem => N("Sagem USB modem"),
- bewan => N("Bewan modem"),
- eci => N("ECI Hi-Focus modem"), # this one needs eci agreement
- );
-
- my %adsl_types = (
- dhcp => N("Dynamic Host Configuration Protocol (DHCP)"),
- static => N("Manual TCP/IP configuration"),
- pptp => N("Point to Point Tunneling Protocol (PPTP)"),
- pppoe => N("PPP over Ethernet (PPPoE)"),
- pppoa => N("PPP over ATM (PPPoA)"),
- capi => N("DSL over CAPI"),
- );
-
- my %encapsulations = (
- 1 => N("Bridged Ethernet LLC"),
- 2 => N("Bridged Ethernet VC"),
- 3 => N("Routed IP LLC"),
- 4 => N("Routed IP VC"),
- 5 => N("PPPoA LLC"),
- 6 => N("PPPoA VC"),
- );
-
my %ppp_auth_methods = (
0 => N("Script-based"),
1 => N("PAP"),
@@ -149,95 +78,34 @@ sub real_main {
4 => N("PAP/CHAP"),
);
- my $offer_to_connect = sub {
- #- FIXME: create $try_to_connect sub out of this code
- #- merge with "ask_connect_now" post code
- if ($net->{type} eq 'adsl' && !member($net->{adsl}{method}, qw(static dhcp)) ||
- member($net->{type}, qw(modem isdn isdn_external))) {
- return "ask_connect_now";
- }
-
- unless ($::isInstall) {
- if ($need_network_restart) {
- services::restart("network");
- } else {
- #- FIXME: move this in network::tools::restart_net_interface
- network::tools::stop_net_interface($net, 0);
- if (exists $net->{adsl}{ethernet_device}) {
- network::tools::stop_interface($net->{adsl}{ethernet_device}, 0);
- network::tools::start_interface($net->{adsl}{ethernet_device}, 0);
- }
- network::tools::start_net_interface($net, 0);
- }
- }
- #- FIXME: check for connection here
- #- check for real interface in connection test
- #- don't block when checking connection
- #- return "after_connect" (old "disconnect" step)
- return "end";
- };
-
- my $after_lan_intf_selection = sub { $is_wireless ? 'wireless' : 'lan_protocol' };
-
- my $after_start_on_boot_step = sub {
- #- can't be done in adsl_account step because of static/dhcp adsl methods
- #- we need to write sagem specific parameters and load corresponding modules/programs (sagem/speedtouch)
- $net->{type} eq 'adsl' and network::adsl::adsl_conf_backend($in, $modules_conf, $net);
-
- network::network::configure_network($net, $in, $modules_conf);
- #- FIXME: always run "ask_connect_now"
- return $offer_to_connect->();
- };
-
- my $goto_start_on_boot_ifneeded = sub {
- return $after_start_on_boot_step->() if $net->{type} eq "lan";
- return "isdn_dial_on_boot" if $net->{type} eq 'isdn';
- return "network_on_boot";
- };
-
- my $delete_gateway_settings = sub {
- my ($device) = @_;
- #- delete gateway settings if gateway device is invalid or matches the reconfigured device
- if (!$net->{network}{GATEWAYDEV} || !exists $eth_intf{$net->{network}{GATEWAYDEV}} || $net->{network}{GATEWAYDEV} eq $device) {
- delete $net->{network}{GATEWAY};
- delete $net->{network}{GATEWAYDEV};
- }
- };
-
- my $ndiswrapper_do_device_selection = sub {
- $ntf_name = network::ndiswrapper::setup_device($in, $ndiswrapper_device);
- unless ($ntf_name) {
- undef $ndiswrapper_device;
- return;
- }
-
- #- redetect interfaces (so that the ndiswrapper module can be detected)
- $lan_detect->();
-
- $ethntf = $net->{ifcfg}{$ntf_name} ||= { DEVICE => $ntf_name };
-
- 1;
- };
-
- my $ndiswrapper_do_driver_selection = sub {
- my @devices = network::ndiswrapper::get_devices($in, $ndiswrapper_driver);
-
- if (!@devices) {
- undef $ndiswrapper_driver;
- return;
- } elsif (@devices == 1) {
- #- only one device matches installed driver
- $ndiswrapper_device = $devices[0];
- return $ndiswrapper_do_device_selection->();
+ my %steps_compat = (
+ 'network::connection::isdn' => 'isdn',
+ 'network::connection::pots' => 'modem',
+ );
+
+ my $get_next = sub {
+ my ($step) = @_;
+ my @steps = (
+ "select_connection" => sub { 0 },
+ "configure_hardware" => sub { $connection->can('get_hardware_settings') && !$connection->{device}{no_hardware_settings} },
+ #- network is for example wireless/3G access point
+ "select_network" => sub { $connection->can('get_networks') },
+ "configure_network_access" => sub { $connection->can('get_network_access_settings') },
+ #- allow to select provider after network
+ "select_provider" => sub { $connection->can('get_providers') },
+ #- protocol may depend on provider settings (xDSL)
+ "select_protocol" => sub { $connection->can('get_protocols') },
+ #- peer settings may depend on provider and protocol (VPI/VCI for xDSL)
+ "configure_access" => sub { $connection->can('get_access_settings') },
+ "configure_address" => sub { $connection->can('get_address_settings') || $connection->can('get_hostname_settings') },
+ "configure_control" => sub { $connection->can('get_control_settings') },
+ "apply_connection" => sub { 1 },
+ );
+ my $can;
+ foreach (group_by2(@steps)) {
+ $can && $_->[1]->() and return $_->[0];
+ $can ||= $_->[0] eq $step;
}
-
- 1;
- };
-
- my $ndiswrapper_next_step = sub {
- return $ndiswrapper_device ? $after_lan_intf_selection->() :
- $ndiswrapper_driver ? 'ndiswrapper_select_device' :
- 'ndiswrapper_select_driver';
};
use locale;
@@ -249,39 +117,199 @@ sub real_main {
defaultimage => "drakconnect.png",
name => N("Network & Internet Configuration"),
pages => {
- welcome =>
- {
- pre => sub {
- my @connections = (
- [ N("LAN connection"), "lan" ],
- [ N("Wireless connection"), "lan" ],
- [ N("ADSL connection"), "adsl" ],
- [ N("Cable connection"), "cable" ],
- [ N("ISDN connection"), "isdn" ],
- [ N("Modem connection"), "modem" ],
- [ N("DVB connection"), "dvb" ],
- );
-
- foreach (@connections) {
- my ($string, $type) = @$_;
- $connections{$string} = $type;
- }
- @connection_list = { val => \$cnx_type, type => 'list', list => [ map { $_->[0] } @connections ], };
- },
+ welcome => {
+ pre => sub { undef $net->{type} },
if_(!$::isInstall, no_back => 1),
name => N("Choose the connection you want to configure"),
interactive_help_id => 'configureNetwork',
- data => \@connection_list,
- post => sub {
- $is_wireless = $cnx_type eq N("Wireless connection");
- return $net->{type} = $connections{$cnx_type};
+ data => [ { list => [ network::connection::get_types ],
+ type => 'list', val => \$net->{type}, format => sub { $_[0] && $_[0]->get_type_description },
+ gtk => { use_scrolling => 1 } } ],
+ complete => sub {
+ my @packages = $net->{type}->can('get_packages') ? $net->{type}->get_packages : ();
+ if (@packages && !$in->do_pkgs->install(@packages)) {
+ $in->ask_warn(N("Error"), N("Could not install the packages (%s)!", join(', ', @packages)));
+ 1;
+ }
},
+ post => sub {
+ if (exists $steps_compat{$net->{type}}) {
+ return $steps_compat{$net->{type}};
+ }
+ @connections_list = $net->{type}->get_connections;
+ @connections_list ? "select_connection" : "no_connection";
+ },
+ },
+
+ select_connection => {
+ name => sub { $net->{type}->get_type_name . "\n\n" . N("Select the network interface to configure:") },
+ data => [ { val => \$connection, type => 'list', list => \@connections_list,
+ format => sub { $_[0] && $_[0]->get_description }, allow_empty_list => 1 } ],
+ complete => sub {
+ $connection->setup_thirdparty($in) or return 1;
+ $connection->prepare_device;
+ if ($connection->can("check_device") && !$connection->check_device) {
+ $in->ask_warn('', $connection->{device}{error});
+ return 1;
+ }
+ return 0;
+ },
+ post => sub {
+ $connection->load_interface_settings;
+ $get_next->("select_connection");
+ },
+ },
+
+ no_connection => {
+ name => sub { $net->{type}->get_type_name . "\n\n" . N("No device can be found for this connection type.") },
+ end => 1,
+ },
+
+ configure_hardware => {
+ pre => sub {
+ $hardware_settings = $connection->get_hardware_settings;
+ $connection->guess_hardware_settings if $connection->can('guess_hardware_settings');
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . N("Hardware Configuration") },
+ data => sub { $hardware_settings },
+ complete => sub {
+ if ($connection->can('check_hardware')) {
+ my $_w = $in->wait_message('', N("Configuring device..."));
+ if (!$connection->check_hardware) {
+ $in->ask_warn(N("Error"), $connection->{hardware}{error}) if $connection->{hardware}{error};
+ return 1;
+ }
+ }
+ },
+ post => sub { $get_next->("configure_hardware") },
+ },
+
+ select_provider => {
+ pre => sub {
+ @providers_data = $connection->get_providers;
+ require lang;
+ my $locale_country = lang::c2name($::o->{locale}{country} || lang::read()->{country});
+ $provider_name = find { /^$locale_country/ } sort(keys %{$providers_data[0]});
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . N("Please select your provider:") },
+ data => sub {
+ [ { type => "list", val => \$provider_name, separator => $providers_data[1],
+ list => [ N("Unlisted - edit manually"), sort(keys %{$providers_data[0]}) ], sort => 0 } ];
+ },
+ post => sub {
+ if ($provider ne N("Unlisted - edit manually")) {
+ $connection->set_provider($providers_data[0]{$provider_name});
+ }
+ $get_next->("select_provider");
+ },
+ },
+
+ select_network => {
+ pre => sub {
+ my $_w = $in->wait_message('', N("Scanning for networks..."));
+ $connection->get_networks;
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . N("Please select your network:") },
+ data => sub {
+ [ { type => "list", val => \$connection->{network}, allow_empty_list => 1,
+ list => [ keys %{$connection->{networks}}, undef ], gtk => { use_scrolling => 1 },
+ format => sub { exists $connection->{networks}{$_[0]} ?
+ $connection->{networks}{$_[0]}{name} :
+ N("Unlisted - edit manually");
+ } } ];
+ },
+ post => sub {
+ $get_next->("select_network");
+ },
+ },
+
+ configure_network_access => {
+ pre => sub {
+ $network_access_settings = $connection->get_network_access_settings;
+ $connection->guess_network_access_settings if $connection->can('guess_network_access_settings');
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . $connection->get_network_access_settings_label },
+ data => sub { $network_access_settings },
+ post => sub { $get_next->("configure_network_access") },
+ },
+
+ select_protocol => {
+ pre => sub {
+ $protocol_settings = $connection->get_protocol_settings;
+ $connection->guess_protocol($net) if $connection->can('guess_protocol');
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . N("Please select your connection protocol.
+If you do not know it, keep the preselected protocol.") },
+ data => sub { $protocol_settings },
+ post => sub { $get_next->("select_protocol") },
+ },
+
+ configure_access => {
+ pre => sub {
+ $access_settings = $connection->get_access_settings;
+ $connection->guess_access_settings if $connection->can('guess_access_settings');
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . $connection->get_access_settings_label },
+ data => sub { $access_settings },
+ post => sub { $get_next->("configure_access") },
+ },
+
+ configure_address => {
+ pre => sub {
+ $address_settings = $connection->can('get_address_settings') && $connection->get_address_settings;
+ $connection->guess_address_settings if $connection->can('guess_address_settings');
+ $hostname_settings = $connection->can('get_hostname_settings') && $connection->get_hostname_settings;
+ $connection->guess_hostname_settings if $connection->can('guess_hostname_settings');
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . $connection->get_address_settings_label },
+ data => sub { [ @$address_settings, @$hostname_settings ] },
+ complete => sub {
+ if ($connection->can('check_address_settings') && !$connection->check_address_settings($net)) {
+ $in->ask_warn(N("Error"), $connection->{address}{error}{message});
+ my $index = eval { find_index { $_->{val} eq $connection->{address}{error}{field} } @$address_settings };
+ return 1, $index;
+ }
+ return 0;
+ },
+ post => sub { $get_next->("configure_address") },
+ },
+
+ configure_control => {
+ pre => sub {
+ $control_settings = $connection->get_control_settings;
+ $connection->can('get_network_control_settings') and
+ push @$control_settings, @{$connection->get_network_control_settings};
+ $connection->guess_control_settings if $connection->can('guess_control_settings');
+ $connection->guess_network_control_settings if $connection->can('guess_network_control_settings');
+ },
+ name => sub { $net->{type}->get_type_name . "\n\n" . N("Connection control") },
+ data => sub { $control_settings },
+ post => sub { $get_next->("configure_control") },
+ },
+
+ apply_connection => {
+ name => N("Do you want to start the connection now?"),
+ type => "yesorno",
+ complete => sub {
+ $connection->can('install_packages') && !$connection->install_packages($in);
+ },
+ post => sub {
+ my ($answer) = @_;
+ $connection->unload_connection if $connection->can('unload_connection');
+ $connection->write_settings($net, $modules_conf);
+ $connection->prepare_connection if $connection->can('prepare_connection');
+ if ($answer) {
+ $connection->disconnect;
+ $connection->connect;
+ }
+ "end"; #- handle disconnection in install?
+ },
},
isdn_account =>
{
pre => sub {
- network::isdn::get_info_providers_backend($isdn, $provider);
+ network::connection::isdn::get_info_providers_backend($isdn, $provider);
$isdn->{huptimeout} ||= 180;
},
name => N("Connection Configuration") . "\n\n" . N("Please fill or check the field below"),
@@ -305,38 +333,10 @@ sub real_main {
];
},
post => sub {
- network::isdn::write_config($in, $isdn);
+ network::connection::isdn::apply_config($in, $isdn);
$net->{net_interface} = 'ippp0';
- "allow_user_ctl";
- },
- },
-
- cable =>
- {
- pre => sub {
- $cable_no_auth = sub { $net->{cable}{bpalogin} eq N("None") };
- },
- name => N("Cable: account options"),
- data => sub {
- [
- { label => N("Authentication"), type => "list", val => \$net->{cable}{bpalogin}, list => [ N("None"), N("Use BPALogin (needed for Telstra)") ] },
- { label => N("Account Login (user name)"), val => \$net->{cable}{login}, disabled => $cable_no_auth },
- { label => N("Account Password"), val => \$net->{cable}{passwd}, hidden => 1, disabled => $cable_no_auth },
- ];
- },
- complete => sub {
- !$cable_no_auth->() && !$in->do_pkgs->ensure_is_installed('bpalogin', '/usr/sbin/bpalogin');
+ "isdn_dial_on_boot";
},
- post => sub {
- my $use_bpalogin = !$cable_no_auth->();
- $use_bpalogin and substInFile {
- s/username\s+.*\n/username $net->{cable}{login}\n/;
- s/password\s+.*\n/password $net->{cable}{passwd}\n/;
- } "$::prefix/etc/bpalogin.conf";
- services::set_status("bpalogin", $use_bpalogin);
- $auto_ip = 1;
- return "lan";
- }
},
isdn =>
@@ -366,11 +366,11 @@ sub real_main {
$isdn->{description} =~ s/\|/ -- /;
}
- network::isdn::read_config($isdn);
+ network::connection::isdn::read_config($isdn);
$isdn->{driver} = $isdn_cards{$isdn_name}{driver}; #- do not let config overwrite default driver
#- let the user choose hisax or capidrv if both are available
- $isdn->{driver} ne "capidrv" && network::isdn::get_capi_card($in, $isdn) and return "isdn_driver";
+ $isdn->{driver} ne "capidrv" && network::connection::isdn::get_capi_card($in, $isdn) and return "isdn_driver";
return "isdn_protocol";
},
},
@@ -379,7 +379,7 @@ sub real_main {
isdn_ask =>
{
pre => sub {
- %isdn_cards = network::isdn::get_cards();
+ %isdn_cards = network::connection::isdn::get_cards();
},
name => N("Select a device!"),
data => sub { [ { label => N("Net Device"), val => \$isdn_name, type => 'list', separator => '|', list => [ keys %isdn_cards ], allow_empty_list => 1 } ] },
@@ -413,7 +413,7 @@ If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your card.
$e = $in->ask_from_listf(N("ISDN Configuration"),
N("Which of the following is your ISDN card?"),
sub { $_[0]{description} },
- [ network::isdn::get_cards_by_type($isdn->{card_type}) ]) or goto($isdn->{card_type} =~ /usb|pci/ ? 'isdn_ask_step_1' : 'isdn_ask_step_1b');
+ [ network::connection::isdn::get_cards_by_type($isdn->{card_type}) ]) or goto($isdn->{card_type} =~ /usb|pci/ ? 'isdn_ask_step_1' : 'isdn_ask_step_1b');
$e->{$_} and $isdn->{$_} = $e->{$_} foreach qw(driver type mem io io0 io1 irq firmware);
},
@@ -460,7 +460,7 @@ If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your card.
name => N("ISDN Configuration") . "\n\n" . N("Select your provider.\nIf it is not listed, choose Unlisted."),
data => sub {
[ { label => N("Provider:"), type => "list", val => \$provider, separator => '|',
- list => [ N("Unlisted - edit manually"), network::isdn::read_providers_backend() ] } ];
+ list => [ N("Unlisted - edit manually"), network::connection::isdn::read_providers_backend() ] } ];
},
next => "isdn_account",
},
@@ -497,9 +497,11 @@ Take a look at http://www.linmodems.org"),
#- some modem configuration programs modify modprobe.conf while we're loaded
#- so write it now and reload then
$modules_conf->write;
- my $ret = network::thirdparty::setup_device($in, 'rtc', $driver, $modem, qw(device));
- $modules_conf->read if $ret;
- !$ret;
+ require network::connection::pots;
+ my $settings = network::thirdparty::apply_settings($in, 'pots', network::connection::pots::get_thirdparty_settings(), $driver);
+ $modem->{device} = $settings->{device} if $settings;
+ $modules_conf->read if $settings;
+ !$settings;
},
post => sub {
return 'choose_serial_port' if $modem_name eq N("Manual choice");
@@ -526,7 +528,7 @@ Take a look at http://www.linmodems.org"),
interactive_help_id => 'selectSerialPort',
data => sub {
[ { val => \$modem->{device}, format => \&mouse::serial_port2text, type => "list",
- list => [ grep { $_ ne $mouse->{device} } (mouse::serial_ports(), grep { -e $_ } '/dev/modem', '/dev/ttySL0', '/dev/ttyS14',) ] } ];
+ list => [ grep { $_ ne $mouse->{device} } (mouse::serial_ports(), glob_("/dev/ttyUSB*"), grep { -e $_ } '/dev/modem', '/dev/ttySL0', '/dev/ttyS14',) ] } ];
},
post => sub {
return 'ppp_provider';
@@ -639,669 +641,27 @@ Take a look at http://www.linmodems.org"),
post => sub {
network::modem::ppp_configure($net, $in, $modem);
$net->{net_interface} = 'ppp0';
- "allow_user_ctl";
- },
- },
-
-
- adsl =>
- {
- pre => sub {
- $lan_detect->();
- @adsl_devices = keys %eth_intf;
-
- detect($modules_conf, $net->{autodetect}, 'adsl');
- %adsl_cards = ();
- foreach my $modem_type (keys %{$net->{autodetect}{adsl}}) {
- foreach my $modem (@{$net->{autodetect}{adsl}{$modem_type}}) {
- my $name = join(': ', $adsl_descriptions{$modem_type}, $modem->{description});
- $adsl_cards{$name} = [ $modem_type, $modem ];
- }
- }
- push @adsl_devices, keys %adsl_cards;
-
- detect($modules_conf, $net->{autodetect}, 'isdn');
- if (my @isdn_modems = @{$net->{autodetect}{isdn}}) {
- require network::isdn;
- %isdn_cards = map { $_->{description} => $_ } grep { $_->{driver} =~ /dsl/i } map { network::isdn::get_capi_card($in, $_) } @isdn_modems;
- push @adsl_devices, keys %isdn_cards;
- }
- },
- name => N("ADSL configuration") . "\n\n" . N("Select the network interface to configure:"),
- data => [ { label => N("Net Device"), type => "list", val => \$ntf_name, allow_empty_list => 1,
- list => \@adsl_devices, format => sub { $eth_intf{$_[0]} || $_[0] } } ],
- complete => sub {
- exists $adsl_cards{$ntf_name} && !network::thirdparty::setup_device($in, 'dsl', $adsl_cards{$ntf_name}[0]);
- },
- post => sub {
- if (exists $adsl_cards{$ntf_name}) {
- my $modem;
- ($ntf_name, $modem) = @{$adsl_cards{$ntf_name}};
- $net->{adsl}{bus} = $modem->{bus} if $ntf_name eq 'bewan';
- }
- if (exists($isdn_cards{$ntf_name})) {
- require network::isdn;
- $net->{adsl}{capi_card} = $isdn_cards{$ntf_name};
- $net->{adsl}{method} = "capi";
- return 'adsl_account';
- }
- return 'adsl_provider';
- },
- },
-
-
- adsl_provider =>
- {
- pre => sub {
- require network::adsl_consts;
- %adsl_data = %network::adsl_consts::adsl_data if is_empty_hash_ref(\%adsl_data);
- $adsl_old_provider = $adsl_provider;
- if (!$adsl_provider) {
- require lang;
- my $locale_country = lang::c2name($::o->{locale}{country} || lang::read()->{country});
- $adsl_provider = find { /^$locale_country/ } sort(keys %adsl_data);
- }
- },
- name => N("Please choose your ADSL provider"),
- data => sub {
- [ { label => N("Provider:"), type => "list", val => \$adsl_provider, separator => '|',
- list => [ sort(N("Unlisted - edit manually"), keys %adsl_data) ], sort => 0 } ];
- },
- post => sub {
- $net->{adsl}{method} = 'pppoa' if member($ntf_name, qw(bewan speedtouch));
- if ($adsl_provider ne N("Unlisted - edit manually")) {
- $adsl_data = $adsl_data{$adsl_provider};
- if ($adsl_provider ne $adsl_old_provider) {
- $net->{adsl}{$_} = $adsl_data->{$_} foreach qw(Encapsulation vpi vci provider_id method);
- $net->{resolv}{$_} = $adsl_data->{$_} foreach qw(DOMAINNAME2);
- }
- }
- return 'adsl_protocol';
- },
- },
-
-
- adsl_protocol =>
- {
- pre => sub {
- # preselect right protocol for ethernet though connections:
- if (!exists $adsl_descriptions{$ntf_name}) {
- $ethntf = $net->{ifcfg}{$ntf_name} ||= { DEVICE => $ntf_name };
- $net->{adsl}{method} ||= $ethntf->{BOOTPROTO} || "dhcp";
- #- pppoa shouldn't be selected by default for ethernet devices, fallback on pppoe
- $net->{adsl}{method} = "pppoe" if $net->{adsl}{method} eq "pppoa";
- }
- },
- name => N("Please choose your DSL connection type.
-If you do not know it, keep the preselected type."),
- data => [
- { text => N("ADSL connection type:"), val => \$net->{adsl}{method}, type => "list",
- list => [ sort { $adsl_types{$a} cmp $adsl_types{$b} } keys %adsl_types ],
- format => sub { $adsl_types{$_[0]} },
- },
- ],
- post => sub {
- my $real_interface = $ntf_name;
- $net->{type} = 'adsl';
- # blacklist bogus driver, enable ifplugd support else:
- $find_lan_module->();
- $ethntf->{MII_NOT_SUPPORTED} ||= bool2yesno(network::ethernet::is_ifplugd_blacklisted($module));
- if ($ntf_name eq "sagem" && member($net->{adsl}{method}, qw(static dhcp))) {
- #- "fctStartAdsl -i" builds ifcfg-ethX from ifcfg-sagem and echoes ethX
- #- it auto-detects dhcp/static modes thanks to encapsulation setting
- $ethntf = $net->{ifcfg}{sagem} ||= {};
- $ethntf->{DEVICE} = "`/usr/sbin/fctStartAdsl -i`";
- $ethntf->{MII_NOT_SUPPORTED} = "yes";
- }
- if ($ntf_name eq "speedtouch" && member($net->{adsl}{method}, qw(static dhcp))) {
- #- use ATMARP with the atm0 interface
- $real_interface = "atm0";
- $ethntf = $net->{ifcfg}{$real_interface} ||= {};
- $ethntf->{DEVICE} = $real_interface;
- $ethntf->{ATM_ADDR} = undef;
- $ethntf->{MII_NOT_SUPPORTED} = "yes";
- }
- #- delete gateway settings if gateway device is invalid or if reconfiguring the gateway interface
- exists $net->{ifcfg}{$real_interface} and $delete_gateway_settings->($real_interface);
- # process static/dhcp ethernet devices:
- if (exists($net->{ifcfg}{$real_interface}) && member($net->{adsl}{method}, qw(static dhcp))) {
- $ethntf->{TYPE} = "ADSL";
- $auto_ip = $net->{adsl}{method} eq 'dhcp';
- return 'lan_intf';
- }
- member($net->{adsl}{method}, qw(pppoe pptp)) and $net->{adsl}{ethernet_device} = $ntf_name;
- return 'adsl_account';
- },
- },
-
-
- adsl_account =>
- {
- pre => sub {
- network::adsl::adsl_probe_info($net);
- $net->{net_interface} = 'ppp0';
- $net->{ifcfg}{ppp0} ||= {};
- ($adsl_vpi, $adsl_vci) = (hex($net->{adsl}{vpi}), hex($net->{adsl}{vci}));
- },
- name => N("Connection Configuration") . "\n\n" .
- N("Please fill or check the field below"),
- data => sub {
- [
- if_(0, { label => N("Provider name (ex provider.net)"), val => \$net->{resolv}{DOMAINNAME2} }),
- { label => N("First DNS Server (optional)"), val => \$net->{resolv}{dnsServer2} },
- { label => N("Second DNS Server (optional)"), val => \$net->{resolv}{dnsServer3} },
- { label => N("Account Login (user name)"), val => \$net->{adsl}{login} },
- { label => N("Account Password"), val => \$net->{adsl}{passwd}, hidden => 1 },
- if_($net->{adsl}{method} ne "capi",
- { label => N("Virtual Path ID (VPI):"), val => \$adsl_vpi, advanced => 1 },
- { label => N("Virtual Circuit ID (VCI):"), val => \$adsl_vci, advanced => 1 }
- ),
- if_($ntf_name eq "sagem",
- { label => N("Encapsulation:"), val => \$net->{adsl}{Encapsulation}, list => [ keys %encapsulations ],
- format => sub { $encapsulations{$_[0]} }, advanced => 1,
- },
- ),
- ];
- },
- post => sub {
- #- update ATM_ADDR for ATMARP connections
- exists $ethntf->{ATM_ADDR} and $ethntf->{ATM_ADDR} = join('.', $adsl_vpi, $adsl_vci);
- #- convert VPI/VCI back to hex
- ($net->{adsl}{vpi}, $net->{adsl}{vci}) = map { sprintf("%x", $_) } ($adsl_vpi, $adsl_vci);
-
- $net->{adsl}{device} =
- $net->{adsl}{method} eq 'capi' ? 'capi_modem' :
- $net->{adsl}{method} eq 'pptp' ? 'pptp_modem' :
- $ntf_name;
- # FIXME: duplicate with $after_start_on_boot_step sub
- network::adsl::adsl_conf_backend($in, $modules_conf, $net);
- "allow_user_ctl";
- },
- },
-
-
- lan =>
- {
- pre => $lan_detect,
- name => N("Select the network interface to configure:"),
- data => sub {
- [ { label => N("Net Device"), type => "list", val => \$ntf_name, list => [
- (sort keys %eth_intf, if_($is_wireless, keys %unavailable_wireless_intf)),
- N_("Manually load a driver"),
- if_($is_wireless, N_("Use a Windows driver (with ndiswrapper)")),
- ], allow_empty_list => 1, format => sub {
- translate($eth_intf{$_[0]} || $unavailable_wireless_intf{$_[0]} || $_[0]) } } ];
- },
- complete => sub {
- if (any { $_->[0] eq $ntf_name && !$_->[1] } @all_cards) {
- $in->ask_warn(N("Error"), N("Unknown driver"));
- return 1;
- }
-
- if ($ntf_name eq "Use a Windows driver (with ndiswrapper)") {
- require network::ndiswrapper;
- $in->do_pkgs->ensure_is_installed('ndiswrapper', '/usr/sbin/ndiswrapper') or return 1;
- undef $ndiswrapper_driver;
- undef $ndiswrapper_device;
- unless (network::ndiswrapper::installed_drivers()) {
- $ndiswrapper_driver = network::ndiswrapper::ask_driver($in) or return 1;
- return !$ndiswrapper_do_driver_selection->();
- }
- }
- if (exists $unavailable_wireless_intf{$ntf_name}) {
- my $driver = $ntf_name;
- network::thirdparty::setup_device($in, 'wireless', $driver) or return 1;
- eval {
- modules::unload($driver);
- modules::load($driver);
- };
- $lan_detect->();
- my $eth_card = find { $_->[1] eq $driver } @all_cards;
- unless ($eth_card) {
- #- FIXME (#17545)
- #- "No matching device found for driver %s."
- #- "The driver has probably failed to load because of a missing firmware
- #- or because it doesn't support your card revision.
- #- Have a look at /var/log/messages to find additional information."
- $in->ask_warn(N("Error"), N("No device found"));
- return 1;
- }
- $ntf_name = $eth_card->[0];
- }
- 0;
- },
- post => sub {
- if ($ntf_name eq "Manually load a driver") {
- require modules::interactive;
- modules::interactive::load_category__prompt($in, $modules_conf, list_modules::ethernet_categories());
- return 'lan';
- } elsif ($ntf_name eq "Use a Windows driver (with ndiswrapper)") {
- return $ndiswrapper_next_step->();
- }
- $ethntf = $net->{ifcfg}{$ntf_name} ||= { DEVICE => $ntf_name };
- return $after_lan_intf_selection->();
- },
- },
-
-
- lan_protocol =>
- {
- pre => sub {
- $find_lan_module->();
- $ethntf->{METRIC} = network::tools::get_default_metric(network::tools::get_interface_type($ethntf, $module))
- unless defined($ethntf->{METRIC});
- $protocol = $l10n_lan_protocols{defined $auto_ip ? ($auto_ip ? 'dhcp' : 'static') : $ethntf->{BOOTPROTO}} || 0;
- },
- name => sub {
- my $_msg = N("Zeroconf hostname resolution");
- N("Configuring network device %s (driver %s)", $ethntf->{DEVICE}, $module) . "\n\n" .
- N("The following protocols can be used to configure a LAN connection. Please choose the one you want to use");
- },
- data => sub {
- [ { val => \$protocol, type => "list", list => [ sort values %l10n_lan_protocols ] } ];
- },
- post => sub {
- $auto_ip = $protocol ne $l10n_lan_protocols{static} || 0;
- return 'lan_intf';
- },
- },
-
-
- lan_intf =>
- {
- pre => sub {
- require network::ethernet;
- $onboot = $ethntf->{ONBOOT} ? $ethntf->{ONBOOT} =~ /yes/ : bool2yesno(!member($ethntf->{DEVICE},
- map { $_->{device} } detect_devices::pcmcia_probe()));
- $needhostname = $ethntf->{NEEDHOSTNAME} !~ /no/;
- $peerdns = $ethntf->{PEERDNS} !~ /no/;
- $peeryp = $ethntf->{PEERYP} =~ /yes/;
- $peerntpd = $ethntf->{PEERNTPD} =~ /yes/;
- # blacklist bogus driver, enable ifplugd support else:
- $ifplugd = !text2bool($ethntf->{MII_NOT_SUPPORTED}) && !network::ethernet::is_ifplugd_blacklisted($module);
- $track_network_id = $::isStandalone && $ethntf->{HWADDR} || detect_devices::isLaptop();
- delete $ethntf->{TYPE} if $net->{type} ne 'adsl' || !member($net->{adsl}{method}, qw(static dhcp));
- $ethntf->{DHCP_CLIENT} ||= (find { -x "$::prefix/sbin/$_" } qw(dhclient dhcpcd pump dhcpxd));
- $ipv6_tunnel = text2bool($ethntf->{IPV6TO4INIT});
- },
- name => sub { join('',
- N("Configuring network device %s (driver %s)", $ethntf->{DEVICE}, $module),
- if_(!$auto_ip, "\n\n" . N("Please enter the IP configuration for this machine.
-Each item should be entered as an IP address in dotted-decimal
-notation (for example, 1.2.3.4).")),
- ) },
- data => sub {
- [ $auto_ip ?
- (
- { text => N("Assign host name from DHCP address"), val => \$needhostname, type => "bool" },
- { label => N("DHCP host name"), val => \$ethntf->{DHCP_HOSTNAME} },
- )
- :
- (
- { label => N("IP address"), val => \$ethntf->{IPADDR}, disabled => sub { $auto_ip } },
- { label => N("Netmask"), val => \$ethntf->{NETMASK}, disabled => sub { $auto_ip } },
- ),
- { text => N("Track network card id (useful for laptops)"), val => \$track_network_id, type => "bool" },
- { text => N("Network Hotplugging"), val => \$ifplugd, type => "bool", disabled => sub { $wireless_roaming } },
- if_($net->{type} eq "lan",
- { text => N("Start at boot"), val => \$onboot, type => "bool" },
- ),
- { label => N("Metric"), val => \$ethntf->{METRIC}, advanced => 1 },
- { text => N("Enable IPv6 to IPv4 tunnel"), val => \$ipv6_tunnel, type => "bool", advanced => 1 },
- if_($auto_ip,
- { label => N("DHCP client"), val => \$ethntf->{DHCP_CLIENT},
- list => \@network::ethernet::dhcp_clients, advanced => 1 },
- { label => N("DHCP timeout (in seconds)"), val => \$ethntf->{DHCP_TIMEOUT}, advanced => 1 },
- { text => N("Get DNS servers from DHCP"), val => \$peerdns, type => "bool", advanced => 1 },
- { text => N("Get YP servers from DHCP"), val => \$peeryp, type => "bool", advanced => 1 },
- { text => N("Get NTPD servers from DHCP"), val => \$peerntpd, type => "bool", advanced => 1 },
- ),
- ];
- },
- complete => sub {
- $ethntf->{BOOTPROTO} = $auto_ip ? "dhcp" : "static";
- return 0 if $auto_ip;
- if (!is_ip($ethntf->{IPADDR})) {
- $in->ask_warn(N("Error"), N("IP address should be in format 1.2.3.4"));
- return 1, 0;
- }
- if (!is_ip($ethntf->{NETMASK})) {
- $in->ask_warn(N("Error"), N("Netmask should be in format 255.255.224.0"));
- return 1, 1;
- }
- if (is_ip_forbidden($ethntf->{IPADDR})) {
- $in->ask_warn(N("Error"), N("Warning: IP address %s is usually reserved!", $ethntf->{IPADDR}));
- return 1, 0;
- }
- #- test if IP address is already used (do not test for sagem DSL devices since it may use many ifcfg files)
- if ($ntf_name ne "sagem" && find { $_->{DEVICE} ne $ethntf->{DEVICE} && $_->{IPADDR} eq $ethntf->{IPADDR} } values %{$net->{ifcfg}}) {
- $in->ask_warn(N("Error"), N("%s already in use\n", $ethntf->{IPADDR}));
- return 1, 0;
- }
- },
- focus_out => sub {
- $ethntf->{NETMASK} ||= netmask($ethntf->{IPADDR}) unless $ethntf->{NETMASK};
- },
- post => sub {
- $ethntf->{ONBOOT} = bool2yesno($onboot);
- $ethntf->{NEEDHOSTNAME} = bool2yesno($needhostname);
- $ethntf->{PEERDNS} = bool2yesno($peerdns);
- $ethntf->{PEERYP} = bool2yesno($peeryp);
- $ethntf->{PEERNTPD} = bool2yesno($peerntpd);
- $ethntf->{MII_NOT_SUPPORTED} = bool2yesno(!$ifplugd);
- $ethntf->{HWADDR} = $track_network_id or delete $ethntf->{HWADDR};
- #- FIXME: special case for sagem where $ethntf->{DEVICE} is the result of a command
- #- we can't always use $ntf_name because of some USB DSL modems
- $net->{net_interface} = $ntf_name eq "sagem" ? "sagem" : $ethntf->{DEVICE};
- $need_network_restart = $ipv6_tunnel ^ text2bool($ethntf->{IPV6TO4INIT});
- if ($ipv6_tunnel) {
- $net->{network}{NETWORKING_IPV6} = "yes";
- $net->{network}{IPV6_DEFAULTDEV} = "tun6to4";
- }
- $ethntf->{IPV6INIT} = bool2yesno($ipv6_tunnel);
- $ethntf->{IPV6TO4INIT} = bool2yesno($ipv6_tunnel);
- if ($auto_ip) {
- #- delete gateway settings if gateway device is invalid or if reconfiguring the gateway interface to dhcp
- $delete_gateway_settings->($ntf_name);
- }
- return "static_hostname";
- },
- },
-
- ndiswrapper_select_driver =>
- {
- pre => sub {
- @ndiswrapper_drivers = network::ndiswrapper::installed_drivers();
- $ndiswrapper_driver ||= first(@ndiswrapper_drivers);
- },
- data => sub {
- [ { label => N("Choose an ndiswrapper driver"), type => "list", val => \$ndiswrapper_driver, allow_empty_list => 1,
- list => [ undef, @ndiswrapper_drivers ],
- format => sub { defined $_[0] ? N("Use the ndiswrapper driver %s", $_[0]) : N("Install a new driver") } } ];
- },
- complete => sub {
- $ndiswrapper_driver ||= network::ndiswrapper::ask_driver($in) or return 1;
- !$ndiswrapper_do_driver_selection->();
- },
- post => $ndiswrapper_next_step,
- },
-
- ndiswrapper_select_device =>
- {
- data => sub {
- [ { label => N("Select a device:"), type => "list", val => \$ndiswrapper_device, allow_empty_list => 1,
- list => [ network::ndiswrapper::present_devices($ndiswrapper_driver) ],
- format => sub { $_[0]{description} } } ];
- },
- complete => sub {
- !$ndiswrapper_do_device_selection->();
+ "configure_control_compat";
},
- post => $ndiswrapper_next_step,
},
- wireless =>
- {
- pre => sub {
- require network::wireless;
- $find_lan_module->();
- $need_rt2x00_iwpriv = network::wireless::is_old_rt2x00($module);
- $wireless_roaming = delete $ethntf->{WIRELESS_MODE} eq 'Roaming' && !$need_rt2x00_iwpriv;
- $ethntf->{WIRELESS_MODE} ||= "Managed";
- $ethntf->{WIRELESS_ESSID} ||= "any";
- ($wireless_enc_key, my $restricted) = network::wireless::get_wep_key_from_iwconfig($ethntf->{WIRELESS_ENC_KEY});
- $wireless_enc_mode =
- $ethntf->{WIRELESS_WPA_DRIVER} || $ethntf->{WIRELESS_IWPRIV} =~ /WPAPSK/ ? 'wpa-psk' :
- !$wireless_enc_key ? 'none' :
- $restricted ? 'restricted' :
- 'open';
- delete $ethntf->{WIRELESS_ENC_KEY};
- delete $ethntf->{WIRELESS_IWPRIV};
- delete $ethntf->{WIRELESS_WPA_DRIVER};
- },
- name => N("Please enter the wireless parameters for this card:"),
- data => sub {
- [
- { label => N("Operating Mode"), val => \$ethntf->{WIRELESS_MODE},
- list => [ N_("Ad-hoc"), N_("Managed"), N_("Master"), N_("Repeater"), N_("Secondary"), N_("Auto") ],
- format => \&translate,
- disabled => sub { $wireless_roaming } },
- { label => N("Network name (ESSID)"), val => \$ethntf->{WIRELESS_ESSID} },
- { label => N("Encryption mode"), val => \$wireless_enc_mode,
- list => [ keys %network::wireless::wireless_enc_modes ],
- sort => 1,
- format => sub { translate($network::wireless::wireless_enc_modes{$_[0]}) } },
- { label => N("Encryption key"), val => \$wireless_enc_key, disabled => sub { $wireless_enc_mode eq 'none' } },
- { text => N("Allow access point roaming"), val => \$wireless_roaming, type => "bool",
- disabled => sub { network::wireless::is_wpa_supplicant_blacklisted($module) } },
- { label => N("Network ID"), val => \$ethntf->{WIRELESS_NWID}, advanced => 1 },
- { label => N("Operating frequency"), val => \$ethntf->{WIRELESS_FREQ}, advanced => 1 },
- { label => N("Sensitivity threshold"), val => \$ethntf->{WIRELESS_SENS}, advanced => 1 },
- { label => N("Bitrate (in b/s)"), val => \$ethntf->{WIRELESS_RATE}, advanced => 1 },
- { label => N("RTS/CTS"), val => \$ethntf->{WIRELESS_RTS}, advanced => 1,
- help => N("RTS/CTS adds a handshake before each packet transmission to make sure that the
-channel is clear. This adds overhead, but increase performance in case of hidden
-nodes or large number of active nodes. This parameter sets the size of the
-smallest packet for which the node sends RTS, a value equal to the maximum
-packet size disable the scheme. You may also set this parameter to auto, fixed
-or off.")
- },
- { label => N("Fragmentation"), val => \$ethntf->{WIRELESS_FRAG}, advanced => 1 },
- { label => N("iwconfig command extra arguments"), val => \$ethntf->{WIRELESS_IWCONFIG}, advanced => 1,
- help => N("Here, one can configure some extra wireless parameters such as:
-ap, channel, commit, enc, power, retry, sens, txpower (nick is already set as the hostname).
-
-See iwconfig(8) man page for further information."),
- },
- { label =>
- #-PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
- N("iwspy command extra arguments"), val => \$ethntf->{WIRELESS_IWSPY}, advanced => 1,
- help => N("iwspy is used to set a list of addresses in a wireless network
-interface and to read back quality of link information for each of those.
-
-This information is the same as the one available in /proc/net/wireless :
-quality of the link, signal strength and noise level.
-
-See iwpspy(8) man page for further information."),
- },
- if_(!$need_rt2x00_iwpriv,
- { label => N("iwpriv command extra arguments"), val => \$ethntf->{WIRELESS_IWPRIV}, advanced => 1,
- help => N("iwpriv enable to set up optionals (private) parameters of a wireless network
-interface.
-
-iwpriv deals with parameters and setting specific to each driver (as opposed to
-iwconfig which deals with generic ones).
-
-In theory, the documentation of each device driver should indicate how to use
-those interface specific commands and their effect.
-
-See iwpriv(8) man page for further information."),
- })
- ];
- },
- complete => sub {
- if ($ethntf->{WIRELESS_FREQ} && $ethntf->{WIRELESS_FREQ} !~ /[0-9.]*[kGM]/) {
- $in->ask_warn(N("Error"), N("Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz frequency), or add enough '0' (zeroes)."));
- return 1, 6;
- }
- if ($ethntf->{WIRELESS_RATE} && $ethntf->{WIRELESS_RATE} !~ /[0-9.]*[kGM]/) {
- $in->ask_warn(N("Error"), N("Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add enough '0' (zeroes)."));
- return 1, 8;
- }
- if (network::wireless::wlan_ng_needed($module)) {
- $in->do_pkgs->ensure_is_installed('prism2-utils', '/sbin/wlanctl-ng') or return 1;
- }
- $need_wpa_supplicant = ($wireless_roaming || $wireless_enc_mode eq 'wpa-psk') && !$need_rt2x00_iwpriv;
- if ($need_wpa_supplicant) {
- $in->do_pkgs->ensure_is_installed('wpa_supplicant', '/usr/sbin/wpa_supplicant') or return 1;
- }
- !network::thirdparty::setup_device($in, 'wireless', $module);
- },
- post => sub {
- if ($wireless_roaming) {
- $ethntf->{MII_NOT_SUPPORTED} = 'no';
- $ethntf->{WIRELESS_MODE} = 'Roaming';
- } elsif (member($wireless_enc_mode, qw(open restricted))) {
- $ethntf->{WIRELESS_ENC_KEY} = network::wireless::convert_wep_key_for_iwconfig($wireless_enc_key, $wireless_enc_mode eq 'restricted');
- } elsif ($need_rt2x00_iwpriv) {
- #- use iwpriv for WPA with rt2400/rt2500 drivers, they don't plan to support wpa_supplicant
- $ethntf->{WIRELESS_IWPRIV} = $wireless_enc_mode eq 'wpa-psk' && qq(set AuthMode=WPAPSK
-set EncrypType=TKIP
-set SSID=$ethntf->{WIRELESS_ESSID}
-set WPAPSK="$wireless_enc_key"
-set TxRate=0);
- }
-
- if ($need_wpa_supplicant) {
- $ethntf->{WIRELESS_WPA_DRIVER} = network::wireless::wpa_supplicant_get_driver($module);
- network::wireless::wpa_supplicant_add_network($ethntf->{WIRELESS_ESSID}, $wireless_enc_mode, $wireless_enc_key);
- }
-
- if (network::wireless::wlan_ng_needed($module)) {
- network::wireless::wlan_ng_configure($ethntf->{WIRELESS_ESSID}, $wireless_enc_key, $ethntf->{DEVICE}, $module);
- }
- return "lan_protocol";
- },
+ configure_control_compat => {
+ pre => sub {
+ $connection_compat = $net->{type}->new($connection || {});
+ network::connection::guess_control_settings($connection_compat);
+ $control_settings = network::connection::get_control_settings($connection_compat);
+ },
+ name => sub { N("Connection control") },
+ data => sub { $control_settings },
+ post => sub {
+ $net->{ifcfg}{$net->{net_interface}}{USERCTL} = bool2yesno($connection_compat->{control}{userctl});
+ $net->{ifcfg}{$net->{net_interface}}{ONBOOT} = bool2yesno($connection_compat->{control}{onboot});
+ network::network::configure_network($net, $in, $modules_conf);
+ "ask_connect_now";
+ },
},
-
- dvb =>
- {
- name => N("DVB configuration") . "\n\n" . N("Select the network interface to configure:"),
- data => [ { label => N("DVB Adapter"), type => "list", val => \$dvb_adapter, allow_empty_list => 1,
- list => [ modules::probe_category("multimedia/dvb") ], format => sub { $_[0]{description} } } ],
- next => "dvb_adapter",
- },
-
-
- dvb_adapter =>
- {
- pre => sub {
- my $previous_ethntf = find { $is_dvb_interface->($_) } values %{$net->{ifcfg}};
- $dvb_ad = $previous_ethntf->{DVB_ADAPTER_ID};
- $dvb_net = $previous_ethntf->{DVB_NETWORK_DEMUX};
- $dvb_pid = $previous_ethntf->{DVB_NETWORK_PID};
- if (my $device = find { sysopen(undef, $_, c::O_RDWR() | c::O_NONBLOCK()) } glob("/dev/dvb/adapter*/net*")) {
- ($dvb_ad, $dvb_net) = $device =~ m,/dev/dvb/adapter(\d+)/net(\d+),;
- }
- },
- name => N("DVB adapter settings"),
- data => sub {
- [
- { label => N("Adapter card"), val => \$dvb_ad },
- { label => N("Net demux"), val => \$dvb_net },
- { label => N("PID"), val => \$dvb_pid },
- ];
- },
- post => sub {
- $ntf_name = 'dvb' . $dvb_ad . '_' . $dvb_net;
- $ethntf = $net->{ifcfg}{$ntf_name} ||= {};
- $ethntf->{DEVICE} = $ntf_name;
- $ethntf->{DVB_ADAPTER_ID} = qq("$dvb_ad");
- $ethntf->{DVB_NETWORK_DEMUX} = qq("$dvb_net");
- $ethntf->{DVB_NETWORK_PID} = qq("$dvb_pid");
- return "lan_protocol";
- },
- },
-
- static_hostname =>
- {
- pre => sub {
- if ($ethntf->{IPADDR}) {
- $net->{resolv}{dnsServer} ||= dns($ethntf->{IPADDR});
- $gateway_ex = gateway($ethntf->{IPADDR});
- # $net->{network}{GATEWAY} ||= gateway($ethntf->{IPADDR});
- if ($ntf_name eq "sagem") {
- my @sagem_ip = split(/\./, $ethntf->{IPADDR});
- $sagem_ip[3] = 254;
- $net->{network}{GATEWAY} = join(".", @sagem_ip);
- }
- }
- },
- name => N("Please enter your host name.
-Your host name should be a fully-qualified host name,
-such as ``mybox.mylab.myco.com''.
-You may also enter the IP address of the gateway if you have one.") .
- " " . # better looking text (to be merged into texts since some languages (eg: ja) doesn't need it
-N("Last but not least you can also type in your DNS server IP addresses."),
- data => sub {
- [ { label => $auto_ip ? N("Host name (optional)") : N("Host name"), val => \$net->{network}{HOSTNAME} },
- if_(!$auto_ip,
- { label => N("DNS server 1"), val => \$net->{resolv}{dnsServer} },
- { label => N("DNS server 2"), val => \$net->{resolv}{dnsServer2} },
- { label => N("DNS server 3"), val => \$net->{resolv}{dnsServer3} },
- { label => N("Search domain"), val => \$net->{resolv}{DOMAINNAME},
- help => N("By default search domain will be set from the fully-qualified host name") },
- { label => N("Gateway (e.g. %s)", $gateway_ex), val => \$net->{network}{GATEWAY} },
- if_(@all_cards > 1,
- { label => N("Gateway device"), val => \$net->{network}{GATEWAYDEV}, list => [ N_("None"), sort keys %all_eth_intf ],
- format => sub { $all_eth_intf{$_[0]} || translate($_[0]) } },
- ),
- ),
- ];
- },
- complete => sub {
- foreach my $dns (qw(dnsServer dnsServer2 dnsServer3)) {
- if ($net->{resolv}{$dns} && !is_ip($net->{resolv}{$dns})) {
- $in->ask_warn(N("Error"), N("DNS server address should be in format 1.2.3.4"));
- return 1;
- }
- }
- if ($net->{network}{GATEWAY} && !is_ip($net->{network}{GATEWAY})) {
- $in->ask_warn(N("Error"), N("Gateway address should be in format 1.2.3.4"));
- return 1;
- }
- },
- post => sub {
- $net->{network}{GATEWAYDEV} eq "None" and delete $net->{network}{GATEWAYDEV};
- return "zeroconf";
- }
- },
-
-
- zeroconf =>
- {
- name => N("If desired, enter a Zeroconf hostname.
-This is the name your machine will use to advertise any of
-its shared resources that are not managed by the network.
-It is not necessary on most networks."),
- data => [ { label => N("Zeroconf Host name"), val => \$net->{zeroconf}{hostname} } ],
- complete => sub {
- if ($net->{zeroconf}{hostname} =~ /\./) {
- $in->ask_warn(N("Error"), N("Zeroconf host name must not contain a ."));
- return 1;
- }
- },
- next => "allow_user_ctl",
- },
-
-
- allow_user_ctl =>
- {
- name => N("Do you want to allow users to start the connection?"),
- type => "yesorno",
- default => sub { bool2yesno(text2bool($net->{ifcfg}{$net->{net_interface}}{USERCTL})) },
- post => sub {
- my ($res) = @_;
- $net->{ifcfg}{$net->{net_interface}}{USERCTL} = bool2yesno($res);
- return $goto_start_on_boot_ifneeded->();
- },
- },
-
-
- network_on_boot =>
- {
- name => N("Do you want to start the connection at boot?"),
- type => "yesorno",
- default => sub { ($net->{type} eq 'modem' ? 'no' : 'yes') },
- post => sub {
- my ($res) = @_;
- $net->{ifcfg}{$net->{net_interface}}{ONBOOT} = bool2yesno($res);
- return $after_start_on_boot_step->();
- },
- },
-
-
isdn_dial_on_boot =>
{
pre => sub {
@@ -1327,7 +687,7 @@ It is not necessary on most networks."),
post => sub {
my $method = find { $_->{name} eq $isdn->{dial_method} } @isdn_dial_methods;
$net->{ifcfg}{ippp0}{$_} = bool2yesno($method->{$_}) foreach qw(ONBOOT DIAL_ON_IFUP);
- return $after_start_on_boot_step->();
+ return "configure_control_compat";
},
},
@@ -1343,16 +703,10 @@ It is not necessary on most networks."),
# local $::isWizard = 0;
my $_w = $in->wait_message('', N("Testing your connection..."), 1);
network::tools::stop_net_interface($net, 0);
- if (exists $net->{adsl}{ethernet_device}) {
- network::tools::stop_interface($net->{adsl}{ethernet_device}, 0);
- sleep 1;
- network::tools::start_interface($net->{adsl}{ethernet_device}, 0);
- }
sleep 1;
network::tools::start_net_interface($net, 1);
my $s = 30;
$type =~ /modem/ and $s = 50;
- $type =~ /adsl/ and $s = 35;
$type =~ /isdn/ and $s = 20;
sleep $s;
$up = network::tools::connected();
@@ -1398,11 +752,30 @@ Test your connection via net_monitor or mcc. If your connection does not work, y
#- keeping the translations in case someone want to restore these texts
if_(0,
+ N("Alcatel speedtouch USB modem"),
+ N("Sagem USB modem"),
+ N("Bewan modem"),
+ N("Bewan modem"),
+ N("ECI Hi-Focus modem"), # this one needs eci agreement
+ N("LAN connection"),
+ N("Wireless connection"),
+ N("ADSL connection"),
+ N("Cable connection"),
+ N("ISDN connection"),
+ N("Modem connection"),
+ N("DVB connection"),
# keep b/c of translations in case they can be reused somewhere else:
N("(detected on port %s)", 'toto'),
#-PO: here, "(detected)" string will be appended to eg "ADSL connection"
N("(detected %s)", 'toto'), N("(detected)"),
N("Network Configuration"),
+ N("Zeroconf hostname resolution"),
+ N("If desired, enter a Zeroconf hostname.
+This is the name your machine will use to advertise any of
+its shared resources that are not managed by the network.
+It is not necessary on most networks."),
+ N("Zeroconf Host name"),
+ N("Zeroconf host name must not contain a ."),
N("Because you are doing a network installation, your network is already configured.
Click on Ok to keep your configuration, or cancel to reconfigure your Internet & Network connection.
"),
@@ -1412,6 +785,18 @@ Click on Ok to keep your configuration, or cancel to reconfigure your Internet &
N("Configuration is complete, do you want to apply settings?"),
N("You have configured multiple ways to connect to the Internet.\nChoose the one you want to use.\n\n"),
N("Internet connection"),
+ N("Select the network interface to configure:"),
+ N("Configuring network device %s (driver %s)", '', ''),
+ N("The following protocols can be used to configure a LAN connection. Please choose the one you want to use."),
+ N("Please enter your host name.
+Your host name should be a fully-qualified host name,
+such as ``mybox.mylab.myco.com''.
+You may also enter the IP address of the gateway if you have one."),
+ # better looking text (to be merged into texts since some languages (eg: ja) doesn't need it
+ N("Last but not least you can also type in your DNS server IP addresses."),
+ N("DNS server address should be in format 1.2.3.4"),
+ N("Gateway address should be in format 1.2.3.4"),
+ N("Gateway device"),
);
}
@@ -1429,33 +814,20 @@ sub safe_main {
}
}
-sub start_internet {
- my ($o) = @_;
- #- give a chance for module to be loaded using kernel-BOOT modules...
- #- FIXME, this has nothing to do there
- $::isStandalone or modules::load_category($o->{modules_conf}, 'network/*');
- network::tools::start_net_interface($o->{net}, 1);
-}
-
-sub stop_internet {
- my ($o) = @_;
- network::tools::stop_net_interface($o->{net}, 1);
-}
-
1;
=head1 network::netconnect::detect()
=head2 example of usage
-use lib qw(/usr/lib/libDrakX);
-use network::netconnect;
-use modules;
-use Data::Dumper;
+ use lib qw(/usr/lib/libDrakX);
+ use network::netconnect;
+ use modules;
+ use Data::Dumper;
-my %i;
-my $modules_conf = modules::any_conf->read;
-network::netconnect::detect($modules_conf, \%i);
-print Dumper(\%i),"\n";
+ my %i;
+ my $modules_conf = modules::any_conf->read;
+ network::netconnect::detect($modules_conf, \%i);
+ print Dumper(\%i),"\n";
=cut
diff --git a/lib/network/network.pm b/lib/network/network.pm
index 45c5dc2..ceba576 100644
--- a/lib/network/network.pm
+++ b/lib/network/network.pm
@@ -14,13 +14,14 @@ use network::tools;
use vars qw(@ISA @EXPORT);
use log;
-my $network_file = "/etc/sysconfig/network";
+our $network_file = "/etc/sysconfig/network";
my $resolv_file = "/etc/resolv.conf";
my $tmdns_file = "/etc/tmdns.conf";
+our $wireless_d = "/etc/sysconfig/network-scripts/wireless.d";
@ISA = qw(Exporter);
-@EXPORT = qw(addDefaultRoute dns dnsServers gateway guessHostname is_ip is_ip_forbidden masked_ip netmask resolv sethostname);
+@EXPORT = qw(addDefaultRoute dns dnsServers gateway guessHostname is_ip is_ip_forbidden masked_ip netmask resolv);
#- $net hash structure
#- autodetect
@@ -98,8 +99,8 @@ sub read_zeroconf() {
sub write_network_conf {
my ($net) = @_;
- if ($net->{network}{HOSTNAME} && $net->{network}{HOSTNAME} =~ /\.(.+)$/) {
- $net->{resolv}{DOMAINNAME} = $1;
+ if ($net->{network}{HOSTNAME} && $net->{network}{HOSTNAME} =~ /\.(.+\..+)$/) {
+ $net->{resolv}{DOMAINNAME} ||= $1;
}
$net->{network}{NETWORKING} = 'yes';
@@ -174,18 +175,20 @@ sub update_broadcast_and_network {
my ($intf) = @_;
my @ip = split '\.', $intf->{IPADDR};
my @mask = split '\.', $intf->{NETMASK};
+ #- FIXME: NETWORK and BROADCAST are deprecated, see sysconfig.txt
$intf->{BROADCAST} = join('.', mapn { int($_[0]) | ((~int($_[1])) & 255) } \@ip, \@mask);
$intf->{NETWORK} = join('.', mapn { int($_[0]) & $_[1] } \@ip, \@mask);
}
sub write_interface_settings {
my ($intf, $file) = @_;
- setVarsInSh($file, $intf, qw(DEVICE BOOTPROTO IPADDR NETMASK NETWORK BROADCAST ONBOOT HWADDR METRIC MII_NOT_SUPPORTED TYPE USERCTL ATM_ADDR ETHTOOL_OPTS VLAN MTU MS_DNS1 MS_DNS2 DOMAIN),
+ setVarsInSh($file, $intf, qw(DEVICE BOOTPROTO IPADDR NETMASK NETWORK BROADCAST GATEWAY ONBOOT HWADDR METRIC MII_NOT_SUPPORTED TYPE USERCTL ATM_ADDR ETHTOOL_OPTS VLAN MTU DNS1 DNS2 DOMAIN RESOLV_MODS LINK_DETECTION_DELAY),
qw(WIRELESS_MODE WIRELESS_ESSID WIRELESS_NWID WIRELESS_FREQ WIRELESS_SENS WIRELESS_RATE WIRELESS_ENC_KEY WIRELESS_RTS WIRELESS_FRAG WIRELESS_IWCONFIG WIRELESS_IWSPY WIRELESS_IWPRIV WIRELESS_WPA_DRIVER),
qw(DVB_ADAPTER_ID DVB_NETWORK_DEMUX DVB_NETWORK_PID),
qw(IPV6INIT IPV6TO4INIT),
- qw(MRU REMIP PEERDNS PPPOPTIONS HARDFLOWCTL DEFABORT RETRYTIMEOUT PAPNAME LINESPEED MODEMPORT DEBUG ESCAPECHARS INITSTRING),
+ qw(MRU REMIP PPPOPTIONS HARDFLOWCTL DEFABORT RETRYTIMEOUT PAPNAME LINESPEED MODEMPORT DEBUG ESCAPECHARS INITSTRING),
qw(DISCONNECTTIMEOUT PERSIST DEFROUTE),
+ qw(VPN_NAME VPN_TYPE),
if_($intf->{BOOTPROTO} eq "dhcp", qw(DHCP_CLIENT DHCP_HOSTNAME NEEDHOSTNAME PEERDNS PEERYP PEERNTPD DHCP_TIMEOUT)),
if_($intf->{DEVICE} =~ /^ippp\d+$/, qw(DIAL_ON_IFUP))
);
@@ -194,17 +197,22 @@ sub write_interface_settings {
log::explanations("written $intf->{DEVICE} interface configuration in $file");
}
+sub get_ifcfg_file {
+ my ($name) = @_;
+ "$::prefix/etc/sysconfig/network-scripts/ifcfg-$name";
+}
+
sub write_interface_conf {
my ($net, $name) = @_;
- my $file = "$::prefix/etc/sysconfig/network-scripts/ifcfg-$name";
+ my $file = get_ifcfg_file($name);
#- prefer ifcfg-XXX files
unlink("$::prefix/etc/sysconfig/network-scripts/$name");
my $intf = $net->{ifcfg}{$name};
- require network::ethernet;
- my (undef, $mac_address) = network::ethernet::get_eth_card_mac_address($intf->{DEVICE});
+ require network::connection::ethernet;
+ my (undef, $mac_address) = network::connection::ethernet::get_eth_card_mac_address($intf->{DEVICE});
$intf->{HWADDR} &&= $mac_address; #- set HWADDR to MAC address if required
update_broadcast_and_network($intf);
@@ -218,7 +226,7 @@ sub write_interface_conf {
sub write_wireless_conf {
my ($ssid, $ifcfg) = @_;
- my $wireless_file = "$::prefix/etc/sysconfig/network-scripts/wireless.d/$ssid";
+ my $wireless_file = $::prefix . $wireless_d . '/' . $ssid;
write_interface_settings($ifcfg, $wireless_file);
# FIXME: write only DHCP/IP settings here
substInFile { $_ = '' if /^DEVICE=/ } $wireless_file;
@@ -264,14 +272,19 @@ sub addDefaultRoute {
c::addDefaultRoute($net->{network}{GATEWAY}) if $net->{network}{GATEWAY};
}
-sub sethostname {
- my ($net) = @_;
- my $text;
- my $hostname = $net->{network}{HOSTNAME};
- syscall_("sethostname", $hostname, length $hostname) ? ($text="set sethostname to $hostname") : ($text="sethostname failed: $!");
- log::explanations($text);
+sub write_hostname {
+ my ($hostname) = @_;
+
+ addVarsInSh($::prefix . $network_file, { HOSTNAME => $hostname }, qw(HOSTNAME));
+
+ add2hosts("localhost", "127.0.0.1");
+ add2hosts($hostname, "127.0.0.1") if $hostname;
- run_program::run("/usr/bin/run-parts", "--arg", $hostname, "/etc/sysconfig/network-scripts/hostname.d") unless $::isInstall;
+ unless ($::isInstall) {
+ my $rc = syscall_("sethostname", $hostname, length $hostname);
+ log::explanations($rc ? "set sethostname to $hostname" : "sethostname failed: $!");
+ run_program::run("/usr/bin/run-parts", "--arg", $hostname, "/etc/sysconfig/network-scripts/hostname.d");
+ }
}
sub resolv($) {
@@ -386,11 +399,16 @@ sub netprofile_delete {
log::explanations(qq(Deleting "$profile" profile));
}
+sub netprofile_clone {
+ my ($source_profile, $dest_profile) = @_;
+ return if !$dest_profile || $dest_profile eq "default" || member($dest_profile, netprofile_list());
+ system('/sbin/clone-netprofile', $source_profile, $dest_profile);
+ log::explanations(qq("Creating "$dest_profile" profile));
+}
+
sub netprofile_add {
my ($net, $profile) = @_;
- return if !$profile || $profile eq "default" || member($profile, netprofile_list());
- system('/sbin/clone-netprofile', $net->{PROFILE}, $profile);
- log::explanations(qq("Creating "$profile" profile));
+ netprofile_clone($net->{PROFILE}, $profile);
}
sub netprofile_list() {
@@ -414,11 +432,13 @@ sub miscellaneous_choose {
{ text => N("Use HTTP proxy for HTTPS connections"), val => \$use_http_for_https, type => "bool" },
{ label => N("HTTPS proxy"), val => \$u->{https_proxy}, disabled => sub { $use_http_for_https } },
{ label => N("FTP proxy"), val => \$u->{ftp_proxy} },
+ { label => N("No proxy for (comma separated list):"), val => \$u->{no_proxy} },
],
complete => sub {
$use_http_for_https and $u->{https_proxy} = $u->{http_proxy};
+ $u->{no_proxy} =~ s/\s//g;
$u->{http_proxy} =~ m,^($|http://), or $in->ask_warn('', N("Proxy should be http://...")), return 1,0;
- $u->{https_proxy} =~ m,^($|http://), or $in->ask_warn('', N("Proxy should be https?://...")), return 1,2;
+ $u->{https_proxy} =~ m,^($|https?://), or $in->ask_warn('', N("Proxy should be http://... or https://...")), return 1,2;
$u->{ftp_proxy} =~ m,^($|ftp://|http://), or $in->ask_warn('', N("URL should begin with 'ftp:' or 'http:'")), return 1,3;
0;
}
@@ -426,92 +446,155 @@ sub miscellaneous_choose {
1;
}
-sub proxy_configure {
- my ($u) = @_;
+sub proxy_configure_shell {
+ my ($proxy) = @_;
my $sh_file = "$::prefix/etc/profile.d/proxy.sh";
- setExportedVarsInSh($sh_file, $u, qw(http_proxy https_proxy ftp_proxy));
+ setExportedVarsInSh($sh_file, $proxy, qw(http_proxy https_proxy ftp_proxy no_proxy));
chmod 0755, $sh_file;
my $csh_file = "$::prefix/etc/profile.d/proxy.csh";
- setExportedVarsInCsh($csh_file, $u, qw(http_proxy https_proxy ftp_proxy));
+ setExportedVarsInCsh($csh_file, $proxy, qw(http_proxy https_proxy ftp_proxy no_proxy));
chmod 0755, $csh_file;
+}
+
+sub proxy_configure_kde {
+ my ($proxy) = @_;
- #- KDE proxy settings
my $kde_config_dir = "$::prefix/usr/share/config";
+ -d $kde_config_dir or return;
+
my $kde_config_file = "$kde_config_dir/kioslaverc";
- if (-d $kde_config_dir) {
- update_gnomekderc($kde_config_file,
- undef,
- PersistentProxyConnection => "false"
- );
- update_gnomekderc($kde_config_file,
- "Proxy Settings",
- AuthMode => 0,
- ProxyType => $u->{http_proxy} || $u->{https_proxy} || $u->{ftp_proxy} ? 4 : 0,
- ftpProxy => "ftp_proxy",
- httpProxy => "http_proxy",
- httpsProxy => "https_proxy"
+ update_gnomekderc($kde_config_file,
+ undef,
+ PersistentProxyConnection => "false"
+ );
+ update_gnomekderc($kde_config_file,
+ "Proxy Settings",
+ AuthMode => 0,
+ ProxyType => $proxy->{http_proxy} || $proxy->{https_proxy} || $proxy->{ftp_proxy} ? 4 : 0,
+ ftpProxy => "ftp_proxy",
+ httpProxy => "http_proxy",
+ httpsProxy => "https_proxy",
+ NoProxyFor => "no_proxy",
);
+}
+
+#- (protocol, user, password, host, port)
+my $http_proxy_match = qr,^(http)://(?:([^:\@]+)(?::([^:\@]+))?\@)?([^\:]+)(?::(\d+))?$,;
+#- (protocol, host, port)
+my $https_proxy_match = qr,^(https?)://(?:[^:\@]+(?::[^:\@]+)?\@)?([^\:]+)(?::(\d+))?$,;
+#- (protocol, protocol, host, port)
+my $ftp_proxy_match = qr,^(http|ftp)://(?:[^:\@]+(?::[^:\@]+)?\@)?([^\:]+)(?::(\d+))?$,;
+my %proxy_default_port = (
+ http => 80,
+ https => 443,
+ ftp => 21,
+);
+
+sub proxy_configure_gnome {
+ my ($proxy) = @_;
+
+ -d "$::prefix/etc/gconf/2/" or return;
+
+ my $defaults_dir = "/etc/gconf/gconf.xml.local-defaults";
+ my $p_defaults_dir = "$::prefix$defaults_dir";
+
+ my $use_alternate_proxy;
+ my $gconf_set = sub {
+ my ($key, $type, $value) = @_;
+ #- gconftool-2 is available since /etc/gconf/2/ exists
+ run_program::rooted($::prefix, 'gconftool-2', '>', '/dev/null', "--config-source=xml::$p_defaults_dir", "--direct", "--set", "--type=$type", if_($type eq "list", '--list-type', 'string'), $key, $value);
+ };
+
+ #- http proxy
+ if (my ($protocol, $user, $password, $host, $port) = $proxy->{http_proxy} =~ $http_proxy_match) {
+ $port ||= $proxy_default_port{$protocol} || $proxy_default_port{http};
+ $gconf_set->("/system/http_proxy/use_http_proxy", "bool", 1);
+ $gconf_set->("/system/http_proxy/host", "string", $host);
+ $gconf_set->("/system/http_proxy/port", "int", $port);
+ $gconf_set->("/system/http_proxy/use_authentication", "bool", to_bool($user));
+ $user and $gconf_set->("/system/http_proxy/authentication_user", "string", $user);
+ $password and $gconf_set->("/system/http_proxy/authentication_password", "string", $password);
+ } else {
+ $gconf_set->("/system/http_proxy/use_http_proxy", "bool", 0);
}
- #- Gnome proxy settings
- if (-d "$::prefix/etc/gconf/2/") {
- my $defaults_dir = "/etc/gconf/gconf.xml.local-defaults";
- my $p_defaults_dir = "$::prefix$defaults_dir";
- my $p_defaults_path = "$::prefix/etc/gconf/2/local-defaults.path";
- -r $p_defaults_path or output_with_perm($p_defaults_path, 0755, qq(
-# System local settings
-xml:readonly:$defaults_dir
-));
- -d $p_defaults_dir or mkdir $p_defaults_dir, 0755;
-
- my $use_alternate_proxy;
- my $gconf_set = sub {
- my ($key, $type, $value) = @_;
- #- gconftool-2 is available since /etc/gconf/2/ exists
- system("gconftool-2", "--config-source=xml::$p_defaults_dir", "--direct", "--set", "--type=$type", $key, $value);
- };
-
- #- http proxy
- if (my ($user, $password, $host, $port) = $u->{http_proxy} =~ m,^http://(?:([^:\@]+)(?::([^:\@]+))?\@)?([^\:]+)(?::(\d+))?$,) {
- $port ||= 80;
- $gconf_set->("/system/http_proxy/use_http_proxy", "bool", 1);
- $gconf_set->("/system/http_proxy/host", "string", $host);
- $gconf_set->("/system/http_proxy/port", "int", $port);
- $gconf_set->("/system/http_proxy/use_authentication", "bool", to_bool($user));
- $user and $gconf_set->("/system/http_proxy/authentication_user", "string", $user);
- $password and $gconf_set->("/system/http_proxy/authentication_password", "string", $password);
- } else {
- $gconf_set->("/system/http_proxy/use_http_proxy", "bool", 0);
- }
+ #- https proxy
+ if (my ($protocol, $host, $port) = $proxy->{https_proxy} =~ $https_proxy_match) {
+ $port ||= $proxy_default_port{$protocol} || $proxy_default_port{https};
+ $gconf_set->("/system/proxy/secure_host", "string", $host);
+ $gconf_set->("/system/proxy/secure_port", "int", $port);
+ $use_alternate_proxy = 1;
+ } else {
+ #- clear the ssl host so that it isn't used if the manual proxy is activated for ftp
+ $gconf_set->("/system/proxy/secure_host", "string", "");
+ }
- #- https proxy
- if (my ($host, $port) = $u->{https_proxy} =~ m,^https?://(?:[^:\@]+(?::[^:\@]+)?\@)?([^\:]+)(?::(\d+))?$,) {
- $port ||= 443;
- $gconf_set->("/system/proxy/secure_host", "string", $host);
- $gconf_set->("/system/proxy/secure_port", "int", $port);
- $use_alternate_proxy = 1;
- } else {
- #- clear the ssl host so that it isn't used if the manual proxy is activated for ftp
- $gconf_set->("/system/proxy/secure_host", "string", "");
- }
+ #- ftp proxy
+ if (my ($protocol, $host, $port) = $proxy->{ftp_proxy} =~ $ftp_proxy_match) {
+ $port ||= $proxy_default_port{$protocol} || $proxy_default_port{ftp};
+ $gconf_set->("/system/proxy/ftp_host", "string", $host);
+ $gconf_set->("/system/proxy/ftp_port", "int", $port);
+ $use_alternate_proxy = 1;
+ } else {
+ #- clear the ftp host so that it isn't used if the manual proxy is activated for ssl
+ $gconf_set->("/system/proxy/ftp_host", "string", "");
+ }
- #- ftp proxy
- if (my ($host, $port) = $u->{ftp_proxy} =~ m,^(?:http|ftp)://(?:[^:\@]+(?::[^:\@]+)?\@)?([^\:]+)(?::(\d+))?$,) {
- $port ||= 21;
- $gconf_set->("/system/proxy/ftp_host", "string", $host);
- $gconf_set->("/system/proxy/ftp_port", "int", $port);
- $use_alternate_proxy = 1;
- } else {
- #- clear the ftp host so that it isn't used if the manual proxy is activated for ssl
- $gconf_set->("/system/proxy/ftp_host", "string", "");
- }
+ my $ignore_hosts = join(',', uniq(qw(localhost 127.0.0.0/8)), split(',', $proxy->{no_proxy}));
+ $gconf_set->("/system/http_proxy/ignore_hosts", "list", "[$ignore_hosts]");
+
+ #- set proxy mode to manual if either https or ftp is used
+ $gconf_set->("/system/proxy/mode", "string", $use_alternate_proxy ? "manual" : "none");
+
+ #- make gconf daemons reload their settings
+ system("killall -s HUP gconfd-2");
+}
+
+sub proxy_configure_mozilla_firefox {
+ my ($proxy) = @_;
- #- set proxy mode to manual if either https or ftp is used
- $gconf_set->("/system/proxy/mode", "string", $use_alternate_proxy ? "manual" : "none");
+ my $firefox_config_file = "$::prefix/etc/firefox.cfg";
+ -f $firefox_config_file or return;
- #- make gconf daemons reload their settings
- system("killall -s HUP gconfd-2");
+ my %prefs;
+ foreach (qw(http ssl ftp)) {
+ undef $prefs{"network.proxy.${_}"};
+ undef $prefs{"network.proxy.${_}_port"};
+ }
+ if (my ($protocol, undef, undef, $host, $port) = $proxy->{http_proxy} =~ $http_proxy_match) {
+ $prefs{"network.proxy.http"} = qq("$host");
+ $prefs{"network.proxy.http_port"} = $port || $proxy_default_port{$protocol} || $proxy_default_port{http};
}
+ if (my ($protocol, $host, $port) = $proxy->{https_proxy} =~ $https_proxy_match) {
+ $prefs{"network.proxy.ssl"} = qq("$host");
+ $prefs{"network.proxy.ssl_port"} = $port || $proxy_default_port{$protocol} || $proxy_default_port{https};
+ }
+ if (my ($protocol, $host, $port) = $proxy->{ftp_proxy} =~ $ftp_proxy_match) {
+ $prefs{"network.proxy.ftp"} = qq("$host");
+ $prefs{"network.proxy.ftp_port"} = $port || $proxy_default_port{$protocol} || $proxy_default_port{ftp};
+ }
+ if ($proxy->{no_proxy}) {
+ $prefs{"network.proxy.no_proxies_on"} = qq("$proxy->{no_proxy}");
+ }
+ $prefs{"network.proxy.type"} = any { defined $prefs{"network.proxy.${_}_port"} } qw(http ssl ftp);
+
+ substInFile {
+ while (my ($key, $value) = each(%prefs)) {
+ if (/^defaultPref\("$key",/) {
+ $_ = defined $value && qq(defaultPref("$key", $value);\n);
+ delete $prefs{$key};
+ }
+ }
+ $_ .= join('', map { if_(defined $prefs{$_}, qq(defaultPref("$_", $prefs{$_});\n)) } sort(keys %prefs)) if eof;
+ } $firefox_config_file;
+}
+
+sub proxy_configure {
+ my ($proxy) = @_;
+ proxy_configure_shell($proxy);
+ proxy_configure_kde($proxy);
+ proxy_configure_gnome($proxy);
+ proxy_configure_mozilla_firefox($proxy);
}
sub read_net_conf {
@@ -530,8 +613,8 @@ sub read_net_conf {
}
}
$net->{wireless} ||= {};
- foreach (all("$::prefix/etc/sysconfig/network-scripts/wireless.d")) {
- $net->{wireless}{$_} = { getVarsFromSh("$::prefix/etc/sysconfig/network-scripts/wireless.d/$_") };
+ foreach (all($::prefix . $wireless_d)) {
+ $net->{wireless}{$_} = { getVarsFromSh($::prefix . $wireless_d . '/' . $_) };
}
netprofile_read($net);
if (my $default_intf = network::tools::get_default_gateway_interface($net)) {
@@ -559,9 +642,9 @@ sub easy_dhcp {
return if text2bool($net->{network}{NETWORKING});
require modules;
- require network::ethernet;
+ require network::connection::ethernet;
modules::load_category($modules_conf, list_modules::ethernet_categories());
- my @all_dev = sort map { $_->[0] } network::ethernet::get_eth_cards($modules_conf);
+ my @all_dev = sort map { $_->[0] } network::connection::ethernet::get_eth_cards($modules_conf);
#- only for a single ethernet network card
my @ether_dev = grep { /^eth[0-9]+$/ && `LC_ALL= LANG= $::prefix/sbin/ip -o link show $_ 2>/dev/null` =~ m|\slink/ether\s| } @all_dev;
@@ -589,26 +672,27 @@ sub easy_dhcp {
1;
}
+sub reload_net_applet() {
+ #- make net_applet reload the configuration
+ my $pid = chomp_(`pidof -x net_applet`);
+ $pid and kill 1, $pid;
+}
+
sub configure_network {
my ($net, $in, $modules_conf) = @_;
if (!$::testing) {
- require network::ethernet;
- network::ethernet::configure_eth_aliases($modules_conf);
+ require network::connection::ethernet;
+ network::connection::ethernet::configure_eth_aliases($modules_conf);
write_network_conf($net);
write_resolv_conf($net);
- if ($::isInstall && ! -e "/etc/resolv.conf") {
- #- symlink resolv.conf in install root too so that updates and suppl media can be added
- symlink "$::prefix/etc/resolv.conf", "/etc/resolv.conf";
- }
+ write_hostname($net->{network}{HOSTNAME}) if $net->{network}{HOSTNAME};
foreach (keys %{$net->{ifcfg}}) {
write_interface_conf($net, $_);
my $ssid = $net->{ifcfg}{$_}{WIRELESS_ESSID} or next;
write_wireless_conf($ssid, $net->{ifcfg}{$_});
}
- network::ethernet::install_dhcp_client($in, $_->{DHCP_CLIENT}) foreach grep { $_->{BOOTPROTO} eq "dhcp" } values %{$net->{ifcfg}};
- add2hosts("localhost", "127.0.0.1");
- add2hosts($net->{network}{HOSTNAME}, "127.0.0.1") if $net->{network}{HOSTNAME};
+ network::connection::ethernet::install_dhcp_client($in, $_->{DHCP_CLIENT}) foreach grep { $_->{BOOTPROTO} eq "dhcp" } values %{$net->{ifcfg}};
write_zeroconf($net, $in);
any { $_->{BOOTPROTO} =~ /^(pump|bootp)$/ } values %{$net->{ifcfg}} and $in->do_pkgs->install('pump');
@@ -616,12 +700,9 @@ sub configure_network {
require network::shorewall;
network::shorewall::update_interfaces_list();
- $net->{network}{HOSTNAME} && !$::isInstall and sethostname($net);
}
- #- make net_applet reload the configuration
- my $pid = chomp_(`pidof -x net_applet`);
- $pid and kill 1, $pid;
+ reload_net_applet();
}
1;
diff --git a/lib/network/rfswitch.pm b/lib/network/rfswitch.pm
new file mode 100644
index 0000000..4617990
--- /dev/null
+++ b/lib/network/rfswitch.pm
@@ -0,0 +1,38 @@
+package network::rfswitch;
+
+use strict;
+use MDK::Common;
+use detect_devices;
+
+my $conf_file = "/etc/modprobe.d/rfswitch.conf";
+
+my @settings = (
+ {
+ match => sub {
+ # CL56, with buggy BIOS
+ detect_devices::dmidecode_category('BIOS')->{Vendor} eq 'COMPAL' &&
+ detect_devices::dmidecode_category('System')->{'Product Name'} eq '<BAD INDEX>';
+ },
+ module => 'acerhk',
+ options => 'usedritek=1 autowlan=1 force_series=290',
+ install => 'echo 1 > /proc/driver/acerhk/wirelessled',
+ remove => 'echo 0 > /proc/driver/acerhk/wirelessled',
+ },
+);
+
+sub configure() {
+ my $setting = find { $_->{match}->() } @settings;
+ if ($setting) {
+ output_p($::prefix . $conf_file,
+ join("\n",
+ if_($setting->{options}, "options $setting->{module} $setting->{options}"),
+ if_($setting->{install}, "install $setting->{module} /sbin/modprobe --first-time --ignore-install $setting->{module} && $setting->{install}"),
+ if_($setting->{remove}, "remove $setting->{module} $setting->{remove}; /sbin/modprobe -r --ignore-remove $setting->{module}"),
+ "",
+ ));
+ require modules;
+ modules::set_preload_modules('rfswitch', $setting->{module});
+ }
+}
+
+1;
diff --git a/lib/network/shorewall.pm b/lib/network/shorewall.pm
index 2567b48..ce90d4e 100644
--- a/lib/network/shorewall.pm
+++ b/lib/network/shorewall.pm
@@ -1,12 +1,13 @@
package network::shorewall; # $Id$
use detect_devices;
-use network::ethernet;
use network::network;
use run_program;
use common;
use log;
+my $shorewall_root = "/etc/shorewall";
+
sub check_iptables() {
-f "$::prefix/etc/sysconfig/iptables" ||
$::isStandalone && do {
@@ -26,18 +27,12 @@ sub set_config_file {
} else {
$_ = '' if /^[^#]/;
}
- } "$::prefix/etc/shorewall/$file";
+ } "$::prefix${shorewall_root}/$file";
}
sub get_config_file {
my ($file) = @_;
- map { [ split ' ' ] } grep { !/^#/ } cat_("$::prefix/etc/shorewall/$file");
-}
-
-sub get_ifcfg_interface() {
- my $net = {};
- network::network::read_net_conf($net);
- network::tools::get_default_gateway_interface($net);
+ map { [ split ' ' ] } grep { !/^#/ } cat_("$::prefix${shorewall_root}/$file");
}
sub dev_to_shorewall {
@@ -47,53 +42,47 @@ sub dev_to_shorewall {
$dev;
}
-sub get_shorewall_interface() {
+sub get_net_zone_interfaces {
+ my ($net) = @_;
#- read shorewall configuration first
- foreach (get_config_file('interfaces')) {
- $_->[0] eq 'net' and return $_->[1];
- }
+ my @interfaces = map { $_->[1] } grep { $_->[0] eq 'net' } get_config_file('interfaces');
#- else try to find the best interface available
- dev_to_shorewall(get_ifcfg_interface());
-}
-
-our $ask_shorewall_interface_label = N_("Please enter the name of the interface connected to the internet.
-
-Examples:
- ppp+ for modem or DSL connections,
- eth0, or eth1 for cable connection,
- ippp+ for a isdn connection.
-");
-
-sub shorewall_interface_choices {
- my ($refval) = @_;
- my $modules_conf = modules::any_conf->read;
- my @all_cards = network::ethernet::get_eth_cards($modules_conf);
- my %net_devices = network::ethernet::get_eth_cards_names(@all_cards);
- put_in_hash(\%net_devices, { 'ppp+' => 'ppp+', 'ippp+' => 'ippp+' });
-
- [ { label => N("Net Device"), val => $refval, list => [ sort keys %net_devices ], format => sub { $net_devices{$_[0]} || $_[0] }, not_edit => 0 } ];
+ @interfaces ? @interfaces : dev_to_shorewall(network::tools::get_default_gateway_interface($net));
}
-sub read_default_interfaces {
+sub get_zones {
my ($conf, $o_in) = @_;
- my $interface = get_shorewall_interface();
- $o_in and $o_in->ask_from('', translate($ask_shorewall_interface_label), shorewall_interface_choices(\$interface));
- set_net_interface($conf, $interface);
+ my $net = {};
+ network::network::read_net_conf($net);
+ #- find all interfaces but alias interfaces
+ my @all_intf = grep { !/:/ } uniq(keys(%{$net->{ifcfg}}), detect_devices::get_net_interfaces());
+ my %net_zone = map { $_ => undef } @all_intf;
+ $net_zone{$_} = 1 foreach get_net_zone_interfaces($net);
+ $o_in and $o_in->ask_from('', N("Please select the interfaces that will be protected by the firewall.
+
+All interfaces directly connected to Internet should be selected,
+while interfaces connected to a local network may be unselected.
+
+Which interfaces should be protected?
+"), [
+ map {
+ { text => network::tools::get_interface_description($net, $_), val => \$net_zone{$_}, type => 'bool' };
+ } (sort keys %net_zone) ]);
+ ($conf->{net_zone}, $conf->{loc_zone}) = partition { $net_zone{$_} } keys %net_zone;
}
-sub set_net_interface {
+sub add_interface_to_net_zone {
my ($conf, $interface) = @_;
- $conf->{net_interface} = $interface;
- my $net = {};
- network::network::read_net_conf($net);
- my @all_intf = uniq((map { dev_to_shorewall($_) } keys %{$net->{ifcfg}}), detect_devices::getNet());
- #- keep all other interfaces (but alias interfaces) in local zone
- $conf->{loc_interface} = [ grep { !/:/ && $_ ne $interface } @all_intf ];
+ if (!member($interface, @{$conf->{net_zone}})) {
+ push @{$conf->{net_zone}}, $interface;
+ @{$conf->{loc_zone}} = grep { $_ ne $interface } @{$conf->{loc_zone}};
+ }
}
sub read {
my ($o_in) = @_;
- my @rules = get_config_file('rules');
+ #- read old rules file if config is not moved to rules.drakx yet
+ my @rules = get_config_file(-f "$::prefix${shorewall_root}/rules.drakx" ? 'rules.drakx' : 'rules');
my %conf = (disabled => !glob_("$::prefix/etc/rc3.d/S*shorewall"),
ports => join(' ', map {
my $e = $_;
@@ -103,10 +92,14 @@ sub read {
$conf{redirects}{$_->[3]}{$_->[2]} = $_->[4] foreach grep { $_->[0] eq 'REDIRECT' } @rules;
if (my ($e) = get_config_file('masq')) {
- $conf{masq_subnet} = $e->[1];
+ ($conf{masq}{net_interface}, $conf{masq}{subnet}) = @$e;
}
- read_default_interfaces(\%conf, $o_in);
- $conf{net_interface} && \%conf;
+
+ my @policy = get_config_file('policy');
+ $conf{log_net_drop} = @policy ? (any { $_->[0] eq 'net' && $_->[1] eq 'all' && $_->[2] eq 'DROP' && $_->[3] } @policy) : 1;
+
+ get_zones(\%conf, $o_in);
+ $conf{net_zone}[0] && \%conf;
}
sub ports_by_proto {
@@ -119,12 +112,44 @@ sub ports_by_proto {
\%ports_by_proto;
}
+sub upgrade_to_shorewall3() {
+ #- the 'FW' option has been removed from shorewall.conf as of shorewall 3.0
+ my $ipsecfile_ok;
+ substInFile {
+ undef $_ if /^\s*FW=/;
+ if ((/^\s*IPSECFILE=/ || eof) && !$ipsecfile_ok) {
+ $ipsecfile_ok = 1;
+ $_ = "IPSECFILE=zones\n";
+ }
+ } "$::prefix${shorewall_root}/shorewall.conf";
+}
+
sub write {
- my ($conf) = @_;
- my $default_intf = get_ifcfg_interface();
- my $use_pptp = $default_intf =~ /^ppp/ && cat_("$::prefix/etc/ppp/peers/$default_intf") =~ /pptp/;
+ my ($conf, $o_in) = @_;
+ my $use_pptp = any { /^ppp/ && cat_("$::prefix/etc/ppp/peers/$_") =~ /pptp/ } @{$conf->{net_zone}};
my $ports_by_proto = ports_by_proto($conf->{ports});
+ my ($include_drakx, $other_rules) = partition { $_ eq "INCLUDE\trules.drakx\n" } grep { !/^#/ } cat_("$::prefix${shorewall_root}/rules");
+ #- warn if the config is already in rules.drakx and additionnal rules are configured
+ if (!is_empty_array_ref($include_drakx) && !is_empty_array_ref($other_rules)) {
+ my %actions = (
+ keep => N("Keep custom rules"),
+ drop => N("Drop custom rules"),
+ );
+ my $action = 'keep';
+ !$o_in || $o_in->ask_from_(
+ {
+ messages => N("Your firewall configuration has been manually edited and contains
+rules that may conflict with the configuration that has just been set up.
+What do you want to do?"),
+ title => N("Firewall"),
+ icon => 'banner-security',
+ },
+ [ { val => \$action, type => 'list', list => [ 'keep', 'drop' ], format => sub { $actions{$_[0]} } } ]) or return;
+ #- reset the rules files if the user has chosen to drop modifications
+ undef $include_drakx if $action eq 'drop';
+ }
+
my $interface_settings = sub {
my ($zone, $interface) = @_;
[ $zone, $interface, 'detect', if_(detect_devices::is_bridge_interface($interface), 'routeback') ];
@@ -132,28 +157,34 @@ sub write {
set_config_file("zones",
[ 'net', 'ipv4' ],
- if_($conf->{loc_interface}[0], [ 'loc', 'ipv4' ]),
+ if_($conf->{loc_zone}[0], [ 'loc', 'ipv4' ]),
[ 'fw', 'firewall' ],
);
set_config_file('interfaces',
- $interface_settings->('net', $conf->{net_interface}),
- (map { $interface_settings->('loc', $_) } @{$conf->{loc_interface} || []}),
+ (map { $interface_settings->('net', $_) } @{$conf->{net_zone}}),
+ (map { $interface_settings->('loc', $_) } @{$conf->{loc_zone} || []}),
);
set_config_file('policy',
- if_($conf->{loc_interface}[0], [ 'loc', 'net', 'ACCEPT' ], [ 'loc', 'fw', 'ACCEPT' ], [ 'fw', 'loc', 'ACCEPT' ]),
+ if_($conf->{loc_zone}[0], [ 'loc', 'net', 'ACCEPT' ], [ 'loc', 'fw', 'ACCEPT' ], [ 'fw', 'loc', 'ACCEPT' ]),
[ 'fw', 'net', 'ACCEPT' ],
- [ 'net', 'all', 'DROP', 'info' ],
+ [ 'net', 'all', 'DROP', if_($conf->{log_net_drop}, 'info') ],
[ 'all', 'all', 'REJECT', 'info' ],
);
- set_config_file('rules',
+ if (is_empty_array_ref($include_drakx)) {
+ #- make sure the rules.drakx config is read, erasing user modifications
+ set_config_file('rules', [ 'INCLUDE', 'rules.drakx' ]);
+ }
+ output_with_perm("$::prefix${shorewall_root}/" . 'rules.drakx', 0600, map { join("\t", @$_) . "\n" } (
if_($use_pptp, [ 'ACCEPT', 'fw', 'loc:10.0.0.138', 'tcp', '1723' ]),
if_($use_pptp, [ 'ACCEPT', 'fw', 'loc:10.0.0.138', 'gre' ]),
(map_each { [ 'ACCEPT', 'net', 'fw', $::a, join(',', @$::b), '-' ] } %$ports_by_proto),
(map {
map_each { [ 'REDIRECT', 'loc', $::a, $_, $::b, '-' ] } %{$conf->{redirects}{$_}};
} keys %{$conf->{redirects}}),
- );
- set_config_file('masq', if_($conf->{masq_subnet}, [ $conf->{net_interface}, $conf->{masq_subnet} ]));
+ ));
+ set_config_file('masq', if_(exists $conf->{masq}, [ $conf->{masq}{net_interface}, $conf->{masq}{subnet} ]));
+
+ upgrade_to_shorewall3();
require services;
if ($conf->{disabled}) {
@@ -164,7 +195,9 @@ sub write {
}
}
-sub update_interfaces_list() {
+sub update_interfaces_list {
+ my ($o_intf) = @_;
+ $o_intf && member($o_intf, map { $_->[1] } get_config_file('interfaces')) and return;
my $shorewall = network::shorewall::read();
$shorewall && !$shorewall->{disabled} and network::shorewall::write($shorewall);
}
diff --git a/lib/network/signal_strength.pm b/lib/network/signal_strength.pm
new file mode 100644
index 0000000..0fa891d
--- /dev/null
+++ b/lib/network/signal_strength.pm
@@ -0,0 +1,14 @@
+package network::signal_strength;
+
+use common;
+use ugtk2;
+
+my %pixbufs;
+
+sub get_strength_icon {
+ my ($network) = @_;
+ my $approx = 20 + min(80, int($network->{signal_strength}/20)*20);
+ return $pixbufs{$approx} ||= ugtk2::gtkcreate_pixbuf('wifi-' . sprintf('%03d', $approx) . '.png');
+}
+
+1;
diff --git a/lib/network/squid.pm b/lib/network/squid.pm
index 7ca60d2..0a7dcce 100644
--- a/lib/network/squid.pm
+++ b/lib/network/squid.pm
@@ -18,7 +18,7 @@ sub write_squid_conf {
renamef($squid_conf_file, "$squid_conf_file.old");
output($squid_conf_file, qq(
-http_port $squid_conf->{http_port}[0]
+http_port $squid_conf->{http_port}[0] transparent
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \\?
no_cache deny QUERY
@@ -58,9 +58,6 @@ http_access allow localhost
http_reply_access allow all
icp_access allow all
visible_hostname $squid_conf->{visible_hostname}[0]
-httpd_accel_host virtual
-httpd_accel_with_proxy on
-httpd_accel_uses_host_header on
append_domain .$internal_domain_name
err_html_text $squid_conf->{admin_mail}[0]
deny_info ERR_CUSTOM_ACCESS_DENIED all
diff --git a/lib/network/test.pm b/lib/network/test.pm
index ec680b7..36da41d 100644
--- a/lib/network/test.pm
+++ b/lib/network/test.pm
@@ -95,7 +95,7 @@ sub update_status {
my ($o) = @_;
if ($o->{kid}) {
my $fd = $o->{kid}{fd};
- fcntl($fd, c::F_SETFL(), c::O_NONBLOCK()) or die "can not fcntl F_SETFL: $!";
+ common::nonblock($fd);
local $| = 1;
if (defined(my $output = <$fd>)) {
($o->{address}, $o->{ping}) = $output =~ /^([\d\.]+)\|([\d\.,]+)*$/;
@@ -111,48 +111,51 @@ sub update_status {
=head2 Test synchronously
-#- resolve and get ping to hostname from command line if given, else to www.mandriva.com
-use lib qw(/usr/lib/libDrakX);
-use network::test;
+resolve and get ping to hostname from command line if given, else to www.mandriva.com
-my $net_test = network::test->new($ARGV[0]);
-$net_test->test_synchronous;
+ use lib qw(/usr/lib/libDrakX);
+ use network::test;
-my $is_connected = $net_test->is_connected;
-my $hostname = $net_test->get_hostname;
-my $address = $net_test->get_address;
-my $ping = $net_test->get_ping;
+ my $net_test = network::test->new($ARGV[0]);
+ $net_test->test_synchronous;
-print "connected: $is_connected
-host: $hostname
-resolved host: $address
-ping to host: $ping
-";
+ my $is_connected = $net_test->is_connected;
+ my $hostname = $net_test->get_hostname;
+ my $address = $net_test->get_address;
+ my $ping = $net_test->get_ping;
+
+ print "connected: $is_connected
+ host: $hostname
+ resolved host: $address
+ ping to host: $ping
+ ";
=head2 Test asynchronously
-#- resolve and get ping to hostname from command line if given, else to Mandriva
-#- prints a "." every 10 miliseconds during connection test
-use lib qw(/usr/lib/libDrakX);
-use network::test;
-
-my $net_test = network::test->new($ARGV[0]);
-$net_test->start;
-
-do {
- print ".\n";
- select(undef, undef, undef, 0.01);
-} while !$net_test->is_done;
-
-my $is_connected = $net_test->is_connected;
-my $hostname = $net_test->get_hostname;
-my $address = $net_test->get_address;
-my $ping = $net_test->get_ping;
-
-print "connected: $is_connected
-host: $hostname
-resolved host: $address
-ping to host: $ping
-";
+resolve and get ping to hostname from command line if given, else to Mandriva
+
+prints a "." every 10 miliseconds during connection test
+
+ use lib qw(/usr/lib/libDrakX);
+ use network::test;
+
+ my $net_test = network::test->new($ARGV[0]);
+ $net_test->start;
+
+ do {
+ print ".\n";
+ select(undef, undef, undef, 0.01);
+ } while !$net_test->is_done;
+
+ my $is_connected = $net_test->is_connected;
+ my $hostname = $net_test->get_hostname;
+ my $address = $net_test->get_address;
+ my $ping = $net_test->get_ping;
+
+ print "connected: $is_connected
+ host: $hostname
+ resolved host: $address
+ ping to host: $ping
+ ";
=cut
diff --git a/lib/network/thirdparty.pm b/lib/network/thirdparty.pm
index b7b8c1e..2c8acb0 100644
--- a/lib/network/thirdparty.pm
+++ b/lib/network/thirdparty.pm
@@ -9,6 +9,9 @@ use fs::get;
use fs;
use log;
+#- using bsd_glob() since glob("/DONT_EXIST") return "/DONT_EXIST" instead of () (and we don't want this)
+use File::Glob ':glob';
+
#- network_settings is an hash of categories (rtc, dsl, wireless, ...)
#- each category is an hash of device settings
@@ -61,220 +64,10 @@ use log;
#- o no_club:
#- 1 if the package isn't available on Mandriva club
-my $firmware_directory = "/lib/firmware";
-
-my %network_settings = (
- rtc =>
- [
- {
- matching => qr/^Hcf:/,
- description => 'HCF 56k Modem',
- url => 'http://www.linuxant.com/drivers/hcf/',
- name => 'hcfpcimodem',
- kernel_module => {
- test_file => 'hcfpciengine',
- },
- tools =>
- {
- test_file => '/usr/sbin/hcfpciconfig',
- },
- device => '/dev/ttySHCF0',
- post => '/usr/sbin/hcfpciconfig --auto',
- restart_service => 'hcfpci',
- },
-
- {
- matching => qr/^Hsf:/,
- description => 'HSF 56k Modem',
- url => 'http://www.linuxant.com/drivers/hsf/',
- name => 'hsfmodem',
- kernel_module => {
- test_file => 'hsfengine',
- },
- tools =>
- {
- test_file => '/usr/sbin/hsfconfig',
- },
- device => '/dev/ttySHSF0',
- post => '/usr/sbin/hsfconfig --auto',
- restart_service => 'hsf',
- },
-
- {
- matching => qr/^LT:/,
- description => 'LT WinModem',
- url => 'http://www.heby.de/ltmodem/',
- name => 'ltmodem',
- kernel_module => 1,
- tools =>
- {
- test_file => '/etc/devfs/conf.d/ltmodem.conf',
- },
- device => '/dev/ttyS14',
- links =>
- [
- 'http://linmodems.technion.ac.il/Ltmodem.html',
- 'http://linmodems.technion.ac.il/packages/ltmodem/',
- ],
- },
-
- {
- matching => [ list_modules::category2modules('network/slmodem') ],
- description => 'Smartlink WinModem',
- url => 'http://www.smlink.com/content.aspx?id=135/',
- name => 'slmodem',
- kernel_module => 1,
- tools =>
- {
- test_file => '/usr/sbin/slmodemd',
- },
- device => '/dev/ttySL0',
- post => sub {
- my ($driver) = @_;
- addVarsInSh("$::prefix/etc/sysconfig/slmodemd", { SLMODEMD_MODULE => $driver });
- },
- restart_service => "slmodemd",
- },
-
- {
- matching => 'sm56',
- description => 'Motorola SM56 WinModem',
- url => 'http://www.motorola.com/softmodem/driver.htm#linux',
- name => 'sm56',
- kernel_module =>
- {
- package => 'sm56',
- },
- no_club => 1,
- device => '/dev/sm56',
- },
- ],
-
- wireless =>
- [
- {
- matching => 'zd1201',
- description => 'ZyDAS ZD1201',
- url => 'http://linux-lc100020.sourceforge.net/',
- firmware =>
- {
- test_file => 'zd1201*.fw',
- },
- },
-
- (map {
- {
- matching => "ipw${_}",
- description => "Intel(R) PRO/Wireless ${_}",
- url => "http://ipw${_}.sourceforge.net/",
- name => "ipw${_}",
- firmware =>
- {
- url => "http://ipw${_}.sourceforge.net/firmware.php",
- test_file => ($_ == 2100 ? "ipw2100-*.fw" : "ipw-2.3-*.fw"),
- },
- };
- } (2100, 2200)),
-
- {
- matching => 'prism54',
- description => 'Prism GT / Prism Duette / Prism Indigo Chipsets',
- url => 'http://prism54.org/',
- name => 'prism54',
- firmware =>
- {
- url => 'http://prism54.org/~mcgrof/firmware/',
- test_file => "isl38*",
- },
- },
-
- {
- matching => qr/^at76c50/,
- description => 'Atmel at76c50x cards',
- url => 'http://thekelleys.org.uk/atmel/',
- name => 'atmel',
- firmware =>
- {
- test_file => 'atmel_at76c50*',
- },
- links => 'http://at76c503a.berlios.de/',
- },
-
- {
- matching => 'ath_pci',
- description => 'Multiband Atheros Driver for WiFi',
- url => 'http://madwifi.sourceforge.net/',
- name => 'madwifi',
- kernel_module => 1,
- tools => {
- optionnal => 1,
- test_file => '/usr/bin/athstats',
- },
- },
- ],
-
- dsl =>
- [
- {
- matching => 'speedtouch',
- description => N_("Alcatel speedtouch USB modem"),
- url => "http://www.speedtouch.com/supuser.htm",
- name => 'speedtouch',
- tools =>
- {
- test_file => '/usr/sbin/modem_run',
- },
- firmware =>
- {
- package => 'speedtouch_mgmt',
- prefix => '/usr/share/speedtouch',
- test_file => 'mgmt*.o',
- explanations => N_("Copy the Alcatel microcode as mgmt.o in /usr/share/speedtouch/"),
- user_install => \&install_speedtouch_microcode,
- },
- links => 'http://linux-usb.sourceforge.net/SpeedTouch/mandrake/index.html',
- },
-
- {
- matching => 'eciadsl',
- name => 'eciadsl',
- explanations => N_("The ECI Hi-Focus modem cannot be supported due to binary driver distribution problem.
-
-You can find a driver on http://eciadsl.flashtux.org/"),
- no_club => 1,
- tools => {
- test_file => '/usr/sbin/pppoeci',
- },
- },
-
- {
- matching => 'sagem',
- description => 'Eagle chipset (from Analog Devices), e.g. Sagem F@st 800/840/908',
- url => 'http://www.eagle-usb.org/',
- name => 'eagle-usb',
- tools =>
- {
- test_file => '/sbin/eaglectrl',
- },
- },
-
- {
- matching => 'bewan',
- description => 'Bewan Adsl (Unicorn)',
- url => 'http://www.bewan.com/bewan/users/downloads/',
- name => 'unicorn',
- kernel_module => {
- test_file => 'unicorn_.*_atm',
- },
- tools => {
- optionnal => 1,
- test_file => '/usr/bin/bewan_adsl_status',
- },
- },
- ],
-);
-
-sub device_get_package {
+our $firmware_directory = "/lib/firmware";
+our @thirdparty_types = qw(kernel_module tools firmware);
+
+sub device_get_packages {
my ($settings, $option, $o_default) = @_;
$settings->{$option} or return;
my $package;
@@ -283,25 +76,26 @@ sub device_get_package {
} else {
$package = $settings->{$option};
}
- $package == 1 ? $o_default || $settings->{name} : $package;
+ $package == 1 ? $o_default || $settings->{name} : ref $package eq 'ARRAY' ? @$package : $package;
}
sub device_get_option {
- my ($settings, $option) = @_;
+ my ($settings, $option, $o_default) = @_;
$settings->{$option} or return;
my $value = $settings->{$option};
- $value == 1 ? $settings->{name} : $value;
+ $value == 1 ? $o_default || $settings->{name} : $value;
}
sub find_settings {
- my ($category, $driver) = @_;
+ my ($settings_list, $driver) = @_;
find {
- my $type = ref $_->{matching};
- $type eq 'Regexp' && $driver =~ $_->{matching} ||
- $type eq 'CODE' && $_->{matching}->($driver) ||
- $type eq 'ARRAY' && member($driver, @{$_->{matching}}) ||
- $driver eq $_->{matching};
- } @{$network_settings{$category}};
+ my $match = $_->{matching} || $_->{name};
+ my $type = ref $match;
+ $type eq 'Regexp' && $driver =~ $match ||
+ $type eq 'CODE' && $match->($driver) ||
+ $type eq 'ARRAY' && member($driver, @$match) ||
+ $driver eq $match;
+ } @$settings_list;
}
sub device_run_command {
@@ -318,37 +112,53 @@ sub device_run_command {
sub warn_not_installed {
my ($in, @packages) = @_;
- $in->ask_warn(N("Error"), N("Could not install the packages (%s)!", @packages));
+ $in->ask_warn(N("Error"), N("Could not install the packages (%s)!", join(', ', @packages)));
+}
+
+sub get_checked_element {
+ my ($settings, $driver, $option) = @_;
+ $option eq 'firmware' ?
+ get_firmware_path($settings) :
+ $option eq 'kernel_module' ?
+ $driver :
+ ref $settings->{$option} eq 'HASH' && $settings->{$option}{test_file};
}
sub warn_not_found {
- my ($in, $settings, $option, @packages) = @_;
+ my ($in, $settings, $driver, $option, @packages) = @_;
my %opt;
- $opt{$_} = $settings->{$option}{$_} || $settings->{$_} foreach qw(url explanations no_club);
+ $opt{$_} = ref $settings->{$option} eq 'HASH' && $settings->{$option}{$_} || $settings->{$_} foreach qw(url explanations no_club no_package);
+ my $checked = get_checked_element($settings, $driver, $option);
$in->ask_warn(N("Error"),
- N("Some packages (%s) are required but aren't available.", @packages) .
- (!$opt{no_club} && "\n" . N("These packages can be found in Mandriva Club or in Mandriva commercial releases.")) .
- ($option eq 'firmware' && "\n\n" . N("Info: ") . "\n" . N("due to missing %s", get_firmware_path($settings))) .
- ($opt{url} && "\n\n" . N("The required files can also be installed from this URL:
-%s", $opt{url})) .
- ($opt{explanations} && "\n\n" . translate($opt{explanations})));
+ join('',
+ ($opt{no_package} ?
+ N("Some components (%s) are required but aren't available for %s hardware.", $option, $settings->{name}) :
+ N("Some packages (%s) are required but aren't available.", join(', ', @packages))),
+ join("\n\n",
+ if_(!$opt{no_club} && !$opt{no_package}, N("These packages can be found in Mandriva Club or in Mandriva commercial releases.")),
+ if_($checked, N("The following component is missing: %s", $checked)),
+ if_($opt{explanations}, translate($opt{explanations})),
+ if_($opt{url}, N("The required files can also be installed from this URL:
+%s", $opt{url})),
+ )));
}
sub is_file_installed {
my ($settings, $option) = @_;
- my $file = exists $settings->{$option} && $settings->{$option}{test_file};
+ my $file = ref $settings->{$option} eq 'HASH' && $settings->{$option}{test_file};
$file && -e "$::prefix$file";
}
sub is_module_installed {
my ($settings, $driver) = @_;
+ require modules;
my $module = ref $settings->{kernel_module} eq 'HASH' && $settings->{kernel_module}{test_file} || $driver;
- find { m!/$module\.k?o! } cat_("$::prefix/lib/modules/" . c::kernel_version() . '/modules.dep');
+ modules::module_is_available($module);
}
sub get_firmware_path {
my ($settings) = @_;
- my $wildcard = exists $settings->{firmware} && $settings->{firmware}{test_file} or return;
+ my $wildcard = ref $settings->{firmware} eq 'HASH' && $settings->{firmware}{test_file} or return;
my $path = $settings->{firmware}{prefix} || $firmware_directory;
"$::prefix$path/$wildcard";
}
@@ -356,7 +166,40 @@ sub get_firmware_path {
sub is_firmware_installed {
my ($settings) = @_;
my $pattern = get_firmware_path($settings) or return;
- scalar glob_($pattern);
+ scalar bsd_glob($pattern, undef);
+}
+
+sub extract_firmware {
+ my ($settings, $in) = @_;
+ my $choice;
+ $in->ask_from('', N("Firmware files are required for this device."),
+ [ { type => "list", val => \$choice, format => \&translate,
+ list => [
+ if_(exists $settings->{firmware}{extract}{floppy_source}, N_("Use a floppy")),
+ if_(exists $settings->{firmware}{extract}{windows_source}, N_("Use my Windows partition")),
+ N_("Select file")
+ ] } ]) or return;
+ my ($h, $source);
+ if ($choice eq N_("Use a floppy")) {
+ $source = $settings->{firmware}{extract}{floppy_source};
+ $h = find_file_on_floppy($in, $source);
+ } elsif ($choice eq N_("Use my Windows partition")) {
+ $source = $settings->{firmware}{extract}{windows_source};
+ $h = find_file_on_windows_system($in, $source);
+ } else {
+ $source = $settings->{firmware}{extract}{default_source};
+ $h = { file => $in->ask_file(N("Please select the firmware file (for example: %s)", basename($source)), dirname($source)) };
+ }
+ if (!-e $h->{file}) {
+ log::explanations("Unable to find firmware file (tried to find $source.");
+ return;
+ }
+
+ if ($settings->{firmware}{extract}{name}) {
+ $in->do_pkgs->ensure_is_installed($settings->{firmware}{extract}{name}, $settings->{firmware}{extract}{test_file}) or return;
+ }
+ $settings->{firmware}{extract}{run}->($h->{file});
+ 1;
}
sub find_file_on_windows_system {
@@ -367,7 +210,7 @@ sub find_file_on_windows_system {
fs::get_info_from_fstab($all_hds);
if (my $part = find { $_->{device_windobe} eq 'C' } fs::get::fstab($all_hds)) {
foreach (qw(windows/system winnt/system windows/system32/drivers winnt/system32/drivers)) {
- -d $_ and $source = first(glob_("$part->{mntpoint}/$_/$file")) and last;
+ -d $_ and $source = first(bsd_glob("$part->{mntpoint}/$_/$file", undef)) and last;
}
$source or $in->ask_warn(N("Error"), N("Unable to find \"%s\" on your Windows system!", $file));
} else {
@@ -379,14 +222,14 @@ sub find_file_on_windows_system {
sub find_file_on_floppy {
my ($in, $file) = @_;
my $floppy = detect_devices::floppy();
- my $mountpoint = '/mnt/floppy';
+ my $mountpoint = '/media/floppy';
my $h;
$in->ask_okcancel(N("Insert floppy"),
N("Insert a FAT formatted floppy in drive %s with %s in root directory and press %s", $floppy, $file, N("Next"))) or return;
if (eval { fs::mount::mount(devices::make($floppy), $mountpoint, 'vfat', 'readonly'); 1 }) {
log::explanations("Mounting floppy device $floppy in $mountpoint");
$h = before_leaving { fs::mount::umount($mountpoint) };
- if ($h->{file} = first(glob("$mountpoint/$file"))) {
+ if ($h->{file} = first(bsd_glob("$mountpoint/$file", undef))) {
log::explanations("Found $h->{file} on floppy device");
} else {
log::explanations("Unabled to find $file on floppy device");
@@ -398,84 +241,75 @@ sub find_file_on_floppy {
$h;
}
-sub install_speedtouch_microcode {
- my ($in) = @_;
- my $choice;
- $in->ask_from('',
- N("You need the Alcatel microcode.
-You can provide it now via a floppy or your windows partition,
-or skip and do it later."),
- [ { type => "list", val => \$choice, format => \&translate,
- list => [ N_("Use a floppy"), N_("Use my Windows partition") ] } ]) or return;
- my ($h, $source);
- if ($choice eq N_("Use a floppy")) {
- $source = 'mgmt*.o';
- $h = find_file_on_floppy($in, $source);
+sub get_required_packages {
+ my ($type, $settings) = @_;
+ device_get_packages($settings, $type, if_($type eq 'firmware', "$settings->{name}-firmware"));
+}
+
+sub check_installed {
+ my ($type, $settings, $driver) = @_;
+ $type eq 'kernel_module' ?
+ is_module_installed($settings, $driver) :
+ $type eq 'firmware' ?
+ is_firmware_installed($settings) :
+ is_file_installed($settings, $type);
+}
+
+sub get_available_packages {
+ my ($type, $in, @names) = @_;
+ if ($type eq 'kernel_module') {
+ return map { my $l = $in->do_pkgs->check_kernel_module_packages($_); $l ? @$l : () } @names;
} else {
- $source = 'alcaudsl.sys';
- $h = find_file_on_windows_system($in, $source);
+ return $in->do_pkgs->is_available(@names);
}
- unless (-e $h->{file} && cp_f($h->{file}, "$::prefix/usr/share/speedtouch/mgmt.o")) {
- $in->ask_warn(N("Error"), N("Firmware copy failed, file %s not found", $source));
- log::explanations("Firmware copy of $source ($h->{file}) failed");
- return;
+}
+
+sub user_install {
+ my ($type, $settings, $in) = @_;
+ if ($type eq 'firmware') {
+ ref $settings->{$type} eq 'HASH' or return;
+ if ($settings->{$type}{extract}) {
+ extract_firmware($settings, $in);
+ } else {
+ my $f = $settings->{$type}{user_install};
+ $f && $f->($settings, $in);
+ }
+ } else {
+ my $f = ref $settings->{$type} eq 'HASH' && $settings->{$type}{user_install};
+ $f && $f->($settings, $in);
}
- log::explanations("Firmware copy of $h->{file} succeeded");
- $in->ask_warn(N("Congratulations!"), N("Firmware copy succeeded"));
- 1;
}
sub install_packages {
my ($in, $settings, $driver, @options) = @_;
foreach my $option (@options) {
- my %methods =
- (
- default =>
- {
- find_package_name => sub { device_get_package($settings, $option) },
- check_installed => sub { is_file_installed($settings, $option) },
- get_packages => sub { my ($name) = @_; $in->do_pkgs->is_available($name) },
- user_install => sub { my $f = $settings->{$option}{user_install}; $f && $f->($in) },
- },
- kernel_module =>
- {
- find_package_name => sub { device_get_package($settings, $option, "$settings->{name}-kernel") },
- check_installed => sub { is_module_installed($settings, $driver) },
- get_packages => sub { my ($name) = @_; my $l = $in->do_pkgs->check_kernel_module_packages($name); $l ? @$l : () }
- },
- firmware =>
- {
- find_package_name => sub { device_get_package($settings, $option, "$settings->{name}-firmware") },
- check_installed => sub { is_firmware_installed($settings) },
- },
- );
- my $get_method = sub { my ($method) = @_; exists $methods{$option} && $methods{$option}{$method} || $methods{default}{$method} };
-
- my $name = $get_method->('find_package_name')->();
- unless ($name) {
+ my @packages = get_required_packages($option, $settings);
+ unless (@packages) {
log::explanations(qq(No $option package for module "$driver" is required, skipping));
next;
}
- if ($get_method->('check_installed')->()) {
+ if (check_installed($option, $settings, $driver)) {
+ $settings->{old_status}{$option} = 1;
log::explanations(qq(Required $option package for module "$driver" is already installed, skipping));
next;
}
- if (my @packages = $get_method->('get_packages')->($name)) {
- log::explanations("Installing thirdparty packages ($option) " . join(', ', @packages));
- if (!$in->do_pkgs->install(@packages)) {
- next if ref $settings->{$option} eq 'HASH' && $settings->{$option}{optionnal};
- warn_not_installed($in, @packages);
- } elsif ($get_method->('check_installed')->()) {
- next;
+ my $optional = ref $settings->{$option} eq 'HASH' && $settings->{$option}{optional};
+ if (my @avalaible = get_available_packages($option, $in, @packages)) {
+ log::explanations("Installing thirdparty packages ($option) " . join(', ', @avalaible));
+ if ($in->do_pkgs->install(@avalaible) && check_installed($option, $settings, $in)) {
+ next;
+ } elsif (!$optional) {
+ warn_not_installed($in, @avalaible);
}
}
- log::explanations("Thirdparty package $name ($option) is required but not available");
+ next if $optional;
+ log::explanations("Thirdparty package @packages ($option) is required but not available");
- unless ($get_method->('user_install')->($in)) {
- warn_not_found($in, $settings, $option, $name);
+ unless (user_install($option, $settings, $in)) {
+ warn_not_found($in, $settings, $driver, $option, @packages);
return;
}
}
@@ -483,16 +317,22 @@ sub install_packages {
1;
}
-sub setup_device {
- my ($in, $category, $driver, $o_config, @o_fields) = @_;
+sub apply_settings {
+ my ($in, $category, $settings_list, $driver) = @_;
- my $settings = find_settings($category, $driver);
+ my $settings = find_settings($settings_list, $driver);
if ($settings) {
log::explanations(qq(Found settings for driver "$driver" in category "$category"));
my $wait = $in->wait_message('', N("Looking for required software and drivers..."));
- install_packages($in, $settings, $driver, qw(kernel_module firmware tools)) or return;
+ install_packages($in, $settings, $driver, @thirdparty_types) or return;
+
+ if (exists $settings->{firmware} && !$settings->{old_status}{firmware}) {
+ log::explanations("Reloading module $driver");
+ eval { modules::unload($driver) };
+ eval { modules::load($driver) };
+ }
undef $wait;
$wait = $in->wait_message('', N("Please wait, running device configuration commands..."));
@@ -503,15 +343,14 @@ sub setup_device {
services::restart_or_start($service);
}
+ $settings->{sleep} and sleep $settings->{sleep};
+
log::explanations(qq(Settings for driver "$driver" applied));
} else {
log::explanations(qq(No settings found for driver "$driver" in category "$category"));
}
- #- assign requested settings, erase with undef if no settings have been found
- $o_config->{$_} = $settings->{$_} foreach @o_fields;
-
- 1;
+ $settings || {};
}
1;
diff --git a/lib/network/tools.pm b/lib/network/tools.pm
index 4607979..a65fd7c 100644
--- a/lib/network/tools.pm
+++ b/lib/network/tools.pm
@@ -7,53 +7,15 @@ use c;
use Socket;
sub write_secret_backend {
- my ($a, $b) = @_;
- foreach my $i ("$::prefix/etc/ppp/pap-secrets", "$::prefix/etc/ppp/chap-secrets") {
- substInFile { s/^'$a'.*\n//; $_ .= "\n'$a' * '$b' * \n" if eof } $i;
- #- restore access right to secrets file, just in case.
- chmod 0600, $i;
- }
-}
-
-sub unquotify {
- my ($word) = @_;
- $$word =~ s/^(['"]?)(.*)\1$/$2/;
-}
-
-sub read_secret_backend() {
- my $conf = [];
- foreach my $i ("pap-secrets", "chap-secrets") {
- foreach (cat_("$::prefix/etc/ppp/$i")) {
- my ($login, $server, $passwd) = split(' ');
- if ($login && $passwd) {
- unquotify \$passwd;
- unquotify \$login;
- unquotify \$server;
- push @$conf, {login => $login,
- passwd => $passwd,
- server => $server };
- }
- }
- }
- $conf;
+ my ($login, $password) = @_;
+ require network::connection::ppp;
+ network::connection::ppp::write_secrets({ access => { login => $login, password => $password } });
}
sub passwd_by_login {
my ($login) = @_;
-
- unquotify \$login;
- my $secret = read_secret_backend();
- foreach (@$secret) {
- return $_->{passwd} if $_->{login} eq $login;
- }
-}
-
-sub wrap_command_for_root {
- my ($name, @args) = @_;
- #- FIXME: duplicate code from common::require_root_capability
- check_for_xserver() && fuzzy_pidofs(qr/\bkwin\b/) > 0 ?
- ("kdesu", "--ignorebutton", "-c", "$name @args") :
- ([ 'consolehelper', $name ], @args);
+ require network::connection::ppp;
+ network::connection::ppp::get_secret(undef, $login);
}
sub run_interface_command {
@@ -61,7 +23,7 @@ sub run_interface_command {
my @command =
!$> || system("/usr/sbin/usernetctl $intf report") == 0 ?
($command, $intf, if_(!$::isInstall, "daemon")) :
- wrap_command_for_root($command, $intf);
+ common::wrap_command_for_root($command, $intf);
run_program::raw({ detach => $detach, root => $::prefix }, @command);
}
@@ -93,7 +55,7 @@ sub connected_bg__raw {
local $| = 1;
if (ref($kid_pipe) && ref($$kid_pipe)) {
my $fd = $$kid_pipe->{fd};
- fcntl($fd, c::F_SETFL(), c::O_NONBLOCK()) or die "can not fcntl F_SETFL: $!";
+ common::nonblock($fd);
my $a = <$fd>;
$$status = $a if defined $a;
} else { $$kid_pipe = check_link_beat() }
@@ -177,7 +139,9 @@ sub find_matching_interface {
#- returns the current gateway, with lowest metric
sub get_current_gateway_interface() {
my $routes = get_routes();
- first(sort { $routes->{$a}{metric} <=> $routes->{$b}{metric} } grep { exists $routes->{$_}{gateway} } keys %$routes);
+ first(sort { $routes->{$a}{metric} <=> $routes->{$b}{metric} } grep {
+ $routes->{$_}{network} eq '0.0.0.0' && $routes->{$_}{gateway};
+ } keys %$routes);
}
#- returns gateway interface if found
@@ -197,7 +161,7 @@ sub get_default_gateway_interface {
sub get_interface_status {
my ($intf) = @_;
my $routes = get_routes();
- return $routes->{$intf}{network}, $routes->{$intf}{gateway};
+ return $routes->{$intf}{network}, $routes->{$intf}{network} eq '0.0.0.0' && $routes->{$intf}{gateway};
}
#- returns (gateway_interface, interface is up, gateway address, dns server address)
@@ -219,6 +183,18 @@ sub get_interface_type {
"unknown";
}
+sub get_interface_description {
+ my ($net, $interface_name) = @_;
+ my $type = get_interface_type($net->{ifcfg}{$interface_name});
+ #- FIXME: find interface description (from PCI/USB data) and translate
+ $type eq 'adsl' ? "DSL: $interface_name" :
+ $type eq 'isdn' ? "ISDN: $interface_name" :
+ $type eq 'modem' ? "Modem: $interface_name" :
+ $type eq 'wifi' ? "WiFi: $interface_name" :
+ member($type, qw(ethernet_gigabit ethernet)) ? "Ethernet: $interface_name" :
+ $interface_name;
+}
+
sub get_default_metric {
my ($type) = @_;
my @known_types = ("ethernet_gigabit", "ethernet", "adsl", "wifi", "isdn", "modem", "unknown");
@@ -243,9 +219,9 @@ sub get_routes() {
my %routes;
foreach (cat_("/proc/net/route")) {
if (/^(\S+)\s+([0-9A-F]+)\s+([0-9A-F]+)\s+[0-9A-F]+\s+\d+\s+\d+\s+(\d+)\s+([0-9A-F]+)/) {
- if (hex($2)) { $routes{$1}{network} = host_hex_to_dotted($2) }
- elsif (hex($3)) { $routes{$1}{gateway} = host_hex_to_dotted($3) }
- if ($4) { $routes{$1}{metric} = $4 }
+ if (defined $3) { $routes{$1}{gateway} = hex($3) ? host_hex_to_dotted($3) : $routes{$1}{network} }
+ if (defined $2) { $routes{$1}{network} = host_hex_to_dotted($2) }
+ if (defined $4) { $routes{$1}{metric} = $4 }
}
}
#- TODO: handle IPv6 with /proc/net/ipv6_route
diff --git a/lib/network/vpn.pm b/lib/network/vpn.pm
new file mode 100644
index 0000000..4a5afbc
--- /dev/null
+++ b/lib/network/vpn.pm
@@ -0,0 +1,191 @@
+package network::vpn;
+
+=head1 NAME
+
+network::vpn - VPN connection abstract class
+
+=cut
+
+use strict;
+use common;
+
+my $vpn_d = "/etc/sysconfig/network-scripts/vpn.d";
+
+=head1 CLASS METHODS
+
+=head2 Generic class methods
+
+=over
+
+=item list_types
+
+List supported VPN types
+
+=cut
+
+sub list_types {
+ common::load_modules_from_base(__PACKAGE__);
+}
+
+=item get_configured_connections
+
+Return list of configured connections for this class
+
+=cut
+
+sub get_configured_connections {
+ my ($class) = @_;
+ map { if_(/^(.*).conf$/, $class->new($1)) } all($::prefix . $vpn_d . '/' . $class->get_type);
+}
+
+=item new(NAME)
+
+Create a new VPN connection object named NAME
+
+=cut
+
+sub new {
+ my ($class, $name) = @_;
+ bless {
+ name => $name,
+ }, $class;
+}
+
+=back
+
+=head2 Pure virtual class methods
+
+=over
+
+=item get_type
+
+Return VPN type (preferably one lowercase word)
+
+=item get_description
+
+Return description of the VPN type
+
+=item get_packages
+
+List package required for configuration
+
+=back
+
+=head1 INSTANCE METHODS
+
+=head2 Generic instance methods
+
+=over
+
+=item get_name
+
+Return name of the VPN connection
+
+=cut
+
+sub get_name {
+ my ($connection) = @_;
+ $connection->{name};
+}
+
+=item get_label
+
+Return label of the VPN connection
+
+=cut
+
+sub get_label {
+ my ($connection) = @_;
+ sprintf("%s (%s)", $connection->get_name, $connection->get_type);
+}
+
+=item get_config_path
+
+Get configuration file path
+
+=cut
+
+sub get_config_path {
+ my ($connection) = @_;
+ $::prefix . $vpn_d . '/' . $connection->get_type . '/' . $connection->get_name . '.conf';
+}
+
+sub _run {
+ my ($connection, $action, @args) = @_;
+ my @command = ('vpn-' . $action, $connection->get_type, $connection->get_name, @args);
+ @command = common::wrap_command_for_root(@command) if $>;
+ require run_program;
+ run_program::rooted($::prefix, , @command);
+}
+
+=item start($o_in)
+
+Start the VPN connection
+
+$o_in is an interactive object used to interact with the user,
+used if some interactive username/passwords are required.
+If not specified, there is no user interaction.
+
+=cut
+
+sub start {
+ my ($connection, $_o_in) = @_;
+ $connection->_run('start');
+}
+
+=item stop
+
+Stop the VPN connection
+
+=cut
+
+sub stop {
+ my ($connection) = @_;
+ $connection->_run('stop');
+}
+
+=item is_started
+
+Returns true if the VPN connection is started
+
+=cut
+
+sub is_started {
+ my ($connection) = @_;
+ my $pid = chomp_(cat_($::prefix . '/var/run/' . $connection->get_type . '-' . $connection->get_name . '.pid'));
+ $pid && -e '/proc/' . $pid;
+}
+
+=back
+
+=head2 Pure virtual instance methods
+
+=over
+
+=item read_config
+
+Read configuration from the file returned by get_config_path()
+
+=item write_config
+
+Write configuration to the file returned by get_config_path()
+
+=item get_settings
+
+Return an array ref of interactive settings
+
+=back
+
+=head2 Optional instance methods
+
+=over
+
+=item prepare
+
+Run commands or services that are required for the VPN type
+
+=back
+
+=cut
+
+1;
diff --git a/lib/network/vpn/openvpn.pm b/lib/network/vpn/openvpn.pm
new file mode 100644
index 0000000..ac5acf1
--- /dev/null
+++ b/lib/network/vpn/openvpn.pm
@@ -0,0 +1,407 @@
+package network::vpn::openvpn;
+
+use base qw(network::vpn);
+
+use strict;
+use common;
+
+sub get_type { 'openvpn' }
+sub get_description { "OpenVPN" }
+sub get_packages { 'openvpn', if_(supports_pkcs11(), qw(openct opensc pcsc-lite)) }
+
+my $pkcs11_tokens;
+
+sub prepare {
+ require services;
+ if (supports_pkcs11()) {
+ #- don't fail if SmartCard daemons can't start, it's not mandatory
+ services::start_not_running_service($_) foreach qw(openct pcscd);
+ cache_pkcs11_tokens();
+ }
+ 1;
+}
+
+sub read_config {
+ my ($connection) = @_;
+ my ($pkcs11_slot, $pkcs11_id);
+ foreach (cat_($connection->get_config_path)) {
+ /^\s*proto\s+tcp/ and $connection->{tcp} = 1;
+ /^\s*dev\s+([[:alpha:]]+)(\d*)/ and ($connection->{dev_type}, $connection->{dev_number}) = ($1, $2);
+ if (/^\s*remote\s+(\S+)(?:\s+(\w+))?/) {
+ $connection->{gateway} = $1;
+ $connection->{port} = $2;
+ }
+ if (/^\s*tls-auth\s+(\S+)(?:\s+(\d+))?/) {
+ $connection->{'tls-auth'} = $1;
+ $connection->{key_direction} = $2;
+ }
+ foreach my $type (qw(ca cert key pkcs12 secret)) {
+ /^\s*$type\s+(.+)/ and $connection->{$type . '_file'} = $1;
+ }
+ /^\s*pkcs11-slot\s+(.+)/ and $pkcs11_slot = $1;
+ /^\s*pkcs11-id\s+(.+)/ and $pkcs11_id = $1;
+ /^\s*ns-cert-type\s+server/ and $connection->{check_server} = 1;
+ /^\s*auth-user-pass/ and $connection->{'auth-user-pass'} = 1;
+ if (/^\s*ifconfig\s+(\S+)\s+(\S+)/) {
+ $connection->{local_ip} = $1;
+ $connection->{remote_ip} = $2;
+ $connection->{addressing} = 'manual';
+ }
+ /^\s*cipher\s+(.+)/ and $connection->{cipher} = $1;
+ /^\s*keysize\s+(.+)/ and $connection->{keysize} = $1;
+ }
+ if (exists $connection->{secret_file}) {
+ $connection->{type} = 'static';
+ $connection->{key} = delete $connection->{secret_file};
+ } else {
+ $connection->{type} = 'pki';
+ $connection->{key} = delete $connection->{key_file};
+ }
+ if (defined $pkcs11_slot && defined $pkcs11_id) {
+ my $tokens = $connection->get_pkcs11_tokens('no_cache');
+ $connection->{pkcs11_object} = find { $_->{slot} eq $pkcs11_slot && $_->{id} eq $pkcs11_id } @{$tokens->{objects}};
+ $connection->{pkcs11_object} ||= {};
+ }
+}
+
+sub write_config {
+ my ($connection) = @_;
+ my $file = $connection->get_config_path;
+ unless (-e $file) {
+ mkdir_p(dirname($file));
+ cp_f("/usr/share/openvpn/sample-config-files/client.conf", $file);
+ }
+
+ delete $connection->{keysize} if !$connection->{cipher};
+ if ($connection->{type} eq 'static') {
+ $connection->{secret_file} = delete $connection->{key};
+ delete $connection->{ca_file};
+ delete $connection->{cert_file};
+ delete $connection->{key_file};
+ } else {
+ $connection->{key_file} = delete $connection->{key};
+ delete $connection->{secret_file};
+ }
+
+ my @config = $connection->build_config;
+ substInFile {
+ foreach my $conf (@config) {
+ if (/^;?$conf->{key}\b/) {
+ if ($conf->{comment}) {
+ $_ = ";$_" unless /^;/;
+ } else {
+ $_ = "$conf->{key} $conf->{value}\n";
+ $conf->{comment} = 1;
+ }
+ last;
+ }
+ }
+ $_ .= join('', map { if_(!$_->{comment}, "$_->{key} $_->{value}\n") } @config) if eof;
+ } $file;
+}
+
+sub get_key_settings {
+ my ($connection) = @_;
+ my %ciphers = get_ciphers();
+ my @types = (
+ pki => N("X509 Public Key Infrastructure"),
+ static => N("Static Key"),
+ );
+ my $pkcs11_separator = '/';
+ my $tokens = $connection->get_pkcs11_tokens;
+ my %types = @types;
+ [
+ {
+ label => N("Type"),
+ val => \$connection->{type},
+ list => first(list2kv(@types)),
+ format => sub { $types{$_[0]} },
+ },
+ (supports_pkcs11() ? {
+ label => "PKCS #11 token",
+ type => 'list',
+ list => [ undef, @{$tokens->{objects}} ],
+ format => sub { $_[0] ? join($pkcs11_separator,
+ $tokens->{slots}{$_[0]{slot}}{label} || $_[0]{slot},
+ $_[0]{label} || $_[0]{id})
+ : N("None") },
+ val => \$connection->{pkcs11_object},
+ separator => $pkcs11_separator,
+ allow_empty_list => 1,
+ disabled => sub { $connection->{type} ne 'pki' || $connection->{cert_file} || $connection->{key_file} || $connection->{pkcs12_file} },
+ } : ()),
+ {
+ label => "PKCS #12",
+ type => 'file',
+ val => \$connection->{pkcs12_file},
+ disabled => sub { $connection->{type} ne 'pki' || $connection->{cert_file} || $connection->{key_file} || $connection->{pkcs11_object} },
+ },
+ {
+ label =>
+ #-PO: please don't translate the CA acronym
+ N("Certificate Authority (CA)"),
+ type => 'file',
+ val => \$connection->{ca_file},
+ disabled => sub { $connection->{type} ne 'pki' },
+ },
+ {
+ label => N("Certificate"),
+ type => 'file',
+ val => \$connection->{cert_file},
+ disabled => sub { $connection->{type} ne 'pki' || $connection->{pkcs11_object} || $connection->{pkcs12_file} },
+ },
+ {
+ label => N("Key"),
+ type => 'file',
+ val => \$connection->{key},
+ disabled => sub { $connection->{type} eq 'pki' && ($connection->{pkcs11_object} || $connection->{pkcs12_file}) },
+ },
+ {
+ label => N("TLS control channel key"),
+ type => 'file',
+ val => \$connection->{'tls-auth'},
+ disabled => sub { $connection->{type} ne 'pki' },
+ advanced => 1,
+ },
+ {
+ label => N("Key direction"),
+ type => 'list',
+ val => \$connection->{key_direction},
+ list => [ undef, 0, 1 ],
+ format => sub { defined($_[0]) ? $_[0] : N("None") },
+ advanced => 1,
+ },
+ {
+ text => N("Authenticate using username and password"),
+ type => 'bool',
+ val => \$connection->{'auth-user-pass'},
+ advanced => 1,
+ },
+ {
+ text => N("Check server certificate"),
+ type => 'bool',
+ val => \$connection->{check_server},
+ advanced => 1,
+ },
+ {
+ label => N("Cipher algorithm"),
+ type => 'list',
+ val => \$connection->{cipher},
+ list => [ '', keys %ciphers ],
+ format => sub { exists $ciphers{$_[0]} ? $ciphers{$_[0]} : N("Default") },
+ advanced => 1,
+ },
+ {
+ label => N("Size of cipher key"),
+ val => \$connection->{keysize},
+ advanced => 1,
+ disabled => sub { !$connection->{cipher} || $connection->{cipher} eq 'none' },
+ },
+ ];
+}
+
+sub get_settings {
+ my ($connection) = @_;
+ my @addressing = (
+ automatic => N("Get from server"),
+ manual => N("Manual configuration"),
+ );
+ my %addressing = @addressing;
+ [
+ {
+ label => N("Gateway"),
+ val => \$connection->{gateway},
+ },
+ {
+ label => N("Gateway port"),
+ val => \$connection->{port},
+ advanced => 1,
+ },
+ {
+ label => N("IP address"),
+ val => \$connection->{addressing},
+ list => first(list2kv(@addressing)),
+ format => sub { $addressing{$_[0]} },
+ },
+ {
+ label => N("Local IP address"),
+ val => \$connection->{local_ip},
+ disabled => sub { $connection->{addressing} ne 'manual' },
+ },
+ {
+ label => N("Remote IP address"),
+ val => \$connection->{remote_ip},
+ disabled => sub { $connection->{addressing} ne 'manual' },
+ },
+ {
+ text => N("Use TCP protocol"),
+ type => 'bool',
+ val => \$connection->{tcp},
+ advanced => 1,
+ },
+ {
+ label => N("Virtual network device type"),
+ type => 'list',
+ list => [ 'tun', 'tap' ],
+ val => \$connection->{dev_type},
+ advanced => 1,
+ },
+ {
+ label => N("Virtual network device number (optional)"),
+ val => \$connection->{dev_number},
+ advanced => 1,
+ },
+ ];
+}
+
+my $lib = arch() =~ /x86_64/ ? "lib64" : "lib";
+my $openvpn_default_pkcs11_provider = find { -e $_ } (
+ "/usr/local/$lib/libetpkcs11.so",
+ "/usr/$lib/opensc-pkcs11.so",
+);
+
+my $supports_pkcs11;
+sub supports_pkcs11 {
+ if (!defined $supports_pkcs11) {
+ require run_program;
+ $supports_pkcs11 = to_bool(run_program::rooted($::prefix, '/usr/sbin/openvpn', '--show-pkcs11-slots', ''));
+ }
+ $supports_pkcs11;
+}
+
+sub get_pkcs11_tokens {
+ my ($_class, $o_no_cache) = @_;
+ cache_pkcs11_tokens() if !defined $pkcs11_tokens && !$o_no_cache;
+ $pkcs11_tokens;
+}
+
+sub cache_pkcs11_tokens {
+ $pkcs11_tokens = { slots => {}, objects => [] };
+ my $slot_id;
+ foreach (run_program::rooted_get_stdout($::prefix, '/usr/bin/pkcs11-tool', '--module', $openvpn_default_pkcs11_provider, '-L')) {
+ if (/^Slot\s+(\d+)\s+(.+)$/) {
+ $slot_id = $2 ne '(empty)' ? $1 : undef;
+ $pkcs11_tokens->{slots}{$slot_id}{name} = $2 if defined $slot_id;
+ } elsif (/^\s+token\s+label:\s+(.+)$/) {
+ $pkcs11_tokens->{slots}{$slot_id}{label} = $1 if defined $slot_id;
+ } elsif (/^\s+flags:\s*(.*)/) {
+ my @flags = split(/\s*,\s*/, $1);
+ if (defined $slot_id && !member("token present", @flags)) {
+ delete $pkcs11_tokens->{slots}{$slot_id};
+ undef $slot_id;
+ }
+ }
+ }
+ foreach $slot_id (keys %{$pkcs11_tokens->{slots}}) {
+ my ($type, $label);
+ my @stdout; #- do rooted_get_stdout manually because pkcs11-tool may exit with non-zero code with proprietary modules
+ run_program::rooted($::prefix, '/usr/bin/pkcs11-tool', '>', \@stdout, '--module', $openvpn_default_pkcs11_provider, '-O', '--slot', $slot_id);
+ foreach (@stdout) {
+ if (/^(\S.*?)\s+Object/) {
+ $type = $1;
+ undef $label;
+ } elsif (/^\s+label:\s+(.+)$/) {
+ $label = $1;
+ } elsif (/^\s+ID:\s+(.+)$/ && $type eq 'Public Key') {
+ push @{$pkcs11_tokens->{objects}}, { id => $1, label => $label, slot => $slot_id };
+ }
+ }
+ }
+}
+
+sub build_config {
+ my ($connection) = @_;
+ (
+ { key => 'client', comment => to_bool($connection->{secret_file}) },
+ { key => 'proto', $connection->{tcp} ? (value => 'tcp') : (comment => 1) },
+ { key => 'dev', value => $connection->{dev_type} . $connection->{dev_number} },
+ { key => 'remote', value => join(' ', $connection->{gateway}, if_($connection->{port}, $connection->{port})) },
+ (map { +{ key => $_, $connection->{$_ . '_file'} ? (value => $connection->{$_ . '_file'}) : (comment => 1) } } qw(ca cert key pkcs12 secret)),
+ { key => 'pkcs11-providers', $connection->{pkcs11_object} ? (value => $openvpn_default_pkcs11_provider) : (comment => 1) },
+ { key => 'pkcs11-slot-type', $connection->{pkcs11_object} ? (value => 'id') : (comment => 1) },
+ { key => 'pkcs11-slot', $connection->{pkcs11_object} ? (value => $connection->{pkcs11_object}{slot}) : (comment => 1) },
+ { key => 'pkcs11-id-type', $connection->{pkcs11_object} ? (value => 'id') : (comment => 1) },
+ { key => 'pkcs11-id', $connection->{pkcs11_object} ? (value => $connection->{pkcs11_object}{id}) : (comment => 1) },
+ { key => 'tls-auth', $connection->{'tls-auth'} ? (value => join(' ', $connection->{'tls-auth'}, if_($connection->{key_direction}, $connection->{key_direction}))) : (comment => 1) },
+ { key => 'ns-cert-type', $connection->{check_server} ? (value => 'server') : (comment => 1) },
+ { key => 'auth-user-pass', comment => !$connection->{'auth-user-pass'} },
+ { key => 'ifconfig', $connection->{addressing} eq 'manual' ?
+ (value => join(' ', $connection->{local_ip}, $connection->{remote_ip})) : (comment => 1) },
+ { key => 'cipher', $connection->{cipher} ? (value => $connection->{cipher}) : (comment => 1) },
+ { key => 'keysize', $connection->{keysize} ? (value => $connection->{keysize}) : (comment => 1) },
+ );
+}
+
+sub get_ciphers() {
+ my @ciphers = chomp_(`/usr/sbin/openvpn --show-ciphers`);
+ #- drop header
+ shift @ciphers while $ciphers[0] =~ /^\S/;
+ none => N("None"), map { if_($_, first(split(' ', $_)), $_) } @ciphers;
+}
+
+sub start {
+ my ($connection, $o_in) = @_;
+ $connection->read_config if keys %$connection <= 1;
+ my %interactive_passwords = if_($o_in, (
+ if_($connection->{'auth-user-pass'}, 'Auth' => 1),
+ if_($connection->{pkcs11_object}, 'Token' => 1),
+ ));
+ my $port = 2222;
+ my $started = $connection->_run('start',
+ if_(%interactive_passwords,
+ '--management', "127.0.0.1", $port,
+ '--management-query-passwords',
+ ));
+ $started && (!%interactive_passwords || $connection->ask_passwords($o_in, $port, \%interactive_passwords));
+}
+
+sub ask_passwords {
+ my ($_connection, $in, $port, $interactive_passwords) = @_;
+ require Net::Telnet;
+ my $t = new Net::Telnet;
+ $t->open(host => "localhost", port => $port, errmode => "return");
+ my $wait;
+ while (1) {
+ $wait ||= $in->wait_message(N("VPN connection"), N("Starting connection.."));
+ my ($_pre, $match) = $t->waitfor(string => ">PASSWORD:", string => ">NEED-OK:", errmode => "return",
+ #- don't quit if all interactive passwords have been entered
+ #- in case some passwords are incorrect
+ #- though, use a smaller timeout
+ timeout => (%$interactive_passwords ? 20 : 5));
+ if (!defined $match) {
+ my $msg = $t->errmsg;
+ #- no more interactive password is required, success
+ $t->close, return 1 if $msg =~ /timed-out/ && !%$interactive_passwords;
+ $t->close, return; #- potential failure
+ } elsif ($match eq ">NEED-OK:") {
+ my ($type, $msg) = $t->getline =~ /'(.*)'.* MSG:/;
+ undef $wait;
+ my $ret = $in->ask_okcancel(N("VPN connection"), $type eq 'token-insertion-request' ?
+ N("Please insert your token") :
+ $msg);
+ $t->print(qq(needok "$type" ) . ($ret ? "ok" : "cancel"));
+ $t->close, return if !$ret;
+ } elsif ($match eq ">PASSWORD:") {
+ my ($full_type) = $t->getline =~ /'(.*)'/;
+ #- assume type is "Auth" if not token
+ my $type = $full_type =~ /\btoken$/ ? 'Token' : 'Auth';
+ my ($username, $password);
+ undef $wait;
+ my $ret = $in->ask_from(N("VPN connection"), '', $type eq 'Token' ? [
+ { label => N("PIN number"), val => \$password, hidden => 1 }
+ ] : [
+ { label => N("Account Login (user name)"), val => \$username },
+ { label => N("Account Password"), val => \$password, hidden => 1 },
+ ]);
+ if ($ret) {
+ delete $interactive_passwords->{$type};
+ $t->print(qq(username "$full_type" "$username")) if $username;
+ $t->print(qq(password "$full_type" "$password"));
+ } else {
+ $t->close, return;
+ }
+ }
+ }
+}
+
+1;
diff --git a/lib/network/vpn/vpnc.pm b/lib/network/vpn/vpnc.pm
new file mode 100644
index 0000000..f0c8369
--- /dev/null
+++ b/lib/network/vpn/vpnc.pm
@@ -0,0 +1,74 @@
+package network::vpn::vpnc;
+
+use base qw(network::vpn);
+
+use strict;
+use common;
+
+sub get_type { 'vpnc' }
+sub get_description { N("Cisco VPN Concentrator") }
+sub get_packages { 'vpnc' }
+
+sub read_config {
+ my ($connection) = @_;
+ my @fields = group_by2(list_fields($connection));
+ foreach (cat_($connection->get_config_path)) {
+ foreach my $field (@fields) {
+ # all strings start exactly one space after the keyword string
+ /^$field->[0] (.*)/ and ${$field->[1]{val}} = $1;
+ }
+ }
+}
+
+sub write_config {
+ my ($connection) = @_;
+ output_with_perm($connection->get_config_path, 0600, map {
+ if_(${$_->[1]{val}}, $_->[0], ' ', ${$_->[1]{val}}, "\n");
+ } group_by2(list_fields($connection)));
+}
+
+sub get_settings {
+ my ($connection) = @_;
+ second(list2kv(list_fields($connection)));
+}
+
+sub list_fields {
+ my ($connection) = @_;
+ (
+ 'IPSec gateway' => {
+ label => N("Gateway"),
+ val => \$connection->{gateway},
+ },
+ 'IPSec ID' => {
+ label => N("Group name"),
+ val => \$connection->{id},
+ },
+ 'IPSec secret' => {
+ label => N("Group secret"),
+ val => \$connection->{secret},
+ hidden => 1,
+ },
+ 'Xauth username' => {
+ label => N("Username"),
+ val => \$connection->{username},
+ },
+ 'Xauth password' => {
+ label => N("Password"),
+ val => \$connection->{password},
+ hidden => 1,
+ },
+ 'UDP Encapsulate' => {
+ text => N("Use Cisco-UDP encapsulation"),
+ type => 'bool',
+ val => \$connection->{udp},
+ advanced => 1,
+ },
+ 'UDP Encapsulation Port' => {
+ label => N("Use specific UDP port"),
+ val => \$connection->{udp_port},
+ advanced => 1,
+ },
+ );
+}
+
+1;
diff --git a/lib/network/wireless.pm b/lib/network/wireless.pm
deleted file mode 100644
index 513c8a9..0000000
--- a/lib/network/wireless.pm
+++ /dev/null
@@ -1,239 +0,0 @@
-package network::wireless;
-
-use strict;
-use common;
-
-our %wireless_enc_modes = (
- none => N_("None"),
- open => N_("Open WEP"),
- restricted => N_("Restricted WEP"),
- 'wpa-psk' => N_("WPA Pre-Shared Key"),
-);
-
-my $wpa_supplicant_conf = "/etc/wpa_supplicant.conf";
-
-sub is_old_rt2x00 {
- my ($module) = @_;
- member($module, qw(rt2400 rt2500));
-}
-
-sub is_wpa_supplicant_blacklisted {
- my ($module) = @_;
- is_old_rt2x00($module);
-}
-
-sub get_hex_key {
- my ($key) = @_;
- if ($key =~ /^([[:xdigit:]]{4}[\:-]?)+[[:xdigit:]]{2,}$/) {
- $key =~ s/[\:-]//g;
- return lc($key);
- }
-}
-
-sub convert_wep_key_for_iwconfig {
- #- 5 or 13 characters, consider the key as ASCII and prepend "s:"
- #- else consider the key as hexadecimal, do not strip dashes
- #- always quote the key as string
- my ($real_key, $restricted) = @_;
- my $key = get_hex_key($real_key) || "s:$real_key";
- $restricted ? "restricted $key" : "open $key";
-}
-
-sub get_wep_key_from_iwconfig {
- #- strip "s:" if the key is 5 or 13 characters (ASCII)
- #- else the key as hexadecimal, do not modify
- my ($key) = @_;
- my ($mode, $real_key) = $key =~ /^(?:(open|restricted)\s+)?(.*)$/;
- $real_key =~ s/^s://;
- ($real_key, $mode eq 'restricted');
-}
-
-sub convert_key_for_wpa_supplicant {
- my ($key) = @_;
- get_hex_key($key) || qq("$key");
-}
-
-sub wlan_ng_needed {
- my ($module) = @_;
- $module =~ /^prism2_/;
-}
-
-#- FIXME: to be improved (quotes, comments) and moved in common files
-sub wlan_ng_update_vars {
- my ($file, $vars) = @_;
- substInFile {
- while (my ($key, $value) = each(%$vars)) {
- s/^#?\Q$key\E=(?:"[^#]*"|[^#\s]*)(\s*#.*)?/$key=$value$1/ and delete $vars->{$key};
- }
- $_ .= join('', map { "$_=$vars->{$_}\n" } keys %$vars) if eof;
- } $file;
-}
-
-sub wlan_ng_configure {
- my ($essid, $key, $device, $module) = @_;
- my $wlan_conf_file = "$::prefix/etc/wlan/wlan.conf";
- my @wlan_devices = split(/ /, (cat_($wlan_conf_file) =~ /^WLAN_DEVICES="(.*)"/m)[0]);
- push @wlan_devices, $device unless member($device, @wlan_devices);
- #- enable device and make it use the choosen ESSID
- wlan_ng_update_vars($wlan_conf_file,
- {
- WLAN_DEVICES => qq("@wlan_devices"),
- "SSID_$device" => qq("$essid"),
- "ENABLE_$device" => "y"
- });
-
- my $wlan_ssid_file = "$::prefix/etc/wlan/wlancfg-$essid";
- #- copy default settings for this ESSID if config file does not exist
- -f $wlan_ssid_file or cp_f("$::prefix/etc/wlan/wlancfg-DEFAULT", $wlan_ssid_file);
-
- #- enable/disable encryption
- wlan_ng_update_vars($wlan_ssid_file,
- {
- (map { $_ => $key ? "true" : "false" } qw(lnxreq_hostWEPEncrypt lnxreq_hostWEPDecrypt dot11PrivacyInvoked dot11ExcludeUnencrypted)),
- AuthType => $key ? qq("sharedkey") : qq("opensystem"),
- if_($key,
- dot11WEPDefaultKeyID => 0,
- dot11WEPDefaultKey0 => qq("$key")
- )
- });
- #- hide settings for non-root users
- chmod 0600, $wlan_conf_file;
- chmod 0600, $wlan_ssid_file;
-
- #- apply settings on wlan interface
- require services;
- services::restart($module eq 'prism2_cs' ? 'pcmcia' : 'wlan');
-}
-
-sub wpa_supplicant_get_driver {
- my ($module) = @_;
- $module =~ /^hostap_/ ? "hostap" :
- $module eq "prism54" ? "prism54" :
- $module =~ /^ath_/ ? "madwifi" :
- $module =~ /^at76c50|atmel_/ ? "atmel" :
- $module eq "ndiswrapper" ? "ndiswrapper" :
- "wext";
-}
-
-sub wpa_supplicant_add_network {
- my ($essid, $enc_mode, $key) = @_;
- my $conf = wpa_supplicant_read_conf();
- my $network = {
- ssid => qq("$essid"),
- scan_ssid => 1,
- };
-
- if ($enc_mode eq 'wpa-psk') {
- $network->{psk} = convert_key_for_wpa_supplicant($key);
- } else {
- $network->{key_mgmt} = 'NONE';
- if (member($enc_mode, qw(open restricted))) {
- put_in_hash($network, {
- wep_key0 => convert_key_for_wpa_supplicant($key),
- wep_tx_keyidx => 0,
- auth_alg => $enc_mode eq 'restricted' ? 'SHARED' : 'OPEN',
- });
- }
- }
-
- @$conf = difference2($conf, [ wpa_supplicant_find_similar($conf, $network) ]);
- push @$conf, $network;
- wpa_supplicant_write_conf($conf);
-}
-
-sub wpa_supplicant_find_similar {
- my ($conf, $network) = @_;
- grep {
- my $current = $_;
- any { exists $network->{$_} && $network->{$_} eq $current->{$_} } qw(ssid bssid);
- } @$conf;
-}
-
-sub wpa_supplicant_read_conf() {
- my @conf;
- my $network;
- foreach (cat_($::prefix . $wpa_supplicant_conf)) {
- if ($network) {
- #- in a "network = {}" block
- if (/^\s*(\w+)=(.*?)(?:\s*#.*)?$/) {
- $network->{$1} = $2;
- } elsif (/^\}/) {
- #- end of network block
- push @conf, $network;
- undef $network;
- }
- } elsif (/^\s*network={/) {
- #- beginning of a new network block
- $network = {};
- }
- }
- \@conf;
-}
-
-sub wpa_supplicant_write_conf {
- my ($conf) = @_;
- my $buf;
- my @conf = @$conf;
- my $network;
- foreach (cat_($::prefix . $wpa_supplicant_conf)) {
- if ($network) {
- #- in a "network = {}" block
- if (/^\s*(\w+)=(.*)$/) {
- push @{$network->{entries}}, { key => $1, value => $2 };
- member($1, qw(ssid bssid)) and $network->{$1} = $2;
- } elsif (/^\}/) {
- #- end of network block, write it
- $buf .= "network={$network->{comment}\n";
-
- my $new_network = first(wpa_supplicant_find_similar(\@conf, $network));
- foreach (@{$network->{entries}}) {
- my $key = $_->{key};
- if ($new_network) {
- #- do not write entry if not provided in the new network
- exists $new_network->{$key} or next;
- #- update value from the new network
- $_->{value} = delete $new_network->{$key};
- }
- $buf .= " ";
- $buf .= "$key=$_->{value}" if $key;
- $buf .= "$_->{comment}\n";
- }
- if ($new_network) {
- #- write new keys
- while (my ($key, $value) = each(%$new_network)) {
- $buf .= " $key=$value\n";
- }
- }
- $buf .= "}\n";
- $new_network and @conf = grep { $_ != $new_network } @conf;
- undef $network;
- } else {
- #- unrecognized, keep it anyway
- push @{$network->{entries}}, { comment => $_ };
- }
- } else {
- if (/^\s*network={/) {
- #- beginning of a new network block
- $network = {};
- } else {
- #- keep other options, comments
- $buf .= $_;
- }
- }
- }
-
- #- write remaining networks
- foreach (@conf) {
- $buf .= "\nnetwork={\n";
- while (my ($key, $value) = each(%$_)) {
- $buf .= " $key=$value\n";
- }
- $buf .= "}\n";
- }
-
- output($::prefix . $wpa_supplicant_conf, $buf);
- #- hide keys for non-root users
- chmod 0600, $::prefix . $wpa_supplicant_conf;
-}
-
-1;
diff --git a/po/Makefile b/po/Makefile
new file mode 100644
index 0000000..326c874
--- /dev/null
+++ b/po/Makefile
@@ -0,0 +1,41 @@
+# Installation directories
+localedir = $(DESTDIR)/usr/share/locale
+
+PGOAL = drakx-net
+
+# perl files to search translatable strings in
+PL_FILES:= ../bin/* ../lib/network/*.pm ../lib/network/vpn/*.pm ../lib/network/connection/*.pm ../lib/network/connection/providers/*.pm ../lib/network/connection/isdn/*.pm
+
+POFILES = $(shell ls *.po)
+MOFILES = $(POFILES:%.po=%.mo)
+POTFILE= $(PGOAL).pot
+LANGS = $(POFILES:%.po=%)
+
+PREFIX = $(RPM_BUILD_ROOT)/usr
+DATADIR = $(PREFIX)/share
+LOCALEDIR=$(DATADIR)/locale
+
+all: $(MOFILES)
+
+install: all
+ for l in $(LANGS); do \
+ install -d $(localedir)/$$l/LC_MESSAGES; \
+ install -m 644 $$l.mo $(localedir)/$$l/LC_MESSAGES/$(PGOAL).mo; \
+ done
+
+clean:
+ rm -f *~ *.[oas] *.mo $(POTFILE) $(MOFILES) TAGS
+
+%.mo: %.po
+ msgfmt -o $@ $<
+
+$(POTFILE): $(PL_FILES)
+ perl_checker -q --generate-pot $@ $(PL_FILES)
+
+merge: $(POTFILE)
+ @for n in $(POFILES); do \
+ echo "Merging $$n"; \
+ msgmerge -C "$$n" "$$n" $(PGOAL).pot > "$$n"t; \
+ mv -f "$$n"t "$$n"; \
+ done
+
diff --git a/po/af.po b/po/af.po
new file mode 100644
index 0000000..baafa55
--- /dev/null
+++ b/po/af.po
@@ -0,0 +1,5919 @@
+# translation of drakx-net-af21-09.po to Afrikaans
+# translation of drakx-net-af.po to Afrikaans
+# KTranslator Generated File
+# KTranslator Generated File
+# Copyright (C) 2000,2003, 2004 Free Software Foundation, Inc.
+# Schalk W. Cronjé <schalkc@ntaba.co.za>, 2000.
+# Dirk van der Walt <mandrake@webmail.co.za>, 2003.
+# Dirk van der Walt <dirkvanderwalt@webmail.co.za>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: drakx-net-af\n"
+"POT-Creation-Date: 2007-01-10 15:18+0100\n"
+"PO-Revision-Date: 2005-04-21 17:33+0200\n"
+"Last-Translator: Dirk van der Walt <dirkvanderwalt@webmail.co.za>\n"
+"Language-Team: Afrikaans\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: ../lib/network/connection.pm:16
+#, c-format
+msgid "Unknown connection type"
+msgstr "Onbekende konneksie tipe"
+
+#: ../lib/network/connection.pm:115
+#, c-format
+msgid "Network access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:116
+#, c-format
+msgid "Access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:117
+#, c-format
+msgid "Address settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:149 ../lib/network/drakvpn.pm:62
+#: ../lib/network/vpn/openvpn.pm:365 ../lib/network/vpn/openvpn.pm:379
+#: ../lib/network/vpn/openvpn.pm:390 ../tools/net_applet:129
+#, fuzzy, c-format
+msgid "VPN connection"
+msgstr "LAN-konneksie"
+
+#: ../lib/network/connection.pm:151 ../lib/network/connection/cable.pm:44
+#: ../lib/network/connection/wireless.pm:37 ../lib/network/vpn/openvpn.pm:127
+#: ../lib/network/vpn/openvpn.pm:171 ../lib/network/vpn/openvpn.pm:339
+#, c-format
+msgid "None"
+msgstr "Geen"
+
+#: ../lib/network/connection.pm:163
+#, c-format
+msgid "Allow users to manage the connection"
+msgstr ""
+
+#: ../lib/network/connection.pm:164
+#, c-format
+msgid "Start the connection at boot"
+msgstr ""
+
+#: ../lib/network/connection.pm:165 ../tools/drakconnect:462
+#, fuzzy, c-format
+msgid "Metric"
+msgstr "beperk"
+
+#: ../lib/network/connection.pm:230
+#, fuzzy, c-format
+msgid "Link detected on interface %s"
+msgstr "(op poort %s bespeur)"
+
+#: ../lib/network/connection.pm:231 ../lib/network/connection/ethernet.pm:278
+#, c-format
+msgid "Link beat lost on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:13
+#, c-format
+msgid "Cable"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:14
+#, fuzzy, c-format
+msgid "Cable modem"
+msgstr "Model kaart:"
+
+#: ../lib/network/connection/cable.pm:45
+#, c-format
+msgid "Use BPALogin (needed for Telstra)"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:48 ../lib/network/netconnect.pm:587
+#: ../tools/drakconnect:482
+#, c-format
+msgid "Authentication"
+msgstr "Magtiging"
+
+#: ../lib/network/connection/cable.pm:50 ../lib/network/connection/ppp.pm:22
+#: ../lib/network/netconnect.pm:326 ../lib/network/vpn/openvpn.pm:393
+#: ../tools/drakconnect:492
+#, c-format
+msgid "Account Login (user name)"
+msgstr "Gebruikerskode"
+
+#: ../lib/network/connection/cable.pm:52 ../lib/network/connection/ppp.pm:23
+#: ../lib/network/netconnect.pm:327 ../lib/network/vpn/openvpn.pm:394
+#: ../tools/drakconnect:493
+#, c-format
+msgid "Account Password"
+msgstr "Wagwoord"
+
+#: ../lib/network/connection/cellular.pm:47
+#, c-format
+msgid "Access Point Name"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:10
+#, c-format
+msgid "Bluetooth"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:11
+#, c-format
+msgid "Bluetooth Dial Up Networking"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:8
+#, c-format
+msgid "GPRS/Edge/3G"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:67
+#: ../lib/network/vpn/openvpn.pm:391
+#, c-format
+msgid "PIN number"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:130
+#, fuzzy, c-format
+msgid "Unable to open device %s"
+msgstr "Kon nie vurk nie: %s"
+
+#: ../lib/network/connection/cellular_card.pm:155
+#, fuzzy, c-format
+msgid "Please check that your SIM card is inserted."
+msgstr ""
+"\n"
+" Merk asseblief al die opsies wat u benodig.\n"
+
+#: ../lib/network/connection/cellular_card.pm:161
+#, c-format
+msgid ""
+"You entered a wrong PIN code.\n"
+"Entering the wrong PIN code multiple times may lock your SIM card!"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:12
+#, c-format
+msgid "DVB"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:13
+#, c-format
+msgid "Satellite (DVB)"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:56
+#, c-format
+msgid "Adapter card"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:57
+#, c-format
+msgid "Net demux"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:58
+#, c-format
+msgid "PID"
+msgstr "Pid"
+
+#: ../lib/network/connection/ethernet.pm:10
+#, c-format
+msgid "Ethernet"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:53
+#, c-format
+msgid "Unable to find network interface for selected device (using %s driver)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:61 ../lib/network/vpn/openvpn.pm:207
+#, c-format
+msgid "Manual configuration"
+msgstr "Selfdoen konfigurasie"
+
+#: ../lib/network/connection/ethernet.pm:62
+#, c-format
+msgid "Automatic IP (BOOTP/DHCP)"
+msgstr "Outomatiese IP (BOOTP/DHCP)"
+
+#: ../lib/network/connection/ethernet.pm:116
+#, fuzzy, c-format
+msgid "IP settings"
+msgstr "PLL verstelling:"
+
+#: ../lib/network/connection/ethernet.pm:125 ../lib/network/netconnect.pm:604
+#: ../lib/network/vpn/openvpn.pm:221 ../tools/drakconnect:113
+#: ../tools/drakconnect:321 ../tools/drakconnect:887 ../tools/drakhosts:196
+#, c-format
+msgid "IP address"
+msgstr "IP-adres"
+
+#: ../lib/network/connection/ethernet.pm:129
+#, c-format
+msgid ""
+"Please enter the IP configuration for this machine.\n"
+"Each item should be entered as an IP address in dotted-decimal\n"
+"notation (for example, 1.2.3.4)."
+msgstr ""
+"Gee asb die IP-konfigurasie vir hierdie rekenaar.\n"
+"Elke item moet as 'n IP-adres in dot-desimalenotasie\n"
+"(1.2.3.4) gegee word."
+
+#: ../lib/network/connection/ethernet.pm:132 ../tools/drakconnect:326
+#: ../tools/drakconnect:888 ../tools/drakgw:177
+#, c-format
+msgid "Netmask"
+msgstr "Netmasker"
+
+#: ../lib/network/connection/ethernet.pm:133 ../lib/network/netconnect.pm:636
+#: ../lib/network/vpn/openvpn.pm:212 ../lib/network/vpn/vpnc.pm:39
+#: ../tools/drakconnect:332
+#, c-format
+msgid "Gateway"
+msgstr "Portaal"
+
+#: ../lib/network/connection/ethernet.pm:136 ../tools/drakconnect:382
+#, fuzzy, c-format
+msgid "Get DNS servers from DHCP"
+msgstr "Die DNS-bediener se IP"
+
+#: ../lib/network/connection/ethernet.pm:138
+#, c-format
+msgid "DNS server 1"
+msgstr "DNS-bediener 1"
+
+#: ../lib/network/connection/ethernet.pm:139
+#, c-format
+msgid "DNS server 2"
+msgstr "DNS-bediener 2"
+
+#: ../lib/network/connection/ethernet.pm:140
+#, c-format
+msgid "Search domain"
+msgstr "Deursoek domein"
+
+#: ../lib/network/connection/ethernet.pm:141
+#, c-format
+msgid "By default search domain will be set from the fully-qualified host name"
+msgstr ""
+"Die domein om te deursoek, sal by verstek vanaf die \"fully-qualified host "
+"name\" FQHN af kom"
+
+#: ../lib/network/connection/ethernet.pm:143 ../tools/drakconnect:369
+#: ../tools/drakconnect:891
+#, c-format
+msgid "DHCP client"
+msgstr "DHCP-kliënt"
+
+#: ../lib/network/connection/ethernet.pm:144 ../tools/drakconnect:379
+#, fuzzy, c-format
+msgid "DHCP timeout (in seconds)"
+msgstr "Konneksie tydlimiet (in sekondes)"
+
+#: ../lib/network/connection/ethernet.pm:145 ../tools/drakconnect:383
+#, c-format
+msgid "Get YP servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:146 ../tools/drakconnect:384
+#, c-format
+msgid "Get NTPD servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:147 ../tools/drakconnect:375
+#, c-format
+msgid "DHCP host name"
+msgstr "DHCP-rekenaarnaam"
+
+#: ../lib/network/connection/ethernet.pm:149
+#, c-format
+msgid "Do not fallback to Zeroconf (169.254.0.0 network)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:160 ../tools/drakconnect:676
+#, c-format
+msgid "IP address should be in format 1.2.3.4"
+msgstr "IP-adres moet in 1.2.3.4. formaat wees"
+
+#: ../lib/network/connection/ethernet.pm:165 ../tools/drakconnect:680
+#, fuzzy, c-format
+msgid "Netmask should be in format 255.255.224.0"
+msgstr "Deurgang IP-adres moet in 1.2.3.4. formaat wees"
+
+#: ../lib/network/connection/ethernet.pm:170
+#, c-format
+msgid "Warning: IP address %s is usually reserved!"
+msgstr "Pasop: IP-adres %s is alreeds gebruik !"
+
+#: ../lib/network/connection/ethernet.pm:176
+#, c-format
+msgid "%s already in use\n"
+msgstr "%s is alreeds in gebruik\n"
+
+#: ../lib/network/connection/ethernet.pm:200 ../tools/drakconnect:373
+#, c-format
+msgid "Assign host name from DHCP address"
+msgstr "Ken rekenaarnaam vanaf DHCP-adres toe."
+
+#: ../lib/network/connection/ethernet.pm:202 ../tools/drakhosts:196
+#, c-format
+msgid "Host name"
+msgstr "Rekenaarnaam"
+
+#: ../lib/network/connection/ethernet.pm:220 ../tools/drakconnect:440
+#, c-format
+msgid "Network Hotplugging"
+msgstr "Warm-inprop Netwerk"
+
+#: ../lib/network/connection/ethernet.pm:224
+#, c-format
+msgid "Enable IPv6 to IPv4 tunnel"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:277
+#, c-format
+msgid "Link beat detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:280
+#, c-format
+msgid "Requesting a network address on interface %s (%s protocol)..."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:281
+#, c-format
+msgid "Got a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:282
+#, c-format
+msgid "Failed to get a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:8
+#, c-format
+msgid "ISDN"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:153 ../lib/network/netconnect.pm:197
+#: ../lib/network/netconnect.pm:200 ../lib/network/netconnect.pm:218
+#: ../lib/network/netconnect.pm:463 ../lib/network/netconnect.pm:559
+#: ../lib/network/netconnect.pm:562
+#, c-format
+msgid "Unlisted - edit manually"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "ISA / PCMCIA"
+msgstr "ISA / PCMCIA"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "I do not know"
+msgstr "Ek weet nie"
+
+#: ../lib/network/connection/isdn.pm:197 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "PCI"
+msgstr "PCI"
+
+#: ../lib/network/connection/isdn.pm:198 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "USB"
+msgstr "USB"
+
+#. -PO: POTS means "Plain old telephone service"
+#: ../lib/network/connection/pots.pm:10
+#, c-format
+msgid "POTS"
+msgstr ""
+
+#. -PO: POTS means "Plain old telephone service"
+#. -PO: remove it if it doesn't have an equivalent in your language
+#. -PO: for example, in French, it can be translated as "RTC"
+#: ../lib/network/connection/pots.pm:16
+#, c-format
+msgid "Analog telephone modem (POTS)"
+msgstr ""
+
+#: ../lib/network/connection/ppp.pm:9 ../lib/network/netconnect.pm:74
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Script-based"
+msgstr "Skriptipe"
+
+#: ../lib/network/connection/ppp.pm:10 ../lib/network/netconnect.pm:75
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP"
+msgstr "PAP"
+
+#: ../lib/network/connection/ppp.pm:11 ../lib/network/netconnect.pm:76
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Terminal-based"
+msgstr "Terminaaltipe"
+
+#: ../lib/network/connection/ppp.pm:12 ../lib/network/netconnect.pm:77
+#: ../tools/drakconnect:499
+#, c-format
+msgid "CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/ppp.pm:13 ../lib/network/netconnect.pm:78
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP/CHAP"
+msgstr "PAP/CHAP"
+
+#: ../lib/network/connection/providers/cellular.pm:13
+#: ../lib/network/connection/providers/cellular.pm:18
+#: ../lib/network/connection/providers/cellular.pm:23
+#: ../lib/network/connection/providers/xdsl.pm:492
+#: ../lib/network/connection/providers/xdsl.pm:504
+#: ../lib/network/connection/providers/xdsl.pm:516
+#: ../lib/network/connection/providers/xdsl.pm:528
+#: ../lib/network/connection/providers/xdsl.pm:539
+#: ../lib/network/connection/providers/xdsl.pm:551
+#: ../lib/network/connection/providers/xdsl.pm:563
+#: ../lib/network/connection/providers/xdsl.pm:575
+#: ../lib/network/connection/providers/xdsl.pm:588
+#: ../lib/network/connection/providers/xdsl.pm:599
+#: ../lib/network/connection/providers/xdsl.pm:610
+#: ../lib/network/netconnect.pm:33
+#, c-format
+msgid "France"
+msgstr "Frankryk"
+
+#: ../lib/network/connection/providers/xdsl.pm:47
+#: ../lib/network/connection/providers/xdsl.pm:57
+#, c-format
+msgid "Algeria"
+msgstr "Algerië"
+
+#: ../lib/network/connection/providers/xdsl.pm:67
+#: ../lib/network/connection/providers/xdsl.pm:77
+#, c-format
+msgid "Argentina"
+msgstr "Argentinië"
+
+#: ../lib/network/connection/providers/xdsl.pm:87
+#: ../lib/network/connection/providers/xdsl.pm:96
+#: ../lib/network/connection/providers/xdsl.pm:105
+#, c-format
+msgid "Austria"
+msgstr "Oostenryk"
+
+#: ../lib/network/connection/providers/xdsl.pm:114
+#: ../lib/network/connection/providers/xdsl.pm:124
+#: ../lib/network/connection/providers/xdsl.pm:134
+#, c-format
+msgid "Australia"
+msgstr "Australië"
+
+#: ../lib/network/connection/providers/xdsl.pm:144
+#: ../lib/network/connection/providers/xdsl.pm:153
+#: ../lib/network/connection/providers/xdsl.pm:164
+#: ../lib/network/connection/providers/xdsl.pm:173
+#: ../lib/network/connection/providers/xdsl.pm:182
+#: ../lib/network/netconnect.pm:36
+#, c-format
+msgid "Belgium"
+msgstr "België"
+
+#: ../lib/network/connection/providers/xdsl.pm:191
+#: ../lib/network/connection/providers/xdsl.pm:201
+#: ../lib/network/connection/providers/xdsl.pm:210
+#: ../lib/network/connection/providers/xdsl.pm:219
+#, c-format
+msgid "Brazil"
+msgstr "Brasilië"
+
+#: ../lib/network/connection/providers/xdsl.pm:228
+#: ../lib/network/connection/providers/xdsl.pm:237
+#, c-format
+msgid "Bulgaria"
+msgstr "Bulgaars"
+
+#: ../lib/network/connection/providers/xdsl.pm:246
+#: ../lib/network/connection/providers/xdsl.pm:255
+#: ../lib/network/connection/providers/xdsl.pm:264
+#: ../lib/network/connection/providers/xdsl.pm:273
+#: ../lib/network/connection/providers/xdsl.pm:282
+#: ../lib/network/connection/providers/xdsl.pm:291
+#: ../lib/network/connection/providers/xdsl.pm:300
+#: ../lib/network/connection/providers/xdsl.pm:309
+#: ../lib/network/connection/providers/xdsl.pm:318
+#: ../lib/network/connection/providers/xdsl.pm:327
+#: ../lib/network/connection/providers/xdsl.pm:336
+#: ../lib/network/connection/providers/xdsl.pm:345
+#: ../lib/network/connection/providers/xdsl.pm:354
+#: ../lib/network/connection/providers/xdsl.pm:363
+#: ../lib/network/connection/providers/xdsl.pm:372
+#: ../lib/network/connection/providers/xdsl.pm:381
+#: ../lib/network/connection/providers/xdsl.pm:390
+#: ../lib/network/connection/providers/xdsl.pm:399
+#: ../lib/network/connection/providers/xdsl.pm:408
+#: ../lib/network/connection/providers/xdsl.pm:417
+#, c-format
+msgid "China"
+msgstr "China"
+
+#: ../lib/network/connection/providers/xdsl.pm:426
+#: ../lib/network/connection/providers/xdsl.pm:436
+#, c-format
+msgid "Czech Republic"
+msgstr "Tsjeggiese Republiek"
+
+#: ../lib/network/connection/providers/xdsl.pm:446
+#: ../lib/network/connection/providers/xdsl.pm:455
+#: ../lib/network/connection/providers/xdsl.pm:464
+#, c-format
+msgid "Denmark"
+msgstr "Denemarke"
+
+#: ../lib/network/connection/providers/xdsl.pm:473
+#, c-format
+msgid "Egypt"
+msgstr "Egipte"
+
+#: ../lib/network/connection/providers/xdsl.pm:483
+#, c-format
+msgid "Finland"
+msgstr "Finland"
+
+#: ../lib/network/connection/providers/xdsl.pm:621
+#: ../lib/network/connection/providers/xdsl.pm:630
+#: ../lib/network/connection/providers/xdsl.pm:640
+#, c-format
+msgid "Germany"
+msgstr "Duitsland"
+
+#: ../lib/network/connection/providers/xdsl.pm:650
+#, c-format
+msgid "Greece"
+msgstr "Griekeland"
+
+#: ../lib/network/connection/providers/xdsl.pm:659
+#, c-format
+msgid "Hungary"
+msgstr "Hongarye"
+
+#: ../lib/network/connection/providers/xdsl.pm:668
+#, c-format
+msgid "Ireland"
+msgstr "Ierland"
+
+#: ../lib/network/connection/providers/xdsl.pm:677
+#, c-format
+msgid "Israel"
+msgstr "Israel"
+
+#: ../lib/network/connection/providers/xdsl.pm:687
+#, c-format
+msgid "India"
+msgstr "Indië"
+
+#: ../lib/network/connection/providers/xdsl.pm:696
+#: ../lib/network/connection/providers/xdsl.pm:705
+#, c-format
+msgid "Iceland"
+msgstr "Ysland"
+
+#: ../lib/network/connection/providers/xdsl.pm:714
+#: ../lib/network/connection/providers/xdsl.pm:725
+#: ../lib/network/connection/providers/xdsl.pm:735
+#: ../lib/network/connection/providers/xdsl.pm:746
+#: ../lib/network/netconnect.pm:35
+#, c-format
+msgid "Italy"
+msgstr "Italië"
+
+#: ../lib/network/connection/providers/xdsl.pm:758
+#, c-format
+msgid "Sri Lanka"
+msgstr "Sri Lanka"
+
+#: ../lib/network/connection/providers/xdsl.pm:770
+#, c-format
+msgid "Lithuania"
+msgstr "Litaue"
+
+#: ../lib/network/connection/providers/xdsl.pm:779
+#: ../lib/network/connection/providers/xdsl.pm:789
+#, c-format
+msgid "Mauritius"
+msgstr "Mauritius"
+
+#: ../lib/network/connection/providers/xdsl.pm:800
+#, c-format
+msgid "Morocco"
+msgstr "Marokko"
+
+#: ../lib/network/connection/providers/xdsl.pm:810
+#: ../lib/network/connection/providers/xdsl.pm:819
+#: ../lib/network/connection/providers/xdsl.pm:828
+#: ../lib/network/connection/providers/xdsl.pm:837
+#: ../lib/network/netconnect.pm:34
+#, c-format
+msgid "Netherlands"
+msgstr "Nederlands"
+
+#: ../lib/network/connection/providers/xdsl.pm:846
+#: ../lib/network/connection/providers/xdsl.pm:852
+#: ../lib/network/connection/providers/xdsl.pm:858
+#: ../lib/network/connection/providers/xdsl.pm:864
+#: ../lib/network/connection/providers/xdsl.pm:870
+#: ../lib/network/connection/providers/xdsl.pm:876
+#: ../lib/network/connection/providers/xdsl.pm:882
+#, c-format
+msgid "Norway"
+msgstr "Noorweë"
+
+#: ../lib/network/connection/providers/xdsl.pm:890
+#, c-format
+msgid "Pakistan"
+msgstr "Pakistan"
+
+#: ../lib/network/connection/providers/xdsl.pm:901
+#: ../lib/network/connection/providers/xdsl.pm:911
+#, c-format
+msgid "Poland"
+msgstr "Pole"
+
+#: ../lib/network/connection/providers/xdsl.pm:922
+#, c-format
+msgid "Portugal"
+msgstr "Portugal"
+
+#: ../lib/network/connection/providers/xdsl.pm:931
+#, c-format
+msgid "Russia"
+msgstr "Rusland"
+
+#: ../lib/network/connection/providers/xdsl.pm:942
+#, c-format
+msgid "Singapore"
+msgstr "Singapoer"
+
+#: ../lib/network/connection/providers/xdsl.pm:951
+#, c-format
+msgid "Senegal"
+msgstr "Senekal"
+
+#: ../lib/network/connection/providers/xdsl.pm:961
+#, c-format
+msgid "Slovenia"
+msgstr "Slovenië"
+
+#: ../lib/network/connection/providers/xdsl.pm:972
+#: ../lib/network/connection/providers/xdsl.pm:984
+#: ../lib/network/connection/providers/xdsl.pm:996
+#: ../lib/network/connection/providers/xdsl.pm:1009
+#: ../lib/network/connection/providers/xdsl.pm:1019
+#: ../lib/network/connection/providers/xdsl.pm:1029
+#: ../lib/network/connection/providers/xdsl.pm:1040
+#: ../lib/network/connection/providers/xdsl.pm:1050
+#: ../lib/network/connection/providers/xdsl.pm:1060
+#: ../lib/network/connection/providers/xdsl.pm:1070
+#: ../lib/network/connection/providers/xdsl.pm:1080
+#: ../lib/network/connection/providers/xdsl.pm:1090
+#: ../lib/network/connection/providers/xdsl.pm:1101
+#: ../lib/network/connection/providers/xdsl.pm:1112
+#: ../lib/network/connection/providers/xdsl.pm:1124
+#: ../lib/network/connection/providers/xdsl.pm:1136
+#, c-format
+msgid "Spain"
+msgstr "Spanje"
+
+#: ../lib/network/connection/providers/xdsl.pm:1149
+#, c-format
+msgid "Sweden"
+msgstr "Swede"
+
+#: ../lib/network/connection/providers/xdsl.pm:1158
+#: ../lib/network/connection/providers/xdsl.pm:1167
+#: ../lib/network/connection/providers/xdsl.pm:1177
+#, c-format
+msgid "Switzerland"
+msgstr "Switserland"
+
+#: ../lib/network/connection/providers/xdsl.pm:1186
+#, c-format
+msgid "Thailand"
+msgstr "Thailand"
+
+#: ../lib/network/connection/providers/xdsl.pm:1196
+#, c-format
+msgid "Tunisia"
+msgstr "Tunisië"
+
+#: ../lib/network/connection/providers/xdsl.pm:1207
+#, c-format
+msgid "Turkey"
+msgstr "Turkye"
+
+#: ../lib/network/connection/providers/xdsl.pm:1220
+#, c-format
+msgid "United Arab Emirates"
+msgstr "Verenigde Arabiese Emirate"
+
+#: ../lib/network/connection/providers/xdsl.pm:1230
+#: ../lib/network/connection/providers/xdsl.pm:1240
+#: ../lib/network/netconnect.pm:38
+#, c-format
+msgid "United Kingdom"
+msgstr "Verenigde Koninkryk"
+
+#: ../lib/network/connection/wireless.pm:11
+#, c-format
+msgid "Wireless"
+msgstr "Draadloos"
+
+#: ../lib/network/connection/wireless.pm:21
+#, c-format
+msgid "Use a Windows driver (with ndiswrapper)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:38
+#, c-format
+msgid "Open WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:39
+#, c-format
+msgid "Restricted WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:40
+#, c-format
+msgid "WPA Pre-Shared Key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:181 ../lib/network/thirdparty.pm:174
+#, c-format
+msgid "Firmware files are required for this device."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:209
+#, c-format
+msgid ""
+"Your wireless card is disabled, please enable the wireless switch (RF kill "
+"switch) first."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:270
+#, fuzzy, c-format
+msgid "Wireless settings"
+msgstr "Draadlose konneksie"
+
+#: ../lib/network/connection/wireless.pm:275 ../tools/drakconnect:406
+#: ../tools/drakroam:119
+#, c-format
+msgid "Operating Mode"
+msgstr "Bedryfsvlak"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Ad-hoc"
+msgstr "Ad-hoc"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Managed"
+msgstr "Beheerde"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Master"
+msgstr "Meester"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Repeater"
+msgstr "Repeater"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Secondary"
+msgstr "Sekondêre"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Auto"
+msgstr "Outo"
+
+#: ../lib/network/connection/wireless.pm:279 ../tools/drakconnect:407
+#, c-format
+msgid "Network name (ESSID)"
+msgstr "Netwerknaam (ESSID)"
+
+#: ../lib/network/connection/wireless.pm:281
+#, c-format
+msgid "Encryption mode"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:283 ../tools/drakconnect:421
+#, c-format
+msgid "Encryption key"
+msgstr "Enkripsie-sleutel"
+
+#: ../lib/network/connection/wireless.pm:285 ../tools/drakconnect:408
+#, c-format
+msgid "Network ID"
+msgstr "Netwerk-ID"
+
+#: ../lib/network/connection/wireless.pm:286 ../tools/drakconnect:409
+#, c-format
+msgid "Operating frequency"
+msgstr "Bedryfsfrekwensie"
+
+#: ../lib/network/connection/wireless.pm:287 ../tools/drakconnect:410
+#, c-format
+msgid "Sensitivity threshold"
+msgstr "Sensitiwiteits behoud"
+
+#: ../lib/network/connection/wireless.pm:288 ../tools/drakconnect:411
+#, c-format
+msgid "Bitrate (in b/s)"
+msgstr "Bitrate (in b/s)"
+
+#: ../lib/network/connection/wireless.pm:289 ../tools/drakconnect:422
+#, c-format
+msgid "RTS/CTS"
+msgstr "RTS/CTS"
+
+#: ../lib/network/connection/wireless.pm:290
+#, c-format
+msgid ""
+"RTS/CTS adds a handshake before each packet transmission to make sure that "
+"the\n"
+"channel is clear. This adds overhead, but increase performance in case of "
+"hidden\n"
+"nodes or large number of active nodes. This parameter sets the size of the\n"
+"smallest packet for which the node sends RTS, a value equal to the maximum\n"
+"packet size disable the scheme. You may also set this parameter to auto, "
+"fixed\n"
+"or off."
+msgstr ""
+"RTS/CTS voeg 'n handskud by alvorens 'n pakkie gestuur word. Dit\n"
+"is om seker te maak die tonnel is skoon. Dit voeg wel oorhoofse data\n"
+"by, maar kan beter resultate tot gevolge hê.\n"
+"Hierie parameter bepaal die kleinste pakkie vwaarvoor die node 'n RTS\n"
+"sal stuur. 'n Waarde gelyk aan die maksimun pakkie grootte sal dit\n"
+"de-aktiveer. U kan dit ook stel na Outo, bepaald of af."
+
+#: ../lib/network/connection/wireless.pm:297 ../tools/drakconnect:423
+#, c-format
+msgid "Fragmentation"
+msgstr "Fragmentasie"
+
+#: ../lib/network/connection/wireless.pm:298 ../tools/drakconnect:424
+#, c-format
+msgid "iwconfig command extra arguments"
+msgstr "iwconfig program se ekstra argumente"
+
+#: ../lib/network/connection/wireless.pm:299
+#, c-format
+msgid ""
+"Here, one can configure some extra wireless parameters such as:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick is already set "
+"as the hostname).\n"
+"\n"
+"See iwconfig(8) man page for further information."
+msgstr ""
+"Hier kan u ekstra verstellings bepaal soos: ap, channel, commit, enc, power, "
+"retry, sens, txpower (nick is reeds gestel as die rekenaarnaam).\n"
+"\n"
+"Raadpleeg die iwconfig(8) man vir ekstra inligting."
+
+#. -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#: ../lib/network/connection/wireless.pm:306 ../tools/drakconnect:425
+#, c-format
+msgid "iwspy command extra arguments"
+msgstr "iwspy program se ekstra argumente"
+
+#: ../lib/network/connection/wireless.pm:307
+#, c-format
+msgid ""
+"iwspy is used to set a list of addresses in a wireless network\n"
+"interface and to read back quality of link information for each of those.\n"
+"\n"
+"This information is the same as the one available in /proc/net/wireless :\n"
+"quality of the link, signal strength and noise level.\n"
+"\n"
+"See iwpspy(8) man page for further information."
+msgstr ""
+"iwspy word gebruik om 'n lys op te stel van adresse in 'n draadlose\n"
+"netwerk asook om die gehalte van elke koppeling van elk te lees.\n"
+"\n"
+"Hierdie inligting kan ook bekom word in /proc/net/wireless :\n"
+"gehalte van die koppeling, seinsterkte, en geraasvlakke.\n"
+"\n"
+"Raadpleeg die iwpspy(8) vir verdere inligting."
+
+#: ../lib/network/connection/wireless.pm:315 ../tools/drakconnect:426
+#, c-format
+msgid "iwpriv command extra arguments"
+msgstr "iwpriv program se ekstra argumente"
+
+#: ../lib/network/connection/wireless.pm:317
+#, c-format
+msgid ""
+"iwpriv enable to set up optionals (private) parameters of a wireless "
+"network\n"
+"interface.\n"
+"\n"
+"iwpriv deals with parameters and setting specific to each driver (as opposed "
+"to\n"
+"iwconfig which deals with generic ones).\n"
+"\n"
+"In theory, the documentation of each device driver should indicate how to "
+"use\n"
+"those interface specific commands and their effect.\n"
+"\n"
+"See iwpriv(8) man page for further information."
+msgstr ""
+"iwpriv stel u in staat om privaatheidsverstellings aan\n"
+"die draadlose netwerkkoppelvlak aan te bring.\n"
+"\n"
+"iwpriv maak verstellings aan die spesifieke drywers (in teenstelling met "
+"iwconfig wat generiese verstellings doen)\n"
+"\n"
+"In teorie, behoort u al die nodige inligting vanaf die drywer\n"
+"se dokumentasie te kan bekom)\n"
+"\n"
+"Raadpleeg die iwpriv(8) vir verdere inligting."
+
+#: ../lib/network/connection/wireless.pm:335
+#, c-format
+msgid "An encryption key is required."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:341
+#, c-format
+msgid ""
+"Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz "
+"frequency), or add enough '0' (zeroes)."
+msgstr ""
+"Freq moet 'n k, M of G agtervoegsel kry. (byvoorbeeld, \"2.6G\" vir 2.46Ghz "
+"frekwensie), of u moet genoeg 0'e (zero's) byvoeg."
+
+#: ../lib/network/connection/wireless.pm:347
+#, c-format
+msgid ""
+"Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add "
+"enough '0' (zeroes)."
+msgstr ""
+"Tempo moet agtervoegsels van k,M, of G kry (byvoorbeeld \"11M\" vir 11M) of "
+"voeg genoeg 0'e (zero'z) by."
+
+#: ../lib/network/connection/wireless.pm:359
+#, c-format
+msgid "Allow access point roaming"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:460
+#, c-format
+msgid "Associated to wireless network \"%s\" on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:461
+#, c-format
+msgid "Lost association to wireless network on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:8
+#, fuzzy, c-format
+msgid "DSL"
+msgstr "Ssl"
+
+#: ../lib/network/connection/xdsl.pm:76 ../lib/network/netconnect.pm:755
+#, c-format
+msgid "Alcatel speedtouch USB modem"
+msgstr "Alcatel speedtouch USB-modem"
+
+#: ../lib/network/connection/xdsl.pm:104
+#, c-format
+msgid ""
+"The ECI Hi-Focus modem cannot be supported due to binary driver distribution "
+"problem.\n"
+"\n"
+"You can find a driver on http://eciadsl.flashtux.org/"
+msgstr ""
+"The ECI Hi-Focus modem kan nie uit die boks ondersteun word uit nie.\n"
+"Besoek gerus http://eciadsl.flashtux.org/ vir 'n drywer."
+
+#: ../lib/network/connection/xdsl.pm:176
+#, c-format
+msgid "DSL over CAPI"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:179
+#, c-format
+msgid "Dynamic Host Configuration Protocol (DHCP)"
+msgstr "Dynamic Host Configuration Protocol (DHCP)"
+
+#: ../lib/network/connection/xdsl.pm:180
+#, c-format
+msgid "Manual TCP/IP configuration"
+msgstr "Selfdoen TCP/IP-konfigurasie"
+
+#: ../lib/network/connection/xdsl.pm:181
+#, c-format
+msgid "Point to Point Tunneling Protocol (PPTP)"
+msgstr "Point to Point Tunneling Protocol (PPTP)"
+
+#: ../lib/network/connection/xdsl.pm:182
+#, c-format
+msgid "PPP over Ethernet (PPPoE)"
+msgstr "PPP oor Ethernet (PPPoE)"
+
+#: ../lib/network/connection/xdsl.pm:183
+#, c-format
+msgid "PPP over ATM (PPPoA)"
+msgstr "PPP oor ATM (PPPoA)"
+
+#: ../lib/network/connection/xdsl.pm:223
+#, c-format
+msgid "Virtual Path ID (VPI):"
+msgstr "Virtual Path ID (VPI):"
+
+#: ../lib/network/connection/xdsl.pm:224
+#, c-format
+msgid "Virtual Circuit ID (VCI):"
+msgstr "Virtual Circuit ID (VCI):"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/drakvpn.pm:52 ../lib/network/ndiswrapper.pm:27
+#: ../lib/network/ndiswrapper.pm:42 ../lib/network/ndiswrapper.pm:86
+#: ../lib/network/ndiswrapper.pm:102 ../lib/network/netconnect.pm:131
+#: ../lib/network/netconnect.pm:179 ../lib/network/netconnect.pm:268
+#: ../lib/network/netconnect.pm:813 ../lib/network/thirdparty.pm:114
+#: ../lib/network/thirdparty.pm:131 ../lib/network/thirdparty.pm:214
+#: ../lib/network/thirdparty.pm:216 ../lib/network/thirdparty.pm:237
+#: ../tools/drakconnect:676 ../tools/drakconnect:680 ../tools/drakconnect:689
+#: ../tools/drakconnect:705 ../tools/drakgw:184 ../tools/drakhosts:100
+#: ../tools/drakhosts:245 ../tools/drakhosts:252 ../tools/drakhosts:259
+#: ../tools/drakinvictus:72 ../tools/draknetprofile:113 ../tools/draknfs:85
+#: ../tools/draknfs:106 ../tools/draknfs:273 ../tools/draknfs:400
+#: ../tools/draknfs:402 ../tools/draknfs:405 ../tools/draknfs:497
+#: ../tools/draknfs:504 ../tools/draknfs:567 ../tools/draknfs:574
+#: ../tools/draknfs:581 ../tools/drakroam:79 ../tools/drakroam:92
+#: ../tools/draksambashare:372 ../tools/draksambashare:379
+#: ../tools/draksambashare:382 ../tools/draksambashare:428
+#: ../tools/draksambashare:452 ../tools/draksambashare:518
+#: ../tools/draksambashare:533 ../tools/draksambashare:611
+#: ../tools/draksambashare:678 ../tools/draksambashare:778
+#: ../tools/draksambashare:785 ../tools/draksambashare:916
+#: ../tools/draksambashare:1109 ../tools/draksambashare:1118
+#: ../tools/draksambashare:1140 ../tools/draksambashare:1149
+#: ../tools/draksambashare:1168 ../tools/draksambashare:1177
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Error"
+msgstr "Fout"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/netconnect.pm:131 ../lib/network/thirdparty.pm:114
+#, fuzzy, c-format
+msgid "Could not install the packages (%s)!"
+msgstr "Installeer pakket %s"
+
+#: ../lib/network/drakfirewall.pm:12
+#, c-format
+msgid "Web Server"
+msgstr "Web-bediener"
+
+#: ../lib/network/drakfirewall.pm:17
+#, c-format
+msgid "Domain Name Server"
+msgstr "Domeinnaam-bediener"
+
+#: ../lib/network/drakfirewall.pm:22
+#, c-format
+msgid "SSH server"
+msgstr "SSH-bediener"
+
+#: ../lib/network/drakfirewall.pm:27
+#, c-format
+msgid "FTP server"
+msgstr "FTP-bediener"
+
+#: ../lib/network/drakfirewall.pm:32
+#, c-format
+msgid "Mail Server"
+msgstr "e-Pos bediener"
+
+#: ../lib/network/drakfirewall.pm:37
+#, c-format
+msgid "POP and IMAP Server"
+msgstr "POP en IMAP bediener"
+
+#: ../lib/network/drakfirewall.pm:42
+#, c-format
+msgid "Telnet server"
+msgstr "Telnet-bediener"
+
+#: ../lib/network/drakfirewall.pm:48
+#, c-format
+msgid "Windows Files Sharing (SMB)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:54
+#, c-format
+msgid "CUPS server"
+msgstr "CUPS-bediener"
+
+#: ../lib/network/drakfirewall.pm:60
+#, c-format
+msgid "Echo request (ping)"
+msgstr "Echo request (ping)"
+
+#: ../lib/network/drakfirewall.pm:65
+#, c-format
+msgid "BitTorrent"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:74
+#, c-format
+msgid "Port scan detection"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:166 ../lib/network/drakfirewall.pm:172
+#, fuzzy, c-format
+msgid "Firewall configuration"
+msgstr "Selfdoen konfigurasie"
+
+#: ../lib/network/drakfirewall.pm:166
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"This configures a personal firewall for this Mandriva Linux machine.\n"
+"For a powerful and dedicated firewall solution, please look to the\n"
+"specialized Mandriva Security Firewall distribution."
+msgstr ""
+"drakfirewall konfigurasie\n"
+"\n"
+"Hiermee stel u 'n persoonlike vuurmuur op vir die Mandriva Linux\n"
+"rekenaar. Indien u 'n kragtige en toegewyde vuurmuur verlang, kyk\n"
+"dan gerus na die 'Mandriva Security Firewall'."
+
+#: ../lib/network/drakfirewall.pm:172
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"Make sure you have configured your Network/Internet access with\n"
+"drakconnect before going any further."
+msgstr ""
+"drakefirewall assistent\n"
+"\n"
+"Maak seker dat u alreeds die Netwerk/Internet toegang opgestel het\n"
+"deur 'drakconnect' te gebruik."
+
+#: ../lib/network/drakfirewall.pm:189
+#, c-format
+msgid "Which services would you like to allow the Internet to connect to?"
+msgstr "Watter dienste wil u toelaat vanaf die Internet?"
+
+#: ../lib/network/drakfirewall.pm:190 ../lib/network/shorewall.pm:145
+#, c-format
+msgid "Firewall"
+msgstr "Vuurmuur"
+
+#: ../lib/network/drakfirewall.pm:192
+#, c-format
+msgid ""
+"You can enter miscellaneous ports. \n"
+"Valid examples are: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Have a look at /etc/services for information."
+msgstr ""
+"U kan uiteenlopende poorte voorsien. \n"
+"Voorbeelde hiervan is: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Kyk gerus na '/etc/services' vir meer inligting."
+
+#: ../lib/network/drakfirewall.pm:198
+#, c-format
+msgid ""
+"Invalid port given: %s.\n"
+"The proper format is \"port/tcp\" or \"port/udp\", \n"
+"where port is between 1 and 65535.\n"
+"\n"
+"You can also give a range of ports (eg: 24300:24350/udp)"
+msgstr ""
+"Ongeldige poort: %s.\n"
+"Die regte manier is \"poort/tcp\" of \"poort/udp\",\n"
+"waar poort tussen 1 en 65535 is.\n"
+"\n"
+"U kan ook 'n reeks poorte verskaf (bv. 24300:24350/udp)"
+
+#: ../lib/network/drakfirewall.pm:208
+#, c-format
+msgid "Everything (no firewall)"
+msgstr "Alles (geen vuurmuur)"
+
+#: ../lib/network/drakfirewall.pm:210
+#, c-format
+msgid "Other ports"
+msgstr "Ander poorte"
+
+#: ../lib/network/drakfirewall.pm:211
+#, c-format
+msgid "Log firewall messages in system logs"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:255 ../lib/network/drakfirewall.pm:258
+#: ../tools/drakids:40 ../tools/drakids:65 ../tools/drakids:181
+#: ../tools/drakids:190 ../tools/drakids:215 ../tools/drakids:224
+#: ../tools/drakids:234 ../tools/drakids:326 ../tools/net_applet:77
+#: ../tools/net_applet:238 ../tools/net_applet:514 ../tools/net_applet:541
+#, fuzzy, c-format
+msgid "Interactive Firewall"
+msgstr "Vuurmuur"
+
+#: ../lib/network/drakfirewall.pm:256
+#, c-format
+msgid ""
+"You can be warned when someone accesses to a service or tries to intrude "
+"into your computer.\n"
+"Please select which network activities should be watched."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:261
+#, c-format
+msgid "Use Interactive Firewall"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:30
+#, fuzzy, c-format
+msgid "VPN configuration"
+msgstr "CUPS-konfigurasie"
+
+#: ../lib/network/drakvpn.pm:34
+#, fuzzy, c-format
+msgid "Choose the VPN type"
+msgstr "Kies die nuwe grootte"
+
+#: ../lib/network/drakvpn.pm:49
+#, c-format
+msgid "Initializing tools and detecting devices for %s..."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:52
+#, fuzzy, c-format
+msgid "Unable to initialize %s connection type!"
+msgstr "Onbekende konneksie tipe"
+
+#: ../lib/network/drakvpn.pm:60
+#, c-format
+msgid "Please select an existing VPN connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:64
+#, fuzzy, c-format
+msgid "Configure a new connection..."
+msgstr "Konneksie word getoets..."
+
+#: ../lib/network/drakvpn.pm:66
+#, fuzzy, c-format
+msgid "New name"
+msgstr "Regte naam"
+
+#: ../lib/network/drakvpn.pm:70 ../lib/network/drakvpn.pm:100
+#: ../lib/network/ndiswrapper.pm:92 ../lib/network/netconnect.pm:471
+#: ../tools/drakconnect:978 ../tools/draknetprofile:129
+#: ../tools/draknetprofile:131 ../tools/drakproxy:36
+#, c-format
+msgid "Warning"
+msgstr "Waarskuwing"
+
+#: ../lib/network/drakvpn.pm:70
+#, c-format
+msgid "You must select an existing connection or enter a new name."
+msgstr ""
+
+#
+#: ../lib/network/drakvpn.pm:81
+#, fuzzy, c-format
+msgid "Please enter the required key(s)"
+msgstr "Voorsien asseblief die WebDAV-bediener se URL"
+
+#: ../lib/network/drakvpn.pm:86
+#, fuzzy, c-format
+msgid "Please enter the settings of your VPN connection"
+msgstr "Kon nie die spieëlwebplek %s kontak nie"
+
+#: ../lib/network/drakvpn.pm:94 ../lib/network/netconnect.pm:291
+#, c-format
+msgid "Do you want to start the connection now?"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:100
+#, fuzzy, c-format
+msgid "Connection failed."
+msgstr "Konneksienaam"
+
+#: ../lib/network/drakvpn.pm:108
+#, c-format
+msgid ""
+"The VPN connection is now configured.\n"
+"\n"
+"This VPN connection can be automatically started together with a network "
+"connection.\n"
+"It can be done by reconfiguring the network connection and selecting this "
+"VPN connection.\n"
+msgstr ""
+
+#: ../lib/network/ifw.pm:129
+#, fuzzy, c-format
+msgid "Port scanning"
+msgstr "Geen deling"
+
+#: ../lib/network/ifw.pm:130
+#, fuzzy, c-format
+msgid "Service attack"
+msgstr "Diens Bestuurder"
+
+#: ../lib/network/ifw.pm:131
+#, fuzzy, c-format
+msgid "Password cracking"
+msgstr "Wagwoord (weer)"
+
+#: ../lib/network/ifw.pm:132
+#, c-format
+msgid "\"%s\" attack"
+msgstr ""
+
+#: ../lib/network/ifw.pm:134
+#, c-format
+msgid "A port scanning attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:135
+#, c-format
+msgid "The %s service has been attacked by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:136
+#, c-format
+msgid "A password cracking attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:137
+#, c-format
+msgid "A \"%s\" attack has been attempted by %s"
+msgstr ""
+
+#: ../lib/network/ifw.pm:146
+#, c-format
+msgid ""
+"The \"%s\" application is trying to make a service (%s) available to the "
+"network."
+msgstr ""
+
+#. -PO: this should be kept lowercase since the expression is meant to be used between brackets
+#: ../lib/network/ifw.pm:150
+#, fuzzy, c-format
+msgid "port %d"
+msgstr "Verslag"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/netconnect.pm:603
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#, c-format
+msgid "Manual"
+msgstr "Selfdoen"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/modem.pm:63
+#: ../lib/network/modem.pm:76 ../lib/network/modem.pm:81
+#: ../lib/network/modem.pm:110 ../lib/network/netconnect.pm:598
+#: ../lib/network/netconnect.pm:603 ../lib/network/netconnect.pm:615
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#: ../lib/network/netconnect.pm:638
+#, c-format
+msgid "Automatic"
+msgstr "Outomaties"
+
+#: ../lib/network/ndiswrapper.pm:27
+#, c-format
+msgid "No device supporting the %s ndiswrapper driver is present!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:33
+#, c-format
+msgid "Please select the Windows driver (.inf file)"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:42
+#, c-format
+msgid "Unable to install the %s ndiswrapper driver!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:86
+#, c-format
+msgid "Unable to load the ndiswrapper module!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:92
+#, c-format
+msgid ""
+"The selected device has already been configured with the %s driver.\n"
+"Do you really want to use a ndiswrapper driver?"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:102
+#, c-format
+msgid "Unable to find the ndiswrapper interface!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:115
+#, fuzzy, c-format
+msgid "Choose an ndiswrapper driver"
+msgstr "Kies 'n eiemagtige drywer"
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Use the ndiswrapper driver %s"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:118
+#, fuzzy, c-format
+msgid "Install a new driver"
+msgstr "Installeer stelsel"
+
+#: ../lib/network/ndiswrapper.pm:129
+#, c-format
+msgid "Select a device:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:37
+#, c-format
+msgid "United States"
+msgstr "Verenigde State"
+
+#: ../lib/network/netconnect.pm:60 ../lib/network/netconnect.pm:493
+#: ../lib/network/netconnect.pm:507
+#, fuzzy, c-format
+msgid "Manual choice"
+msgstr "selfdoen"
+
+#: ../lib/network/netconnect.pm:60
+#, c-format
+msgid "Internal ISDN card"
+msgstr "Interne ISDN-kaart"
+
+#: ../lib/network/netconnect.pm:65
+#, c-format
+msgid "Protocol for the rest of the world"
+msgstr "Protokol vir die res van die wêreld"
+
+#: ../lib/network/netconnect.pm:67 ../tools/drakconnect:564
+#, c-format
+msgid "European protocol (EDSS1)"
+msgstr "Europese protokol (EDSS1)"
+
+#: ../lib/network/netconnect.pm:68 ../tools/drakconnect:565
+#, c-format
+msgid ""
+"Protocol for the rest of the world\n"
+"No D-Channel (leased lines)"
+msgstr ""
+"Protokol vir die res vd wêreld \n"
+"geen D-Kanaal nie (bruikhuurlyne)"
+
+#: ../lib/network/netconnect.pm:118 ../tools/drakconnect:61
+#, c-format
+msgid "Network & Internet Configuration"
+msgstr "Netwerk- & Internet-konfigurasie"
+
+#: ../lib/network/netconnect.pm:123
+#, c-format
+msgid "Choose the connection you want to configure"
+msgstr "Kies die konneksie wat u wil konfigureer"
+
+#: ../lib/network/netconnect.pm:145 ../lib/network/netconnect.pm:348
+#: ../lib/network/netconnect.pm:788
+#, c-format
+msgid "Select the network interface to configure:"
+msgstr "Kies die netwerkkoppelvlak om op te stel:"
+
+#: ../lib/network/netconnect.pm:164
+#, c-format
+msgid "No device can be found for this connection type."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:173
+#, fuzzy, c-format
+msgid "Hardware Configuration"
+msgstr "Netwerkkonfigurasie"
+
+#: ../lib/network/netconnect.pm:177 ../tools/drakroam:90
+#, fuzzy, c-format
+msgid "Configuring device..."
+msgstr "Konfigurasie in aabou..."
+
+#: ../lib/network/netconnect.pm:194
+#, c-format
+msgid "Please select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:209 ../tools/drakroam:170
+#, fuzzy, c-format
+msgid "Scanning for networks..."
+msgstr "Deursoek die netwerk..."
+
+#: ../lib/network/netconnect.pm:212
+#, c-format
+msgid "Please select your network:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:241
+#, c-format
+msgid ""
+"Please select your connection protocol.\n"
+"If you do not know it, keep the preselected protocol."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:285 ../lib/network/netconnect.pm:655
+#, c-format
+msgid "Connection control"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Connection Configuration"
+msgstr "Konneksiekonfigurasie"
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Please fill or check the field below"
+msgstr "Vul asb. die velde hieronder in"
+
+#: ../lib/network/netconnect.pm:318
+#, c-format
+msgid "Your personal phone number"
+msgstr "U persoonlike telefoonnommer"
+
+#: ../lib/network/netconnect.pm:319
+#, c-format
+msgid "Provider name (ex provider.net)"
+msgstr "Voorsienernaam (bv voorsiener.co.za)"
+
+#: ../lib/network/netconnect.pm:320 ../tools/drakconnect:494
+#, c-format
+msgid "Provider phone number"
+msgstr "Verskaffer se foonnommer"
+
+#: ../lib/network/netconnect.pm:321
+#, c-format
+msgid "Provider DNS 1 (optional)"
+msgstr "Voorsiener DNS 1 (opsioneel)"
+
+#: ../lib/network/netconnect.pm:322
+#, c-format
+msgid "Provider DNS 2 (optional)"
+msgstr "Voorsiener DNS 2 (opsioneel)"
+
+#: ../lib/network/netconnect.pm:323 ../tools/drakconnect:446
+#, c-format
+msgid "Dialing mode"
+msgstr "Belmetode"
+
+#: ../lib/network/netconnect.pm:324 ../tools/drakconnect:451
+#: ../tools/drakconnect:518
+#, c-format
+msgid "Connection speed"
+msgstr "Konneksiespoed"
+
+#: ../lib/network/netconnect.pm:325 ../tools/drakconnect:456
+#, c-format
+msgid "Connection timeout (in sec)"
+msgstr "Konneksie tydlimiet (in sekondes)"
+
+#: ../lib/network/netconnect.pm:328 ../tools/drakconnect:555
+#, c-format
+msgid "Card IRQ"
+msgstr "Kaart IRQ"
+
+#: ../lib/network/netconnect.pm:329 ../tools/drakconnect:556
+#, c-format
+msgid "Card mem (DMA)"
+msgstr "Kaartgeheue (DMA)"
+
+#: ../lib/network/netconnect.pm:330 ../tools/drakconnect:557
+#, c-format
+msgid "Card IO"
+msgstr "Kaart I/O"
+
+#: ../lib/network/netconnect.pm:331 ../tools/drakconnect:558
+#, c-format
+msgid "Card IO_0"
+msgstr "Kaart IO_0"
+
+#: ../lib/network/netconnect.pm:332
+#, c-format
+msgid "Card IO_1"
+msgstr "Kaart IO_1"
+
+#: ../lib/network/netconnect.pm:350 ../lib/network/netconnect.pm:385
+#: ../tools/drakconnect:719 ../tools/drakgw:123
+#, c-format
+msgid "Net Device"
+msgstr "Netwerk Toestel"
+
+#: ../lib/network/netconnect.pm:351 ../lib/network/netconnect.pm:356
+#, c-format
+msgid "External ISDN modem"
+msgstr "Eksterne ISDN modem"
+
+#: ../lib/network/netconnect.pm:384
+#, c-format
+msgid "Select a device!"
+msgstr "Kies 'n toestel !"
+
+#: ../lib/network/netconnect.pm:393 ../lib/network/netconnect.pm:403
+#: ../lib/network/netconnect.pm:413 ../lib/network/netconnect.pm:446
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid "ISDN Configuration"
+msgstr "ISDN Konfigurasie"
+
+#: ../lib/network/netconnect.pm:394
+#, c-format
+msgid "What kind of card do you have?"
+msgstr "Oor watter tipe kaart beskik u?"
+
+#: ../lib/network/netconnect.pm:404
+#, c-format
+msgid ""
+"\n"
+"If you have an ISA card, the values on the next screen should be right.\n"
+"\n"
+"If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your "
+"card.\n"
+msgstr ""
+"\n"
+"Indien u 'n ISA-kaart het, behoort die waardes op die volgende skerm\n"
+"reg te wees.\n"
+"\n"
+"Indien u 'n PCMCIA-kaart het, moet u die IRQ en I/O van u kaart weet.\n"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Continue"
+msgstr "Gaan voort"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Abort"
+msgstr "Staak"
+
+#: ../lib/network/netconnect.pm:414
+#, c-format
+msgid "Which of the following is your ISDN card?"
+msgstr "Wat is u ISDN-kaart?"
+
+#: ../lib/network/netconnect.pm:432
+#, c-format
+msgid ""
+"A CAPI driver is available for this modem. This CAPI driver can offer more "
+"capabilities than the free driver (like sending faxes). Which driver do you "
+"want to use?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:434 ../tools/drakconnect:113
+#, c-format
+msgid "Driver"
+msgstr "Drywer"
+
+#: ../lib/network/netconnect.pm:446
+#, c-format
+msgid "Which protocol do you want to use?"
+msgstr "Watter protokol verlang u?"
+
+#: ../lib/network/netconnect.pm:448 ../tools/drakconnect:113
+#: ../tools/drakconnect:305 ../tools/drakconnect:563 ../tools/drakids:252
+#: ../tools/drakvpn-old:839
+#, c-format
+msgid "Protocol"
+msgstr "Protokol"
+
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid ""
+"Select your provider.\n"
+"If it is not listed, choose Unlisted."
+msgstr ""
+"Kies u internetdiensvoorsiener.\n"
+"Indien nie in die lys nie kies Ongelys"
+
+#: ../lib/network/netconnect.pm:462 ../lib/network/netconnect.pm:558
+#, c-format
+msgid "Provider:"
+msgstr "Verskaffer:"
+
+#: ../lib/network/netconnect.pm:471
+#, c-format
+msgid ""
+"Your modem is not supported by the system.\n"
+"Take a look at http://www.linmodems.org"
+msgstr ""
+"U modem word nie ten volle deur Linux ondersteun nie.\n"
+"Probeer http://www.linmodems.org vir meer inligting."
+
+#: ../lib/network/netconnect.pm:490
+#, c-format
+msgid "Select the modem to configure:"
+msgstr "Kies die modem om op te stel:"
+
+#: ../lib/network/netconnect.pm:492
+#, c-format
+msgid "Modem"
+msgstr "Modem"
+
+#: ../lib/network/netconnect.pm:527
+#, c-format
+msgid "Please choose which serial port your modem is connected to."
+msgstr "Op watter seriepoort is u modem gekoppel?"
+
+#: ../lib/network/netconnect.pm:556
+#, c-format
+msgid "Select your provider:"
+msgstr "Kies u verskaffer:"
+
+#: ../lib/network/netconnect.pm:580
+#, c-format
+msgid "Dialup: account options"
+msgstr "Opbelopsies"
+
+#: ../lib/network/netconnect.pm:583
+#, c-format
+msgid "Connection name"
+msgstr "Konneksienaam"
+
+#: ../lib/network/netconnect.pm:584
+#, c-format
+msgid "Phone number"
+msgstr "Telefoonnommer"
+
+#: ../lib/network/netconnect.pm:585
+#, c-format
+msgid "Login ID"
+msgstr "Aantekenkode"
+
+#: ../lib/network/netconnect.pm:586 ../lib/network/vpn/vpnc.pm:56
+#: ../tools/drakinvictus:110
+#, c-format
+msgid "Password"
+msgstr "Wagwoord"
+
+#: ../lib/network/netconnect.pm:600 ../lib/network/netconnect.pm:633
+#, c-format
+msgid "Dialup: IP parameters"
+msgstr "Opbel: IP-Parameters"
+
+#: ../lib/network/netconnect.pm:603
+#, c-format
+msgid "IP parameters"
+msgstr "IP-Parameters"
+
+#: ../lib/network/netconnect.pm:605
+#, c-format
+msgid "Subnet mask"
+msgstr "Subnet-masker"
+
+#: ../lib/network/netconnect.pm:617
+#, c-format
+msgid "Dialup: DNS parameters"
+msgstr "Opbel: DNS-inligting"
+
+#: ../lib/network/netconnect.pm:620
+#, c-format
+msgid "DNS"
+msgstr "DNS"
+
+#: ../lib/network/netconnect.pm:621
+#, c-format
+msgid "Domain name"
+msgstr "Domeinnaam"
+
+#: ../lib/network/netconnect.pm:622 ../tools/drakconnect:996
+#, c-format
+msgid "First DNS Server (optional)"
+msgstr "Eerste DNS-bediener (opsioneel)"
+
+#: ../lib/network/netconnect.pm:623 ../tools/drakconnect:997
+#, c-format
+msgid "Second DNS Server (optional)"
+msgstr "Tweede DNS-bediener (opsioneel)"
+
+#: ../lib/network/netconnect.pm:624
+#, c-format
+msgid "Set hostname from IP"
+msgstr "Verkry rekenaarnaam vanaf IP"
+
+#: ../lib/network/netconnect.pm:637
+#, c-format
+msgid "Gateway IP address"
+msgstr "Deurgang se IP-adres"
+
+#: ../lib/network/netconnect.pm:670
+#, fuzzy, c-format
+msgid "Automatically at boot"
+msgstr "Begin tydens herlaaityd"
+
+#: ../lib/network/netconnect.pm:672
+#, c-format
+msgid "By using Net Applet in the system tray"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:674
+#, c-format
+msgid "Manually (the interface would still be activated at boot)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:683
+#, fuzzy, c-format
+msgid "How do you want to dial this connection?"
+msgstr "Wil u die konneksie met herlaaityd aanskakel?"
+
+#: ../lib/network/netconnect.pm:696
+#, c-format
+msgid "Do you want to try to connect to the Internet now?"
+msgstr "Wil u nou aan die internet konnekteer?"
+
+#: ../lib/network/netconnect.pm:704 ../tools/drakconnect:1027
+#, c-format
+msgid "Testing your connection..."
+msgstr "Konneksie word getoets..."
+
+#: ../lib/network/netconnect.pm:723
+#, c-format
+msgid "The system is now connected to the Internet."
+msgstr "Die stelsel is nou aan die internet gekonnekteer."
+
+#: ../lib/network/netconnect.pm:724
+#, c-format
+msgid "For security reasons, it will be disconnected now."
+msgstr "Vir sekuriteitsreDES, word u nou gediskonnekteer."
+
+#: ../lib/network/netconnect.pm:725
+#, c-format
+msgid ""
+"The system does not seem to be connected to the Internet.\n"
+"Try to reconfigure your connection."
+msgstr ""
+"Dit blyk dat u rekenaar geen toegang tot die Internet het nie.\n"
+"Probeer weer u konneksie konfigureer."
+
+#: ../lib/network/netconnect.pm:740
+#, c-format
+msgid ""
+"Congratulations, the network and Internet configuration is finished.\n"
+"\n"
+msgstr ""
+"Daarsy dude / duDES, die netwerk en Internetkonfigurasie is voltooi.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:743
+#, c-format
+msgid ""
+"After this is done, we recommend that you restart your X environment to "
+"avoid any hostname-related problems."
+msgstr ""
+"Nadat dit klaar is, sal dit beter wees om u X-omgewing te herlaai om die "
+"rekenaarnaamverandering-probleem te voorkom."
+
+#: ../lib/network/netconnect.pm:744
+#, c-format
+msgid ""
+"Problems occurred during configuration.\n"
+"Test your connection via net_monitor or mcc. If your connection does not "
+"work, you might want to relaunch the configuration."
+msgstr ""
+"Probleme is tydens die konfigurasie ondervind.\n"
+"Toets u konneksie deur 'net_monitor' of 'mcc'. Indien u steeds probleme "
+"ondervind, konfigureer weer van voor af."
+
+#: ../lib/network/netconnect.pm:756
+#, c-format
+msgid "Sagem USB modem"
+msgstr "Sagem USB-modem"
+
+#: ../lib/network/netconnect.pm:757 ../lib/network/netconnect.pm:758
+#, c-format
+msgid "Bewan modem"
+msgstr "Bewan PCI-modem"
+
+#: ../lib/network/netconnect.pm:759
+#, c-format
+msgid "ECI Hi-Focus modem"
+msgstr "ECI Hi-Focus modem"
+
+#: ../lib/network/netconnect.pm:760
+#, c-format
+msgid "LAN connection"
+msgstr "LAN-konneksie"
+
+#: ../lib/network/netconnect.pm:761 ../tools/drakroam:29
+#, c-format
+msgid "Wireless connection"
+msgstr "Draadlose konneksie"
+
+#: ../lib/network/netconnect.pm:762
+#, c-format
+msgid "ADSL connection"
+msgstr "ADSL-konneksie"
+
+#: ../lib/network/netconnect.pm:763
+#, c-format
+msgid "Cable connection"
+msgstr "Kabelkonneksie"
+
+#: ../lib/network/netconnect.pm:764
+#, c-format
+msgid "ISDN connection"
+msgstr "ISDN konneksie"
+
+#: ../lib/network/netconnect.pm:765
+#, c-format
+msgid "Modem connection"
+msgstr "Modemkonfigurasie"
+
+#: ../lib/network/netconnect.pm:766
+#, c-format
+msgid "DVB connection"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:768
+#, c-format
+msgid "(detected on port %s)"
+msgstr "(op poort %s bespeur)"
+
+#. -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected %s)"
+msgstr "(%s bespeur)"
+
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected)"
+msgstr "(bespeur)"
+
+#: ../lib/network/netconnect.pm:771
+#, c-format
+msgid "Network Configuration"
+msgstr "Netwerkkonfigurasie"
+
+#: ../lib/network/netconnect.pm:772
+#, c-format
+msgid "Zeroconf hostname resolution"
+msgstr "Zeroconf rekenaarnaam resolusie"
+
+#: ../lib/network/netconnect.pm:773
+#, c-format
+msgid ""
+"If desired, enter a Zeroconf hostname.\n"
+"This is the name your machine will use to advertise any of\n"
+"its shared resources that are not managed by the network.\n"
+"It is not necessary on most networks."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:777
+#, c-format
+msgid "Zeroconf Host name"
+msgstr "Zeroconf Rekenaarnaam"
+
+#: ../lib/network/netconnect.pm:778
+#, c-format
+msgid "Zeroconf host name must not contain a ."
+msgstr "'Zeroconf'-naam mag nie 'n '.' bevat nie"
+
+#: ../lib/network/netconnect.pm:779
+#, c-format
+msgid ""
+"Because you are doing a network installation, your network is already "
+"configured.\n"
+"Click on Ok to keep your configuration, or cancel to reconfigure your "
+"Internet & Network connection.\n"
+msgstr ""
+"Omdat u netwerk installasie doen, is u netwerk aslreeds opgestel.\n"
+"Kliek op OK om hierdee konfigurasie te behou, of op Kanselleer om u "
+"Internet\n"
+"& Netwerkkonneksie te herkonfigureer.\n"
+
+#: ../lib/network/netconnect.pm:782
+#, c-format
+msgid "The network needs to be restarted. Do you want to restart it?"
+msgstr "Die netwerk moet herbegin word. Wil u dit nou doen?"
+
+#: ../lib/network/netconnect.pm:783
+#, c-format
+msgid ""
+"A problem occurred while restarting the network: \n"
+"\n"
+"%s"
+msgstr ""
+"Daar was 'n probleem met die herlaai van die netwerk.\n"
+"\n"
+"%s"
+
+#: ../lib/network/netconnect.pm:784
+#, c-format
+msgid ""
+"We are now going to configure the %s connection.\n"
+"\n"
+"\n"
+"Press \"%s\" to continue."
+msgstr ""
+"Ons gaan nou die %s konneksie konfigureer.\n"
+"\n"
+"\n"
+"Druk \"%s\" om voort te gaan."
+
+#: ../lib/network/netconnect.pm:785
+#, c-format
+msgid "Configuration is complete, do you want to apply settings?"
+msgstr "Konfigurasie is voltooi, wil u hierdie verstellings toepas?"
+
+#: ../lib/network/netconnect.pm:786
+#, c-format
+msgid ""
+"You have configured multiple ways to connect to the Internet.\n"
+"Choose the one you want to use.\n"
+"\n"
+msgstr ""
+"U het meer as een internetkonneksiemetode opgstel.\n"
+"Kies die een wat u verlang.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:787
+#, c-format
+msgid "Internet connection"
+msgstr "Internetkonneksie"
+
+#: ../lib/network/netconnect.pm:789
+#, c-format
+msgid "Configuring network device %s (driver %s)"
+msgstr "Konfigureer netwerktoestel %s (drywer %s)"
+
+#: ../lib/network/netconnect.pm:790
+#, c-format
+msgid ""
+"The following protocols can be used to configure a LAN connection. Please "
+"choose the one you want to use."
+msgstr ""
+"Die volgende protokolle kan gebruik word vir 'n LAN konneksie. Kies "
+"asseblief die een om te gebruik."
+
+#: ../lib/network/netconnect.pm:791
+#, c-format
+msgid ""
+"Please enter your host name.\n"
+"Your host name should be a fully-qualified host name,\n"
+"such as ``mybox.mylab.myco.com''.\n"
+"You may also enter the IP address of the gateway if you have one."
+msgstr ""
+"Tik asb die rekenaarnaam in.\n"
+"Dit moet 'n volle gekwalifiseerde naam wees,\n"
+"bv. ``myne.mywerk.co.za''.\n"
+"U mag ook die netwerkhek byvoeg indien daar een is"
+
+#: ../lib/network/netconnect.pm:796
+#, c-format
+msgid "Last but not least you can also type in your DNS server IP addresses."
+msgstr ""
+"Laaste, maar nie die minste nie, kan u ook die DNS-bediener(s) se IP(s) "
+"voorsien."
+
+#: ../lib/network/netconnect.pm:797
+#, c-format
+msgid "DNS server address should be in format 1.2.3.4"
+msgstr "DNS-adres moet in 1.2.3.4. formaat wees"
+
+#: ../lib/network/netconnect.pm:798 ../tools/drakconnect:689
+#, c-format
+msgid "Gateway address should be in format 1.2.3.4"
+msgstr "Deurgang IP-adres moet in 1.2.3.4. formaat wees"
+
+#: ../lib/network/netconnect.pm:799
+#, c-format
+msgid "Gateway device"
+msgstr "Deurgangtoestel"
+
+#: ../lib/network/netconnect.pm:813
+#, c-format
+msgid ""
+"An unexpected error has happened:\n"
+"%s"
+msgstr ""
+"'n Onvoorsiene fout het gebeur:\n"
+"%s"
+
+#: ../lib/network/network.pm:429
+#, c-format
+msgid "Proxies configuration"
+msgstr "Instaanbediener-konfigurasie"
+
+#: ../lib/network/network.pm:430
+#, c-format
+msgid ""
+"Here you can set up your proxies configuration (eg: http://"
+"my_caching_server:8080)"
+msgstr ""
+
+#: ../lib/network/network.pm:431
+#, c-format
+msgid "HTTP proxy"
+msgstr "HTTP instaanbediener"
+
+#: ../lib/network/network.pm:432
+#, c-format
+msgid "Use HTTP proxy for HTTPS connections"
+msgstr ""
+
+#: ../lib/network/network.pm:433
+#, c-format
+msgid "HTTPS proxy"
+msgstr ""
+
+#: ../lib/network/network.pm:434
+#, c-format
+msgid "FTP proxy"
+msgstr "FTP-instaanbediener"
+
+#: ../lib/network/network.pm:435
+#, fuzzy, c-format
+msgid "No proxy for (comma separated list):"
+msgstr "%d komma-afgeskeie teks"
+
+#: ../lib/network/network.pm:440
+#, c-format
+msgid "Proxy should be http://..."
+msgstr "Instaanbediener moet begin met http://..."
+
+#: ../lib/network/network.pm:441
+#, fuzzy, c-format
+msgid "Proxy should be http://... or https://..."
+msgstr "Instaanbediener moet begin met http://..."
+
+#: ../lib/network/network.pm:442
+#, c-format
+msgid "URL should begin with 'ftp:' or 'http:'"
+msgstr "URL moet begin met 'ftp' of 'http':"
+
+#: ../lib/network/shorewall.pm:61
+#, c-format
+msgid ""
+"Please select the interfaces that will be protected by the firewall.\n"
+"\n"
+"All interfaces directly connected to Internet should be selected,\n"
+"while interfaces connected to a local network may be unselected.\n"
+"\n"
+"Which interfaces should be protected?\n"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:136
+#, c-format
+msgid "Keep custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:137
+#, c-format
+msgid "Drop custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:142
+#, c-format
+msgid ""
+"Your firewall configuration has been manually edited and contains\n"
+"rules that may conflict with the configuration that has just been set up.\n"
+"What do you want to do?"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:134
+#, c-format
+msgid "Some components (%s) are required but aren't available for %s hardware."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:135
+#, c-format
+msgid "Some packages (%s) are required but aren't available."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:137
+#, c-format
+msgid ""
+"These packages can be found in Mandriva Club or in Mandriva commercial "
+"releases."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:138
+#, c-format
+msgid "The following component is missing: %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:140
+#, c-format
+msgid ""
+"The required files can also be installed from this URL:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:177 ../lib/network/thirdparty.pm:182
+#, c-format
+msgid "Use a floppy"
+msgstr "Gebruik 'n disket"
+
+#: ../lib/network/thirdparty.pm:178 ../lib/network/thirdparty.pm:185
+#, c-format
+msgid "Use my Windows partition"
+msgstr "Gebruik my Windows-partisie"
+
+#: ../lib/network/thirdparty.pm:179
+#, c-format
+msgid "Select file"
+msgstr "Kies lêer"
+
+#: ../lib/network/thirdparty.pm:190
+#, c-format
+msgid "Please select the firmware file (for example: %s)"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:214
+#, fuzzy, c-format
+msgid "Unable to find \"%s\" on your Windows system!"
+msgstr "Verwyder lettertipes vanaf u rekenaar"
+
+#: ../lib/network/thirdparty.pm:216
+#, c-format
+msgid "No Windows system has been detected!"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:226
+#, c-format
+msgid "Insert floppy"
+msgstr "Plaas skyf in aandrywer"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid ""
+"Insert a FAT formatted floppy in drive %s with %s in root directory and "
+"press %s"
+msgstr ""
+"Plaas 'n FAT-geformatteerde skyf in aandrywer %s met %s in die 'root' "
+"lêergids en druk %s"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid "Next"
+msgstr "Volgende"
+
+#: ../lib/network/thirdparty.pm:237
+#, c-format
+msgid "Floppy access error, unable to mount device %s"
+msgstr "Disket-toegangsfout, kan nie toestel %s heg nie"
+
+#: ../lib/network/thirdparty.pm:319
+#, c-format
+msgid "Looking for required software and drivers..."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:330
+#, fuzzy, c-format
+msgid "Please wait, running device configuration commands..."
+msgstr "Net 'n oomblik, spoor en konfigureer us toestelle"
+
+#: ../lib/network/vpn/openvpn.pm:107
+#, c-format
+msgid "X509 Public Key Infrastructure"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:108
+#, c-format
+msgid "Static Key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:115
+#, c-format
+msgid "Type"
+msgstr "Tipe"
+
+#. -PO: please don't translate the CA acronym
+#: ../lib/network/vpn/openvpn.pm:142
+#, c-format
+msgid "Certificate Authority (CA)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:148
+#, c-format
+msgid "Certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:154
+#, fuzzy, c-format
+msgid "Key"
+msgstr "Kenia"
+
+#
+#: ../lib/network/vpn/openvpn.pm:160
+#, fuzzy, c-format
+msgid "TLS control channel key"
+msgstr "Linker 'Control'-sleutel"
+
+#: ../lib/network/vpn/openvpn.pm:167
+#, c-format
+msgid "Key direction"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:175
+#, fuzzy, c-format
+msgid "Authenticate using username and password"
+msgstr "Kan nie met gebruikernaam %s inteken nie (werkeerde wagwoord?)"
+
+#: ../lib/network/vpn/openvpn.pm:181
+#, c-format
+msgid "Check server certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:187
+#, fuzzy, c-format
+msgid "Cipher algorithm"
+msgstr "Enkripsie-algoritme"
+
+#: ../lib/network/vpn/openvpn.pm:191
+#, c-format
+msgid "Default"
+msgstr "Verstek"
+
+#: ../lib/network/vpn/openvpn.pm:195
+#, c-format
+msgid "Size of cipher key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:206
+#, fuzzy, c-format
+msgid "Get from server"
+msgstr "Telnet-bediener"
+
+#: ../lib/network/vpn/openvpn.pm:216
+#, fuzzy, c-format
+msgid "Gateway port"
+msgstr "Portaal"
+
+#
+#: ../lib/network/vpn/openvpn.pm:227 ../tools/drakgw:176
+#, fuzzy, c-format
+msgid "Local IP address"
+msgstr "IP-adres"
+
+#
+#: ../lib/network/vpn/openvpn.pm:232
+#, fuzzy, c-format
+msgid "Remote IP address"
+msgstr "Deurgang se IP-adres"
+
+#: ../lib/network/vpn/openvpn.pm:237
+#, fuzzy, c-format
+msgid "Use TCP protocol"
+msgstr "Protokol"
+
+#: ../lib/network/vpn/openvpn.pm:243
+#, c-format
+msgid "Virtual network device type"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:250
+#, c-format
+msgid "Virtual network device number (optional)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:365
+#, c-format
+msgid "Starting connection.."
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:380
+#, c-format
+msgid "Please insert your token"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:9
+#, c-format
+msgid "Cisco VPN Concentrator"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:43
+#, fuzzy, c-format
+msgid "Group name"
+msgstr "Groep ID"
+
+#: ../lib/network/vpn/vpnc.pm:47
+#, c-format
+msgid "Group secret"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:52
+#, c-format
+msgid "Username"
+msgstr "Gebruikernaam"
+
+#: ../lib/network/vpn/vpnc.pm:61
+#, c-format
+msgid "Use Cisco-UDP encapsulation"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:67
+#, c-format
+msgid "Use specific UDP port"
+msgstr ""
+
+#: ../tools/drakconnect:81
+#, c-format
+msgid "Network configuration (%d adapters)"
+msgstr "Netwerkkonfigurasie (%d toestelle)"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Gateway:"
+msgstr "Portaal:"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Interface:"
+msgstr "Koppelvlak:"
+
+#: ../tools/drakconnect:97 ../tools/net_monitor:119
+#, c-format
+msgid "Wait please"
+msgstr "Net 'n oomblik"
+
+#: ../tools/drakconnect:113 ../tools/drakinvictus:105
+#, c-format
+msgid "Interface"
+msgstr "Koppelvlak"
+
+#: ../tools/drakconnect:113
+#, c-format
+msgid "State"
+msgstr "Toestand"
+
+#: ../tools/drakconnect:130
+#, c-format
+msgid "Hostname: "
+msgstr "Rekenaarnaam: "
+
+#: ../tools/drakconnect:132
+#, c-format
+msgid "Configure hostname..."
+msgstr "Stel rekenaarnaam op..."
+
+#: ../tools/drakconnect:146 ../tools/drakconnect:850
+#, c-format
+msgid "LAN configuration"
+msgstr "LAN-konfigurasie"
+
+#: ../tools/drakconnect:151
+#, c-format
+msgid "Configure Local Area Network..."
+msgstr "Stel plaaslike netwerk op..."
+
+#: ../tools/drakconnect:157 ../tools/drakconnect:240 ../tools/draknfs:181
+#, c-format
+msgid "Help"
+msgstr "Hulp"
+
+#: ../tools/drakconnect:159 ../tools/drakconnect:241 ../tools/drakconnect:245
+#: ../tools/drakinvictus:140
+#, c-format
+msgid "Apply"
+msgstr "Pas toe"
+
+#: ../tools/drakconnect:161 ../tools/drakconnect:942 ../tools/drakconnect:1033
+#: ../tools/draknetprofile:106 ../tools/net_monitor:341
+#, c-format
+msgid "Cancel"
+msgstr "Kanselleer"
+
+#: ../tools/drakconnect:162 ../tools/drakconnect:857 ../tools/drakconnect:944
+#: ../tools/drakconnect:1034 ../tools/draknetprofile:108
+#: ../tools/net_monitor:342
+#, c-format
+msgid "Ok"
+msgstr "OK"
+
+#: ../tools/drakconnect:164 ../tools/drakconnect:636 ../tools/drakgw:359
+#: ../tools/drakroam:251 ../tools/drakroam:289 ../tools/draksambashare:208
+#, c-format
+msgid "Please wait"
+msgstr "Wag asb."
+
+#: ../tools/drakconnect:166 ../tools/drakconnect:638
+#, c-format
+msgid "Please Wait... Applying the configuration"
+msgstr "Wag asb... Konfigurasie word toegpas"
+
+#: ../tools/drakconnect:192
+#, fuzzy, c-format
+msgid "Manage connections"
+msgstr "Kabelkonneksie"
+
+#: ../tools/drakconnect:219 ../tools/drakroam:302
+#, c-format
+msgid "Device: "
+msgstr "Toestel: "
+
+#: ../tools/drakconnect:302
+#, fuzzy, c-format
+msgid "IP configuration"
+msgstr "CUPS-konfigurasie"
+
+#: ../tools/drakconnect:337
+#, c-format
+msgid "DNS servers"
+msgstr "DNS-bedieners"
+
+#: ../tools/drakconnect:343
+#, c-format
+msgid "Search Domain"
+msgstr "Deursoek Domein"
+
+#: ../tools/drakconnect:351 ../tools/drakvpn-old:837
+#, c-format
+msgid "none"
+msgstr "niks"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "static"
+msgstr "staties"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "DHCP"
+msgstr ""
+
+#: ../tools/drakconnect:434
+#, c-format
+msgid "Start at boot"
+msgstr "Begin tydens herlaaityd"
+
+#: ../tools/drakconnect:516
+#, c-format
+msgid "Flow control"
+msgstr "Beheer van Vloei"
+
+#: ../tools/drakconnect:517
+#, c-format
+msgid "Line termination"
+msgstr "Lyn-terminasie"
+
+#: ../tools/drakconnect:528
+#, c-format
+msgid "Modem timeout"
+msgstr "Tydsbeperking vi modem"
+
+#: ../tools/drakconnect:532
+#, c-format
+msgid "Use lock file"
+msgstr "Gebruik slot-lêer"
+
+#: ../tools/drakconnect:534
+#, c-format
+msgid "Wait for dialup tone before dialing"
+msgstr "Wag vir skakeltoon voor skakel"
+
+#: ../tools/drakconnect:537
+#, c-format
+msgid "Busy wait"
+msgstr "Wag as besig"
+
+#: ../tools/drakconnect:542
+#, c-format
+msgid "Modem sound"
+msgstr "Modem se klank"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Enable"
+msgstr "Aktiveer"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Disable"
+msgstr "Deaktiveer"
+
+#: ../tools/drakconnect:592
+#, c-format
+msgid "Vendor"
+msgstr "Vervaardiger"
+
+#: ../tools/drakconnect:593
+#, c-format
+msgid "Description"
+msgstr "Beskrywing"
+
+#: ../tools/drakconnect:594
+#, c-format
+msgid "Media class"
+msgstr "Media-klas"
+
+#: ../tools/drakconnect:595
+#, c-format
+msgid "Module name"
+msgstr "Modulenaam"
+
+#: ../tools/drakconnect:596
+#, c-format
+msgid "Mac Address"
+msgstr "MAC-adres:"
+
+#: ../tools/drakconnect:597
+#, c-format
+msgid "Bus"
+msgstr "Bus"
+
+#: ../tools/drakconnect:598
+#, c-format
+msgid "Location on the bus"
+msgstr "Ligging op die bus"
+
+#: ../tools/drakconnect:685 ../tools/drakconnect:766 ../tools/drakconnect:952
+#, c-format
+msgid "No IP"
+msgstr "Geen IP"
+
+#: ../tools/drakconnect:686 ../tools/drakconnect:767
+#, c-format
+msgid "No Mask"
+msgstr "Geen Masker"
+
+#: ../tools/drakconnect:705 ../tools/drakgw:307
+#, c-format
+msgid ""
+"No ethernet network adapter has been detected on your system. Please run the "
+"hardware configuration tool."
+msgstr ""
+"Geen ethernetkaart is op die stelsel gevind nie. Gebruik asb. die "
+"hardewarekonfigurasieprogram."
+
+#: ../tools/drakconnect:714
+#, c-format
+msgid "Remove a network interface"
+msgstr "Verwyder 'n netwerkkoppelvlak"
+
+#: ../tools/drakconnect:718
+#, c-format
+msgid "Select the network interface to remove:"
+msgstr "Kies die netwerkkoppelvlak om te verwyder"
+
+#: ../tools/drakconnect:750
+#, c-format
+msgid ""
+"An error occurred while deleting the \"%s\" network interface:\n"
+"\n"
+"%s"
+msgstr ""
+"Daar was 'n probleem met die verwydering van die \"%s\" koppelvlak:\n"
+"\n"
+"%s"
+
+#: ../tools/drakconnect:751
+#, c-format
+msgid ""
+"Congratulations, the \"%s\" network interface has been successfully deleted"
+msgstr "Geluk, die \"%s\" netwerkkoppelvlak is suksesvol verwyder"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "up"
+msgstr "op"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "down"
+msgstr "af"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Connected"
+msgstr "Gekonnekteer"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Not connected"
+msgstr "Nie gekonnekteer"
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Disconnect..."
+msgstr "Diskonnekteer..."
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Connect..."
+msgstr "Konnekteer..."
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Deactivate now"
+msgstr "Deaktiveer nou dadelik"
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Activate now"
+msgstr "Aktiveer nou dadelik"
+
+#: ../tools/drakconnect:854
+#, c-format
+msgid ""
+"You do not have any configured interface.\n"
+"Configure them first by clicking on 'Configure'"
+msgstr ""
+"U het geen koppelvlak wat opgestel is nie.\n"
+"Stel hulle eers op deur op deur op 'Konfigureer' te klik"
+
+#: ../tools/drakconnect:868
+#, c-format
+msgid "LAN Configuration"
+msgstr "LAN-konfigurasie"
+
+#: ../tools/drakconnect:880
+#, c-format
+msgid "Adapter %s: %s"
+msgstr "Toestel %s: %s"
+
+#: ../tools/drakconnect:889
+#, c-format
+msgid "Boot Protocol"
+msgstr "Herlaaiprotokol"
+
+#: ../tools/drakconnect:890
+#, c-format
+msgid "Started on boot"
+msgstr "Gelaai tydens herlaaityd"
+
+#: ../tools/drakconnect:926
+#, c-format
+msgid ""
+"This interface has not been configured yet.\n"
+"Run the \"Add an interface\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"Hierdie koppelvlak is nog nie opgestel nie.\n"
+"Loods die \"Add an interface\"-assistent vanuit die Mandriva Linux Control "
+"Center"
+
+#: ../tools/drakconnect:974
+#, c-format
+msgid "Internet connection configuration"
+msgstr "Internetkonneksie-konfigurasie"
+
+#: ../tools/drakconnect:980 ../tools/net_applet:68
+#, fuzzy, c-format
+msgid ""
+"You do not have any configured Internet connection.\n"
+"Run the \"%s\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"Hierdie koppelvlak is nog nie opgestel nie.\n"
+"Loods die \"%s\"-assistent vanuit die Mandriva Linux Control Center"
+
+#. -PO: here "Add Connection" should be translated the same was as in control-center
+#: ../tools/drakconnect:981 ../tools/net_applet:69
+#, fuzzy, c-format
+msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)"
+msgstr "Verwyder 'n netwerkkoppelvlak"
+
+#: ../tools/drakconnect:995
+#, c-format
+msgid "Host name (optional)"
+msgstr "Rekenaarnaam (opsioneel)"
+
+#: ../tools/drakconnect:998
+#, fuzzy, c-format
+msgid "Third DNS server (optional)"
+msgstr "Eerste DNS-bediener (opsioneel)"
+
+#: ../tools/drakconnect:1020
+#, c-format
+msgid "Internet Connection Configuration"
+msgstr "Internetkonneksiekonfigurasie"
+
+#: ../tools/drakconnect:1021
+#, c-format
+msgid "Internet access"
+msgstr "Internettoegang"
+
+#: ../tools/drakconnect:1023 ../tools/net_monitor:98
+#, c-format
+msgid "Connection type: "
+msgstr "Konneksietipe:"
+
+#: ../tools/drakconnect:1026
+#, c-format
+msgid "Status:"
+msgstr "Status:"
+
+#: ../tools/drakconnect:1031
+#, c-format
+msgid "Parameters"
+msgstr "Parameters"
+
+#: ../tools/drakgw:71
+#, c-format
+msgid "Internet Connection Sharing"
+msgstr "Internetkonneksiedeling"
+
+#: ../tools/drakgw:75
+#, c-format
+msgid ""
+"You are about to configure your computer to share its Internet connection.\n"
+"With that feature, other computers on your local network will be able to use "
+"this computer's Internet connection.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using drakconnect "
+"before going any further.\n"
+"\n"
+"Note: you need a dedicated Network Adapter to set up a Local Area Network "
+"(LAN)."
+msgstr ""
+"U gaan nou u rekenaar so opstel dat die die Internetkonneksie deel.\n"
+"As dit opgestel is, kan ander rekenaars op die LAN gebruik maak van hierdie\n"
+"rekenaar se konneksie na die Internet.\n"
+"\n"
+"Maak tog seker dat u alreeds die Netwerk/Internet toegang opgestel het deur\n"
+"'drakconnect' te gebruik, alvorens u verder gaan.\n"
+"\n"
+"Let Wel: U benodig 'n Netwerkkaart om die LAN gedeelte te maak werk."
+
+#: ../tools/drakgw:91
+#, c-format
+msgid ""
+"The setup of Internet Connection Sharing has already been done.\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"Die opstelling van die Internetkonnkesiedeling is alreeds gedoen.\n"
+"Dis tans aktief.\n"
+"\n"
+"Wat wil u doen?"
+
+#: ../tools/drakgw:95
+#, c-format
+msgid ""
+"The setup of Internet connection sharing has already been done.\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"Die opstelling van die Internetkonnkesiedeling is alreeds gedoen.\n"
+"Dis tans gedeaktiveer.\n"
+"\n"
+"Wat wil u doen?"
+
+#: ../tools/drakgw:101
+#, fuzzy, c-format
+msgid "Reconfigure"
+msgstr "herkonfigureer"
+
+#: ../tools/drakgw:122
+#, c-format
+msgid "Please select the network interface directly connected to the internet."
+msgstr ""
+
+#: ../tools/drakgw:141
+#, c-format
+msgid ""
+"There is only one configured network adapter on your system:\n"
+"\n"
+"%s\n"
+"\n"
+"I am about to setup your Local Area Network with that adapter."
+msgstr ""
+"Daar is net een konfigureerde netwerkkaart op u stelsel.\n"
+"\n"
+"%s\n"
+"\n"
+"Ek gaan nou u LAN met daardie kaart opstel."
+
+#: ../tools/drakgw:152
+#, c-format
+msgid ""
+"Please choose what network adapter will be connected to your Local Area "
+"Network."
+msgstr "Kies asseblief die netwerkkaart wat aan u LAN gekoppel is."
+
+#: ../tools/drakgw:173
+#, fuzzy, c-format
+msgid "Local Area Network settings"
+msgstr "Plaaslike Netwerkadres"
+
+#: ../tools/drakgw:178
+#, c-format
+msgid "The internal domain name"
+msgstr "Die interne domeinnaam"
+
+#: ../tools/drakgw:184
+#, c-format
+msgid "Potential LAN address conflict found in current config of %s!\n"
+msgstr "Moontlike LAN-adresbotsing in konfigurasie gevind%s!\n"
+
+#: ../tools/drakgw:200
+#, fuzzy, c-format
+msgid "Domain Name Server (DNS) configuration"
+msgstr "Terminal Server Konfigurasie"
+
+#: ../tools/drakgw:204
+#, c-format
+msgid "Use this gateway as domain name server"
+msgstr ""
+
+#: ../tools/drakgw:205
+#, c-format
+msgid "The DNS Server IP"
+msgstr "Die DNS-bediener se IP"
+
+#: ../tools/drakgw:232
+#, c-format
+msgid ""
+"DHCP Server Configuration.\n"
+"\n"
+"Here you can select different options for the DHCP server configuration.\n"
+"If you do not know the meaning of an option, simply leave it as it is."
+msgstr ""
+"Konfigureer die DHCP-bediener.\n"
+"\n"
+"Hier kan u die verskillende opsies kies vir die DHCP-bediener.\n"
+"Sou 'n opsie onbekend wees aan u, laat staan dit bloot net."
+
+#: ../tools/drakgw:239
+#, fuzzy, c-format
+msgid "Use automatic configuration (DHCP)"
+msgstr "Outomatiese herkonfigurasie"
+
+#: ../tools/drakgw:240
+#, c-format
+msgid "The DHCP start range"
+msgstr "Die DHCP-reeks se begin"
+
+#: ../tools/drakgw:241
+#, c-format
+msgid "The DHCP end range"
+msgstr "Die DHCP-reeks se einde"
+
+#: ../tools/drakgw:242
+#, c-format
+msgid "The default lease (in seconds)"
+msgstr "Die verstek huur tydperk (in sekondes)"
+
+#: ../tools/drakgw:243
+#, c-format
+msgid "The maximum lease (in seconds)"
+msgstr "Die maksimun huur tydperk (in sekondes)"
+
+#: ../tools/drakgw:266
+#, c-format
+msgid "Proxy caching server (SQUID)"
+msgstr ""
+
+#: ../tools/drakgw:270
+#, c-format
+msgid "Use this gateway as proxy caching server"
+msgstr ""
+
+#: ../tools/drakgw:271
+#, c-format
+msgid "Admin mail"
+msgstr ""
+
+#: ../tools/drakgw:272
+#, fuzzy, c-format
+msgid "Visible hostname"
+msgstr "Eksterne bedienernaam"
+
+#: ../tools/drakgw:273
+#, fuzzy, c-format
+msgid "Proxy port"
+msgstr "Eienskap"
+
+#: ../tools/drakgw:274
+#, fuzzy, c-format
+msgid "Cache size (MB)"
+msgstr "Grootte van Kas"
+
+#: ../tools/drakgw:296
+#, fuzzy, c-format
+msgid "Broadcast printer information"
+msgstr "Hardeskyfinligting"
+
+#: ../tools/drakgw:313
+#, c-format
+msgid "Internet Connection Sharing is now enabled."
+msgstr "Internet-konneksie-deling is geaktiveer"
+
+#: ../tools/drakgw:319
+#, c-format
+msgid "Internet Connection Sharing is now disabled."
+msgstr "Internetkonneksiedeling is gedeaktiveer"
+
+#: ../tools/drakgw:325
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"You may now share Internet connection with other computers on your Local "
+"Area Network, using automatic network configuration (DHCP) and\n"
+" a Transparent Proxy Cache server (SQUID)."
+msgstr ""
+"Alles is nou opgestel.\n"
+"U kan nou die Internet-konneksie met ander rekenaars op u LAN deel, deur "
+"outomatiese netwerk konfigurasie te gebruik (DHCP) en\n"
+"'n Deursigtige instaanbediener (SQUID)."
+
+#: ../tools/drakgw:359
+#, c-format
+msgid "Disabling servers..."
+msgstr "Bedieners word gedeaktiveer..."
+
+#: ../tools/drakgw:373
+#, c-format
+msgid "Firewalling configuration detected!"
+msgstr "Vuurmuurkonfigurasie gevind!"
+
+#: ../tools/drakgw:374
+#, c-format
+msgid ""
+"Warning! An existing firewalling configuration has been detected. You may "
+"need some manual fixes after installation."
+msgstr ""
+"Waarskuwing! 'n Bestaande vuurmuurkonfigurasie is bespeur. U sal dalk na die "
+"tyd self regstellings moet aanbring."
+
+#: ../tools/drakgw:379
+#, c-format
+msgid "Configuring..."
+msgstr "Konfigurasie in aabou..."
+
+#: ../tools/drakgw:380
+#, c-format
+msgid "Configuring firewall..."
+msgstr ""
+
+#: ../tools/drakhosts:100
+#, c-format
+msgid "Please add an host to be able to modify it."
+msgstr ""
+
+#: ../tools/drakhosts:110
+#, fuzzy, c-format
+msgid "Please modify information"
+msgstr "Gedetaileerde inligting"
+
+#: ../tools/drakhosts:111
+#, fuzzy, c-format
+msgid "Please delete information"
+msgstr "Gedetaileerde inligting"
+
+#: ../tools/drakhosts:112
+#, fuzzy, c-format
+msgid "Please add information"
+msgstr "Gedetaileerde inligting"
+
+#: ../tools/drakhosts:116
+#, c-format
+msgid "IP address:"
+msgstr " ip adres:"
+
+#: ../tools/drakhosts:117
+#, c-format
+msgid "Host name:"
+msgstr "Rekenaarnaam :"
+
+#: ../tools/drakhosts:118
+#, fuzzy, c-format
+msgid "Host Aliases:"
+msgstr "Rekenaarnaam"
+
+#: ../tools/drakhosts:122 ../tools/drakhosts:128 ../tools/draksambashare:209
+#: ../tools/draksambashare:230 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Error!"
+msgstr "Fout!"
+
+#: ../tools/drakhosts:122
+#, fuzzy, c-format
+msgid "Please enter a valid IP address."
+msgstr "Deurgang se IP-adres"
+
+#: ../tools/drakhosts:128
+#, fuzzy, c-format
+msgid "Same IP is already in %s file."
+msgstr "%s is alreeds in gebruik\n"
+
+#: ../tools/drakhosts:196
+#, fuzzy, c-format
+msgid "Host Aliases"
+msgstr "Rekenaarnaam"
+
+#: ../tools/drakhosts:206 ../tools/drakhosts:236
+#, fuzzy, c-format
+msgid "Manage hosts definitions"
+msgstr "Kabelkonneksie"
+
+#: ../tools/drakhosts:222 ../tools/drakhosts:249
+#, c-format
+msgid "Modify entry"
+msgstr ""
+
+#: ../tools/drakhosts:241 ../tools/draknfs:563 ../tools/draksambashare:1102
+#: ../tools/draksambashare:1133 ../tools/draksambashare:1164
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Add"
+msgstr "Voeg by"
+
+#: ../tools/drakhosts:242
+#, fuzzy, c-format
+msgid "Add entry"
+msgstr "Voeg Drukker By"
+
+#: ../tools/drakhosts:245
+#, c-format
+msgid "Failed to add host."
+msgstr ""
+
+#: ../tools/drakhosts:248 ../tools/draknfs:570 ../tools/draksambashare:1059
+#: ../tools/draksambashare:1104 ../tools/draksambashare:1135
+#: ../tools/draksambashare:1172
+#, c-format
+msgid "Modify"
+msgstr "Verander"
+
+#: ../tools/drakhosts:252
+#, c-format
+msgid "Failed to Modify host."
+msgstr ""
+
+#: ../tools/drakhosts:255 ../tools/drakids:87 ../tools/drakids:96
+#: ../tools/draknfs:577 ../tools/draksambashare:1060
+#: ../tools/draksambashare:1112 ../tools/draksambashare:1143
+#: ../tools/draksambashare:1180 ../tools/drakvpn-old:253
+#: ../tools/drakvpn-old:391
+#, c-format
+msgid "Remove"
+msgstr "Verwyder"
+
+#: ../tools/drakhosts:259
+#, c-format
+msgid "Failed to remove host."
+msgstr ""
+
+#: ../tools/drakhosts:262 ../tools/drakinvictus:141
+#: ../tools/draknetprofile:147 ../tools/drakroam:309 ../tools/net_applet:138
+#, c-format
+msgid "Quit"
+msgstr "Verlaat"
+
+#: ../tools/drakids:28
+#, fuzzy, c-format
+msgid "Allowed addresses"
+msgstr "Laat alle gebruikers toe"
+
+#: ../tools/drakids:65 ../tools/drakids:181 ../tools/drakids:190
+#: ../tools/drakids:215 ../tools/drakids:224 ../tools/drakids:234
+#: ../tools/drakids:326 ../tools/net_applet:238 ../tools/net_applet:514
+#, fuzzy, c-format
+msgid "Unable to contact daemon"
+msgstr "Kon nie die spieëlwebplek %s kontak nie"
+
+#: ../tools/drakids:74 ../tools/drakids:102
+#, c-format
+msgid "Log"
+msgstr "Log"
+
+#: ../tools/drakids:78 ../tools/drakids:97 ../tools/net_applet:659
+#, fuzzy, c-format
+msgid "Allow"
+msgstr "Alles"
+
+#: ../tools/drakids:79 ../tools/drakids:88 ../tools/net_applet:660
+#, c-format
+msgid "Block"
+msgstr ""
+
+#: ../tools/drakids:80 ../tools/drakids:89 ../tools/drakids:98
+#: ../tools/drakids:109 ../tools/drakids:122 ../tools/drakids:130
+#: ../tools/draknfs:186 ../tools/net_monitor:120
+#, c-format
+msgid "Close"
+msgstr "Sluit af"
+
+#: ../tools/drakids:83
+#, fuzzy, c-format
+msgid "Allowed services"
+msgstr "Laat alle gebruikers toe"
+
+#: ../tools/drakids:92
+#, fuzzy, c-format
+msgid "Blocked services"
+msgstr "Rugsteun gebruiker se lêers"
+
+#: ../tools/drakids:106
+#, fuzzy, c-format
+msgid "Clear logs"
+msgstr "Verwyder almal"
+
+#: ../tools/drakids:107 ../tools/drakids:112 ../tools/net_applet:602
+#, c-format
+msgid "Blacklist"
+msgstr ""
+
+#: ../tools/drakids:108 ../tools/drakids:125 ../tools/net_applet:607
+#, c-format
+msgid "Whitelist"
+msgstr ""
+
+#: ../tools/drakids:116
+#, fuzzy, c-format
+msgid "Remove from blacklist"
+msgstr "Verwyder uit LVM"
+
+#: ../tools/drakids:117
+#, c-format
+msgid "Move to whitelist"
+msgstr ""
+
+#: ../tools/drakids:129
+#, fuzzy, c-format
+msgid "Remove from whitelist"
+msgstr "Verwyder uit LVM"
+
+#: ../tools/drakids:247
+#, c-format
+msgid "Date"
+msgstr "Datum"
+
+#: ../tools/drakids:248
+#, fuzzy, c-format
+msgid "Attacker"
+msgstr "Geen Detail"
+
+#: ../tools/drakids:249
+#, fuzzy, c-format
+msgid "Attack type"
+msgstr "tipe: %s"
+
+#: ../tools/drakids:250 ../tools/drakids:283
+#, c-format
+msgid "Service"
+msgstr "Diens"
+
+#: ../tools/drakids:251
+#, c-format
+msgid "Network interface"
+msgstr "Netwerkkoppelvlak"
+
+#: ../tools/drakids:282
+#, c-format
+msgid "Application"
+msgstr "Applikasie"
+
+#: ../tools/drakids:284
+#, c-format
+msgid "Status"
+msgstr "Status"
+
+#: ../tools/drakids:286
+#, fuzzy, c-format
+msgid "Allowed"
+msgstr "Alles"
+
+#: ../tools/drakids:287
+#, c-format
+msgid "Blocked"
+msgstr ""
+
+#: ../tools/drakinvictus:36
+#, c-format
+msgid "Invictus Firewall"
+msgstr ""
+
+#: ../tools/drakinvictus:53
+#, fuzzy, c-format
+msgid "Start as master"
+msgstr "Gelaai tydens herlaaityd"
+
+#: ../tools/drakinvictus:72
+#, fuzzy, c-format
+msgid "A password is required."
+msgstr "Benodig wagwoord"
+
+#: ../tools/drakinvictus:100
+#, c-format
+msgid ""
+"This tool allows to set up network interfaces failover and firewall "
+"replication."
+msgstr ""
+
+#: ../tools/drakinvictus:102
+#, c-format
+msgid "Network redundancy (leave empty if interface is not used)"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Real address"
+msgstr "MAC-adres:"
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Virtual shared address"
+msgstr "Sainfo source address"
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual ID"
+msgstr ""
+
+#: ../tools/drakinvictus:114
+#, fuzzy, c-format
+msgid "Firewall replication"
+msgstr "Finale resolusie"
+
+#: ../tools/drakinvictus:116
+#, c-format
+msgid "Synchronize firewall conntrack tables"
+msgstr ""
+
+#: ../tools/drakinvictus:123
+#, fuzzy, c-format
+msgid "Synchronization network interface"
+msgstr "Sinkronisasie-nutsprogram"
+
+#: ../tools/drakinvictus:132
+#, fuzzy, c-format
+msgid "Connection mark bit"
+msgstr "Verbinding"
+
+#: ../tools/draknetprofile:36
+#, fuzzy, c-format
+msgid "Network profiles"
+msgstr "Netwerk Opsies:"
+
+#: ../tools/draknetprofile:67
+#, fuzzy, c-format
+msgid "Profile"
+msgstr "Profille"
+
+#: ../tools/draknetprofile:99
+#, fuzzy, c-format
+msgid "New profile..."
+msgstr "Stoor as.."
+
+#: ../tools/draknetprofile:102
+#, c-format
+msgid ""
+"Name of the profile to create (the new profile is created as a copy of the "
+"current one):"
+msgstr ""
+
+#: ../tools/draknetprofile:113
+#, c-format
+msgid "The \"%s\" profile already exists!"
+msgstr ""
+
+#: ../tools/draknetprofile:129
+#, c-format
+msgid "You can not delete the default profile"
+msgstr ""
+
+#: ../tools/draknetprofile:131
+#, c-format
+msgid "You can not delete the current profile"
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid ""
+"This tool allows to activate an existing network profile, and to manage "
+"(clone, delete) profiles."
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid "To modify a profile, you have to activate it first."
+msgstr ""
+
+#: ../tools/draknetprofile:144
+#, c-format
+msgid "Activate"
+msgstr "Aktiveer"
+
+#: ../tools/draknetprofile:145
+#, fuzzy, c-format
+msgid "Clone"
+msgstr "Konnekteer"
+
+#: ../tools/draknetprofile:146
+#, c-format
+msgid "Delete"
+msgstr "Uitwis"
+
+#: ../tools/draknfs:41
+#, c-format
+msgid "map root user as anonymous"
+msgstr ""
+
+#: ../tools/draknfs:42
+#, c-format
+msgid "map all users to anonymous user"
+msgstr ""
+
+#: ../tools/draknfs:43
+#, c-format
+msgid "No user UID mapping"
+msgstr ""
+
+#: ../tools/draknfs:44
+#, c-format
+msgid "allow real remote root access"
+msgstr ""
+
+#: ../tools/draknfs:58 ../tools/draknfs:59 ../tools/draknfs:60
+#: ../tools/draksambashare:161 ../tools/draksambashare:162
+#: ../tools/draksambashare:163
+#, c-format
+msgid "/_File"
+msgstr "/_Lêer"
+
+#: ../tools/draknfs:59 ../tools/draksambashare:162
+#, c-format
+msgid "/_Write conf"
+msgstr ""
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "/_Quit"
+msgstr "/_Verlaat"
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "<control>Q"
+msgstr "<control>Q"
+
+#: ../tools/draknfs:63 ../tools/draknfs:64 ../tools/draknfs:65
+#, fuzzy, c-format
+msgid "/_NFS Server"
+msgstr "DNS-bedieners"
+
+#: ../tools/draknfs:64 ../tools/draksambashare:166
+#, c-format
+msgid "/_Restart"
+msgstr ""
+
+#: ../tools/draknfs:65 ../tools/draksambashare:167
+#, c-format
+msgid "/R_eload"
+msgstr ""
+
+#: ../tools/draknfs:84
+#, fuzzy, c-format
+msgid "NFS server"
+msgstr "DNS-bedieners"
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "Restarting/Reloading NFS server..."
+msgstr ""
+
+#: ../tools/draknfs:85
+#, c-format
+msgid "Error Restarting/Reloading NFS server"
+msgstr ""
+
+#: ../tools/draknfs:101 ../tools/draksambashare:225
+#, fuzzy, c-format
+msgid "Directory Selection"
+msgstr "Rigting"
+
+#: ../tools/draknfs:106 ../tools/draksambashare:230
+#, c-format
+msgid "Should be a directory."
+msgstr ""
+
+#: ../tools/draknfs:137
+#, c-format
+msgid ""
+"<span weight=\"bold\">NFS clients</span> may be specified in a number of "
+"ways:\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">single host:</span> a host either by an "
+"abbreviated name recognized be the resolver, fully qualified domain name, or "
+"an IP address\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">netgroups:</span> NIS netgroups may be given "
+"as @group.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">wildcards:</span> machine names may contain "
+"the wildcard characters * and ?. For instance: *.cs.foo.edu matches all "
+"hosts in the domain cs.foo.edu.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">IP networks:</span> you can also export "
+"directories to all hosts on an IP (sub-)network simultaneously. for example, "
+"either `/255.255.252.0' or `/22' appended to the network base address "
+"result.\n"
+msgstr ""
+
+#: ../tools/draknfs:152
+#, c-format
+msgid ""
+"<span weight=\"bold\">User ID options</span>\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map root user as anonymous:</span> map "
+"requests from uid/gid 0 to the anonymous uid/gid (root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">allow real remote root access:</span> turn "
+"off root squashing. This option is mainly useful for diskless clients "
+"(no_root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map all users to anonymous user:</span> map "
+"all uids and gids to the anonymous user (all_squash). Useful for NFS-"
+"exported public FTP directories, news spool directories, etc. The opposite "
+"option is no user UID mapping (no_all_squash), which is the default "
+"setting.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">anonuid and anongid:</span> explicitly set "
+"the uid and gid of the anonymous account.\n"
+msgstr ""
+
+#: ../tools/draknfs:168
+#, c-format
+msgid "Synchronous access:"
+msgstr ""
+
+#: ../tools/draknfs:169
+#, fuzzy, c-format
+msgid "Secured Connection:"
+msgstr "Internetkonneksie"
+
+#: ../tools/draknfs:170
+#, c-format
+msgid "Read-Only share:"
+msgstr ""
+
+#: ../tools/draknfs:172
+#, c-format
+msgid "Advanced Options"
+msgstr ""
+
+#: ../tools/draknfs:173
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> this option requires that requests "
+"originate on an internet port less than IPPORT_RESERVED (1024). This option "
+"is on by default."
+msgstr ""
+
+#: ../tools/draknfs:174
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> allow either only read or both "
+"read and write requests on this NFS volume. The default is to disallow any "
+"request which changes the filesystem. This can also be made explicit by "
+"using this option."
+msgstr ""
+
+#: ../tools/draknfs:175
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> disallows the NFS server to "
+"violate the NFS protocol and to reply to requests before any changes made by "
+"these requests have been committed to stable storage (e.g. disc drive)."
+msgstr ""
+
+#: ../tools/draknfs:180 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Information"
+msgstr "Inligting"
+
+#: ../tools/draknfs:260
+#, c-format
+msgid "Directory"
+msgstr "Gids"
+
+#: ../tools/draknfs:264
+#, c-format
+msgid "Draknfs entry"
+msgstr ""
+
+#: ../tools/draknfs:273
+#, c-format
+msgid "Please add an NFS share to be able to modify it."
+msgstr ""
+
+#: ../tools/draknfs:357
+#, c-format
+msgid "NFS directory"
+msgstr ""
+
+#: ../tools/draknfs:358 ../tools/draksambashare:361
+#: ../tools/draksambashare:570 ../tools/draksambashare:749
+#, c-format
+msgid "Directory:"
+msgstr "Gids:"
+
+#: ../tools/draknfs:359
+#, fuzzy, c-format
+msgid "Host access"
+msgstr "Rekenaarnaam"
+
+#: ../tools/draknfs:360
+#, c-format
+msgid "Access:"
+msgstr "Toegang verkry :"
+
+#: ../tools/draknfs:361
+#, c-format
+msgid "User ID Mapping"
+msgstr ""
+
+#: ../tools/draknfs:362
+#, c-format
+msgid "User ID:"
+msgstr "Gebruikers Kode:"
+
+#: ../tools/draknfs:363
+#, c-format
+msgid "Anonymous user ID:"
+msgstr ""
+
+#: ../tools/draknfs:364
+#, c-format
+msgid "Anonymous Group ID:"
+msgstr ""
+
+#: ../tools/draknfs:400
+#, fuzzy, c-format
+msgid "Please specify a directory to share."
+msgstr "Voorsien asseblief die inligting vir hierdie draadlose kaart:"
+
+#: ../tools/draknfs:402
+#, c-format
+msgid "Can't create this directory."
+msgstr ""
+
+#: ../tools/draknfs:405
+#, c-format
+msgid "You must specify hosts access."
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Share Directory"
+msgstr "Deel Gids"
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Hosts Wildcard"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "General Options"
+msgstr "Algemeen Opsies"
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Custom Options"
+msgstr ""
+
+#: ../tools/draknfs:497 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Please enter a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:504
+#, c-format
+msgid "Please use the modify button to set right access."
+msgstr ""
+
+#: ../tools/draknfs:519
+#, c-format
+msgid "Manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:558
+#, c-format
+msgid "DrakNFS manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:567
+#, c-format
+msgid "Failed to add NFS share."
+msgstr ""
+
+#: ../tools/draknfs:574
+#, c-format
+msgid "Failed to Modify NFS share."
+msgstr ""
+
+#: ../tools/draknfs:581
+#, c-format
+msgid "Failed to remove an NFS share."
+msgstr ""
+
+#: ../tools/drakproxy:36
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr "U moet afteken en weer inteken alvorens veranderinge bekragtig word"
+
+#: ../tools/drakroam:61
+#, c-format
+msgid "No device found"
+msgstr "Geen toestelle gevind nie"
+
+#: ../tools/drakroam:86 ../tools/drakroam:217
+#, fuzzy, c-format
+msgid "Please enter settings for network"
+msgstr "Gedetaileerde inligting"
+
+#: ../tools/drakroam:115
+#, c-format
+msgid "SSID"
+msgstr ""
+
+#: ../tools/drakroam:116
+#, c-format
+msgid "Signal strength"
+msgstr ""
+
+#: ../tools/drakroam:118
+#, c-format
+msgid "Encryption"
+msgstr "Inkripsie"
+
+#: ../tools/drakroam:131
+#, c-format
+msgid "Hostname changed to \"%s\""
+msgstr ""
+
+#: ../tools/drakroam:251
+#, fuzzy, c-format
+msgid "Connecting..."
+msgstr "Konnekteer..."
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Disconnect"
+msgstr "Ontkoppel"
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Connect"
+msgstr "Konnekteer"
+
+#: ../tools/drakroam:289
+#, fuzzy, c-format
+msgid "Disconnecting..."
+msgstr "Diskonnekteer..."
+
+#: ../tools/drakroam:306
+#, c-format
+msgid "Configure"
+msgstr "Konfigureer"
+
+#: ../tools/drakroam:308
+#, c-format
+msgid "Refresh"
+msgstr "Herlaai"
+
+#: ../tools/draksambashare:63
+#, c-format
+msgid "User name"
+msgstr "Gebruiker"
+
+#: ../tools/draksambashare:70
+#, c-format
+msgid "Share name"
+msgstr "Naam van deelarea"
+
+#: ../tools/draksambashare:71
+#, fuzzy, c-format
+msgid "Share directory"
+msgstr "Nie 'n gids nie"
+
+#: ../tools/draksambashare:72 ../tools/draksambashare:105
+#, c-format
+msgid "Comment"
+msgstr "Kommentaar"
+
+#: ../tools/draksambashare:73 ../tools/draksambashare:106
+#, fuzzy, c-format
+msgid "Browseable"
+msgstr "Blaai"
+
+#: ../tools/draksambashare:74
+#, c-format
+msgid "Public"
+msgstr "Publiek"
+
+#: ../tools/draksambashare:75 ../tools/draksambashare:111
+#, c-format
+msgid "Writable"
+msgstr "Skryfbaar"
+
+#: ../tools/draksambashare:76 ../tools/draksambashare:152
+#, fuzzy, c-format
+msgid "Create mask"
+msgstr "Skep"
+
+#: ../tools/draksambashare:77 ../tools/draksambashare:153
+#, fuzzy, c-format
+msgid "Directory mask"
+msgstr "Herstel alle rugsteune"
+
+#: ../tools/draksambashare:78
+#, fuzzy, c-format
+msgid "Read list"
+msgstr "Lees"
+
+#: ../tools/draksambashare:79 ../tools/draksambashare:112
+#: ../tools/draksambashare:584
+#, fuzzy, c-format
+msgid "Write list"
+msgstr "Skryf"
+
+#: ../tools/draksambashare:80 ../tools/draksambashare:144
+#, fuzzy, c-format
+msgid "Admin users"
+msgstr "Voeg gebruiker by"
+
+#: ../tools/draksambashare:81 ../tools/draksambashare:145
+#, fuzzy, c-format
+msgid "Valid users"
+msgstr "Voeg gebruiker by"
+
+#: ../tools/draksambashare:82
+#, fuzzy, c-format
+msgid "Inherit Permissions"
+msgstr "Vergunnigs"
+
+#: ../tools/draksambashare:83 ../tools/draksambashare:146
+#, fuzzy, c-format
+msgid "Hide dot files"
+msgstr "Versteek lêers"
+
+#: ../tools/draksambashare:84 ../tools/draksambashare:147
+#, c-format
+msgid "Hide files"
+msgstr "Versteek lêers"
+
+#: ../tools/draksambashare:85 ../tools/draksambashare:151
+#, fuzzy, c-format
+msgid "Preserve case"
+msgstr "Voorkeure"
+
+#
+#: ../tools/draksambashare:86
+#, fuzzy, c-format
+msgid "Force create mode"
+msgstr "U model drukker"
+
+#: ../tools/draksambashare:87
+#, fuzzy, c-format
+msgid "Force group"
+msgstr "PFS-groep"
+
+#: ../tools/draksambashare:88 ../tools/draksambashare:150
+#, fuzzy, c-format
+msgid "Default case"
+msgstr "Verstekgebruiker"
+
+#: ../tools/draksambashare:103
+#, c-format
+msgid "Printer name"
+msgstr "Drukker naam:"
+
+#: ../tools/draksambashare:104
+#, c-format
+msgid "Path"
+msgstr "Roete"
+
+#: ../tools/draksambashare:107 ../tools/draksambashare:576
+#, fuzzy, c-format
+msgid "Printable"
+msgstr "Aktiveer"
+
+#: ../tools/draksambashare:108
+#, fuzzy, c-format
+msgid "Print Command"
+msgstr "Instruksie"
+
+#: ../tools/draksambashare:109
+#, fuzzy, c-format
+msgid "LPQ command"
+msgstr "Instruksie"
+
+#: ../tools/draksambashare:110
+#, c-format
+msgid "Guest ok"
+msgstr ""
+
+#: ../tools/draksambashare:113 ../tools/draksambashare:154
+#: ../tools/draksambashare:585
+#, fuzzy, c-format
+msgid "Inherit permissions"
+msgstr "Vergunnigs"
+
+#: ../tools/draksambashare:114
+#, c-format
+msgid "Printing"
+msgstr "Drukwerk"
+
+#: ../tools/draksambashare:115
+#, fuzzy, c-format
+msgid "Create mode"
+msgstr "Model kaart:"
+
+#: ../tools/draksambashare:116
+#, fuzzy, c-format
+msgid "Use client driver"
+msgstr "Telnet-bediener"
+
+#
+#: ../tools/draksambashare:142
+#, fuzzy, c-format
+msgid "Read List"
+msgstr "Verwyder Lys"
+
+#: ../tools/draksambashare:143
+#, fuzzy, c-format
+msgid "Write List"
+msgstr "Skryf"
+
+#: ../tools/draksambashare:148
+#, fuzzy, c-format
+msgid "Force Group"
+msgstr "Groep:"
+
+#: ../tools/draksambashare:149
+#, c-format
+msgid "Force create group"
+msgstr ""
+
+#: ../tools/draksambashare:165 ../tools/draksambashare:166
+#: ../tools/draksambashare:167
+#, fuzzy, c-format
+msgid "/_Samba Server"
+msgstr "Web-bediener"
+
+#: ../tools/draksambashare:169 ../tools/draksambashare:170
+#, c-format
+msgid "/_About"
+msgstr "/_Aangaande"
+
+#: ../tools/draksambashare:169
+#, c-format
+msgid "/_Report Bug"
+msgstr "/_Raporteer 'n Fout"
+
+#: ../tools/draksambashare:170
+#, c-format
+msgid "/About..."
+msgstr ""
+
+#: ../tools/draksambashare:173
+#, fuzzy, c-format
+msgid "Draksambashare"
+msgstr "Samba-bediener"
+
+#: ../tools/draksambashare:175
+#, c-format
+msgid "Copyright (C) %s by Mandriva"
+msgstr ""
+
+#: ../tools/draksambashare:177
+#, c-format
+msgid "This is a simple tool to easily manage Samba configuration."
+msgstr ""
+
+#: ../tools/draksambashare:179
+#, fuzzy, c-format
+msgid "Mandriva Linux"
+msgstr "Mandriva Online"
+
+#. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+#: ../tools/draksambashare:184
+#, c-format
+msgid "_: Translator(s) name(s) & email(s)\n"
+msgstr "Dirk van der Walt <dirkvanderwalt@webmail.co.za>\n"
+
+#: ../tools/draksambashare:208
+#, c-format
+msgid "Restarting/Reloading Samba server..."
+msgstr ""
+
+#: ../tools/draksambashare:209
+#, c-format
+msgid "Error Restarting/Reloading Samba server"
+msgstr ""
+
+#: ../tools/draksambashare:349 ../tools/draksambashare:549
+#: ../tools/draksambashare:670
+#, c-format
+msgid "Open"
+msgstr "Open"
+
+#: ../tools/draksambashare:352
+#, fuzzy, c-format
+msgid "DrakSamba add entry"
+msgstr "Samba-bediener"
+
+#: ../tools/draksambashare:356
+#, fuzzy, c-format
+msgid "Add a share"
+msgstr "Samba-bediener"
+
+#: ../tools/draksambashare:359
+#, fuzzy, c-format
+msgid "Name of the share:"
+msgstr "Naam van die sertifikaat"
+
+#: ../tools/draksambashare:360 ../tools/draksambashare:569
+#: ../tools/draksambashare:750
+#, c-format
+msgid "Comment:"
+msgstr "Kommentaar:"
+
+#: ../tools/draksambashare:372
+#, c-format
+msgid ""
+"Share with the same name already exist or share name empty, please choose "
+"another name."
+msgstr ""
+
+#: ../tools/draksambashare:379
+#, c-format
+msgid "Can't create the directory, please enter a correct path."
+msgstr ""
+
+#: ../tools/draksambashare:382 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, fuzzy, c-format
+msgid "Please enter a Comment for this share."
+msgstr "Voorsien asseblief die inligting vir hierdie draadlose kaart:"
+
+#: ../tools/draksambashare:413
+#, c-format
+msgid "pdf-gen - a PDF generator"
+msgstr ""
+
+#: ../tools/draksambashare:414
+#, c-format
+msgid "printers - all printers available"
+msgstr ""
+
+#: ../tools/draksambashare:418
+#, c-format
+msgid "Add Special Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:421
+#, c-format
+msgid ""
+"Goal of this wizard is to easily create a new special printer Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:428
+#, c-format
+msgid "A PDF generator already exists."
+msgstr ""
+
+#: ../tools/draksambashare:452
+#, c-format
+msgid "Printers and print$ already exist."
+msgstr ""
+
+#: ../tools/draksambashare:502
+#, c-format
+msgid "Congratulations"
+msgstr "Geluk"
+
+#: ../tools/draksambashare:503
+#, c-format
+msgid "The wizard successfully added the printer Samba share"
+msgstr ""
+
+#: ../tools/draksambashare:518
+#, c-format
+msgid "Failed to add printers."
+msgstr ""
+
+#: ../tools/draksambashare:533
+#, c-format
+msgid "Please add or select a Samba printer share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:552
+#, c-format
+msgid "DrakSamba Printers entry"
+msgstr ""
+
+#: ../tools/draksambashare:565
+#, c-format
+msgid "Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:568
+#, c-format
+msgid "Printer name:"
+msgstr "Drukker naam:"
+
+#: ../tools/draksambashare:574 ../tools/draksambashare:755
+#, c-format
+msgid "Writable:"
+msgstr "Skryfbaar :"
+
+#: ../tools/draksambashare:575 ../tools/draksambashare:756
+#, fuzzy, c-format
+msgid "Browseable:"
+msgstr "Blaai"
+
+#: ../tools/draksambashare:580
+#, c-format
+msgid "Advanced options"
+msgstr ""
+
+#: ../tools/draksambashare:582
+#, fuzzy, c-format
+msgid "Printer access"
+msgstr "Internettoegang"
+
+#: ../tools/draksambashare:586
+#, c-format
+msgid "Guest ok:"
+msgstr ""
+
+#: ../tools/draksambashare:587
+#, fuzzy, c-format
+msgid "Create mode:"
+msgstr "Model kaart:"
+
+#: ../tools/draksambashare:591
+#, c-format
+msgid "Printer command"
+msgstr ""
+
+#: ../tools/draksambashare:593
+#, c-format
+msgid "Print command:"
+msgstr "Druk opdrag:"
+
+#: ../tools/draksambashare:594
+#, fuzzy, c-format
+msgid "LPQ command:"
+msgstr "Instruksie"
+
+#: ../tools/draksambashare:595
+#, c-format
+msgid "Printing:"
+msgstr "Besig om te druk:"
+
+#: ../tools/draksambashare:611
+#, c-format
+msgid "create mode should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:673
+#, c-format
+msgid "DrakSamba entry"
+msgstr ""
+
+#: ../tools/draksambashare:678
+#, c-format
+msgid "Please add or select a Samba share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:701
+#, fuzzy, c-format
+msgid "Samba user access"
+msgstr "Samba-bediener"
+
+#: ../tools/draksambashare:709
+#, fuzzy, c-format
+msgid "Mask options"
+msgstr "Basiese opsies"
+
+#: ../tools/draksambashare:723
+#, c-format
+msgid "Display options"
+msgstr "Vertoon opsies:"
+
+#: ../tools/draksambashare:745
+#, fuzzy, c-format
+msgid "Samba share directory"
+msgstr "Nie 'n gids nie"
+
+#: ../tools/draksambashare:748
+#, c-format
+msgid "Share name:"
+msgstr "Naam van deelarea :"
+
+#: ../tools/draksambashare:754
+#, c-format
+msgid "Public:"
+msgstr "Publiek :"
+
+#: ../tools/draksambashare:778
+#, c-format
+msgid ""
+"Create mask, create mode and directory mask should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:785
+#, c-format
+msgid "Please create this Samba user: %s"
+msgstr ""
+
+#: ../tools/draksambashare:889
+#, c-format
+msgid "Add Samba user"
+msgstr ""
+
+#: ../tools/draksambashare:904
+#, fuzzy, c-format
+msgid "User information"
+msgstr "Gebruik my Windows-partisie"
+
+#: ../tools/draksambashare:906
+#, c-format
+msgid "User name:"
+msgstr "Gebruiker naam:"
+
+#: ../tools/draksambashare:907
+#, c-format
+msgid "Password:"
+msgstr "Wagwoord:"
+
+#: ../tools/draksambashare:1021
+#, fuzzy, c-format
+msgid "Manage Samba configuration"
+msgstr "Konfigurasie van e-pos alarm"
+
+#: ../tools/draksambashare:1109
+#, c-format
+msgid "Failed to Modify Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1118
+#, c-format
+msgid "Failed to remove a Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1125
+#, c-format
+msgid "File share"
+msgstr ""
+
+#: ../tools/draksambashare:1140
+#, c-format
+msgid "Failed to Modify."
+msgstr ""
+
+#: ../tools/draksambashare:1149
+#, c-format
+msgid "Failed to remove."
+msgstr ""
+
+#: ../tools/draksambashare:1156
+#, c-format
+msgid "Printers"
+msgstr "Drukkers"
+
+#: ../tools/draksambashare:1168
+#, c-format
+msgid "Failed to add user."
+msgstr ""
+
+#: ../tools/draksambashare:1177
+#, c-format
+msgid "Failed to change user password."
+msgstr ""
+
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Failed to delete user."
+msgstr ""
+
+#: ../tools/draksambashare:1194
+#, c-format
+msgid "Userdrake"
+msgstr "Userdrake"
+
+#: ../tools/draksambashare:1202
+#, c-format
+msgid "Samba Users"
+msgstr ""
+
+#: ../tools/draksambashare:1211
+#, c-format
+msgid "DrakSamba manage Samba shares"
+msgstr ""
+
+#: ../tools/drakvpn-old:65
+#, c-format
+msgid "DrakVPN"
+msgstr "DrakVPN"
+
+#: ../tools/drakvpn-old:87
+#, c-format
+msgid "The VPN connection is enabled."
+msgstr "Die VPN-konneksie is geaktiveer"
+
+#: ../tools/drakvpn-old:88
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"Die opstelling van die VPN-konneksie is alreeds gedoen.\n"
+"\n"
+"Dis tans aktief.\n"
+"\n"
+"Wat wil u doen?"
+
+#: ../tools/drakvpn-old:93
+#, c-format
+msgid "disable"
+msgstr "deaktiveer"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119
+#, c-format
+msgid "reconfigure"
+msgstr "herkonfigureer"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119 ../tools/drakvpn-old:432
+#, c-format
+msgid "dismiss"
+msgstr "ignoreer/sien oor"
+
+#: ../tools/drakvpn-old:97
+#, c-format
+msgid "Disabling VPN..."
+msgstr "Deaktiveer VPN..."
+
+#: ../tools/drakvpn-old:106
+#, c-format
+msgid "The VPN connection is now disabled."
+msgstr "Die VPN-konneksie is nou gedeaktiveer."
+
+#: ../tools/drakvpn-old:113
+#, c-format
+msgid "VPN connection currently disabled"
+msgstr "VPN-konneksie is tans gesper"
+
+#: ../tools/drakvpn-old:114
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"Die opstelling van die VPN-konnkesiedeling is alreeds gedoen.\n"
+"\n"
+"Dis tans gedeaktiveer.\n"
+"\n"
+"Wat wil u doen?"
+
+#: ../tools/drakvpn-old:119
+#, c-format
+msgid "enable"
+msgstr "aktiveer"
+
+#: ../tools/drakvpn-old:127
+#, c-format
+msgid "Enabling VPN..."
+msgstr "VPN word geaktiveer..."
+
+#: ../tools/drakvpn-old:133
+#, c-format
+msgid "The VPN connection is now enabled."
+msgstr "Die VPN-konneksie is nou geaktiveer."
+
+#: ../tools/drakvpn-old:147 ../tools/drakvpn-old:164
+#, c-format
+msgid "Simple VPN setup."
+msgstr "Eenvoudige VPN opstelling."
+
+#: ../tools/drakvpn-old:148
+#, c-format
+msgid ""
+"You are about to configure your computer to use a VPN connection.\n"
+"\n"
+"With this feature, computers on your local private network and computers\n"
+"on some other remote private networks, can share resources, through\n"
+"their respective firewalls, over the Internet, in a secure manner. \n"
+"\n"
+"The communication over the Internet is encrypted. The local and remote\n"
+"computers look as if they were on the same network.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using\n"
+"drakconnect before going any further."
+msgstr ""
+"U is oppad om u rekenaar met 'n VPN konneksie te loop opstel.\n"
+"\n"
+"Hiermee kan rekenaars op u plaaslike netwerk en eksterne rekenaars\n"
+"bronne deel,op 'n veilige manier, deur hulle onderskei vuurmure,\n"
+"via die Internet.\n"
+"\n"
+"Die kommunikasie gebruik enkripsie. Die plaaslike en eksterne\n"
+"rkenaars blyk om op dieselde netwerk te wees.\n"
+"\n"
+"Maak tog seker dat u netwerk/Internet reeds opgestel is deur\n"
+"drakconnect te grbruik alvorens u voortgaan."
+
+#: ../tools/drakvpn-old:165
+#, c-format
+msgid ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+msgstr ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+
+#: ../tools/drakvpn-old:208
+#, c-format
+msgid "Problems installing package %s"
+msgstr "Probleme met Installasue van pakket %s"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "Security Policies"
+msgstr "Sekuriteits Reels"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "IKE daemon racoon"
+msgstr "IKE daemon racoon"
+
+#: ../tools/drakvpn-old:224
+#, c-format
+msgid "Configuration file"
+msgstr "Konfigurasie-lêer"
+
+#: ../tools/drakvpn-old:225
+#, c-format
+msgid ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+msgstr ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+
+#: ../tools/drakvpn-old:245 ../tools/drakvpn-old:382
+#, c-format
+msgid "%s entries"
+msgstr ", %s inskrywings"
+
+#: ../tools/drakvpn-old:246
+#, c-format
+msgid ""
+"The %s file contents\n"
+"is divided into sections.\n"
+"\n"
+"You can now:\n"
+"\n"
+" - display, add, edit, or remove sections, then\n"
+" - commit the changes\n"
+"\n"
+"What would you like to do?\n"
+msgstr ""
+"Die %s lêer se inhoud\n"
+"is opgedeel in seksies.\n"
+"\n"
+"U kan nou :\n"
+"\n"
+" - seksies vertoon, redigeer, of byvoeg, daarna\n"
+" - veranderinge stoor\n"
+"\n"
+"Wat verkies u om te doen?\n"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display"
+msgstr "Vertoon"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Edit"
+msgstr "Redigeer"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Commit"
+msgstr "Stoor"
+
+#: ../tools/drakvpn-old:267 ../tools/drakvpn-old:271 ../tools/drakvpn-old:406
+#: ../tools/drakvpn-old:410
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display configuration"
+msgstr "Vertoon konfigurasie"
+
+#: ../tools/drakvpn-old:272
+#, c-format
+msgid ""
+"The %s file does not exist.\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose 'add'.\n"
+msgstr ""
+"Die %s-lêer bestaan nie.\n"
+"\n"
+"Hierdie is 'n nuwe opstelling.\n"
+"\n"
+"Gaan terug en kies \"Voeg by\" .\n"
+
+#: ../tools/drakvpn-old:301
+#, c-format
+msgid ""
+"Add a Security Policy.\n"
+"\n"
+"You can now add a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"Voeg 'n Sekuriteitsreel by.\n"
+"\n"
+"U kan nou 'n Sekuriteisreel byvoeg.\n"
+"\n"
+"Kies \"gaan voort\" sodra u klaar die data voorsien het.\n"
+
+#: ../tools/drakvpn-old:333 ../tools/drakvpn-old:523
+#, c-format
+msgid "Edit section"
+msgstr "Redigeer die keuse"
+
+#: ../tools/drakvpn-old:334
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to edit \n"
+"and then click on next.\n"
+msgstr ""
+"U %s-lêer het 'n aantal seksies of konneksies.\n"
+"\n"
+"U kan die een om te redigeer hier onder kies\n"
+"en dan op \"Volgende\" klik.\n"
+
+#: ../tools/drakvpn-old:337 ../tools/drakvpn-old:357 ../tools/drakvpn-old:528
+#: ../tools/drakvpn-old:574
+#, c-format
+msgid "Section names"
+msgstr "Seksienaam"
+
+#: ../tools/drakvpn-old:344
+#, c-format
+msgid ""
+"Edit a Security Policy.\n"
+"\n"
+"You can now edit a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"Redigeer 'n Sekuriteitsreel.\n"
+"\n"
+"U kan nou 'n sekuriteitsreel byvoeg.\n"
+"\n"
+"Kies \"gaan voort\" sodra u klaar is daarmee.\n"
+
+#: ../tools/drakvpn-old:353 ../tools/drakvpn-old:570
+#, c-format
+msgid "Remove section"
+msgstr "Verwyder seksie"
+
+#: ../tools/drakvpn-old:354 ../tools/drakvpn-old:571
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to remove\n"
+"and then click on next.\n"
+msgstr ""
+"U %s-lêer het 'n aantal seksies of konneksies.\n"
+"\n"
+"U kan hier onder die een kies om te verwyder\n"
+"klik dan op volgende.\n"
+
+#: ../tools/drakvpn-old:383
+#, c-format
+msgid ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+msgstr ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+
+#: ../tools/drakvpn-old:411
+#, c-format
+msgid ""
+"The %s file does not exist\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose configure.\n"
+msgstr ""
+"Die %s-lêer bestaan nie.\n"
+"\n"
+"Hierdie is 'n nuwe opstelling.\n"
+"\n"
+"Gaan terug en kies \"Konfigureer\" .\n"
+
+#: ../tools/drakvpn-old:425
+#, c-format
+msgid "racoon.conf entries"
+msgstr "racoon.conf entries"
+
+#: ../tools/drakvpn-old:426
+#, c-format
+msgid ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+msgstr ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "path"
+msgstr "path"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "remote"
+msgstr "remote"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "sainfo"
+msgstr "sainfo"
+
+#: ../tools/drakvpn-old:440
+#, c-format
+msgid ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+msgstr ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+
+#: ../tools/drakvpn-old:443
+#, c-format
+msgid "path type"
+msgstr "path type"
+
+#: ../tools/drakvpn-old:447
+#, c-format
+msgid ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+msgstr ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+
+#: ../tools/drakvpn-old:467 ../tools/drakvpn-old:560
+#, c-format
+msgid "real file"
+msgstr "real file"
+
+#: ../tools/drakvpn-old:490
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+
+#: ../tools/drakvpn-old:507
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+
+#: ../tools/drakvpn-old:524
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here in the list below the one you want\n"
+"to edit and then click on next.\n"
+msgstr ""
+"U %s-lêer het verskeie seksies, of konneksies.\n"
+"\n"
+"U kan vanaf die onderstaande lys een kies om\n"
+"te redigeer, klik dan op volgende.\n"
+
+#: ../tools/drakvpn-old:535
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"\n"
+"You can now edit the remote section entries.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"U %s-lêer het verskeie seksies.\n"
+"\n"
+"\n"
+"U kan nou die eksterne seksies redigeer.\n"
+"\n"
+"Kies \"Gaan Voort\" sodra u klaar die data voorsien het.\n"
+
+#: ../tools/drakvpn-old:544
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"You can now edit the sainfo section entries.\n"
+"\n"
+"Choose continue when you are done to write the data."
+msgstr ""
+"U %s-lêer het verskeie seksies.\n"
+"\n"
+"U kan nou die sainfo seksie redigeer.\n"
+"\n"
+"Kies \"Gaan Voort\" om die veranderinge te stoor."
+
+#: ../tools/drakvpn-old:552
+#, c-format
+msgid ""
+"This section has to be on top of your\n"
+"%s file.\n"
+"\n"
+"Make sure all other sections follow these path\n"
+"sections.\n"
+"\n"
+"You can now edit the path entries.\n"
+"\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"Hierdie seksie moet bo-aan u\n"
+"%s lêer wees.\n"
+"\n"
+"Maak seker dat ander seksies op hierdie\n"
+" konfigurasie-seksie volg.\n"
+"\n"
+"U kan nou die pad se inskrywings redigeer.\n"
+"\n"
+"Kies \"gaan voort\" of \"vorige\" sodra u klaar is.\n"
+
+#: ../tools/drakvpn-old:559
+#, c-format
+msgid "path_type"
+msgstr "path_type"
+
+#: ../tools/drakvpn-old:599
+#, c-format
+msgid "Congratulations!"
+msgstr "Geluk!"
+
+#: ../tools/drakvpn-old:600
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"\n"
+"You may now share resources through the Internet,\n"
+"in a secure way, using a VPN connection.\n"
+"\n"
+"You should make sure that the tunnels shorewall\n"
+"section is configured."
+msgstr ""
+"Alles is nou opgestel.\n"
+"\n"
+"U kan nou u bronne op 'n veilige manier deel,\n"
+"deur die Internet, met 'n VPN konneksie.\n"
+"\n"
+"U moet seker maak dat die shorewall se tonnels\n"
+"gedeelte opgestel is."
+
+#: ../tools/drakvpn-old:620
+#, c-format
+msgid "Sainfo source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:621
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+
+#: ../tools/drakvpn-old:638
+#, c-format
+msgid "Sainfo source protocol"
+msgstr "Sainfo source protocol"
+
+#: ../tools/drakvpn-old:639
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+
+#: ../tools/drakvpn-old:653
+#, c-format
+msgid "Sainfo destination address"
+msgstr "Sainfo destination address"
+
+#: ../tools/drakvpn-old:654
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+
+#: ../tools/drakvpn-old:671
+#, c-format
+msgid "Sainfo destination protocol"
+msgstr "Sainfo destination protocol"
+
+#: ../tools/drakvpn-old:672
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+
+#: ../tools/drakvpn-old:686
+#, c-format
+msgid "PFS group"
+msgstr "PFS-groep"
+
+#: ../tools/drakvpn-old:688
+#, c-format
+msgid ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+msgstr ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+
+#: ../tools/drakvpn-old:693
+#, c-format
+msgid "Lifetime number"
+msgstr "Lifetime number"
+
+#: ../tools/drakvpn-old:694
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+msgstr ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+
+#: ../tools/drakvpn-old:710
+#, c-format
+msgid "Lifetime unit"
+msgstr "Lifetime unit"
+
+#: ../tools/drakvpn-old:712
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+msgstr ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+
+#: ../tools/drakvpn-old:728 ../tools/drakvpn-old:813
+#, c-format
+msgid "Encryption algorithm"
+msgstr "Enkripsie-algoritme"
+
+#: ../tools/drakvpn-old:730
+#, c-format
+msgid "Authentication algorithm"
+msgstr "Magtigings-algoritme"
+
+#: ../tools/drakvpn-old:732
+#, c-format
+msgid "Compression algorithm"
+msgstr "Kompressie-algoritme"
+
+#: ../tools/drakvpn-old:733
+#, c-format
+msgid "deflate"
+msgstr ""
+
+#: ../tools/drakvpn-old:740
+#, c-format
+msgid "Remote"
+msgstr "Remote"
+
+#: ../tools/drakvpn-old:741
+#, c-format
+msgid ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+msgstr ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+
+#: ../tools/drakvpn-old:749
+#, c-format
+msgid "Exchange mode"
+msgstr "Exchange mode"
+
+#: ../tools/drakvpn-old:751
+#, c-format
+msgid ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+msgstr ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+
+#: ../tools/drakvpn-old:757
+#, c-format
+msgid "Generate policy"
+msgstr "Generate policy"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "off"
+msgstr "af"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "on"
+msgstr "op"
+
+#: ../tools/drakvpn-old:759
+#, c-format
+msgid ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+msgstr ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+
+#: ../tools/drakvpn-old:773
+#, c-format
+msgid "Passive"
+msgstr "Pasief"
+
+#: ../tools/drakvpn-old:775
+#, c-format
+msgid ""
+"If you do not want to initiate the negotiation, set this\n"
+"to on. The default value is off. It is useful for a\n"
+"server."
+msgstr ""
+"Indie u nie die onderhandeling wil afskop nie, skakel die\n"
+"aan. Die verstek is af. Dit is handig vir 'n bediener."
+
+#: ../tools/drakvpn-old:778
+#, c-format
+msgid "Certificate type"
+msgstr "Tipe sertifikaat"
+
+#: ../tools/drakvpn-old:780
+#, c-format
+msgid "My certfile"
+msgstr "My sertifikaat"
+
+#: ../tools/drakvpn-old:781
+#, c-format
+msgid "Name of the certificate"
+msgstr "Naam van die sertifikaat"
+
+#: ../tools/drakvpn-old:782
+#, c-format
+msgid "My private key"
+msgstr "My privaat sleutel"
+
+#: ../tools/drakvpn-old:783
+#, c-format
+msgid "Name of the private key"
+msgstr "Naam van die privaat-sleutel"
+
+#: ../tools/drakvpn-old:784
+#, c-format
+msgid "Peers certfile"
+msgstr "Eweknie se sertifikaat"
+
+#: ../tools/drakvpn-old:785
+#, c-format
+msgid "Name of the peers certificate"
+msgstr "Naam van die eweknie se sertifikaat"
+
+#: ../tools/drakvpn-old:786
+#, c-format
+msgid "Verify cert"
+msgstr "Verivïeer Sertifikaat"
+
+#: ../tools/drakvpn-old:788
+#, c-format
+msgid ""
+"If you do not want to verify the peer's certificate for\n"
+"some reason, set this to off. The default is on."
+msgstr ""
+"Indien u nie die eweknie se sertifikaat wil verivïeer nie\n"
+"sit hierdie dan af. Die verstek is aan."
+
+#: ../tools/drakvpn-old:790
+#, c-format
+msgid "My identifier"
+msgstr "My identifiseerder"
+
+#: ../tools/drakvpn-old:791
+#, c-format
+msgid ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+msgstr ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+
+#: ../tools/drakvpn-old:811
+#, c-format
+msgid "Peers identifier"
+msgstr "Peers identifier"
+
+#: ../tools/drakvpn-old:812
+#, c-format
+msgid "Proposal"
+msgstr "Voorstelling"
+
+#: ../tools/drakvpn-old:814
+#, c-format
+msgid ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+msgstr ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+
+#: ../tools/drakvpn-old:821
+#, c-format
+msgid "Hash algorithm"
+msgstr "Hash-algoritme"
+
+#: ../tools/drakvpn-old:822
+#, c-format
+msgid "Authentication method"
+msgstr "Magtigings-metode"
+
+#: ../tools/drakvpn-old:823
+#, c-format
+msgid "DH group"
+msgstr "DH-groep"
+
+#: ../tools/drakvpn-old:830
+#, c-format
+msgid "Command"
+msgstr "Instruksie"
+
+#: ../tools/drakvpn-old:831
+#, c-format
+msgid "Source IP range"
+msgstr "Bron se IP-reeks"
+
+#: ../tools/drakvpn-old:832
+#, c-format
+msgid "Destination IP range"
+msgstr "bestemming se IP-reeks"
+
+#: ../tools/drakvpn-old:833
+#, c-format
+msgid "Upper-layer protocol"
+msgstr "Bo-laag protokol"
+
+#: ../tools/drakvpn-old:833 ../tools/drakvpn-old:840
+#, c-format
+msgid "any"
+msgstr ""
+
+#: ../tools/drakvpn-old:835
+#, c-format
+msgid "Flag"
+msgstr "Flag"
+
+#: ../tools/drakvpn-old:836
+#, c-format
+msgid "Direction"
+msgstr "Rigting"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "IPsec policy"
+msgstr "IPsec-reels"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "ipsec"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "discard"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "Mode"
+msgstr "Modus"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "tunnel"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "transport"
+msgstr ""
+
+#: ../tools/drakvpn-old:842
+#, c-format
+msgid "Source/destination"
+msgstr "Bron/bestemming"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "Level"
+msgstr "Vlak"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "require"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "default"
+msgstr "verstek"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "use"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "unique"
+msgstr ""
+
+#: ../tools/net_applet:61
+#, fuzzy, c-format
+msgid "Network is up on interface %s."
+msgstr "Netwerkkoppelvlak"
+
+#: ../tools/net_applet:62
+#, c-format
+msgid "IP address: %s"
+msgstr "IP-adres: %s"
+
+#: ../tools/net_applet:63
+#, c-format
+msgid "Gateway: %s"
+msgstr "Deurgang: %s"
+
+#: ../tools/net_applet:64
+#, c-format
+msgid "Connected to %s (link level: %d %%)"
+msgstr ""
+
+#: ../tools/net_applet:66
+#, fuzzy, c-format
+msgid "Network is down on interface %s."
+msgstr "Netwerkkoppelvlak"
+
+#: ../tools/net_applet:74 ../tools/net_monitor:468
+#, c-format
+msgid "Connect %s"
+msgstr "Konnekteer %s"
+
+#: ../tools/net_applet:75 ../tools/net_monitor:468
+#, c-format
+msgid "Disconnect %s"
+msgstr "Diskonnekteer %s"
+
+#: ../tools/net_applet:76
+#, fuzzy, c-format
+msgid "Monitor Network"
+msgstr "Herstel Deur Netwerk"
+
+#: ../tools/net_applet:78
+#, c-format
+msgid "Manage wireless networks"
+msgstr ""
+
+#: ../tools/net_applet:80
+#, fuzzy, c-format
+msgid "Manage VPN connections"
+msgstr "Kabelkonneksie"
+
+#: ../tools/net_applet:84
+#, c-format
+msgid "Configure Network"
+msgstr "Konfigureer die Netwerk"
+
+#: ../tools/net_applet:86
+#, fuzzy, c-format
+msgid "Watched interface"
+msgstr "Koppelvlakke"
+
+#: ../tools/net_applet:87 ../tools/net_applet:88 ../tools/net_applet:90
+#, c-format
+msgid "Auto-detect"
+msgstr "Gebruik outospeuring"
+
+#: ../tools/net_applet:95
+#, c-format
+msgid "Active interfaces"
+msgstr ""
+
+#: ../tools/net_applet:119
+#, c-format
+msgid "Profiles"
+msgstr "Profille"
+
+#: ../tools/net_applet:137
+#, c-format
+msgid "Get Online Help"
+msgstr ""
+
+#: ../tools/net_applet:318
+#, fuzzy, c-format
+msgid "Network connection"
+msgstr "Netwerk Opsies:"
+
+#: ../tools/net_applet:438
+#, c-format
+msgid "More networks"
+msgstr ""
+
+#: ../tools/net_applet:465
+#, c-format
+msgid "Interactive Firewall automatic mode"
+msgstr ""
+
+#: ../tools/net_applet:470
+#, c-format
+msgid "Always launch on startup"
+msgstr ""
+
+#: ../tools/net_applet:475
+#, fuzzy, c-format
+msgid "Wireless networks"
+msgstr "Draadlose konneksie"
+
+#: ../tools/net_applet:482 ../tools/net_monitor:96
+#, c-format
+msgid "Settings"
+msgstr "Verstellings"
+
+#: ../tools/net_applet:557
+#, fuzzy, c-format
+msgid "Interactive Firewall: intrusion detected"
+msgstr "Vuurmuurkonfigurasie gevind!"
+
+#: ../tools/net_applet:574
+#, fuzzy, c-format
+msgid "What do you want to do with this attacker?"
+msgstr "Wil Taai-sleutels aktiveer?"
+
+#: ../tools/net_applet:577
+#, fuzzy, c-format
+msgid "Attack details"
+msgstr "Geen Detail"
+
+#: ../tools/net_applet:581
+#, fuzzy, c-format
+msgid "Attack time: %s"
+msgstr "Aktiveer %s"
+
+#: ../tools/net_applet:582
+#, c-format
+msgid "Network interface: %s"
+msgstr "Netwerkkoppelvlak: %s"
+
+#: ../tools/net_applet:583
+#, fuzzy, c-format
+msgid "Attack type: %s"
+msgstr "tipe: %s"
+
+#: ../tools/net_applet:584
+#, c-format
+msgid "Protocol: %s"
+msgstr "Protokol: %s"
+
+#: ../tools/net_applet:585
+#, fuzzy, c-format
+msgid "Attacker IP address: %s"
+msgstr "Deurgang se IP-adres"
+
+#: ../tools/net_applet:586
+#, fuzzy, c-format
+msgid "Attacker hostname: %s"
+msgstr "Stel gasheer naam %s: "
+
+#: ../tools/net_applet:589
+#, fuzzy, c-format
+msgid "Service attacked: %s"
+msgstr "Diens Bestuurder"
+
+#: ../tools/net_applet:590
+#, fuzzy, c-format
+msgid "Port attacked: %s"
+msgstr "Poort: %s"
+
+#: ../tools/net_applet:592
+#, c-format
+msgid "Type of ICMP attack: %s"
+msgstr ""
+
+#: ../tools/net_applet:597
+#, c-format
+msgid "Always blacklist (do not ask again)"
+msgstr ""
+
+#: ../tools/net_applet:612
+#, c-format
+msgid "Ignore"
+msgstr "Ignoreer"
+
+#: ../tools/net_applet:630 ../tools/net_applet:643
+#, fuzzy, c-format
+msgid "Interactive Firewall: new service"
+msgstr "Vuurmuurkonfigurasie gevind!"
+
+#: ../tools/net_applet:654
+#, fuzzy, c-format
+msgid "Do you want to open this service?"
+msgstr "Wil u die konfigurasie toets?"
+
+#: ../tools/net_applet:657
+#, fuzzy, c-format
+msgid "Remember this answer"
+msgstr "Onthou hierdie wagwoord"
+
+#: ../tools/net_monitor:60 ../tools/net_monitor:65
+#, c-format
+msgid "Network Monitoring"
+msgstr "Monitor van Netwerk"
+
+#: ../tools/net_monitor:101
+#, c-format
+msgid "Global statistics"
+msgstr "Globale Statistieke"
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Instantaneous"
+msgstr "Onmidelike"
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Average"
+msgstr "Gemiddeld"
+
+#: ../tools/net_monitor:105
+#, c-format
+msgid ""
+"Sending\n"
+"speed:"
+msgstr "Stuurspoed:"
+
+#: ../tools/net_monitor:105 ../tools/net_monitor:106 ../tools/net_monitor:111
+#, c-format
+msgid "unknown"
+msgstr "Onbekend"
+
+#: ../tools/net_monitor:106
+#, c-format
+msgid ""
+"Receiving\n"
+"speed:"
+msgstr "Ontvangspoed:"
+
+#: ../tools/net_monitor:110
+#, c-format
+msgid ""
+"Connection\n"
+"time: "
+msgstr "Konneksietyd: "
+
+#: ../tools/net_monitor:117
+#, c-format
+msgid "Use same scale for received and transmitted"
+msgstr ""
+
+#: ../tools/net_monitor:136
+#, c-format
+msgid "Wait please, testing your connection..."
+msgstr "Net 'n oomblik, konneksie word getoets..."
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Disconnecting from Internet "
+msgstr "Diskonnekteer van die Internet "
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Connecting to Internet "
+msgstr "Konnekteer aan die Internet"
+
+#: ../tools/net_monitor:229
+#, c-format
+msgid "Disconnection from Internet failed."
+msgstr "Probleme met die opbreek van die Internerkonneksie."
+
+#: ../tools/net_monitor:230
+#, c-format
+msgid "Disconnection from Internet complete."
+msgstr "Ontkoppeling van Internet voltooi."
+
+#: ../tools/net_monitor:232
+#, c-format
+msgid "Connection complete."
+msgstr "Voltooide konneksie."
+
+#: ../tools/net_monitor:233
+#, c-format
+msgid ""
+"Connection failed.\n"
+"Verify your configuration in the Mandriva Linux Control Center."
+msgstr ""
+"Probleme met die Konneksie\n"
+"Maak tog seker van u konfigurasie in die 'Mandriva Linux Control Center'."
+
+#: ../tools/net_monitor:338
+#, c-format
+msgid "Color configuration"
+msgstr "Kleurkonfigurasie"
+
+#: ../tools/net_monitor:395 ../tools/net_monitor:407
+#, c-format
+msgid "sent: "
+msgstr "stuur: "
+
+#: ../tools/net_monitor:398 ../tools/net_monitor:411
+#, c-format
+msgid "received: "
+msgstr "ontvang: "
+
+#: ../tools/net_monitor:401
+#, c-format
+msgid "average"
+msgstr "gemiddeld"
+
+#: ../tools/net_monitor:404
+#, c-format
+msgid "Local measure"
+msgstr "Plaaslike meting"
+
+#: ../tools/net_monitor:461
+#, c-format
+msgid ""
+"Warning, another internet connection has been detected, maybe using your "
+"network"
+msgstr ""
+"Pasop, daar is 'n ander internet konneksie, wat moontlik u netwerk gebruik, "
+"bespeur"
+
+#: ../tools/net_monitor:472
+#, c-format
+msgid "No internet connection configured"
+msgstr "Geen internetkonneksie gekonfigureer"
diff --git a/po/am.po b/po/am.po
new file mode 100644
index 0000000..bea6b30
--- /dev/null
+++ b/po/am.po
@@ -0,0 +1,5433 @@
+# Latest versions of po files are at http://www.mandrivalinux.com/l10n/am.php3
+# Copyright (C) 2004 Mandriva SA
+# Alemayehu Gemeda <alemayehu@gmx.at>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: drakx-net\n"
+"POT-Creation-Date: 2007-01-10 15:18+0100\n"
+"PO-Revision-Date: 2004-06-01 03:36+0100\n"
+"Last-Translator: Alemayehu <alemayehu@gmx.at>\n"
+"Language-Team: Amharic <am-translate@geez.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../lib/network/connection.pm:16
+#, c-format
+msgid "Unknown connection type"
+msgstr "ያልታወቀ የግንኙነት አይነት"
+
+#: ../lib/network/connection.pm:115
+#, c-format
+msgid "Network access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:116
+#, c-format
+msgid "Access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:117
+#, c-format
+msgid "Address settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:149 ../lib/network/drakvpn.pm:62
+#: ../lib/network/vpn/openvpn.pm:365 ../lib/network/vpn/openvpn.pm:379
+#: ../lib/network/vpn/openvpn.pm:390 ../tools/net_applet:129
+#, fuzzy, c-format
+msgid "VPN connection"
+msgstr "የቅርብ መረብ ግንኙነት"
+
+#: ../lib/network/connection.pm:151 ../lib/network/connection/cable.pm:44
+#: ../lib/network/connection/wireless.pm:37 ../lib/network/vpn/openvpn.pm:127
+#: ../lib/network/vpn/openvpn.pm:171 ../lib/network/vpn/openvpn.pm:339
+#, c-format
+msgid "None"
+msgstr "ምንም"
+
+#: ../lib/network/connection.pm:163
+#, c-format
+msgid "Allow users to manage the connection"
+msgstr ""
+
+#: ../lib/network/connection.pm:164
+#, c-format
+msgid "Start the connection at boot"
+msgstr ""
+
+#: ../lib/network/connection.pm:165 ../tools/drakconnect:462
+#, fuzzy, c-format
+msgid "Metric"
+msgstr "ሜክሲኮ"
+
+#: ../lib/network/connection.pm:230
+#, fuzzy, c-format
+msgid "Link detected on interface %s"
+msgstr "መረጃ በ%s መጠቀሚያ ፕሮግራም ላይ"
+
+#: ../lib/network/connection.pm:231 ../lib/network/connection/ethernet.pm:278
+#, c-format
+msgid "Link beat lost on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:13
+#, c-format
+msgid "Cable"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:14
+#, fuzzy, c-format
+msgid "Cable modem"
+msgstr "የካርድ ሞዴል፦"
+
+#: ../lib/network/connection/cable.pm:45
+#, c-format
+msgid "Use BPALogin (needed for Telstra)"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:48 ../lib/network/netconnect.pm:587
+#: ../tools/drakconnect:482
+#, c-format
+msgid "Authentication"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:50 ../lib/network/connection/ppp.pm:22
+#: ../lib/network/netconnect.pm:326 ../lib/network/vpn/openvpn.pm:393
+#: ../tools/drakconnect:492
+#, c-format
+msgid "Account Login (user name)"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:52 ../lib/network/connection/ppp.pm:23
+#: ../lib/network/netconnect.pm:327 ../lib/network/vpn/openvpn.pm:394
+#: ../tools/drakconnect:493
+#, c-format
+msgid "Account Password"
+msgstr "የመዝገብ ሚስጢራዊ ቃል"
+
+#: ../lib/network/connection/cellular.pm:47
+#, c-format
+msgid "Access Point Name"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:10
+#, c-format
+msgid "Bluetooth"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:11
+#, c-format
+msgid "Bluetooth Dial Up Networking"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:8
+#, c-format
+msgid "GPRS/Edge/3G"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:67
+#: ../lib/network/vpn/openvpn.pm:391
+#, c-format
+msgid "PIN number"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:130
+#, fuzzy, c-format
+msgid "Unable to open device %s"
+msgstr "እንደገና የሚሰራ ምንም የለም።"
+
+#: ../lib/network/connection/cellular_card.pm:155
+#, c-format
+msgid "Please check that your SIM card is inserted."
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:161
+#, c-format
+msgid ""
+"You entered a wrong PIN code.\n"
+"Entering the wrong PIN code multiple times may lock your SIM card!"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:12
+#, c-format
+msgid "DVB"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:13
+#, c-format
+msgid "Satellite (DVB)"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:56
+#, c-format
+msgid "Adapter card"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:57
+#, c-format
+msgid "Net demux"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:58
+#, c-format
+msgid "PID"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:10
+#, c-format
+msgid "Ethernet"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:53
+#, c-format
+msgid "Unable to find network interface for selected device (using %s driver)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:61 ../lib/network/vpn/openvpn.pm:207
+#, c-format
+msgid "Manual configuration"
+msgstr "በእጅ ምርጫ"
+
+#: ../lib/network/connection/ethernet.pm:62
+#, c-format
+msgid "Automatic IP (BOOTP/DHCP)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:116
+#, fuzzy, c-format
+msgid "IP settings"
+msgstr "የPLL ምርጫ"
+
+#: ../lib/network/connection/ethernet.pm:125 ../lib/network/netconnect.pm:604
+#: ../lib/network/vpn/openvpn.pm:221 ../tools/drakconnect:113
+#: ../tools/drakconnect:321 ../tools/drakconnect:887 ../tools/drakhosts:196
+#, c-format
+msgid "IP address"
+msgstr "IP አድራሻ"
+
+#: ../lib/network/connection/ethernet.pm:129
+#, c-format
+msgid ""
+"Please enter the IP configuration for this machine.\n"
+"Each item should be entered as an IP address in dotted-decimal\n"
+"notation (for example, 1.2.3.4)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:132 ../tools/drakconnect:326
+#: ../tools/drakconnect:888 ../tools/drakgw:177
+#, c-format
+msgid "Netmask"
+msgstr "Netmask"
+
+#: ../lib/network/connection/ethernet.pm:133 ../lib/network/netconnect.pm:636
+#: ../lib/network/vpn/openvpn.pm:212 ../lib/network/vpn/vpnc.pm:39
+#: ../tools/drakconnect:332
+#, c-format
+msgid "Gateway"
+msgstr "Gateway"
+
+#: ../lib/network/connection/ethernet.pm:136 ../tools/drakconnect:382
+#, fuzzy, c-format
+msgid "Get DNS servers from DHCP"
+msgstr "ቀዳሚ ተጠሪ ይጠቀም"
+
+#: ../lib/network/connection/ethernet.pm:138
+#, c-format
+msgid "DNS server 1"
+msgstr "DNS ሰርቨር 1"
+
+#: ../lib/network/connection/ethernet.pm:139
+#, c-format
+msgid "DNS server 2"
+msgstr "DNS ሰርቨር 2"
+
+#: ../lib/network/connection/ethernet.pm:140
+#, fuzzy, c-format
+msgid "Search domain"
+msgstr "የObjectDirectory ዶሜን"
+
+#: ../lib/network/connection/ethernet.pm:141
+#, c-format
+msgid "By default search domain will be set from the fully-qualified host name"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:143 ../tools/drakconnect:369
+#: ../tools/drakconnect:891
+#, c-format
+msgid "DHCP client"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:144 ../tools/drakconnect:379
+#, c-format
+msgid "DHCP timeout (in seconds)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:145 ../tools/drakconnect:383
+#, c-format
+msgid "Get YP servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:146 ../tools/drakconnect:384
+#, c-format
+msgid "Get NTPD servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:147 ../tools/drakconnect:375
+#, fuzzy, c-format
+msgid "DHCP host name"
+msgstr "ህገ ወጥ የዶሴ ስም"
+
+#: ../lib/network/connection/ethernet.pm:149
+#, c-format
+msgid "Do not fallback to Zeroconf (169.254.0.0 network)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:160 ../tools/drakconnect:676
+#, c-format
+msgid "IP address should be in format 1.2.3.4"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:165 ../tools/drakconnect:680
+#, c-format
+msgid "Netmask should be in format 255.255.224.0"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:170
+#, c-format
+msgid "Warning: IP address %s is usually reserved!"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:176
+#, c-format
+msgid "%s already in use\n"
+msgstr "%s አስቀድሞ ጥቅም ላይ ነው\n"
+
+#: ../lib/network/connection/ethernet.pm:200 ../tools/drakconnect:373
+#, c-format
+msgid "Assign host name from DHCP address"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:202 ../tools/drakhosts:196
+#, c-format
+msgid "Host name"
+msgstr "የእንግዳ ተቀባይ ስም"
+
+#: ../lib/network/connection/ethernet.pm:220 ../tools/drakconnect:440
+#, fuzzy, c-format
+msgid "Network Hotplugging"
+msgstr "Name=መረብ"
+
+#: ../lib/network/connection/ethernet.pm:224
+#, c-format
+msgid "Enable IPv6 to IPv4 tunnel"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:277
+#, c-format
+msgid "Link beat detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:280
+#, c-format
+msgid "Requesting a network address on interface %s (%s protocol)..."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:281
+#, c-format
+msgid "Got a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:282
+#, c-format
+msgid "Failed to get a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:8
+#, c-format
+msgid "ISDN"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:153 ../lib/network/netconnect.pm:197
+#: ../lib/network/netconnect.pm:200 ../lib/network/netconnect.pm:218
+#: ../lib/network/netconnect.pm:463 ../lib/network/netconnect.pm:559
+#: ../lib/network/netconnect.pm:562
+#, c-format
+msgid "Unlisted - edit manually"
+msgstr "ያልተዘረዘሩ - በእጅ ያስተካክሉ"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "ISA / PCMCIA"
+msgstr "ISA / PCMCIA"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "I do not know"
+msgstr "አላውቅም"
+
+#: ../lib/network/connection/isdn.pm:197 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "PCI"
+msgstr "PCI"
+
+#: ../lib/network/connection/isdn.pm:198 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "USB"
+msgstr "USB"
+
+#. -PO: POTS means "Plain old telephone service"
+#: ../lib/network/connection/pots.pm:10
+#, c-format
+msgid "POTS"
+msgstr ""
+
+#. -PO: POTS means "Plain old telephone service"
+#. -PO: remove it if it doesn't have an equivalent in your language
+#. -PO: for example, in French, it can be translated as "RTC"
+#: ../lib/network/connection/pots.pm:16
+#, c-format
+msgid "Analog telephone modem (POTS)"
+msgstr ""
+
+#: ../lib/network/connection/ppp.pm:9 ../lib/network/netconnect.pm:74
+#: ../tools/drakconnect:499
+#, fuzzy, c-format
+msgid "Script-based"
+msgstr "የተመሠረተው፦"
+
+#: ../lib/network/connection/ppp.pm:10 ../lib/network/netconnect.pm:75
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP"
+msgstr "PAP"
+
+#: ../lib/network/connection/ppp.pm:11 ../lib/network/netconnect.pm:76
+#: ../tools/drakconnect:499
+#, fuzzy, c-format
+msgid "Terminal-based"
+msgstr "የተመሠረተው፦"
+
+#: ../lib/network/connection/ppp.pm:12 ../lib/network/netconnect.pm:77
+#: ../tools/drakconnect:499
+#, c-format
+msgid "CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/ppp.pm:13 ../lib/network/netconnect.pm:78
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP/CHAP"
+msgstr "PAP/CHAP"
+
+#: ../lib/network/connection/providers/cellular.pm:13
+#: ../lib/network/connection/providers/cellular.pm:18
+#: ../lib/network/connection/providers/cellular.pm:23
+#: ../lib/network/connection/providers/xdsl.pm:492
+#: ../lib/network/connection/providers/xdsl.pm:504
+#: ../lib/network/connection/providers/xdsl.pm:516
+#: ../lib/network/connection/providers/xdsl.pm:528
+#: ../lib/network/connection/providers/xdsl.pm:539
+#: ../lib/network/connection/providers/xdsl.pm:551
+#: ../lib/network/connection/providers/xdsl.pm:563
+#: ../lib/network/connection/providers/xdsl.pm:575
+#: ../lib/network/connection/providers/xdsl.pm:588
+#: ../lib/network/connection/providers/xdsl.pm:599
+#: ../lib/network/connection/providers/xdsl.pm:610
+#: ../lib/network/netconnect.pm:33
+#, c-format
+msgid "France"
+msgstr "ፈረንሳይ"
+
+#: ../lib/network/connection/providers/xdsl.pm:47
+#: ../lib/network/connection/providers/xdsl.pm:57
+#, c-format
+msgid "Algeria"
+msgstr "አልጄሪያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:67
+#: ../lib/network/connection/providers/xdsl.pm:77
+#, c-format
+msgid "Argentina"
+msgstr "አርጀንቲና"
+
+#: ../lib/network/connection/providers/xdsl.pm:87
+#: ../lib/network/connection/providers/xdsl.pm:96
+#: ../lib/network/connection/providers/xdsl.pm:105
+#, c-format
+msgid "Austria"
+msgstr "ኦስትሪያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:114
+#: ../lib/network/connection/providers/xdsl.pm:124
+#: ../lib/network/connection/providers/xdsl.pm:134
+#, c-format
+msgid "Australia"
+msgstr "አውስትሬሊያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:144
+#: ../lib/network/connection/providers/xdsl.pm:153
+#: ../lib/network/connection/providers/xdsl.pm:164
+#: ../lib/network/connection/providers/xdsl.pm:173
+#: ../lib/network/connection/providers/xdsl.pm:182
+#: ../lib/network/netconnect.pm:36
+#, c-format
+msgid "Belgium"
+msgstr "ቤልጄም"
+
+#: ../lib/network/connection/providers/xdsl.pm:191
+#: ../lib/network/connection/providers/xdsl.pm:201
+#: ../lib/network/connection/providers/xdsl.pm:210
+#: ../lib/network/connection/providers/xdsl.pm:219
+#, c-format
+msgid "Brazil"
+msgstr "ብራዚል"
+
+#: ../lib/network/connection/providers/xdsl.pm:228
+#: ../lib/network/connection/providers/xdsl.pm:237
+#, c-format
+msgid "Bulgaria"
+msgstr "ቡልጌሪያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:246
+#: ../lib/network/connection/providers/xdsl.pm:255
+#: ../lib/network/connection/providers/xdsl.pm:264
+#: ../lib/network/connection/providers/xdsl.pm:273
+#: ../lib/network/connection/providers/xdsl.pm:282
+#: ../lib/network/connection/providers/xdsl.pm:291
+#: ../lib/network/connection/providers/xdsl.pm:300
+#: ../lib/network/connection/providers/xdsl.pm:309
+#: ../lib/network/connection/providers/xdsl.pm:318
+#: ../lib/network/connection/providers/xdsl.pm:327
+#: ../lib/network/connection/providers/xdsl.pm:336
+#: ../lib/network/connection/providers/xdsl.pm:345
+#: ../lib/network/connection/providers/xdsl.pm:354
+#: ../lib/network/connection/providers/xdsl.pm:363
+#: ../lib/network/connection/providers/xdsl.pm:372
+#: ../lib/network/connection/providers/xdsl.pm:381
+#: ../lib/network/connection/providers/xdsl.pm:390
+#: ../lib/network/connection/providers/xdsl.pm:399
+#: ../lib/network/connection/providers/xdsl.pm:408
+#: ../lib/network/connection/providers/xdsl.pm:417
+#, c-format
+msgid "China"
+msgstr "ቻይና"
+
+#: ../lib/network/connection/providers/xdsl.pm:426
+#: ../lib/network/connection/providers/xdsl.pm:436
+#, c-format
+msgid "Czech Republic"
+msgstr "ቼክ ሪፑብሊክ"
+
+#: ../lib/network/connection/providers/xdsl.pm:446
+#: ../lib/network/connection/providers/xdsl.pm:455
+#: ../lib/network/connection/providers/xdsl.pm:464
+#, c-format
+msgid "Denmark"
+msgstr "ዴንማርክ"
+
+#: ../lib/network/connection/providers/xdsl.pm:473
+#, c-format
+msgid "Egypt"
+msgstr "ግብጽ"
+
+#: ../lib/network/connection/providers/xdsl.pm:483
+#, c-format
+msgid "Finland"
+msgstr "ፊንላንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:621
+#: ../lib/network/connection/providers/xdsl.pm:630
+#: ../lib/network/connection/providers/xdsl.pm:640
+#, c-format
+msgid "Germany"
+msgstr "ጀርመን"
+
+#: ../lib/network/connection/providers/xdsl.pm:650
+#, c-format
+msgid "Greece"
+msgstr "ግሪክ"
+
+#: ../lib/network/connection/providers/xdsl.pm:659
+#, c-format
+msgid "Hungary"
+msgstr "ሀንጋሪ"
+
+#: ../lib/network/connection/providers/xdsl.pm:668
+#, c-format
+msgid "Ireland"
+msgstr "አየርላንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:677
+#, c-format
+msgid "Israel"
+msgstr "እስራኤል"
+
+#: ../lib/network/connection/providers/xdsl.pm:687
+#, c-format
+msgid "India"
+msgstr "ህንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:696
+#: ../lib/network/connection/providers/xdsl.pm:705
+#, c-format
+msgid "Iceland"
+msgstr "አይስላንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:714
+#: ../lib/network/connection/providers/xdsl.pm:725
+#: ../lib/network/connection/providers/xdsl.pm:735
+#: ../lib/network/connection/providers/xdsl.pm:746
+#: ../lib/network/netconnect.pm:35
+#, c-format
+msgid "Italy"
+msgstr "ጣሊያን"
+
+#: ../lib/network/connection/providers/xdsl.pm:758
+#, c-format
+msgid "Sri Lanka"
+msgstr "ሲሪላንካ"
+
+#: ../lib/network/connection/providers/xdsl.pm:770
+#, c-format
+msgid "Lithuania"
+msgstr "ሊቱዌኒያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:779
+#: ../lib/network/connection/providers/xdsl.pm:789
+#, c-format
+msgid "Mauritius"
+msgstr "ማሩሸስ"
+
+#: ../lib/network/connection/providers/xdsl.pm:800
+#, c-format
+msgid "Morocco"
+msgstr "ሞሮኮ"
+
+#: ../lib/network/connection/providers/xdsl.pm:810
+#: ../lib/network/connection/providers/xdsl.pm:819
+#: ../lib/network/connection/providers/xdsl.pm:828
+#: ../lib/network/connection/providers/xdsl.pm:837
+#: ../lib/network/netconnect.pm:34
+#, c-format
+msgid "Netherlands"
+msgstr "ኔዘርላንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:846
+#: ../lib/network/connection/providers/xdsl.pm:852
+#: ../lib/network/connection/providers/xdsl.pm:858
+#: ../lib/network/connection/providers/xdsl.pm:864
+#: ../lib/network/connection/providers/xdsl.pm:870
+#: ../lib/network/connection/providers/xdsl.pm:876
+#: ../lib/network/connection/providers/xdsl.pm:882
+#, c-format
+msgid "Norway"
+msgstr "ኖርዌይ"
+
+#: ../lib/network/connection/providers/xdsl.pm:890
+#, c-format
+msgid "Pakistan"
+msgstr "ፓኪስታን"
+
+#: ../lib/network/connection/providers/xdsl.pm:901
+#: ../lib/network/connection/providers/xdsl.pm:911
+#, c-format
+msgid "Poland"
+msgstr "ፖላንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:922
+#, c-format
+msgid "Portugal"
+msgstr "ፖርቱጋል"
+
+#: ../lib/network/connection/providers/xdsl.pm:931
+#, c-format
+msgid "Russia"
+msgstr "ራሺያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:942
+#, c-format
+msgid "Singapore"
+msgstr "ሲንጋፖር"
+
+#: ../lib/network/connection/providers/xdsl.pm:951
+#, c-format
+msgid "Senegal"
+msgstr "ሴኔጋል"
+
+#: ../lib/network/connection/providers/xdsl.pm:961
+#, c-format
+msgid "Slovenia"
+msgstr "ስሎቬኒያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:972
+#: ../lib/network/connection/providers/xdsl.pm:984
+#: ../lib/network/connection/providers/xdsl.pm:996
+#: ../lib/network/connection/providers/xdsl.pm:1009
+#: ../lib/network/connection/providers/xdsl.pm:1019
+#: ../lib/network/connection/providers/xdsl.pm:1029
+#: ../lib/network/connection/providers/xdsl.pm:1040
+#: ../lib/network/connection/providers/xdsl.pm:1050
+#: ../lib/network/connection/providers/xdsl.pm:1060
+#: ../lib/network/connection/providers/xdsl.pm:1070
+#: ../lib/network/connection/providers/xdsl.pm:1080
+#: ../lib/network/connection/providers/xdsl.pm:1090
+#: ../lib/network/connection/providers/xdsl.pm:1101
+#: ../lib/network/connection/providers/xdsl.pm:1112
+#: ../lib/network/connection/providers/xdsl.pm:1124
+#: ../lib/network/connection/providers/xdsl.pm:1136
+#, c-format
+msgid "Spain"
+msgstr "ስፔን"
+
+#: ../lib/network/connection/providers/xdsl.pm:1149
+#, c-format
+msgid "Sweden"
+msgstr "ስዊድን"
+
+#: ../lib/network/connection/providers/xdsl.pm:1158
+#: ../lib/network/connection/providers/xdsl.pm:1167
+#: ../lib/network/connection/providers/xdsl.pm:1177
+#, c-format
+msgid "Switzerland"
+msgstr "ስዊዘርላንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:1186
+#, c-format
+msgid "Thailand"
+msgstr "ታይላንድ"
+
+#: ../lib/network/connection/providers/xdsl.pm:1196
+#, c-format
+msgid "Tunisia"
+msgstr "ቱኒዚያ"
+
+#: ../lib/network/connection/providers/xdsl.pm:1207
+#, c-format
+msgid "Turkey"
+msgstr "ቱርክ"
+
+#: ../lib/network/connection/providers/xdsl.pm:1220
+#, c-format
+msgid "United Arab Emirates"
+msgstr "የተባበሩት አረብ ኤምሬትስ"
+
+#: ../lib/network/connection/providers/xdsl.pm:1230
+#: ../lib/network/connection/providers/xdsl.pm:1240
+#: ../lib/network/netconnect.pm:38
+#, c-format
+msgid "United Kingdom"
+msgstr "እንግሊዝ"
+
+#: ../lib/network/connection/wireless.pm:11
+#, c-format
+msgid "Wireless"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:21
+#, c-format
+msgid "Use a Windows driver (with ndiswrapper)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:38
+#, c-format
+msgid "Open WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:39
+#, c-format
+msgid "Restricted WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:40
+#, c-format
+msgid "WPA Pre-Shared Key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:181 ../lib/network/thirdparty.pm:174
+#, c-format
+msgid "Firmware files are required for this device."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:209
+#, c-format
+msgid ""
+"Your wireless card is disabled, please enable the wireless switch (RF kill "
+"switch) first."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:270
+#, fuzzy, c-format
+msgid "Wireless settings"
+msgstr "ሽቦ አልባ ግንኙነት"
+
+#: ../lib/network/connection/wireless.pm:275 ../tools/drakconnect:406
+#: ../tools/drakroam:119
+#, fuzzy, c-format
+msgid "Operating Mode"
+msgstr "የመሸፈኛ ዘዴ"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Ad-hoc"
+msgstr "Ad-hoc"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Managed"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Master"
+msgstr "ገዢ"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Repeater"
+msgstr "ደጋሚ"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Secondary"
+msgstr "ሁለተኛ"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Auto"
+msgstr "ራስ-ገዝ"
+
+#: ../lib/network/connection/wireless.pm:279 ../tools/drakconnect:407
+#, c-format
+msgid "Network name (ESSID)"
+msgstr "የመረብ ስም (ESSID)"
+
+#: ../lib/network/connection/wireless.pm:281
+#, c-format
+msgid "Encryption mode"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:283 ../tools/drakconnect:421
+#, c-format
+msgid "Encryption key"
+msgstr "የሚስጢራዊ ግልበጣ ቁልፍ"
+
+#: ../lib/network/connection/wireless.pm:285 ../tools/drakconnect:408
+#, c-format
+msgid "Network ID"
+msgstr "የመረብ መለያ"
+
+#: ../lib/network/connection/wireless.pm:286 ../tools/drakconnect:409
+#, c-format
+msgid "Operating frequency"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:287 ../tools/drakconnect:410
+#, c-format
+msgid "Sensitivity threshold"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:288 ../tools/drakconnect:411
+#, fuzzy, c-format
+msgid "Bitrate (in b/s)"
+msgstr "በጥቅም ላይ ያለ"
+
+#: ../lib/network/connection/wireless.pm:289 ../tools/drakconnect:422
+#, c-format
+msgid "RTS/CTS"
+msgstr "RTS/CTS"
+
+#: ../lib/network/connection/wireless.pm:290
+#, c-format
+msgid ""
+"RTS/CTS adds a handshake before each packet transmission to make sure that "
+"the\n"
+"channel is clear. This adds overhead, but increase performance in case of "
+"hidden\n"
+"nodes or large number of active nodes. This parameter sets the size of the\n"
+"smallest packet for which the node sends RTS, a value equal to the maximum\n"
+"packet size disable the scheme. You may also set this parameter to auto, "
+"fixed\n"
+"or off."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:297 ../tools/drakconnect:423
+#, c-format
+msgid "Fragmentation"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:298 ../tools/drakconnect:424
+#, c-format
+msgid "iwconfig command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:299
+#, c-format
+msgid ""
+"Here, one can configure some extra wireless parameters such as:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick is already set "
+"as the hostname).\n"
+"\n"
+"See iwconfig(8) man page for further information."
+msgstr ""
+
+#. -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#: ../lib/network/connection/wireless.pm:306 ../tools/drakconnect:425
+#, c-format
+msgid "iwspy command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:307
+#, c-format
+msgid ""
+"iwspy is used to set a list of addresses in a wireless network\n"
+"interface and to read back quality of link information for each of those.\n"
+"\n"
+"This information is the same as the one available in /proc/net/wireless :\n"
+"quality of the link, signal strength and noise level.\n"
+"\n"
+"See iwpspy(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:315 ../tools/drakconnect:426
+#, c-format
+msgid "iwpriv command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:317
+#, c-format
+msgid ""
+"iwpriv enable to set up optionals (private) parameters of a wireless "
+"network\n"
+"interface.\n"
+"\n"
+"iwpriv deals with parameters and setting specific to each driver (as opposed "
+"to\n"
+"iwconfig which deals with generic ones).\n"
+"\n"
+"In theory, the documentation of each device driver should indicate how to "
+"use\n"
+"those interface specific commands and their effect.\n"
+"\n"
+"See iwpriv(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:335
+#, c-format
+msgid "An encryption key is required."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:341
+#, c-format
+msgid ""
+"Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz "
+"frequency), or add enough '0' (zeroes)."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:347
+#, c-format
+msgid ""
+"Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add "
+"enough '0' (zeroes)."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:359
+#, c-format
+msgid "Allow access point roaming"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:460
+#, c-format
+msgid "Associated to wireless network \"%s\" on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:461
+#, c-format
+msgid "Lost association to wireless network on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:8
+#, fuzzy, c-format
+msgid "DSL"
+msgstr "DNS"
+
+#: ../lib/network/connection/xdsl.pm:76 ../lib/network/netconnect.pm:755
+#, c-format
+msgid "Alcatel speedtouch USB modem"
+msgstr "Alcatel speedtouch USB ሞዴም"
+
+#: ../lib/network/connection/xdsl.pm:104
+#, c-format
+msgid ""
+"The ECI Hi-Focus modem cannot be supported due to binary driver distribution "
+"problem.\n"
+"\n"
+"You can find a driver on http://eciadsl.flashtux.org/"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:176
+#, c-format
+msgid "DSL over CAPI"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:179
+#, c-format
+msgid "Dynamic Host Configuration Protocol (DHCP)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:180
+#, c-format
+msgid "Manual TCP/IP configuration"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:181
+#, c-format
+msgid "Point to Point Tunneling Protocol (PPTP)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:182
+#, c-format
+msgid "PPP over Ethernet (PPPoE)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:183
+#, c-format
+msgid "PPP over ATM (PPPoA)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:223
+#, c-format
+msgid "Virtual Path ID (VPI):"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:224
+#, c-format
+msgid "Virtual Circuit ID (VCI):"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/drakvpn.pm:52 ../lib/network/ndiswrapper.pm:27
+#: ../lib/network/ndiswrapper.pm:42 ../lib/network/ndiswrapper.pm:86
+#: ../lib/network/ndiswrapper.pm:102 ../lib/network/netconnect.pm:131
+#: ../lib/network/netconnect.pm:179 ../lib/network/netconnect.pm:268
+#: ../lib/network/netconnect.pm:813 ../lib/network/thirdparty.pm:114
+#: ../lib/network/thirdparty.pm:131 ../lib/network/thirdparty.pm:214
+#: ../lib/network/thirdparty.pm:216 ../lib/network/thirdparty.pm:237
+#: ../tools/drakconnect:676 ../tools/drakconnect:680 ../tools/drakconnect:689
+#: ../tools/drakconnect:705 ../tools/drakgw:184 ../tools/drakhosts:100
+#: ../tools/drakhosts:245 ../tools/drakhosts:252 ../tools/drakhosts:259
+#: ../tools/drakinvictus:72 ../tools/draknetprofile:113 ../tools/draknfs:85
+#: ../tools/draknfs:106 ../tools/draknfs:273 ../tools/draknfs:400
+#: ../tools/draknfs:402 ../tools/draknfs:405 ../tools/draknfs:497
+#: ../tools/draknfs:504 ../tools/draknfs:567 ../tools/draknfs:574
+#: ../tools/draknfs:581 ../tools/drakroam:79 ../tools/drakroam:92
+#: ../tools/draksambashare:372 ../tools/draksambashare:379
+#: ../tools/draksambashare:382 ../tools/draksambashare:428
+#: ../tools/draksambashare:452 ../tools/draksambashare:518
+#: ../tools/draksambashare:533 ../tools/draksambashare:611
+#: ../tools/draksambashare:678 ../tools/draksambashare:778
+#: ../tools/draksambashare:785 ../tools/draksambashare:916
+#: ../tools/draksambashare:1109 ../tools/draksambashare:1118
+#: ../tools/draksambashare:1140 ../tools/draksambashare:1149
+#: ../tools/draksambashare:1168 ../tools/draksambashare:1177
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Error"
+msgstr "ስህተት"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/netconnect.pm:131 ../lib/network/thirdparty.pm:114
+#, fuzzy, c-format
+msgid "Could not install the packages (%s)!"
+msgstr "የ%s ጥቅሎችን መትከል አልተቻለም!"
+
+#: ../lib/network/drakfirewall.pm:12
+#, c-format
+msgid "Web Server"
+msgstr "የመረብ ሰርቨር"
+
+#: ../lib/network/drakfirewall.pm:17
+#, c-format
+msgid "Domain Name Server"
+msgstr "የዘርፍ ስም ሰርቨር"
+
+#: ../lib/network/drakfirewall.pm:22
+#, c-format
+msgid "SSH server"
+msgstr "SSH ሰርቨር"
+
+#: ../lib/network/drakfirewall.pm:27
+#, c-format
+msgid "FTP server"
+msgstr "የFTP ተጠሪ"
+
+#: ../lib/network/drakfirewall.pm:32
+#, c-format
+msgid "Mail Server"
+msgstr "የመልዕክት ተጠሪ"
+
+#: ../lib/network/drakfirewall.pm:37
+#, c-format
+msgid "POP and IMAP Server"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:42
+#, c-format
+msgid "Telnet server"
+msgstr "የቴልኔት ሰርቨር"
+
+#: ../lib/network/drakfirewall.pm:48
+#, c-format
+msgid "Windows Files Sharing (SMB)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:54
+#, c-format
+msgid "CUPS server"
+msgstr "የCUPS ሰርቨር"
+
+#: ../lib/network/drakfirewall.pm:60
+#, c-format
+msgid "Echo request (ping)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:65
+#, c-format
+msgid "BitTorrent"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:74
+#, c-format
+msgid "Port scan detection"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:166 ../lib/network/drakfirewall.pm:172
+#, fuzzy, c-format
+msgid "Firewall configuration"
+msgstr "በእጅ ምርጫ"
+
+#: ../lib/network/drakfirewall.pm:166
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"This configures a personal firewall for this Mandriva Linux machine.\n"
+"For a powerful and dedicated firewall solution, please look to the\n"
+"specialized Mandriva Security Firewall distribution."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:172
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"Make sure you have configured your Network/Internet access with\n"
+"drakconnect before going any further."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:189
+#, c-format
+msgid "Which services would you like to allow the Internet to connect to?"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:190 ../lib/network/shorewall.pm:145
+#, c-format
+msgid "Firewall"
+msgstr "የእሳት ግድግዳ"
+
+#: ../lib/network/drakfirewall.pm:192
+#, c-format
+msgid ""
+"You can enter miscellaneous ports. \n"
+"Valid examples are: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Have a look at /etc/services for information."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:198
+#, c-format
+msgid ""
+"Invalid port given: %s.\n"
+"The proper format is \"port/tcp\" or \"port/udp\", \n"
+"where port is between 1 and 65535.\n"
+"\n"
+"You can also give a range of ports (eg: 24300:24350/udp)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:208
+#, c-format
+msgid "Everything (no firewall)"
+msgstr "ማንኛውም (የእሳት ግድግዳ የለም)"
+
+#: ../lib/network/drakfirewall.pm:210
+#, c-format
+msgid "Other ports"
+msgstr "ሌላ ወደቦች"
+
+#: ../lib/network/drakfirewall.pm:211
+#, c-format
+msgid "Log firewall messages in system logs"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:255 ../lib/network/drakfirewall.pm:258
+#: ../tools/drakids:40 ../tools/drakids:65 ../tools/drakids:181
+#: ../tools/drakids:190 ../tools/drakids:215 ../tools/drakids:224
+#: ../tools/drakids:234 ../tools/drakids:326 ../tools/net_applet:77
+#: ../tools/net_applet:238 ../tools/net_applet:514 ../tools/net_applet:541
+#, fuzzy, c-format
+msgid "Interactive Firewall"
+msgstr "የእሳት ግድግዳ"
+
+#: ../lib/network/drakfirewall.pm:256
+#, c-format
+msgid ""
+"You can be warned when someone accesses to a service or tries to intrude "
+"into your computer.\n"
+"Please select which network activities should be watched."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:261
+#, c-format
+msgid "Use Interactive Firewall"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:30
+#, fuzzy, c-format
+msgid "VPN configuration"
+msgstr "የማስተካከያው አራሚ"
+
+#: ../lib/network/drakvpn.pm:34
+#, fuzzy, c-format
+msgid "Choose the VPN type"
+msgstr "አዲሱን መጠን ይምረጡ"
+
+#: ../lib/network/drakvpn.pm:49
+#, c-format
+msgid "Initializing tools and detecting devices for %s..."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:52
+#, fuzzy, c-format
+msgid "Unable to initialize %s connection type!"
+msgstr "ያልታወቀ የግንኙነት አይነት"
+
+#: ../lib/network/drakvpn.pm:60
+#, c-format
+msgid "Please select an existing VPN connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:64
+#, fuzzy, c-format
+msgid "Configure a new connection..."
+msgstr "ግንኙነትዎን በመሞከር ላይ..."
+
+#: ../lib/network/drakvpn.pm:66
+#, fuzzy, c-format
+msgid "New name"
+msgstr "እውነተኛ ስም"
+
+#: ../lib/network/drakvpn.pm:70 ../lib/network/drakvpn.pm:100
+#: ../lib/network/ndiswrapper.pm:92 ../lib/network/netconnect.pm:471
+#: ../tools/drakconnect:978 ../tools/draknetprofile:129
+#: ../tools/draknetprofile:131 ../tools/drakproxy:36
+#, c-format
+msgid "Warning"
+msgstr "ማስጠንቀቂያ"
+
+#: ../lib/network/drakvpn.pm:70
+#, c-format
+msgid "You must select an existing connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:81
+#, fuzzy, c-format
+msgid "Please enter the required key(s)"
+msgstr "እባክዎ የWebDAV ሰርቨር URL ያስገቡ"
+
+#: ../lib/network/drakvpn.pm:86
+#, fuzzy, c-format
+msgid "Please enter the settings of your VPN connection"
+msgstr "ከአንጸባራቂ %s ጋር መገናኘት አልተቻለም"
+
+#: ../lib/network/drakvpn.pm:94 ../lib/network/netconnect.pm:291
+#, c-format
+msgid "Do you want to start the connection now?"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:100
+#, fuzzy, c-format
+msgid "Connection failed."
+msgstr "የግንኙነት ስም"
+
+#: ../lib/network/drakvpn.pm:108
+#, c-format
+msgid ""
+"The VPN connection is now configured.\n"
+"\n"
+"This VPN connection can be automatically started together with a network "
+"connection.\n"
+"It can be done by reconfiguring the network connection and selecting this "
+"VPN connection.\n"
+msgstr ""
+
+#: ../lib/network/ifw.pm:129
+#, fuzzy, c-format
+msgid "Port scanning"
+msgstr "መጋራት የለም"
+
+#: ../lib/network/ifw.pm:130
+#, fuzzy, c-format
+msgid "Service attack"
+msgstr "የአገልግሎቶች መቆጣጠሪያ"
+
+#: ../lib/network/ifw.pm:131
+#, fuzzy, c-format
+msgid "Password cracking"
+msgstr "ሚስጢራዊ ቃል (እንደገና)"
+
+#: ../lib/network/ifw.pm:132
+#, c-format
+msgid "\"%s\" attack"
+msgstr ""
+
+#: ../lib/network/ifw.pm:134
+#, c-format
+msgid "A port scanning attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:135
+#, c-format
+msgid "The %s service has been attacked by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:136
+#, c-format
+msgid "A password cracking attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:137
+#, c-format
+msgid "A \"%s\" attack has been attempted by %s"
+msgstr ""
+
+#: ../lib/network/ifw.pm:146
+#, c-format
+msgid ""
+"The \"%s\" application is trying to make a service (%s) available to the "
+"network."
+msgstr ""
+
+#. -PO: this should be kept lowercase since the expression is meant to be used between brackets
+#: ../lib/network/ifw.pm:150
+#, fuzzy, c-format
+msgid "port %d"
+msgstr "ሪፖርት"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/netconnect.pm:603
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#, c-format
+msgid "Manual"
+msgstr "መመሪያ"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/modem.pm:63
+#: ../lib/network/modem.pm:76 ../lib/network/modem.pm:81
+#: ../lib/network/modem.pm:110 ../lib/network/netconnect.pm:598
+#: ../lib/network/netconnect.pm:603 ../lib/network/netconnect.pm:615
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#: ../lib/network/netconnect.pm:638
+#, c-format
+msgid "Automatic"
+msgstr "ራስ-ገዝ"
+
+#: ../lib/network/ndiswrapper.pm:27
+#, c-format
+msgid "No device supporting the %s ndiswrapper driver is present!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:33
+#, c-format
+msgid "Please select the Windows driver (.inf file)"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:42
+#, c-format
+msgid "Unable to install the %s ndiswrapper driver!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:86
+#, c-format
+msgid "Unable to load the ndiswrapper module!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:92
+#, c-format
+msgid ""
+"The selected device has already been configured with the %s driver.\n"
+"Do you really want to use a ndiswrapper driver?"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:102
+#, c-format
+msgid "Unable to find the ndiswrapper interface!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:115
+#, fuzzy, c-format
+msgid "Choose an ndiswrapper driver"
+msgstr "የነሲብ URLን አታስችል"
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Use the ndiswrapper driver %s"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:118
+#, fuzzy, c-format
+msgid "Install a new driver"
+msgstr "ሲስተም ትከል"
+
+#: ../lib/network/ndiswrapper.pm:129
+#, c-format
+msgid "Select a device:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:37
+#, c-format
+msgid "United States"
+msgstr "አሜሪካ"
+
+#: ../lib/network/netconnect.pm:60 ../lib/network/netconnect.pm:493
+#: ../lib/network/netconnect.pm:507
+#, c-format
+msgid "Manual choice"
+msgstr "የመመሪያ ምርጫ"
+
+#: ../lib/network/netconnect.pm:60
+#, c-format
+msgid "Internal ISDN card"
+msgstr "ውስጣዊ ISDN ካርድ"
+
+#: ../lib/network/netconnect.pm:65
+#, c-format
+msgid "Protocol for the rest of the world"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:67 ../tools/drakconnect:564
+#, fuzzy, c-format
+msgid "European protocol (EDSS1)"
+msgstr "መካከለኛ አውሮፓውያን፣ Macintosh"
+
+#: ../lib/network/netconnect.pm:68 ../tools/drakconnect:565
+#, c-format
+msgid ""
+"Protocol for the rest of the world\n"
+"No D-Channel (leased lines)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:118 ../tools/drakconnect:61
+#, c-format
+msgid "Network & Internet Configuration"
+msgstr "የመረብ እና ኢንተርኔት ምርጫ"
+
+#: ../lib/network/netconnect.pm:123
+#, c-format
+msgid "Choose the connection you want to configure"
+msgstr "ለማስተካከል የሚፈልጉትን ግንኙነት ይምረጡ"
+
+#: ../lib/network/netconnect.pm:145 ../lib/network/netconnect.pm:348
+#: ../lib/network/netconnect.pm:788
+#, c-format
+msgid "Select the network interface to configure:"
+msgstr "ለማስተካከል የመረብ እይታ ይምረጡ:"
+
+#: ../lib/network/netconnect.pm:164
+#, c-format
+msgid "No device can be found for this connection type."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:173
+#, fuzzy, c-format
+msgid "Hardware Configuration"
+msgstr "የመረብ ምርጫ"
+
+#: ../lib/network/netconnect.pm:177 ../tools/drakroam:90
+#, fuzzy, c-format
+msgid "Configuring device..."
+msgstr "አገልግሎቶችን ሰይም"
+
+#: ../lib/network/netconnect.pm:194
+#, c-format
+msgid "Please select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:209 ../tools/drakroam:170
+#, fuzzy, c-format
+msgid "Scanning for networks..."
+msgstr "Name=መረብ"
+
+#: ../lib/network/netconnect.pm:212
+#, c-format
+msgid "Please select your network:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:241
+#, c-format
+msgid ""
+"Please select your connection protocol.\n"
+"If you do not know it, keep the preselected protocol."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:285 ../lib/network/netconnect.pm:655
+#, c-format
+msgid "Connection control"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Connection Configuration"
+msgstr "የግንኙነት ምርጫ"
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Please fill or check the field below"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:318
+#, c-format
+msgid "Your personal phone number"
+msgstr "የራስዎ ስልክ ቁጥር"
+
+#: ../lib/network/netconnect.pm:319
+#, c-format
+msgid "Provider name (ex provider.net)"
+msgstr "የአገልግሎት ሰጪው ስም (ለምሳሌ: provider.net)"
+
+#: ../lib/network/netconnect.pm:320 ../tools/drakconnect:494
+#, c-format
+msgid "Provider phone number"
+msgstr "የአገልግሎት ሰጪው ስልክ ቁጥር"
+
+#: ../lib/network/netconnect.pm:321
+#, fuzzy, c-format
+msgid "Provider DNS 1 (optional)"
+msgstr "የአገልግሎት ሰጪ ስልክ ቁጥር"
+
+#: ../lib/network/netconnect.pm:322
+#, fuzzy, c-format
+msgid "Provider DNS 2 (optional)"
+msgstr "የአገልግሎት ሰጪ ስልክ ቁጥር"
+
+#: ../lib/network/netconnect.pm:323 ../tools/drakconnect:446
+#, fuzzy, c-format
+msgid "Dialing mode"
+msgstr "የመሸፈኛ ዘዴ"
+
+#: ../lib/network/netconnect.pm:324 ../tools/drakconnect:451
+#: ../tools/drakconnect:518
+#, c-format
+msgid "Connection speed"
+msgstr "የግንኙነት ፍጥነት"
+
+#: ../lib/network/netconnect.pm:325 ../tools/drakconnect:456
+#, c-format
+msgid "Connection timeout (in sec)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:328 ../tools/drakconnect:555
+#, c-format
+msgid "Card IRQ"
+msgstr "ካርድ IRQ"
+
+#: ../lib/network/netconnect.pm:329 ../tools/drakconnect:556
+#, c-format
+msgid "Card mem (DMA)"
+msgstr "ካርድ mem (DMA)"
+
+#: ../lib/network/netconnect.pm:330 ../tools/drakconnect:557
+#, c-format
+msgid "Card IO"
+msgstr "ካርድ IO"
+
+#: ../lib/network/netconnect.pm:331 ../tools/drakconnect:558
+#, c-format
+msgid "Card IO_0"
+msgstr "ካርድ IO_0"
+
+#: ../lib/network/netconnect.pm:332
+#, c-format
+msgid "Card IO_1"
+msgstr "ካርድ IO_1"
+
+#: ../lib/network/netconnect.pm:350 ../lib/network/netconnect.pm:385
+#: ../tools/drakconnect:719 ../tools/drakgw:123
+#, c-format
+msgid "Net Device"
+msgstr "የመረብ መሳሪያ"
+
+#: ../lib/network/netconnect.pm:351 ../lib/network/netconnect.pm:356
+#, c-format
+msgid "External ISDN modem"
+msgstr "ውጫዊ የISDN ሞዴም"
+
+#: ../lib/network/netconnect.pm:384
+#, fuzzy, c-format
+msgid "Select a device!"
+msgstr "የመረብ ዕቃ"
+
+#: ../lib/network/netconnect.pm:393 ../lib/network/netconnect.pm:403
+#: ../lib/network/netconnect.pm:413 ../lib/network/netconnect.pm:446
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid "ISDN Configuration"
+msgstr "የISDN ምርጫ"
+
+#: ../lib/network/netconnect.pm:394
+#, c-format
+msgid "What kind of card do you have?"
+msgstr "ምን አይነት ካርድ ነው ያልዎት?"
+
+#: ../lib/network/netconnect.pm:404
+#, c-format
+msgid ""
+"\n"
+"If you have an ISA card, the values on the next screen should be right.\n"
+"\n"
+"If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your "
+"card.\n"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Continue"
+msgstr "ቀጥል"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Abort"
+msgstr "ይቁም"
+
+#: ../lib/network/netconnect.pm:414
+#, c-format
+msgid "Which of the following is your ISDN card?"
+msgstr "ከሚከተሉት የISDN ካርዶች ውስጥ የትኛው ነው የእርሶ?"
+
+#: ../lib/network/netconnect.pm:432
+#, c-format
+msgid ""
+"A CAPI driver is available for this modem. This CAPI driver can offer more "
+"capabilities than the free driver (like sending faxes). Which driver do you "
+"want to use?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:434 ../tools/drakconnect:113
+#, c-format
+msgid "Driver"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:446
+#, c-format
+msgid "Which protocol do you want to use?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:448 ../tools/drakconnect:113
+#: ../tools/drakconnect:305 ../tools/drakconnect:563 ../tools/drakids:252
+#: ../tools/drakvpn-old:839
+#, c-format
+msgid "Protocol"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid ""
+"Select your provider.\n"
+"If it is not listed, choose Unlisted."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:462 ../lib/network/netconnect.pm:558
+#, c-format
+msgid "Provider:"
+msgstr "አገልግሎት ሰጪ:"
+
+#: ../lib/network/netconnect.pm:471
+#, c-format
+msgid ""
+"Your modem is not supported by the system.\n"
+"Take a look at http://www.linmodems.org"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:490
+#, fuzzy, c-format
+msgid "Select the modem to configure:"
+msgstr "ለማስተካከል ሞዴም ይምረጡ:"
+
+#: ../lib/network/netconnect.pm:492
+#, c-format
+msgid "Modem"
+msgstr "ሞደም"
+
+#: ../lib/network/netconnect.pm:527
+#, c-format
+msgid "Please choose which serial port your modem is connected to."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:556
+#, c-format
+msgid "Select your provider:"
+msgstr "አግልግሎት ሰጪዎን ይምረጡ"
+
+#: ../lib/network/netconnect.pm:580
+#, fuzzy, c-format
+msgid "Dialup: account options"
+msgstr "ባለሁለት አቅጣጫ ምርጫዎች"
+
+#: ../lib/network/netconnect.pm:583
+#, c-format
+msgid "Connection name"
+msgstr "የግንኙነት ስም"
+
+#: ../lib/network/netconnect.pm:584
+#, c-format
+msgid "Phone number"
+msgstr "የስልክ ቁጥር"
+
+#: ../lib/network/netconnect.pm:585
+#, fuzzy, c-format
+msgid "Login ID"
+msgstr "መለያ አስገባ"
+
+#: ../lib/network/netconnect.pm:586 ../lib/network/vpn/vpnc.pm:56
+#: ../tools/drakinvictus:110
+#, c-format
+msgid "Password"
+msgstr "ሚስጢራዊ ቃል"
+
+#: ../lib/network/netconnect.pm:600 ../lib/network/netconnect.pm:633
+#, c-format
+msgid "Dialup: IP parameters"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:603
+#, c-format
+msgid "IP parameters"
+msgstr "IP መለኪያዎች"
+
+#: ../lib/network/netconnect.pm:605
+#, c-format
+msgid "Subnet mask"
+msgstr "Subnet mask"
+
+#: ../lib/network/netconnect.pm:617
+#, c-format
+msgid "Dialup: DNS parameters"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:620
+#, c-format
+msgid "DNS"
+msgstr "DNS"
+
+#: ../lib/network/netconnect.pm:621
+#, c-format
+msgid "Domain name"
+msgstr "የዶሜን ስም"
+
+#: ../lib/network/netconnect.pm:622 ../tools/drakconnect:996
+#, c-format
+msgid "First DNS Server (optional)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:623 ../tools/drakconnect:997
+#, c-format
+msgid "Second DNS Server (optional)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:624
+#, c-format
+msgid "Set hostname from IP"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:637
+#, c-format
+msgid "Gateway IP address"
+msgstr "የGateway IP አድራሻ"
+
+#: ../lib/network/netconnect.pm:670
+#, fuzzy, c-format
+msgid "Automatically at boot"
+msgstr "ቍጥር አሰጣጡን እንደገና በ...ላይ ጀምር፦"
+
+#: ../lib/network/netconnect.pm:672
+#, c-format
+msgid "By using Net Applet in the system tray"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:674
+#, c-format
+msgid "Manually (the interface would still be activated at boot)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:683
+#, fuzzy, c-format
+msgid "How do you want to dial this connection?"
+msgstr "ምርጫውን መሞከር ይፈልጋሉ?"
+
+#: ../lib/network/netconnect.pm:696
+#, c-format
+msgid "Do you want to try to connect to the Internet now?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:704 ../tools/drakconnect:1027
+#, c-format
+msgid "Testing your connection..."
+msgstr "ግንኙነትዎን በመሞከር ላይ..."
+
+#: ../lib/network/netconnect.pm:723
+#, c-format
+msgid "The system is now connected to the Internet."
+msgstr "ሲስተሙ አሁን ከኢንተርኔት ጋር ተገናኝቷል።"
+
+#: ../lib/network/netconnect.pm:724
+#, c-format
+msgid "For security reasons, it will be disconnected now."
+msgstr "ለድህንነት ሲባል፣ ግንኙነቱ አሁን ይቋረጣል።"
+
+#: ../lib/network/netconnect.pm:725
+#, c-format
+msgid ""
+"The system does not seem to be connected to the Internet.\n"
+"Try to reconfigure your connection."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:740
+#, c-format
+msgid ""
+"Congratulations, the network and Internet configuration is finished.\n"
+"\n"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:743
+#, c-format
+msgid ""
+"After this is done, we recommend that you restart your X environment to "
+"avoid any hostname-related problems."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:744
+#, c-format
+msgid ""
+"Problems occurred during configuration.\n"
+"Test your connection via net_monitor or mcc. If your connection does not "
+"work, you might want to relaunch the configuration."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:756
+#, c-format
+msgid "Sagem USB modem"
+msgstr "Sagem USB ሞዴም"
+
+#: ../lib/network/netconnect.pm:757 ../lib/network/netconnect.pm:758
+#, c-format
+msgid "Bewan modem"
+msgstr "Bewan ሞዴም"
+
+#: ../lib/network/netconnect.pm:759
+#, c-format
+msgid "ECI Hi-Focus modem"
+msgstr "ECI Hi-Focus ሞዴም"
+
+#: ../lib/network/netconnect.pm:760
+#, c-format
+msgid "LAN connection"
+msgstr "የቅርብ መረብ ግንኙነት"
+
+#: ../lib/network/netconnect.pm:761 ../tools/drakroam:29
+#, c-format
+msgid "Wireless connection"
+msgstr "ሽቦ አልባ ግንኙነት"
+
+#: ../lib/network/netconnect.pm:762
+#, c-format
+msgid "ADSL connection"
+msgstr "የADSL ግንኙነት"
+
+#: ../lib/network/netconnect.pm:763
+#, c-format
+msgid "Cable connection"
+msgstr "የኬብል ግንኙነት"
+
+#: ../lib/network/netconnect.pm:764
+#, c-format
+msgid "ISDN connection"
+msgstr "የISDN ግንኙነት"
+
+#: ../lib/network/netconnect.pm:765
+#, c-format
+msgid "Modem connection"
+msgstr "የሞዴም ግንኙነት"
+
+#: ../lib/network/netconnect.pm:766
+#, c-format
+msgid "DVB connection"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:768
+#, fuzzy, c-format
+msgid "(detected on port %s)"
+msgstr "መረጃ በ%s መጠቀሚያ ፕሮግራም ላይ"
+
+# -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#. -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#: ../lib/network/netconnect.pm:770
+#, fuzzy, c-format
+msgid "(detected %s)"
+msgstr "አውቶማቲካሊ ተፈልጎ የተገኘ"
+
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected)"
+msgstr "(ተገኝቷል)"
+
+#: ../lib/network/netconnect.pm:771
+#, c-format
+msgid "Network Configuration"
+msgstr "የመረብ ምርጫ"
+
+#: ../lib/network/netconnect.pm:772
+#, c-format
+msgid "Zeroconf hostname resolution"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:773
+#, c-format
+msgid ""
+"If desired, enter a Zeroconf hostname.\n"
+"This is the name your machine will use to advertise any of\n"
+"its shared resources that are not managed by the network.\n"
+"It is not necessary on most networks."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:777
+#, fuzzy, c-format
+msgid "Zeroconf Host name"
+msgstr "ህገ ወጥ የዶሴ ስም"
+
+#: ../lib/network/netconnect.pm:778
+#, c-format
+msgid "Zeroconf host name must not contain a ."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:779
+#, c-format
+msgid ""
+"Because you are doing a network installation, your network is already "
+"configured.\n"
+"Click on Ok to keep your configuration, or cancel to reconfigure your "
+"Internet & Network connection.\n"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:782
+#, c-format
+msgid "The network needs to be restarted. Do you want to restart it?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:783
+#, c-format
+msgid ""
+"A problem occurred while restarting the network: \n"
+"\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:784
+#, c-format
+msgid ""
+"We are now going to configure the %s connection.\n"
+"\n"
+"\n"
+"Press \"%s\" to continue."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:785
+#, c-format
+msgid "Configuration is complete, do you want to apply settings?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:786
+#, c-format
+msgid ""
+"You have configured multiple ways to connect to the Internet.\n"
+"Choose the one you want to use.\n"
+"\n"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:787
+#, c-format
+msgid "Internet connection"
+msgstr "የኢንተርኔት ግንኙነት"
+
+#: ../lib/network/netconnect.pm:789
+#, c-format
+msgid "Configuring network device %s (driver %s)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:790
+#, c-format
+msgid ""
+"The following protocols can be used to configure a LAN connection. Please "
+"choose the one you want to use."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:791
+#, c-format
+msgid ""
+"Please enter your host name.\n"
+"Your host name should be a fully-qualified host name,\n"
+"such as ``mybox.mylab.myco.com''.\n"
+"You may also enter the IP address of the gateway if you have one."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:796
+#, c-format
+msgid "Last but not least you can also type in your DNS server IP addresses."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:797
+#, c-format
+msgid "DNS server address should be in format 1.2.3.4"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:798 ../tools/drakconnect:689
+#, c-format
+msgid "Gateway address should be in format 1.2.3.4"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:799
+#, c-format
+msgid "Gateway device"
+msgstr "የGateway መሳሪያ"
+
+#: ../lib/network/netconnect.pm:813
+#, c-format
+msgid ""
+"An unexpected error has happened:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/network.pm:429
+#, c-format
+msgid "Proxies configuration"
+msgstr "የወኪሎች ምርጫ"
+
+#: ../lib/network/network.pm:430
+#, c-format
+msgid ""
+"Here you can set up your proxies configuration (eg: http://"
+"my_caching_server:8080)"
+msgstr ""
+
+#: ../lib/network/network.pm:431
+#, c-format
+msgid "HTTP proxy"
+msgstr "የHTTP ወኪል"
+
+#: ../lib/network/network.pm:432
+#, c-format
+msgid "Use HTTP proxy for HTTPS connections"
+msgstr ""
+
+#: ../lib/network/network.pm:433
+#, c-format
+msgid "HTTPS proxy"
+msgstr ""
+
+#: ../lib/network/network.pm:434
+#, c-format
+msgid "FTP proxy"
+msgstr "የFTP ወኪል"
+
+#: ../lib/network/network.pm:435
+#, fuzzy, c-format
+msgid "No proxy for (comma separated list):"
+msgstr "%d በነጠላ ሰረዝ የተለዩ ሐረጎች"
+
+#: ../lib/network/network.pm:440
+#, c-format
+msgid "Proxy should be http://..."
+msgstr "ወኪል http://... መሆን አለበት"
+
+#: ../lib/network/network.pm:441
+#, fuzzy, c-format
+msgid "Proxy should be http://... or https://..."
+msgstr "ወኪል http://... መሆን አለበት"
+
+#: ../lib/network/network.pm:442
+#, c-format
+msgid "URL should begin with 'ftp:' or 'http:'"
+msgstr "URL በ'ftp:' ወይም በ'http:' መጀመር አለበት"
+
+#: ../lib/network/shorewall.pm:61
+#, c-format
+msgid ""
+"Please select the interfaces that will be protected by the firewall.\n"
+"\n"
+"All interfaces directly connected to Internet should be selected,\n"
+"while interfaces connected to a local network may be unselected.\n"
+"\n"
+"Which interfaces should be protected?\n"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:136
+#, c-format
+msgid "Keep custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:137
+#, c-format
+msgid "Drop custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:142
+#, c-format
+msgid ""
+"Your firewall configuration has been manually edited and contains\n"
+"rules that may conflict with the configuration that has just been set up.\n"
+"What do you want to do?"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:134
+#, c-format
+msgid "Some components (%s) are required but aren't available for %s hardware."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:135
+#, c-format
+msgid "Some packages (%s) are required but aren't available."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:137
+#, c-format
+msgid ""
+"These packages can be found in Mandriva Club or in Mandriva commercial "
+"releases."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:138
+#, c-format
+msgid "The following component is missing: %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:140
+#, c-format
+msgid ""
+"The required files can also be installed from this URL:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:177 ../lib/network/thirdparty.pm:182
+#, c-format
+msgid "Use a floppy"
+msgstr "ፍሎፒ ተጠቀም"
+
+#: ../lib/network/thirdparty.pm:178 ../lib/network/thirdparty.pm:185
+#, c-format
+msgid "Use my Windows partition"
+msgstr "የWindows ክፋዬን ተጠቀም"
+
+#: ../lib/network/thirdparty.pm:179
+#, c-format
+msgid "Select file"
+msgstr "ፋይል ይምረጡ"
+
+#: ../lib/network/thirdparty.pm:190
+#, c-format
+msgid "Please select the firmware file (for example: %s)"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:214
+#, fuzzy, c-format
+msgid "Unable to find \"%s\" on your Windows system!"
+msgstr "ከሲስተሜ ውስጥ ፊደላትን አስወግድ"
+
+#: ../lib/network/thirdparty.pm:216
+#, c-format
+msgid "No Windows system has been detected!"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:226
+#, c-format
+msgid "Insert floppy"
+msgstr "ፍሎፒ ያስገቡ"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid ""
+"Insert a FAT formatted floppy in drive %s with %s in root directory and "
+"press %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid "Next"
+msgstr "የሚቀጥለው"
+
+#: ../lib/network/thirdparty.pm:237
+#, c-format
+msgid "Floppy access error, unable to mount device %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:319
+#, c-format
+msgid "Looking for required software and drivers..."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:330
+#, fuzzy, c-format
+msgid "Please wait, running device configuration commands..."
+msgstr "እባክዎ ይጠብቁ፣ መሳሪያዎችን ፈልጎ በማግኘት እና በማስተካከል ላይ ነው..."
+
+#: ../lib/network/vpn/openvpn.pm:107
+#, c-format
+msgid "X509 Public Key Infrastructure"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:108
+#, c-format
+msgid "Static Key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:115
+#, c-format
+msgid "Type"
+msgstr "አይነት"
+
+#. -PO: please don't translate the CA acronym
+#: ../lib/network/vpn/openvpn.pm:142
+#, c-format
+msgid "Certificate Authority (CA)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:148
+#, c-format
+msgid "Certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:154
+#, fuzzy, c-format
+msgid "Key"
+msgstr "ኬንያ"
+
+#: ../lib/network/vpn/openvpn.pm:160
+#, fuzzy, c-format
+msgid "TLS control channel key"
+msgstr "የግራ Control ቁልፍ"
+
+#: ../lib/network/vpn/openvpn.pm:167
+#, c-format
+msgid "Key direction"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:175
+#, c-format
+msgid "Authenticate using username and password"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:181
+#, c-format
+msgid "Check server certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:187
+#, c-format
+msgid "Cipher algorithm"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:191
+#, c-format
+msgid "Default"
+msgstr "ቀዳሚ"
+
+#: ../lib/network/vpn/openvpn.pm:195
+#, c-format
+msgid "Size of cipher key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:206
+#, fuzzy, c-format
+msgid "Get from server"
+msgstr "የቴልኔት ሰርቨር"
+
+#: ../lib/network/vpn/openvpn.pm:216
+#, fuzzy, c-format
+msgid "Gateway port"
+msgstr "Gateway"
+
+#: ../lib/network/vpn/openvpn.pm:227 ../tools/drakgw:176
+#, fuzzy, c-format
+msgid "Local IP address"
+msgstr "IP አድራሻ"
+
+#: ../lib/network/vpn/openvpn.pm:232
+#, fuzzy, c-format
+msgid "Remote IP address"
+msgstr "የGateway IP አድራሻ"
+
+#: ../lib/network/vpn/openvpn.pm:237
+#, c-format
+msgid "Use TCP protocol"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:243
+#, c-format
+msgid "Virtual network device type"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:250
+#, c-format
+msgid "Virtual network device number (optional)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:365
+#, c-format
+msgid "Starting connection.."
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:380
+#, c-format
+msgid "Please insert your token"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:9
+#, c-format
+msgid "Cisco VPN Concentrator"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:43
+#, fuzzy, c-format
+msgid "Group name"
+msgstr "የብድን መለያ ቁጥር"
+
+#: ../lib/network/vpn/vpnc.pm:47
+#, c-format
+msgid "Group secret"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:52
+#, c-format
+msgid "Username"
+msgstr "የተጠቃሚ ስም"
+
+#: ../lib/network/vpn/vpnc.pm:61
+#, c-format
+msgid "Use Cisco-UDP encapsulation"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:67
+#, c-format
+msgid "Use specific UDP port"
+msgstr ""
+
+#: ../tools/drakconnect:81
+#, fuzzy, c-format
+msgid "Network configuration (%d adapters)"
+msgstr "የቀይ ባርኔታ መረብ"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Gateway:"
+msgstr ""
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, fuzzy, c-format
+msgid "Interface:"
+msgstr "የተጠቃሚው እይታ"
+
+#: ../tools/drakconnect:97 ../tools/net_monitor:119
+#, c-format
+msgid "Wait please"
+msgstr "ይጠብቁ እባክዎ"
+
+#: ../tools/drakconnect:113 ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Interface"
+msgstr "የተጠቃሚው እይታ"
+
+#: ../tools/drakconnect:113
+#, c-format
+msgid "State"
+msgstr "ሁኔታ"
+
+#: ../tools/drakconnect:130
+#, c-format
+msgid "Hostname: "
+msgstr "የእንግዳ ተቀባይ ስም፦ "
+
+#: ../tools/drakconnect:132
+#, fuzzy, c-format
+msgid "Configure hostname..."
+msgstr "ፕሮግራሙን አስተካክል"
+
+#: ../tools/drakconnect:146 ../tools/drakconnect:850
+#, c-format
+msgid "LAN configuration"
+msgstr "የቅርብ መረብ ምርጫ"
+
+#: ../tools/drakconnect:151
+#, c-format
+msgid "Configure Local Area Network..."
+msgstr ""
+
+#: ../tools/drakconnect:157 ../tools/drakconnect:240 ../tools/draknfs:181
+#, c-format
+msgid "Help"
+msgstr "እርዳታ"
+
+#: ../tools/drakconnect:159 ../tools/drakconnect:241 ../tools/drakconnect:245
+#: ../tools/drakinvictus:140
+#, c-format
+msgid "Apply"
+msgstr "ተጠቀም"
+
+#: ../tools/drakconnect:161 ../tools/drakconnect:942 ../tools/drakconnect:1033
+#: ../tools/draknetprofile:106 ../tools/net_monitor:341
+#, c-format
+msgid "Cancel"
+msgstr "ተወው"
+
+#: ../tools/drakconnect:162 ../tools/drakconnect:857 ../tools/drakconnect:944
+#: ../tools/drakconnect:1034 ../tools/draknetprofile:108
+#: ../tools/net_monitor:342
+#, c-format
+msgid "Ok"
+msgstr "እሺ"
+
+#: ../tools/drakconnect:164 ../tools/drakconnect:636 ../tools/drakgw:359
+#: ../tools/drakroam:251 ../tools/drakroam:289 ../tools/draksambashare:208
+#, c-format
+msgid "Please wait"
+msgstr "እባክዎ ይጠብቁ"
+
+#: ../tools/drakconnect:166 ../tools/drakconnect:638
+#, c-format
+msgid "Please Wait... Applying the configuration"
+msgstr "እባክዎ ይጠብቁ... ምርጫውን በስራ ላይ አያዋለ ነው"
+
+#: ../tools/drakconnect:192
+#, c-format
+msgid "Manage connections"
+msgstr "ግንኙነቶችን ይቆጣጠሩ"
+
+#: ../tools/drakconnect:219 ../tools/drakroam:302
+#, c-format
+msgid "Device: "
+msgstr "መሳሪያ: "
+
+#: ../tools/drakconnect:302
+#, fuzzy, c-format
+msgid "IP configuration"
+msgstr "የማስተካከያው አራሚ"
+
+#: ../tools/drakconnect:337
+#, c-format
+msgid "DNS servers"
+msgstr ""
+
+#: ../tools/drakconnect:343
+#, fuzzy, c-format
+msgid "Search Domain"
+msgstr "የObjectDirectory ዶሜን"
+
+#: ../tools/drakconnect:351 ../tools/drakvpn-old:837
+#, c-format
+msgid "none"
+msgstr "ምንም"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "static"
+msgstr ""
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "DHCP"
+msgstr "DHCP"
+
+#: ../tools/drakconnect:434
+#, fuzzy, c-format
+msgid "Start at boot"
+msgstr "ቍጥር አሰጣጡን እንደገና በ...ላይ ጀምር፦"
+
+#: ../tools/drakconnect:516
+#, c-format
+msgid "Flow control"
+msgstr "የፍሰት ቁጥጥር"
+
+#: ../tools/drakconnect:517
+#, fuzzy, c-format
+msgid "Line termination"
+msgstr " መለያ መስመር፦"
+
+#: ../tools/drakconnect:528
+#, c-format
+msgid "Modem timeout"
+msgstr ""
+
+#: ../tools/drakconnect:532
+#, fuzzy, c-format
+msgid "Use lock file"
+msgstr "ፋይሉ በፊትም ነበር። የ-yes ምርጫን ተጠቀሙ።"
+
+#: ../tools/drakconnect:534
+#, c-format
+msgid "Wait for dialup tone before dialing"
+msgstr ""
+
+#: ../tools/drakconnect:537
+#, c-format
+msgid "Busy wait"
+msgstr "እባክዎ ይጠብቁ.."
+
+#: ../tools/drakconnect:542
+#, fuzzy, c-format
+msgid "Modem sound"
+msgstr "ድምፅ የለም"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Enable"
+msgstr "ይቻል"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Disable"
+msgstr "አይቻል"
+
+#: ../tools/drakconnect:592
+#, c-format
+msgid "Vendor"
+msgstr ""
+
+#: ../tools/drakconnect:593
+#, c-format
+msgid "Description"
+msgstr "መግለጫ"
+
+#: ../tools/drakconnect:594
+#, c-format
+msgid "Media class"
+msgstr ""
+
+#: ../tools/drakconnect:595
+#, fuzzy, c-format
+msgid "Module name"
+msgstr "የፋይል ስም አቅድ"
+
+#: ../tools/drakconnect:596
+#, fuzzy, c-format
+msgid "Mac Address"
+msgstr "ኢሜያል አድራሻ"
+
+#: ../tools/drakconnect:597
+#, c-format
+msgid "Bus"
+msgstr ""
+
+#: ../tools/drakconnect:598
+#, fuzzy, c-format
+msgid "Location on the bus"
+msgstr "መረጃ በ%s መጠቀሚያ ፕሮግራም ላይ"
+
+#: ../tools/drakconnect:685 ../tools/drakconnect:766 ../tools/drakconnect:952
+#, fuzzy, c-format
+msgid "No IP"
+msgstr "የማተሚያ IP"
+
+#: ../tools/drakconnect:686 ../tools/drakconnect:767
+#, fuzzy, c-format
+msgid "No Mask"
+msgstr "ፋይል የለም"
+
+#: ../tools/drakconnect:705 ../tools/drakgw:307
+#, c-format
+msgid ""
+"No ethernet network adapter has been detected on your system. Please run the "
+"hardware configuration tool."
+msgstr ""
+
+#: ../tools/drakconnect:714
+#, fuzzy, c-format
+msgid "Remove a network interface"
+msgstr "የአቢወርድ ቋንቋ፦"
+
+#: ../tools/drakconnect:718
+#, c-format
+msgid "Select the network interface to remove:"
+msgstr ""
+
+#: ../tools/drakconnect:750
+#, c-format
+msgid ""
+"An error occurred while deleting the \"%s\" network interface:\n"
+"\n"
+"%s"
+msgstr ""
+
+#: ../tools/drakconnect:751
+#, c-format
+msgid ""
+"Congratulations, the \"%s\" network interface has been successfully deleted"
+msgstr ""
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "up"
+msgstr "ወደላይ"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "down"
+msgstr "ወደታች"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Connected"
+msgstr "ተገናኝቷል"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Not connected"
+msgstr "አልተገናኘም"
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Disconnect..."
+msgstr "ግንኙነት አቋርጥ..."
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Connect..."
+msgstr ""
+
+#: ../tools/drakconnect:846
+#, fuzzy, c-format
+msgid "Deactivate now"
+msgstr "አሁኑኑ ይተላለፍ"
+
+#: ../tools/drakconnect:846
+#, fuzzy, c-format
+msgid "Activate now"
+msgstr "አሁኑኑ ይተላለፍ"
+
+#: ../tools/drakconnect:854
+#, c-format
+msgid ""
+"You do not have any configured interface.\n"
+"Configure them first by clicking on 'Configure'"
+msgstr ""
+
+#: ../tools/drakconnect:868
+#, c-format
+msgid "LAN Configuration"
+msgstr "የቅርብ መረብ ምርጫ"
+
+#: ../tools/drakconnect:880
+#, c-format
+msgid "Adapter %s: %s"
+msgstr ""
+
+#: ../tools/drakconnect:889
+#, c-format
+msgid "Boot Protocol"
+msgstr ""
+
+#: ../tools/drakconnect:890
+#, fuzzy, c-format
+msgid "Started on boot"
+msgstr "መረጃ በ%s መጠቀሚያ ፕሮግራም ላይ"
+
+#: ../tools/drakconnect:926
+#, c-format
+msgid ""
+"This interface has not been configured yet.\n"
+"Run the \"Add an interface\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+
+#: ../tools/drakconnect:974
+#, fuzzy, c-format
+msgid "Internet connection configuration"
+msgstr "የኢንተርኔት ሰዓትን ተጠቀም"
+
+#: ../tools/drakconnect:980 ../tools/net_applet:68
+#, c-format
+msgid ""
+"You do not have any configured Internet connection.\n"
+"Run the \"%s\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+
+#. -PO: here "Add Connection" should be translated the same was as in control-center
+#: ../tools/drakconnect:981 ../tools/net_applet:69
+#, fuzzy, c-format
+msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)"
+msgstr "የአቢወርድ ቋንቋ፦"
+
+#: ../tools/drakconnect:995
+#, fuzzy, c-format
+msgid "Host name (optional)"
+msgstr "ህገ ወጥ የዶሴ ስም"
+
+#: ../tools/drakconnect:998
+#, c-format
+msgid "Third DNS server (optional)"
+msgstr ""
+
+#: ../tools/drakconnect:1020
+#, fuzzy, c-format
+msgid "Internet Connection Configuration"
+msgstr "የኢንተርኔት ሰዓትን ተጠቀም"
+
+#: ../tools/drakconnect:1021
+#, fuzzy, c-format
+msgid "Internet access"
+msgstr "Name=ኢንተርኔት"
+
+#: ../tools/drakconnect:1023 ../tools/net_monitor:98
+#, fuzzy, c-format
+msgid "Connection type: "
+msgstr "የፋይሉ ዓይነት"
+
+#: ../tools/drakconnect:1026
+#, c-format
+msgid "Status:"
+msgstr "ሁኔታ፦"
+
+#: ../tools/drakconnect:1031
+#, c-format
+msgid "Parameters"
+msgstr "መለኪያዎች"
+
+#: ../tools/drakgw:71
+#, fuzzy, c-format
+msgid "Internet Connection Sharing"
+msgstr "የኢንተርኔት ሰዓትን ተጠቀም"
+
+#: ../tools/drakgw:75
+#, c-format
+msgid ""
+"You are about to configure your computer to share its Internet connection.\n"
+"With that feature, other computers on your local network will be able to use "
+"this computer's Internet connection.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using drakconnect "
+"before going any further.\n"
+"\n"
+"Note: you need a dedicated Network Adapter to set up a Local Area Network "
+"(LAN)."
+msgstr ""
+
+#: ../tools/drakgw:91
+#, c-format
+msgid ""
+"The setup of Internet Connection Sharing has already been done.\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakgw:95
+#, c-format
+msgid ""
+"The setup of Internet connection sharing has already been done.\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakgw:101
+#, fuzzy, c-format
+msgid "Reconfigure"
+msgstr "ተስተካክሏል"
+
+#: ../tools/drakgw:122
+#, c-format
+msgid "Please select the network interface directly connected to the internet."
+msgstr ""
+
+#: ../tools/drakgw:141
+#, c-format
+msgid ""
+"There is only one configured network adapter on your system:\n"
+"\n"
+"%s\n"
+"\n"
+"I am about to setup your Local Area Network with that adapter."
+msgstr ""
+
+#: ../tools/drakgw:152
+#, c-format
+msgid ""
+"Please choose what network adapter will be connected to your Local Area "
+"Network."
+msgstr ""
+
+#: ../tools/drakgw:173
+#, fuzzy, c-format
+msgid "Local Area Network settings"
+msgstr "የቀይ ባርኔታ መረብ"
+
+#: ../tools/drakgw:178
+#, fuzzy, c-format
+msgid "The internal domain name"
+msgstr "ህገ ወጥ የዶሴ ስም"
+
+#: ../tools/drakgw:184
+#, c-format
+msgid "Potential LAN address conflict found in current config of %s!\n"
+msgstr ""
+
+#: ../tools/drakgw:200
+#, fuzzy, c-format
+msgid "Domain Name Server (DNS) configuration"
+msgstr "ቀዳሚ ተጠሪ ይጠቀም"
+
+#: ../tools/drakgw:204
+#, c-format
+msgid "Use this gateway as domain name server"
+msgstr ""
+
+#: ../tools/drakgw:205
+#, fuzzy, c-format
+msgid "The DNS Server IP"
+msgstr "ቀዳሚ ተጠሪ ይጠቀም"
+
+#: ../tools/drakgw:232
+#, c-format
+msgid ""
+"DHCP Server Configuration.\n"
+"\n"
+"Here you can select different options for the DHCP server configuration.\n"
+"If you do not know the meaning of an option, simply leave it as it is."
+msgstr ""
+
+#: ../tools/drakgw:239
+#, fuzzy, c-format
+msgid "Use automatic configuration (DHCP)"
+msgstr "ራስ-ገዝ ትርጉሞች"
+
+#: ../tools/drakgw:240
+#, fuzzy, c-format
+msgid "The DHCP start range"
+msgstr "አዲስ ዝርዝር ጀምር"
+
+#: ../tools/drakgw:241
+#, fuzzy, c-format
+msgid "The DHCP end range"
+msgstr "አሁን ያለውን ጨዋታ ጨርስ"
+
+#: ../tools/drakgw:242
+#, c-format
+msgid "The default lease (in seconds)"
+msgstr ""
+
+#: ../tools/drakgw:243
+#, c-format
+msgid "The maximum lease (in seconds)"
+msgstr ""
+
+#: ../tools/drakgw:266
+#, c-format
+msgid "Proxy caching server (SQUID)"
+msgstr ""
+
+#: ../tools/drakgw:270
+#, c-format
+msgid "Use this gateway as proxy caching server"
+msgstr ""
+
+#: ../tools/drakgw:271
+#, c-format
+msgid "Admin mail"
+msgstr ""
+
+#: ../tools/drakgw:272
+#, fuzzy, c-format
+msgid "Visible hostname"
+msgstr "ህገ ወጥ የዶሴ ስም"
+
+#: ../tools/drakgw:273
+#, fuzzy, c-format
+msgid "Proxy port"
+msgstr "ፀባይ"
+
+#: ../tools/drakgw:274
+#, fuzzy, c-format
+msgid "Cache size (MB)"
+msgstr "የፊደል ቅርጽ መጠን፦"
+
+#: ../tools/drakgw:296
+#, fuzzy, c-format
+msgid "Broadcast printer information"
+msgstr "የቋሚ ዲስክ መረጃ"
+
+#: ../tools/drakgw:313
+#, c-format
+msgid "Internet Connection Sharing is now enabled."
+msgstr ""
+
+#: ../tools/drakgw:319
+#, c-format
+msgid "Internet Connection Sharing is now disabled."
+msgstr ""
+
+#: ../tools/drakgw:325
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"You may now share Internet connection with other computers on your Local "
+"Area Network, using automatic network configuration (DHCP) and\n"
+" a Transparent Proxy Cache server (SQUID)."
+msgstr ""
+
+#: ../tools/drakgw:359
+#, c-format
+msgid "Disabling servers..."
+msgstr ""
+
+#: ../tools/drakgw:373
+#, fuzzy, c-format
+msgid "Firewalling configuration detected!"
+msgstr "ተስተካክሎ የተቀመጠውን ባዕድ መነሻ ጥቀስ"
+
+#: ../tools/drakgw:374
+#, c-format
+msgid ""
+"Warning! An existing firewalling configuration has been detected. You may "
+"need some manual fixes after installation."
+msgstr ""
+
+#: ../tools/drakgw:379
+#, c-format
+msgid "Configuring..."
+msgstr ""
+
+#: ../tools/drakgw:380
+#, c-format
+msgid "Configuring firewall..."
+msgstr ""
+
+#: ../tools/drakhosts:100
+#, c-format
+msgid "Please add an host to be able to modify it."
+msgstr ""
+
+#: ../tools/drakhosts:110
+#, fuzzy, c-format
+msgid "Please modify information"
+msgstr "ዝርዝር መረጃ"
+
+#: ../tools/drakhosts:111
+#, fuzzy, c-format
+msgid "Please delete information"
+msgstr "ዝርዝር መረጃ"
+
+#: ../tools/drakhosts:112
+#, fuzzy, c-format
+msgid "Please add information"
+msgstr "ዝርዝር መረጃ"
+
+#: ../tools/drakhosts:116
+#, c-format
+msgid "IP address:"
+msgstr "የIP አድራሻ፦"
+
+#: ../tools/drakhosts:117
+#, c-format
+msgid "Host name:"
+msgstr "የእንግዳ ተቀባይ ስም፦"
+
+#: ../tools/drakhosts:118
+#, fuzzy, c-format
+msgid "Host Aliases:"
+msgstr "የእንግዳ ተቀባይ ስም"
+
+#: ../tools/drakhosts:122 ../tools/drakhosts:128 ../tools/draksambashare:209
+#: ../tools/draksambashare:230 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Error!"
+msgstr "ስህተት!"
+
+#: ../tools/drakhosts:122
+#, fuzzy, c-format
+msgid "Please enter a valid IP address."
+msgstr "የGateway IP አድራሻ"
+
+#: ../tools/drakhosts:128
+#, fuzzy, c-format
+msgid "Same IP is already in %s file."
+msgstr "%s አስቀድሞ ጥቅም ላይ ነው\n"
+
+#: ../tools/drakhosts:196
+#, fuzzy, c-format
+msgid "Host Aliases"
+msgstr "የእንግዳ ተቀባይ ስም"
+
+#: ../tools/drakhosts:206 ../tools/drakhosts:236
+#, fuzzy, c-format
+msgid "Manage hosts definitions"
+msgstr "ግንኙነቶችን ይቆጣጠሩ"
+
+#: ../tools/drakhosts:222 ../tools/drakhosts:249
+#, c-format
+msgid "Modify entry"
+msgstr ""
+
+#: ../tools/drakhosts:241 ../tools/draknfs:563 ../tools/draksambashare:1102
+#: ../tools/draksambashare:1133 ../tools/draksambashare:1164
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Add"
+msgstr "ጨምር"
+
+#: ../tools/drakhosts:242
+#, fuzzy, c-format
+msgid "Add entry"
+msgstr "ማተሚያ ይጨመር"
+
+#: ../tools/drakhosts:245
+#, c-format
+msgid "Failed to add host."
+msgstr ""
+
+#: ../tools/drakhosts:248 ../tools/draknfs:570 ../tools/draksambashare:1059
+#: ../tools/draksambashare:1104 ../tools/draksambashare:1135
+#: ../tools/draksambashare:1172
+#, c-format
+msgid "Modify"
+msgstr "ለውጥ"
+
+#: ../tools/drakhosts:252
+#, c-format
+msgid "Failed to Modify host."
+msgstr ""
+
+#: ../tools/drakhosts:255 ../tools/drakids:87 ../tools/drakids:96
+#: ../tools/draknfs:577 ../tools/draksambashare:1060
+#: ../tools/draksambashare:1112 ../tools/draksambashare:1143
+#: ../tools/draksambashare:1180 ../tools/drakvpn-old:253
+#: ../tools/drakvpn-old:391
+#, c-format
+msgid "Remove"
+msgstr "አስወግድ"
+
+#: ../tools/drakhosts:259
+#, c-format
+msgid "Failed to remove host."
+msgstr ""
+
+#: ../tools/drakhosts:262 ../tools/drakinvictus:141
+#: ../tools/draknetprofile:147 ../tools/drakroam:309 ../tools/net_applet:138
+#, c-format
+msgid "Quit"
+msgstr "ውጣ"
+
+#: ../tools/drakids:28
+#, fuzzy, c-format
+msgid "Allowed addresses"
+msgstr "ለሁሉም ተጠቃሚዎች ፍቀድ"
+
+#: ../tools/drakids:65 ../tools/drakids:181 ../tools/drakids:190
+#: ../tools/drakids:215 ../tools/drakids:224 ../tools/drakids:234
+#: ../tools/drakids:326 ../tools/net_applet:238 ../tools/net_applet:514
+#, fuzzy, c-format
+msgid "Unable to contact daemon"
+msgstr "ከአንጸባራቂ %s ጋር መገናኘት አልተቻለም"
+
+#: ../tools/drakids:74 ../tools/drakids:102
+#, c-format
+msgid "Log"
+msgstr "Log"
+
+#: ../tools/drakids:78 ../tools/drakids:97 ../tools/net_applet:659
+#, fuzzy, c-format
+msgid "Allow"
+msgstr "ሁሉንም"
+
+#: ../tools/drakids:79 ../tools/drakids:88 ../tools/net_applet:660
+#, c-format
+msgid "Block"
+msgstr ""
+
+#: ../tools/drakids:80 ../tools/drakids:89 ../tools/drakids:98
+#: ../tools/drakids:109 ../tools/drakids:122 ../tools/drakids:130
+#: ../tools/draknfs:186 ../tools/net_monitor:120
+#, c-format
+msgid "Close"
+msgstr "ዝጋ"
+
+#: ../tools/drakids:83
+#, fuzzy, c-format
+msgid "Allowed services"
+msgstr "ለሁሉም ተጠቃሚዎች ፍቀድ"
+
+#: ../tools/drakids:92
+#, fuzzy, c-format
+msgid "Blocked services"
+msgstr "ሁሉንም የምስል ፋይሎች"
+
+#: ../tools/drakids:106
+#, fuzzy, c-format
+msgid "Clear logs"
+msgstr "ሁሉንም ሰርዝ"
+
+#: ../tools/drakids:107 ../tools/drakids:112 ../tools/net_applet:602
+#, c-format
+msgid "Blacklist"
+msgstr ""
+
+#: ../tools/drakids:108 ../tools/drakids:125 ../tools/net_applet:607
+#, c-format
+msgid "Whitelist"
+msgstr ""
+
+#: ../tools/drakids:116
+#, fuzzy, c-format
+msgid "Remove from blacklist"
+msgstr "ከLVM አስወግድ"
+
+#: ../tools/drakids:117
+#, c-format
+msgid "Move to whitelist"
+msgstr ""
+
+#: ../tools/drakids:129
+#, fuzzy, c-format
+msgid "Remove from whitelist"
+msgstr "ከLVM አስወግድ"
+
+#: ../tools/drakids:247
+#, c-format
+msgid "Date"
+msgstr "ቀን"
+
+#: ../tools/drakids:248
+#, fuzzy, c-format
+msgid "Attacker"
+msgstr "ያለ ዝርዝሮች"
+
+#: ../tools/drakids:249
+#, fuzzy, c-format
+msgid "Attack type"
+msgstr "ዓይነት፦"
+
+#: ../tools/drakids:250 ../tools/drakids:283
+#, fuzzy, c-format
+msgid "Service"
+msgstr "አገልግሎት"
+
+#: ../tools/drakids:251
+#, fuzzy, c-format
+msgid "Network interface"
+msgstr "የተጠቃሚው እይታ"
+
+#: ../tools/drakids:282
+#, c-format
+msgid "Application"
+msgstr "መጠቀሚያ ፕሮግራም"
+
+#: ../tools/drakids:284
+#, c-format
+msgid "Status"
+msgstr "ሁኔታ"
+
+#: ../tools/drakids:286
+#, fuzzy, c-format
+msgid "Allowed"
+msgstr "ሁሉንም"
+
+#: ../tools/drakids:287
+#, c-format
+msgid "Blocked"
+msgstr ""
+
+#: ../tools/drakinvictus:36
+#, c-format
+msgid "Invictus Firewall"
+msgstr ""
+
+#: ../tools/drakinvictus:53
+#, fuzzy, c-format
+msgid "Start as master"
+msgstr "መረጃ በ%s መጠቀሚያ ፕሮግራም ላይ"
+
+#: ../tools/drakinvictus:72
+#, fuzzy, c-format
+msgid "A password is required."
+msgstr "ሚስጥር-ቃል ያስፈልጋል"
+
+#: ../tools/drakinvictus:100
+#, c-format
+msgid ""
+"This tool allows to set up network interfaces failover and firewall "
+"replication."
+msgstr ""
+
+#: ../tools/drakinvictus:102
+#, c-format
+msgid "Network redundancy (leave empty if interface is not used)"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Real address"
+msgstr "ኢሜያል አድራሻ"
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Virtual shared address"
+msgstr "የቡድኑ ኤ-መልዕክት አድራሻ"
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual ID"
+msgstr ""
+
+#: ../tools/drakinvictus:114
+#, fuzzy, c-format
+msgid "Firewall replication"
+msgstr "የተመረጠውን አጥፉ"
+
+#: ../tools/drakinvictus:116
+#, c-format
+msgid "Synchronize firewall conntrack tables"
+msgstr ""
+
+#: ../tools/drakinvictus:123
+#, fuzzy, c-format
+msgid "Synchronization network interface"
+msgstr "የመስሪያውን ምልክት"
+
+#: ../tools/drakinvictus:132
+#, fuzzy, c-format
+msgid "Connection mark bit"
+msgstr "ግንኙነት"
+
+#: ../tools/draknetprofile:36
+#, fuzzy, c-format
+msgid "Network profiles"
+msgstr "ምርጫዎችን አስገባ"
+
+#: ../tools/draknetprofile:67
+#, fuzzy, c-format
+msgid "Profile"
+msgstr "ወኪሎች"
+
+#: ../tools/draknetprofile:99
+#, fuzzy, c-format
+msgid "New profile..."
+msgstr "እንደ...ያስቀምጡ"
+
+#: ../tools/draknetprofile:102
+#, c-format
+msgid ""
+"Name of the profile to create (the new profile is created as a copy of the "
+"current one):"
+msgstr ""
+
+#: ../tools/draknetprofile:113
+#, c-format
+msgid "The \"%s\" profile already exists!"
+msgstr ""
+
+#: ../tools/draknetprofile:129
+#, c-format
+msgid "You can not delete the default profile"
+msgstr ""
+
+#: ../tools/draknetprofile:131
+#, c-format
+msgid "You can not delete the current profile"
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid ""
+"This tool allows to activate an existing network profile, and to manage "
+"(clone, delete) profiles."
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid "To modify a profile, you have to activate it first."
+msgstr ""
+
+#: ../tools/draknetprofile:144
+#, c-format
+msgid "Activate"
+msgstr "አስጀምር"
+
+#: ../tools/draknetprofile:145
+#, fuzzy, c-format
+msgid "Clone"
+msgstr "አገናኝ"
+
+#: ../tools/draknetprofile:146
+#, c-format
+msgid "Delete"
+msgstr "አጥፋ"
+
+#: ../tools/draknfs:41
+#, c-format
+msgid "map root user as anonymous"
+msgstr ""
+
+#: ../tools/draknfs:42
+#, c-format
+msgid "map all users to anonymous user"
+msgstr ""
+
+#: ../tools/draknfs:43
+#, c-format
+msgid "No user UID mapping"
+msgstr ""
+
+#: ../tools/draknfs:44
+#, c-format
+msgid "allow real remote root access"
+msgstr ""
+
+#: ../tools/draknfs:58 ../tools/draknfs:59 ../tools/draknfs:60
+#: ../tools/draksambashare:161 ../tools/draksambashare:162
+#: ../tools/draksambashare:163
+#, c-format
+msgid "/_File"
+msgstr "/ፋይል (_F)"
+
+#: ../tools/draknfs:59 ../tools/draksambashare:162
+#, c-format
+msgid "/_Write conf"
+msgstr ""
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "/_Quit"
+msgstr "/ውጣ (_Q)"
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "<control>Q"
+msgstr "<control>Q"
+
+#: ../tools/draknfs:63 ../tools/draknfs:64 ../tools/draknfs:65
+#, fuzzy, c-format
+msgid "/_NFS Server"
+msgstr "DNS ሰርቨር 1"
+
+#: ../tools/draknfs:64 ../tools/draksambashare:166
+#, c-format
+msgid "/_Restart"
+msgstr ""
+
+#: ../tools/draknfs:65 ../tools/draksambashare:167
+#, c-format
+msgid "/R_eload"
+msgstr ""
+
+#: ../tools/draknfs:84
+#, fuzzy, c-format
+msgid "NFS server"
+msgstr "DNS ሰርቨር 1"
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "Restarting/Reloading NFS server..."
+msgstr ""
+
+#: ../tools/draknfs:85
+#, c-format
+msgid "Error Restarting/Reloading NFS server"
+msgstr ""
+
+#: ../tools/draknfs:101 ../tools/draksambashare:225
+#, fuzzy, c-format
+msgid "Directory Selection"
+msgstr "አቅጣጫ"
+
+#: ../tools/draknfs:106 ../tools/draksambashare:230
+#, c-format
+msgid "Should be a directory."
+msgstr ""
+
+#: ../tools/draknfs:137
+#, c-format
+msgid ""
+"<span weight=\"bold\">NFS clients</span> may be specified in a number of "
+"ways:\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">single host:</span> a host either by an "
+"abbreviated name recognized be the resolver, fully qualified domain name, or "
+"an IP address\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">netgroups:</span> NIS netgroups may be given "
+"as @group.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">wildcards:</span> machine names may contain "
+"the wildcard characters * and ?. For instance: *.cs.foo.edu matches all "
+"hosts in the domain cs.foo.edu.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">IP networks:</span> you can also export "
+"directories to all hosts on an IP (sub-)network simultaneously. for example, "
+"either `/255.255.252.0' or `/22' appended to the network base address "
+"result.\n"
+msgstr ""
+
+#: ../tools/draknfs:152
+#, c-format
+msgid ""
+"<span weight=\"bold\">User ID options</span>\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map root user as anonymous:</span> map "
+"requests from uid/gid 0 to the anonymous uid/gid (root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">allow real remote root access:</span> turn "
+"off root squashing. This option is mainly useful for diskless clients "
+"(no_root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map all users to anonymous user:</span> map "
+"all uids and gids to the anonymous user (all_squash). Useful for NFS-"
+"exported public FTP directories, news spool directories, etc. The opposite "
+"option is no user UID mapping (no_all_squash), which is the default "
+"setting.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">anonuid and anongid:</span> explicitly set "
+"the uid and gid of the anonymous account.\n"
+msgstr ""
+
+#: ../tools/draknfs:168
+#, c-format
+msgid "Synchronous access:"
+msgstr ""
+
+#: ../tools/draknfs:169
+#, fuzzy, c-format
+msgid "Secured Connection:"
+msgstr "የኢንተርኔት ግንኙነት"
+
+#: ../tools/draknfs:170
+#, c-format
+msgid "Read-Only share:"
+msgstr ""
+
+#: ../tools/draknfs:172
+#, c-format
+msgid "Advanced Options"
+msgstr ""
+
+#: ../tools/draknfs:173
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> this option requires that requests "
+"originate on an internet port less than IPPORT_RESERVED (1024). This option "
+"is on by default."
+msgstr ""
+
+#: ../tools/draknfs:174
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> allow either only read or both "
+"read and write requests on this NFS volume. The default is to disallow any "
+"request which changes the filesystem. This can also be made explicit by "
+"using this option."
+msgstr ""
+
+#: ../tools/draknfs:175
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> disallows the NFS server to "
+"violate the NFS protocol and to reply to requests before any changes made by "
+"these requests have been committed to stable storage (e.g. disc drive)."
+msgstr ""
+
+#: ../tools/draknfs:180 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Information"
+msgstr "መረጃ"
+
+#: ../tools/draknfs:260
+#, c-format
+msgid "Directory"
+msgstr "ዶሴ"
+
+#: ../tools/draknfs:264
+#, c-format
+msgid "Draknfs entry"
+msgstr ""
+
+#: ../tools/draknfs:273
+#, c-format
+msgid "Please add an NFS share to be able to modify it."
+msgstr ""
+
+#: ../tools/draknfs:357
+#, c-format
+msgid "NFS directory"
+msgstr ""
+
+#: ../tools/draknfs:358 ../tools/draksambashare:361
+#: ../tools/draksambashare:570 ../tools/draksambashare:749
+#, c-format
+msgid "Directory:"
+msgstr "ዶሴ:"
+
+#: ../tools/draknfs:359
+#, fuzzy, c-format
+msgid "Host access"
+msgstr "የእንግዳ ተቀባይ ስም"
+
+#: ../tools/draknfs:360
+#, c-format
+msgid "Access:"
+msgstr ""
+
+#: ../tools/draknfs:361
+#, c-format
+msgid "User ID Mapping"
+msgstr ""
+
+#: ../tools/draknfs:362
+#, c-format
+msgid "User ID:"
+msgstr ""
+
+#: ../tools/draknfs:363
+#, c-format
+msgid "Anonymous user ID:"
+msgstr ""
+
+#: ../tools/draknfs:364
+#, c-format
+msgid "Anonymous Group ID:"
+msgstr ""
+
+#: ../tools/draknfs:400
+#, c-format
+msgid "Please specify a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:402
+#, c-format
+msgid "Can't create this directory."
+msgstr ""
+
+#: ../tools/draknfs:405
+#, c-format
+msgid "You must specify hosts access."
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Share Directory"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Hosts Wildcard"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "General Options"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Custom Options"
+msgstr ""
+
+#: ../tools/draknfs:497 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Please enter a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:504
+#, c-format
+msgid "Please use the modify button to set right access."
+msgstr ""
+
+#: ../tools/draknfs:519
+#, c-format
+msgid "Manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:558
+#, c-format
+msgid "DrakNFS manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:567
+#, c-format
+msgid "Failed to add NFS share."
+msgstr ""
+
+#: ../tools/draknfs:574
+#, c-format
+msgid "Failed to Modify NFS share."
+msgstr ""
+
+#: ../tools/draknfs:581
+#, c-format
+msgid "Failed to remove an NFS share."
+msgstr ""
+
+#: ../tools/drakproxy:36
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr ""
+
+#: ../tools/drakroam:61
+#, fuzzy, c-format
+msgid "No device found"
+msgstr "ምንም ጽሑፍ አልተገኘም"
+
+#: ../tools/drakroam:86 ../tools/drakroam:217
+#, fuzzy, c-format
+msgid "Please enter settings for network"
+msgstr "ዝርዝር መረጃ"
+
+#: ../tools/drakroam:115
+#, c-format
+msgid "SSID"
+msgstr ""
+
+#: ../tools/drakroam:116
+#, c-format
+msgid "Signal strength"
+msgstr ""
+
+#: ../tools/drakroam:118
+#, c-format
+msgid "Encryption"
+msgstr "አገለባበጥ"
+
+#: ../tools/drakroam:131
+#, c-format
+msgid "Hostname changed to \"%s\""
+msgstr ""
+
+#: ../tools/drakroam:251
+#, fuzzy, c-format
+msgid "Connecting..."
+msgstr "ግንኙነት"
+
+#: ../tools/drakroam:273
+#, fuzzy, c-format
+msgid "Disconnect"
+msgstr "ግንኙነት አቋርጥ..."
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Connect"
+msgstr "አገናኝ"
+
+#: ../tools/drakroam:289
+#, fuzzy, c-format
+msgid "Disconnecting..."
+msgstr "ግንኙነት አቋርጥ..."
+
+#: ../tools/drakroam:306
+#, c-format
+msgid "Configure"
+msgstr "ለውጥ"
+
+#: ../tools/drakroam:308
+#, c-format
+msgid "Refresh"
+msgstr "አድስ"
+
+#: ../tools/draksambashare:63
+#, c-format
+msgid "User name"
+msgstr "የተጠቃሚ ስም"
+
+#: ../tools/draksambashare:70
+#, c-format
+msgid "Share name"
+msgstr "የጋራ ስም"
+
+#: ../tools/draksambashare:71
+#, fuzzy, c-format
+msgid "Share directory"
+msgstr "ዶሴ አይደለም"
+
+#: ../tools/draksambashare:72 ../tools/draksambashare:105
+#, fuzzy, c-format
+msgid "Comment"
+msgstr "ትእዛዝ"
+
+#: ../tools/draksambashare:73 ../tools/draksambashare:106
+#, fuzzy, c-format
+msgid "Browseable"
+msgstr "ቃኝ"
+
+#: ../tools/draksambashare:74
+#, c-format
+msgid "Public"
+msgstr ""
+
+#: ../tools/draksambashare:75 ../tools/draksambashare:111
+#, fuzzy, c-format
+msgid "Writable"
+msgstr "ይጻፍ"
+
+#: ../tools/draksambashare:76 ../tools/draksambashare:152
+#, fuzzy, c-format
+msgid "Create mask"
+msgstr "ፍጠር"
+
+#: ../tools/draksambashare:77 ../tools/draksambashare:153
+#, fuzzy, c-format
+msgid "Directory mask"
+msgstr "አኃዞች (ከክፍተት ጋር)"
+
+#: ../tools/draksambashare:78
+#, fuzzy, c-format
+msgid "Read list"
+msgstr "አንብብ"
+
+#: ../tools/draksambashare:79 ../tools/draksambashare:112
+#: ../tools/draksambashare:584
+#, fuzzy, c-format
+msgid "Write list"
+msgstr "ይጻፍ"
+
+#: ../tools/draksambashare:80 ../tools/draksambashare:144
+#, fuzzy, c-format
+msgid "Admin users"
+msgstr "ተጠቃሚ ጨምር"
+
+#: ../tools/draksambashare:81 ../tools/draksambashare:145
+#, fuzzy, c-format
+msgid "Valid users"
+msgstr "ተጠቃሚ ጨምር"
+
+#: ../tools/draksambashare:82
+#, fuzzy, c-format
+msgid "Inherit Permissions"
+msgstr "ፈቃዶች"
+
+#: ../tools/draksambashare:83 ../tools/draksambashare:146
+#, fuzzy, c-format
+msgid "Hide dot files"
+msgstr "ፋይሎች ደብቅ"
+
+#: ../tools/draksambashare:84 ../tools/draksambashare:147
+#, c-format
+msgid "Hide files"
+msgstr "ፋይሎች ደብቅ"
+
+#: ../tools/draksambashare:85 ../tools/draksambashare:151
+#, fuzzy, c-format
+msgid "Preserve case"
+msgstr "ምርጫዎች"
+
+#: ../tools/draksambashare:86
+#, fuzzy, c-format
+msgid "Force create mode"
+msgstr "ማተሚያው ሞዴል"
+
+#: ../tools/draksambashare:87
+#, fuzzy, c-format
+msgid "Force group"
+msgstr "አዲስ መድረክ"
+
+#: ../tools/draksambashare:88 ../tools/draksambashare:150
+#, fuzzy, c-format
+msgid "Default case"
+msgstr "የተጠቃሚ ስም"
+
+#: ../tools/draksambashare:103
+#, c-format
+msgid "Printer name"
+msgstr "የማተሚያ ስም"
+
+#: ../tools/draksambashare:104
+#, c-format
+msgid "Path"
+msgstr "መተላለፊያ"
+
+#: ../tools/draksambashare:107 ../tools/draksambashare:576
+#, fuzzy, c-format
+msgid "Printable"
+msgstr "ይቻል"
+
+#: ../tools/draksambashare:108
+#, fuzzy, c-format
+msgid "Print Command"
+msgstr "ትእዛዝ"
+
+#: ../tools/draksambashare:109
+#, fuzzy, c-format
+msgid "LPQ command"
+msgstr "ትእዛዝ"
+
+#: ../tools/draksambashare:110
+#, c-format
+msgid "Guest ok"
+msgstr ""
+
+#: ../tools/draksambashare:113 ../tools/draksambashare:154
+#: ../tools/draksambashare:585
+#, fuzzy, c-format
+msgid "Inherit permissions"
+msgstr "ፈቃዶች"
+
+#: ../tools/draksambashare:114
+#, c-format
+msgid "Printing"
+msgstr "በማተም ላይ"
+
+#: ../tools/draksambashare:115
+#, fuzzy, c-format
+msgid "Create mode"
+msgstr "የካርድ ሞዴል፦"
+
+#: ../tools/draksambashare:116
+#, fuzzy, c-format
+msgid "Use client driver"
+msgstr "የቴልኔት ሰርቨር"
+
+#: ../tools/draksambashare:142
+#, fuzzy, c-format
+msgid "Read List"
+msgstr "ከዝርዝር አጥፋ (_R)"
+
+#: ../tools/draksambashare:143
+#, fuzzy, c-format
+msgid "Write List"
+msgstr "ይጻፍ"
+
+#: ../tools/draksambashare:148
+#, fuzzy, c-format
+msgid "Force Group"
+msgstr "የውይይት መድረክ"
+
+#: ../tools/draksambashare:149
+#, c-format
+msgid "Force create group"
+msgstr ""
+
+#: ../tools/draksambashare:165 ../tools/draksambashare:166
+#: ../tools/draksambashare:167
+#, fuzzy, c-format
+msgid "/_Samba Server"
+msgstr "የመረብ ሰርቨር"
+
+#: ../tools/draksambashare:169 ../tools/draksambashare:170
+#, fuzzy, c-format
+msgid "/_About"
+msgstr "ይቁም"
+
+#: ../tools/draksambashare:169
+#, c-format
+msgid "/_Report Bug"
+msgstr "/የሶፍትዌርን ችግር ዘግብ (_R)"
+
+#: ../tools/draksambashare:170
+#, c-format
+msgid "/About..."
+msgstr ""
+
+#: ../tools/draksambashare:173
+#, c-format
+msgid "Draksambashare"
+msgstr ""
+
+#: ../tools/draksambashare:175
+#, c-format
+msgid "Copyright (C) %s by Mandriva"
+msgstr ""
+
+#: ../tools/draksambashare:177
+#, c-format
+msgid "This is a simple tool to easily manage Samba configuration."
+msgstr ""
+
+#: ../tools/draksambashare:179
+#, fuzzy, c-format
+msgid "Mandriva Linux"
+msgstr "Mandriva Online"
+
+#. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+#: ../tools/draksambashare:184
+#, c-format
+msgid "_: Translator(s) name(s) & email(s)\n"
+msgstr "Alemayehu <alemayehu@gmx.at>\n"
+
+#: ../tools/draksambashare:208
+#, c-format
+msgid "Restarting/Reloading Samba server..."
+msgstr ""
+
+#: ../tools/draksambashare:209
+#, c-format
+msgid "Error Restarting/Reloading Samba server"
+msgstr ""
+
+#: ../tools/draksambashare:349 ../tools/draksambashare:549
+#: ../tools/draksambashare:670
+#, c-format
+msgid "Open"
+msgstr "ክፈት"
+
+#: ../tools/draksambashare:352
+#, c-format
+msgid "DrakSamba add entry"
+msgstr ""
+
+#: ../tools/draksambashare:356
+#, fuzzy, c-format
+msgid "Add a share"
+msgstr "ሰነዶችን ጨምር"
+
+#: ../tools/draksambashare:359
+#, fuzzy, c-format
+msgid "Name of the share:"
+msgstr "የምስክር ፀባይ"
+
+#: ../tools/draksambashare:360 ../tools/draksambashare:569
+#: ../tools/draksambashare:750
+#, fuzzy, c-format
+msgid "Comment:"
+msgstr "ትእዛዝ"
+
+#: ../tools/draksambashare:372
+#, c-format
+msgid ""
+"Share with the same name already exist or share name empty, please choose "
+"another name."
+msgstr ""
+
+#: ../tools/draksambashare:379
+#, c-format
+msgid "Can't create the directory, please enter a correct path."
+msgstr ""
+
+#: ../tools/draksambashare:382 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Please enter a Comment for this share."
+msgstr ""
+
+#: ../tools/draksambashare:413
+#, c-format
+msgid "pdf-gen - a PDF generator"
+msgstr ""
+
+#: ../tools/draksambashare:414
+#, c-format
+msgid "printers - all printers available"
+msgstr ""
+
+#: ../tools/draksambashare:418
+#, c-format
+msgid "Add Special Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:421
+#, c-format
+msgid ""
+"Goal of this wizard is to easily create a new special printer Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:428
+#, c-format
+msgid "A PDF generator already exists."
+msgstr ""
+
+#: ../tools/draksambashare:452
+#, c-format
+msgid "Printers and print$ already exist."
+msgstr ""
+
+#: ../tools/draksambashare:502
+#, c-format
+msgid "Congratulations"
+msgstr "እንኳን ደስ ያለዎ!"
+
+#: ../tools/draksambashare:503
+#, c-format
+msgid "The wizard successfully added the printer Samba share"
+msgstr ""
+
+#: ../tools/draksambashare:518
+#, c-format
+msgid "Failed to add printers."
+msgstr ""
+
+#: ../tools/draksambashare:533
+#, c-format
+msgid "Please add or select a Samba printer share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:552
+#, c-format
+msgid "DrakSamba Printers entry"
+msgstr ""
+
+#: ../tools/draksambashare:565
+#, c-format
+msgid "Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:568
+#, c-format
+msgid "Printer name:"
+msgstr ""
+
+#: ../tools/draksambashare:574 ../tools/draksambashare:755
+#, fuzzy, c-format
+msgid "Writable:"
+msgstr "ይጻፍ"
+
+#: ../tools/draksambashare:575 ../tools/draksambashare:756
+#, fuzzy, c-format
+msgid "Browseable:"
+msgstr "ቃኝ"
+
+#: ../tools/draksambashare:580
+#, c-format
+msgid "Advanced options"
+msgstr ""
+
+#: ../tools/draksambashare:582
+#, c-format
+msgid "Printer access"
+msgstr ""
+
+#: ../tools/draksambashare:586
+#, c-format
+msgid "Guest ok:"
+msgstr ""
+
+#: ../tools/draksambashare:587
+#, fuzzy, c-format
+msgid "Create mode:"
+msgstr "የካርድ ሞዴል፦"
+
+#: ../tools/draksambashare:591
+#, c-format
+msgid "Printer command"
+msgstr ""
+
+#: ../tools/draksambashare:593
+#, c-format
+msgid "Print command:"
+msgstr ""
+
+#: ../tools/draksambashare:594
+#, fuzzy, c-format
+msgid "LPQ command:"
+msgstr "ትእዛዝ"
+
+#: ../tools/draksambashare:595
+#, fuzzy, c-format
+msgid "Printing:"
+msgstr "ማስጠንቀቂያ"
+
+#: ../tools/draksambashare:611
+#, c-format
+msgid "create mode should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:673
+#, c-format
+msgid "DrakSamba entry"
+msgstr ""
+
+#: ../tools/draksambashare:678
+#, c-format
+msgid "Please add or select a Samba share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:701
+#, fuzzy, c-format
+msgid "Samba user access"
+msgstr "የሳምባ ተጠሪ"
+
+#: ../tools/draksambashare:709
+#, fuzzy, c-format
+msgid "Mask options"
+msgstr "መሠረታዊ ምርጫዎች"
+
+#: ../tools/draksambashare:723
+#, fuzzy, c-format
+msgid "Display options"
+msgstr "ምርጫዎችን ይግለጹ"
+
+#: ../tools/draksambashare:745
+#, fuzzy, c-format
+msgid "Samba share directory"
+msgstr "ዶሴ አይደለም"
+
+#: ../tools/draksambashare:748
+#, fuzzy, c-format
+msgid "Share name:"
+msgstr "የጋራ ስም"
+
+#: ../tools/draksambashare:754
+#, c-format
+msgid "Public:"
+msgstr ""
+
+#: ../tools/draksambashare:778
+#, c-format
+msgid ""
+"Create mask, create mode and directory mask should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:785
+#, c-format
+msgid "Please create this Samba user: %s"
+msgstr ""
+
+#: ../tools/draksambashare:889
+#, c-format
+msgid "Add Samba user"
+msgstr ""
+
+#: ../tools/draksambashare:904
+#, fuzzy, c-format
+msgid "User information"
+msgstr "የWindows ክፋዬን ተጠቀም"
+
+#: ../tools/draksambashare:906
+#, c-format
+msgid "User name:"
+msgstr "የተጠቃሚ ስም፦"
+
+#: ../tools/draksambashare:907
+#, c-format
+msgid "Password:"
+msgstr "ሚስጢራዊ ቃል"
+
+#: ../tools/draksambashare:1021
+#, fuzzy, c-format
+msgid "Manage Samba configuration"
+msgstr "ፈጣን ደብዳቤ"
+
+#: ../tools/draksambashare:1109
+#, c-format
+msgid "Failed to Modify Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1118
+#, c-format
+msgid "Failed to remove a Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1125
+#, c-format
+msgid "File share"
+msgstr ""
+
+#: ../tools/draksambashare:1140
+#, c-format
+msgid "Failed to Modify."
+msgstr ""
+
+#: ../tools/draksambashare:1149
+#, c-format
+msgid "Failed to remove."
+msgstr ""
+
+#: ../tools/draksambashare:1156
+#, c-format
+msgid "Printers"
+msgstr "አታሚዎች"
+
+#: ../tools/draksambashare:1168
+#, c-format
+msgid "Failed to add user."
+msgstr ""
+
+#: ../tools/draksambashare:1177
+#, c-format
+msgid "Failed to change user password."
+msgstr ""
+
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Failed to delete user."
+msgstr ""
+
+#: ../tools/draksambashare:1194
+#, c-format
+msgid "Userdrake"
+msgstr "Userdrake"
+
+#: ../tools/draksambashare:1202
+#, c-format
+msgid "Samba Users"
+msgstr ""
+
+#: ../tools/draksambashare:1211
+#, c-format
+msgid "DrakSamba manage Samba shares"
+msgstr ""
+
+#: ../tools/drakvpn-old:65
+#, c-format
+msgid "DrakVPN"
+msgstr ""
+
+#: ../tools/drakvpn-old:87
+#, c-format
+msgid "The VPN connection is enabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:88
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:93
+#, c-format
+msgid "disable"
+msgstr "አይቻል"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119
+#, c-format
+msgid "reconfigure"
+msgstr ""
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119 ../tools/drakvpn-old:432
+#, c-format
+msgid "dismiss"
+msgstr ""
+
+#: ../tools/drakvpn-old:97
+#, c-format
+msgid "Disabling VPN..."
+msgstr ""
+
+#: ../tools/drakvpn-old:106
+#, c-format
+msgid "The VPN connection is now disabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:113
+#, c-format
+msgid "VPN connection currently disabled"
+msgstr ""
+
+#: ../tools/drakvpn-old:114
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:119
+#, c-format
+msgid "enable"
+msgstr "ይቻል"
+
+#: ../tools/drakvpn-old:127
+#, c-format
+msgid "Enabling VPN..."
+msgstr ""
+
+#: ../tools/drakvpn-old:133
+#, c-format
+msgid "The VPN connection is now enabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:147 ../tools/drakvpn-old:164
+#, c-format
+msgid "Simple VPN setup."
+msgstr ""
+
+#: ../tools/drakvpn-old:148
+#, c-format
+msgid ""
+"You are about to configure your computer to use a VPN connection.\n"
+"\n"
+"With this feature, computers on your local private network and computers\n"
+"on some other remote private networks, can share resources, through\n"
+"their respective firewalls, over the Internet, in a secure manner. \n"
+"\n"
+"The communication over the Internet is encrypted. The local and remote\n"
+"computers look as if they were on the same network.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using\n"
+"drakconnect before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:165
+#, c-format
+msgid ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:208
+#, c-format
+msgid "Problems installing package %s"
+msgstr ""
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "Security Policies"
+msgstr ""
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "IKE daemon racoon"
+msgstr ""
+
+#: ../tools/drakvpn-old:224
+#, c-format
+msgid "Configuration file"
+msgstr ""
+
+#: ../tools/drakvpn-old:225
+#, c-format
+msgid ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:245 ../tools/drakvpn-old:382
+#, c-format
+msgid "%s entries"
+msgstr ""
+
+#: ../tools/drakvpn-old:246
+#, c-format
+msgid ""
+"The %s file contents\n"
+"is divided into sections.\n"
+"\n"
+"You can now:\n"
+"\n"
+" - display, add, edit, or remove sections, then\n"
+" - commit the changes\n"
+"\n"
+"What would you like to do?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display"
+msgstr ""
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Edit"
+msgstr "አስተካክል"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Commit"
+msgstr ""
+
+#: ../tools/drakvpn-old:267 ../tools/drakvpn-old:271 ../tools/drakvpn-old:406
+#: ../tools/drakvpn-old:410
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display configuration"
+msgstr ""
+
+#: ../tools/drakvpn-old:272
+#, c-format
+msgid ""
+"The %s file does not exist.\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose 'add'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:301
+#, c-format
+msgid ""
+"Add a Security Policy.\n"
+"\n"
+"You can now add a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:333 ../tools/drakvpn-old:523
+#, c-format
+msgid "Edit section"
+msgstr ""
+
+#: ../tools/drakvpn-old:334
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to edit \n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:337 ../tools/drakvpn-old:357 ../tools/drakvpn-old:528
+#: ../tools/drakvpn-old:574
+#, c-format
+msgid "Section names"
+msgstr ""
+
+#: ../tools/drakvpn-old:344
+#, c-format
+msgid ""
+"Edit a Security Policy.\n"
+"\n"
+"You can now edit a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:353 ../tools/drakvpn-old:570
+#, c-format
+msgid "Remove section"
+msgstr ""
+
+#: ../tools/drakvpn-old:354 ../tools/drakvpn-old:571
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to remove\n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:383
+#, c-format
+msgid ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+msgstr ""
+
+#: ../tools/drakvpn-old:411
+#, c-format
+msgid ""
+"The %s file does not exist\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose configure.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:425
+#, c-format
+msgid "racoon.conf entries"
+msgstr ""
+
+#: ../tools/drakvpn-old:426
+#, c-format
+msgid ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "path"
+msgstr "መተላለፊያ"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "remote"
+msgstr "የርቀት"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "sainfo"
+msgstr "sainfo"
+
+#: ../tools/drakvpn-old:440
+#, c-format
+msgid ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+msgstr ""
+
+#: ../tools/drakvpn-old:443
+#, c-format
+msgid "path type"
+msgstr ""
+
+#: ../tools/drakvpn-old:447
+#, c-format
+msgid ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+msgstr ""
+
+#: ../tools/drakvpn-old:467 ../tools/drakvpn-old:560
+#, c-format
+msgid "real file"
+msgstr ""
+
+#: ../tools/drakvpn-old:490
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:507
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:524
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here in the list below the one you want\n"
+"to edit and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:535
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"\n"
+"You can now edit the remote section entries.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:544
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"You can now edit the sainfo section entries.\n"
+"\n"
+"Choose continue when you are done to write the data."
+msgstr ""
+
+#: ../tools/drakvpn-old:552
+#, c-format
+msgid ""
+"This section has to be on top of your\n"
+"%s file.\n"
+"\n"
+"Make sure all other sections follow these path\n"
+"sections.\n"
+"\n"
+"You can now edit the path entries.\n"
+"\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:559
+#, c-format
+msgid "path_type"
+msgstr ""
+
+#: ../tools/drakvpn-old:599
+#, fuzzy, c-format
+msgid "Congratulations!"
+msgstr "እንኳን ደስ ያለዎ!"
+
+#: ../tools/drakvpn-old:600
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"\n"
+"You may now share resources through the Internet,\n"
+"in a secure way, using a VPN connection.\n"
+"\n"
+"You should make sure that the tunnels shorewall\n"
+"section is configured."
+msgstr ""
+
+#: ../tools/drakvpn-old:620
+#, c-format
+msgid "Sainfo source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:621
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:638
+#, c-format
+msgid "Sainfo source protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:639
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+msgstr ""
+
+#: ../tools/drakvpn-old:653
+#, c-format
+msgid "Sainfo destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:654
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:671
+#, c-format
+msgid "Sainfo destination protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:672
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+msgstr ""
+
+#: ../tools/drakvpn-old:686
+#, c-format
+msgid "PFS group"
+msgstr ""
+
+#: ../tools/drakvpn-old:688
+#, c-format
+msgid ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+msgstr ""
+
+#: ../tools/drakvpn-old:693
+#, c-format
+msgid "Lifetime number"
+msgstr ""
+
+#: ../tools/drakvpn-old:694
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:710
+#, c-format
+msgid "Lifetime unit"
+msgstr ""
+
+#: ../tools/drakvpn-old:712
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:728 ../tools/drakvpn-old:813
+#, c-format
+msgid "Encryption algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:730
+#, c-format
+msgid "Authentication algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:732
+#, c-format
+msgid "Compression algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:733
+#, c-format
+msgid "deflate"
+msgstr ""
+
+#: ../tools/drakvpn-old:740
+#, c-format
+msgid "Remote"
+msgstr "የሩቅ"
+
+#: ../tools/drakvpn-old:741
+#, c-format
+msgid ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+msgstr ""
+
+#: ../tools/drakvpn-old:749
+#, c-format
+msgid "Exchange mode"
+msgstr ""
+
+#: ../tools/drakvpn-old:751
+#, c-format
+msgid ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:757
+#, c-format
+msgid "Generate policy"
+msgstr ""
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "off"
+msgstr "አጥፋ"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "on"
+msgstr "አብራ"
+
+#: ../tools/drakvpn-old:759
+#, c-format
+msgid ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+msgstr ""
+
+#: ../tools/drakvpn-old:773
+#, c-format
+msgid "Passive"
+msgstr ""
+
+#: ../tools/drakvpn-old:775
+#, c-format
+msgid ""
+"If you do not want to initiate the negotiation, set this\n"
+"to on. The default value is off. It is useful for a\n"
+"server."
+msgstr ""
+
+#: ../tools/drakvpn-old:778
+#, c-format
+msgid "Certificate type"
+msgstr ""
+
+#: ../tools/drakvpn-old:780
+#, c-format
+msgid "My certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:781
+#, c-format
+msgid "Name of the certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:782
+#, c-format
+msgid "My private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:783
+#, c-format
+msgid "Name of the private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:784
+#, c-format
+msgid "Peers certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:785
+#, c-format
+msgid "Name of the peers certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:786
+#, c-format
+msgid "Verify cert"
+msgstr ""
+
+#: ../tools/drakvpn-old:788
+#, c-format
+msgid ""
+"If you do not want to verify the peer's certificate for\n"
+"some reason, set this to off. The default is on."
+msgstr ""
+
+#: ../tools/drakvpn-old:790
+#, c-format
+msgid "My identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:791
+#, c-format
+msgid ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+msgstr ""
+
+#: ../tools/drakvpn-old:811
+#, c-format
+msgid "Peers identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:812
+#, c-format
+msgid "Proposal"
+msgstr ""
+
+#: ../tools/drakvpn-old:814
+#, c-format
+msgid ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+msgstr ""
+
+#: ../tools/drakvpn-old:821
+#, c-format
+msgid "Hash algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:822
+#, fuzzy, c-format
+msgid "Authentication method"
+msgstr "የX ዘገባ የማስትገባት ዘዴ"
+
+#: ../tools/drakvpn-old:823
+#, c-format
+msgid "DH group"
+msgstr ""
+
+#: ../tools/drakvpn-old:830
+#, c-format
+msgid "Command"
+msgstr "ትእዛዝ"
+
+#: ../tools/drakvpn-old:831
+#, c-format
+msgid "Source IP range"
+msgstr ""
+
+#: ../tools/drakvpn-old:832
+#, c-format
+msgid "Destination IP range"
+msgstr ""
+
+#: ../tools/drakvpn-old:833
+#, c-format
+msgid "Upper-layer protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:833 ../tools/drakvpn-old:840
+#, c-format
+msgid "any"
+msgstr "ማነኛውም"
+
+#: ../tools/drakvpn-old:835
+#, c-format
+msgid "Flag"
+msgstr "ባንዲራ"
+
+#: ../tools/drakvpn-old:836
+#, c-format
+msgid "Direction"
+msgstr "አቅጣጫ"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "IPsec policy"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "ipsec"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "discard"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "Mode"
+msgstr "የአሠራሩ ዘዴ"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "tunnel"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "transport"
+msgstr ""
+
+#: ../tools/drakvpn-old:842
+#, c-format
+msgid "Source/destination"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "Level"
+msgstr "ደረጃ"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "require"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "default"
+msgstr "ቀዳሚ"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "use"
+msgstr "ጥቅም"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "unique"
+msgstr "የተለየ"
+
+#: ../tools/net_applet:61
+#, fuzzy, c-format
+msgid "Network is up on interface %s."
+msgstr "የተጠቃሚው እይታ"
+
+#: ../tools/net_applet:62
+#, c-format
+msgid "IP address: %s"
+msgstr "የIP አድራሻ፦ %s"
+
+#: ../tools/net_applet:63
+#, fuzzy, c-format
+msgid "Gateway: %s"
+msgstr "ዓይነት፦"
+
+#: ../tools/net_applet:64
+#, c-format
+msgid "Connected to %s (link level: %d %%)"
+msgstr ""
+
+#: ../tools/net_applet:66
+#, fuzzy, c-format
+msgid "Network is down on interface %s."
+msgstr "የተጠቃሚው እይታ"
+
+#: ../tools/net_applet:74 ../tools/net_monitor:468
+#, c-format
+msgid "Connect %s"
+msgstr ""
+
+#: ../tools/net_applet:75 ../tools/net_monitor:468
+#, fuzzy, c-format
+msgid "Disconnect %s"
+msgstr "ግንኙነት አቋርጥ"
+
+#: ../tools/net_applet:76
+#, fuzzy, c-format
+msgid "Monitor Network"
+msgstr "የቀይ ባርኔታ መረብ"
+
+#: ../tools/net_applet:78
+#, c-format
+msgid "Manage wireless networks"
+msgstr ""
+
+#: ../tools/net_applet:80
+#, fuzzy, c-format
+msgid "Manage VPN connections"
+msgstr "ግንኙነቶችን ይቆጣጠሩ"
+
+#: ../tools/net_applet:84
+#, fuzzy, c-format
+msgid "Configure Network"
+msgstr "መልዕክቶችን አሁን አምጣ"
+
+#: ../tools/net_applet:86
+#, fuzzy, c-format
+msgid "Watched interface"
+msgstr "ንድፋዊ እይታ"
+
+#: ../tools/net_applet:87 ../tools/net_applet:88 ../tools/net_applet:90
+#, c-format
+msgid "Auto-detect"
+msgstr "በራስ-ገዝ ፈልጎ አግኝ"
+
+#: ../tools/net_applet:95
+#, c-format
+msgid "Active interfaces"
+msgstr ""
+
+#: ../tools/net_applet:119
+#, fuzzy, c-format
+msgid "Profiles"
+msgstr "ወኪሎች"
+
+#: ../tools/net_applet:137
+#, c-format
+msgid "Get Online Help"
+msgstr ""
+
+#: ../tools/net_applet:318
+#, fuzzy, c-format
+msgid "Network connection"
+msgstr "ምርጫዎችን አስገባ"
+
+#: ../tools/net_applet:438
+#, c-format
+msgid "More networks"
+msgstr ""
+
+#: ../tools/net_applet:465
+#, c-format
+msgid "Interactive Firewall automatic mode"
+msgstr ""
+
+#: ../tools/net_applet:470
+#, c-format
+msgid "Always launch on startup"
+msgstr ""
+
+#: ../tools/net_applet:475
+#, fuzzy, c-format
+msgid "Wireless networks"
+msgstr "ሽቦ አልባ ግንኙነት"
+
+#: ../tools/net_applet:482 ../tools/net_monitor:96
+#, c-format
+msgid "Settings"
+msgstr "ስየማዎች"
+
+#: ../tools/net_applet:557
+#, fuzzy, c-format
+msgid "Interactive Firewall: intrusion detected"
+msgstr "ተስተካክሎ የተቀመጠውን ባዕድ መነሻ ጥቀስ"
+
+#: ../tools/net_applet:574
+#, fuzzy, c-format
+msgid "What do you want to do with this attacker?"
+msgstr "ይህንን ሁኔታ መጠቀም ይፈልጋሉ?"
+
+#: ../tools/net_applet:577
+#, fuzzy, c-format
+msgid "Attack details"
+msgstr "ያለ ዝርዝሮች"
+
+#: ../tools/net_applet:581
+#, fuzzy, c-format
+msgid "Attack time: %s"
+msgstr "%s አስጀምርs"
+
+#: ../tools/net_applet:582
+#, fuzzy, c-format
+msgid "Network interface: %s"
+msgstr "የተጠቃሚው እይታ"
+
+#: ../tools/net_applet:583
+#, fuzzy, c-format
+msgid "Attack type: %s"
+msgstr "ዓይነት፦"
+
+#: ../tools/net_applet:584
+#, fuzzy, c-format
+msgid "Protocol: %s"
+msgstr "&ፖርት፦"
+
+#: ../tools/net_applet:585
+#, fuzzy, c-format
+msgid "Attacker IP address: %s"
+msgstr "የIP አድራሻ፦"
+
+#: ../tools/net_applet:586
+#, fuzzy, c-format
+msgid "Attacker hostname: %s"
+msgstr "ዞሮ መመለሻ ፋይል ስም: %s"
+
+#: ../tools/net_applet:589
+#, fuzzy, c-format
+msgid "Service attacked: %s"
+msgstr "የአገልግሎቶች መቆጣጠሪያ"
+
+#: ../tools/net_applet:590
+#, fuzzy, c-format
+msgid "Port attacked: %s"
+msgstr "&ፖርት፦"
+
+#: ../tools/net_applet:592
+#, c-format
+msgid "Type of ICMP attack: %s"
+msgstr ""
+
+#: ../tools/net_applet:597
+#, c-format
+msgid "Always blacklist (do not ask again)"
+msgstr ""
+
+#: ../tools/net_applet:612
+#, c-format
+msgid "Ignore"
+msgstr "ይተዉ"
+
+#: ../tools/net_applet:630 ../tools/net_applet:643
+#, fuzzy, c-format
+msgid "Interactive Firewall: new service"
+msgstr "ተስተካክሎ የተቀመጠውን ባዕድ መነሻ ጥቀስ"
+
+#: ../tools/net_applet:654
+#, fuzzy, c-format
+msgid "Do you want to open this service?"
+msgstr "ምርጫውን መሞከር ይፈልጋሉ?"
+
+#: ../tools/net_applet:657
+#, fuzzy, c-format
+msgid "Remember this answer"
+msgstr "ይህን ሚስጢራዊ ቃል አስታውስ"
+
+#: ../tools/net_monitor:60 ../tools/net_monitor:65
+#, fuzzy, c-format
+msgid "Network Monitoring"
+msgstr "Name=መረብ"
+
+#: ../tools/net_monitor:101
+#, c-format
+msgid "Global statistics"
+msgstr ""
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Instantaneous"
+msgstr ""
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Average"
+msgstr ""
+
+#: ../tools/net_monitor:105
+#, fuzzy, c-format
+msgid ""
+"Sending\n"
+"speed:"
+msgstr "ያልተላኩ መልዕክቶችን በመላክ ላይ"
+
+#: ../tools/net_monitor:105 ../tools/net_monitor:106 ../tools/net_monitor:111
+#, c-format
+msgid "unknown"
+msgstr "ያልታወቀ"
+
+#: ../tools/net_monitor:106
+#, c-format
+msgid ""
+"Receiving\n"
+"speed:"
+msgstr ""
+
+#: ../tools/net_monitor:110
+#, fuzzy, c-format
+msgid ""
+"Connection\n"
+"time: "
+msgstr "የቅርብ መረብ ማገናኛ"
+
+#: ../tools/net_monitor:117
+#, c-format
+msgid "Use same scale for received and transmitted"
+msgstr ""
+
+#: ../tools/net_monitor:136
+#, c-format
+msgid "Wait please, testing your connection..."
+msgstr ""
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, fuzzy, c-format
+msgid "Disconnecting from Internet "
+msgstr "የኢንተርኔት ሰዓትን ተጠቀም"
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, fuzzy, c-format
+msgid "Connecting to Internet "
+msgstr "የኢንተርኔት ሰዓትን ተጠቀም"
+
+#: ../tools/net_monitor:229
+#, c-format
+msgid "Disconnection from Internet failed."
+msgstr ""
+
+#: ../tools/net_monitor:230
+#, c-format
+msgid "Disconnection from Internet complete."
+msgstr ""
+
+#: ../tools/net_monitor:232
+#, fuzzy, c-format
+msgid "Connection complete."
+msgstr "የቅርብ መረብ ማገናኛ"
+
+#: ../tools/net_monitor:233
+#, c-format
+msgid ""
+"Connection failed.\n"
+"Verify your configuration in the Mandriva Linux Control Center."
+msgstr ""
+
+#: ../tools/net_monitor:338
+#, c-format
+msgid "Color configuration"
+msgstr "የቀለም ምርጫ"
+
+#: ../tools/net_monitor:395 ../tools/net_monitor:407
+#, c-format
+msgid "sent: "
+msgstr "የተላከ፦"
+
+#: ../tools/net_monitor:398 ../tools/net_monitor:411
+#, c-format
+msgid "received: "
+msgstr ""
+
+#: ../tools/net_monitor:401
+#, c-format
+msgid "average"
+msgstr ""
+
+#: ../tools/net_monitor:404
+#, c-format
+msgid "Local measure"
+msgstr ""
+
+#: ../tools/net_monitor:461
+#, c-format
+msgid ""
+"Warning, another internet connection has been detected, maybe using your "
+"network"
+msgstr ""
+
+#: ../tools/net_monitor:472
+#, c-format
+msgid "No internet connection configured"
+msgstr ""
diff --git a/po/ar.po b/po/ar.po
new file mode 100644
index 0000000..1c85ec1
--- /dev/null
+++ b/po/ar.po
@@ -0,0 +1,5925 @@
+# translation of drakx-net.po to Arabic
+# Amr Fathy <amr10@menanet.net>, 2001.
+# Mohammed Gamal <f2c2001@yahoo.com>, 2002.
+# Youcef Rabah Rahal <rahal@arabeyes.org>, 2004.
+# Ossama M. Khayat <okhayat@yahoo.com>, 2004, 2005.
+# Munzir Taha <munzir@kacst.edu.sa>, 2004.
+# Abdulaziz Al-Arfaj <alarfaj@arabeyes.org>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: drakx-net\n"
+"POT-Creation-Date: 2007-01-10 15:18+0100\n"
+"PO-Revision-Date: 2005-03-03 01:06+0300\n"
+"Last-Translator: Ossama M. Khayat <okhayat@yahoo.com>\n"
+"Language-Team: Arabic <support@arabeyes.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.9.1\n"
+"Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : n>=3 && n<=10 ? 2 : "
+"3\n"
+
+#: ../lib/network/connection.pm:16
+#, c-format
+msgid "Unknown connection type"
+msgstr "نوع وصلة مجهول"
+
+#: ../lib/network/connection.pm:115
+#, c-format
+msgid "Network access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:116
+#, c-format
+msgid "Access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:117
+#, c-format
+msgid "Address settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:149 ../lib/network/drakvpn.pm:62
+#: ../lib/network/vpn/openvpn.pm:365 ../lib/network/vpn/openvpn.pm:379
+#: ../lib/network/vpn/openvpn.pm:390 ../tools/net_applet:129
+#, fuzzy, c-format
+msgid "VPN connection"
+msgstr "وصلة LAN"
+
+#: ../lib/network/connection.pm:151 ../lib/network/connection/cable.pm:44
+#: ../lib/network/connection/wireless.pm:37 ../lib/network/vpn/openvpn.pm:127
+#: ../lib/network/vpn/openvpn.pm:171 ../lib/network/vpn/openvpn.pm:339
+#, c-format
+msgid "None"
+msgstr "لاشيء"
+
+#: ../lib/network/connection.pm:163
+#, c-format
+msgid "Allow users to manage the connection"
+msgstr ""
+
+#: ../lib/network/connection.pm:164
+#, c-format
+msgid "Start the connection at boot"
+msgstr ""
+
+#: ../lib/network/connection.pm:165 ../tools/drakconnect:462
+#, c-format
+msgid "Metric"
+msgstr "متري"
+
+#: ../lib/network/connection.pm:230
+#, fuzzy, c-format
+msgid "Link detected on interface %s"
+msgstr "(اكتشاف على المنفذ %s)"
+
+#: ../lib/network/connection.pm:231 ../lib/network/connection/ethernet.pm:278
+#, c-format
+msgid "Link beat lost on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:13
+#, c-format
+msgid "Cable"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:14
+#, fuzzy, c-format
+msgid "Cable modem"
+msgstr "نوع البطاقة"
+
+#: ../lib/network/connection/cable.pm:45
+#, c-format
+msgid "Use BPALogin (needed for Telstra)"
+msgstr "استخدام BPALogin )مطلوبة لـTelstra)"
+
+#: ../lib/network/connection/cable.pm:48 ../lib/network/netconnect.pm:587
+#: ../tools/drakconnect:482
+#, c-format
+msgid "Authentication"
+msgstr "المواثقة"
+
+#: ../lib/network/connection/cable.pm:50 ../lib/network/connection/ppp.pm:22
+#: ../lib/network/netconnect.pm:326 ../lib/network/vpn/openvpn.pm:393
+#: ../tools/drakconnect:492
+#, c-format
+msgid "Account Login (user name)"
+msgstr "اسم الدخول للحساب (اسم المستخدم)"
+
+#: ../lib/network/connection/cable.pm:52 ../lib/network/connection/ppp.pm:23
+#: ../lib/network/netconnect.pm:327 ../lib/network/vpn/openvpn.pm:394
+#: ../tools/drakconnect:493
+#, c-format
+msgid "Account Password"
+msgstr "كلمة المرور للحساب"
+
+#: ../lib/network/connection/cellular.pm:47
+#, c-format
+msgid "Access Point Name"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:10
+#, c-format
+msgid "Bluetooth"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:11
+#, c-format
+msgid "Bluetooth Dial Up Networking"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:8
+#, c-format
+msgid "GPRS/Edge/3G"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:67
+#: ../lib/network/vpn/openvpn.pm:391
+#, c-format
+msgid "PIN number"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:130
+#, fuzzy, c-format
+msgid "Unable to open device %s"
+msgstr "تعذر تنفيذ: %s"
+
+#: ../lib/network/connection/cellular_card.pm:155
+#, fuzzy, c-format
+msgid "Please check that your SIM card is inserted."
+msgstr ""
+"\n"
+"فضلاً قم بالتأشير على الخيارات التي تحتاجها.\n"
+
+#: ../lib/network/connection/cellular_card.pm:161
+#, c-format
+msgid ""
+"You entered a wrong PIN code.\n"
+"Entering the wrong PIN code multiple times may lock your SIM card!"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:12
+#, c-format
+msgid "DVB"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:13
+#, c-format
+msgid "Satellite (DVB)"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:56
+#, c-format
+msgid "Adapter card"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:57
+#, c-format
+msgid "Net demux"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:58
+#, c-format
+msgid "PID"
+msgstr "رمز المهمة"
+
+#: ../lib/network/connection/ethernet.pm:10
+#, c-format
+msgid "Ethernet"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:53
+#, c-format
+msgid "Unable to find network interface for selected device (using %s driver)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:61 ../lib/network/vpn/openvpn.pm:207
+#, c-format
+msgid "Manual configuration"
+msgstr "تهيئة يدوية"
+
+#: ../lib/network/connection/ethernet.pm:62
+#, c-format
+msgid "Automatic IP (BOOTP/DHCP)"
+msgstr "IP آلي (BOOTP/DHCP)"
+
+#: ../lib/network/connection/ethernet.pm:116
+#, fuzzy, c-format
+msgid "IP settings"
+msgstr "إعداد PLL:"
+
+#: ../lib/network/connection/ethernet.pm:125 ../lib/network/netconnect.pm:604
+#: ../lib/network/vpn/openvpn.pm:221 ../tools/drakconnect:113
+#: ../tools/drakconnect:321 ../tools/drakconnect:887 ../tools/drakhosts:196
+#, c-format
+msgid "IP address"
+msgstr "عنوان IP"
+
+#: ../lib/network/connection/ethernet.pm:129
+#, c-format
+msgid ""
+"Please enter the IP configuration for this machine.\n"
+"Each item should be entered as an IP address in dotted-decimal\n"
+"notation (for example, 1.2.3.4)."
+msgstr ""
+"الرجاء إدخال تهيئة IP الخاصة بهذه الماكينة.\n"
+"كل مادة يجب إدخالها كعنوان IP بشكل منقوط\n"
+"(مثلاً، 1.2.3.4(."
+
+#: ../lib/network/connection/ethernet.pm:132 ../tools/drakconnect:326
+#: ../tools/drakconnect:888 ../tools/drakgw:177
+#, c-format
+msgid "Netmask"
+msgstr "قناع الشبكة"
+
+#: ../lib/network/connection/ethernet.pm:133 ../lib/network/netconnect.pm:636
+#: ../lib/network/vpn/openvpn.pm:212 ../lib/network/vpn/vpnc.pm:39
+#: ../tools/drakconnect:332
+#, c-format
+msgid "Gateway"
+msgstr "البوّابة"
+
+#: ../lib/network/connection/ethernet.pm:136 ../tools/drakconnect:382
+#, fuzzy, c-format
+msgid "Get DNS servers from DHCP"
+msgstr "عنوان IP لخادم DNS"
+
+#: ../lib/network/connection/ethernet.pm:138
+#, c-format
+msgid "DNS server 1"
+msgstr "خادم DNS 1"
+
+#: ../lib/network/connection/ethernet.pm:139
+#, c-format
+msgid "DNS server 2"
+msgstr "خادم DNS 2"
+
+#: ../lib/network/connection/ethernet.pm:140
+#, c-format
+msgid "Search domain"
+msgstr "نطاق البحث"
+
+#: ../lib/network/connection/ethernet.pm:141
+#, c-format
+msgid "By default search domain will be set from the fully-qualified host name"
+msgstr "بشكل افتراضي سيتمّ تحديد نطاق البحث من اسم المضيف المهيّء بالكامل"
+
+#: ../lib/network/connection/ethernet.pm:143 ../tools/drakconnect:369
+#: ../tools/drakconnect:891
+#, c-format
+msgid "DHCP client"
+msgstr "عميل DHCP"
+
+#: ../lib/network/connection/ethernet.pm:144 ../tools/drakconnect:379
+#, fuzzy, c-format
+msgid "DHCP timeout (in seconds)"
+msgstr "الوقت الأقصى للاتصال (بالثواني)"
+
+#: ../lib/network/connection/ethernet.pm:145 ../tools/drakconnect:383
+#, c-format
+msgid "Get YP servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:146 ../tools/drakconnect:384
+#, c-format
+msgid "Get NTPD servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:147 ../tools/drakconnect:375
+#, c-format
+msgid "DHCP host name"
+msgstr "اسم مضيف DHCP"
+
+#: ../lib/network/connection/ethernet.pm:149
+#, c-format
+msgid "Do not fallback to Zeroconf (169.254.0.0 network)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:160 ../tools/drakconnect:676
+#, c-format
+msgid "IP address should be in format 1.2.3.4"
+msgstr "عنوان IP يجب أن يكون بنسق 1.2.3.4"
+
+#: ../lib/network/connection/ethernet.pm:165 ../tools/drakconnect:680
+#, fuzzy, c-format
+msgid "Netmask should be in format 255.255.224.0"
+msgstr "عنوان البوابات يجب أن تكون على النسق 1.2.3.4"
+
+#: ../lib/network/connection/ethernet.pm:170
+#, c-format
+msgid "Warning: IP address %s is usually reserved!"
+msgstr "تحذير: عنوان الـ IP %s عادة ما يكون محفوظاً!"
+
+#: ../lib/network/connection/ethernet.pm:176
+#, c-format
+msgid "%s already in use\n"
+msgstr "%s قيد الاستخدام مسبقاً\n"
+
+#: ../lib/network/connection/ethernet.pm:200 ../tools/drakconnect:373
+#, c-format
+msgid "Assign host name from DHCP address"
+msgstr "تعيين اسم المضيف من عنوان DHCP"
+
+#: ../lib/network/connection/ethernet.pm:202 ../tools/drakhosts:196
+#, c-format
+msgid "Host name"
+msgstr "اسم المضيف"
+
+#: ../lib/network/connection/ethernet.pm:220 ../tools/drakconnect:440
+#, c-format
+msgid "Network Hotplugging"
+msgstr "القبْس السريع للشبكة"
+
+#: ../lib/network/connection/ethernet.pm:224
+#, c-format
+msgid "Enable IPv6 to IPv4 tunnel"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:277
+#, c-format
+msgid "Link beat detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:280
+#, c-format
+msgid "Requesting a network address on interface %s (%s protocol)..."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:281
+#, c-format
+msgid "Got a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:282
+#, c-format
+msgid "Failed to get a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:8
+#, c-format
+msgid "ISDN"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:153 ../lib/network/netconnect.pm:197
+#: ../lib/network/netconnect.pm:200 ../lib/network/netconnect.pm:218
+#: ../lib/network/netconnect.pm:463 ../lib/network/netconnect.pm:559
+#: ../lib/network/netconnect.pm:562
+#, c-format
+msgid "Unlisted - edit manually"
+msgstr "غير مُسرد - عدّل يدويّاً"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "ISA / PCMCIA"
+msgstr "ISA / PCMCIA"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "I do not know"
+msgstr "لا أعرف "
+
+#: ../lib/network/connection/isdn.pm:197 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "PCI"
+msgstr "PCI"
+
+#: ../lib/network/connection/isdn.pm:198 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "USB"
+msgstr "USB"
+
+#. -PO: POTS means "Plain old telephone service"
+#: ../lib/network/connection/pots.pm:10
+#, c-format
+msgid "POTS"
+msgstr ""
+
+#. -PO: POTS means "Plain old telephone service"
+#. -PO: remove it if it doesn't have an equivalent in your language
+#. -PO: for example, in French, it can be translated as "RTC"
+#: ../lib/network/connection/pots.pm:16
+#, c-format
+msgid "Analog telephone modem (POTS)"
+msgstr ""
+
+#: ../lib/network/connection/ppp.pm:9 ../lib/network/netconnect.pm:74
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Script-based"
+msgstr "مبني على نص برمجي"
+
+#: ../lib/network/connection/ppp.pm:10 ../lib/network/netconnect.pm:75
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP"
+msgstr "PAP"
+
+#: ../lib/network/connection/ppp.pm:11 ../lib/network/netconnect.pm:76
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Terminal-based"
+msgstr "مبني على محطة طرفيّة"
+
+#: ../lib/network/connection/ppp.pm:12 ../lib/network/netconnect.pm:77
+#: ../tools/drakconnect:499
+#, c-format
+msgid "CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/ppp.pm:13 ../lib/network/netconnect.pm:78
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP/CHAP"
+msgstr "PAP/CHAP"
+
+#: ../lib/network/connection/providers/cellular.pm:13
+#: ../lib/network/connection/providers/cellular.pm:18
+#: ../lib/network/connection/providers/cellular.pm:23
+#: ../lib/network/connection/providers/xdsl.pm:492
+#: ../lib/network/connection/providers/xdsl.pm:504
+#: ../lib/network/connection/providers/xdsl.pm:516
+#: ../lib/network/connection/providers/xdsl.pm:528
+#: ../lib/network/connection/providers/xdsl.pm:539
+#: ../lib/network/connection/providers/xdsl.pm:551
+#: ../lib/network/connection/providers/xdsl.pm:563
+#: ../lib/network/connection/providers/xdsl.pm:575
+#: ../lib/network/connection/providers/xdsl.pm:588
+#: ../lib/network/connection/providers/xdsl.pm:599
+#: ../lib/network/connection/providers/xdsl.pm:610
+#: ../lib/network/netconnect.pm:33
+#, c-format
+msgid "France"
+msgstr "فرنسا"
+
+#: ../lib/network/connection/providers/xdsl.pm:47
+#: ../lib/network/connection/providers/xdsl.pm:57
+#, c-format
+msgid "Algeria"
+msgstr "الجزائر"
+
+#: ../lib/network/connection/providers/xdsl.pm:67
+#: ../lib/network/connection/providers/xdsl.pm:77
+#, c-format
+msgid "Argentina"
+msgstr "الأرجنتين "
+
+#: ../lib/network/connection/providers/xdsl.pm:87
+#: ../lib/network/connection/providers/xdsl.pm:96
+#: ../lib/network/connection/providers/xdsl.pm:105
+#, c-format
+msgid "Austria"
+msgstr "النمسا"
+
+#: ../lib/network/connection/providers/xdsl.pm:114
+#: ../lib/network/connection/providers/xdsl.pm:124
+#: ../lib/network/connection/providers/xdsl.pm:134
+#, c-format
+msgid "Australia"
+msgstr "أوستراليا"
+
+#: ../lib/network/connection/providers/xdsl.pm:144
+#: ../lib/network/connection/providers/xdsl.pm:153
+#: ../lib/network/connection/providers/xdsl.pm:164
+#: ../lib/network/connection/providers/xdsl.pm:173
+#: ../lib/network/connection/providers/xdsl.pm:182
+#: ../lib/network/netconnect.pm:36
+#, c-format
+msgid "Belgium"
+msgstr "بلجيكا"
+
+#: ../lib/network/connection/providers/xdsl.pm:191
+#: ../lib/network/connection/providers/xdsl.pm:201
+#: ../lib/network/connection/providers/xdsl.pm:210
+#: ../lib/network/connection/providers/xdsl.pm:219
+#, c-format
+msgid "Brazil"
+msgstr "البرازيل"
+
+#: ../lib/network/connection/providers/xdsl.pm:228
+#: ../lib/network/connection/providers/xdsl.pm:237
+#, c-format
+msgid "Bulgaria"
+msgstr "بلغاريا"
+
+#: ../lib/network/connection/providers/xdsl.pm:246
+#: ../lib/network/connection/providers/xdsl.pm:255
+#: ../lib/network/connection/providers/xdsl.pm:264
+#: ../lib/network/connection/providers/xdsl.pm:273
+#: ../lib/network/connection/providers/xdsl.pm:282
+#: ../lib/network/connection/providers/xdsl.pm:291
+#: ../lib/network/connection/providers/xdsl.pm:300
+#: ../lib/network/connection/providers/xdsl.pm:309
+#: ../lib/network/connection/providers/xdsl.pm:318
+#: ../lib/network/connection/providers/xdsl.pm:327
+#: ../lib/network/connection/providers/xdsl.pm:336
+#: ../lib/network/connection/providers/xdsl.pm:345
+#: ../lib/network/connection/providers/xdsl.pm:354
+#: ../lib/network/connection/providers/xdsl.pm:363
+#: ../lib/network/connection/providers/xdsl.pm:372
+#: ../lib/network/connection/providers/xdsl.pm:381
+#: ../lib/network/connection/providers/xdsl.pm:390
+#: ../lib/network/connection/providers/xdsl.pm:399
+#: ../lib/network/connection/providers/xdsl.pm:408
+#: ../lib/network/connection/providers/xdsl.pm:417
+#, c-format
+msgid "China"
+msgstr "الصين"
+
+#: ../lib/network/connection/providers/xdsl.pm:426
+#: ../lib/network/connection/providers/xdsl.pm:436
+#, c-format
+msgid "Czech Republic"
+msgstr "جمهورية التشيك"
+
+#: ../lib/network/connection/providers/xdsl.pm:446
+#: ../lib/network/connection/providers/xdsl.pm:455
+#: ../lib/network/connection/providers/xdsl.pm:464
+#, c-format
+msgid "Denmark"
+msgstr "الدنمارك"
+
+#: ../lib/network/connection/providers/xdsl.pm:473
+#, c-format
+msgid "Egypt"
+msgstr "مصر"
+
+#: ../lib/network/connection/providers/xdsl.pm:483
+#, c-format
+msgid "Finland"
+msgstr "فنلندا"
+
+#: ../lib/network/connection/providers/xdsl.pm:621
+#: ../lib/network/connection/providers/xdsl.pm:630
+#: ../lib/network/connection/providers/xdsl.pm:640
+#, c-format
+msgid "Germany"
+msgstr "ألمانيا"
+
+#: ../lib/network/connection/providers/xdsl.pm:650
+#, c-format
+msgid "Greece"
+msgstr "اليونان"
+
+#: ../lib/network/connection/providers/xdsl.pm:659
+#, c-format
+msgid "Hungary"
+msgstr "المجر"
+
+#: ../lib/network/connection/providers/xdsl.pm:668
+#, c-format
+msgid "Ireland"
+msgstr "أيرلندا"
+
+#: ../lib/network/connection/providers/xdsl.pm:677
+#, c-format
+msgid "Israel"
+msgstr "اسرائيل"
+
+#: ../lib/network/connection/providers/xdsl.pm:687
+#, c-format
+msgid "India"
+msgstr "الهند"
+
+#: ../lib/network/connection/providers/xdsl.pm:696
+#: ../lib/network/connection/providers/xdsl.pm:705
+#, c-format
+msgid "Iceland"
+msgstr "آيسلندا"
+
+#: ../lib/network/connection/providers/xdsl.pm:714
+#: ../lib/network/connection/providers/xdsl.pm:725
+#: ../lib/network/connection/providers/xdsl.pm:735
+#: ../lib/network/connection/providers/xdsl.pm:746
+#: ../lib/network/netconnect.pm:35
+#, c-format
+msgid "Italy"
+msgstr "إيطاليا"
+
+#: ../lib/network/connection/providers/xdsl.pm:758
+#, c-format
+msgid "Sri Lanka"
+msgstr "سريلانكا"
+
+#: ../lib/network/connection/providers/xdsl.pm:770
+#, c-format
+msgid "Lithuania"
+msgstr "ليتوانيا"
+
+#: ../lib/network/connection/providers/xdsl.pm:779
+#: ../lib/network/connection/providers/xdsl.pm:789
+#, c-format
+msgid "Mauritius"
+msgstr "موريشيوس"
+
+#: ../lib/network/connection/providers/xdsl.pm:800
+#, c-format
+msgid "Morocco"
+msgstr "المغرب"
+
+#: ../lib/network/connection/providers/xdsl.pm:810
+#: ../lib/network/connection/providers/xdsl.pm:819
+#: ../lib/network/connection/providers/xdsl.pm:828
+#: ../lib/network/connection/providers/xdsl.pm:837
+#: ../lib/network/netconnect.pm:34
+#, c-format
+msgid "Netherlands"
+msgstr "هولندا"
+
+#: ../lib/network/connection/providers/xdsl.pm:846
+#: ../lib/network/connection/providers/xdsl.pm:852
+#: ../lib/network/connection/providers/xdsl.pm:858
+#: ../lib/network/connection/providers/xdsl.pm:864
+#: ../lib/network/connection/providers/xdsl.pm:870
+#: ../lib/network/connection/providers/xdsl.pm:876
+#: ../lib/network/connection/providers/xdsl.pm:882
+#, c-format
+msgid "Norway"
+msgstr "النرويج"
+
+#: ../lib/network/connection/providers/xdsl.pm:890
+#, c-format
+msgid "Pakistan"
+msgstr "باكستان"
+
+#: ../lib/network/connection/providers/xdsl.pm:901
+#: ../lib/network/connection/providers/xdsl.pm:911
+#, c-format
+msgid "Poland"
+msgstr "بولندا"
+
+#: ../lib/network/connection/providers/xdsl.pm:922
+#, c-format
+msgid "Portugal"
+msgstr "البرتغال"
+
+#: ../lib/network/connection/providers/xdsl.pm:931
+#, c-format
+msgid "Russia"
+msgstr "روسيا"
+
+#: ../lib/network/connection/providers/xdsl.pm:942
+#, c-format
+msgid "Singapore"
+msgstr "سنغافورة"
+
+#: ../lib/network/connection/providers/xdsl.pm:951
+#, c-format
+msgid "Senegal"
+msgstr "السنغال"
+
+#: ../lib/network/connection/providers/xdsl.pm:961
+#, c-format
+msgid "Slovenia"
+msgstr "سلوفينيا"
+
+#: ../lib/network/connection/providers/xdsl.pm:972
+#: ../lib/network/connection/providers/xdsl.pm:984
+#: ../lib/network/connection/providers/xdsl.pm:996
+#: ../lib/network/connection/providers/xdsl.pm:1009
+#: ../lib/network/connection/providers/xdsl.pm:1019
+#: ../lib/network/connection/providers/xdsl.pm:1029
+#: ../lib/network/connection/providers/xdsl.pm:1040
+#: ../lib/network/connection/providers/xdsl.pm:1050
+#: ../lib/network/connection/providers/xdsl.pm:1060
+#: ../lib/network/connection/providers/xdsl.pm:1070
+#: ../lib/network/connection/providers/xdsl.pm:1080
+#: ../lib/network/connection/providers/xdsl.pm:1090
+#: ../lib/network/connection/providers/xdsl.pm:1101
+#: ../lib/network/connection/providers/xdsl.pm:1112
+#: ../lib/network/connection/providers/xdsl.pm:1124
+#: ../lib/network/connection/providers/xdsl.pm:1136
+#, c-format
+msgid "Spain"
+msgstr "أسبانيا"
+
+#: ../lib/network/connection/providers/xdsl.pm:1149
+#, c-format
+msgid "Sweden"
+msgstr "السويد"
+
+#: ../lib/network/connection/providers/xdsl.pm:1158
+#: ../lib/network/connection/providers/xdsl.pm:1167
+#: ../lib/network/connection/providers/xdsl.pm:1177
+#, c-format
+msgid "Switzerland"
+msgstr "السويسرية"
+
+#: ../lib/network/connection/providers/xdsl.pm:1186
+#, c-format
+msgid "Thailand"
+msgstr "تايلاند"
+
+#: ../lib/network/connection/providers/xdsl.pm:1196
+#, c-format
+msgid "Tunisia"
+msgstr "تونس"
+
+#: ../lib/network/connection/providers/xdsl.pm:1207
+#, c-format
+msgid "Turkey"
+msgstr "تركيا"
+
+#: ../lib/network/connection/providers/xdsl.pm:1220
+#, c-format
+msgid "United Arab Emirates"
+msgstr "الإمارات العربية المتحدة"
+
+#: ../lib/network/connection/providers/xdsl.pm:1230
+#: ../lib/network/connection/providers/xdsl.pm:1240
+#: ../lib/network/netconnect.pm:38
+#, c-format
+msgid "United Kingdom"
+msgstr "المملكة المتحدة"
+
+#: ../lib/network/connection/wireless.pm:11
+#, c-format
+msgid "Wireless"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:21
+#, c-format
+msgid "Use a Windows driver (with ndiswrapper)"
+msgstr "استخدام مشغّل ويندوز (مع ndiswrapper("
+
+#: ../lib/network/connection/wireless.pm:38
+#, c-format
+msgid "Open WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:39
+#, c-format
+msgid "Restricted WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:40
+#, c-format
+msgid "WPA Pre-Shared Key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:181 ../lib/network/thirdparty.pm:174
+#, c-format
+msgid "Firmware files are required for this device."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:209
+#, c-format
+msgid ""
+"Your wireless card is disabled, please enable the wireless switch (RF kill "
+"switch) first."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:270
+#, fuzzy, c-format
+msgid "Wireless settings"
+msgstr "اتّصال لاسلكي"
+
+#: ../lib/network/connection/wireless.pm:275 ../tools/drakconnect:406
+#: ../tools/drakroam:119
+#, c-format
+msgid "Operating Mode"
+msgstr "وضعية التّشغيل"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Ad-hoc"
+msgstr "مُصطنع"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Managed"
+msgstr "مُدار"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Master"
+msgstr "رئيسي"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Repeater"
+msgstr "مُكرّر"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Secondary"
+msgstr "ثانوي"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Auto"
+msgstr "آلي"
+
+#: ../lib/network/connection/wireless.pm:279 ../tools/drakconnect:407
+#, c-format
+msgid "Network name (ESSID)"
+msgstr "إسم الشّبكة (ESSID)"
+
+#: ../lib/network/connection/wireless.pm:281
+#, c-format
+msgid "Encryption mode"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:283 ../tools/drakconnect:421
+#, c-format
+msgid "Encryption key"
+msgstr "مفتاح التشفير"
+
+#: ../lib/network/connection/wireless.pm:285 ../tools/drakconnect:408
+#, c-format
+msgid "Network ID"
+msgstr "رقم مُعرّف الشّبكة"
+
+#: ../lib/network/connection/wireless.pm:286 ../tools/drakconnect:409
+#, c-format
+msgid "Operating frequency"
+msgstr "تردّد التّشغيل"
+
+#: ../lib/network/connection/wireless.pm:287 ../tools/drakconnect:410
+#, c-format
+msgid "Sensitivity threshold"
+msgstr "عتبة الحساسية"
+
+#: ../lib/network/connection/wireless.pm:288 ../tools/drakconnect:411
+#, c-format
+msgid "Bitrate (in b/s)"
+msgstr "معدّل البث (بِتْ/ث)"
+
+#: ../lib/network/connection/wireless.pm:289 ../tools/drakconnect:422
+#, c-format
+msgid "RTS/CTS"
+msgstr "RTS/CTS"
+
+#: ../lib/network/connection/wireless.pm:290
+#, c-format
+msgid ""
+"RTS/CTS adds a handshake before each packet transmission to make sure that "
+"the\n"
+"channel is clear. This adds overhead, but increase performance in case of "
+"hidden\n"
+"nodes or large number of active nodes. This parameter sets the size of the\n"
+"smallest packet for which the node sends RTS, a value equal to the maximum\n"
+"packet size disable the scheme. You may also set this parameter to auto, "
+"fixed\n"
+"or off."
+msgstr ""
+"يضيف RTS/CTS المُصافحة قبل كل بثّ رزم للتّأكّد من أنّ\n"
+"القناة آمنة للإرسال. يضيف هذا ضغطاً، ولكن يزيد الأداء في حالة وجود\n"
+"نقاط اتّصال مخفيّة أو عدد كبير من نقاط الاتصال النّشطة. يحدّد هذا المُعطى\n"
+"الرزمة الأصغر التّي ترسل لها نقطة الاتصال RTS، والتي هي قيمة مساوية لأكبر\n"
+"حجم رزمة تُعطّل المخطّط. يمكنك أيضاً تحديد هذا المُعطى بتلقائي،\n"
+"ثابت أو معطّل."
+
+#: ../lib/network/connection/wireless.pm:297 ../tools/drakconnect:423
+#, c-format
+msgid "Fragmentation"
+msgstr "مستوى التّجزّء"
+
+#: ../lib/network/connection/wireless.pm:298 ../tools/drakconnect:424
+#, c-format
+msgid "iwconfig command extra arguments"
+msgstr "المُعطيات الإضافية لأمر iwconfig"
+
+#: ../lib/network/connection/wireless.pm:299
+#, c-format
+msgid ""
+"Here, one can configure some extra wireless parameters such as:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick is already set "
+"as the hostname).\n"
+"\n"
+"See iwconfig(8) man page for further information."
+msgstr ""
+"هنا، يمكن تهيئة مُعاملات إضافيّة للتشبيك اللاسلكي مثل:\n"
+"ap، channel، commit، enc، power، retry، sens، txpower )nick محدّد مسبّقا كإسم "
+"المضيف).\n"
+"\n"
+"راجع صفحة الدّليل iwconfig(8) للمزيد من المعلومات."
+
+#. -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#: ../lib/network/connection/wireless.pm:306 ../tools/drakconnect:425
+#, c-format
+msgid "iwspy command extra arguments"
+msgstr "المُعطيات الإضافيّة لأمر iwspy"
+
+#: ../lib/network/connection/wireless.pm:307
+#, c-format
+msgid ""
+"iwspy is used to set a list of addresses in a wireless network\n"
+"interface and to read back quality of link information for each of those.\n"
+"\n"
+"This information is the same as the one available in /proc/net/wireless :\n"
+"quality of the link, signal strength and noise level.\n"
+"\n"
+"See iwpspy(8) man page for further information."
+msgstr ""
+"يستخدم iwspy لتحديد قائمة من العناوين لواجهة الشبكة اللاسلكيّة\n"
+"ولقراءة معرومات جودة الاتصال لكل من هذه.\n"
+"\n"
+"هذه المعلومات هي نفسها كالتي متوفّرة في /proc/net/wireless :\n"
+"جودة الاتصال، قوّة الإشارة ومستوى الضّوضاء.\n"
+"\n"
+"رجاع صفحة دليل iwpspy)8( للمزيد من المعلومات."
+
+#: ../lib/network/connection/wireless.pm:315 ../tools/drakconnect:426
+#, c-format
+msgid "iwpriv command extra arguments"
+msgstr "المُعطيات الإضافيّة لأمر iwpriv"
+
+#: ../lib/network/connection/wireless.pm:317
+#, c-format
+msgid ""
+"iwpriv enable to set up optionals (private) parameters of a wireless "
+"network\n"
+"interface.\n"
+"\n"
+"iwpriv deals with parameters and setting specific to each driver (as opposed "
+"to\n"
+"iwconfig which deals with generic ones).\n"
+"\n"
+"In theory, the documentation of each device driver should indicate how to "
+"use\n"
+"those interface specific commands and their effect.\n"
+"\n"
+"See iwpriv(8) man page for further information."
+msgstr ""
+"يمكنك iwpriv من إعداد المُعطيات الاختياريّة (الخاصّة) لواجهة الشّبكة\n"
+"اللّاسلكيّة.\n"
+"\n"
+"يتعامل iwpriv مع المُعطيات وتحديد الخواصّ لكل مشغّل (بعكس\n"
+"iwconfig والذي يتعامل مع الأشياء العامّة).\n"
+"\n"
+"نظريّاً، يجب أن يُبيّن مواثقة كلّ مشغّل جهاز كيفيّة استخدام\n"
+"الأوامر الخاصّة بكل واجهة وتأثيرها.\n"
+"\n"
+"راجع صفحة دليل iwpriv(8) للمزيد من المعلومات."
+
+#: ../lib/network/connection/wireless.pm:335
+#, c-format
+msgid "An encryption key is required."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:341
+#, c-format
+msgid ""
+"Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz "
+"frequency), or add enough '0' (zeroes)."
+msgstr ""
+"يجب أن يكون للتردّد اللاحقة k، أو M أو G (مثلاً، \"2.46G\" للتردّد 2.46 GHz(، "
+"أو إضافة أصفار كافية."
+
+#: ../lib/network/connection/wireless.pm:347
+#, c-format
+msgid ""
+"Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add "
+"enough '0' (zeroes)."
+msgstr ""
+"يجب أن يكون للمعدّل اللاحقة k، أو M أو G (مثلاً، \"11M\" للمعدّل 11M)، أو إضافة "
+"أصفار كافية."
+
+#: ../lib/network/connection/wireless.pm:359
+#, c-format
+msgid "Allow access point roaming"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:460
+#, c-format
+msgid "Associated to wireless network \"%s\" on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:461
+#, c-format
+msgid "Lost association to wireless network on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:8
+#, fuzzy, c-format
+msgid "DSL"
+msgstr "SSL"
+
+#: ../lib/network/connection/xdsl.pm:76 ../lib/network/netconnect.pm:755
+#, c-format
+msgid "Alcatel speedtouch USB modem"
+msgstr "مودم Alcatel speedtouch USB"
+
+#: ../lib/network/connection/xdsl.pm:104
+#, c-format
+msgid ""
+"The ECI Hi-Focus modem cannot be supported due to binary driver distribution "
+"problem.\n"
+"\n"
+"You can find a driver on http://eciadsl.flashtux.org/"
+msgstr ""
+"مودم ECI Hi-Focus لا يمكن دعمه بسبب مشكلة توزيع المُشغّل المُجمّع.\n"
+"\n"
+"يمكنك العثور على المُشغّلات على الموقع http://eciadsl.flashtux.org/"
+
+#: ../lib/network/connection/xdsl.pm:176
+#, c-format
+msgid "DSL over CAPI"
+msgstr "DSL عبر CAPI"
+
+#: ../lib/network/connection/xdsl.pm:179
+#, c-format
+msgid "Dynamic Host Configuration Protocol (DHCP)"
+msgstr "بروتوكول تهيئة المضيف الديناميكيّة (DHCP)"
+
+#: ../lib/network/connection/xdsl.pm:180
+#, c-format
+msgid "Manual TCP/IP configuration"
+msgstr "تهيئة TCP/IP يدويّة"
+
+#: ../lib/network/connection/xdsl.pm:181
+#, c-format
+msgid "Point to Point Tunneling Protocol (PPTP)"
+msgstr "بروتوكول النفق من نقطة إلى نقطة (PPTP)"
+
+#: ../lib/network/connection/xdsl.pm:182
+#, c-format
+msgid "PPP over Ethernet (PPPoE)"
+msgstr "PPP عبر Ethernet (PPPoE)"
+
+#: ../lib/network/connection/xdsl.pm:183
+#, c-format
+msgid "PPP over ATM (PPPoA)"
+msgstr "PPP عبر ATM (PPPoA)"
+
+#: ../lib/network/connection/xdsl.pm:223
+#, c-format
+msgid "Virtual Path ID (VPI):"
+msgstr "رقم تعريف المسار الوهمي (VPI):"
+
+#: ../lib/network/connection/xdsl.pm:224
+#, c-format
+msgid "Virtual Circuit ID (VCI):"
+msgstr "رقم تعريف الدّارة الوهميّة (VCI):"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/drakvpn.pm:52 ../lib/network/ndiswrapper.pm:27
+#: ../lib/network/ndiswrapper.pm:42 ../lib/network/ndiswrapper.pm:86
+#: ../lib/network/ndiswrapper.pm:102 ../lib/network/netconnect.pm:131
+#: ../lib/network/netconnect.pm:179 ../lib/network/netconnect.pm:268
+#: ../lib/network/netconnect.pm:813 ../lib/network/thirdparty.pm:114
+#: ../lib/network/thirdparty.pm:131 ../lib/network/thirdparty.pm:214
+#: ../lib/network/thirdparty.pm:216 ../lib/network/thirdparty.pm:237
+#: ../tools/drakconnect:676 ../tools/drakconnect:680 ../tools/drakconnect:689
+#: ../tools/drakconnect:705 ../tools/drakgw:184 ../tools/drakhosts:100
+#: ../tools/drakhosts:245 ../tools/drakhosts:252 ../tools/drakhosts:259
+#: ../tools/drakinvictus:72 ../tools/draknetprofile:113 ../tools/draknfs:85
+#: ../tools/draknfs:106 ../tools/draknfs:273 ../tools/draknfs:400
+#: ../tools/draknfs:402 ../tools/draknfs:405 ../tools/draknfs:497
+#: ../tools/draknfs:504 ../tools/draknfs:567 ../tools/draknfs:574
+#: ../tools/draknfs:581 ../tools/drakroam:79 ../tools/drakroam:92
+#: ../tools/draksambashare:372 ../tools/draksambashare:379
+#: ../tools/draksambashare:382 ../tools/draksambashare:428
+#: ../tools/draksambashare:452 ../tools/draksambashare:518
+#: ../tools/draksambashare:533 ../tools/draksambashare:611
+#: ../tools/draksambashare:678 ../tools/draksambashare:778
+#: ../tools/draksambashare:785 ../tools/draksambashare:916
+#: ../tools/draksambashare:1109 ../tools/draksambashare:1118
+#: ../tools/draksambashare:1140 ../tools/draksambashare:1149
+#: ../tools/draksambashare:1168 ../tools/draksambashare:1177
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Error"
+msgstr "خطأ"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/netconnect.pm:131 ../lib/network/thirdparty.pm:114
+#, fuzzy, c-format
+msgid "Could not install the packages (%s)!"
+msgstr "تعذر تثبيت حزم %s!"
+
+#: ../lib/network/drakfirewall.pm:12
+#, c-format
+msgid "Web Server"
+msgstr "خادم الوب"
+
+#: ../lib/network/drakfirewall.pm:17
+#, c-format
+msgid "Domain Name Server"
+msgstr "خادم اسم النطاق"
+
+#: ../lib/network/drakfirewall.pm:22
+#, c-format
+msgid "SSH server"
+msgstr "خادم SSH"
+
+#: ../lib/network/drakfirewall.pm:27
+#, c-format
+msgid "FTP server"
+msgstr "خادم FTP"
+
+#: ../lib/network/drakfirewall.pm:32
+#, c-format
+msgid "Mail Server"
+msgstr "خادم بريد"
+
+#: ../lib/network/drakfirewall.pm:37
+#, c-format
+msgid "POP and IMAP Server"
+msgstr "خادم POP و IMAP"
+
+#: ../lib/network/drakfirewall.pm:42
+#, c-format
+msgid "Telnet server"
+msgstr "خادم Telnet"
+
+#: ../lib/network/drakfirewall.pm:48
+#, c-format
+msgid "Windows Files Sharing (SMB)"
+msgstr "مشاركة ملفّات ويندوز (SMB)"
+
+#: ../lib/network/drakfirewall.pm:54
+#, c-format
+msgid "CUPS server"
+msgstr "خادم CUPS"
+
+#: ../lib/network/drakfirewall.pm:60
+#, c-format
+msgid "Echo request (ping)"
+msgstr "طلب الصّدى (ping)"
+
+#: ../lib/network/drakfirewall.pm:65
+#, c-format
+msgid "BitTorrent"
+msgstr "BitTorrent"
+
+#: ../lib/network/drakfirewall.pm:74
+#, c-format
+msgid "Port scan detection"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:166 ../lib/network/drakfirewall.pm:172
+#, fuzzy, c-format
+msgid "Firewall configuration"
+msgstr "تهيئة يدوية"
+
+#: ../lib/network/drakfirewall.pm:166
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"This configures a personal firewall for this Mandriva Linux machine.\n"
+"For a powerful and dedicated firewall solution, please look to the\n"
+"specialized Mandriva Security Firewall distribution."
+msgstr ""
+"أداة تهيئة drakfirewall\n"
+"\n"
+"هذه الأداة تسمح لك بتهيئة جدار ناري شخصي لنظام ماندريبا لينكس هذا.\n"
+"إذا كنت تريد جدارا ناريا متخصّصاً وفعّالاً، ألق نظرة على\n"
+"توزيعة Mandriva Security Firewall المُتخصّصة."
+
+#: ../lib/network/drakfirewall.pm:172
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"Make sure you have configured your Network/Internet access with\n"
+"drakconnect before going any further."
+msgstr ""
+"أداة تهيئة DrakFirewall\n"
+"\n"
+"تأكد من أنك قمت بتهيئة اتصالك بالشبكة/الإنترنت باستخدام\n"
+"drakconnect قبل المتابعة."
+
+#: ../lib/network/drakfirewall.pm:189
+#, c-format
+msgid "Which services would you like to allow the Internet to connect to?"
+msgstr "أي خدمة تريد السماح للإنترنت أن تتصل بها؟"
+
+#: ../lib/network/drakfirewall.pm:190 ../lib/network/shorewall.pm:145
+#, c-format
+msgid "Firewall"
+msgstr "جدار ناري"
+
+#: ../lib/network/drakfirewall.pm:192
+#, c-format
+msgid ""
+"You can enter miscellaneous ports. \n"
+"Valid examples are: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Have a look at /etc/services for information."
+msgstr ""
+"يمكنك إدخال منافذ متنوعة. \n"
+"أمثلة صالحة هي:139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"ألق نظرة على /etc/services لمزيد من المعلومات."
+
+#: ../lib/network/drakfirewall.pm:198
+#, c-format
+msgid ""
+"Invalid port given: %s.\n"
+"The proper format is \"port/tcp\" or \"port/udp\", \n"
+"where port is between 1 and 65535.\n"
+"\n"
+"You can also give a range of ports (eg: 24300:24350/udp)"
+msgstr ""
+"تم إعطاء منفذ غير صالح: %s.\n"
+"النسق الصحيح هو \"port/tcp\" أو \"port/udp\"، \n"
+"حيث يكون المنفذ بين 1 و65535.\n"
+"\n"
+"يمكنك أيضاَ إعطاء مدى من المنافذ (مثلاً: 2400:24350/udp)"
+
+#: ../lib/network/drakfirewall.pm:208
+#, c-format
+msgid "Everything (no firewall)"
+msgstr "كل شئ (لا جدار ناري)"
+
+#: ../lib/network/drakfirewall.pm:210
+#, c-format
+msgid "Other ports"
+msgstr "منافذ أخرى"
+
+#: ../lib/network/drakfirewall.pm:211
+#, c-format
+msgid "Log firewall messages in system logs"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:255 ../lib/network/drakfirewall.pm:258
+#: ../tools/drakids:40 ../tools/drakids:65 ../tools/drakids:181
+#: ../tools/drakids:190 ../tools/drakids:215 ../tools/drakids:224
+#: ../tools/drakids:234 ../tools/drakids:326 ../tools/net_applet:77
+#: ../tools/net_applet:238 ../tools/net_applet:514 ../tools/net_applet:541
+#, fuzzy, c-format
+msgid "Interactive Firewall"
+msgstr "جدار ناري"
+
+#: ../lib/network/drakfirewall.pm:256
+#, c-format
+msgid ""
+"You can be warned when someone accesses to a service or tries to intrude "
+"into your computer.\n"
+"Please select which network activities should be watched."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:261
+#, c-format
+msgid "Use Interactive Firewall"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:30
+#, fuzzy, c-format
+msgid "VPN configuration"
+msgstr "تهيئة CUPS"
+
+#: ../lib/network/drakvpn.pm:34
+#, fuzzy, c-format
+msgid "Choose the VPN type"
+msgstr "اختيار الحجم الجديد"
+
+#: ../lib/network/drakvpn.pm:49
+#, c-format
+msgid "Initializing tools and detecting devices for %s..."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:52
+#, fuzzy, c-format
+msgid "Unable to initialize %s connection type!"
+msgstr "نوع وصلة مجهول"
+
+#: ../lib/network/drakvpn.pm:60
+#, c-format
+msgid "Please select an existing VPN connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:64
+#, fuzzy, c-format
+msgid "Configure a new connection..."
+msgstr "اختبار الوصلة..."
+
+#: ../lib/network/drakvpn.pm:66
+#, fuzzy, c-format
+msgid "New name"
+msgstr "الاسم الحقيقي"
+
+#: ../lib/network/drakvpn.pm:70 ../lib/network/drakvpn.pm:100
+#: ../lib/network/ndiswrapper.pm:92 ../lib/network/netconnect.pm:471
+#: ../tools/drakconnect:978 ../tools/draknetprofile:129
+#: ../tools/draknetprofile:131 ../tools/drakproxy:36
+#, c-format
+msgid "Warning"
+msgstr "تحذير"
+
+#: ../lib/network/drakvpn.pm:70
+#, c-format
+msgid "You must select an existing connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:81
+#, fuzzy, c-format
+msgid "Please enter the required key(s)"
+msgstr "الرجاء إدخال عنوان خادم WebDav"
+
+#: ../lib/network/drakvpn.pm:86
+#, fuzzy, c-format
+msgid "Please enter the settings of your VPN connection"
+msgstr "تعذر الإتصال بالمرآة %s"
+
+#: ../lib/network/drakvpn.pm:94 ../lib/network/netconnect.pm:291
+#, c-format
+msgid "Do you want to start the connection now?"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:100
+#, fuzzy, c-format
+msgid "Connection failed."
+msgstr "اسم الإتصال"
+
+#: ../lib/network/drakvpn.pm:108
+#, c-format
+msgid ""
+"The VPN connection is now configured.\n"
+"\n"
+"This VPN connection can be automatically started together with a network "
+"connection.\n"
+"It can be done by reconfiguring the network connection and selecting this "
+"VPN connection.\n"
+msgstr ""
+
+#: ../lib/network/ifw.pm:129
+#, fuzzy, c-format
+msgid "Port scanning"
+msgstr "لا مشاركة"
+
+#: ../lib/network/ifw.pm:130
+#, fuzzy, c-format
+msgid "Service attack"
+msgstr "الخدمة المُهاجمة: %s"
+
+#: ../lib/network/ifw.pm:131
+#, fuzzy, c-format
+msgid "Password cracking"
+msgstr "كلمة المرور (مجدداً)"
+
+#: ../lib/network/ifw.pm:132
+#, c-format
+msgid "\"%s\" attack"
+msgstr ""
+
+#: ../lib/network/ifw.pm:134
+#, c-format
+msgid "A port scanning attack has been attempted by %s."
+msgstr "حدث هجوم مسح للمنافذ من قبل %s."
+
+#: ../lib/network/ifw.pm:135
+#, c-format
+msgid "The %s service has been attacked by %s."
+msgstr "تم الهجوم على الخدمة %s من قبل %s."
+
+#: ../lib/network/ifw.pm:136
+#, c-format
+msgid "A password cracking attack has been attempted by %s."
+msgstr "حدث هجوم لاختراق كلمة المرور من قبل %s."
+
+#: ../lib/network/ifw.pm:137
+#, fuzzy, c-format
+msgid "A \"%s\" attack has been attempted by %s"
+msgstr "حدث هجوم مسح للمنافذ من قبل %s."
+
+#: ../lib/network/ifw.pm:146
+#, c-format
+msgid ""
+"The \"%s\" application is trying to make a service (%s) available to the "
+"network."
+msgstr ""
+
+#. -PO: this should be kept lowercase since the expression is meant to be used between brackets
+#: ../lib/network/ifw.pm:150
+#, fuzzy, c-format
+msgid "port %d"
+msgstr "تقرير"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/netconnect.pm:603
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#, c-format
+msgid "Manual"
+msgstr "يدوي"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/modem.pm:63
+#: ../lib/network/modem.pm:76 ../lib/network/modem.pm:81
+#: ../lib/network/modem.pm:110 ../lib/network/netconnect.pm:598
+#: ../lib/network/netconnect.pm:603 ../lib/network/netconnect.pm:615
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#: ../lib/network/netconnect.pm:638
+#, c-format
+msgid "Automatic"
+msgstr "آلي"
+
+#: ../lib/network/ndiswrapper.pm:27
+#, c-format
+msgid "No device supporting the %s ndiswrapper driver is present!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:33
+#, c-format
+msgid "Please select the Windows driver (.inf file)"
+msgstr "الرجاء اختيار مشغّل ويندوز (ملف .inf)"
+
+#: ../lib/network/ndiswrapper.pm:42
+#, c-format
+msgid "Unable to install the %s ndiswrapper driver!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:86
+#, c-format
+msgid "Unable to load the ndiswrapper module!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:92
+#, c-format
+msgid ""
+"The selected device has already been configured with the %s driver.\n"
+"Do you really want to use a ndiswrapper driver?"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:102
+#, c-format
+msgid "Unable to find the ndiswrapper interface!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:115
+#, c-format
+msgid "Choose an ndiswrapper driver"
+msgstr "اختيار مشغّل ndiswrapper"
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Use the ndiswrapper driver %s"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Install a new driver"
+msgstr "تثبيت مشغّل جديد"
+
+#: ../lib/network/ndiswrapper.pm:129
+#, c-format
+msgid "Select a device:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:37
+#, c-format
+msgid "United States"
+msgstr "الولايات المتحدة"
+
+#: ../lib/network/netconnect.pm:60 ../lib/network/netconnect.pm:493
+#: ../lib/network/netconnect.pm:507
+#, c-format
+msgid "Manual choice"
+msgstr "اختيار يدوي"
+
+#: ../lib/network/netconnect.pm:60
+#, c-format
+msgid "Internal ISDN card"
+msgstr "بطاقة ISDN داخلية"
+
+#: ../lib/network/netconnect.pm:65
+#, c-format
+msgid "Protocol for the rest of the world"
+msgstr "بروتوكول لبقية العالم"
+
+#: ../lib/network/netconnect.pm:67 ../tools/drakconnect:564
+#, c-format
+msgid "European protocol (EDSS1)"
+msgstr "البروتوكول الأوروبي (EDSS1)"
+
+#: ../lib/network/netconnect.pm:68 ../tools/drakconnect:565
+#, c-format
+msgid ""
+"Protocol for the rest of the world\n"
+"No D-Channel (leased lines)"
+msgstr ""
+"بروتوكول لبقية العالم\n"
+"لا D-Channel (خطوط مؤجرة)"
+
+#: ../lib/network/netconnect.pm:118 ../tools/drakconnect:61
+#, c-format
+msgid "Network & Internet Configuration"
+msgstr "تهيئة الشّبكة والإنترنت"
+
+#: ../lib/network/netconnect.pm:123
+#, c-format
+msgid "Choose the connection you want to configure"
+msgstr "اختر الوصلة التي تريد تهيئتها"
+
+#: ../lib/network/netconnect.pm:145 ../lib/network/netconnect.pm:348
+#: ../lib/network/netconnect.pm:788
+#, c-format
+msgid "Select the network interface to configure:"
+msgstr "اختيار واجهة الشبكة لتهيئتها:"
+
+#: ../lib/network/netconnect.pm:164
+#, c-format
+msgid "No device can be found for this connection type."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:173
+#, fuzzy, c-format
+msgid "Hardware Configuration"
+msgstr "تهيئة الشبكة"
+
+#: ../lib/network/netconnect.pm:177 ../tools/drakroam:90
+#, c-format
+msgid "Configuring device..."
+msgstr "تهيئة الجهاز..."
+
+#: ../lib/network/netconnect.pm:194
+#, c-format
+msgid "Please select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:209 ../tools/drakroam:170
+#, fuzzy, c-format
+msgid "Scanning for networks..."
+msgstr "جاري مسح الشبكة..."
+
+#: ../lib/network/netconnect.pm:212
+#, c-format
+msgid "Please select your network:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:241
+#, c-format
+msgid ""
+"Please select your connection protocol.\n"
+"If you do not know it, keep the preselected protocol."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:285 ../lib/network/netconnect.pm:655
+#, c-format
+msgid "Connection control"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Connection Configuration"
+msgstr "تهيئة الاتصال"
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Please fill or check the field below"
+msgstr "فضلاً املأ أو أشّر على الحقل أدناه"
+
+#: ../lib/network/netconnect.pm:318
+#, c-format
+msgid "Your personal phone number"
+msgstr "رقم هاتفك الشخصي"
+
+#: ../lib/network/netconnect.pm:319
+#, c-format
+msgid "Provider name (ex provider.net)"
+msgstr "اسم المزوّد (مثلاً provider.net("
+
+#: ../lib/network/netconnect.pm:320 ../tools/drakconnect:494
+#, c-format
+msgid "Provider phone number"
+msgstr "رقم هاتف المزوّد"
+
+#: ../lib/network/netconnect.pm:321
+#, c-format
+msgid "Provider DNS 1 (optional)"
+msgstr "مُزوّد DNS 1 (اختياري)"
+
+#: ../lib/network/netconnect.pm:322
+#, c-format
+msgid "Provider DNS 2 (optional)"
+msgstr "مُزوّد Provider DNS 2 (اختياري)"
+
+#: ../lib/network/netconnect.pm:323 ../tools/drakconnect:446
+#, c-format
+msgid "Dialing mode"
+msgstr "وضعية الإتصال"
+
+#: ../lib/network/netconnect.pm:324 ../tools/drakconnect:451
+#: ../tools/drakconnect:518
+#, c-format
+msgid "Connection speed"
+msgstr "سرعة الإتصال"
+
+#: ../lib/network/netconnect.pm:325 ../tools/drakconnect:456
+#, c-format
+msgid "Connection timeout (in sec)"
+msgstr "الوقت الأقصى للاتصال (بالثواني)"
+
+#: ../lib/network/netconnect.pm:328 ../tools/drakconnect:555
+#, c-format
+msgid "Card IRQ"
+msgstr "IRQ للبطاقة"
+
+#: ../lib/network/netconnect.pm:329 ../tools/drakconnect:556
+#, c-format
+msgid "Card mem (DMA)"
+msgstr "ذاكرة البطاقة (DMA)"
+
+#: ../lib/network/netconnect.pm:330 ../tools/drakconnect:557
+#, c-format
+msgid "Card IO"
+msgstr "IO للبطاقة"
+
+#: ../lib/network/netconnect.pm:331 ../tools/drakconnect:558
+#, c-format
+msgid "Card IO_0"
+msgstr "IO_0 للبطاقة"
+
+#: ../lib/network/netconnect.pm:332
+#, c-format
+msgid "Card IO_1"
+msgstr "IO_1 للبطاقة"
+
+#: ../lib/network/netconnect.pm:350 ../lib/network/netconnect.pm:385
+#: ../tools/drakconnect:719 ../tools/drakgw:123
+#, c-format
+msgid "Net Device"
+msgstr "جهاز الشبكة"
+
+#: ../lib/network/netconnect.pm:351 ../lib/network/netconnect.pm:356
+#, c-format
+msgid "External ISDN modem"
+msgstr "مودم ISDN خارجي"
+
+#: ../lib/network/netconnect.pm:384
+#, c-format
+msgid "Select a device!"
+msgstr "اختيار جهاز!"
+
+#: ../lib/network/netconnect.pm:393 ../lib/network/netconnect.pm:403
+#: ../lib/network/netconnect.pm:413 ../lib/network/netconnect.pm:446
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid "ISDN Configuration"
+msgstr "تهيئة ISDN"
+
+#: ../lib/network/netconnect.pm:394
+#, c-format
+msgid "What kind of card do you have?"
+msgstr "ما هو نوع البطاقة لديك؟"
+
+#: ../lib/network/netconnect.pm:404
+#, c-format
+msgid ""
+"\n"
+"If you have an ISA card, the values on the next screen should be right.\n"
+"\n"
+"If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your "
+"card.\n"
+msgstr ""
+"\n"
+"إذا كانت لديك بطاقة ISA، فإن القيم التي ستعرض على الشاشة التالية يجب أن تكون "
+"صحيحة.\n"
+"\n"
+"إذا كانت لديك بطاقة PCMCIA، يجب عليك أن تعرف قيم \"irq\" و \"io\" الخاصة "
+"ببطاقتك.\n"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Continue"
+msgstr "استمرار"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Abort"
+msgstr "إجهاض"
+
+#: ../lib/network/netconnect.pm:414
+#, c-format
+msgid "Which of the following is your ISDN card?"
+msgstr "أي من الآتي هي بطاقة ISDN الخاصة بك؟"
+
+#: ../lib/network/netconnect.pm:432
+#, c-format
+msgid ""
+"A CAPI driver is available for this modem. This CAPI driver can offer more "
+"capabilities than the free driver (like sending faxes). Which driver do you "
+"want to use?"
+msgstr ""
+"يتوفّر مشغّل CAPI لهذا المودم. قد يكون لدافعة CAPI هذه قدراتٍ أكثر من مشغل حرّ "
+"(كالقدرة على إرسال الفاكسات). أي المشغّلين تودّ استعماله؟"
+
+#: ../lib/network/netconnect.pm:434 ../tools/drakconnect:113
+#, c-format
+msgid "Driver"
+msgstr "المشغّل"
+
+#: ../lib/network/netconnect.pm:446
+#, c-format
+msgid "Which protocol do you want to use?"
+msgstr "ما هو البروتوكول الذي تريد استخدامه؟"
+
+#: ../lib/network/netconnect.pm:448 ../tools/drakconnect:113
+#: ../tools/drakconnect:305 ../tools/drakconnect:563 ../tools/drakids:252
+#: ../tools/drakvpn-old:839
+#, c-format
+msgid "Protocol"
+msgstr "البروتوكول"
+
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid ""
+"Select your provider.\n"
+"If it is not listed, choose Unlisted."
+msgstr ""
+"اختر موفر الخدمة الخاص بك.\n"
+"ان لم يكن موجوداً في القائمة، اختر غير موجود."
+
+#: ../lib/network/netconnect.pm:462 ../lib/network/netconnect.pm:558
+#, c-format
+msgid "Provider:"
+msgstr "المُزوّد:"
+
+#: ../lib/network/netconnect.pm:471
+#, c-format
+msgid ""
+"Your modem is not supported by the system.\n"
+"Take a look at http://www.linmodems.org"
+msgstr ""
+"المودم لديك غير مدعوم من النظام.\n"
+"الق نظرة على http://www.linmodems.org"
+
+#: ../lib/network/netconnect.pm:490
+#, c-format
+msgid "Select the modem to configure:"
+msgstr "اختر المودم لتهيئته:"
+
+#: ../lib/network/netconnect.pm:492
+#, c-format
+msgid "Modem"
+msgstr "المودم"
+
+#: ../lib/network/netconnect.pm:527
+#, c-format
+msgid "Please choose which serial port your modem is connected to."
+msgstr "الرجاء اختيار المنفذ التسلسلي المرتبط به المودم لديك."
+
+#: ../lib/network/netconnect.pm:556
+#, c-format
+msgid "Select your provider:"
+msgstr "اختر مُزوّدك:"
+
+#: ../lib/network/netconnect.pm:580
+#, c-format
+msgid "Dialup: account options"
+msgstr "الاتصال الهاتفي: خيارات الحساب"
+
+#: ../lib/network/netconnect.pm:583
+#, c-format
+msgid "Connection name"
+msgstr "اسم الإتصال"
+
+#: ../lib/network/netconnect.pm:584
+#, c-format
+msgid "Phone number"
+msgstr "رقم الهاتف"
+
+#: ../lib/network/netconnect.pm:585
+#, c-format
+msgid "Login ID"
+msgstr "معرّف الدخول"
+
+#: ../lib/network/netconnect.pm:586 ../lib/network/vpn/vpnc.pm:56
+#: ../tools/drakinvictus:110
+#, c-format
+msgid "Password"
+msgstr "كلمة المرور"
+
+#: ../lib/network/netconnect.pm:600 ../lib/network/netconnect.pm:633
+#, c-format
+msgid "Dialup: IP parameters"
+msgstr "الاتصال الهاتفي: مُعطيات IP"
+
+#: ../lib/network/netconnect.pm:603
+#, c-format
+msgid "IP parameters"
+msgstr "مُعطيات IP"
+
+#: ../lib/network/netconnect.pm:605
+#, c-format
+msgid "Subnet mask"
+msgstr "قناع الشّبكة الفرعيّة"
+
+#: ../lib/network/netconnect.pm:617
+#, c-format
+msgid "Dialup: DNS parameters"
+msgstr "الاتصال الهاتفي: مُعطيات DNS"
+
+#: ../lib/network/netconnect.pm:620
+#, c-format
+msgid "DNS"
+msgstr "DNS"
+
+#: ../lib/network/netconnect.pm:621
+#, c-format
+msgid "Domain name"
+msgstr "اسم النطاق"
+
+#: ../lib/network/netconnect.pm:622 ../tools/drakconnect:996
+#, c-format
+msgid "First DNS Server (optional)"
+msgstr "خادم DNS الأول (اختياري)"
+
+#: ../lib/network/netconnect.pm:623 ../tools/drakconnect:997
+#, c-format
+msgid "Second DNS Server (optional)"
+msgstr "خادم DNS الثاني (اختياري)"
+
+#: ../lib/network/netconnect.pm:624
+#, c-format
+msgid "Set hostname from IP"
+msgstr "تحديد اسم المضيف من عنوان IP"
+
+#: ../lib/network/netconnect.pm:637
+#, c-format
+msgid "Gateway IP address"
+msgstr "عنوان IP للبوّابة"
+
+#: ../lib/network/netconnect.pm:670
+#, c-format
+msgid "Automatically at boot"
+msgstr "آليا عند الإقلاع"
+
+#: ../lib/network/netconnect.pm:672
+#, c-format
+msgid "By using Net Applet in the system tray"
+msgstr "باستعمال بريمج الشّبكة (Net Applet( في درج النّظام"
+
+#: ../lib/network/netconnect.pm:674
+#, c-format
+msgid "Manually (the interface would still be activated at boot)"
+msgstr "يدويا (ستمكّن الواجهة عند الإقلاع رغم هذا)"
+
+#: ../lib/network/netconnect.pm:683
+#, c-format
+msgid "How do you want to dial this connection?"
+msgstr "كيف تريد طلب هذا الاتصال؟"
+
+#: ../lib/network/netconnect.pm:696
+#, c-format
+msgid "Do you want to try to connect to the Internet now?"
+msgstr "هل تريد أن تحاول أن تتصل بالإنترنت الآن؟"
+
+#: ../lib/network/netconnect.pm:704 ../tools/drakconnect:1027
+#, c-format
+msgid "Testing your connection..."
+msgstr "اختبار الوصلة..."
+
+#: ../lib/network/netconnect.pm:723
+#, c-format
+msgid "The system is now connected to the Internet."
+msgstr "النظام الآن متصل بالإنترنت"
+
+#: ../lib/network/netconnect.pm:724
+#, c-format
+msgid "For security reasons, it will be disconnected now."
+msgstr "لأسباب أمنية، سيتم قطع الإتصال الآن."
+
+#: ../lib/network/netconnect.pm:725
+#, c-format
+msgid ""
+"The system does not seem to be connected to the Internet.\n"
+"Try to reconfigure your connection."
+msgstr ""
+"لا يبدو أن النظام متصل بالإنترنت.\n"
+"حاول إعادة تهيئة الوصلة."
+
+#: ../lib/network/netconnect.pm:740
+#, c-format
+msgid ""
+"Congratulations, the network and Internet configuration is finished.\n"
+"\n"
+msgstr ""
+"تهانينا، انتهت تهيئة الشبكة و الإنترنت.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:743
+#, c-format
+msgid ""
+"After this is done, we recommend that you restart your X environment to "
+"avoid any hostname-related problems."
+msgstr ""
+"بعد عمل ذلك، ننصح بإعادة تشغيل بيئة X لديك لتفادي أي مشاكل تتعلق بإسم المضيف."
+
+#: ../lib/network/netconnect.pm:744
+#, c-format
+msgid ""
+"Problems occurred during configuration.\n"
+"Test your connection via net_monitor or mcc. If your connection does not "
+"work, you might want to relaunch the configuration."
+msgstr ""
+"ظهرت مشاكل أثناء التهيئة.\n"
+"اختبر الوصلة باستخدام net_monitor أو mcc. إذا لم تعمل الوصلة، فقد تريد إعادة "
+"التهيئة."
+
+#: ../lib/network/netconnect.pm:756
+#, c-format
+msgid "Sagem USB modem"
+msgstr "مودم Sagem USB"
+
+#: ../lib/network/netconnect.pm:757 ../lib/network/netconnect.pm:758
+#, c-format
+msgid "Bewan modem"
+msgstr "مودم Bewan"
+
+#: ../lib/network/netconnect.pm:759
+#, c-format
+msgid "ECI Hi-Focus modem"
+msgstr "مودم ECI Hi-Focus"
+
+#: ../lib/network/netconnect.pm:760
+#, c-format
+msgid "LAN connection"
+msgstr "وصلة LAN"
+
+#: ../lib/network/netconnect.pm:761 ../tools/drakroam:29
+#, c-format
+msgid "Wireless connection"
+msgstr "اتّصال لاسلكي"
+
+#: ../lib/network/netconnect.pm:762
+#, c-format
+msgid "ADSL connection"
+msgstr "وصلة ADSL"
+
+#: ../lib/network/netconnect.pm:763
+#, c-format
+msgid "Cable connection"
+msgstr "وصلة كيبل"
+
+#: ../lib/network/netconnect.pm:764
+#, c-format
+msgid "ISDN connection"
+msgstr "وصلة ISDN"
+
+#: ../lib/network/netconnect.pm:765
+#, c-format
+msgid "Modem connection"
+msgstr "وصلة المودم"
+
+#: ../lib/network/netconnect.pm:766
+#, c-format
+msgid "DVB connection"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:768
+#, c-format
+msgid "(detected on port %s)"
+msgstr "(اكتشاف على المنفذ %s)"
+
+#. -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected %s)"
+msgstr "(اكتشف %s)"
+
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected)"
+msgstr "(تم اكتشافه)"
+
+#: ../lib/network/netconnect.pm:771
+#, c-format
+msgid "Network Configuration"
+msgstr "تهيئة الشبكة"
+
+#: ../lib/network/netconnect.pm:772
+#, c-format
+msgid "Zeroconf hostname resolution"
+msgstr "ترجمة اسم مضيف Zeroconf"
+
+#: ../lib/network/netconnect.pm:773
+#, c-format
+msgid ""
+"If desired, enter a Zeroconf hostname.\n"
+"This is the name your machine will use to advertise any of\n"
+"its shared resources that are not managed by the network.\n"
+"It is not necessary on most networks."
+msgstr ""
+"إن أردت، أدخل إسم مضيف Zeroconf.\n"
+"هذا هو الإسم الّذي سيستعمله حاسبك للتّشهير\n"
+"بأيّة من خدماته المشتركة و الّتي لا تديرها الشّبكة.\n"
+"غير ضروري على معظم الشّبكات."
+
+#: ../lib/network/netconnect.pm:777
+#, c-format
+msgid "Zeroconf Host name"
+msgstr "اسم مضيف Zeroconf"
+
+#: ../lib/network/netconnect.pm:778
+#, c-format
+msgid "Zeroconf host name must not contain a ."
+msgstr "يجب أن يحتوي اسم مضيف Zeroconf على . (نقطة("
+
+#: ../lib/network/netconnect.pm:779
+#, c-format
+msgid ""
+"Because you are doing a network installation, your network is already "
+"configured.\n"
+"Click on Ok to keep your configuration, or cancel to reconfigure your "
+"Internet & Network connection.\n"
+msgstr ""
+"لأنك تقوم بالتثبيت عبر الشبكة، فقد تمت تهيئة الشبكة مسبقاً.\n"
+"اضغط موافق لحفظ التهيئة الخاصة بك، أو اضغط إلغاء لإعادة تهيئة وصلات الإنترنت "
+"و الشبكة.\n"
+
+#: ../lib/network/netconnect.pm:782
+#, c-format
+msgid "The network needs to be restarted. Do you want to restart it?"
+msgstr "يجب إعادة تشغيل الشبكة. هل تريد إعادة تشغيلها؟"
+
+#: ../lib/network/netconnect.pm:783
+#, c-format
+msgid ""
+"A problem occurred while restarting the network: \n"
+"\n"
+"%s"
+msgstr ""
+"ظهرت مشكلة أثناء إعادة تشغيل الشبكة: \n"
+"\n"
+"%s"
+
+#: ../lib/network/netconnect.pm:784
+#, c-format
+msgid ""
+"We are now going to configure the %s connection.\n"
+"\n"
+"\n"
+"Press \"%s\" to continue."
+msgstr ""
+"سوف نقوم الآن بتهيئة الاتّصال %s\n"
+"\n"
+"\n"
+"اضغط \"%s\" لتستمرّ."
+
+#: ../lib/network/netconnect.pm:785
+#, c-format
+msgid "Configuration is complete, do you want to apply settings?"
+msgstr "تم الانتهاء من التهيئة، هل تريد تطبيق الإعدادات ؟"
+
+#: ../lib/network/netconnect.pm:786
+#, c-format
+msgid ""
+"You have configured multiple ways to connect to the Internet.\n"
+"Choose the one you want to use.\n"
+"\n"
+msgstr ""
+"لقد قمت بتهيئة طرق متعددة للإتصال بالإنترنت.\n"
+"اختر الطريقة التي تريد استخدامها.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:787
+#, c-format
+msgid "Internet connection"
+msgstr "وصلة انترنت"
+
+#: ../lib/network/netconnect.pm:789
+#, c-format
+msgid "Configuring network device %s (driver %s)"
+msgstr "جاري تهيئة جهاز الشبكة %s (مشغّل %s)"
+
+#: ../lib/network/netconnect.pm:790
+#, c-format
+msgid ""
+"The following protocols can be used to configure a LAN connection. Please "
+"choose the one you want to use."
+msgstr ""
+"البروتوكولات التّالية يمكن استخدامها لتهيئة اتصال LAN. الرجاء اختيار "
+"البروتوكول الذي تريد استخدامه."
+
+#: ../lib/network/netconnect.pm:791
+#, c-format
+msgid ""
+"Please enter your host name.\n"
+"Your host name should be a fully-qualified host name,\n"
+"such as ``mybox.mylab.myco.com''.\n"
+"You may also enter the IP address of the gateway if you have one."
+msgstr ""
+"الرجاء إدخال اسم المضيف.\n"
+"يجب أن يكون اسم المضيف صالحاً و كاملاً،\n"
+"مثل ``mybox.mylab.myco.com''.\n"
+"يمكنك أيضاً إدخال عنوان IP الخاص بالبوابة ان وُجدت."
+
+#: ../lib/network/netconnect.pm:796
+#, c-format
+msgid "Last but not least you can also type in your DNS server IP addresses."
+msgstr "أخيراً وليس آخراً يمكنك أيضاً أن تدخل عناوين IP لخادمات DNS."
+
+#: ../lib/network/netconnect.pm:797
+#, c-format
+msgid "DNS server address should be in format 1.2.3.4"
+msgstr "عنوان خادم DNS يجب أن يكون على النسق 1.2.3.4"
+
+#: ../lib/network/netconnect.pm:798 ../tools/drakconnect:689
+#, c-format
+msgid "Gateway address should be in format 1.2.3.4"
+msgstr "عنوان البوابات يجب أن تكون على النسق 1.2.3.4"
+
+#: ../lib/network/netconnect.pm:799
+#, c-format
+msgid "Gateway device"
+msgstr "جهاز البوابة"
+
+#: ../lib/network/netconnect.pm:813
+#, c-format
+msgid ""
+"An unexpected error has happened:\n"
+"%s"
+msgstr ""
+"حدث خطأ غير متوقّع:\n"
+"%s"
+
+#: ../lib/network/network.pm:429
+#, c-format
+msgid "Proxies configuration"
+msgstr "تهيئة البروكسي"
+
+#: ../lib/network/network.pm:430
+#, c-format
+msgid ""
+"Here you can set up your proxies configuration (eg: http://"
+"my_caching_server:8080)"
+msgstr ""
+
+#: ../lib/network/network.pm:431
+#, c-format
+msgid "HTTP proxy"
+msgstr "بروكسي HTTP"
+
+#: ../lib/network/network.pm:432
+#, c-format
+msgid "Use HTTP proxy for HTTPS connections"
+msgstr ""
+
+#: ../lib/network/network.pm:433
+#, c-format
+msgid "HTTPS proxy"
+msgstr ""
+
+#: ../lib/network/network.pm:434
+#, c-format
+msgid "FTP proxy"
+msgstr "بروكسي FTP"
+
+#: ../lib/network/network.pm:435
+#, fuzzy, c-format
+msgid "No proxy for (comma separated list):"
+msgstr "%d حرفيات مفصولة بالفاصلة"
+
+#: ../lib/network/network.pm:440
+#, c-format
+msgid "Proxy should be http://..."
+msgstr "البروكسي يجب أن يكون http://..."
+
+#: ../lib/network/network.pm:441
+#, fuzzy, c-format
+msgid "Proxy should be http://... or https://..."
+msgstr "البروكسي يجب أن يكون http://..."
+
+#: ../lib/network/network.pm:442
+#, c-format
+msgid "URL should begin with 'ftp:' or 'http:'"
+msgstr "يجب أن يبدأ العنوان بـ 'ftp:' أو 'http:'"
+
+#: ../lib/network/shorewall.pm:61
+#, c-format
+msgid ""
+"Please select the interfaces that will be protected by the firewall.\n"
+"\n"
+"All interfaces directly connected to Internet should be selected,\n"
+"while interfaces connected to a local network may be unselected.\n"
+"\n"
+"Which interfaces should be protected?\n"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:136
+#, c-format
+msgid "Keep custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:137
+#, c-format
+msgid "Drop custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:142
+#, c-format
+msgid ""
+"Your firewall configuration has been manually edited and contains\n"
+"rules that may conflict with the configuration that has just been set up.\n"
+"What do you want to do?"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:134
+#, c-format
+msgid "Some components (%s) are required but aren't available for %s hardware."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:135
+#, c-format
+msgid "Some packages (%s) are required but aren't available."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:137
+#, c-format
+msgid ""
+"These packages can be found in Mandriva Club or in Mandriva commercial "
+"releases."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:138
+#, c-format
+msgid "The following component is missing: %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:140
+#, c-format
+msgid ""
+"The required files can also be installed from this URL:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:177 ../lib/network/thirdparty.pm:182
+#, c-format
+msgid "Use a floppy"
+msgstr "استخدام قرص مرن"
+
+#: ../lib/network/thirdparty.pm:178 ../lib/network/thirdparty.pm:185
+#, c-format
+msgid "Use my Windows partition"
+msgstr "جاري تغيير حجم تجزيء ويندوز"
+
+#: ../lib/network/thirdparty.pm:179
+#, c-format
+msgid "Select file"
+msgstr "اختيار ملف"
+
+#: ../lib/network/thirdparty.pm:190
+#, fuzzy, c-format
+msgid "Please select the firmware file (for example: %s)"
+msgstr "الرجاء اختيار مشغّل ويندوز (ملف .inf)"
+
+#: ../lib/network/thirdparty.pm:214
+#, fuzzy, c-format
+msgid "Unable to find \"%s\" on your Windows system!"
+msgstr "حذف الخطوط من النظام"
+
+#: ../lib/network/thirdparty.pm:216
+#, c-format
+msgid "No Windows system has been detected!"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:226
+#, c-format
+msgid "Insert floppy"
+msgstr "أدخل قرص مرن"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid ""
+"Insert a FAT formatted floppy in drive %s with %s in root directory and "
+"press %s"
+msgstr ""
+"أدخل قرص مرن منسّق على نظام ملفات FAT في السواقة %s مع %s في الدّليل الجذري "
+"واضغط %s"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid "Next"
+msgstr "التالي"
+
+#: ../lib/network/thirdparty.pm:237
+#, c-format
+msgid "Floppy access error, unable to mount device %s"
+msgstr "خطأ في الوصول إلى القرص المرن، لم يمكن تجهيز الجهاز %s"
+
+#: ../lib/network/thirdparty.pm:319
+#, c-format
+msgid "Looking for required software and drivers..."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:330
+#, fuzzy, c-format
+msgid "Please wait, running device configuration commands..."
+msgstr "الرجاء الانتظار، جاري اكتشاف وتهيئة الأجهزة..."
+
+#: ../lib/network/vpn/openvpn.pm:107
+#, c-format
+msgid "X509 Public Key Infrastructure"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:108
+#, c-format
+msgid "Static Key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:115
+#, c-format
+msgid "Type"
+msgstr "النوع"
+
+#. -PO: please don't translate the CA acronym
+#: ../lib/network/vpn/openvpn.pm:142
+#, c-format
+msgid "Certificate Authority (CA)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:148
+#, c-format
+msgid "Certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:154
+#, fuzzy, c-format
+msgid "Key"
+msgstr "كينيا"
+
+#: ../lib/network/vpn/openvpn.pm:160
+#, fuzzy, c-format
+msgid "TLS control channel key"
+msgstr "مفتاح Control الأيسر"
+
+#: ../lib/network/vpn/openvpn.pm:167
+#, c-format
+msgid "Key direction"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:175
+#, fuzzy, c-format
+msgid "Authenticate using username and password"
+msgstr "تعذر الدخول باستخدام اسم المستخدم %s (كلمة مرور سيئة؟)"
+
+#: ../lib/network/vpn/openvpn.pm:181
+#, c-format
+msgid "Check server certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:187
+#, fuzzy, c-format
+msgid "Cipher algorithm"
+msgstr "خوارزمية التّشفير"
+
+#: ../lib/network/vpn/openvpn.pm:191
+#, c-format
+msgid "Default"
+msgstr "افتراضي"
+
+#: ../lib/network/vpn/openvpn.pm:195
+#, c-format
+msgid "Size of cipher key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:206
+#, fuzzy, c-format
+msgid "Get from server"
+msgstr "خادم Telnet"
+
+#: ../lib/network/vpn/openvpn.pm:216
+#, fuzzy, c-format
+msgid "Gateway port"
+msgstr "البوّابة"
+
+#: ../lib/network/vpn/openvpn.pm:227 ../tools/drakgw:176
+#, fuzzy, c-format
+msgid "Local IP address"
+msgstr "عنوان IP"
+
+#: ../lib/network/vpn/openvpn.pm:232
+#, fuzzy, c-format
+msgid "Remote IP address"
+msgstr "عنوان IP للبوّابة"
+
+#: ../lib/network/vpn/openvpn.pm:237
+#, fuzzy, c-format
+msgid "Use TCP protocol"
+msgstr "البروتوكول"
+
+#: ../lib/network/vpn/openvpn.pm:243
+#, c-format
+msgid "Virtual network device type"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:250
+#, c-format
+msgid "Virtual network device number (optional)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:365
+#, c-format
+msgid "Starting connection.."
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:380
+#, c-format
+msgid "Please insert your token"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:9
+#, c-format
+msgid "Cisco VPN Concentrator"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:43
+#, fuzzy, c-format
+msgid "Group name"
+msgstr "هوية المجموعة"
+
+#: ../lib/network/vpn/vpnc.pm:47
+#, c-format
+msgid "Group secret"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:52
+#, c-format
+msgid "Username"
+msgstr "اسم المستخدم"
+
+#: ../lib/network/vpn/vpnc.pm:61
+#, c-format
+msgid "Use Cisco-UDP encapsulation"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:67
+#, c-format
+msgid "Use specific UDP port"
+msgstr ""
+
+#: ../tools/drakconnect:81
+#, c-format
+msgid "Network configuration (%d adapters)"
+msgstr "إعدادات الشبكة (%d موائمات)"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Gateway:"
+msgstr "البوابة:"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Interface:"
+msgstr "الواجهة:"
+
+#: ../tools/drakconnect:97 ../tools/net_monitor:119
+#, c-format
+msgid "Wait please"
+msgstr "الرجاء الانتظار"
+
+#: ../tools/drakconnect:113 ../tools/drakinvictus:105
+#, c-format
+msgid "Interface"
+msgstr "الواجهة"
+
+#: ../tools/drakconnect:113
+#, c-format
+msgid "State"
+msgstr "الحالة"
+
+#: ../tools/drakconnect:130
+#, c-format
+msgid "Hostname: "
+msgstr "اسم المضيف:"
+
+#: ../tools/drakconnect:132
+#, c-format
+msgid "Configure hostname..."
+msgstr "تهيئة اسم المضيف..."
+
+#: ../tools/drakconnect:146 ../tools/drakconnect:850
+#, c-format
+msgid "LAN configuration"
+msgstr "تهيئة LAN"
+
+#: ../tools/drakconnect:151
+#, c-format
+msgid "Configure Local Area Network..."
+msgstr "تهيئة الشبكة المحلية..."
+
+#: ../tools/drakconnect:157 ../tools/drakconnect:240 ../tools/draknfs:181
+#, c-format
+msgid "Help"
+msgstr "مساعدة"
+
+#: ../tools/drakconnect:159 ../tools/drakconnect:241 ../tools/drakconnect:245
+#: ../tools/drakinvictus:140
+#, c-format
+msgid "Apply"
+msgstr "تطبيق"
+
+#: ../tools/drakconnect:161 ../tools/drakconnect:942 ../tools/drakconnect:1033
+#: ../tools/draknetprofile:106 ../tools/net_monitor:341
+#, c-format
+msgid "Cancel"
+msgstr "إلغاء"
+
+#: ../tools/drakconnect:162 ../tools/drakconnect:857 ../tools/drakconnect:944
+#: ../tools/drakconnect:1034 ../tools/draknetprofile:108
+#: ../tools/net_monitor:342
+#, c-format
+msgid "Ok"
+msgstr "موافق"
+
+#: ../tools/drakconnect:164 ../tools/drakconnect:636 ../tools/drakgw:359
+#: ../tools/drakroam:251 ../tools/drakroam:289 ../tools/draksambashare:208
+#, c-format
+msgid "Please wait"
+msgstr "الرجاء الانتظار"
+
+#: ../tools/drakconnect:166 ../tools/drakconnect:638
+#, c-format
+msgid "Please Wait... Applying the configuration"
+msgstr "يرجى الإنتظار... جاري تطبيق التهيئة"
+
+#: ../tools/drakconnect:192
+#, c-format
+msgid "Manage connections"
+msgstr "إدارة الاتّصالات"
+
+#: ../tools/drakconnect:219 ../tools/drakroam:302
+#, c-format
+msgid "Device: "
+msgstr "الجهاز: "
+
+#: ../tools/drakconnect:302
+#, c-format
+msgid "IP configuration"
+msgstr "تهيئة IP"
+
+#: ../tools/drakconnect:337
+#, c-format
+msgid "DNS servers"
+msgstr "خادمات DNS"
+
+#: ../tools/drakconnect:343
+#, c-format
+msgid "Search Domain"
+msgstr "نطاق البحث"
+
+#: ../tools/drakconnect:351 ../tools/drakvpn-old:837
+#, c-format
+msgid "none"
+msgstr "لاشئ"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "static"
+msgstr "ثابت"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "DHCP"
+msgstr "DHCP"
+
+#: ../tools/drakconnect:434
+#, c-format
+msgid "Start at boot"
+msgstr "البدء عند الإقلاع"
+
+#: ../tools/drakconnect:516
+#, c-format
+msgid "Flow control"
+msgstr "التحكّم بالدّفق"
+
+#: ../tools/drakconnect:517
+#, c-format
+msgid "Line termination"
+msgstr "إنهاء الخط"
+
+#: ../tools/drakconnect:528
+#, c-format
+msgid "Modem timeout"
+msgstr "انتهاء وقت المستخدم"
+
+#: ../tools/drakconnect:532
+#, c-format
+msgid "Use lock file"
+msgstr "ملف قِفل المستخدم"
+
+#: ../tools/drakconnect:534
+#, c-format
+msgid "Wait for dialup tone before dialing"
+msgstr "انتظر نغمة الاتصال قبل القيام بالاتّصال"
+
+#: ../tools/drakconnect:537
+#, c-format
+msgid "Busy wait"
+msgstr "انتظار المشغول"
+
+#: ../tools/drakconnect:542
+#, c-format
+msgid "Modem sound"
+msgstr "صوت المودم"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Enable"
+msgstr "تمكين"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Disable"
+msgstr "تعطيل"
+
+#: ../tools/drakconnect:592
+#, c-format
+msgid "Vendor"
+msgstr "المصنع"
+
+#: ../tools/drakconnect:593
+#, c-format
+msgid "Description"
+msgstr "الوصف"
+
+#: ../tools/drakconnect:594
+#, c-format
+msgid "Media class"
+msgstr "فئة الوسيط"
+
+#: ../tools/drakconnect:595
+#, c-format
+msgid "Module name"
+msgstr "اسم الوحدة"
+
+#: ../tools/drakconnect:596
+#, c-format
+msgid "Mac Address"
+msgstr "عنوان MAC"
+
+#: ../tools/drakconnect:597
+#, c-format
+msgid "Bus"
+msgstr "ناقل"
+
+#: ../tools/drakconnect:598
+#, c-format
+msgid "Location on the bus"
+msgstr "الموقع على الناقل"
+
+#: ../tools/drakconnect:685 ../tools/drakconnect:766 ../tools/drakconnect:952
+#, c-format
+msgid "No IP"
+msgstr "بدون IP"
+
+#: ../tools/drakconnect:686 ../tools/drakconnect:767
+#, c-format
+msgid "No Mask"
+msgstr "لا قناع"
+
+#: ../tools/drakconnect:705 ../tools/drakgw:307
+#, c-format
+msgid ""
+"No ethernet network adapter has been detected on your system. Please run the "
+"hardware configuration tool."
+msgstr "لم يتم اكتشاف موائم شبكي على نظامك. فضلاً قم بتشغيل أداة تهيئة العتاد."
+
+#: ../tools/drakconnect:714
+#, c-format
+msgid "Remove a network interface"
+msgstr "إزالة واجهة شبكة"
+
+#: ../tools/drakconnect:718
+#, c-format
+msgid "Select the network interface to remove:"
+msgstr "اختيار واجهة الشبكة لإزالتها:"
+
+#: ../tools/drakconnect:750
+#, c-format
+msgid ""
+"An error occurred while deleting the \"%s\" network interface:\n"
+"\n"
+"%s"
+msgstr ""
+"حدث خطأ خلال حذف واجهة الشّبكة \"%s\":\n"
+"\n"
+"%s"
+
+#: ../tools/drakconnect:751
+#, c-format
+msgid ""
+"Congratulations, the \"%s\" network interface has been successfully deleted"
+msgstr "تهانينا، تمّ حذف واجهة الشّبكة \"%s\" بنجاح"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "up"
+msgstr "يعمل"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "down"
+msgstr "مُعطّل"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Connected"
+msgstr "متّصل"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Not connected"
+msgstr "غير متصل"
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Disconnect..."
+msgstr "قطع الإتصال..."
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Connect..."
+msgstr "اتصال..."
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Deactivate now"
+msgstr "التعطيل الآن"
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Activate now"
+msgstr "التنشيط الآن"
+
+#: ../tools/drakconnect:854
+#, c-format
+msgid ""
+"You do not have any configured interface.\n"
+"Configure them first by clicking on 'Configure'"
+msgstr ""
+"لم تقم بتهيئة أي واجهات.\n"
+"قم بتهيئتهم أولا عن طريق الضغط على 'تهيئة'"
+
+#: ../tools/drakconnect:868
+#, c-format
+msgid "LAN Configuration"
+msgstr "تهيئة الشّبكة المحليّة"
+
+#: ../tools/drakconnect:880
+#, c-format
+msgid "Adapter %s: %s"
+msgstr "المحوّل %s: %s"
+
+#: ../tools/drakconnect:889
+#, c-format
+msgid "Boot Protocol"
+msgstr "بروتوكول الإقلاع"
+
+#: ../tools/drakconnect:890
+#, c-format
+msgid "Started on boot"
+msgstr "يتم تشغيله عند الإقلاع"
+
+#: ../tools/drakconnect:926
+#, c-format
+msgid ""
+"This interface has not been configured yet.\n"
+"Run the \"Add an interface\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"لم تتمّ تهيئة الواجهة بعد.\n"
+"قم بتشغيل مساعد \"أضف واجهة\" من مركز تحكّم ماندريبا لينكس"
+
+#: ../tools/drakconnect:974
+#, c-format
+msgid "Internet connection configuration"
+msgstr "تهيئة الإتصال بالإنترنت"
+
+#: ../tools/drakconnect:980 ../tools/net_applet:68
+#, c-format
+msgid ""
+"You do not have any configured Internet connection.\n"
+"Run the \"%s\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"ليست لديك أية وصلة إنترنت مهيئة.\n"
+"شغّل مساعد \"%s\" من مركز تحكم ماندريبا لينكس"
+
+#. -PO: here "Add Connection" should be translated the same was as in control-center
+#: ../tools/drakconnect:981 ../tools/net_applet:69
+#, c-format
+msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)"
+msgstr "إعداد واجهة شبكة جديدة (LAN، ISDN، ADSL، ...)"
+
+#: ../tools/drakconnect:995
+#, c-format
+msgid "Host name (optional)"
+msgstr "اسم المضيف (اختياري)"
+
+#: ../tools/drakconnect:998
+#, c-format
+msgid "Third DNS server (optional)"
+msgstr "خادم DNS الثّالث (اختياري)"
+
+#: ../tools/drakconnect:1020
+#, c-format
+msgid "Internet Connection Configuration"
+msgstr "تهيئة الإتصال بالإنترنت"
+
+#: ../tools/drakconnect:1021
+#, c-format
+msgid "Internet access"
+msgstr "الدخول إلى الإنترنت"
+
+#: ../tools/drakconnect:1023 ../tools/net_monitor:98
+#, c-format
+msgid "Connection type: "
+msgstr "نوع الوصلة:"
+
+#: ../tools/drakconnect:1026
+#, c-format
+msgid "Status:"
+msgstr "الحالة:"
+
+#: ../tools/drakconnect:1031
+#, c-format
+msgid "Parameters"
+msgstr "مُعطيات"
+
+#: ../tools/drakgw:71
+#, c-format
+msgid "Internet Connection Sharing"
+msgstr "مشاركة الاتصال بالإنترنت"
+
+#: ../tools/drakgw:75
+#, c-format
+msgid ""
+"You are about to configure your computer to share its Internet connection.\n"
+"With that feature, other computers on your local network will be able to use "
+"this computer's Internet connection.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using drakconnect "
+"before going any further.\n"
+"\n"
+"Note: you need a dedicated Network Adapter to set up a Local Area Network "
+"(LAN)."
+msgstr ""
+"أنت على وشك تهيئة جهازك لمشاركة الإتصال بالإنترنت.\n"
+"باستخدام هذه الميزة سيمكن للحواسيب الأخرى في الشبكة المحلية أن تستخدم وصلة "
+"الحاسب لهذا الحاسب.\n"
+"\n"
+"تأكد من أنك قمت بتهيئة وصلة الشبكة/الإنترنت باستخدام drakconnect قبل "
+"المتابعة.\n"
+"\n"
+"ملحوظة: تحتاج إلى موائم للشبكة كي تقوم بإعداد الشبكة المحلية (LAN)."
+
+#: ../tools/drakgw:91
+#, c-format
+msgid ""
+"The setup of Internet Connection Sharing has already been done.\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"تم عمل مشاركة الإتصال بالإنترنت مسبقاً.\n"
+"و هي ممكّنة حالياً.\n"
+"\n"
+"ماذا تريد أن تفعل؟"
+
+#: ../tools/drakgw:95
+#, c-format
+msgid ""
+"The setup of Internet connection sharing has already been done.\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"تم تنصيب مشاركة الإتصال بالإنترنت مسبقاً.\n"
+"و هي معطلة حالياً.\n"
+"\n"
+"ماذا تريد أن تفعل؟"
+
+#: ../tools/drakgw:101
+#, c-format
+msgid "Reconfigure"
+msgstr "اعادة تهيئة"
+
+#: ../tools/drakgw:122
+#, c-format
+msgid "Please select the network interface directly connected to the internet."
+msgstr ""
+
+#: ../tools/drakgw:141
+#, c-format
+msgid ""
+"There is only one configured network adapter on your system:\n"
+"\n"
+"%s\n"
+"\n"
+"I am about to setup your Local Area Network with that adapter."
+msgstr ""
+"يوجد موائم شبكة واحد فقط معدّ على نظامك:\n"
+"\n"
+"%s\n"
+"\n"
+"نحن على وشك إعداد الشبكة المحلية باستخدام هذا الموائم."
+
+#: ../tools/drakgw:152
+#, c-format
+msgid ""
+"Please choose what network adapter will be connected to your Local Area "
+"Network."
+msgstr "الرجاء اختيار موائم الشبكة الذي سيتم به الإتصال بالشبكة المحلية."
+
+#: ../tools/drakgw:173
+#, fuzzy, c-format
+msgid "Local Area Network settings"
+msgstr "عنوان الشبكة المحلية"
+
+#: ../tools/drakgw:178
+#, c-format
+msgid "The internal domain name"
+msgstr "اسم النطاق الداخلي"
+
+#: ../tools/drakgw:184
+#, c-format
+msgid "Potential LAN address conflict found in current config of %s!\n"
+msgstr ""
+"عثر على تعارض في عنوان الشبكة المحلية المبدئي في التهيئة الحالي لـ%s!\n"
+
+#: ../tools/drakgw:200
+#, fuzzy, c-format
+msgid "Domain Name Server (DNS) configuration"
+msgstr "تهيئة خادم الطّرفيات"
+
+#: ../tools/drakgw:204
+#, c-format
+msgid "Use this gateway as domain name server"
+msgstr ""
+
+#: ../tools/drakgw:205
+#, c-format
+msgid "The DNS Server IP"
+msgstr "عنوان IP لخادم DNS"
+
+#: ../tools/drakgw:232
+#, c-format
+msgid ""
+"DHCP Server Configuration.\n"
+"\n"
+"Here you can select different options for the DHCP server configuration.\n"
+"If you do not know the meaning of an option, simply leave it as it is."
+msgstr ""
+"تهيئة خادم DHCP.\n"
+"\n"
+"هنا يمكنك اختيار خيارات مختلفة لتهيئة خادم DHCP.\n"
+"إذا لم تكن تعلم معنى خيار ما، فاتركه كما هو."
+
+#: ../tools/drakgw:239
+#, fuzzy, c-format
+msgid "Use automatic configuration (DHCP)"
+msgstr "إعادة تهيئة آلية"
+
+#: ../tools/drakgw:240
+#, c-format
+msgid "The DHCP start range"
+msgstr "مدى بداية DHCP"
+
+#: ../tools/drakgw:241
+#, c-format
+msgid "The DHCP end range"
+msgstr "مدى نهاية DHCP"
+
+#: ../tools/drakgw:242
+#, c-format
+msgid "The default lease (in seconds)"
+msgstr "الإيجار الإفتراضي (بالثواني)"
+
+#: ../tools/drakgw:243
+#, c-format
+msgid "The maximum lease (in seconds)"
+msgstr "الإيجار الأقصى (بالثواني)"
+
+#: ../tools/drakgw:266
+#, c-format
+msgid "Proxy caching server (SQUID)"
+msgstr ""
+
+#: ../tools/drakgw:270
+#, c-format
+msgid "Use this gateway as proxy caching server"
+msgstr ""
+
+#: ../tools/drakgw:271
+#, c-format
+msgid "Admin mail"
+msgstr ""
+
+#: ../tools/drakgw:272
+#, fuzzy, c-format
+msgid "Visible hostname"
+msgstr "اسم المضيف البعيد"
+
+#: ../tools/drakgw:273
+#, fuzzy, c-format
+msgid "Proxy port"
+msgstr "الخاصية"
+
+#: ../tools/drakgw:274
+#, fuzzy, c-format
+msgid "Cache size (MB)"
+msgstr "حجم الذاكرة المخبئية"
+
+#: ../tools/drakgw:296
+#, fuzzy, c-format
+msgid "Broadcast printer information"
+msgstr "معلومات القرص الصلب"
+
+#: ../tools/drakgw:313
+#, c-format
+msgid "Internet Connection Sharing is now enabled."
+msgstr "مشاركة إتصال الإنترنت ممكَّنة الآن."
+
+#: ../tools/drakgw:319
+#, c-format
+msgid "Internet Connection Sharing is now disabled."
+msgstr "مشاركة اتصال الإنترنت غير ممكَّنة الآن."
+
+#: ../tools/drakgw:325
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"You may now share Internet connection with other computers on your Local "
+"Area Network, using automatic network configuration (DHCP) and\n"
+" a Transparent Proxy Cache server (SQUID)."
+msgstr ""
+"تم تهيئة كل شئ.\n"
+"يمكنك الآن مشاركة اتصال الإنترنت مع الحاسبات الأخرى في شبكتك المحلية "
+"باستخدام تهيئة الشبكة الأوتوماتيكية (DHCP) و\n"
+" خادم الذاكرة المخبئة والبروكسي الشّفافي (SQUID)."
+
+#: ../tools/drakgw:359
+#, c-format
+msgid "Disabling servers..."
+msgstr "تعطيل الخادمات..."
+
+#: ../tools/drakgw:373
+#, c-format
+msgid "Firewalling configuration detected!"
+msgstr "تم اكتشاف إعداد للجدار الناري!"
+
+#: ../tools/drakgw:374
+#, c-format
+msgid ""
+"Warning! An existing firewalling configuration has been detected. You may "
+"need some manual fixes after installation."
+msgstr ""
+"تحذير! تم إيجاد إعداد جدار ناري موجود مسبقا. ربما تحتاج إلى اصلاح يدوي بعد "
+"التثبيت."
+
+#: ../tools/drakgw:379
+#, c-format
+msgid "Configuring..."
+msgstr "التهيئة..."
+
+#: ../tools/drakgw:380
+#, c-format
+msgid "Configuring firewall..."
+msgstr ""
+
+#: ../tools/drakhosts:100
+#, c-format
+msgid "Please add an host to be able to modify it."
+msgstr ""
+
+#: ../tools/drakhosts:110
+#, fuzzy, c-format
+msgid "Please modify information"
+msgstr "معلومات مفصّلة"
+
+#: ../tools/drakhosts:111
+#, fuzzy, c-format
+msgid "Please delete information"
+msgstr "معلومات مفصّلة"
+
+#: ../tools/drakhosts:112
+#, fuzzy, c-format
+msgid "Please add information"
+msgstr "معلومات مفصّلة"
+
+#: ../tools/drakhosts:116
+#, c-format
+msgid "IP address:"
+msgstr "عنوان IP:"
+
+#: ../tools/drakhosts:117
+#, fuzzy, c-format
+msgid "Host name:"
+msgstr "اسم المضيف"
+
+#: ../tools/drakhosts:118
+#, fuzzy, c-format
+msgid "Host Aliases:"
+msgstr "اسم المضيف"
+
+#: ../tools/drakhosts:122 ../tools/drakhosts:128 ../tools/draksambashare:209
+#: ../tools/draksambashare:230 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Error!"
+msgstr "خطأ!"
+
+#: ../tools/drakhosts:122
+#, c-format
+msgid "Please enter a valid IP address."
+msgstr "الرجاء إدخال عنوان IP صالح."
+
+#: ../tools/drakhosts:128
+#, fuzzy, c-format
+msgid "Same IP is already in %s file."
+msgstr "%s قيد الاستخدام مسبقاً\n"
+
+#: ../tools/drakhosts:196
+#, fuzzy, c-format
+msgid "Host Aliases"
+msgstr "اسم المضيف"
+
+#: ../tools/drakhosts:206 ../tools/drakhosts:236
+#, fuzzy, c-format
+msgid "Manage hosts definitions"
+msgstr "إدارة الاتّصالات"
+
+#: ../tools/drakhosts:222 ../tools/drakhosts:249
+#, c-format
+msgid "Modify entry"
+msgstr ""
+
+#: ../tools/drakhosts:241 ../tools/draknfs:563 ../tools/draksambashare:1102
+#: ../tools/draksambashare:1133 ../tools/draksambashare:1164
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Add"
+msgstr "إضافة"
+
+#: ../tools/drakhosts:242
+#, fuzzy, c-format
+msgid "Add entry"
+msgstr "إضافة طابعة"
+
+#: ../tools/drakhosts:245
+#, c-format
+msgid "Failed to add host."
+msgstr ""
+
+#: ../tools/drakhosts:248 ../tools/draknfs:570 ../tools/draksambashare:1059
+#: ../tools/draksambashare:1104 ../tools/draksambashare:1135
+#: ../tools/draksambashare:1172
+#, c-format
+msgid "Modify"
+msgstr "تعديل"
+
+#: ../tools/drakhosts:252
+#, c-format
+msgid "Failed to Modify host."
+msgstr ""
+
+#: ../tools/drakhosts:255 ../tools/drakids:87 ../tools/drakids:96
+#: ../tools/draknfs:577 ../tools/draksambashare:1060
+#: ../tools/draksambashare:1112 ../tools/draksambashare:1143
+#: ../tools/draksambashare:1180 ../tools/drakvpn-old:253
+#: ../tools/drakvpn-old:391
+#, c-format
+msgid "Remove"
+msgstr "حذف"
+
+#: ../tools/drakhosts:259
+#, c-format
+msgid "Failed to remove host."
+msgstr ""
+
+#: ../tools/drakhosts:262 ../tools/drakinvictus:141
+#: ../tools/draknetprofile:147 ../tools/drakroam:309 ../tools/net_applet:138
+#, c-format
+msgid "Quit"
+msgstr "خروج"
+
+#: ../tools/drakids:28
+#, fuzzy, c-format
+msgid "Allowed addresses"
+msgstr "السماح لكل المستخدمين"
+
+#: ../tools/drakids:65 ../tools/drakids:181 ../tools/drakids:190
+#: ../tools/drakids:215 ../tools/drakids:224 ../tools/drakids:234
+#: ../tools/drakids:326 ../tools/net_applet:238 ../tools/net_applet:514
+#, fuzzy, c-format
+msgid "Unable to contact daemon"
+msgstr "تعذر الإتصال بالمرآة %s"
+
+#: ../tools/drakids:74 ../tools/drakids:102
+#, c-format
+msgid "Log"
+msgstr "السّجل"
+
+#: ../tools/drakids:78 ../tools/drakids:97 ../tools/net_applet:659
+#, fuzzy, c-format
+msgid "Allow"
+msgstr "الكل"
+
+#: ../tools/drakids:79 ../tools/drakids:88 ../tools/net_applet:660
+#, c-format
+msgid "Block"
+msgstr ""
+
+#: ../tools/drakids:80 ../tools/drakids:89 ../tools/drakids:98
+#: ../tools/drakids:109 ../tools/drakids:122 ../tools/drakids:130
+#: ../tools/draknfs:186 ../tools/net_monitor:120
+#, c-format
+msgid "Close"
+msgstr "إغلاق"
+
+#: ../tools/drakids:83
+#, fuzzy, c-format
+msgid "Allowed services"
+msgstr "السماح لكل المستخدمين"
+
+#: ../tools/drakids:92
+#, fuzzy, c-format
+msgid "Blocked services"
+msgstr "نسخ ملفات المستخدم"
+
+#: ../tools/drakids:106
+#, fuzzy, c-format
+msgid "Clear logs"
+msgstr "مسح الكل"
+
+#: ../tools/drakids:107 ../tools/drakids:112 ../tools/net_applet:602
+#, c-format
+msgid "Blacklist"
+msgstr ""
+
+#: ../tools/drakids:108 ../tools/drakids:125 ../tools/net_applet:607
+#, c-format
+msgid "Whitelist"
+msgstr ""
+
+#: ../tools/drakids:116
+#, fuzzy, c-format
+msgid "Remove from blacklist"
+msgstr "ازالة من LVM"
+
+#: ../tools/drakids:117
+#, c-format
+msgid "Move to whitelist"
+msgstr ""
+
+#: ../tools/drakids:129
+#, fuzzy, c-format
+msgid "Remove from whitelist"
+msgstr "ازالة من LVM"
+
+#: ../tools/drakids:247
+#, c-format
+msgid "Date"
+msgstr "التاريخ"
+
+#: ../tools/drakids:248
+#, fuzzy, c-format
+msgid "Attacker"
+msgstr "تفاصيل الهجوم"
+
+#: ../tools/drakids:249
+#, fuzzy, c-format
+msgid "Attack type"
+msgstr "نوع الهجوم: %s"
+
+#: ../tools/drakids:250 ../tools/drakids:283
+#, c-format
+msgid "Service"
+msgstr "خدمة"
+
+#: ../tools/drakids:251
+#, c-format
+msgid "Network interface"
+msgstr "واجهة الشبكة "
+
+#: ../tools/drakids:282
+#, c-format
+msgid "Application"
+msgstr "البرنامج"
+
+#: ../tools/drakids:284
+#, c-format
+msgid "Status"
+msgstr "الحالة"
+
+#: ../tools/drakids:286
+#, fuzzy, c-format
+msgid "Allowed"
+msgstr "الكل"
+
+#: ../tools/drakids:287
+#, c-format
+msgid "Blocked"
+msgstr ""
+
+#: ../tools/drakinvictus:36
+#, c-format
+msgid "Invictus Firewall"
+msgstr ""
+
+#: ../tools/drakinvictus:53
+#, fuzzy, c-format
+msgid "Start as master"
+msgstr "يتم تشغيله عند الإقلاع"
+
+#: ../tools/drakinvictus:72
+#, fuzzy, c-format
+msgid "A password is required."
+msgstr "كلمة المرور مطلوبة"
+
+#: ../tools/drakinvictus:100
+#, c-format
+msgid ""
+"This tool allows to set up network interfaces failover and firewall "
+"replication."
+msgstr ""
+
+#: ../tools/drakinvictus:102
+#, c-format
+msgid "Network redundancy (leave empty if interface is not used)"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Real address"
+msgstr "عنوان MAC"
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Virtual shared address"
+msgstr "العنوان المصدر لـSainfo"
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual ID"
+msgstr ""
+
+#: ../tools/drakinvictus:114
+#, fuzzy, c-format
+msgid "Firewall replication"
+msgstr "الاستبانة النهائية"
+
+#: ../tools/drakinvictus:116
+#, c-format
+msgid "Synchronize firewall conntrack tables"
+msgstr ""
+
+#: ../tools/drakinvictus:123
+#, fuzzy, c-format
+msgid "Synchronization network interface"
+msgstr "أداة المزامنة"
+
+#: ../tools/drakinvictus:132
+#, fuzzy, c-format
+msgid "Connection mark bit"
+msgstr "الوصلة"
+
+#: ../tools/draknetprofile:36
+#, fuzzy, c-format
+msgid "Network profiles"
+msgstr "خيارات الشبكة"
+
+#: ../tools/draknetprofile:67
+#, fuzzy, c-format
+msgid "Profile"
+msgstr "لمحات مختصرة"
+
+#: ../tools/draknetprofile:99
+#, c-format
+msgid "New profile..."
+msgstr "سجل شخصي جديد..."
+
+#: ../tools/draknetprofile:102
+#, c-format
+msgid ""
+"Name of the profile to create (the new profile is created as a copy of the "
+"current one):"
+msgstr ""
+"إسم السجل الشخصي الواجب إنشاؤه (سيتمّ إنشاء السجل الشخصي الجديد كنسخة للحالي):"
+
+#: ../tools/draknetprofile:113
+#, c-format
+msgid "The \"%s\" profile already exists!"
+msgstr "السجل الشخصي \"%s\" موجود !"
+
+#: ../tools/draknetprofile:129
+#, c-format
+msgid "You can not delete the default profile"
+msgstr ""
+
+#: ../tools/draknetprofile:131
+#, c-format
+msgid "You can not delete the current profile"
+msgstr "لا يمكنك حذف السجل الشخصي الحالي"
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid ""
+"This tool allows to activate an existing network profile, and to manage "
+"(clone, delete) profiles."
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid "To modify a profile, you have to activate it first."
+msgstr ""
+
+#: ../tools/draknetprofile:144
+#, c-format
+msgid "Activate"
+msgstr "تفعيل"
+
+#: ../tools/draknetprofile:145
+#, fuzzy, c-format
+msgid "Clone"
+msgstr "اتصل"
+
+#: ../tools/draknetprofile:146
+#, c-format
+msgid "Delete"
+msgstr "حذف"
+
+#: ../tools/draknfs:41
+#, c-format
+msgid "map root user as anonymous"
+msgstr ""
+
+#: ../tools/draknfs:42
+#, c-format
+msgid "map all users to anonymous user"
+msgstr ""
+
+#: ../tools/draknfs:43
+#, c-format
+msgid "No user UID mapping"
+msgstr ""
+
+#: ../tools/draknfs:44
+#, c-format
+msgid "allow real remote root access"
+msgstr ""
+
+#: ../tools/draknfs:58 ../tools/draknfs:59 ../tools/draknfs:60
+#: ../tools/draksambashare:161 ../tools/draksambashare:162
+#: ../tools/draksambashare:163
+#, c-format
+msgid "/_File"
+msgstr "/_ملف"
+
+#: ../tools/draknfs:59 ../tools/draksambashare:162
+#, c-format
+msgid "/_Write conf"
+msgstr ""
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "/_Quit"
+msgstr "/_خروج"
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "<control>Q"
+msgstr "<control>Q"
+
+#: ../tools/draknfs:63 ../tools/draknfs:64 ../tools/draknfs:65
+#, fuzzy, c-format
+msgid "/_NFS Server"
+msgstr "خادمات DNS"
+
+#: ../tools/draknfs:64 ../tools/draksambashare:166
+#, c-format
+msgid "/_Restart"
+msgstr ""
+
+#: ../tools/draknfs:65 ../tools/draksambashare:167
+#, c-format
+msgid "/R_eload"
+msgstr ""
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "NFS server"
+msgstr "خادم NFS"
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "Restarting/Reloading NFS server..."
+msgstr ""
+
+#: ../tools/draknfs:85
+#, c-format
+msgid "Error Restarting/Reloading NFS server"
+msgstr ""
+
+#: ../tools/draknfs:101 ../tools/draksambashare:225
+#, fuzzy, c-format
+msgid "Directory Selection"
+msgstr "الاتجاه"
+
+#: ../tools/draknfs:106 ../tools/draksambashare:230
+#, c-format
+msgid "Should be a directory."
+msgstr "يجب أن يكون دليلا."
+
+#: ../tools/draknfs:137
+#, c-format
+msgid ""
+"<span weight=\"bold\">NFS clients</span> may be specified in a number of "
+"ways:\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">single host:</span> a host either by an "
+"abbreviated name recognized be the resolver, fully qualified domain name, or "
+"an IP address\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">netgroups:</span> NIS netgroups may be given "
+"as @group.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">wildcards:</span> machine names may contain "
+"the wildcard characters * and ?. For instance: *.cs.foo.edu matches all "
+"hosts in the domain cs.foo.edu.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">IP networks:</span> you can also export "
+"directories to all hosts on an IP (sub-)network simultaneously. for example, "
+"either `/255.255.252.0' or `/22' appended to the network base address "
+"result.\n"
+msgstr ""
+
+#: ../tools/draknfs:152
+#, c-format
+msgid ""
+"<span weight=\"bold\">User ID options</span>\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map root user as anonymous:</span> map "
+"requests from uid/gid 0 to the anonymous uid/gid (root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">allow real remote root access:</span> turn "
+"off root squashing. This option is mainly useful for diskless clients "
+"(no_root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map all users to anonymous user:</span> map "
+"all uids and gids to the anonymous user (all_squash). Useful for NFS-"
+"exported public FTP directories, news spool directories, etc. The opposite "
+"option is no user UID mapping (no_all_squash), which is the default "
+"setting.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">anonuid and anongid:</span> explicitly set "
+"the uid and gid of the anonymous account.\n"
+msgstr ""
+
+#: ../tools/draknfs:168
+#, c-format
+msgid "Synchronous access:"
+msgstr ""
+
+#: ../tools/draknfs:169
+#, fuzzy, c-format
+msgid "Secured Connection:"
+msgstr "وصلة انترنت"
+
+#: ../tools/draknfs:170
+#, c-format
+msgid "Read-Only share:"
+msgstr ""
+
+#: ../tools/draknfs:172
+#, c-format
+msgid "Advanced Options"
+msgstr ""
+
+#: ../tools/draknfs:173
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> this option requires that requests "
+"originate on an internet port less than IPPORT_RESERVED (1024). This option "
+"is on by default."
+msgstr ""
+
+#: ../tools/draknfs:174
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> allow either only read or both "
+"read and write requests on this NFS volume. The default is to disallow any "
+"request which changes the filesystem. This can also be made explicit by "
+"using this option."
+msgstr ""
+
+#: ../tools/draknfs:175
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> disallows the NFS server to "
+"violate the NFS protocol and to reply to requests before any changes made by "
+"these requests have been committed to stable storage (e.g. disc drive)."
+msgstr ""
+
+#: ../tools/draknfs:180 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Information"
+msgstr "معلومات"
+
+#: ../tools/draknfs:260
+#, c-format
+msgid "Directory"
+msgstr "الدليل"
+
+#: ../tools/draknfs:264
+#, c-format
+msgid "Draknfs entry"
+msgstr ""
+
+#: ../tools/draknfs:273
+#, c-format
+msgid "Please add an NFS share to be able to modify it."
+msgstr ""
+
+#: ../tools/draknfs:357
+#, c-format
+msgid "NFS directory"
+msgstr ""
+
+#: ../tools/draknfs:358 ../tools/draksambashare:361
+#: ../tools/draksambashare:570 ../tools/draksambashare:749
+#, c-format
+msgid "Directory:"
+msgstr "الدليل:"
+
+#: ../tools/draknfs:359
+#, fuzzy, c-format
+msgid "Host access"
+msgstr "اسم المضيف"
+
+#: ../tools/draknfs:360
+#, c-format
+msgid "Access:"
+msgstr "التّوصّل:"
+
+#: ../tools/draknfs:361
+#, c-format
+msgid "User ID Mapping"
+msgstr ""
+
+#: ../tools/draknfs:362
+#, c-format
+msgid "User ID:"
+msgstr ""
+
+#: ../tools/draknfs:363
+#, c-format
+msgid "Anonymous user ID:"
+msgstr ""
+
+#: ../tools/draknfs:364
+#, c-format
+msgid "Anonymous Group ID:"
+msgstr ""
+
+#: ../tools/draknfs:400
+#, fuzzy, c-format
+msgid "Please specify a directory to share."
+msgstr "الرجاء إدخال مُعطيات اللاسلكيّة لهذه البطاقة:"
+
+#: ../tools/draknfs:402
+#, c-format
+msgid "Can't create this directory."
+msgstr ""
+
+#: ../tools/draknfs:405
+#, c-format
+msgid "You must specify hosts access."
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Share Directory"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Hosts Wildcard"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "General Options"
+msgstr "خيارات عامة"
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Custom Options"
+msgstr ""
+
+#: ../tools/draknfs:497 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Please enter a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:504
+#, c-format
+msgid "Please use the modify button to set right access."
+msgstr ""
+
+#: ../tools/draknfs:519
+#, c-format
+msgid "Manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:558
+#, c-format
+msgid "DrakNFS manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:567
+#, c-format
+msgid "Failed to add NFS share."
+msgstr ""
+
+#: ../tools/draknfs:574
+#, c-format
+msgid "Failed to Modify NFS share."
+msgstr ""
+
+#: ../tools/draknfs:581
+#, c-format
+msgid "Failed to remove an NFS share."
+msgstr ""
+
+#: ../tools/drakproxy:36
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr "تحتاج أن تقوم بالخروج والعودة مجدّداً حتى يسري مفعول التّغييرات"
+
+#
+#: ../tools/drakroam:61
+#, c-format
+msgid "No device found"
+msgstr "لم يُعثر على أي جهاز"
+
+#: ../tools/drakroam:86 ../tools/drakroam:217
+#, fuzzy, c-format
+msgid "Please enter settings for network"
+msgstr "معلومات مفصّلة"
+
+#: ../tools/drakroam:115
+#, c-format
+msgid "SSID"
+msgstr ""
+
+#: ../tools/drakroam:116
+#, c-format
+msgid "Signal strength"
+msgstr ""
+
+#: ../tools/drakroam:118
+#, c-format
+msgid "Encryption"
+msgstr "التشفير"
+
+#: ../tools/drakroam:131
+#, c-format
+msgid "Hostname changed to \"%s\""
+msgstr ""
+
+#: ../tools/drakroam:251
+#, fuzzy, c-format
+msgid "Connecting..."
+msgstr "اتصال..."
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Disconnect"
+msgstr "اقطع الاتصال"
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Connect"
+msgstr "اتصل"
+
+#: ../tools/drakroam:289
+#, fuzzy, c-format
+msgid "Disconnecting..."
+msgstr "قطع الإتصال..."
+
+#: ../tools/drakroam:306
+#, c-format
+msgid "Configure"
+msgstr "تهيئة"
+
+#: ../tools/drakroam:308
+#, c-format
+msgid "Refresh"
+msgstr "إنعاش"
+
+#: ../tools/draksambashare:63
+#, c-format
+msgid "User name"
+msgstr "اسم المستخدم"
+
+#: ../tools/draksambashare:70
+#, c-format
+msgid "Share name"
+msgstr "اسم المشاركة"
+
+#: ../tools/draksambashare:71
+#, fuzzy, c-format
+msgid "Share directory"
+msgstr "لا دليل كذلك"
+
+#: ../tools/draksambashare:72 ../tools/draksambashare:105
+#, c-format
+msgid "Comment"
+msgstr "التعليق"
+
+#: ../tools/draksambashare:73 ../tools/draksambashare:106
+#, fuzzy, c-format
+msgid "Browseable"
+msgstr "استعراض"
+
+#: ../tools/draksambashare:74
+#, c-format
+msgid "Public"
+msgstr "عام"
+
+#: ../tools/draksambashare:75 ../tools/draksambashare:111
+#, c-format
+msgid "Writable"
+msgstr "قابل للكتابة"
+
+#: ../tools/draksambashare:76 ../tools/draksambashare:152
+#, fuzzy, c-format
+msgid "Create mask"
+msgstr "إنشاء"
+
+#: ../tools/draksambashare:77 ../tools/draksambashare:153
+#, fuzzy, c-format
+msgid "Directory mask"
+msgstr "الدّليل المحتوي على النّسخ الاحتياطيّة"
+
+#: ../tools/draksambashare:78
+#, fuzzy, c-format
+msgid "Read list"
+msgstr "قراءة"
+
+#: ../tools/draksambashare:79 ../tools/draksambashare:112
+#: ../tools/draksambashare:584
+#, fuzzy, c-format
+msgid "Write list"
+msgstr "كتابة"
+
+#: ../tools/draksambashare:80 ../tools/draksambashare:144
+#, fuzzy, c-format
+msgid "Admin users"
+msgstr "إضافة مستخدم"
+
+#: ../tools/draksambashare:81 ../tools/draksambashare:145
+#, fuzzy, c-format
+msgid "Valid users"
+msgstr "إضافة مستخدم"
+
+#: ../tools/draksambashare:82
+#, fuzzy, c-format
+msgid "Inherit Permissions"
+msgstr "التصاريح"
+
+#: ../tools/draksambashare:83 ../tools/draksambashare:146
+#, fuzzy, c-format
+msgid "Hide dot files"
+msgstr "تخبئة الملفات"
+
+#: ../tools/draksambashare:84 ../tools/draksambashare:147
+#, c-format
+msgid "Hide files"
+msgstr "تخبئة الملفات"
+
+#: ../tools/draksambashare:85 ../tools/draksambashare:151
+#, fuzzy, c-format
+msgid "Preserve case"
+msgstr "تفضيلات"
+
+#: ../tools/draksambashare:86
+#, fuzzy, c-format
+msgid "Force create mode"
+msgstr "طراز الطابعة الخاصة بك"
+
+#: ../tools/draksambashare:87
+#, fuzzy, c-format
+msgid "Force group"
+msgstr "مجموعة PFS"
+
+#: ../tools/draksambashare:88 ../tools/draksambashare:150
+#, fuzzy, c-format
+msgid "Default case"
+msgstr "المستخدم الإفتراضي"
+
+#: ../tools/draksambashare:103
+#, c-format
+msgid "Printer name"
+msgstr "اسم الطابعة"
+
+#: ../tools/draksambashare:104
+#, c-format
+msgid "Path"
+msgstr "المسار"
+
+#: ../tools/draksambashare:107 ../tools/draksambashare:576
+#, fuzzy, c-format
+msgid "Printable"
+msgstr "تمكين"
+
+#: ../tools/draksambashare:108
+#, fuzzy, c-format
+msgid "Print Command"
+msgstr "الأمر"
+
+#: ../tools/draksambashare:109
+#, fuzzy, c-format
+msgid "LPQ command"
+msgstr "الأمر"
+
+#: ../tools/draksambashare:110
+#, c-format
+msgid "Guest ok"
+msgstr ""
+
+#: ../tools/draksambashare:113 ../tools/draksambashare:154
+#: ../tools/draksambashare:585
+#, fuzzy, c-format
+msgid "Inherit permissions"
+msgstr "التصاريح"
+
+#: ../tools/draksambashare:114
+#, c-format
+msgid "Printing"
+msgstr "الطباعة"
+
+#: ../tools/draksambashare:115
+#, fuzzy, c-format
+msgid "Create mode"
+msgstr "نوع البطاقة"
+
+#: ../tools/draksambashare:116
+#, fuzzy, c-format
+msgid "Use client driver"
+msgstr "خادم Telnet"
+
+#: ../tools/draksambashare:142
+#, fuzzy, c-format
+msgid "Read List"
+msgstr "حذف القائمة"
+
+#: ../tools/draksambashare:143
+#, fuzzy, c-format
+msgid "Write List"
+msgstr "كتابة"
+
+#: ../tools/draksambashare:148
+#, fuzzy, c-format
+msgid "Force Group"
+msgstr "المجموعة"
+
+#: ../tools/draksambashare:149
+#, c-format
+msgid "Force create group"
+msgstr ""
+
+#: ../tools/draksambashare:165 ../tools/draksambashare:166
+#: ../tools/draksambashare:167
+#, fuzzy, c-format
+msgid "/_Samba Server"
+msgstr "خادم الوب"
+
+#: ../tools/draksambashare:169 ../tools/draksambashare:170
+#, c-format
+msgid "/_About"
+msgstr "/_حول"
+
+#: ../tools/draksambashare:169
+#, c-format
+msgid "/_Report Bug"
+msgstr "/_تقرير خطأ"
+
+#: ../tools/draksambashare:170
+#, c-format
+msgid "/About..."
+msgstr ""
+
+#: ../tools/draksambashare:173
+#, c-format
+msgid "Draksambashare"
+msgstr ""
+
+#: ../tools/draksambashare:175
+#, c-format
+msgid "Copyright (C) %s by Mandriva"
+msgstr ""
+
+#: ../tools/draksambashare:177
+#, c-format
+msgid "This is a simple tool to easily manage Samba configuration."
+msgstr ""
+
+#: ../tools/draksambashare:179
+#, fuzzy, c-format
+msgid "Mandriva Linux"
+msgstr "Mandriva Online"
+
+#. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+#: ../tools/draksambashare:184
+#, c-format
+msgid "_: Translator(s) name(s) & email(s)\n"
+msgstr "Arabeyes <support@arabeyes.org>\n"
+
+#: ../tools/draksambashare:208
+#, c-format
+msgid "Restarting/Reloading Samba server..."
+msgstr ""
+
+#: ../tools/draksambashare:209
+#, c-format
+msgid "Error Restarting/Reloading Samba server"
+msgstr ""
+
+#: ../tools/draksambashare:349 ../tools/draksambashare:549
+#: ../tools/draksambashare:670
+#, c-format
+msgid "Open"
+msgstr "فتح"
+
+#: ../tools/draksambashare:352
+#, c-format
+msgid "DrakSamba add entry"
+msgstr ""
+
+#: ../tools/draksambashare:356
+#, fuzzy, c-format
+msgid "Add a share"
+msgstr "إضافة قاعدة"
+
+#: ../tools/draksambashare:359
+#, fuzzy, c-format
+msgid "Name of the share:"
+msgstr "اسم الشّهادة"
+
+#: ../tools/draksambashare:360 ../tools/draksambashare:569
+#: ../tools/draksambashare:750
+#, c-format
+msgid "Comment:"
+msgstr "التعليق:"
+
+#: ../tools/draksambashare:372
+#, c-format
+msgid ""
+"Share with the same name already exist or share name empty, please choose "
+"another name."
+msgstr ""
+
+#: ../tools/draksambashare:379
+#, c-format
+msgid "Can't create the directory, please enter a correct path."
+msgstr ""
+
+#: ../tools/draksambashare:382 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, fuzzy, c-format
+msgid "Please enter a Comment for this share."
+msgstr "الرجاء إدخال مُعطيات اللاسلكيّة لهذه البطاقة:"
+
+#: ../tools/draksambashare:413
+#, c-format
+msgid "pdf-gen - a PDF generator"
+msgstr ""
+
+#: ../tools/draksambashare:414
+#, c-format
+msgid "printers - all printers available"
+msgstr ""
+
+#: ../tools/draksambashare:418
+#, c-format
+msgid "Add Special Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:421
+#, c-format
+msgid ""
+"Goal of this wizard is to easily create a new special printer Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:428
+#, fuzzy, c-format
+msgid "A PDF generator already exists."
+msgstr "السجل الشخصي \"%s\" موجود !"
+
+#: ../tools/draksambashare:452
+#, fuzzy, c-format
+msgid "Printers and print$ already exist."
+msgstr "السجل الشخصي \"%s\" موجود !"
+
+#: ../tools/draksambashare:502
+#, c-format
+msgid "Congratulations"
+msgstr "تهانينا"
+
+#: ../tools/draksambashare:503
+#, c-format
+msgid "The wizard successfully added the printer Samba share"
+msgstr ""
+
+#: ../tools/draksambashare:518
+#, c-format
+msgid "Failed to add printers."
+msgstr ""
+
+#: ../tools/draksambashare:533
+#, c-format
+msgid "Please add or select a Samba printer share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:552
+#, c-format
+msgid "DrakSamba Printers entry"
+msgstr ""
+
+#: ../tools/draksambashare:565
+#, c-format
+msgid "Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:568
+#, c-format
+msgid "Printer name:"
+msgstr "اسم الطابعة:"
+
+#: ../tools/draksambashare:574 ../tools/draksambashare:755
+#, fuzzy, c-format
+msgid "Writable:"
+msgstr "كتابة"
+
+#: ../tools/draksambashare:575 ../tools/draksambashare:756
+#, fuzzy, c-format
+msgid "Browseable:"
+msgstr "استعراض"
+
+#: ../tools/draksambashare:580
+#, c-format
+msgid "Advanced options"
+msgstr "خيارات متقدمة"
+
+#: ../tools/draksambashare:582
+#, fuzzy, c-format
+msgid "Printer access"
+msgstr "الدخول إلى الإنترنت"
+
+#: ../tools/draksambashare:586
+#, c-format
+msgid "Guest ok:"
+msgstr ""
+
+#: ../tools/draksambashare:587
+#, fuzzy, c-format
+msgid "Create mode:"
+msgstr "نوع البطاقة"
+
+#: ../tools/draksambashare:591
+#, c-format
+msgid "Printer command"
+msgstr ""
+
+#: ../tools/draksambashare:593
+#, c-format
+msgid "Print command:"
+msgstr ""
+
+#: ../tools/draksambashare:594
+#, fuzzy, c-format
+msgid "LPQ command:"
+msgstr "الأمر"
+
+#: ../tools/draksambashare:595
+#, fuzzy, c-format
+msgid "Printing:"
+msgstr "تحذير"
+
+#: ../tools/draksambashare:611
+#, c-format
+msgid "create mode should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:673
+#, c-format
+msgid "DrakSamba entry"
+msgstr ""
+
+#: ../tools/draksambashare:678
+#, c-format
+msgid "Please add or select a Samba share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:701
+#, fuzzy, c-format
+msgid "Samba user access"
+msgstr "خادم سامبا"
+
+#: ../tools/draksambashare:709
+#, fuzzy, c-format
+msgid "Mask options"
+msgstr "الخيارات الأساسية"
+
+#: ../tools/draksambashare:723
+#, fuzzy, c-format
+msgid "Display options"
+msgstr "حدد الخيارات"
+
+#: ../tools/draksambashare:745
+#, fuzzy, c-format
+msgid "Samba share directory"
+msgstr "لا دليل كذلك"
+
+#: ../tools/draksambashare:748
+#, fuzzy, c-format
+msgid "Share name:"
+msgstr "اسم المشاركة"
+
+#: ../tools/draksambashare:754
+#, c-format
+msgid "Public:"
+msgstr ""
+
+#: ../tools/draksambashare:778
+#, c-format
+msgid ""
+"Create mask, create mode and directory mask should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:785
+#, c-format
+msgid "Please create this Samba user: %s"
+msgstr ""
+
+#: ../tools/draksambashare:889
+#, c-format
+msgid "Add Samba user"
+msgstr ""
+
+#: ../tools/draksambashare:904
+#, fuzzy, c-format
+msgid "User information"
+msgstr "جاري تغيير حجم تجزيء ويندوز"
+
+#: ../tools/draksambashare:906
+#, fuzzy, c-format
+msgid "User name:"
+msgstr "اسم المستخدم"
+
+#: ../tools/draksambashare:907
+#, c-format
+msgid "Password:"
+msgstr "كلمة المرور:"
+
+#: ../tools/draksambashare:1021
+#, fuzzy, c-format
+msgid "Manage Samba configuration"
+msgstr "تهيئة تنبيه البريد"
+
+#: ../tools/draksambashare:1109
+#, c-format
+msgid "Failed to Modify Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1118
+#, c-format
+msgid "Failed to remove a Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1125
+#, c-format
+msgid "File share"
+msgstr ""
+
+#: ../tools/draksambashare:1140
+#, c-format
+msgid "Failed to Modify."
+msgstr ""
+
+#: ../tools/draksambashare:1149
+#, c-format
+msgid "Failed to remove."
+msgstr ""
+
+#: ../tools/draksambashare:1156
+#, c-format
+msgid "Printers"
+msgstr "طابعات"
+
+#: ../tools/draksambashare:1168
+#, c-format
+msgid "Failed to add user."
+msgstr ""
+
+#: ../tools/draksambashare:1177
+#, c-format
+msgid "Failed to change user password."
+msgstr ""
+
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Failed to delete user."
+msgstr ""
+
+#: ../tools/draksambashare:1194
+#, c-format
+msgid "Userdrake"
+msgstr "Userdrake"
+
+#: ../tools/draksambashare:1202
+#, c-format
+msgid "Samba Users"
+msgstr ""
+
+#: ../tools/draksambashare:1211
+#, c-format
+msgid "DrakSamba manage Samba shares"
+msgstr ""
+
+# U+200F (RTL mark) has been inserted between "Dvorak" and "(US)", so
+# it displays on screen as "(US) Dvorak", following the same schema
+# as others "Dvorak (xxxx)" with xxx in Arabic that display as "(xxxx) Dvorak"
+# that way the entry is also listed together with the other "Dvorak" entries.
+#: ../tools/drakvpn-old:65
+#, c-format
+msgid "DrakVPN"
+msgstr "DrakVPN"
+
+#: ../tools/drakvpn-old:87
+#, c-format
+msgid "The VPN connection is enabled."
+msgstr "اتّصال VPN مُمكّن."
+
+#: ../tools/drakvpn-old:88
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"لقد تمّ إعداد اتّصال VPN مسبقاً.\n"
+"\n"
+"إنّه ممكّن حاليّاً.\n"
+"\n"
+"ما الذي ترغب بعمله؟"
+
+#: ../tools/drakvpn-old:93
+#, c-format
+msgid "disable"
+msgstr "تعطيل"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119
+#, c-format
+msgid "reconfigure"
+msgstr "إعادة التهيئة"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119 ../tools/drakvpn-old:432
+#, c-format
+msgid "dismiss"
+msgstr "صَرْف"
+
+#: ../tools/drakvpn-old:97
+#, c-format
+msgid "Disabling VPN..."
+msgstr "جاري تعطيل VPN..."
+
+#: ../tools/drakvpn-old:106
+#, c-format
+msgid "The VPN connection is now disabled."
+msgstr "تمّ الآن تعطيل اتّصال VPN."
+
+#: ../tools/drakvpn-old:113
+#, c-format
+msgid "VPN connection currently disabled"
+msgstr "اتصال VPN مُعطّل حاليّاً"
+
+#: ../tools/drakvpn-old:114
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"لقد تمّ إعداد اتّصال VPN مسبقاً.\n"
+"\n"
+"إنّه معطّل حاليّاً.\n"
+"\n"
+"ما الذي ترغب بعمله؟"
+
+#: ../tools/drakvpn-old:119
+#, c-format
+msgid "enable"
+msgstr "تمكين"
+
+#: ../tools/drakvpn-old:127
+#, c-format
+msgid "Enabling VPN..."
+msgstr "جاري تمكين VPN..."
+
+#: ../tools/drakvpn-old:133
+#, c-format
+msgid "The VPN connection is now enabled."
+msgstr "تمّ الآن تمكين اتّصال VPN."
+
+#: ../tools/drakvpn-old:147 ../tools/drakvpn-old:164
+#, c-format
+msgid "Simple VPN setup."
+msgstr "إعداد VPN بسيط."
+
+#: ../tools/drakvpn-old:148
+#, c-format
+msgid ""
+"You are about to configure your computer to use a VPN connection.\n"
+"\n"
+"With this feature, computers on your local private network and computers\n"
+"on some other remote private networks, can share resources, through\n"
+"their respective firewalls, over the Internet, in a secure manner. \n"
+"\n"
+"The communication over the Internet is encrypted. The local and remote\n"
+"computers look as if they were on the same network.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using\n"
+"drakconnect before going any further."
+msgstr ""
+"أنت على وشك تهيئة حاسبك لاستخدام اتّصال VPN.\n"
+"\n"
+"بهذه الميزة، يمكن للحواسيب على الشّبكة المحليّة الخاصّة والحاسبات\n"
+"على شبكة بعيدة خاصّة ما، يمكنها مشاطرة الموارد، خلال\n"
+"الجدر الناريّة الخاصّة بهم، عبر الإنترنت، بطريقة آمنة. \n"
+"\n"
+"الاتصال عبر الإنترنت مشفّر. الحاسبات المحليّة والبعيدة\n"
+"تبدو كأنّها على نفس الشّبكة.\n"
+"\n"
+"تأكّد من أنّك قمت بتهيئة شبكتك/واتصال الانترنت باستخدام\n"
+"drakconnect قبل الاستمرار."
+
+#: ../tools/drakvpn-old:165
+#, c-format
+msgid ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+msgstr ""
+"اتّصال VPN.\n"
+"\n"
+"هذا البرنامج مبنيّ على المشاريع التّالية:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - المستندات وصفحات الدّليل الآتية مع الحزمة %s\n"
+"\n"
+"رجاء اقرأ على الأقل مستندات ipsec-howto\n"
+"قبل الشّروع بالعمل."
+
+#: ../tools/drakvpn-old:208
+#, c-format
+msgid "Problems installing package %s"
+msgstr "كانت هناك مشاكل في تثبيت الحزمة %s"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "Security Policies"
+msgstr "سياسات الأمن"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "IKE daemon racoon"
+msgstr "racoon عفريت IKE"
+
+#: ../tools/drakvpn-old:224
+#, c-format
+msgid "Configuration file"
+msgstr "ملف التهيئة"
+
+#: ../tools/drakvpn-old:225
+#, c-format
+msgid ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+msgstr ""
+"خطوة التّهيئة!\n"
+"\n"
+"تحتاج إلى تعريف سياسات الأمن ومن ثمّ\n"
+"تهيئة خدمة تبادل المفتاح الآلى (IKE). \n"
+"خدمة KAME IKE التي نستخدمها تسمّى 'racoon'.\n"
+"\n"
+"ما الذي تودّ تهيئته؟\n"
+
+#: ../tools/drakvpn-old:245 ../tools/drakvpn-old:382
+#, c-format
+msgid "%s entries"
+msgstr "مُدخلات %s"
+
+#: ../tools/drakvpn-old:246
+#, c-format
+msgid ""
+"The %s file contents\n"
+"is divided into sections.\n"
+"\n"
+"You can now:\n"
+"\n"
+" - display, add, edit, or remove sections, then\n"
+" - commit the changes\n"
+"\n"
+"What would you like to do?\n"
+msgstr ""
+"محتويات الملفّ %s\n"
+"مقسّمة إلى أقسام.\n"
+"\n"
+"يمكنك الآن :\n"
+"\n"
+" - display عرض، add إضافة، edit تحرير ، أو remove إزالة الأقسام، ثم\n"
+" - commit تسجيل التغييرات\n"
+"ماذا تودّ أن تفعل؟\n"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display"
+msgstr "عرض"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Edit"
+msgstr "تحرير"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Commit"
+msgstr "تنفيذ"
+
+#: ../tools/drakvpn-old:267 ../tools/drakvpn-old:271 ../tools/drakvpn-old:406
+#: ../tools/drakvpn-old:410
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display configuration"
+msgstr "عرض التهيئة"
+
+#: ../tools/drakvpn-old:272
+#, c-format
+msgid ""
+"The %s file does not exist.\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose 'add'.\n"
+msgstr ""
+"الملفّ %s غير موجود.\n"
+"\n"
+"لا بدّ أنّ هذه تهيئة جديدة.\n"
+"\n"
+"عليك أن تعود وتختار `إضافة`.\n"
+
+#: ../tools/drakvpn-old:301
+#, c-format
+msgid ""
+"Add a Security Policy.\n"
+"\n"
+"You can now add a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"أضف سياسة أمن.\n"
+"\n"
+"يمكنك الآن إضافة سياسة أمن.\n"
+"\n"
+"اختر الاستمرار عندما تنتهي لكتابة البيانات.\n"
+
+#: ../tools/drakvpn-old:333 ../tools/drakvpn-old:523
+#, c-format
+msgid "Edit section"
+msgstr "حرّر القسم"
+
+#: ../tools/drakvpn-old:334
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to edit \n"
+"and then click on next.\n"
+msgstr ""
+"يحتوي ملف %s الخاصّ بك عدّة أقسام أو اتّصالات.\n"
+"\n"
+"يمكنك اختيار التي تريد تعديلها هنا أدناه \n"
+"\n"
+"ثم اضغط التالي.\n"
+
+#: ../tools/drakvpn-old:337 ../tools/drakvpn-old:357 ../tools/drakvpn-old:528
+#: ../tools/drakvpn-old:574
+#, c-format
+msgid "Section names"
+msgstr "أسماء الأقسام"
+
+#: ../tools/drakvpn-old:344
+#, c-format
+msgid ""
+"Edit a Security Policy.\n"
+"\n"
+"You can now edit a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"تحرير سياسة الأمن.\n"
+"\n"
+"يمكنك الآن تعديل سياسة أمن.\n"
+"\n"
+"اختر الاستمرار عندما تنتهي من كتابة البيانات.\n"
+
+#: ../tools/drakvpn-old:353 ../tools/drakvpn-old:570
+#, c-format
+msgid "Remove section"
+msgstr "حذف القسم"
+
+#: ../tools/drakvpn-old:354 ../tools/drakvpn-old:571
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to remove\n"
+"and then click on next.\n"
+msgstr ""
+"يحتوي ملف %s الخاصّ بك عدّة أقسام أو اتّصالات.\n"
+"\n"
+"يمكنك الاختيار أدناه الأقسام التي تريد أن تزيلها\n"
+"ثم الضغط على التالي.\n"
+
+#: ../tools/drakvpn-old:383
+#, c-format
+msgid ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+msgstr ""
+"تهية الملف racoon.conf.\n"
+"\n"
+"تنقسم محتويات هذا الملف إلى أقسام.\n"
+"يمكنك الآن:\n"
+" - display \t\t (عرض محتويات الملف)\n"
+" - add\t\t\t (إضافة قسم واحد)\n"
+" - edit \t\t\t (تعديل معطيّات قسم موجود)\n"
+" - remove \t\t (إزالة قسم موجود)\n"
+" - commit \t\t (كتابة التغييرات إلى الملفّ الحقيق)"
+
+#: ../tools/drakvpn-old:411
+#, c-format
+msgid ""
+"The %s file does not exist\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose configure.\n"
+msgstr ""
+"الملفّ %s غير موجود\n"
+"\n"
+"لا بدّ أن تكون هذه تهيئة جديدة.\n"
+"\n"
+"عليك أن تعود وتختار تهيئة.\n"
+
+#: ../tools/drakvpn-old:425
+#, c-format
+msgid "racoon.conf entries"
+msgstr "مُدخلات racoon.conf"
+
+#: ../tools/drakvpn-old:426
+#, c-format
+msgid ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+msgstr ""
+"خطوة الأقسام `add`.\n"
+"\n"
+"أدناه هيكل ملف racoon.conf :\n"
+"\t`path`\n"
+"\t`remote`\n"
+"\t`sainfo`\n"
+"\n"
+"اختر القسم الذي تريد إضافته.\n"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "path"
+msgstr "path"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "remote"
+msgstr "remote"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "sainfo"
+msgstr "sainfo"
+
+#: ../tools/drakvpn-old:440
+#, c-format
+msgid ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+msgstr ""
+"خطوة القسم `add path`.\n"
+"\n"
+"أقسام المسار يجب أن تكون في أعلى ملف racoon.conf.\n"
+"\n"
+"ضع مؤشّر الماوس على مُدخل الشّهادة للحصول على المساعدة الفوريّة."
+
+#: ../tools/drakvpn-old:443
+#, c-format
+msgid "path type"
+msgstr "path type"
+
+#: ../tools/drakvpn-old:447
+#, c-format
+msgid ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+msgstr ""
+"path include path: يحدد مساراً لتضمين\n"
+"ملف. راجع تضمين الملفات.\n"
+"\tمثال: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: يحدد ملفاً يحتوي\n"
+"مفاتيح متشاركة مسبقاً لمعرفات متعددة. راجع ملف مفتاح متشارك مسبقاً.\n"
+"\tمثال: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: سوف يبحث racoon(8) في هذا الدليل\n"
+"عن استلام شهادة أو طلب شهادة.\n"
+"\tمثال: path certificate '/etc/cert' ;\n"
+"\n"
+"تضمين الملفات: include file \n"
+"يمكن تضمين بعض ملفات التهيئة الأخرى.\n"
+"\tمثال: include \"remote.conf\" ;\n"
+"\n"
+"ملف المفاتيح المتشاركة: يحدد ملف المفاتيح المتشاركة زوجاً\n"
+"مكوناً من المعرّف والمفتاح السري المتشارك والذان يستخدمان في\n"
+"المرحلة الأولى لوسيلة مواثقة المفتاح المتشارك مسبقاً."
+
+#: ../tools/drakvpn-old:467 ../tools/drakvpn-old:560
+#, c-format
+msgid "real file"
+msgstr "real file"
+
+#: ../tools/drakvpn-old:490
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"تأكّد من أن أقسام المسار لديك\n"
+"في أعلى الملفّ racoon.conf.\n"
+"\n"
+"يمكنك الآن اختيار الإعدادات البعيدة.\n"
+"اختر الاستمرار أو السابق عندما تنتهي.\n"
+
+#: ../tools/drakvpn-old:507
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"تأكّد من أن أقسام المسار لديك\n"
+"في أعلى الملفّ %s.\n"
+"\n"
+"يمكنك الآن اختيار إعدادات sainfo.\n"
+"اختر الاستمرار أو السابق عندما تنتهي.\n"
+
+#: ../tools/drakvpn-old:524
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here in the list below the one you want\n"
+"to edit and then click on next.\n"
+msgstr ""
+"يحتوي ملف %s الخاصّ بك عدّة أقسام أو اتّصالات.\n"
+"\n"
+"يمكن الاختيار من هنا من اللّائحة أدناه المُدخل الذي تريد\n"
+"تحريره ثمّ اضغط على التالي.\n"
+
+#: ../tools/drakvpn-old:535
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"\n"
+"You can now edit the remote section entries.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"ملف %s الخاصّ بك يحتوي عدّة أقسام.\n"
+"\n"
+"\n"
+"يمكن الآن تحرير مُدخلات القسم البعيدة.\n"
+"\n"
+"اختر الاستمرار عندما تنتهي من كتابة البيانات.\n"
+
+#: ../tools/drakvpn-old:544
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"You can now edit the sainfo section entries.\n"
+"\n"
+"Choose continue when you are done to write the data."
+msgstr ""
+"ملف %s الخاصّ بك يحتوي عدّة أقسام.\n"
+"\n"
+"يمكنك الآن تحرير مُدخلات قسم sainfo.\n"
+"\n"
+"اختر الاستمرار عندما تنتهي من كتابة البيانات."
+
+#: ../tools/drakvpn-old:552
+#, c-format
+msgid ""
+"This section has to be on top of your\n"
+"%s file.\n"
+"\n"
+"Make sure all other sections follow these path\n"
+"sections.\n"
+"\n"
+"You can now edit the path entries.\n"
+"\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"هذا القسم يجب أن يكون في أعلى\n"
+"ملف %s.\n"
+"\n"
+"تأكّد من أن كلّ الأقسام الأخرى تتبع مسار\n"
+"هذه الأقسام.\n"
+"\n"
+"يمكنك الآن تحرير مُدخلات المسار.\n"
+"\n"
+"اختر الاستمرار أو السّابق عندما تنتهي.\n"
+
+#: ../tools/drakvpn-old:559
+#, c-format
+msgid "path_type"
+msgstr "path_type"
+
+#: ../tools/drakvpn-old:599
+#, c-format
+msgid "Congratulations!"
+msgstr "تهانينا!"
+
+#: ../tools/drakvpn-old:600
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"\n"
+"You may now share resources through the Internet,\n"
+"in a secure way, using a VPN connection.\n"
+"\n"
+"You should make sure that the tunnels shorewall\n"
+"section is configured."
+msgstr ""
+"تمّت تهيئة كلّ شيء.\n"
+"\n"
+"يمكنك مشاركة الموارد عبر الإنترنت،\n"
+"بطريقة آمنية، باستخدام اتّصال VPN.\n"
+"\n"
+"عليك التّأكّد من أنّ قسم shorewall الخاصّ بالأنفاق\n"
+"مهيّأ."
+
+#: ../tools/drakvpn-old:620
+#, c-format
+msgid "Sainfo source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:621
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"تعرّف المعطيات للمرحلة الثّانية من IKE\n"
+"(تأسيس IPsec-SA).\n"
+"\n"
+"تُبنى source_id و destination_id كما يلي:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"أمثلة : \n"
+"\n"
+"sainfo anonymous (تقبل الاتّصال من أي مكان)\n"
+"\tاترك هذا المُدخل فارغاً إن كنت تريد المستخدم anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 هو عنوان المصدر\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 هو عنوان المصدر"
+
+#: ../tools/drakvpn-old:638
+#, c-format
+msgid "Sainfo source protocol"
+msgstr "البروتوكول المصدر لـSainfo"
+
+#: ../tools/drakvpn-old:639
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"يعرّف المُعطيات للمرحلة الثّانية من IKE\n"
+"(تأسيس IPsec-SA).\n"
+"\n"
+"source_id و destination_id مبنيّة بالشّكل:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"أمثلة : \n"
+"\n"
+"sainfo anonymous (يقبل الاتصال من أي مكان)\n"
+"\tاترك هذا المُدخل فارغاً إن كنت تريد المستخدم anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t'any' الأولى تسمح باستخدام أي بروتوكول للمصدر"
+
+#: ../tools/drakvpn-old:653
+#, c-format
+msgid "Sainfo destination address"
+msgstr "العنوان الوجهة لـSainfo"
+
+#: ../tools/drakvpn-old:654
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"يعرّف المُعطيات للمرحلة الثّانية من IKE\n"
+"(تأسيس IPsec-SA).\n"
+"\n"
+"source_id و destination_id تُبنى على شكل:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"أمثلة : \n"
+"\n"
+"sainfo anonymous (يقبل الاتصالات من أي مكان)\n"
+"\tاترك هذا المُدخل فارغاً إن أردت السّماح للمستخدم anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 هو العنوان الهدف\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 هو العنوان الهدف"
+
+#: ../tools/drakvpn-old:671
+#, c-format
+msgid "Sainfo destination protocol"
+msgstr "البروتوكول الوجهة لـSainfo"
+
+#: ../tools/drakvpn-old:672
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+msgstr ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"تعرّف المعطيات للمرحلة الثّانية من IKE\n"
+"(تأسيس IPsec-SA).\n"
+"\n"
+"تُبنى source_id و destination_id كما يلي:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"أمثلة: \n"
+"\n"
+"sainfo anonymous (تقبل الاتّصال من أي مكان)\n"
+"\tاترك هذا المُدخل فارغاً إن كنت تريد المستخدم anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t'any' الأخيرة تسمح باستخدام أي بروتوكول للهدف"
+
+#: ../tools/drakvpn-old:686
+#, c-format
+msgid "PFS group"
+msgstr "مجموعة PFS"
+
+#: ../tools/drakvpn-old:688
+#, c-format
+msgid ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+msgstr ""
+"عرّف مجموعة ترقيات Diffie-Hellman.\n"
+"إن لم تكن تتطلّب PFS فيمكنك تجاهل هذا الموجّه.\n"
+"أي اقتراح سيُقبل إن لم تحدّد واحداً.\n"
+"المجموعة هي أحد التّالي: modp768، modp1024، mod1536.\n"
+"أو يمكنك تعريف 1، 2، أو 5 كرقم مجموعة DH."
+
+#: ../tools/drakvpn-old:693
+#, c-format
+msgid "Lifetime number"
+msgstr "رقم Lifetime"
+
+#: ../tools/drakvpn-old:694
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+msgstr ""
+"تحديد العمر لوقت ما والذي سيُقترح\n"
+"في المرحلة الأولى للمفاوضات. أيّ اقتراح سوف\n"
+"يُقبل، ولن تُقترح الصّفات\n"
+"لنطقة الاتّصال إن لم تحدّدها. يمكن أن\n"
+"تُحدّد بشكل مُنفصل في كلّ اقتراح.\n"
+"\n"
+"أمثلة : \n"
+"\n"
+" lifetime time 1 min; # ثانية، دقيقة، ساعة\n"
+" lifetime time 1 min; # ثانية، دقيقة، ساعة\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour ;\n"
+"\n"
+"إذاً، هنا، أرقام العُمر هي 1، 1، 30، 30، 60 و 12.\n"
+
+#: ../tools/drakvpn-old:710
+#, c-format
+msgid "Lifetime unit"
+msgstr "وحْدة Lifetime"
+
+#: ../tools/drakvpn-old:712
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+msgstr ""
+"تحديد العمر لوقت ما والذي سيُقترح\n"
+"في المرحلة الأولى للمفاوضات. أيّ اقتراح سوف\n"
+"يُقبل، ولن تُقترح الصّفات\n"
+"لنطقة الاتّصال إن لم تحدّدها. يمكن أن\n"
+"تُحدّد بشكل مُنفصل في كلّ اقتراح.\n"
+"\n"
+"أمثلة : \n"
+"\n"
+" lifetime time 1 min; # ثانية، دقيقة، ساعة\n"
+" lifetime time 1 min; # ثانية، دقيقة، ساعة\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour ;\n"
+"\n"
+"إذا، هنا، وحدات العُمر هي 'min'، 'min'، 'sec'، 'sec'، 'sec' و 'hour'.\n"
+
+#: ../tools/drakvpn-old:728 ../tools/drakvpn-old:813
+#, c-format
+msgid "Encryption algorithm"
+msgstr "خوارزمية التّشفير"
+
+#: ../tools/drakvpn-old:730
+#, c-format
+msgid "Authentication algorithm"
+msgstr "خوارزمية المواثقة"
+
+#: ../tools/drakvpn-old:732
+#, c-format
+msgid "Compression algorithm"
+msgstr "خوارزميّة الضّغط"
+
+#: ../tools/drakvpn-old:733
+#, c-format
+msgid "deflate"
+msgstr "تفريغ"
+
+#: ../tools/drakvpn-old:740
+#, c-format
+msgid "Remote"
+msgstr "بعيد"
+
+#: ../tools/drakvpn-old:741
+#, c-format
+msgid ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+msgstr ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"يحدّد المعطيات لمرحلة IKE الأولى لكلّ نقطة بعيدة.\n"
+"المنفذ الافتراضي هو 500. إن كان المستخدم anonymous محدّداً، فإنّ statements "
+"تنطبق على كلّ نقاط الاتّصال التي لا تطابق أيّ \n"
+"موجّه بعيد.\n"
+"\n"
+"أمثلة : \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+
+#: ../tools/drakvpn-old:749
+#, c-format
+msgid "Exchange mode"
+msgstr "نمط المقايضة"
+
+#: ../tools/drakvpn-old:751
+#, c-format
+msgid ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+msgstr ""
+"يعرّف وضع المقايضة للمرحلة الأولى عندما يكون racoon\n"
+"هو البادئ. هذا يعني أيضاً وضع المقايضة المقبولة\n"
+"عندما يكون racoon هو المجيب. يمكن تحديد أاكثر من وضع\n"
+"بفصلها بفاصلة. كل الأوضاع\n"
+"مقبولة. وضع المقايضة الأول هو الذي\n"
+"يستخدمه racoon عندما يكون هو البادئ.\n"
+
+#: ../tools/drakvpn-old:757
+#, c-format
+msgid "Generate policy"
+msgstr "توليد السياسة"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "off"
+msgstr "متوقف"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "on"
+msgstr "يعمل"
+
+#: ../tools/drakvpn-old:759
+#, c-format
+msgid ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+msgstr ""
+"هذا الموجّه خاصّ بالمُجيب. لذا عليك\n"
+"تحديد استخدام سلبي حتّى يصبح racoon(8) فقط\n"
+"مُجيباً. إن لم يكُن للمُجيب أيّ\n"
+"سياسة في SPD خلال المرحلة الثّاثنية من التّفاوض، وكان المُوجّه محدّدٌ \n"
+"استخدامه، فسيقوم racoon(8) باختيار الاقتراح\n"
+"الأوّل في SA payload من المُبتدِئ، ويُولّد مُدخلات\n"
+"السّياسة من الاقتراح. من المفيد التّفاوض\n"
+"مع العميل ذي عنوان IP المُعيّن له\n"
+"ديناميكيّاً. لاحظ أنّ السّياسة الغير مناسبة قد تكون\n"
+"مُتثبيتة في SPD الخاصّ بالمُجيب من قبل المُبتدِئ. لذا\n"
+"قد يفشل بعض الاتّصال إن كانت هذه السّياسات\n"
+"مُتثبيتة بسبب عدم تطابق السّياسة بين المُبتدِئ\n"
+"والمُجيب. يتمّ تجاهل هذا المُوجِّه في\n"
+"حالة المُبتدِئ. القيمة الافتراضيّة هي غير مستخدَم."
+
+#: ../tools/drakvpn-old:773
+#, c-format
+msgid "Passive"
+msgstr "سلبي"
+
+#: ../tools/drakvpn-old:775
+#, c-format
+msgid ""
+"If you do not want to initiate the negotiation, set this\n"
+"to on. The default value is off. It is useful for a\n"
+"server."
+msgstr ""
+"إن كنت لا ترغب ببدء التّفاوض، حدّد هذا\n"
+"باختياره. القيمة الافتراضيّة هي غير محدّد. وهي مفيدة\n"
+"للخادم."
+
+#: ../tools/drakvpn-old:778
+#, c-format
+msgid "Certificate type"
+msgstr "نوع الشّهادة"
+
+#: ../tools/drakvpn-old:780
+#, c-format
+msgid "My certfile"
+msgstr "ملفّ certfile الخاص بي"
+
+#: ../tools/drakvpn-old:781
+#, c-format
+msgid "Name of the certificate"
+msgstr "اسم الشّهادة"
+
+#: ../tools/drakvpn-old:782
+#, c-format
+msgid "My private key"
+msgstr "مفتاحي الخاصّ"
+
+#: ../tools/drakvpn-old:783
+#, c-format
+msgid "Name of the private key"
+msgstr "اسم المفتاح الخاصّ"
+
+#: ../tools/drakvpn-old:784
+#, c-format
+msgid "Peers certfile"
+msgstr "ملف شهادة النّظراء"
+
+#: ../tools/drakvpn-old:785
+#, c-format
+msgid "Name of the peers certificate"
+msgstr "اسم شهادة النظراء"
+
+#: ../tools/drakvpn-old:786
+#, c-format
+msgid "Verify cert"
+msgstr "تحقّق من الشّهادة"
+
+#: ../tools/drakvpn-old:788
+#, c-format
+msgid ""
+"If you do not want to verify the peer's certificate for\n"
+"some reason, set this to off. The default is on."
+msgstr ""
+"إن كنت لا تريد التحقّق من شهادة النّظير\n"
+"لسبب ما، لا تستخدم هذا الخيار. الوضع الافتراضي هو استخدامه."
+
+#: ../tools/drakvpn-old:790
+#, c-format
+msgid "My identifier"
+msgstr "مُعرّفي"
+
+#: ../tools/drakvpn-old:791
+#, c-format
+msgid ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+msgstr ""
+"يحدّد المعرّف الذي يرسل إلى المضيف البعيد و\n"
+"النّوع الذي يجب استخدامه في المرحلة الأولى من المُفاوضة. العنوان، وFQDN، \n"
+"user_fqdn، keyid و asn1dn يمكن استخدامها كـidtype.\n"
+"إنّها تستخدم بالشّكل:\n"
+"\tmy_identifier address [address];\n"
+"\t\tالنّوع هو عنوان IP. هذا هو النّوع المُفترض\n"
+"\t\tإن لم تحدّد مُعرّفاً لاستخدامه.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tالنّوع هو USER_FQDN (اسم النّطاق المهيّء\n"
+"\t\tبالكامل للمستخدم).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tالنّوع هو FQDN (اسم النّطاق المُهيّء بالكامل).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tالنّوع هو KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tالنّوع هو الاسم المُميَّز ASN.1. إن\n"
+"\t\tأسقطت string، سيحضر racoon(8) الاسم المُميَّز من\n"
+"\t\tحقل العنوان من الشّهادة.\n"
+"\n"
+"أمثلة : \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+
+#: ../tools/drakvpn-old:811
+#, c-format
+msgid "Peers identifier"
+msgstr "معرّف النّظراء"
+
+#: ../tools/drakvpn-old:812
+#, c-format
+msgid "Proposal"
+msgstr "إقتراح"
+
+#: ../tools/drakvpn-old:814
+#, c-format
+msgid ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+msgstr ""
+"تحديد خوارزميّة التّشفير المستخدمة لمفاوضة\n"
+"المرحلة الأولى. هذا الموجّه يجب أن يعرّف. \n"
+"الخوارزميّة هي أحد ما يلي: \n"
+"\n"
+"DES، 3DES، blowfish، أو cast128 for oakley.\n"
+"\n"
+"للتّحويلات الأخرى، لا يجب أن تستخدم هذه العبارة."
+
+#: ../tools/drakvpn-old:821
+#, c-format
+msgid "Hash algorithm"
+msgstr "خوارزمية Hash"
+
+#: ../tools/drakvpn-old:822
+#, c-format
+msgid "Authentication method"
+msgstr "طريقة المواثقة"
+
+#: ../tools/drakvpn-old:823
+#, c-format
+msgid "DH group"
+msgstr "مجموعة DH"
+
+#: ../tools/drakvpn-old:830
+#, c-format
+msgid "Command"
+msgstr "الأمر"
+
+#: ../tools/drakvpn-old:831
+#, c-format
+msgid "Source IP range"
+msgstr "مدى عناوين IP للمصدر"
+
+#: ../tools/drakvpn-old:832
+#, c-format
+msgid "Destination IP range"
+msgstr "مدى عناوين IP للهدف"
+
+#: ../tools/drakvpn-old:833
+#, c-format
+msgid "Upper-layer protocol"
+msgstr "بروتوكول الطّبقة العليا"
+
+#: ../tools/drakvpn-old:833 ../tools/drakvpn-old:840
+#, c-format
+msgid "any"
+msgstr "أيّها"
+
+#: ../tools/drakvpn-old:835
+#, c-format
+msgid "Flag"
+msgstr "العلامة"
+
+#: ../tools/drakvpn-old:836
+#, c-format
+msgid "Direction"
+msgstr "الاتجاه"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "IPsec policy"
+msgstr "سياسة IPsec"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "ipsec"
+msgstr "ipsec"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "discard"
+msgstr "تجاهل"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "Mode"
+msgstr "الوضع"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "tunnel"
+msgstr "نفق"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "transport"
+msgstr "نقل"
+
+#: ../tools/drakvpn-old:842
+#, c-format
+msgid "Source/destination"
+msgstr "المصدر/الوجهة"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "Level"
+msgstr "المستوى"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "require"
+msgstr "طلب"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "default"
+msgstr "الافتراضي"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "use"
+msgstr "استخدام"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "unique"
+msgstr "فريد"
+
+#: ../tools/net_applet:61
+#, fuzzy, c-format
+msgid "Network is up on interface %s."
+msgstr "الشّبكة متصلة على الواجهة %s"
+
+#: ../tools/net_applet:62
+#, c-format
+msgid "IP address: %s"
+msgstr "عنوان IP: %s"
+
+#: ../tools/net_applet:63
+#, c-format
+msgid "Gateway: %s"
+msgstr "البوابة: %s"
+
+#: ../tools/net_applet:64
+#, c-format
+msgid "Connected to %s (link level: %d %%)"
+msgstr ""
+
+#: ../tools/net_applet:66
+#, fuzzy, c-format
+msgid "Network is down on interface %s."
+msgstr "الشّبكة متصلة على الواجهة %s"
+
+#: ../tools/net_applet:74 ../tools/net_monitor:468
+#, c-format
+msgid "Connect %s"
+msgstr "اتصال بـ%s"
+
+#: ../tools/net_applet:75 ../tools/net_monitor:468
+#, c-format
+msgid "Disconnect %s"
+msgstr "قطع الإتصال بـ %s"
+
+#: ../tools/net_applet:76
+#, c-format
+msgid "Monitor Network"
+msgstr "مراقبة الشّبكة"
+
+#: ../tools/net_applet:78
+#, c-format
+msgid "Manage wireless networks"
+msgstr ""
+
+#: ../tools/net_applet:80
+#, fuzzy, c-format
+msgid "Manage VPN connections"
+msgstr "إدارة الاتّصالات"
+
+#: ../tools/net_applet:84
+#, c-format
+msgid "Configure Network"
+msgstr "تهيئة الشبكة"
+
+#: ../tools/net_applet:86
+#, fuzzy, c-format
+msgid "Watched interface"
+msgstr "interfaces"
+
+#: ../tools/net_applet:87 ../tools/net_applet:88 ../tools/net_applet:90
+#, c-format
+msgid "Auto-detect"
+msgstr "تحقق آلي"
+
+#: ../tools/net_applet:95
+#, c-format
+msgid "Active interfaces"
+msgstr ""
+
+#: ../tools/net_applet:119
+#, c-format
+msgid "Profiles"
+msgstr "لمحات مختصرة"
+
+#: ../tools/net_applet:137
+#, c-format
+msgid "Get Online Help"
+msgstr "الحصول على مساعدة على الخطّ"
+
+#: ../tools/net_applet:318
+#, fuzzy, c-format
+msgid "Network connection"
+msgstr "خيارات الشبكة"
+
+#: ../tools/net_applet:438
+#, c-format
+msgid "More networks"
+msgstr ""
+
+#: ../tools/net_applet:465
+#, c-format
+msgid "Interactive Firewall automatic mode"
+msgstr ""
+
+#: ../tools/net_applet:470
+#, c-format
+msgid "Always launch on startup"
+msgstr "إطلاق دائما عند البدء"
+
+#: ../tools/net_applet:475
+#, fuzzy, c-format
+msgid "Wireless networks"
+msgstr "اتّصال لاسلكي"
+
+#: ../tools/net_applet:482 ../tools/net_monitor:96
+#, c-format
+msgid "Settings"
+msgstr "الإعدادات"
+
+#: ../tools/net_applet:557
+#, fuzzy, c-format
+msgid "Interactive Firewall: intrusion detected"
+msgstr "الجدار الناري النشط: تم اكتشاف تدخّل اقتحام"
+
+#: ../tools/net_applet:574
+#, fuzzy, c-format
+msgid "What do you want to do with this attacker?"
+msgstr "هل تريد إضافة المهاجم إلى القائمة السوداء؟"
+
+#: ../tools/net_applet:577
+#, c-format
+msgid "Attack details"
+msgstr "تفاصيل الهجوم"
+
+#: ../tools/net_applet:581
+#, c-format
+msgid "Attack time: %s"
+msgstr "وقت الهجوم: %s"
+
+#: ../tools/net_applet:582
+#, c-format
+msgid "Network interface: %s"
+msgstr "واجهة الشبكة: %s"
+
+#: ../tools/net_applet:583
+#, c-format
+msgid "Attack type: %s"
+msgstr "نوع الهجوم: %s"
+
+#: ../tools/net_applet:584
+#, c-format
+msgid "Protocol: %s"
+msgstr "البروتوكول: %s"
+
+#: ../tools/net_applet:585
+#, c-format
+msgid "Attacker IP address: %s"
+msgstr "عنوان IP للمهاجم: %s"
+
+#: ../tools/net_applet:586
+#, c-format
+msgid "Attacker hostname: %s"
+msgstr "اسم المضيف للمهاجم: %s"
+
+#: ../tools/net_applet:589
+#, c-format
+msgid "Service attacked: %s"
+msgstr "الخدمة المُهاجمة: %s"
+
+#: ../tools/net_applet:590
+#, c-format
+msgid "Port attacked: %s"
+msgstr "المنفذ المُهاجم: %s"
+
+#: ../tools/net_applet:592
+#, c-format
+msgid "Type of ICMP attack: %s"
+msgstr "نوع هجوم ICMP: %s"
+
+#: ../tools/net_applet:597
+#, c-format
+msgid "Always blacklist (do not ask again)"
+msgstr "إضافة إلى القائمة السوداء دائماً (دون السؤال مجدداً)"
+
+#: ../tools/net_applet:612
+#, c-format
+msgid "Ignore"
+msgstr "تجاهل"
+
+#: ../tools/net_applet:630 ../tools/net_applet:643
+#, fuzzy, c-format
+msgid "Interactive Firewall: new service"
+msgstr "الجدار الناري النشط: تم اكتشاف تدخّل اقتحام"
+
+#: ../tools/net_applet:654
+#, fuzzy, c-format
+msgid "Do you want to open this service?"
+msgstr "هل تريد تهيئته الآن؟"
+
+#: ../tools/net_applet:657
+#, fuzzy, c-format
+msgid "Remember this answer"
+msgstr "تذكّر كلمة السر هذه"
+
+#: ../tools/net_monitor:60 ../tools/net_monitor:65
+#, c-format
+msgid "Network Monitoring"
+msgstr "مراقبة الشبكة"
+
+#: ../tools/net_monitor:101
+#, c-format
+msgid "Global statistics"
+msgstr "الإحصائيات الشّاملة"
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Instantaneous"
+msgstr "آنيّ"
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Average"
+msgstr "المتوسّط"
+
+#: ../tools/net_monitor:105
+#, c-format
+msgid ""
+"Sending\n"
+"speed:"
+msgstr ""
+"سرعة\n"
+"الإرسال:"
+
+#: ../tools/net_monitor:105 ../tools/net_monitor:106 ../tools/net_monitor:111
+#, c-format
+msgid "unknown"
+msgstr "مجهول"
+
+#: ../tools/net_monitor:106
+#, c-format
+msgid ""
+"Receiving\n"
+"speed:"
+msgstr ""
+"سرعة\n"
+"الاستقبال:"
+
+#: ../tools/net_monitor:110
+#, c-format
+msgid ""
+"Connection\n"
+"time: "
+msgstr ""
+"زمن\n"
+"الاتصال:"
+
+#: ../tools/net_monitor:117
+#, c-format
+msgid "Use same scale for received and transmitted"
+msgstr "استخدام نفس المقياس للمستقبَل وللمرسَل"
+
+#: ../tools/net_monitor:136
+#, c-format
+msgid "Wait please, testing your connection..."
+msgstr "الرجاء الانتظار، اختبار الإتصال..."
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Disconnecting from Internet "
+msgstr "قطع الاتصال بالإنترنت"
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Connecting to Internet "
+msgstr "جاري الاتصال بالإنترنت"
+
+#: ../tools/net_monitor:229
+#, c-format
+msgid "Disconnection from Internet failed."
+msgstr "فشل قطع اتصال الإنترنت."
+
+#: ../tools/net_monitor:230
+#, c-format
+msgid "Disconnection from Internet complete."
+msgstr "تمّ قطع اتصال الإنترنت."
+
+#: ../tools/net_monitor:232
+#, c-format
+msgid "Connection complete."
+msgstr "تم الإتصال."
+
+#: ../tools/net_monitor:233
+#, c-format
+msgid ""
+"Connection failed.\n"
+"Verify your configuration in the Mandriva Linux Control Center."
+msgstr ""
+"فشل الاتّصال.\n"
+"تحقق من تهيئتك في مركز تحكّم ماندريبا لينكس."
+
+#: ../tools/net_monitor:338
+#, c-format
+msgid "Color configuration"
+msgstr "تهيئة الألوان"
+
+#: ../tools/net_monitor:395 ../tools/net_monitor:407
+#, c-format
+msgid "sent: "
+msgstr "مُرسل: "
+
+#: ../tools/net_monitor:398 ../tools/net_monitor:411
+#, c-format
+msgid "received: "
+msgstr "مُستقبل: "
+
+#: ../tools/net_monitor:401
+#, c-format
+msgid "average"
+msgstr "متوسط"
+
+#: ../tools/net_monitor:404
+#, c-format
+msgid "Local measure"
+msgstr "إجراء محلي"
+
+#: ../tools/net_monitor:461
+#, c-format
+msgid ""
+"Warning, another internet connection has been detected, maybe using your "
+"network"
+msgstr "تحذير، تم اكتشاف اتصال إنترنت آخر، ربما يستخدم شبكتك"
+
+#: ../tools/net_monitor:472
+#, c-format
+msgid "No internet connection configured"
+msgstr "ليس هناك أي اتصال إنترنت مهيأ"
diff --git a/po/az.po b/po/az.po
new file mode 100644
index 0000000..a42a863
--- /dev/null
+++ b/po/az.po
@@ -0,0 +1,5558 @@
+# translation of drakx-net-az.po to Azerbaijani
+# translation of drakx-net-az.po to Azerbaijani Turkish
+# drakx-net-az.po faylının Azərbaycan dilinə tərcüməsi
+# Copyright (C) 2000,2003, 2004 Free Software Foundation, Inc.
+# Copyright (c) 2000 Mandriva
+# Vasif Ismailoglu MD<azerb_linux@hotmail.com> , 2000-2001
+# Mətin Əmirov <metin@karegen.com>, 2001-2003, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: drakx-net-az\n"
+"POT-Creation-Date: 2007-01-10 15:18+0100\n"
+"PO-Revision-Date: 2005-03-31 14:21+0200\n"
+"Last-Translator: Mətin Əmirov <metin@karegen.com>\n"
+"Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.3.1\n"
+
+#: ../lib/network/connection.pm:16
+#, c-format
+msgid "Unknown connection type"
+msgstr "Namə'lum bağlantı növü"
+
+#: ../lib/network/connection.pm:115
+#, c-format
+msgid "Network access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:116
+#, c-format
+msgid "Access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:117
+#, c-format
+msgid "Address settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:149 ../lib/network/drakvpn.pm:62
+#: ../lib/network/vpn/openvpn.pm:365 ../lib/network/vpn/openvpn.pm:379
+#: ../lib/network/vpn/openvpn.pm:390 ../tools/net_applet:129
+#, fuzzy, c-format
+msgid "VPN connection"
+msgstr "LAN bağlantısı"
+
+#: ../lib/network/connection.pm:151 ../lib/network/connection/cable.pm:44
+#: ../lib/network/connection/wireless.pm:37 ../lib/network/vpn/openvpn.pm:127
+#: ../lib/network/vpn/openvpn.pm:171 ../lib/network/vpn/openvpn.pm:339
+#, c-format
+msgid "None"
+msgstr "Heç biri"
+
+#: ../lib/network/connection.pm:163
+#, c-format
+msgid "Allow users to manage the connection"
+msgstr ""
+
+#: ../lib/network/connection.pm:164
+#, c-format
+msgid "Start the connection at boot"
+msgstr ""
+
+#: ../lib/network/connection.pm:165 ../tools/drakconnect:462
+#, fuzzy, c-format
+msgid "Metric"
+msgstr "məhdudlaşdır"
+
+#: ../lib/network/connection.pm:230
+#, fuzzy, c-format
+msgid "Link detected on interface %s"
+msgstr "(%s qapısında tapıldı)"
+
+#: ../lib/network/connection.pm:231 ../lib/network/connection/ethernet.pm:278
+#, c-format
+msgid "Link beat lost on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:13
+#, c-format
+msgid "Cable"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:14
+#, fuzzy, c-format
+msgid "Cable modem"
+msgstr "Kart modeli:"
+
+#: ../lib/network/connection/cable.pm:45
+#, c-format
+msgid "Use BPALogin (needed for Telstra)"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:48 ../lib/network/netconnect.pm:587
+#: ../tools/drakconnect:482
+#, c-format
+msgid "Authentication"
+msgstr "Tanıtma"
+
+#: ../lib/network/connection/cable.pm:50 ../lib/network/connection/ppp.pm:22
+#: ../lib/network/netconnect.pm:326 ../lib/network/vpn/openvpn.pm:393
+#: ../tools/drakconnect:492
+#, c-format
+msgid "Account Login (user name)"
+msgstr "Hesab Girişi (istifadəçi adı)"
+
+#: ../lib/network/connection/cable.pm:52 ../lib/network/connection/ppp.pm:23
+#: ../lib/network/netconnect.pm:327 ../lib/network/vpn/openvpn.pm:394
+#: ../tools/drakconnect:493
+#, c-format
+msgid "Account Password"
+msgstr "Hesap Şifrəsi"
+
+#: ../lib/network/connection/cellular.pm:47
+#, c-format
+msgid "Access Point Name"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:10
+#, c-format
+msgid "Bluetooth"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:11
+#, c-format
+msgid "Bluetooth Dial Up Networking"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:8
+#, c-format
+msgid "GPRS/Edge/3G"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:67
+#: ../lib/network/vpn/openvpn.pm:391
+#, c-format
+msgid "PIN number"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:130
+#, fuzzy, c-format
+msgid "Unable to open device %s"
+msgstr "Fork edilə bilmir: %s"
+
+#: ../lib/network/connection/cellular_card.pm:155
+#, fuzzy, c-format
+msgid "Please check that your SIM card is inserted."
+msgstr ""
+"\n"
+"Xahiş edirik, istədiyiniz bütün seçimləri seçin.\n"
+
+#: ../lib/network/connection/cellular_card.pm:161
+#, c-format
+msgid ""
+"You entered a wrong PIN code.\n"
+"Entering the wrong PIN code multiple times may lock your SIM card!"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:12
+#, c-format
+msgid "DVB"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:13
+#, c-format
+msgid "Satellite (DVB)"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:56
+#, c-format
+msgid "Adapter card"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:57
+#, c-format
+msgid "Net demux"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:58
+#, c-format
+msgid "PID"
+msgstr "PID"
+
+#: ../lib/network/connection/ethernet.pm:10
+#, c-format
+msgid "Ethernet"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:53
+#, c-format
+msgid "Unable to find network interface for selected device (using %s driver)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:61 ../lib/network/vpn/openvpn.pm:207
+#, c-format
+msgid "Manual configuration"
+msgstr "Əllə quraşdırma"
+
+#: ../lib/network/connection/ethernet.pm:62
+#, c-format
+msgid "Automatic IP (BOOTP/DHCP)"
+msgstr "Avtomatik IP (BOOTP/DHCP)"
+
+#: ../lib/network/connection/ethernet.pm:116
+#, fuzzy, c-format
+msgid "IP settings"
+msgstr "PLL qurğusu:"
+
+#: ../lib/network/connection/ethernet.pm:125 ../lib/network/netconnect.pm:604
+#: ../lib/network/vpn/openvpn.pm:221 ../tools/drakconnect:113
+#: ../tools/drakconnect:321 ../tools/drakconnect:887 ../tools/drakhosts:196
+#, c-format
+msgid "IP address"
+msgstr "IP ünvanı"
+
+#: ../lib/network/connection/ethernet.pm:129
+#, c-format
+msgid ""
+"Please enter the IP configuration for this machine.\n"
+"Each item should be entered as an IP address in dotted-decimal\n"
+"notation (for example, 1.2.3.4)."
+msgstr ""
+"Xahiş edirik, bu kompüter üçün IP qurğularını girin.\n"
+"Hər üzv nöqtəli onluq IP şəklində girilməlidir,\n"
+"(misal üçün 1.2.3.4)."
+
+#: ../lib/network/connection/ethernet.pm:132 ../tools/drakconnect:326
+#: ../tools/drakconnect:888 ../tools/drakgw:177
+#, c-format
+msgid "Netmask"
+msgstr "Netmask"
+
+#: ../lib/network/connection/ethernet.pm:133 ../lib/network/netconnect.pm:636
+#: ../lib/network/vpn/openvpn.pm:212 ../lib/network/vpn/vpnc.pm:39
+#: ../tools/drakconnect:332
+#, c-format
+msgid "Gateway"
+msgstr "Şəbəkə Keçidi"
+
+#: ../lib/network/connection/ethernet.pm:136 ../tools/drakconnect:382
+#, fuzzy, c-format
+msgid "Get DNS servers from DHCP"
+msgstr "DNS Verici IP'si"
+
+#: ../lib/network/connection/ethernet.pm:138
+#, c-format
+msgid "DNS server 1"
+msgstr "DNS vericisi 1"
+
+#: ../lib/network/connection/ethernet.pm:139
+#, c-format
+msgid "DNS server 2"
+msgstr "DNS vericisi 2"
+
+#: ../lib/network/connection/ethernet.pm:140
+#, c-format
+msgid "Search domain"
+msgstr "Axtarış domeni"
+
+#: ../lib/network/connection/ethernet.pm:141
+#, c-format
+msgid "By default search domain will be set from the fully-qualified host name"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:143 ../tools/drakconnect:369
+#: ../tools/drakconnect:891
+#, c-format
+msgid "DHCP client"
+msgstr "DHCP alıcısı"
+
+#: ../lib/network/connection/ethernet.pm:144 ../tools/drakconnect:379
+#, fuzzy, c-format
+msgid "DHCP timeout (in seconds)"
+msgstr "Bağlantı vaxt dolması (saniyə sonra)"
+
+#: ../lib/network/connection/ethernet.pm:145 ../tools/drakconnect:383
+#, c-format
+msgid "Get YP servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:146 ../tools/drakconnect:384
+#, c-format
+msgid "Get NTPD servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:147 ../tools/drakconnect:375
+#, c-format
+msgid "DHCP host name"
+msgstr "DHCP qovşaq adı"
+
+#: ../lib/network/connection/ethernet.pm:149
+#, c-format
+msgid "Do not fallback to Zeroconf (169.254.0.0 network)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:160 ../tools/drakconnect:676
+#, c-format
+msgid "IP address should be in format 1.2.3.4"
+msgstr "IP ünvanı 1.2.3.4 şəklində olmalıdır"
+
+#: ../lib/network/connection/ethernet.pm:165 ../tools/drakconnect:680
+#, fuzzy, c-format
+msgid "Netmask should be in format 255.255.224.0"
+msgstr "Şəbəkə keçişi ünvanı 1.2.3.4 şəklində olmalıdır"
+
+#: ../lib/network/connection/ethernet.pm:170
+#, c-format
+msgid "Warning: IP address %s is usually reserved!"
+msgstr "Xəbərdarlıq : %s IP ünvanı çox vaxt tutulmuş olur !"
+
+#: ../lib/network/connection/ethernet.pm:176
+#, c-format
+msgid "%s already in use\n"
+msgstr "%s onsuzda istifadədədir\n"
+
+#: ../lib/network/connection/ethernet.pm:200 ../tools/drakconnect:373
+#, c-format
+msgid "Assign host name from DHCP address"
+msgstr "DHCP ünvanı üçün qovşaq adı tə'yin edin"
+
+#: ../lib/network/connection/ethernet.pm:202 ../tools/drakhosts:196
+#, c-format
+msgid "Host name"
+msgstr "Ev sahibi adı"
+
+#: ../lib/network/connection/ethernet.pm:220 ../tools/drakconnect:440
+#, c-format
+msgid "Network Hotplugging"
+msgstr "Ani Şəbəkə Fəallaşdırılması (Network Hotplugging)"
+
+#: ../lib/network/connection/ethernet.pm:224
+#, c-format
+msgid "Enable IPv6 to IPv4 tunnel"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:277
+#, c-format
+msgid "Link beat detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:280
+#, c-format
+msgid "Requesting a network address on interface %s (%s protocol)..."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:281
+#, c-format
+msgid "Got a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:282
+#, c-format
+msgid "Failed to get a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:8
+#, c-format
+msgid "ISDN"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:153 ../lib/network/netconnect.pm:197
+#: ../lib/network/netconnect.pm:200 ../lib/network/netconnect.pm:218
+#: ../lib/network/netconnect.pm:463 ../lib/network/netconnect.pm:559
+#: ../lib/network/netconnect.pm:562
+#, c-format
+msgid "Unlisted - edit manually"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "ISA / PCMCIA"
+msgstr "İSA / PCMCİA"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "I do not know"
+msgstr "Bilmirəm"
+
+#: ../lib/network/connection/isdn.pm:197 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "PCI"
+msgstr "PCİ"
+
+#: ../lib/network/connection/isdn.pm:198 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "USB"
+msgstr "USB"
+
+#. -PO: POTS means "Plain old telephone service"
+#: ../lib/network/connection/pots.pm:10
+#, c-format
+msgid "POTS"
+msgstr ""
+
+#. -PO: POTS means "Plain old telephone service"
+#. -PO: remove it if it doesn't have an equivalent in your language
+#. -PO: for example, in French, it can be translated as "RTC"
+#: ../lib/network/connection/pots.pm:16
+#, c-format
+msgid "Analog telephone modem (POTS)"
+msgstr ""
+
+#: ../lib/network/connection/ppp.pm:9 ../lib/network/netconnect.pm:74
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Script-based"
+msgstr "Skript əsaslı"
+
+#: ../lib/network/connection/ppp.pm:10 ../lib/network/netconnect.pm:75
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP"
+msgstr "PAP"
+
+#: ../lib/network/connection/ppp.pm:11 ../lib/network/netconnect.pm:76
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Terminal-based"
+msgstr "Terminal-əsaslı"
+
+#: ../lib/network/connection/ppp.pm:12 ../lib/network/netconnect.pm:77
+#: ../tools/drakconnect:499
+#, c-format
+msgid "CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/ppp.pm:13 ../lib/network/netconnect.pm:78
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP/CHAP"
+msgstr "PAP/CHAP"
+
+#: ../lib/network/connection/providers/cellular.pm:13
+#: ../lib/network/connection/providers/cellular.pm:18
+#: ../lib/network/connection/providers/cellular.pm:23
+#: ../lib/network/connection/providers/xdsl.pm:492
+#: ../lib/network/connection/providers/xdsl.pm:504
+#: ../lib/network/connection/providers/xdsl.pm:516
+#: ../lib/network/connection/providers/xdsl.pm:528
+#: ../lib/network/connection/providers/xdsl.pm:539
+#: ../lib/network/connection/providers/xdsl.pm:551
+#: ../lib/network/connection/providers/xdsl.pm:563
+#: ../lib/network/connection/providers/xdsl.pm:575
+#: ../lib/network/connection/providers/xdsl.pm:588
+#: ../lib/network/connection/providers/xdsl.pm:599
+#: ../lib/network/connection/providers/xdsl.pm:610
+#: ../lib/network/netconnect.pm:33
+#, c-format
+msgid "France"
+msgstr "Fransa"
+
+#: ../lib/network/connection/providers/xdsl.pm:47
+#: ../lib/network/connection/providers/xdsl.pm:57
+#, c-format
+msgid "Algeria"
+msgstr "Əlcəzair"
+
+#: ../lib/network/connection/providers/xdsl.pm:67
+#: ../lib/network/connection/providers/xdsl.pm:77
+#, c-format
+msgid "Argentina"
+msgstr "Argentina"
+
+#: ../lib/network/connection/providers/xdsl.pm:87
+#: ../lib/network/connection/providers/xdsl.pm:96
+#: ../lib/network/connection/providers/xdsl.pm:105
+#, c-format
+msgid "Austria"
+msgstr "Avstriya"
+
+#: ../lib/network/connection/providers/xdsl.pm:114
+#: ../lib/network/connection/providers/xdsl.pm:124
+#: ../lib/network/connection/providers/xdsl.pm:134
+#, c-format
+msgid "Australia"
+msgstr "Avstraliya"
+
+#: ../lib/network/connection/providers/xdsl.pm:144
+#: ../lib/network/connection/providers/xdsl.pm:153
+#: ../lib/network/connection/providers/xdsl.pm:164
+#: ../lib/network/connection/providers/xdsl.pm:173
+#: ../lib/network/connection/providers/xdsl.pm:182
+#: ../lib/network/netconnect.pm:36
+#, c-format
+msgid "Belgium"
+msgstr "Belçika"
+
+#: ../lib/network/connection/providers/xdsl.pm:191
+#: ../lib/network/connection/providers/xdsl.pm:201
+#: ../lib/network/connection/providers/xdsl.pm:210
+#: ../lib/network/connection/providers/xdsl.pm:219
+#, c-format
+msgid "Brazil"
+msgstr "Braziliya"
+
+#: ../lib/network/connection/providers/xdsl.pm:228
+#: ../lib/network/connection/providers/xdsl.pm:237
+#, c-format
+msgid "Bulgaria"
+msgstr "Bolqarıstan"
+
+#: ../lib/network/connection/providers/xdsl.pm:246
+#: ../lib/network/connection/providers/xdsl.pm:255
+#: ../lib/network/connection/providers/xdsl.pm:264
+#: ../lib/network/connection/providers/xdsl.pm:273
+#: ../lib/network/connection/providers/xdsl.pm:282
+#: ../lib/network/connection/providers/xdsl.pm:291
+#: ../lib/network/connection/providers/xdsl.pm:300
+#: ../lib/network/connection/providers/xdsl.pm:309
+#: ../lib/network/connection/providers/xdsl.pm:318
+#: ../lib/network/connection/providers/xdsl.pm:327
+#: ../lib/network/connection/providers/xdsl.pm:336
+#: ../lib/network/connection/providers/xdsl.pm:345
+#: ../lib/network/connection/providers/xdsl.pm:354
+#: ../lib/network/connection/providers/xdsl.pm:363
+#: ../lib/network/connection/providers/xdsl.pm:372
+#: ../lib/network/connection/providers/xdsl.pm:381
+#: ../lib/network/connection/providers/xdsl.pm:390
+#: ../lib/network/connection/providers/xdsl.pm:399
+#: ../lib/network/connection/providers/xdsl.pm:408
+#: ../lib/network/connection/providers/xdsl.pm:417
+#, c-format
+msgid "China"
+msgstr "Çin"
+
+#: ../lib/network/connection/providers/xdsl.pm:426
+#: ../lib/network/connection/providers/xdsl.pm:436
+#, c-format
+msgid "Czech Republic"
+msgstr "Çex Respublikası"
+
+#: ../lib/network/connection/providers/xdsl.pm:446
+#: ../lib/network/connection/providers/xdsl.pm:455
+#: ../lib/network/connection/providers/xdsl.pm:464
+#, c-format
+msgid "Denmark"
+msgstr "Danimarka"
+
+#: ../lib/network/connection/providers/xdsl.pm:473
+#, c-format
+msgid "Egypt"
+msgstr "Misir"
+
+#: ../lib/network/connection/providers/xdsl.pm:483
+#, c-format
+msgid "Finland"
+msgstr "Finlandiya"
+
+#: ../lib/network/connection/providers/xdsl.pm:621
+#: ../lib/network/connection/providers/xdsl.pm:630
+#: ../lib/network/connection/providers/xdsl.pm:640
+#, c-format
+msgid "Germany"
+msgstr "Almanya"
+
+#: ../lib/network/connection/providers/xdsl.pm:650
+#, c-format
+msgid "Greece"
+msgstr "Yunanıstan"
+
+#: ../lib/network/connection/providers/xdsl.pm:659
+#, c-format
+msgid "Hungary"
+msgstr "Macarıstan"
+
+#: ../lib/network/connection/providers/xdsl.pm:668
+#, c-format
+msgid "Ireland"
+msgstr "İrlandiya"
+
+#: ../lib/network/connection/providers/xdsl.pm:677
+#, c-format
+msgid "Israel"
+msgstr "İsrail"
+
+#: ../lib/network/connection/providers/xdsl.pm:687
+#, c-format
+msgid "India"
+msgstr "Hindistan"
+
+#: ../lib/network/connection/providers/xdsl.pm:696
+#: ../lib/network/connection/providers/xdsl.pm:705
+#, c-format
+msgid "Iceland"
+msgstr "İslandiya"
+
+#: ../lib/network/connection/providers/xdsl.pm:714
+#: ../lib/network/connection/providers/xdsl.pm:725
+#: ../lib/network/connection/providers/xdsl.pm:735
+#: ../lib/network/connection/providers/xdsl.pm:746
+#: ../lib/network/netconnect.pm:35
+#, c-format
+msgid "Italy"
+msgstr "İtaliya"
+
+#: ../lib/network/connection/providers/xdsl.pm:758
+#, c-format
+msgid "Sri Lanka"
+msgstr "Şri Lanka"
+
+#: ../lib/network/connection/providers/xdsl.pm:770
+#, c-format
+msgid "Lithuania"
+msgstr "Litva"
+
+#: ../lib/network/connection/providers/xdsl.pm:779
+#: ../lib/network/connection/providers/xdsl.pm:789
+#, c-format
+msgid "Mauritius"
+msgstr "Maurit"
+
+#: ../lib/network/connection/providers/xdsl.pm:800
+#, c-format
+msgid "Morocco"
+msgstr "Mərakeş"
+
+#: ../lib/network/connection/providers/xdsl.pm:810
+#: ../lib/network/connection/providers/xdsl.pm:819
+#: ../lib/network/connection/providers/xdsl.pm:828
+#: ../lib/network/connection/providers/xdsl.pm:837
+#: ../lib/network/netconnect.pm:34
+#, c-format
+msgid "Netherlands"
+msgstr "Hollandiya"
+
+#: ../lib/network/connection/providers/xdsl.pm:846
+#: ../lib/network/connection/providers/xdsl.pm:852
+#: ../lib/network/connection/providers/xdsl.pm:858
+#: ../lib/network/connection/providers/xdsl.pm:864
+#: ../lib/network/connection/providers/xdsl.pm:870
+#: ../lib/network/connection/providers/xdsl.pm:876
+#: ../lib/network/connection/providers/xdsl.pm:882
+#, c-format
+msgid "Norway"
+msgstr "Norvegiya"
+
+#: ../lib/network/connection/providers/xdsl.pm:890
+#, c-format
+msgid "Pakistan"
+msgstr "Pakistan"
+
+#: ../lib/network/connection/providers/xdsl.pm:901
+#: ../lib/network/connection/providers/xdsl.pm:911
+#, c-format
+msgid "Poland"
+msgstr "Polşa"
+
+#: ../lib/network/connection/providers/xdsl.pm:922
+#, c-format
+msgid "Portugal"
+msgstr "Portuqaliya"
+
+#: ../lib/network/connection/providers/xdsl.pm:931
+#, c-format
+msgid "Russia"
+msgstr "Rusiya"
+
+#: ../lib/network/connection/providers/xdsl.pm:942
+#, c-format
+msgid "Singapore"
+msgstr "Sinqapur"
+
+#: ../lib/network/connection/providers/xdsl.pm:951
+#, c-format
+msgid "Senegal"
+msgstr "Seneqal"
+
+#: ../lib/network/connection/providers/xdsl.pm:961
+#, c-format
+msgid "Slovenia"
+msgstr "Sloveniya"
+
+#: ../lib/network/connection/providers/xdsl.pm:972
+#: ../lib/network/connection/providers/xdsl.pm:984
+#: ../lib/network/connection/providers/xdsl.pm:996
+#: ../lib/network/connection/providers/xdsl.pm:1009
+#: ../lib/network/connection/providers/xdsl.pm:1019
+#: ../lib/network/connection/providers/xdsl.pm:1029
+#: ../lib/network/connection/providers/xdsl.pm:1040
+#: ../lib/network/connection/providers/xdsl.pm:1050
+#: ../lib/network/connection/providers/xdsl.pm:1060
+#: ../lib/network/connection/providers/xdsl.pm:1070
+#: ../lib/network/connection/providers/xdsl.pm:1080
+#: ../lib/network/connection/providers/xdsl.pm:1090
+#: ../lib/network/connection/providers/xdsl.pm:1101
+#: ../lib/network/connection/providers/xdsl.pm:1112
+#: ../lib/network/connection/providers/xdsl.pm:1124
+#: ../lib/network/connection/providers/xdsl.pm:1136
+#, c-format
+msgid "Spain"
+msgstr "İspaniya"
+
+#: ../lib/network/connection/providers/xdsl.pm:1149
+#, c-format
+msgid "Sweden"
+msgstr "İsveç"
+
+#: ../lib/network/connection/providers/xdsl.pm:1158
+#: ../lib/network/connection/providers/xdsl.pm:1167
+#: ../lib/network/connection/providers/xdsl.pm:1177
+#, c-format
+msgid "Switzerland"
+msgstr "İsveçrə"
+
+#: ../lib/network/connection/providers/xdsl.pm:1186
+#, c-format
+msgid "Thailand"
+msgstr "Tayland"
+
+#: ../lib/network/connection/providers/xdsl.pm:1196
+#, c-format
+msgid "Tunisia"
+msgstr "Tunis"
+
+#: ../lib/network/connection/providers/xdsl.pm:1207
+#, c-format
+msgid "Turkey"
+msgstr "Türkiyə"
+
+#: ../lib/network/connection/providers/xdsl.pm:1220
+#, c-format
+msgid "United Arab Emirates"
+msgstr "Birləşmiş Ərəb Əmirlikləri"
+
+#: ../lib/network/connection/providers/xdsl.pm:1230
+#: ../lib/network/connection/providers/xdsl.pm:1240
+#: ../lib/network/netconnect.pm:38
+#, c-format
+msgid "United Kingdom"
+msgstr "Birləşmiş Krallıq"
+
+#: ../lib/network/connection/wireless.pm:11
+#, c-format
+msgid "Wireless"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:21
+#, c-format
+msgid "Use a Windows driver (with ndiswrapper)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:38
+#, c-format
+msgid "Open WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:39
+#, c-format
+msgid "Restricted WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:40
+#, c-format
+msgid "WPA Pre-Shared Key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:181 ../lib/network/thirdparty.pm:174
+#, c-format
+msgid "Firmware files are required for this device."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:209
+#, c-format
+msgid ""
+"Your wireless card is disabled, please enable the wireless switch (RF kill "
+"switch) first."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:270
+#, fuzzy, c-format
+msgid "Wireless settings"
+msgstr "Kabelsiz bağlantı"
+
+#: ../lib/network/connection/wireless.pm:275 ../tools/drakconnect:406
+#: ../tools/drakroam:119
+#, c-format
+msgid "Operating Mode"
+msgstr "İdrə Modu"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Ad-hoc"
+msgstr "Ad-hoc"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Managed"
+msgstr "İdarə edilən"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Master"
+msgstr "Əsas"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Repeater"
+msgstr "Təkrarlayıcı"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Secondary"
+msgstr "İkinci"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Auto"
+msgstr "Avtomatik"
+
+#: ../lib/network/connection/wireless.pm:279 ../tools/drakconnect:407
+#, c-format
+msgid "Network name (ESSID)"
+msgstr "Şəbəkə adı (ESSID)"
+
+#: ../lib/network/connection/wireless.pm:281
+#, c-format
+msgid "Encryption mode"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:283 ../tools/drakconnect:421
+#, c-format
+msgid "Encryption key"
+msgstr "Şifrələmə açarı"
+
+#: ../lib/network/connection/wireless.pm:285 ../tools/drakconnect:408
+#, c-format
+msgid "Network ID"
+msgstr "Şəbəkə ID-si"
+
+#: ../lib/network/connection/wireless.pm:286 ../tools/drakconnect:409
+#, c-format
+msgid "Operating frequency"
+msgstr "İşləmə tezliyi"
+
+#: ../lib/network/connection/wireless.pm:287 ../tools/drakconnect:410
+#, c-format
+msgid "Sensitivity threshold"
+msgstr "Həssaslıq aralığı"
+
+#: ../lib/network/connection/wireless.pm:288 ../tools/drakconnect:411
+#, c-format
+msgid "Bitrate (in b/s)"
+msgstr "Vuruş sıxlığı (v/s olaraq)"
+
+#: ../lib/network/connection/wireless.pm:289 ../tools/drakconnect:422
+#, c-format
+msgid "RTS/CTS"
+msgstr "RTS/CTS"
+
+#: ../lib/network/connection/wireless.pm:290
+#, c-format
+msgid ""
+"RTS/CTS adds a handshake before each packet transmission to make sure that "
+"the\n"
+"channel is clear. This adds overhead, but increase performance in case of "
+"hidden\n"
+"nodes or large number of active nodes. This parameter sets the size of the\n"
+"smallest packet for which the node sends RTS, a value equal to the maximum\n"
+"packet size disable the scheme. You may also set this parameter to auto, "
+"fixed\n"
+"or off."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:297 ../tools/drakconnect:423
+#, c-format
+msgid "Fragmentation"
+msgstr "Fraqmentasiya"
+
+#: ../lib/network/connection/wireless.pm:298 ../tools/drakconnect:424
+#, c-format
+msgid "iwconfig command extra arguments"
+msgstr "iwconfig əmri əlavə arqumentləri"
+
+#: ../lib/network/connection/wireless.pm:299
+#, c-format
+msgid ""
+"Here, one can configure some extra wireless parameters such as:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick is already set "
+"as the hostname).\n"
+"\n"
+"See iwconfig(8) man page for further information."
+msgstr ""
+
+#. -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#: ../lib/network/connection/wireless.pm:306 ../tools/drakconnect:425
+#, c-format
+msgid "iwspy command extra arguments"
+msgstr "iwspy əmri əlavə arqumentləri"
+
+#: ../lib/network/connection/wireless.pm:307
+#, c-format
+msgid ""
+"iwspy is used to set a list of addresses in a wireless network\n"
+"interface and to read back quality of link information for each of those.\n"
+"\n"
+"This information is the same as the one available in /proc/net/wireless :\n"
+"quality of the link, signal strength and noise level.\n"
+"\n"
+"See iwpspy(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:315 ../tools/drakconnect:426
+#, c-format
+msgid "iwpriv command extra arguments"
+msgstr "iwpriv əmri əlavə arqumentləri"
+
+#: ../lib/network/connection/wireless.pm:317
+#, c-format
+msgid ""
+"iwpriv enable to set up optionals (private) parameters of a wireless "
+"network\n"
+"interface.\n"
+"\n"
+"iwpriv deals with parameters and setting specific to each driver (as opposed "
+"to\n"
+"iwconfig which deals with generic ones).\n"
+"\n"
+"In theory, the documentation of each device driver should indicate how to "
+"use\n"
+"those interface specific commands and their effect.\n"
+"\n"
+"See iwpriv(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:335
+#, c-format
+msgid "An encryption key is required."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:341
+#, c-format
+msgid ""
+"Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz "
+"frequency), or add enough '0' (zeroes)."
+msgstr ""
+"Tezliyin yanına k, M ya da G şəkilçisi qoyulmalıdır (misal üçün, 2.46 GHz "
+"tezlik üçün \"2.46G\" ), ya da lazım olan qədər '0' (sıfır) əlavə edin."
+
+#: ../lib/network/connection/wireless.pm:347
+#, c-format
+msgid ""
+"Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add "
+"enough '0' (zeroes)."
+msgstr ""
+"Sıxlığın yanına k, M ya da G şəkilçisi qoyulmalıdır (misal üçün, 11M üçün "
+"\"11M\" ), ya da lazım olan qədər '0' (sıfır) əlavə edin."
+
+#: ../lib/network/connection/wireless.pm:359
+#, c-format
+msgid "Allow access point roaming"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:460
+#, c-format
+msgid "Associated to wireless network \"%s\" on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:461
+#, c-format
+msgid "Lost association to wireless network on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:8
+#, fuzzy, c-format
+msgid "DSL"
+msgstr "SSL"
+
+#: ../lib/network/connection/xdsl.pm:76 ../lib/network/netconnect.pm:755
+#, c-format
+msgid "Alcatel speedtouch USB modem"
+msgstr "Alcatel speedtouch USB modem"
+
+#: ../lib/network/connection/xdsl.pm:104
+#, c-format
+msgid ""
+"The ECI Hi-Focus modem cannot be supported due to binary driver distribution "
+"problem.\n"
+"\n"
+"You can find a driver on http://eciadsl.flashtux.org/"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:176
+#, c-format
+msgid "DSL over CAPI"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:179
+#, c-format
+msgid "Dynamic Host Configuration Protocol (DHCP)"
+msgstr "Dinamik Qovşaq Quraşdırma Protokolu (DHCP)"
+
+#: ../lib/network/connection/xdsl.pm:180
+#, c-format
+msgid "Manual TCP/IP configuration"
+msgstr "Əllə TCP/IP quraşdırması"
+
+#: ../lib/network/connection/xdsl.pm:181
+#, c-format
+msgid "Point to Point Tunneling Protocol (PPTP)"
+msgstr "Nöqtədən Nöqtəyə Tunelləmə Protokolu (PPTP)"
+
+#: ../lib/network/connection/xdsl.pm:182
+#, c-format
+msgid "PPP over Ethernet (PPPoE)"
+msgstr "Eternet üstündən PPP (PPPoE)"
+
+#: ../lib/network/connection/xdsl.pm:183
+#, c-format
+msgid "PPP over ATM (PPPoA)"
+msgstr "ATM üstündən PPP (PPPoA)"
+
+#: ../lib/network/connection/xdsl.pm:223
+#, c-format
+msgid "Virtual Path ID (VPI):"
+msgstr "Virtual Path ID (VPI):"
+
+#: ../lib/network/connection/xdsl.pm:224
+#, c-format
+msgid "Virtual Circuit ID (VCI):"
+msgstr "Virtual Circuit ID (VCI):"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/drakvpn.pm:52 ../lib/network/ndiswrapper.pm:27
+#: ../lib/network/ndiswrapper.pm:42 ../lib/network/ndiswrapper.pm:86
+#: ../lib/network/ndiswrapper.pm:102 ../lib/network/netconnect.pm:131
+#: ../lib/network/netconnect.pm:179 ../lib/network/netconnect.pm:268
+#: ../lib/network/netconnect.pm:813 ../lib/network/thirdparty.pm:114
+#: ../lib/network/thirdparty.pm:131 ../lib/network/thirdparty.pm:214
+#: ../lib/network/thirdparty.pm:216 ../lib/network/thirdparty.pm:237
+#: ../tools/drakconnect:676 ../tools/drakconnect:680 ../tools/drakconnect:689
+#: ../tools/drakconnect:705 ../tools/drakgw:184 ../tools/drakhosts:100
+#: ../tools/drakhosts:245 ../tools/drakhosts:252 ../tools/drakhosts:259
+#: ../tools/drakinvictus:72 ../tools/draknetprofile:113 ../tools/draknfs:85
+#: ../tools/draknfs:106 ../tools/draknfs:273 ../tools/draknfs:400
+#: ../tools/draknfs:402 ../tools/draknfs:405 ../tools/draknfs:497
+#: ../tools/draknfs:504 ../tools/draknfs:567 ../tools/draknfs:574
+#: ../tools/draknfs:581 ../tools/drakroam:79 ../tools/drakroam:92
+#: ../tools/draksambashare:372 ../tools/draksambashare:379
+#: ../tools/draksambashare:382 ../tools/draksambashare:428
+#: ../tools/draksambashare:452 ../tools/draksambashare:518
+#: ../tools/draksambashare:533 ../tools/draksambashare:611
+#: ../tools/draksambashare:678 ../tools/draksambashare:778
+#: ../tools/draksambashare:785 ../tools/draksambashare:916
+#: ../tools/draksambashare:1109 ../tools/draksambashare:1118
+#: ../tools/draksambashare:1140 ../tools/draksambashare:1149
+#: ../tools/draksambashare:1168 ../tools/draksambashare:1177
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Error"
+msgstr "Xəta"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/netconnect.pm:131 ../lib/network/thirdparty.pm:114
+#, fuzzy, c-format
+msgid "Could not install the packages (%s)!"
+msgstr "Xorg paketi qurula bilmir: %s"
+
+#: ../lib/network/drakfirewall.pm:12
+#, c-format
+msgid "Web Server"
+msgstr "Veb Vericisi"
+
+#: ../lib/network/drakfirewall.pm:17
+#, c-format
+msgid "Domain Name Server"
+msgstr "Domen Adı Vericisi"
+
+#: ../lib/network/drakfirewall.pm:22
+#, c-format
+msgid "SSH server"
+msgstr "SSH vericisisi"
+
+#: ../lib/network/drakfirewall.pm:27
+#, c-format
+msgid "FTP server"
+msgstr "FTP vericisi"
+
+#: ../lib/network/drakfirewall.pm:32
+#, c-format
+msgid "Mail Server"
+msgstr "Poçt Vericisi"
+
+#: ../lib/network/drakfirewall.pm:37
+#, c-format
+msgid "POP and IMAP Server"
+msgstr "POP və IMAP Vericisi"
+
+#: ../lib/network/drakfirewall.pm:42
+#, c-format
+msgid "Telnet server"
+msgstr "Telnet vericisi"
+
+#: ../lib/network/drakfirewall.pm:48
+#, c-format
+msgid "Windows Files Sharing (SMB)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:54
+#, c-format
+msgid "CUPS server"
+msgstr "CUPS vericisi"
+
+#: ../lib/network/drakfirewall.pm:60
+#, c-format
+msgid "Echo request (ping)"
+msgstr "Echo istəyi (ping)"
+
+#: ../lib/network/drakfirewall.pm:65
+#, c-format
+msgid "BitTorrent"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:74
+#, c-format
+msgid "Port scan detection"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:166 ../lib/network/drakfirewall.pm:172
+#, fuzzy, c-format
+msgid "Firewall configuration"
+msgstr "Əllə quraşdırma"
+
+#: ../lib/network/drakfirewall.pm:166
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"This configures a personal firewall for this Mandriva Linux machine.\n"
+"For a powerful and dedicated firewall solution, please look to the\n"
+"specialized Mandriva Security Firewall distribution."
+msgstr ""
+"drakfirewall quraşdırıcısı\n"
+"\n"
+"Bu, Mandriva Linux sisteminiz üçün şəxsi bir atəş divarını quraşdıracaq.\n"
+"Daha güclü və e'tibarlı sistem üçün xahiş edirik, xüsusi Mandriva Security\n"
+"Firewall buraxılışı ilə maraqlanın."
+
+#: ../lib/network/drakfirewall.pm:172
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"Make sure you have configured your Network/Internet access with\n"
+"drakconnect before going any further."
+msgstr ""
+"drakfirewall quraşdırıcısı\n"
+"\n"
+"Daha irəli getmədən Şəbəkə/İnternet bağlantınızı drakconnect\n"
+"vasitəsi ilə quraşdırdığınızdan əmin olun."
+
+#: ../lib/network/drakfirewall.pm:189
+#, c-format
+msgid "Which services would you like to allow the Internet to connect to?"
+msgstr "İnternetin hansı xidmətlərə bağlana bilməsini istəyirsiniz?"
+
+#: ../lib/network/drakfirewall.pm:190 ../lib/network/shorewall.pm:145
+#, c-format
+msgid "Firewall"
+msgstr "Atəş Divarı"
+
+#: ../lib/network/drakfirewall.pm:192
+#, c-format
+msgid ""
+"You can enter miscellaneous ports. \n"
+"Valid examples are: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Have a look at /etc/services for information."
+msgstr ""
+"Müxtəlif qapılar daxil edə bilərsiniz. \n"
+"Hökmlü nümunələr: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Mə'lumat üçün /etc/services'a baxın."
+
+#: ../lib/network/drakfirewall.pm:198
+#, fuzzy, c-format
+msgid ""
+"Invalid port given: %s.\n"
+"The proper format is \"port/tcp\" or \"port/udp\", \n"
+"where port is between 1 and 65535.\n"
+"\n"
+"You can also give a range of ports (eg: 24300:24350/udp)"
+msgstr ""
+"Hökmsüz qapı daxil edildi: %s.\n"
+"Düzgün şəkil \"port/tcp\" ya da \"port/udp\"dır, \n"
+"burada qapı 1 və 65535 arası ədəddir."
+
+#: ../lib/network/drakfirewall.pm:208
+#, c-format
+msgid "Everything (no firewall)"
+msgstr "Hamısına (atəş divarı olmasın)"
+
+#: ../lib/network/drakfirewall.pm:210
+#, c-format
+msgid "Other ports"
+msgstr "Diqər qapılar"
+
+#: ../lib/network/drakfirewall.pm:211
+#, c-format
+msgid "Log firewall messages in system logs"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:255 ../lib/network/drakfirewall.pm:258
+#: ../tools/drakids:40 ../tools/drakids:65 ../tools/drakids:181
+#: ../tools/drakids:190 ../tools/drakids:215 ../tools/drakids:224
+#: ../tools/drakids:234 ../tools/drakids:326 ../tools/net_applet:77
+#: ../tools/net_applet:238 ../tools/net_applet:514 ../tools/net_applet:541
+#, fuzzy, c-format
+msgid "Interactive Firewall"
+msgstr "Atəş Divarı"
+
+#: ../lib/network/drakfirewall.pm:256
+#, c-format
+msgid ""
+"You can be warned when someone accesses to a service or tries to intrude "
+"into your computer.\n"
+"Please select which network activities should be watched."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:261
+#, c-format
+msgid "Use Interactive Firewall"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:30
+#, fuzzy, c-format
+msgid "VPN configuration"
+msgstr "CUPS quraşdırılması"
+
+#: ../lib/network/drakvpn.pm:34
+#, fuzzy, c-format
+msgid "Choose the VPN type"
+msgstr "Yeni böyüklüyü seçin"
+
+#: ../lib/network/drakvpn.pm:49
+#, c-format
+msgid "Initializing tools and detecting devices for %s..."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:52
+#, fuzzy, c-format
+msgid "Unable to initialize %s connection type!"
+msgstr "Namə'lum bağlantı növü"
+
+#: ../lib/network/drakvpn.pm:60
+#, c-format
+msgid "Please select an existing VPN connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:64
+#, fuzzy, c-format
+msgid "Configure a new connection..."
+msgstr "Bağlantınız sınanır..."
+
+#: ../lib/network/drakvpn.pm:66
+#, fuzzy, c-format
+msgid "New name"
+msgstr "Həqiqi ad"
+
+#: ../lib/network/drakvpn.pm:70 ../lib/network/drakvpn.pm:100
+#: ../lib/network/ndiswrapper.pm:92 ../lib/network/netconnect.pm:471
+#: ../tools/drakconnect:978 ../tools/draknetprofile:129
+#: ../tools/draknetprofile:131 ../tools/drakproxy:36
+#, c-format
+msgid "Warning"
+msgstr "Xəbərdarlıq"
+
+#: ../lib/network/drakvpn.pm:70
+#, c-format
+msgid "You must select an existing connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:81
+#, fuzzy, c-format
+msgid "Please enter the required key(s)"
+msgstr "Xahiş edirik, WebDAV vericisi URL-ni daxil edin"
+
+#: ../lib/network/drakvpn.pm:86
+#, fuzzy, c-format
+msgid "Please enter the settings of your VPN connection"
+msgstr "%s əksi ilə rabitə qurula bilmir"
+
+#: ../lib/network/drakvpn.pm:94 ../lib/network/netconnect.pm:291
+#, c-format
+msgid "Do you want to start the connection now?"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:100
+#, fuzzy, c-format
+msgid "Connection failed."
+msgstr "Bağlantı adı"
+
+#: ../lib/network/drakvpn.pm:108
+#, c-format
+msgid ""
+"The VPN connection is now configured.\n"
+"\n"
+"This VPN connection can be automatically started together with a network "
+"connection.\n"
+"It can be done by reconfiguring the network connection and selecting this "
+"VPN connection.\n"
+msgstr ""
+
+#: ../lib/network/ifw.pm:129
+#, fuzzy, c-format
+msgid "Port scanning"
+msgstr "Bölüşmə yoxdur"
+
+#: ../lib/network/ifw.pm:130
+#, fuzzy, c-format
+msgid "Service attack"
+msgstr "Xidmət _növü:"
+
+#: ../lib/network/ifw.pm:131
+#, fuzzy, c-format
+msgid "Password cracking"
+msgstr "Şifrə (təkrar)"
+
+#: ../lib/network/ifw.pm:132
+#, c-format
+msgid "\"%s\" attack"
+msgstr ""
+
+#: ../lib/network/ifw.pm:134
+#, c-format
+msgid "A port scanning attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:135
+#, fuzzy, c-format
+msgid "The %s service has been attacked by %s."
+msgstr "Bu hadisə dəyişdirilib."
+
+#: ../lib/network/ifw.pm:136
+#, c-format
+msgid "A password cracking attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:137
+#, fuzzy, c-format
+msgid "A \"%s\" attack has been attempted by %s"
+msgstr "Bu hadisə dəyişdirilib."
+
+#: ../lib/network/ifw.pm:146
+#, c-format
+msgid ""
+"The \"%s\" application is trying to make a service (%s) available to the "
+"network."
+msgstr ""
+
+#. -PO: this should be kept lowercase since the expression is meant to be used between brackets
+#: ../lib/network/ifw.pm:150
+#, fuzzy, c-format
+msgid "port %d"
+msgstr "Raport Göndər"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/netconnect.pm:603
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#, c-format
+msgid "Manual"
+msgstr "Bələdçi"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/modem.pm:63
+#: ../lib/network/modem.pm:76 ../lib/network/modem.pm:81
+#: ../lib/network/modem.pm:110 ../lib/network/netconnect.pm:598
+#: ../lib/network/netconnect.pm:603 ../lib/network/netconnect.pm:615
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#: ../lib/network/netconnect.pm:638
+#, c-format
+msgid "Automatic"
+msgstr "Avtomatik"
+
+#: ../lib/network/ndiswrapper.pm:27
+#, c-format
+msgid "No device supporting the %s ndiswrapper driver is present!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:33
+#, c-format
+msgid "Please select the Windows driver (.inf file)"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:42
+#, c-format
+msgid "Unable to install the %s ndiswrapper driver!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:86
+#, c-format
+msgid "Unable to load the ndiswrapper module!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:92
+#, c-format
+msgid ""
+"The selected device has already been configured with the %s driver.\n"
+"Do you really want to use a ndiswrapper driver?"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:102
+#, c-format
+msgid "Unable to find the ndiswrapper interface!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:115
+#, fuzzy, c-format
+msgid "Choose an ndiswrapper driver"
+msgstr "Səbəbsiz bir sürücü seçilir"
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Use the ndiswrapper driver %s"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:118
+#, fuzzy, c-format
+msgid "Install a new driver"
+msgstr "Sistemin qurulumu"
+
+#: ../lib/network/ndiswrapper.pm:129
+#, c-format
+msgid "Select a device:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:37
+#, c-format
+msgid "United States"
+msgstr "Birləşmiş Ştatlar"
+
+#: ../lib/network/netconnect.pm:60 ../lib/network/netconnect.pm:493
+#: ../lib/network/netconnect.pm:507
+#, fuzzy, c-format
+msgid "Manual choice"
+msgstr "əllə"
+
+#: ../lib/network/netconnect.pm:60
+#, c-format
+msgid "Internal ISDN card"
+msgstr "Daxili ISDN kart"
+
+#: ../lib/network/netconnect.pm:65
+#, c-format
+msgid "Protocol for the rest of the world"
+msgstr "Dünyanın geri qalanı üçün protokol"
+
+#: ../lib/network/netconnect.pm:67 ../tools/drakconnect:564
+#, c-format
+msgid "European protocol (EDSS1)"
+msgstr "Avropa protokolu (EDSS1)"
+
+#: ../lib/network/netconnect.pm:68 ../tools/drakconnect:565
+#, c-format
+msgid ""
+"Protocol for the rest of the world\n"
+"No D-Channel (leased lines)"
+msgstr ""
+"Dünyanın geri qalanı üçün protokol \n"
+" D-Channel yoxdur (kiralıq xətlər)"
+
+#: ../lib/network/netconnect.pm:118 ../tools/drakconnect:61
+#, c-format
+msgid "Network & Internet Configuration"
+msgstr "Şəbəkə və İnternet Qurğuları"
+
+#: ../lib/network/netconnect.pm:123
+#, c-format
+msgid "Choose the connection you want to configure"
+msgstr "Qurğulamaq istədiyiniz bağlantını seçin"
+
+#: ../lib/network/netconnect.pm:145 ../lib/network/netconnect.pm:348
+#: ../lib/network/netconnect.pm:788
+#, c-format
+msgid "Select the network interface to configure:"
+msgstr "Quraşdırılacaq şəbəkə ara üzünü seç:"
+
+#: ../lib/network/netconnect.pm:164
+#, c-format
+msgid "No device can be found for this connection type."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:173
+#, fuzzy, c-format
+msgid "Hardware Configuration"
+msgstr "Şəbəkə Quraşdırılması"
+
+#: ../lib/network/netconnect.pm:177 ../tools/drakroam:90
+#, fuzzy, c-format
+msgid "Configuring device..."
+msgstr "Quraşdırılır..."
+
+#: ../lib/network/netconnect.pm:194
+#, c-format
+msgid "Please select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:209 ../tools/drakroam:170
+#, fuzzy, c-format
+msgid "Scanning for networks..."
+msgstr "Şəbəkə yoxlanır..."
+
+#: ../lib/network/netconnect.pm:212
+#, c-format
+msgid "Please select your network:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:241
+#, c-format
+msgid ""
+"Please select your connection protocol.\n"
+"If you do not know it, keep the preselected protocol."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:285 ../lib/network/netconnect.pm:655
+#, c-format
+msgid "Connection control"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Connection Configuration"
+msgstr "Bağlantı quraşdırılması"
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Please fill or check the field below"
+msgstr "Xahiş edirik, aşağıdakıları doldurun ya da seçin"
+
+#: ../lib/network/netconnect.pm:318
+#, c-format
+msgid "Your personal phone number"
+msgstr "Şəxsi telefon nömrəniz"
+
+#: ../lib/network/netconnect.pm:319
+#, c-format
+msgid "Provider name (ex provider.net)"
+msgstr "İnternet xidmət vericinizin adı (məsələn azeronline.com)"
+
+#: ../lib/network/netconnect.pm:320 ../tools/drakconnect:494
+#, c-format
+msgid "Provider phone number"
+msgstr "İXM telefon nömrəsi"
+
+#: ../lib/network/netconnect.pm:321
+#, c-format
+msgid "Provider DNS 1 (optional)"
+msgstr "Provayder DNS-i 1 (arzuya görə)"
+
+#: ../lib/network/netconnect.pm:322
+#, c-format
+msgid "Provider DNS 2 (optional)"
+msgstr "Provayder DNS-i 2 (arzuya görə)"
+
+#: ../lib/network/netconnect.pm:323 ../tools/drakconnect:446
+#, c-format
+msgid "Dialing mode"
+msgstr "Yığma modu"
+
+#: ../lib/network/netconnect.pm:324 ../tools/drakconnect:451
+#: ../tools/drakconnect:518
+#, c-format
+msgid "Connection speed"
+msgstr "Bağlantı sürəti"
+
+#: ../lib/network/netconnect.pm:325 ../tools/drakconnect:456
+#, c-format
+msgid "Connection timeout (in sec)"
+msgstr "Bağlantı vaxt dolması (saniyə sonra)"
+
+#: ../lib/network/netconnect.pm:328 ../tools/drakconnect:555
+#, c-format
+msgid "Card IRQ"
+msgstr "Kart IRQ"
+
+#: ../lib/network/netconnect.pm:329 ../tools/drakconnect:556
+#, c-format
+msgid "Card mem (DMA)"
+msgstr "Kart mem (DMA)"
+
+#: ../lib/network/netconnect.pm:330 ../tools/drakconnect:557
+#, c-format
+msgid "Card IO"
+msgstr "Kart GÇ"
+
+#: ../lib/network/netconnect.pm:331 ../tools/drakconnect:558
+#, c-format
+msgid "Card IO_0"
+msgstr "Kart IO_0"
+
+#: ../lib/network/netconnect.pm:332
+#, c-format
+msgid "Card IO_1"
+msgstr "Kart IO_1"
+
+#: ../lib/network/netconnect.pm:350 ../lib/network/netconnect.pm:385
+#: ../tools/drakconnect:719 ../tools/drakgw:123
+#, c-format
+msgid "Net Device"
+msgstr "Şəbəkə Avadanlığı"
+
+#: ../lib/network/netconnect.pm:351 ../lib/network/netconnect.pm:356
+#, c-format
+msgid "External ISDN modem"
+msgstr "Xarici ISDN modem"
+
+#: ../lib/network/netconnect.pm:384
+#, c-format
+msgid "Select a device!"
+msgstr "Avadanlıq seçin !"
+
+#: ../lib/network/netconnect.pm:393 ../lib/network/netconnect.pm:403
+#: ../lib/network/netconnect.pm:413 ../lib/network/netconnect.pm:446
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid "ISDN Configuration"
+msgstr "ISDN quraşdırılması"
+
+#: ../lib/network/netconnect.pm:394
+#, c-format
+msgid "What kind of card do you have?"
+msgstr "Hansı növ kartınız var?"
+
+#: ../lib/network/netconnect.pm:404
+#, c-format
+msgid ""
+"\n"
+"If you have an ISA card, the values on the next screen should be right.\n"
+"\n"
+"If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your "
+"card.\n"
+msgstr ""
+"\n"
+"İSA kartınız var isə sonrakı ekrandakı qiymətlər doğru olmalıdır.\n"
+"\n"
+"PCMCİA kartınız var isə kartınızın \"irq\" və ya \"io\"sunu bilməlisiniz.\n"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Continue"
+msgstr "Davam et"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Abort"
+msgstr "Dayandır"
+
+#: ../lib/network/netconnect.pm:414
+#, c-format
+msgid "Which of the following is your ISDN card?"
+msgstr "Hansı sizin ISDN kartınızdır?"
+
+#: ../lib/network/netconnect.pm:432
+#, c-format
+msgid ""
+"A CAPI driver is available for this modem. This CAPI driver can offer more "
+"capabilities than the free driver (like sending faxes). Which driver do you "
+"want to use?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:434 ../tools/drakconnect:113
+#, c-format
+msgid "Driver"
+msgstr "Sürücü"
+
+#: ../lib/network/netconnect.pm:446
+#, c-format
+msgid "Which protocol do you want to use?"
+msgstr "Hansı protokolu istifadə etmək istəyirsiniz?"
+
+#: ../lib/network/netconnect.pm:448 ../tools/drakconnect:113
+#: ../tools/drakconnect:305 ../tools/drakconnect:563 ../tools/drakids:252
+#: ../tools/drakvpn-old:839
+#, c-format
+msgid "Protocol"
+msgstr "Protokol"
+
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid ""
+"Select your provider.\n"
+"If it is not listed, choose Unlisted."
+msgstr ""
+"İnternet xidmət vericinizi seçin.\n"
+"Siyahıda deyilsə Siyahıda deyil'-i seçin."
+
+#: ../lib/network/netconnect.pm:462 ../lib/network/netconnect.pm:558
+#, c-format
+msgid "Provider:"
+msgstr "Provayder: "
+
+#: ../lib/network/netconnect.pm:471
+#, c-format
+msgid ""
+"Your modem is not supported by the system.\n"
+"Take a look at http://www.linmodems.org"
+msgstr ""
+"Modeminiz sistem tərəfindən dəstəklənmir.\n"
+"http://www.linmodems.org ünvanına baxın"
+
+#: ../lib/network/netconnect.pm:490
+#, c-format
+msgid "Select the modem to configure:"
+msgstr "Quraşdırılacaq modemi seçin:"
+
+#: ../lib/network/netconnect.pm:492
+#, c-format
+msgid "Modem"
+msgstr "Modem"
+
+#: ../lib/network/netconnect.pm:527
+#, c-format
+msgid "Please choose which serial port your modem is connected to."
+msgstr "Modeminizin hansı serial qapıya bağlı olduğunu seçiniz"
+
+#: ../lib/network/netconnect.pm:556
+#, c-format
+msgid "Select your provider:"
+msgstr "Provayderinizi seçin:"
+
+#: ../lib/network/netconnect.pm:580
+#, c-format
+msgid "Dialup: account options"
+msgstr "Dialup: hesab seçimləri"
+
+#: ../lib/network/netconnect.pm:583
+#, c-format
+msgid "Connection name"
+msgstr "Bağlantı adı"
+
+#: ../lib/network/netconnect.pm:584
+#, c-format
+msgid "Phone number"
+msgstr "Telefon nömrəsi"
+
+#: ../lib/network/netconnect.pm:585
+#, c-format
+msgid "Login ID"
+msgstr "Giriş adı"
+
+#: ../lib/network/netconnect.pm:586 ../lib/network/vpn/vpnc.pm:56
+#: ../tools/drakinvictus:110
+#, c-format
+msgid "Password"
+msgstr "Şifrə"
+
+#: ../lib/network/netconnect.pm:600 ../lib/network/netconnect.pm:633
+#, c-format
+msgid "Dialup: IP parameters"
+msgstr "Dialup: IP parametrləri"
+
+#: ../lib/network/netconnect.pm:603
+#, c-format
+msgid "IP parameters"
+msgstr "IP parametrləri"
+
+#: ../lib/network/netconnect.pm:605
+#, c-format
+msgid "Subnet mask"
+msgstr "Subnet maskası"
+
+#: ../lib/network/netconnect.pm:617
+#, c-format
+msgid "Dialup: DNS parameters"
+msgstr "Dialup: DNS parametrləri"
+
+#: ../lib/network/netconnect.pm:620
+#, c-format
+msgid "DNS"
+msgstr "DNS"
+
+#: ../lib/network/netconnect.pm:621
+#, c-format
+msgid "Domain name"
+msgstr "Domen adı"
+
+#: ../lib/network/netconnect.pm:622 ../tools/drakconnect:996
+#, c-format
+msgid "First DNS Server (optional)"
+msgstr "Birinci DNS Vericisi (arzuya görə)"
+
+#: ../lib/network/netconnect.pm:623 ../tools/drakconnect:997
+#, c-format
+msgid "Second DNS Server (optional)"
+msgstr "İkinci DNS Vericisi (arzuya görə)"
+
+#: ../lib/network/netconnect.pm:624
+#, c-format
+msgid "Set hostname from IP"
+msgstr "IP-dən qovşaq adını seç"
+
+#: ../lib/network/netconnect.pm:637
+#, c-format
+msgid "Gateway IP address"
+msgstr "Şəbəkə keçişi IP ünvanı"
+
+#: ../lib/network/netconnect.pm:670
+#, fuzzy, c-format
+msgid "Automatically at boot"
+msgstr "Açılışda başlat"
+
+#: ../lib/network/netconnect.pm:672
+#, c-format
+msgid "By using Net Applet in the system tray"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:674
+#, c-format
+msgid "Manually (the interface would still be activated at boot)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:683
+#, fuzzy, c-format
+msgid "How do you want to dial this connection?"
+msgstr "Bağlantınızı açılışda başlatmaq istəyirsiniz?"
+
+#: ../lib/network/netconnect.pm:696
+#, c-format
+msgid "Do you want to try to connect to the Internet now?"
+msgstr "İndi internetə bağlanmağı sınamaq istəyirsiniz?"
+
+#: ../lib/network/netconnect.pm:704 ../tools/drakconnect:1027
+#, c-format
+msgid "Testing your connection..."
+msgstr "Bağlantınız sınanır..."
+
+#: ../lib/network/netconnect.pm:723
+#, c-format
+msgid "The system is now connected to the Internet."
+msgstr "Sistem indi İnternetə bağlıdır."
+
+#: ../lib/network/netconnect.pm:724
+#, c-format
+msgid "For security reasons, it will be disconnected now."
+msgstr "Təhlükəsizlik səbəbi ilə, indi bağlantı qopacaqdır."
+
+#: ../lib/network/netconnect.pm:725
+#, c-format
+msgid ""
+"The system does not seem to be connected to the Internet.\n"
+"Try to reconfigure your connection."
+msgstr ""
+"Sisteminiz İnternetə bağlı görünmür.\n"
+"Bağlantınızı yenidən quraşdırın."
+
+#: ../lib/network/netconnect.pm:740
+#, c-format
+msgid ""
+"Congratulations, the network and Internet configuration is finished.\n"
+"\n"
+msgstr ""
+"Təbrik edirik, internet və şəbəkə quraşdırılması bitdi.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:743
+#, c-format
+msgid ""
+"After this is done, we recommend that you restart your X environment to "
+"avoid any hostname-related problems."
+msgstr ""
+"Bu edildikdən sonra Xdən çıxmağınızı tövsiyyə edirik, yoxsa\n"
+"verici adı xəsarətləri meydana gələ bilər."
+
+#: ../lib/network/netconnect.pm:744
+#, c-format
+msgid ""
+"Problems occurred during configuration.\n"
+"Test your connection via net_monitor or mcc. If your connection does not "
+"work, you might want to relaunch the configuration."
+msgstr ""
+"Quraşdırma sırasında xətalar yarandı.\n"
+"net_monitor ya da mcc vasitəsiylə bağlantınızı sınayın. Əgər "
+"bağlantınızyoxdursa, quraşdırmanı yenidən başladın."
+
+#: ../lib/network/netconnect.pm:756
+#, c-format
+msgid "Sagem USB modem"
+msgstr "Sagem USB modem"
+
+#: ../lib/network/netconnect.pm:757 ../lib/network/netconnect.pm:758
+#, c-format
+msgid "Bewan modem"
+msgstr "Bewan modem"
+
+#: ../lib/network/netconnect.pm:759
+#, c-format
+msgid "ECI Hi-Focus modem"
+msgstr "ECI Hi-Focus modem"
+
+#: ../lib/network/netconnect.pm:760
+#, c-format
+msgid "LAN connection"
+msgstr "LAN bağlantısı"
+
+#: ../lib/network/netconnect.pm:761 ../tools/drakroam:29
+#, c-format
+msgid "Wireless connection"
+msgstr "Kabelsiz bağlantı"
+
+#: ../lib/network/netconnect.pm:762
+#, c-format
+msgid "ADSL connection"
+msgstr "ADSL bağlantısı"
+
+#: ../lib/network/netconnect.pm:763
+#, c-format
+msgid "Cable connection"
+msgstr "Kabel bağlantısı"
+
+#: ../lib/network/netconnect.pm:764
+#, c-format
+msgid "ISDN connection"
+msgstr "ISDN Bağlantısı"
+
+#: ../lib/network/netconnect.pm:765
+#, c-format
+msgid "Modem connection"
+msgstr "Modem bağlantısı"
+
+#: ../lib/network/netconnect.pm:766
+#, c-format
+msgid "DVB connection"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:768
+#, c-format
+msgid "(detected on port %s)"
+msgstr "(%s qapısında tapıldı)"
+
+#. -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected %s)"
+msgstr "(%s tapıldı)"
+
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected)"
+msgstr "(tapıldı)"
+
+#: ../lib/network/netconnect.pm:771
+#, c-format
+msgid "Network Configuration"
+msgstr "Şəbəkə Quraşdırılması"
+
+#: ../lib/network/netconnect.pm:772
+#, c-format
+msgid "Zeroconf hostname resolution"
+msgstr "Zeroconf qovşaq adı həlli"
+
+#: ../lib/network/netconnect.pm:773
+#, c-format
+msgid ""
+"If desired, enter a Zeroconf hostname.\n"
+"This is the name your machine will use to advertise any of\n"
+"its shared resources that are not managed by the network.\n"
+"It is not necessary on most networks."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:777
+#, c-format
+msgid "Zeroconf Host name"
+msgstr "Zeroconf Qovşaq adı"
+
+#: ../lib/network/netconnect.pm:778
+#, c-format
+msgid "Zeroconf host name must not contain a ."
+msgstr "Zeroconf qovşaq adı . (nöqtə) daxil edə bilməz"
+
+#: ../lib/network/netconnect.pm:779
+#, c-format
+msgid ""
+"Because you are doing a network installation, your network is already "
+"configured.\n"
+"Click on Ok to keep your configuration, or cancel to reconfigure your "
+"Internet & Network connection.\n"
+msgstr ""
+"Şəbəkədən quraşdırması apardığınız üçün şəbəkəniz onsuzda quruludur.\n"
+"Qurğuları saxlamaq üçün Oldu'ya, İnternet və Şəbəkə qurğularınızı yenidən "
+"quraşdırmaq üçün isə Ləğv et'ə basın.\n"
+
+#: ../lib/network/netconnect.pm:782
+#, c-format
+msgid "The network needs to be restarted. Do you want to restart it?"
+msgstr "Şəbəkə yenidən başladılmalıdır. Yenidən başlatmaq istəyirsiniz?"
+
+#: ../lib/network/netconnect.pm:783
+#, c-format
+msgid ""
+"A problem occurred while restarting the network: \n"
+"\n"
+"%s"
+msgstr ""
+"Şəbəkənin yenidən başladılması sırasında xəta oldu: \n"
+"\n"
+"%s"
+
+#: ../lib/network/netconnect.pm:784
+#, c-format
+msgid ""
+"We are now going to configure the %s connection.\n"
+"\n"
+"\n"
+"Press \"%s\" to continue."
+msgstr ""
+"İndi %s bağlantısı qurğulanacaq.\n"
+"\n"
+"\n"
+"Davam etmək üçün \"%s\" düyməsinə basın."
+
+#: ../lib/network/netconnect.pm:785
+#, c-format
+msgid "Configuration is complete, do you want to apply settings?"
+msgstr "Quraşdırma qurtardı, dəyişiklikləri tətbiq etmək istəyirsiniz ?"
+
+#: ../lib/network/netconnect.pm:786
+#, c-format
+msgid ""
+"You have configured multiple ways to connect to the Internet.\n"
+"Choose the one you want to use.\n"
+"\n"
+msgstr ""
+"Siz İnternetə bağlanmanın bir neçə yöntəmini quraşdırmışsınız.\n"
+"İstifadə etmək istədiyinizi seçin.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:787
+#, c-format
+msgid "Internet connection"
+msgstr "İnternet bağlantısı"
+
+#: ../lib/network/netconnect.pm:789
+#, c-format
+msgid "Configuring network device %s (driver %s)"
+msgstr "%s şəbəkə avadanlığı qurulur (sürücü %s) "
+
+#: ../lib/network/netconnect.pm:790
+#, c-format
+msgid ""
+"The following protocols can be used to configure a LAN connection. Please "
+"choose the one you want to use."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:791
+#, c-format
+msgid ""
+"Please enter your host name.\n"
+"Your host name should be a fully-qualified host name,\n"
+"such as ``mybox.mylab.myco.com''.\n"
+"You may also enter the IP address of the gateway if you have one."
+msgstr ""
+"Xahiş edirik, kompüterinizn adını girin.\n"
+"Məsələn``kompüteradı.sahəadı.com''.\n"
+"Əgər şəbəkə keçidi istifadə edirsinizsə bunun da IP nömrəsini girməlisiniz."
+
+#: ../lib/network/netconnect.pm:796
+#, c-format
+msgid "Last but not least you can also type in your DNS server IP addresses."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:797
+#, c-format
+msgid "DNS server address should be in format 1.2.3.4"
+msgstr "DNS vericisi ünvanı 1.2.3.4 şəklində olmalıdır"
+
+#: ../lib/network/netconnect.pm:798 ../tools/drakconnect:689
+#, c-format
+msgid "Gateway address should be in format 1.2.3.4"
+msgstr "Şəbəkə keçişi ünvanı 1.2.3.4 şəklində olmalıdır"
+
+#: ../lib/network/netconnect.pm:799
+#, c-format
+msgid "Gateway device"
+msgstr "Şəbəkə keçidi avadanlığı"
+
+#: ../lib/network/netconnect.pm:813
+#, c-format
+msgid ""
+"An unexpected error has happened:\n"
+"%s"
+msgstr ""
+"Gözlənilməyən xəta baş verdi:\n"
+"%s"
+
+#: ../lib/network/network.pm:429
+#, c-format
+msgid "Proxies configuration"
+msgstr "Vəkil vericilər quraşdırılması"
+
+#: ../lib/network/network.pm:430
+#, c-format
+msgid ""
+"Here you can set up your proxies configuration (eg: http://"
+"my_caching_server:8080)"
+msgstr ""
+
+#: ../lib/network/network.pm:431
+#, c-format
+msgid "HTTP proxy"
+msgstr "HTTP vəkil verici"
+
+#: ../lib/network/network.pm:432
+#, c-format
+msgid "Use HTTP proxy for HTTPS connections"
+msgstr ""
+
+#: ../lib/network/network.pm:433
+#, c-format
+msgid "HTTPS proxy"
+msgstr ""
+
+#: ../lib/network/network.pm:434
+#, c-format
+msgid "FTP proxy"
+msgstr "FTP vəkili"
+
+#: ../lib/network/network.pm:435
+#, fuzzy, c-format
+msgid "No proxy for (comma separated list):"
+msgstr "%d vergüllə ayrılmış qatar"
+
+#: ../lib/network/network.pm:440
+#, c-format
+msgid "Proxy should be http://..."
+msgstr "Vəkil http://... şəklində olmalıdır."
+
+#: ../lib/network/network.pm:441
+#, fuzzy, c-format
+msgid "Proxy should be http://... or https://..."
+msgstr "Vəkil http://... şəklində olmalıdır."
+
+#: ../lib/network/network.pm:442
+#, c-format
+msgid "URL should begin with 'ftp:' or 'http:'"
+msgstr "URL 'ftp:' ya da 'http:' ilə başlamalıdır"
+
+#: ../lib/network/shorewall.pm:61
+#, c-format
+msgid ""
+"Please select the interfaces that will be protected by the firewall.\n"
+"\n"
+"All interfaces directly connected to Internet should be selected,\n"
+"while interfaces connected to a local network may be unselected.\n"
+"\n"
+"Which interfaces should be protected?\n"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:136
+#, c-format
+msgid "Keep custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:137
+#, c-format
+msgid "Drop custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:142
+#, c-format
+msgid ""
+"Your firewall configuration has been manually edited and contains\n"
+"rules that may conflict with the configuration that has just been set up.\n"
+"What do you want to do?"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:134
+#, c-format
+msgid "Some components (%s) are required but aren't available for %s hardware."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:135
+#, c-format
+msgid "Some packages (%s) are required but aren't available."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:137
+#, c-format
+msgid ""
+"These packages can be found in Mandriva Club or in Mandriva commercial "
+"releases."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:138
+#, c-format
+msgid "The following component is missing: %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:140
+#, c-format
+msgid ""
+"The required files can also be installed from this URL:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:177 ../lib/network/thirdparty.pm:182
+#, c-format
+msgid "Use a floppy"
+msgstr "Disket işlət"
+
+#: ../lib/network/thirdparty.pm:178 ../lib/network/thirdparty.pm:185
+#, c-format
+msgid "Use my Windows partition"
+msgstr "Windows bölməmi işlət"
+
+#: ../lib/network/thirdparty.pm:179
+#, c-format
+msgid "Select file"
+msgstr "Fayl seç"
+
+#: ../lib/network/thirdparty.pm:190
+#, c-format
+msgid "Please select the firmware file (for example: %s)"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:214
+#, fuzzy, c-format
+msgid "Unable to find \"%s\" on your Windows system!"
+msgstr "Siseminizdəki yazı növlərini silin"
+
+#: ../lib/network/thirdparty.pm:216
+#, c-format
+msgid "No Windows system has been detected!"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:226
+#, c-format
+msgid "Insert floppy"
+msgstr "Disket daxil edin"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid ""
+"Insert a FAT formatted floppy in drive %s with %s in root directory and "
+"press %s"
+msgstr ""
+"Kök cərgəsində %2$s olan FAT ilə şəkilləndirilmiş %1$s disketini taxın və %3"
+"$s düyməsinə basın"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid "Next"
+msgstr "Sonrakı"
+
+#: ../lib/network/thirdparty.pm:237
+#, c-format
+msgid "Floppy access error, unable to mount device %s"
+msgstr "Disketə icazə xətası, %s avadanlığı bağlana bilmədi"
+
+#: ../lib/network/thirdparty.pm:319
+#, c-format
+msgid "Looking for required software and drivers..."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:330
+#, fuzzy, c-format
+msgid "Please wait, running device configuration commands..."
+msgstr "Xahiş edirik gözləyin, avadanlıqlar tapılır və quraşdırılır..."
+
+#: ../lib/network/vpn/openvpn.pm:107
+#, c-format
+msgid "X509 Public Key Infrastructure"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:108
+#, c-format
+msgid "Static Key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:115
+#, c-format
+msgid "Type"
+msgstr "Növ"
+
+#. -PO: please don't translate the CA acronym
+#: ../lib/network/vpn/openvpn.pm:142
+#, c-format
+msgid "Certificate Authority (CA)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:148
+#, c-format
+msgid "Certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:154
+#, c-format
+msgid "Key"
+msgstr "Açarla"
+
+#: ../lib/network/vpn/openvpn.pm:160
+#, fuzzy, c-format
+msgid "TLS control channel key"
+msgstr "Sol Control düyməsi"
+
+#: ../lib/network/vpn/openvpn.pm:167
+#, c-format
+msgid "Key direction"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:175
+#, fuzzy, c-format
+msgid "Authenticate using username and password"
+msgstr "%s istifadəçi adı ilə giriş edilə bilmir (şifrəniz səhvdir?)"
+
+#: ../lib/network/vpn/openvpn.pm:181
+#, c-format
+msgid "Check server certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:187
+#, fuzzy, c-format
+msgid "Cipher algorithm"
+msgstr "Şifrələmə alqorifması"
+
+#: ../lib/network/vpn/openvpn.pm:191
+#, c-format
+msgid "Default"
+msgstr "Ön Qurğulu"
+
+#: ../lib/network/vpn/openvpn.pm:195
+#, c-format
+msgid "Size of cipher key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:206
+#, fuzzy, c-format
+msgid "Get from server"
+msgstr "Telnet vericisi"
+
+#: ../lib/network/vpn/openvpn.pm:216
+#, fuzzy, c-format
+msgid "Gateway port"
+msgstr "Şəbəkə Keçidi"
+
+#: ../lib/network/vpn/openvpn.pm:227 ../tools/drakgw:176
+#, fuzzy, c-format
+msgid "Local IP address"
+msgstr "IP ünvanı"
+
+#: ../lib/network/vpn/openvpn.pm:232
+#, fuzzy, c-format
+msgid "Remote IP address"
+msgstr "Şəbəkə keçişi IP ünvanı"
+
+#: ../lib/network/vpn/openvpn.pm:237
+#, fuzzy, c-format
+msgid "Use TCP protocol"
+msgstr "Protokol"
+
+#: ../lib/network/vpn/openvpn.pm:243
+#, c-format
+msgid "Virtual network device type"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:250
+#, c-format
+msgid "Virtual network device number (optional)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:365
+#, c-format
+msgid "Starting connection.."
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:380
+#, c-format
+msgid "Please insert your token"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:9
+#, c-format
+msgid "Cisco VPN Concentrator"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:43
+#, fuzzy, c-format
+msgid "Group name"
+msgstr "Qrup ID'si"
+
+#: ../lib/network/vpn/vpnc.pm:47
+#, c-format
+msgid "Group secret"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:52
+#, c-format
+msgid "Username"
+msgstr "İstifadəçi adı"
+
+#: ../lib/network/vpn/vpnc.pm:61
+#, c-format
+msgid "Use Cisco-UDP encapsulation"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:67
+#, c-format
+msgid "Use specific UDP port"
+msgstr ""
+
+#: ../tools/drakconnect:81
+#, c-format
+msgid "Network configuration (%d adapters)"
+msgstr "Şəbəkə quraşdırılması (%d adapter)"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Gateway:"
+msgstr "Şəbəkə Keçidi:"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Interface:"
+msgstr "Ara üz:"
+
+#: ../tools/drakconnect:97 ../tools/net_monitor:119
+#, c-format
+msgid "Wait please"
+msgstr "Xahiş edirik, gözləyin"
+
+#: ../tools/drakconnect:113 ../tools/drakinvictus:105
+#, c-format
+msgid "Interface"
+msgstr "Ara üz"
+
+#: ../tools/drakconnect:113
+#, c-format
+msgid "State"
+msgstr "Vəziyyət"
+
+#: ../tools/drakconnect:130
+#, c-format
+msgid "Hostname: "
+msgstr "Ev sahibi adı: "
+
+#: ../tools/drakconnect:132
+#, c-format
+msgid "Configure hostname..."
+msgstr "Qovşaq adını quraşdır..."
+
+#: ../tools/drakconnect:146 ../tools/drakconnect:850
+#, c-format
+msgid "LAN configuration"
+msgstr "Yerli Şəbəkə (lAN) quraşdırılması"
+
+#: ../tools/drakconnect:151
+#, c-format
+msgid "Configure Local Area Network..."
+msgstr "Yerli Şəbəkəni Quraşdır..."
+
+#: ../tools/drakconnect:157 ../tools/drakconnect:240 ../tools/draknfs:181
+#, c-format
+msgid "Help"
+msgstr "Yardım"
+
+#: ../tools/drakconnect:159 ../tools/drakconnect:241 ../tools/drakconnect:245
+#: ../tools/drakinvictus:140
+#, c-format
+msgid "Apply"
+msgstr "Tədbiq Et"
+
+#: ../tools/drakconnect:161 ../tools/drakconnect:942 ../tools/drakconnect:1033
+#: ../tools/draknetprofile:106 ../tools/net_monitor:341
+#, c-format
+msgid "Cancel"
+msgstr "Ləğv Et"
+
+#: ../tools/drakconnect:162 ../tools/drakconnect:857 ../tools/drakconnect:944
+#: ../tools/drakconnect:1034 ../tools/draknetprofile:108
+#: ../tools/net_monitor:342
+#, c-format
+msgid "Ok"
+msgstr "Oldu"
+
+#: ../tools/drakconnect:164 ../tools/drakconnect:636 ../tools/drakgw:359
+#: ../tools/drakroam:251 ../tools/drakroam:289 ../tools/draksambashare:208
+#, c-format
+msgid "Please wait"
+msgstr "Xahiş edirik, gözləyin"
+
+#: ../tools/drakconnect:166 ../tools/drakconnect:638
+#, c-format
+msgid "Please Wait... Applying the configuration"
+msgstr "Xahiş edirik, gözləyin... Qurğular tətbiq edilir"
+
+#: ../tools/drakconnect:192
+#, c-format
+msgid "Manage connections"
+msgstr "Bağlantıları idarə et"
+
+#: ../tools/drakconnect:219 ../tools/drakroam:302
+#, c-format
+msgid "Device: "
+msgstr "Avadanlıq: "
+
+#: ../tools/drakconnect:302
+#, fuzzy, c-format
+msgid "IP configuration"
+msgstr "CUPS quraşdırılması"
+
+#: ../tools/drakconnect:337
+#, c-format
+msgid "DNS servers"
+msgstr "DNS vericiləri"
+
+#: ../tools/drakconnect:343
+#, c-format
+msgid "Search Domain"
+msgstr "Axtarış Sahəsi"
+
+#: ../tools/drakconnect:351 ../tools/drakvpn-old:837
+#, c-format
+msgid "none"
+msgstr "heç biri"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "static"
+msgstr "statik"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "DHCP"
+msgstr "DHCP"
+
+#: ../tools/drakconnect:434
+#, c-format
+msgid "Start at boot"
+msgstr "Açılışda başlat"
+
+#: ../tools/drakconnect:516
+#, c-format
+msgid "Flow control"
+msgstr "Flow idarəsi"
+
+#: ../tools/drakconnect:517
+#, c-format
+msgid "Line termination"
+msgstr "Sətir sonlandırılması"
+
+#: ../tools/drakconnect:528
+#, c-format
+msgid "Modem timeout"
+msgstr "Modem vaxt dolması"
+
+#: ../tools/drakconnect:532
+#, c-format
+msgid "Use lock file"
+msgstr "Qıfıl faylını işlət"
+
+#: ../tools/drakconnect:534
+#, c-format
+msgid "Wait for dialup tone before dialing"
+msgstr "Zəng vurmadan əvvəl ton səsini gözləyin"
+
+#: ../tools/drakconnect:537
+#, c-format
+msgid "Busy wait"
+msgstr "Məşğul gözləməsi"
+
+#: ../tools/drakconnect:542
+#, c-format
+msgid "Modem sound"
+msgstr "Modem səsi"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Enable"
+msgstr "Fəallaşdır"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Disable"
+msgstr "Qeyri-fəallaşdır"
+
+#: ../tools/drakconnect:592
+#, c-format
+msgid "Vendor"
+msgstr "E'malatçı"
+
+#: ../tools/drakconnect:593
+#, c-format
+msgid "Description"
+msgstr "İzahat"
+
+#: ../tools/drakconnect:594
+#, c-format
+msgid "Media class"
+msgstr "Mediya sinifi"
+
+#: ../tools/drakconnect:595
+#, c-format
+msgid "Module name"
+msgstr "Modul adı"
+
+#: ../tools/drakconnect:596
+#, c-format
+msgid "Mac Address"
+msgstr "Mac Ünvanı"
+
+#: ../tools/drakconnect:597
+#, c-format
+msgid "Bus"
+msgstr "Yol"
+
+#: ../tools/drakconnect:598
+#, c-format
+msgid "Location on the bus"
+msgstr "Yol üstündə mövqe"
+
+#: ../tools/drakconnect:685 ../tools/drakconnect:766 ../tools/drakconnect:952
+#, c-format
+msgid "No IP"
+msgstr "IP yoxdur"
+
+#: ../tools/drakconnect:686 ../tools/drakconnect:767
+#, c-format
+msgid "No Mask"
+msgstr "Maskasız"
+
+#: ../tools/drakconnect:705 ../tools/drakgw:307
+#, c-format
+msgid ""
+"No ethernet network adapter has been detected on your system. Please run the "
+"hardware configuration tool."
+msgstr ""
+"Sisteminizdə şəbəkə kartı tapıla bilməyib.Avadanlığı quran vasitəni işə "
+"salın."
+
+#: ../tools/drakconnect:714
+#, c-format
+msgid "Remove a network interface"
+msgstr "Şəbəkə ara üzünü sil"
+
+#: ../tools/drakconnect:718
+#, c-format
+msgid "Select the network interface to remove:"
+msgstr "Silinəcək şəbəkə ara üzünü seç:"
+
+#: ../tools/drakconnect:750
+#, fuzzy, c-format
+msgid ""
+"An error occurred while deleting the \"%s\" network interface:\n"
+"\n"
+"%s"
+msgstr ""
+"Şəbəkənin yenidən başladılması sırasında xəta oldu: \n"
+"\n"
+"%s"
+
+#: ../tools/drakconnect:751
+#, c-format
+msgid ""
+"Congratulations, the \"%s\" network interface has been successfully deleted"
+msgstr "Təbriklər, \"%s\" şəbəkə ara üzü müvəffəqiyyətlə silindi"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "up"
+msgstr "yuxarı"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "down"
+msgstr "aşağı"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Connected"
+msgstr "Bağlandı"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Not connected"
+msgstr "Bağlı deyil"
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Disconnect..."
+msgstr "Bağlantını Kəs..."
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Connect..."
+msgstr "Bağlan..."
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Deactivate now"
+msgstr "İndi qeyri-fəallaşdır"
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Activate now"
+msgstr "İndi fəallaşdır"
+
+#: ../tools/drakconnect:854
+#, c-format
+msgid ""
+"You do not have any configured interface.\n"
+"Configure them first by clicking on 'Configure'"
+msgstr ""
+"Qurulu ara üzünüz yoxdur.\n"
+"Əvvəlcə onları 'Quraşdır'a basaraq qurun"
+
+#: ../tools/drakconnect:868
+#, c-format
+msgid "LAN Configuration"
+msgstr "Yerli Şəbəkə Quraşdırılması"
+
+#: ../tools/drakconnect:880
+#, c-format
+msgid "Adapter %s: %s"
+msgstr "%s Adapteri: %s"
+
+#: ../tools/drakconnect:889
+#, c-format
+msgid "Boot Protocol"
+msgstr "Açılış Protokolu"
+
+#: ../tools/drakconnect:890
+#, c-format
+msgid "Started on boot"
+msgstr "Açılışda başladılır"
+
+#: ../tools/drakconnect:926
+#, fuzzy, c-format
+msgid ""
+"This interface has not been configured yet.\n"
+"Run the \"Add an interface\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"BU ara üz hələlik quraşdırılmayıb.\n"
+"Ana pəncərədə quraşdırma sehirbazını işə salın"
+
+#: ../tools/drakconnect:974
+#, c-format
+msgid "Internet connection configuration"
+msgstr "İnternet bağlantısının quraşdırılması"
+
+#: ../tools/drakconnect:980 ../tools/net_applet:68
+#, fuzzy, c-format
+msgid ""
+"You do not have any configured Internet connection.\n"
+"Run the \"%s\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"BU ara üz hələlik quraşdırılmayıb.\n"
+"Ana pəncərədə quraşdırma sehirbazını işə salın"
+
+#. -PO: here "Add Connection" should be translated the same was as in control-center
+#: ../tools/drakconnect:981 ../tools/net_applet:69
+#, fuzzy, c-format
+msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)"
+msgstr "Şəbəkə ara üzünü sil"
+
+#: ../tools/drakconnect:995
+#, c-format
+msgid "Host name (optional)"
+msgstr "Qovşaq adı (arzuya görə)"
+
+#: ../tools/drakconnect:998
+#, fuzzy, c-format
+msgid "Third DNS server (optional)"
+msgstr "Birinci DNS Vericisi (arzuya görə)"
+
+#: ../tools/drakconnect:1020
+#, c-format
+msgid "Internet Connection Configuration"
+msgstr "İnternet Bağlantısı Quraşdırılması"
+
+#: ../tools/drakconnect:1021
+#, c-format
+msgid "Internet access"
+msgstr "İnternet yetişməsi"
+
+#: ../tools/drakconnect:1023 ../tools/net_monitor:98
+#, c-format
+msgid "Connection type: "
+msgstr "Bağlantı növü:"
+
+#: ../tools/drakconnect:1026
+#, c-format
+msgid "Status:"
+msgstr "Vəziyyət:"
+
+#: ../tools/drakconnect:1031
+#, c-format
+msgid "Parameters"
+msgstr "Parametrlər"
+
+#: ../tools/drakgw:71
+#, c-format
+msgid "Internet Connection Sharing"
+msgstr "İnternet Bağlantısı Bölüşdürülməsi"
+
+#: ../tools/drakgw:75
+#, c-format
+msgid ""
+"You are about to configure your computer to share its Internet connection.\n"
+"With that feature, other computers on your local network will be able to use "
+"this computer's Internet connection.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using drakconnect "
+"before going any further.\n"
+"\n"
+"Note: you need a dedicated Network Adapter to set up a Local Area Network "
+"(LAN)."
+msgstr ""
+"Kompüterınızi İnternet bağlantısını bölüşdürmək üçün quraşdırırsınız.\n"
+"Bu seçimlələ yerli şəbəkənizdəki başqa kompüterlər sizin İnternet "
+"bağlantınızdan faydalana biləcək.\n"
+"\n"
+"İrəli getmədən əvvəl drakconnect işlədərək Şəbəkə/İnternet bağlantınızı "
+"quraşdırdığınızdan əmin olun.\n"
+"\n"
+"Qeyd: Yerli Şəbəkə (LAN) qurmaq üçün uyğun Şəbəkə Adapterinə ehtiyacınız var."
+
+#: ../tools/drakgw:91
+#, c-format
+msgid ""
+"The setup of Internet Connection Sharing has already been done.\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"İnternet Bağlantısı Bölüşdürülməsi qurulması artıq bitdi.\n"
+"Və artıq fəallaşdırılmışdır.\n"
+"\n"
+"Nə etmək istəyirsiniz?"
+
+#: ../tools/drakgw:95
+#, c-format
+msgid ""
+"The setup of Internet connection sharing has already been done.\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"İnternet Bağlantısı Bölüşdürülməsi quraşdırılması onsuzda edilib.\n"
+"Hazırda qeyri-fəaldır.\n"
+"\n"
+"Nə etmək istəyirsiniz?"
+
+#: ../tools/drakgw:101
+#, c-format
+msgid "Reconfigure"
+msgstr "Yenidən Qur"
+
+#: ../tools/drakgw:122
+#, c-format
+msgid "Please select the network interface directly connected to the internet."
+msgstr ""
+
+#: ../tools/drakgw:141
+#, c-format
+msgid ""
+"There is only one configured network adapter on your system:\n"
+"\n"
+"%s\n"
+"\n"
+"I am about to setup your Local Area Network with that adapter."
+msgstr ""
+"Sistemnizdə bir dənə qurulmuş şəbəkə adapteri var:\n"
+"\n"
+"%s\n"
+"\n"
+"Yerli Şəbəkə adapterinizi qurmaq üzərəyəm?"
+
+#: ../tools/drakgw:152
+#, c-format
+msgid ""
+"Please choose what network adapter will be connected to your Local Area "
+"Network."
+msgstr ""
+"Xahiş edirik, Yerli Sahə Şəbəkənizə (LAN) bağlanacaq şəbəkə avadanlığını "
+"seçin."
+
+#: ../tools/drakgw:173
+#, fuzzy, c-format
+msgid "Local Area Network settings"
+msgstr "Yerli Şəbəkə ünvanı"
+
+#: ../tools/drakgw:178
+#, c-format
+msgid "The internal domain name"
+msgstr "Daxili domen adı"
+
+#: ../tools/drakgw:184
+#, c-format
+msgid "Potential LAN address conflict found in current config of %s!\n"
+msgstr "Hazırkı %s quğusunda bir LAN ünvan toqquşması tapıldı!\n"
+
+#: ../tools/drakgw:200
+#, fuzzy, c-format
+msgid "Domain Name Server (DNS) configuration"
+msgstr "Terminal Server Quraşdırılması"
+
+#: ../tools/drakgw:204
+#, c-format
+msgid "Use this gateway as domain name server"
+msgstr ""
+
+#: ../tools/drakgw:205
+#, c-format
+msgid "The DNS Server IP"
+msgstr "DNS Verici IP'si"
+
+#: ../tools/drakgw:232
+#, fuzzy, c-format
+msgid ""
+"DHCP Server Configuration.\n"
+"\n"
+"Here you can select different options for the DHCP server configuration.\n"
+"If you do not know the meaning of an option, simply leave it as it is."
+msgstr ""
+"DHCP Verici Quraşdırılması.\n"
+"\n"
+"Burada, DHCP verici quraşdırılması üçün fərqli seçimləri seçə bilərsiniz.\n"
+"Əgər bir seçimin mə'nasını bilmirsinizsə, onu olduğu kimi saxlayın.\n"
+"\n"
+
+#: ../tools/drakgw:239
+#, fuzzy, c-format
+msgid "Use automatic configuration (DHCP)"
+msgstr "Avtomatik yenidən quraşdırma"
+
+#: ../tools/drakgw:240
+#, c-format
+msgid "The DHCP start range"
+msgstr "The DHCP başlama aralığı"
+
+#: ../tools/drakgw:241
+#, c-format
+msgid "The DHCP end range"
+msgstr "DHCP son silsiləsi"
+
+#: ../tools/drakgw:242
+#, c-format
+msgid "The default lease (in seconds)"
+msgstr "Əsas icarə (saniyə olaraq)"
+
+#: ../tools/drakgw:243
+#, c-format
+msgid "The maximum lease (in seconds)"
+msgstr "Maksimal icarə (saniyə olaraq)"
+
+#: ../tools/drakgw:266
+#, c-format
+msgid "Proxy caching server (SQUID)"
+msgstr ""
+
+#: ../tools/drakgw:270
+#, c-format
+msgid "Use this gateway as proxy caching server"
+msgstr ""
+
+#: ../tools/drakgw:271
+#, c-format
+msgid "Admin mail"
+msgstr ""
+
+#: ../tools/drakgw:272
+#, fuzzy, c-format
+msgid "Visible hostname"
+msgstr "Uzaq qovşaq adı"
+
+#: ../tools/drakgw:273
+#, fuzzy, c-format
+msgid "Proxy port"
+msgstr "Xassə"
+
+#: ../tools/drakgw:274
+#, fuzzy, c-format
+msgid "Cache size (MB)"
+msgstr "Ön yaddaş böyüklüyü"
+
+#: ../tools/drakgw:296
+#, fuzzy, c-format
+msgid "Broadcast printer information"
+msgstr "Sabit disk mə'lumatı"
+
+#: ../tools/drakgw:313
+#, c-format
+msgid "Internet Connection Sharing is now enabled."
+msgstr "İnternet Bağlantısı Bölüşdürülməsi indi açıldı"
+
+#: ../tools/drakgw:319
+#, c-format
+msgid "Internet Connection Sharing is now disabled."
+msgstr "İnternet Bağlantısı Bölüşdürülməsi indi bağlandı"
+
+#: ../tools/drakgw:325
+#, fuzzy, c-format
+msgid ""
+"Everything has been configured.\n"
+"You may now share Internet connection with other computers on your Local "
+"Area Network, using automatic network configuration (DHCP) and\n"
+" a Transparent Proxy Cache server (SQUID)."
+msgstr ""
+"Hər şey quruldu.\n"
+"İndi isə İnternet bağlantınızı yerli şəbəkədəkı başqa kompüterlər ilə "
+"bölüşdürə bilərsiniz, bunun üçün isə avtomatik şəbəkə quraşdırılması (DHCP) "
+"işlədilir."
+
+#: ../tools/drakgw:359
+#, c-format
+msgid "Disabling servers..."
+msgstr "Vericilər bağlanır..."
+
+#: ../tools/drakgw:373
+#, c-format
+msgid "Firewalling configuration detected!"
+msgstr "Atəş divarı quruluşu tapıldı!"
+
+#: ../tools/drakgw:374
+#, c-format
+msgid ""
+"Warning! An existing firewalling configuration has been detected. You may "
+"need some manual fixes after installation."
+msgstr ""
+"Diqqət! Var olan Firewall qurğusu tapıldı. Yükləmədən sonra bir az əl "
+"gəzdirə bilərsiniz."
+
+#: ../tools/drakgw:379
+#, c-format
+msgid "Configuring..."
+msgstr "Quraşdırılır..."
+
+#: ../tools/drakgw:380
+#, c-format
+msgid "Configuring firewall..."
+msgstr ""
+
+#: ../tools/drakhosts:100
+#, c-format
+msgid "Please add an host to be able to modify it."
+msgstr ""
+
+#: ../tools/drakhosts:110
+#, fuzzy, c-format
+msgid "Please modify information"
+msgstr "Ətraflı mə'lumatı"
+
+#: ../tools/drakhosts:111
+#, fuzzy, c-format
+msgid "Please delete information"
+msgstr "Ətraflı mə'lumatı"
+
+#: ../tools/drakhosts:112
+#, fuzzy, c-format
+msgid "Please add information"
+msgstr "Ətraflı mə'lumatı"
+
+#: ../tools/drakhosts:116
+#, c-format
+msgid "IP address:"
+msgstr "IP Ünvanı:"
+
+#: ../tools/drakhosts:117
+#, c-format
+msgid "Host name:"
+msgstr "Kompüter adı:"
+
+#: ../tools/drakhosts:118
+#, fuzzy, c-format
+msgid "Host Aliases:"
+msgstr "Ev sahibi adı"
+
+#: ../tools/drakhosts:122 ../tools/drakhosts:128 ../tools/draksambashare:209
+#: ../tools/draksambashare:230 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Error!"
+msgstr "Xəta!"
+
+#: ../tools/drakhosts:122
+#, fuzzy, c-format
+msgid "Please enter a valid IP address."
+msgstr "Şəbəkə keçişi IP ünvanı"
+
+#: ../tools/drakhosts:128
+#, fuzzy, c-format
+msgid "Same IP is already in %s file."
+msgstr "%s onsuzda istifadədədir\n"
+
+#: ../tools/drakhosts:196
+#, fuzzy, c-format
+msgid "Host Aliases"
+msgstr "Ev sahibi adı"
+
+#: ../tools/drakhosts:206 ../tools/drakhosts:236
+#, fuzzy, c-format
+msgid "Manage hosts definitions"
+msgstr "Bağlantıları idarə et"
+
+#: ../tools/drakhosts:222 ../tools/drakhosts:249
+#, c-format
+msgid "Modify entry"
+msgstr ""
+
+#: ../tools/drakhosts:241 ../tools/draknfs:563 ../tools/draksambashare:1102
+#: ../tools/draksambashare:1133 ../tools/draksambashare:1164
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Add"
+msgstr "Əlavə et"
+
+#: ../tools/drakhosts:242
+#, fuzzy, c-format
+msgid "Add entry"
+msgstr "Çapçı Əlavə Et"
+
+#: ../tools/drakhosts:245
+#, c-format
+msgid "Failed to add host."
+msgstr ""
+
+#: ../tools/drakhosts:248 ../tools/draknfs:570 ../tools/draksambashare:1059
+#: ../tools/draksambashare:1104 ../tools/draksambashare:1135
+#: ../tools/draksambashare:1172
+#, c-format
+msgid "Modify"
+msgstr "Təkmilləşdir"
+
+#: ../tools/drakhosts:252
+#, c-format
+msgid "Failed to Modify host."
+msgstr ""
+
+#: ../tools/drakhosts:255 ../tools/drakids:87 ../tools/drakids:96
+#: ../tools/draknfs:577 ../tools/draksambashare:1060
+#: ../tools/draksambashare:1112 ../tools/draksambashare:1143
+#: ../tools/draksambashare:1180 ../tools/drakvpn-old:253
+#: ../tools/drakvpn-old:391
+#, c-format
+msgid "Remove"
+msgstr "Sil"
+
+#: ../tools/drakhosts:259
+#, c-format
+msgid "Failed to remove host."
+msgstr ""
+
+#: ../tools/drakhosts:262 ../tools/drakinvictus:141
+#: ../tools/draknetprofile:147 ../tools/drakroam:309 ../tools/net_applet:138
+#, c-format
+msgid "Quit"
+msgstr "Çıx"
+
+#: ../tools/drakids:28
+#, fuzzy, c-format
+msgid "Allowed addresses"
+msgstr "Bütün istifadəçilərə icazə ver"
+
+#: ../tools/drakids:65 ../tools/drakids:181 ../tools/drakids:190
+#: ../tools/drakids:215 ../tools/drakids:224 ../tools/drakids:234
+#: ../tools/drakids:326 ../tools/net_applet:238 ../tools/net_applet:514
+#, fuzzy, c-format
+msgid "Unable to contact daemon"
+msgstr "%s əksi ilə rabitə qurula bilmir"
+
+#: ../tools/drakids:74 ../tools/drakids:102
+#, c-format
+msgid "Log"
+msgstr "Qeyd"
+
+#: ../tools/drakids:78 ../tools/drakids:97 ../tools/net_applet:659
+#, fuzzy, c-format
+msgid "Allow"
+msgstr "Hamısı"
+
+#: ../tools/drakids:79 ../tools/drakids:88 ../tools/net_applet:660
+#, c-format
+msgid "Block"
+msgstr ""
+
+#: ../tools/drakids:80 ../tools/drakids:89 ../tools/drakids:98
+#: ../tools/drakids:109 ../tools/drakids:122 ../tools/drakids:130
+#: ../tools/draknfs:186 ../tools/net_monitor:120
+#, c-format
+msgid "Close"
+msgstr "Bağla"
+
+#: ../tools/drakids:83
+#, fuzzy, c-format
+msgid "Allowed services"
+msgstr "Bütün istifadəçilərə icazə ver"
+
+#: ../tools/drakids:92
+#, fuzzy, c-format
+msgid "Blocked services"
+msgstr "İstifadəçi fayllarının ehtiyat nüsxəsini çıxart"
+
+#: ../tools/drakids:106
+#, fuzzy, c-format
+msgid "Clear logs"
+msgstr "Hamısını təmizlə"
+
+#: ../tools/drakids:107 ../tools/drakids:112 ../tools/net_applet:602
+#, c-format
+msgid "Blacklist"
+msgstr ""
+
+#: ../tools/drakids:108 ../tools/drakids:125 ../tools/net_applet:607
+#, c-format
+msgid "Whitelist"
+msgstr ""
+
+#: ../tools/drakids:116
+#, fuzzy, c-format
+msgid "Remove from blacklist"
+msgstr "LVMdən ayır"
+
+#: ../tools/drakids:117
+#, c-format
+msgid "Move to whitelist"
+msgstr ""
+
+#: ../tools/drakids:129
+#, fuzzy, c-format
+msgid "Remove from whitelist"
+msgstr "LVMdən ayır"
+
+#: ../tools/drakids:247
+#, c-format
+msgid "Date"
+msgstr "Tarix"
+
+#: ../tools/drakids:248
+#, fuzzy, c-format
+msgid "Attacker"
+msgstr "Təfsilatsız"
+
+#: ../tools/drakids:249
+#, fuzzy, c-format
+msgid "Attack type"
+msgstr "Çatma şəkli: %s\n"
+
+#: ../tools/drakids:250 ../tools/drakids:283
+#, c-format
+msgid "Service"
+msgstr "Xidmət"
+
+#: ../tools/drakids:251
+#, c-format
+msgid "Network interface"
+msgstr "Şəbəkə ara üzü"
+
+#: ../tools/drakids:282
+#, c-format
+msgid "Application"
+msgstr "Proqram"
+
+#: ../tools/drakids:284
+#, c-format
+msgid "Status"
+msgstr "Vəziyyət"
+
+#: ../tools/drakids:286
+#, fuzzy, c-format
+msgid "Allowed"
+msgstr "Hamısı"
+
+#: ../tools/drakids:287
+#, c-format
+msgid "Blocked"
+msgstr ""
+
+#: ../tools/drakinvictus:36
+#, c-format
+msgid "Invictus Firewall"
+msgstr ""
+
+#: ../tools/drakinvictus:53
+#, fuzzy, c-format
+msgid "Start as master"
+msgstr "Açılışda başladılır"
+
+#: ../tools/drakinvictus:72
+#, fuzzy, c-format
+msgid "A password is required."
+msgstr "Şifrə lazımdır"
+
+#: ../tools/drakinvictus:100
+#, c-format
+msgid ""
+"This tool allows to set up network interfaces failover and firewall "
+"replication."
+msgstr ""
+
+#: ../tools/drakinvictus:102
+#, c-format
+msgid "Network redundancy (leave empty if interface is not used)"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Real address"
+msgstr "Mac Ünvanı"
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual shared address"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual ID"
+msgstr ""
+
+#: ../tools/drakinvictus:114
+#, fuzzy, c-format
+msgid "Firewall replication"
+msgstr "Son həlledilirlik"
+
+#: ../tools/drakinvictus:116
+#, c-format
+msgid "Synchronize firewall conntrack tables"
+msgstr ""
+
+#: ../tools/drakinvictus:123
+#, fuzzy, c-format
+msgid "Synchronization network interface"
+msgstr "Sinxronlaşdırma vasitəsi"
+
+#: ../tools/drakinvictus:132
+#, fuzzy, c-format
+msgid "Connection mark bit"
+msgstr "Bağlantı"
+
+#: ../tools/draknetprofile:36
+#, fuzzy, c-format
+msgid "Network profiles"
+msgstr "Şəbəkə Seçimləri"
+
+#: ../tools/draknetprofile:67
+#, fuzzy, c-format
+msgid "Profile"
+msgstr "Profiller"
+
+#: ../tools/draknetprofile:99
+#, c-format
+msgid "New profile..."
+msgstr "Yeni profil..."
+
+#: ../tools/draknetprofile:102
+#, c-format
+msgid ""
+"Name of the profile to create (the new profile is created as a copy of the "
+"current one):"
+msgstr ""
+"Yaradılacaq profilin adı (yeni profil hazırkının bir nüsxəsi olaraq "
+"yaradılacaqdır):"
+
+#: ../tools/draknetprofile:113
+#, c-format
+msgid "The \"%s\" profile already exists!"
+msgstr "\"%s\" profili onsuz da mövcuddur!"
+
+#: ../tools/draknetprofile:129
+#, c-format
+msgid "You can not delete the default profile"
+msgstr ""
+
+#: ../tools/draknetprofile:131
+#, c-format
+msgid "You can not delete the current profile"
+msgstr "Hazırkı profili silə bilməzsiniz"
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid ""
+"This tool allows to activate an existing network profile, and to manage "
+"(clone, delete) profiles."
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid "To modify a profile, you have to activate it first."
+msgstr ""
+
+#: ../tools/draknetprofile:144
+#, c-format
+msgid "Activate"
+msgstr "İşə Sal"
+
+#: ../tools/draknetprofile:145
+#, fuzzy, c-format
+msgid "Clone"
+msgstr "Bağlan"
+
+#: ../tools/draknetprofile:146
+#, c-format
+msgid "Delete"
+msgstr "Sil"
+
+#: ../tools/draknfs:41
+#, c-format
+msgid "map root user as anonymous"
+msgstr ""
+
+#: ../tools/draknfs:42
+#, c-format
+msgid "map all users to anonymous user"
+msgstr ""
+
+#: ../tools/draknfs:43
+#, c-format
+msgid "No user UID mapping"
+msgstr ""
+
+#: ../tools/draknfs:44
+#, c-format
+msgid "allow real remote root access"
+msgstr ""
+
+#: ../tools/draknfs:58 ../tools/draknfs:59 ../tools/draknfs:60
+#: ../tools/draksambashare:161 ../tools/draksambashare:162
+#: ../tools/draksambashare:163
+#, c-format
+msgid "/_File"
+msgstr "/_Fayl"
+
+#: ../tools/draknfs:59 ../tools/draksambashare:162
+#, c-format
+msgid "/_Write conf"
+msgstr ""
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "/_Quit"
+msgstr "/Çı_x"
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "<control>Q"
+msgstr "<control>Q"
+
+#: ../tools/draknfs:63 ../tools/draknfs:64 ../tools/draknfs:65
+#, fuzzy, c-format
+msgid "/_NFS Server"
+msgstr "DNS vericiləri"
+
+#: ../tools/draknfs:64 ../tools/draksambashare:166
+#, c-format
+msgid "/_Restart"
+msgstr ""
+
+#: ../tools/draknfs:65 ../tools/draksambashare:167
+#, c-format
+msgid "/R_eload"
+msgstr ""
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "NFS server"
+msgstr "NFS vericisi"
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "Restarting/Reloading NFS server..."
+msgstr ""
+
+#: ../tools/draknfs:85
+#, c-format
+msgid "Error Restarting/Reloading NFS server"
+msgstr ""
+
+#: ../tools/draknfs:101 ../tools/draksambashare:225
+#, fuzzy, c-format
+msgid "Directory Selection"
+msgstr "İstiqamət"
+
+#: ../tools/draknfs:106 ../tools/draksambashare:230
+#, c-format
+msgid "Should be a directory."
+msgstr ""
+
+#: ../tools/draknfs:137
+#, c-format
+msgid ""
+"<span weight=\"bold\">NFS clients</span> may be specified in a number of "
+"ways:\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">single host:</span> a host either by an "
+"abbreviated name recognized be the resolver, fully qualified domain name, or "
+"an IP address\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">netgroups:</span> NIS netgroups may be given "
+"as @group.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">wildcards:</span> machine names may contain "
+"the wildcard characters * and ?. For instance: *.cs.foo.edu matches all "
+"hosts in the domain cs.foo.edu.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">IP networks:</span> you can also export "
+"directories to all hosts on an IP (sub-)network simultaneously. for example, "
+"either `/255.255.252.0' or `/22' appended to the network base address "
+"result.\n"
+msgstr ""
+
+#: ../tools/draknfs:152
+#, c-format
+msgid ""
+"<span weight=\"bold\">User ID options</span>\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map root user as anonymous:</span> map "
+"requests from uid/gid 0 to the anonymous uid/gid (root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">allow real remote root access:</span> turn "
+"off root squashing. This option is mainly useful for diskless clients "
+"(no_root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map all users to anonymous user:</span> map "
+"all uids and gids to the anonymous user (all_squash). Useful for NFS-"
+"exported public FTP directories, news spool directories, etc. The opposite "
+"option is no user UID mapping (no_all_squash), which is the default "
+"setting.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">anonuid and anongid:</span> explicitly set "
+"the uid and gid of the anonymous account.\n"
+msgstr ""
+
+#: ../tools/draknfs:168
+#, c-format
+msgid "Synchronous access:"
+msgstr ""
+
+#: ../tools/draknfs:169
+#, fuzzy, c-format
+msgid "Secured Connection:"
+msgstr "İnternet bağlantısı"
+
+#: ../tools/draknfs:170
+#, c-format
+msgid "Read-Only share:"
+msgstr ""
+
+#: ../tools/draknfs:172
+#, c-format
+msgid "Advanced Options"
+msgstr ""
+
+#: ../tools/draknfs:173
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> this option requires that requests "
+"originate on an internet port less than IPPORT_RESERVED (1024). This option "
+"is on by default."
+msgstr ""
+
+#: ../tools/draknfs:174
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> allow either only read or both "
+"read and write requests on this NFS volume. The default is to disallow any "
+"request which changes the filesystem. This can also be made explicit by "
+"using this option."
+msgstr ""
+
+#: ../tools/draknfs:175
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> disallows the NFS server to "
+"violate the NFS protocol and to reply to requests before any changes made by "
+"these requests have been committed to stable storage (e.g. disc drive)."
+msgstr ""
+
+#: ../tools/draknfs:180 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Information"
+msgstr "Mə'lumat"
+
+#: ../tools/draknfs:260
+#, c-format
+msgid "Directory"
+msgstr "Qovluq"
+
+#: ../tools/draknfs:264
+#, c-format
+msgid "Draknfs entry"
+msgstr ""
+
+#: ../tools/draknfs:273
+#, c-format
+msgid "Please add an NFS share to be able to modify it."
+msgstr ""
+
+#: ../tools/draknfs:357
+#, c-format
+msgid "NFS directory"
+msgstr ""
+
+#: ../tools/draknfs:358 ../tools/draksambashare:361
+#: ../tools/draksambashare:570 ../tools/draksambashare:749
+#, c-format
+msgid "Directory:"
+msgstr "Qovluq:"
+
+#: ../tools/draknfs:359
+#, fuzzy, c-format
+msgid "Host access"
+msgstr "Ev sahibi adı"
+
+#: ../tools/draknfs:360
+#, c-format
+msgid "Access:"
+msgstr "İcazə:"
+
+#: ../tools/draknfs:361
+#, c-format
+msgid "User ID Mapping"
+msgstr ""
+
+#: ../tools/draknfs:362
+#, c-format
+msgid "User ID:"
+msgstr ""
+
+#: ../tools/draknfs:363
+#, c-format
+msgid "Anonymous user ID:"
+msgstr ""
+
+#: ../tools/draknfs:364
+#, c-format
+msgid "Anonymous Group ID:"
+msgstr ""
+
+#: ../tools/draknfs:400
+#, fuzzy, c-format
+msgid "Please specify a directory to share."
+msgstr "Xahiş edirik, icmal mətnini daxil edin."
+
+#: ../tools/draknfs:402
+#, c-format
+msgid "Can't create this directory."
+msgstr ""
+
+#: ../tools/draknfs:405
+#, c-format
+msgid "You must specify hosts access."
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Share Directory"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Hosts Wildcard"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "General Options"
+msgstr "Ümumi Qurğular"
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Custom Options"
+msgstr ""
+
+#: ../tools/draknfs:497 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Please enter a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:504
+#, c-format
+msgid "Please use the modify button to set right access."
+msgstr ""
+
+#: ../tools/draknfs:519
+#, c-format
+msgid "Manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:558
+#, c-format
+msgid "DrakNFS manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:567
+#, c-format
+msgid "Failed to add NFS share."
+msgstr ""
+
+#: ../tools/draknfs:574
+#, c-format
+msgid "Failed to Modify NFS share."
+msgstr ""
+
+#: ../tools/draknfs:581
+#, c-format
+msgid "Failed to remove an NFS share."
+msgstr ""
+
+#: ../tools/drakproxy:36
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr ""
+"Dəyişikliklərin fəal olması üçün hesabdan çıxış edib, yenidən girməlisiniz."
+
+#: ../tools/drakroam:61
+#, c-format
+msgid "No device found"
+msgstr "Heç bir avadanlıq tapıla bilmədi"
+
+#: ../tools/drakroam:86 ../tools/drakroam:217
+#, fuzzy, c-format
+msgid "Please enter settings for network"
+msgstr "Ətraflı mə'lumatı"
+
+#: ../tools/drakroam:115
+#, c-format
+msgid "SSID"
+msgstr ""
+
+#: ../tools/drakroam:116
+#, c-format
+msgid "Signal strength"
+msgstr ""
+
+#: ../tools/drakroam:118
+#, c-format
+msgid "Encryption"
+msgstr "Enkripsiya"
+
+#: ../tools/drakroam:131
+#, c-format
+msgid "Hostname changed to \"%s\""
+msgstr ""
+
+#: ../tools/drakroam:251
+#, fuzzy, c-format
+msgid "Connecting..."
+msgstr "Bağlan..."
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Disconnect"
+msgstr "Bağlantını kəs"
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Connect"
+msgstr "Bağlan"
+
+#: ../tools/drakroam:289
+#, fuzzy, c-format
+msgid "Disconnecting..."
+msgstr "Bağlantını Kəs..."
+
+#: ../tools/drakroam:306
+#, c-format
+msgid "Configure"
+msgstr "Qur"
+
+#: ../tools/drakroam:308
+#, c-format
+msgid "Refresh"
+msgstr "Yenilə"
+
+#: ../tools/draksambashare:63
+#, c-format
+msgid "User name"
+msgstr "İstifadəçi adı"
+
+#: ../tools/draksambashare:70
+#, c-format
+msgid "Share name"
+msgstr "Paylaşdırma adı"
+
+#: ../tools/draksambashare:71
+#, fuzzy, c-format
+msgid "Share directory"
+msgstr "Belə cərgə yoxdur!"
+
+#: ../tools/draksambashare:72 ../tools/draksambashare:105
+#, c-format
+msgid "Comment"
+msgstr "Şərh"
+
+#: ../tools/draksambashare:73 ../tools/draksambashare:106
+#, fuzzy, c-format
+msgid "Browseable"
+msgstr "Gəz"
+
+#: ../tools/draksambashare:74
+#, c-format
+msgid "Public"
+msgstr "İctimai"
+
+#: ../tools/draksambashare:75 ../tools/draksambashare:111
+#, fuzzy, c-format
+msgid "Writable"
+msgstr "Yaz"
+
+#: ../tools/draksambashare:76 ../tools/draksambashare:152
+#, fuzzy, c-format
+msgid "Create mask"
+msgstr "Yarat"
+
+#: ../tools/draksambashare:77 ../tools/draksambashare:153
+#, fuzzy, c-format
+msgid "Directory mask"
+msgstr "Bütün ehtiyat nüsxələri geri yüklə"
+
+#: ../tools/draksambashare:78
+#, fuzzy, c-format
+msgid "Read list"
+msgstr "Oxu"
+
+#: ../tools/draksambashare:79 ../tools/draksambashare:112
+#: ../tools/draksambashare:584
+#, fuzzy, c-format
+msgid "Write list"
+msgstr "Yaz"
+
+#: ../tools/draksambashare:80 ../tools/draksambashare:144
+#, fuzzy, c-format
+msgid "Admin users"
+msgstr "İstifadəçini əlavə et"
+
+#: ../tools/draksambashare:81 ../tools/draksambashare:145
+#, fuzzy, c-format
+msgid "Valid users"
+msgstr "İstifadəçini əlavə et"
+
+#: ../tools/draksambashare:82
+#, fuzzy, c-format
+msgid "Inherit Permissions"
+msgstr "Səlahiyyətlər"
+
+#: ../tools/draksambashare:83 ../tools/draksambashare:146
+#, fuzzy, c-format
+msgid "Hide dot files"
+msgstr "Faylları gizlət"
+
+#: ../tools/draksambashare:84 ../tools/draksambashare:147
+#, c-format
+msgid "Hide files"
+msgstr "Faylları gizlət"
+
+#: ../tools/draksambashare:85 ../tools/draksambashare:151
+#, fuzzy, c-format
+msgid "Preserve case"
+msgstr "Qurğular"
+
+#: ../tools/draksambashare:86
+#, fuzzy, c-format
+msgid "Force create mode"
+msgstr "Çapçınızın modeli"
+
+#: ../tools/draksambashare:87
+#, fuzzy, c-format
+msgid "Force group"
+msgstr "PFS qrupu"
+
+#: ../tools/draksambashare:88 ../tools/draksambashare:150
+#, fuzzy, c-format
+msgid "Default case"
+msgstr "Əsas istifadəçi"
+
+#: ../tools/draksambashare:103
+#, c-format
+msgid "Printer name"
+msgstr "Çapçı adı"
+
+#: ../tools/draksambashare:104
+#, c-format
+msgid "Path"
+msgstr "Cığır"
+
+#: ../tools/draksambashare:107 ../tools/draksambashare:576
+#, c-format
+msgid "Printable"
+msgstr "Çap edilə bilən"
+
+#: ../tools/draksambashare:108
+#, fuzzy, c-format
+msgid "Print Command"
+msgstr "Əmr"
+
+#: ../tools/draksambashare:109
+#, fuzzy, c-format
+msgid "LPQ command"
+msgstr "Əmr"
+
+#: ../tools/draksambashare:110
+#, c-format
+msgid "Guest ok"
+msgstr ""
+
+#: ../tools/draksambashare:113 ../tools/draksambashare:154
+#: ../tools/draksambashare:585
+#, fuzzy, c-format
+msgid "Inherit permissions"
+msgstr "Səlahiyyətlər"
+
+#: ../tools/draksambashare:114
+#, c-format
+msgid "Printing"
+msgstr "Çap"
+
+#: ../tools/draksambashare:115
+#, fuzzy, c-format
+msgid "Create mode"
+msgstr "Kart modeli:"
+
+#: ../tools/draksambashare:116
+#, fuzzy, c-format
+msgid "Use client driver"
+msgstr "Telnet vericisi"
+
+#: ../tools/draksambashare:142
+#, fuzzy, c-format
+msgid "Read List"
+msgstr "Siyahını Sil"
+
+#: ../tools/draksambashare:143
+#, fuzzy, c-format
+msgid "Write List"
+msgstr "Yaz"
+
+#: ../tools/draksambashare:148
+#, fuzzy, c-format
+msgid "Force Group"
+msgstr "Qrup"
+
+#: ../tools/draksambashare:149
+#, c-format
+msgid "Force create group"
+msgstr ""
+
+#: ../tools/draksambashare:165 ../tools/draksambashare:166
+#: ../tools/draksambashare:167
+#, fuzzy, c-format
+msgid "/_Samba Server"
+msgstr "Veb Vericisi"
+
+#: ../tools/draksambashare:169 ../tools/draksambashare:170
+#, c-format
+msgid "/_About"
+msgstr "/_Haqqında"
+
+#: ../tools/draksambashare:169
+#, c-format
+msgid "/_Report Bug"
+msgstr "/_Xəta Raportu Göndər"
+
+#: ../tools/draksambashare:170
+#, c-format
+msgid "/About..."
+msgstr ""
+
+#: ../tools/draksambashare:173
+#, fuzzy, c-format
+msgid "Draksambashare"
+msgstr "Samba vericisi"
+
+#: ../tools/draksambashare:175
+#, c-format
+msgid "Copyright (C) %s by Mandriva"
+msgstr ""
+
+#: ../tools/draksambashare:177
+#, c-format
+msgid "This is a simple tool to easily manage Samba configuration."
+msgstr ""
+
+#: ../tools/draksambashare:179
+#, fuzzy, c-format
+msgid "Mandriva Linux"
+msgstr "Mandriva Onlayn"
+
+#. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+#: ../tools/draksambashare:184
+#, c-format
+msgid "_: Translator(s) name(s) & email(s)\n"
+msgstr "Mətin Əmirov <metin@karegen.com>\n"
+
+#: ../tools/draksambashare:208
+#, c-format
+msgid "Restarting/Reloading Samba server..."
+msgstr ""
+
+#: ../tools/draksambashare:209
+#, c-format
+msgid "Error Restarting/Reloading Samba server"
+msgstr ""
+
+#: ../tools/draksambashare:349 ../tools/draksambashare:549
+#: ../tools/draksambashare:670
+#, c-format
+msgid "Open"
+msgstr "Aç"
+
+#: ../tools/draksambashare:352
+#, fuzzy, c-format
+msgid "DrakSamba add entry"
+msgstr "Samba vericisi"
+
+#: ../tools/draksambashare:356
+#, fuzzy, c-format
+msgid "Add a share"
+msgstr "Samba vericisi"
+
+#: ../tools/draksambashare:359
+#, fuzzy, c-format
+msgid "Name of the share:"
+msgstr "Çapçı adı"
+
+#: ../tools/draksambashare:360 ../tools/draksambashare:569
+#: ../tools/draksambashare:750
+#, c-format
+msgid "Comment:"
+msgstr "Şərh:"
+
+#: ../tools/draksambashare:372
+#, c-format
+msgid ""
+"Share with the same name already exist or share name empty, please choose "
+"another name."
+msgstr ""
+
+#: ../tools/draksambashare:379
+#, c-format
+msgid "Can't create the directory, please enter a correct path."
+msgstr ""
+
+#: ../tools/draksambashare:382 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, fuzzy, c-format
+msgid "Please enter a Comment for this share."
+msgstr "Xahiş edirik, icmal mətnini daxil edin."
+
+#: ../tools/draksambashare:413
+#, c-format
+msgid "pdf-gen - a PDF generator"
+msgstr ""
+
+#: ../tools/draksambashare:414
+#, c-format
+msgid "printers - all printers available"
+msgstr ""
+
+#: ../tools/draksambashare:418
+#, c-format
+msgid "Add Special Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:421
+#, c-format
+msgid ""
+"Goal of this wizard is to easily create a new special printer Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:428
+#, fuzzy, c-format
+msgid "A PDF generator already exists."
+msgstr "\"%s\" profili onsuz da mövcuddur!"
+
+#: ../tools/draksambashare:452
+#, fuzzy, c-format
+msgid "Printers and print$ already exist."
+msgstr "\"%s\" profili onsuz da mövcuddur!"
+
+#: ../tools/draksambashare:502
+#, c-format
+msgid "Congratulations"
+msgstr "Təbriklər"
+
+#: ../tools/draksambashare:503
+#, c-format
+msgid "The wizard successfully added the printer Samba share"
+msgstr ""
+
+#: ../tools/draksambashare:518
+#, c-format
+msgid "Failed to add printers."
+msgstr ""
+
+#: ../tools/draksambashare:533
+#, c-format
+msgid "Please add or select a Samba printer share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:552
+#, c-format
+msgid "DrakSamba Printers entry"
+msgstr ""
+
+#: ../tools/draksambashare:565
+#, c-format
+msgid "Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:568
+#, c-format
+msgid "Printer name:"
+msgstr "Çap Edici Adı:"
+
+#: ../tools/draksambashare:574 ../tools/draksambashare:755
+#, fuzzy, c-format
+msgid "Writable:"
+msgstr "Yaz"
+
+#: ../tools/draksambashare:575 ../tools/draksambashare:756
+#, fuzzy, c-format
+msgid "Browseable:"
+msgstr "Gəz"
+
+#: ../tools/draksambashare:580
+#, c-format
+msgid "Advanced options"
+msgstr "Ətraflı seçimlər"
+
+#: ../tools/draksambashare:582
+#, fuzzy, c-format
+msgid "Printer access"
+msgstr "İnternet yetişməsi"
+
+#: ../tools/draksambashare:586
+#, c-format
+msgid "Guest ok:"
+msgstr ""
+
+#: ../tools/draksambashare:587
+#, fuzzy, c-format
+msgid "Create mode:"
+msgstr "Kart modeli:"
+
+#: ../tools/draksambashare:591
+#, c-format
+msgid "Printer command"
+msgstr ""
+
+#: ../tools/draksambashare:593
+#, c-format
+msgid "Print command:"
+msgstr ""
+
+#: ../tools/draksambashare:594
+#, fuzzy, c-format
+msgid "LPQ command:"
+msgstr "Əmr"
+
+#: ../tools/draksambashare:595
+#, fuzzy, c-format
+msgid "Printing:"
+msgstr "Xəbərdarlıq"
+
+#: ../tools/draksambashare:611
+#, c-format
+msgid "create mode should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:673
+#, c-format
+msgid "DrakSamba entry"
+msgstr ""
+
+#: ../tools/draksambashare:678
+#, c-format
+msgid "Please add or select a Samba share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:701
+#, fuzzy, c-format
+msgid "Samba user access"
+msgstr "Samba vericisi"
+
+#: ../tools/draksambashare:709
+#, fuzzy, c-format
+msgid "Mask options"
+msgstr "Bəsit seçimlər:"
+
+#: ../tools/draksambashare:723
+#, fuzzy, c-format
+msgid "Display options"
+msgstr "Seçimləri müəyyən et"
+
+#: ../tools/draksambashare:745
+#, fuzzy, c-format
+msgid "Samba share directory"
+msgstr "Belə cərgə yoxdur!"
+
+#: ../tools/draksambashare:748
+#, fuzzy, c-format
+msgid "Share name:"
+msgstr "Paylaşdırma adı"
+
+#: ../tools/draksambashare:754
+#, c-format
+msgid "Public:"
+msgstr "Ümumi:"
+
+#: ../tools/draksambashare:778
+#, c-format
+msgid ""
+"Create mask, create mode and directory mask should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:785
+#, c-format
+msgid "Please create this Samba user: %s"
+msgstr ""
+
+#: ../tools/draksambashare:889
+#, c-format
+msgid "Add Samba user"
+msgstr ""
+
+#: ../tools/draksambashare:904
+#, c-format
+msgid "User information"
+msgstr "İstifadəçi mə'lumatı"
+
+#: ../tools/draksambashare:906
+#, c-format
+msgid "User name:"
+msgstr "İstifadəçi adı:"
+
+#: ../tools/draksambashare:907
+#, c-format
+msgid "Password:"
+msgstr "Şifrə:"
+
+#: ../tools/draksambashare:1021
+#, fuzzy, c-format
+msgid "Manage Samba configuration"
+msgstr "Poçtla xəbər vermə qurğuları"
+
+#: ../tools/draksambashare:1109
+#, c-format
+msgid "Failed to Modify Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1118
+#, c-format
+msgid "Failed to remove a Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1125
+#, c-format
+msgid "File share"
+msgstr ""
+
+#: ../tools/draksambashare:1140
+#, c-format
+msgid "Failed to Modify."
+msgstr ""
+
+#: ../tools/draksambashare:1149
+#, c-format
+msgid "Failed to remove."
+msgstr ""
+
+#: ../tools/draksambashare:1156
+#, c-format
+msgid "Printers"
+msgstr "Çapçılar"
+
+#: ../tools/draksambashare:1168
+#, c-format
+msgid "Failed to add user."
+msgstr ""
+
+#: ../tools/draksambashare:1177
+#, c-format
+msgid "Failed to change user password."
+msgstr ""
+
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Failed to delete user."
+msgstr ""
+
+#: ../tools/draksambashare:1194
+#, c-format
+msgid "Userdrake"
+msgstr "Userdrake"
+
+#: ../tools/draksambashare:1202
+#, c-format
+msgid "Samba Users"
+msgstr ""
+
+#: ../tools/draksambashare:1211
+#, c-format
+msgid "DrakSamba manage Samba shares"
+msgstr ""
+
+#: ../tools/drakvpn-old:65
+#, c-format
+msgid "DrakVPN"
+msgstr "DrakVPN"
+
+#: ../tools/drakvpn-old:87
+#, c-format
+msgid "The VPN connection is enabled."
+msgstr "VPN bağlantısı fəaldır."
+
+#: ../tools/drakvpn-old:88
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:93
+#, c-format
+msgid "disable"
+msgstr "passivləşdir"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119
+#, c-format
+msgid "reconfigure"
+msgstr "yenidən quraşdır"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119 ../tools/drakvpn-old:432
+#, c-format
+msgid "dismiss"
+msgstr "keç"
+
+#: ../tools/drakvpn-old:97
+#, c-format
+msgid "Disabling VPN..."
+msgstr "VPN bağlanır..."
+
+#: ../tools/drakvpn-old:106
+#, c-format
+msgid "The VPN connection is now disabled."
+msgstr "VPN bağlantısı indi qeyri-fəallaşdırıldı."
+
+#: ../tools/drakvpn-old:113
+#, c-format
+msgid "VPN connection currently disabled"
+msgstr "VPN bağlantısı hazırda qeyri-fəaldır."
+
+#: ../tools/drakvpn-old:114
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:119
+#, c-format
+msgid "enable"
+msgstr "fəallaşdır"
+
+#: ../tools/drakvpn-old:127
+#, c-format
+msgid "Enabling VPN..."
+msgstr "VPN fəallaşdırılır..."
+
+#: ../tools/drakvpn-old:133
+#, c-format
+msgid "The VPN connection is now enabled."
+msgstr "VPN bağlantısı indi fəallaşdırıldı."
+
+#: ../tools/drakvpn-old:147 ../tools/drakvpn-old:164
+#, c-format
+msgid "Simple VPN setup."
+msgstr "Sadə VPN qurğusu."
+
+#: ../tools/drakvpn-old:148
+#, c-format
+msgid ""
+"You are about to configure your computer to use a VPN connection.\n"
+"\n"
+"With this feature, computers on your local private network and computers\n"
+"on some other remote private networks, can share resources, through\n"
+"their respective firewalls, over the Internet, in a secure manner. \n"
+"\n"
+"The communication over the Internet is encrypted. The local and remote\n"
+"computers look as if they were on the same network.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using\n"
+"drakconnect before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:165
+#, c-format
+msgid ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:208
+#, c-format
+msgid "Problems installing package %s"
+msgstr "%s paketi qurulurkən xəta oldu"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "Security Policies"
+msgstr "Təhlükəsizlik Siyasətləri"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "IKE daemon racoon"
+msgstr "IKE daemon racoon"
+
+#: ../tools/drakvpn-old:224
+#, c-format
+msgid "Configuration file"
+msgstr "Quraşdırma faylı"
+
+#: ../tools/drakvpn-old:225
+#, c-format
+msgid ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:245 ../tools/drakvpn-old:382
+#, c-format
+msgid "%s entries"
+msgstr "%s giriş"
+
+#: ../tools/drakvpn-old:246
+#, c-format
+msgid ""
+"The %s file contents\n"
+"is divided into sections.\n"
+"\n"
+"You can now:\n"
+"\n"
+" - display, add, edit, or remove sections, then\n"
+" - commit the changes\n"
+"\n"
+"What would you like to do?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display"
+msgstr "Göstər"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Edit"
+msgstr "Düzəlt"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Commit"
+msgstr "Göndər"
+
+#: ../tools/drakvpn-old:267 ../tools/drakvpn-old:271 ../tools/drakvpn-old:406
+#: ../tools/drakvpn-old:410
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display configuration"
+msgstr "Quraşdırılması göstər"
+
+#: ../tools/drakvpn-old:272
+#, c-format
+msgid ""
+"The %s file does not exist.\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose 'add'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:301
+#, c-format
+msgid ""
+"Add a Security Policy.\n"
+"\n"
+"You can now add a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:333 ../tools/drakvpn-old:523
+#, c-format
+msgid "Edit section"
+msgstr "Qismi dəyişdir"
+
+#: ../tools/drakvpn-old:334
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to edit \n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:337 ../tools/drakvpn-old:357 ../tools/drakvpn-old:528
+#: ../tools/drakvpn-old:574
+#, c-format
+msgid "Section names"
+msgstr "Qisim adları"
+
+#: ../tools/drakvpn-old:344
+#, c-format
+msgid ""
+"Edit a Security Policy.\n"
+"\n"
+"You can now edit a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:353 ../tools/drakvpn-old:570
+#, c-format
+msgid "Remove section"
+msgstr "Qismi sil"
+
+#: ../tools/drakvpn-old:354 ../tools/drakvpn-old:571
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to remove\n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:383
+#, c-format
+msgid ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+msgstr ""
+
+#: ../tools/drakvpn-old:411
+#, c-format
+msgid ""
+"The %s file does not exist\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose configure.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:425
+#, c-format
+msgid "racoon.conf entries"
+msgstr "racoon.conf girişləri"
+
+#: ../tools/drakvpn-old:426
+#, c-format
+msgid ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "path"
+msgstr "cığır"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "remote"
+msgstr "uzaq"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "sainfo"
+msgstr "sainfo"
+
+#: ../tools/drakvpn-old:440
+#, c-format
+msgid ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+msgstr ""
+
+#: ../tools/drakvpn-old:443
+#, c-format
+msgid "path type"
+msgstr "cığır növü"
+
+#: ../tools/drakvpn-old:447
+#, c-format
+msgid ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+msgstr ""
+
+#: ../tools/drakvpn-old:467 ../tools/drakvpn-old:560
+#, c-format
+msgid "real file"
+msgstr "əsl fayl"
+
+#: ../tools/drakvpn-old:490
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:507
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:524
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here in the list below the one you want\n"
+"to edit and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:535
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"\n"
+"You can now edit the remote section entries.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:544
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"You can now edit the sainfo section entries.\n"
+"\n"
+"Choose continue when you are done to write the data."
+msgstr ""
+
+#: ../tools/drakvpn-old:552
+#, c-format
+msgid ""
+"This section has to be on top of your\n"
+"%s file.\n"
+"\n"
+"Make sure all other sections follow these path\n"
+"sections.\n"
+"\n"
+"You can now edit the path entries.\n"
+"\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:559
+#, c-format
+msgid "path_type"
+msgstr ""
+
+#: ../tools/drakvpn-old:599
+#, c-format
+msgid "Congratulations!"
+msgstr "Təbriklər!"
+
+#: ../tools/drakvpn-old:600
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"\n"
+"You may now share resources through the Internet,\n"
+"in a secure way, using a VPN connection.\n"
+"\n"
+"You should make sure that the tunnels shorewall\n"
+"section is configured."
+msgstr ""
+
+#: ../tools/drakvpn-old:620
+#, c-format
+msgid "Sainfo source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:621
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:638
+#, c-format
+msgid "Sainfo source protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:639
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+msgstr ""
+
+#: ../tools/drakvpn-old:653
+#, c-format
+msgid "Sainfo destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:654
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:671
+#, c-format
+msgid "Sainfo destination protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:672
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+msgstr ""
+
+#: ../tools/drakvpn-old:686
+#, c-format
+msgid "PFS group"
+msgstr "PFS qrupu"
+
+#: ../tools/drakvpn-old:688
+#, c-format
+msgid ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+msgstr ""
+
+#: ../tools/drakvpn-old:693
+#, c-format
+msgid "Lifetime number"
+msgstr "Lifetime nömrəsi"
+
+#: ../tools/drakvpn-old:694
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:710
+#, c-format
+msgid "Lifetime unit"
+msgstr "Lifetime bölməsi"
+
+#: ../tools/drakvpn-old:712
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:728 ../tools/drakvpn-old:813
+#, c-format
+msgid "Encryption algorithm"
+msgstr "Şifrələmə alqorifması"
+
+#: ../tools/drakvpn-old:730
+#, c-format
+msgid "Authentication algorithm"
+msgstr "Tanıtma alqorifması"
+
+#: ../tools/drakvpn-old:732
+#, c-format
+msgid "Compression algorithm"
+msgstr "Sıxışdırma alqorifması"
+
+#: ../tools/drakvpn-old:733
+#, c-format
+msgid "deflate"
+msgstr ""
+
+#: ../tools/drakvpn-old:740
+#, c-format
+msgid "Remote"
+msgstr "Uzaq"
+
+#: ../tools/drakvpn-old:741
+#, c-format
+msgid ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+msgstr ""
+
+#: ../tools/drakvpn-old:749
+#, c-format
+msgid "Exchange mode"
+msgstr ""
+
+#: ../tools/drakvpn-old:751
+#, c-format
+msgid ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:757
+#, c-format
+msgid "Generate policy"
+msgstr ""
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "off"
+msgstr "bağlı"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "on"
+msgstr "açıq"
+
+#: ../tools/drakvpn-old:759
+#, c-format
+msgid ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+msgstr ""
+
+#: ../tools/drakvpn-old:773
+#, c-format
+msgid "Passive"
+msgstr ""
+
+#: ../tools/drakvpn-old:775
+#, c-format
+msgid ""
+"If you do not want to initiate the negotiation, set this\n"
+"to on. The default value is off. It is useful for a\n"
+"server."
+msgstr ""
+
+#: ../tools/drakvpn-old:778
+#, c-format
+msgid "Certificate type"
+msgstr ""
+
+#: ../tools/drakvpn-old:780
+#, c-format
+msgid "My certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:781
+#, c-format
+msgid "Name of the certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:782
+#, c-format
+msgid "My private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:783
+#, c-format
+msgid "Name of the private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:784
+#, c-format
+msgid "Peers certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:785
+#, c-format
+msgid "Name of the peers certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:786
+#, c-format
+msgid "Verify cert"
+msgstr ""
+
+#: ../tools/drakvpn-old:788
+#, c-format
+msgid ""
+"If you do not want to verify the peer's certificate for\n"
+"some reason, set this to off. The default is on."
+msgstr ""
+
+#: ../tools/drakvpn-old:790
+#, c-format
+msgid "My identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:791
+#, c-format
+msgid ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+msgstr ""
+
+#: ../tools/drakvpn-old:811
+#, c-format
+msgid "Peers identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:812
+#, c-format
+msgid "Proposal"
+msgstr ""
+
+#: ../tools/drakvpn-old:814
+#, c-format
+msgid ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+msgstr ""
+
+#: ../tools/drakvpn-old:821
+#, c-format
+msgid "Hash algorithm"
+msgstr "Hash alqorifması"
+
+#: ../tools/drakvpn-old:822
+#, c-format
+msgid "Authentication method"
+msgstr "Tanıtma yöntəmi"
+
+#: ../tools/drakvpn-old:823
+#, c-format
+msgid "DH group"
+msgstr "DH qrupu"
+
+#: ../tools/drakvpn-old:830
+#, c-format
+msgid "Command"
+msgstr "Əmr"
+
+#: ../tools/drakvpn-old:831
+#, c-format
+msgid "Source IP range"
+msgstr "Mənbə IP aralığı"
+
+#: ../tools/drakvpn-old:832
+#, c-format
+msgid "Destination IP range"
+msgstr "Hədəf IP aralığı"
+
+#: ../tools/drakvpn-old:833
+#, c-format
+msgid "Upper-layer protocol"
+msgstr "Üst-lay protokolu"
+
+#: ../tools/drakvpn-old:833 ../tools/drakvpn-old:840
+#, c-format
+msgid "any"
+msgstr ""
+
+#: ../tools/drakvpn-old:835
+#, c-format
+msgid "Flag"
+msgstr "Bayraq"
+
+#: ../tools/drakvpn-old:836
+#, c-format
+msgid "Direction"
+msgstr "İstiqamət"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "IPsec policy"
+msgstr "IPsec siyasəti"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "ipsec"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "discard"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "Mode"
+msgstr "Mod"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "tunnel"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "transport"
+msgstr ""
+
+#: ../tools/drakvpn-old:842
+#, c-format
+msgid "Source/destination"
+msgstr "Mənbə/Hədəf"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "Level"
+msgstr "Səviyyə"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "require"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "default"
+msgstr "əsas"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "use"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "unique"
+msgstr ""
+
+#: ../tools/net_applet:61
+#, fuzzy, c-format
+msgid "Network is up on interface %s."
+msgstr "Şəbəkə ara üzü"
+
+#: ../tools/net_applet:62
+#, c-format
+msgid "IP address: %s"
+msgstr "IP ünvanı: %s"
+
+#: ../tools/net_applet:63
+#, c-format
+msgid "Gateway: %s"
+msgstr "Şəbəkə keçidi: %s"
+
+#: ../tools/net_applet:64
+#, c-format
+msgid "Connected to %s (link level: %d %%)"
+msgstr ""
+
+#: ../tools/net_applet:66
+#, fuzzy, c-format
+msgid "Network is down on interface %s."
+msgstr "Şəbəkə ara üzü"
+
+#: ../tools/net_applet:74 ../tools/net_monitor:468
+#, c-format
+msgid "Connect %s"
+msgstr "Bağlan %s"
+
+#: ../tools/net_applet:75 ../tools/net_monitor:468
+#, c-format
+msgid "Disconnect %s"
+msgstr "%s bağlantısını kəs"
+
+#: ../tools/net_applet:76
+#, fuzzy, c-format
+msgid "Monitor Network"
+msgstr "Şəbəkə Üstündən Geri Yüklə"
+
+#: ../tools/net_applet:78
+#, c-format
+msgid "Manage wireless networks"
+msgstr ""
+
+#: ../tools/net_applet:80
+#, fuzzy, c-format
+msgid "Manage VPN connections"
+msgstr "Bağlantıları idarə et"
+
+#: ../tools/net_applet:84
+#, c-format
+msgid "Configure Network"
+msgstr "Şəbəkəni Quraşdır"
+
+#: ../tools/net_applet:86
+#, fuzzy, c-format
+msgid "Watched interface"
+msgstr "ara üzlər"
+
+#: ../tools/net_applet:87 ../tools/net_applet:88 ../tools/net_applet:90
+#, c-format
+msgid "Auto-detect"
+msgstr "Avtomatik təsbit et"
+
+#: ../tools/net_applet:95
+#, c-format
+msgid "Active interfaces"
+msgstr ""
+
+#: ../tools/net_applet:119
+#, c-format
+msgid "Profiles"
+msgstr "Profiller"
+
+#: ../tools/net_applet:137
+#, c-format
+msgid "Get Online Help"
+msgstr ""
+
+#: ../tools/net_applet:318
+#, fuzzy, c-format
+msgid "Network connection"
+msgstr "Şəbəkə Seçimləri"
+
+#: ../tools/net_applet:438
+#, c-format
+msgid "More networks"
+msgstr ""
+
+#: ../tools/net_applet:465
+#, c-format
+msgid "Interactive Firewall automatic mode"
+msgstr ""
+
+#: ../tools/net_applet:470
+#, c-format
+msgid "Always launch on startup"
+msgstr "Həmişə başlanğıcda işə sal"
+
+#: ../tools/net_applet:475
+#, fuzzy, c-format
+msgid "Wireless networks"
+msgstr "Kabelsiz bağlantı"
+
+#: ../tools/net_applet:482 ../tools/net_monitor:96
+#, c-format
+msgid "Settings"
+msgstr "Qurğular"
+
+#: ../tools/net_applet:557
+#, fuzzy, c-format
+msgid "Interactive Firewall: intrusion detected"
+msgstr "Atəş divarı quruluşu tapıldı!"
+
+#: ../tools/net_applet:574
+#, fuzzy, c-format
+msgid "What do you want to do with this attacker?"
+msgstr "Həqiqətən də bu oyundan çıxmaq istəyirsiniz?"
+
+#: ../tools/net_applet:577
+#, fuzzy, c-format
+msgid "Attack details"
+msgstr "Təfsilatsız"
+
+#: ../tools/net_applet:581
+#, fuzzy, c-format
+msgid "Attack time: %s"
+msgstr "Gedişat: %s"
+
+#: ../tools/net_applet:582
+#, c-format
+msgid "Network interface: %s"
+msgstr "Şəbəkə ara üzü: %s"
+
+#: ../tools/net_applet:583
+#, fuzzy, c-format
+msgid "Attack type: %s"
+msgstr "Çatma şəkli: %s\n"
+
+#: ../tools/net_applet:584
+#, c-format
+msgid "Protocol: %s"
+msgstr "Protokol: %s"
+
+#: ../tools/net_applet:585
+#, fuzzy, c-format
+msgid "Attacker IP address: %s"
+msgstr "Kompüterin IP ünvanı:"
+
+#: ../tools/net_applet:586
+#, fuzzy, c-format
+msgid "Attacker hostname: %s"
+msgstr "%s qovşaq adı verilir: "
+
+#: ../tools/net_applet:589
+#, fuzzy, c-format
+msgid "Service attacked: %s"
+msgstr "Xidmət _növü:"
+
+#: ../tools/net_applet:590
+#, fuzzy, c-format
+msgid "Port attacked: %s"
+msgstr "Qapı: %s"
+
+#: ../tools/net_applet:592
+#, c-format
+msgid "Type of ICMP attack: %s"
+msgstr ""
+
+#: ../tools/net_applet:597
+#, c-format
+msgid "Always blacklist (do not ask again)"
+msgstr ""
+
+#: ../tools/net_applet:612
+#, c-format
+msgid "Ignore"
+msgstr "Nəzərə alma"
+
+#: ../tools/net_applet:630 ../tools/net_applet:643
+#, fuzzy, c-format
+msgid "Interactive Firewall: new service"
+msgstr "Atəş divarı quruluşu tapıldı!"
+
+#: ../tools/net_applet:654
+#, fuzzy, c-format
+msgid "Do you want to open this service?"
+msgstr "Qurğuları sınamaq istəyirsiniz?"
+
+#: ../tools/net_applet:657
+#, fuzzy, c-format
+msgid "Remember this answer"
+msgstr "Bu şifrəni yadında saxla"
+
+#: ../tools/net_monitor:60 ../tools/net_monitor:65
+#, c-format
+msgid "Network Monitoring"
+msgstr "Şəbəkə İzlənməsi"
+
+#: ../tools/net_monitor:101
+#, c-format
+msgid "Global statistics"
+msgstr "Qlobal statistikalar"
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Instantaneous"
+msgstr "Ani"
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Average"
+msgstr "Orta hesabla"
+
+#: ../tools/net_monitor:105
+#, c-format
+msgid ""
+"Sending\n"
+"speed:"
+msgstr ""
+"Göndərmə\n"
+"sür'əti:"
+
+#: ../tools/net_monitor:105 ../tools/net_monitor:106 ../tools/net_monitor:111
+#, c-format
+msgid "unknown"
+msgstr "na'məlum"
+
+#: ../tools/net_monitor:106
+#, c-format
+msgid ""
+"Receiving\n"
+"speed:"
+msgstr ""
+"Alış\n"
+"sür'əti:"
+
+#: ../tools/net_monitor:110
+#, c-format
+msgid ""
+"Connection\n"
+"time: "
+msgstr ""
+"Bağlantı\n"
+"vaxtı:"
+
+#: ../tools/net_monitor:117
+#, c-format
+msgid "Use same scale for received and transmitted"
+msgstr ""
+
+#: ../tools/net_monitor:136
+#, c-format
+msgid "Wait please, testing your connection..."
+msgstr "Xahiş edirik, gözləyin, bağlantınız sınanır..."
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Disconnecting from Internet "
+msgstr "İnternet bağlantısı kəsilir"
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Connecting to Internet "
+msgstr "İnternetə Bağlanır"
+
+#: ../tools/net_monitor:229
+#, c-format
+msgid "Disconnection from Internet failed."
+msgstr "İnternet bağlantısının kəsilməsi bacarılmadı."
+
+#: ../tools/net_monitor:230
+#, c-format
+msgid "Disconnection from Internet complete."
+msgstr "İnternet bağlantısını tamamilə kəs."
+
+#: ../tools/net_monitor:232
+#, c-format
+msgid "Connection complete."
+msgstr "Bağlantı tamamlandı."
+
+#: ../tools/net_monitor:233
+#, c-format
+msgid ""
+"Connection failed.\n"
+"Verify your configuration in the Mandriva Linux Control Center."
+msgstr ""
+"Bağlantı iflas etdi.\n"
+"Mandriva Linux İdarə Mərkəzindən qurğularınızı yoxlayın."
+
+#: ../tools/net_monitor:338
+#, c-format
+msgid "Color configuration"
+msgstr "Rəng quraşdırması"
+
+#: ../tools/net_monitor:395 ../tools/net_monitor:407
+#, c-format
+msgid "sent: "
+msgstr "göndərilən:"
+
+#: ../tools/net_monitor:398 ../tools/net_monitor:411
+#, c-format
+msgid "received: "
+msgstr "alındı: "
+
+#: ../tools/net_monitor:401
+#, c-format
+msgid "average"
+msgstr "orta hesabla"
+
+#: ../tools/net_monitor:404
+#, c-format
+msgid "Local measure"
+msgstr "Yerli ölçü vahidi"
+
+#: ../tools/net_monitor:461
+#, c-format
+msgid ""
+"Warning, another internet connection has been detected, maybe using your "
+"network"
+msgstr ""
+"Diqqət, başqa internet bağlantısı aşkar edildi, güman ki şəbəkənizi istifadə "
+"edir"
+
+#: ../tools/net_monitor:472
+#, c-format
+msgid "No internet connection configured"
+msgstr "İnternet bağlantısı quraşdırılmayıb"
diff --git a/po/be.po b/po/be.po
new file mode 100644
index 0000000..0eb96b4
--- /dev/null
+++ b/po/be.po
@@ -0,0 +1,5452 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) 1999 Mandriva.
+# Alexander Bokovoy <ab@avilink.net>, 2000
+# Maryia Davidouskaia <maryia@scientist.com>, 2000
+msgid ""
+msgstr ""
+"Project-Id-Version: drakx-net VERSION\n"
+"POT-Creation-Date: 2007-01-10 15:18+0100\n"
+"PO-Revision-Date: 2000-09-24 12:30 +0100\n"
+"Last-Translator: Alexander Bokovoy <ab@avilink.net>\n"
+"Language-Team: be\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../lib/network/connection.pm:16
+#, c-format
+msgid "Unknown connection type"
+msgstr ""
+
+#: ../lib/network/connection.pm:115
+#, c-format
+msgid "Network access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:116
+#, c-format
+msgid "Access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:117
+#, c-format
+msgid "Address settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:149 ../lib/network/drakvpn.pm:62
+#: ../lib/network/vpn/openvpn.pm:365 ../lib/network/vpn/openvpn.pm:379
+#: ../lib/network/vpn/openvpn.pm:390 ../tools/net_applet:129
+#, fuzzy, c-format
+msgid "VPN connection"
+msgstr "Дзеяньні"
+
+#: ../lib/network/connection.pm:151 ../lib/network/connection/cable.pm:44
+#: ../lib/network/connection/wireless.pm:37 ../lib/network/vpn/openvpn.pm:127
+#: ../lib/network/vpn/openvpn.pm:171 ../lib/network/vpn/openvpn.pm:339
+#, c-format
+msgid "None"
+msgstr "Нічога"
+
+#: ../lib/network/connection.pm:163
+#, c-format
+msgid "Allow users to manage the connection"
+msgstr ""
+
+#: ../lib/network/connection.pm:164
+#, c-format
+msgid "Start the connection at boot"
+msgstr ""
+
+#: ../lib/network/connection.pm:165 ../tools/drakconnect:462
+#, fuzzy, c-format
+msgid "Metric"
+msgstr "абмежаванне"
+
+#: ../lib/network/connection.pm:230
+#, c-format
+msgid "Link detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection.pm:231 ../lib/network/connection/ethernet.pm:278
+#, c-format
+msgid "Link beat lost on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:13
+#, c-format
+msgid "Cable"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:14
+#, fuzzy, c-format
+msgid "Cable modem"
+msgstr "Рэжым прайгравання"
+
+#: ../lib/network/connection/cable.pm:45
+#, c-format
+msgid "Use BPALogin (needed for Telstra)"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:48 ../lib/network/netconnect.pm:587
+#: ../tools/drakconnect:482
+#, c-format
+msgid "Authentication"
+msgstr "Аўтэнтыфікацыя"
+
+#: ../lib/network/connection/cable.pm:50 ../lib/network/connection/ppp.pm:22
+#: ../lib/network/netconnect.pm:326 ../lib/network/vpn/openvpn.pm:393
+#: ../tools/drakconnect:492
+#, c-format
+msgid "Account Login (user name)"
+msgstr "Імя для ўваходу (імя карыстальніку)"
+
+#: ../lib/network/connection/cable.pm:52 ../lib/network/connection/ppp.pm:23
+#: ../lib/network/netconnect.pm:327 ../lib/network/vpn/openvpn.pm:394
+#: ../tools/drakconnect:493
+#, c-format
+msgid "Account Password"
+msgstr "Пароль для ўваходу"
+
+#: ../lib/network/connection/cellular.pm:47
+#, c-format
+msgid "Access Point Name"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:10
+#, c-format
+msgid "Bluetooth"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:11
+#, c-format
+msgid "Bluetooth Dial Up Networking"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:8
+#, c-format
+msgid "GPRS/Edge/3G"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:67
+#: ../lib/network/vpn/openvpn.pm:391
+#, c-format
+msgid "PIN number"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:130
+#, fuzzy, c-format
+msgid "Unable to open device %s"
+msgstr "Немагчыма адчыніць файл %s\n"
+
+#: ../lib/network/connection/cellular_card.pm:155
+#, fuzzy, c-format
+msgid "Please check that your SIM card is inserted."
+msgstr "Калі ласка, пазначце послядоўны порт, да якога падключана вашая мыш."
+
+#: ../lib/network/connection/cellular_card.pm:161
+#, c-format
+msgid ""
+"You entered a wrong PIN code.\n"
+"Entering the wrong PIN code multiple times may lock your SIM card!"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:12
+#, c-format
+msgid "DVB"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:13
+#, c-format
+msgid "Satellite (DVB)"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:56
+#, c-format
+msgid "Adapter card"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:57
+#, c-format
+msgid "Net demux"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:58
+#, c-format
+msgid "PID"
+msgstr "PID"
+
+#: ../lib/network/connection/ethernet.pm:10
+#, c-format
+msgid "Ethernet"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:53
+#, c-format
+msgid "Unable to find network interface for selected device (using %s driver)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:61 ../lib/network/vpn/openvpn.pm:207
+#, fuzzy, c-format
+msgid "Manual configuration"
+msgstr "Захаваць канфігурацыю меню"
+
+#: ../lib/network/connection/ethernet.pm:62
+#, c-format
+msgid "Automatic IP (BOOTP/DHCP)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:116
+#, fuzzy, c-format
+msgid "IP settings"
+msgstr "Настройкі шрыфтоў"
+
+#: ../lib/network/connection/ethernet.pm:125 ../lib/network/netconnect.pm:604
+#: ../lib/network/vpn/openvpn.pm:221 ../tools/drakconnect:113
+#: ../tools/drakconnect:321 ../tools/drakconnect:887 ../tools/drakhosts:196
+#, c-format
+msgid "IP address"
+msgstr "IP адрас"
+
+#: ../lib/network/connection/ethernet.pm:129
+#, c-format
+msgid ""
+"Please enter the IP configuration for this machine.\n"
+"Each item should be entered as an IP address in dotted-decimal\n"
+"notation (for example, 1.2.3.4)."
+msgstr ""
+"Калі ласка, увядзіце IP канфігурацыю для вашай машыны.\n"
+"Кожны пункт павінен быць запоўнены як IP адрас ў дзесяткова-кропкавай \n"
+"натацыі (напрыклад, 1.2.3.4)."
+
+#: ../lib/network/connection/ethernet.pm:132 ../tools/drakconnect:326
+#: ../tools/drakconnect:888 ../tools/drakgw:177
+#, c-format
+msgid "Netmask"
+msgstr "Маска сеткі"
+
+#: ../lib/network/connection/ethernet.pm:133 ../lib/network/netconnect.pm:636
+#: ../lib/network/vpn/openvpn.pm:212 ../lib/network/vpn/vpnc.pm:39
+#: ../tools/drakconnect:332
+#, c-format
+msgid "Gateway"
+msgstr "Шлюз"
+
+#: ../lib/network/connection/ethernet.pm:136 ../tools/drakconnect:382
+#, fuzzy, c-format
+msgid "Get DNS servers from DHCP"
+msgstr "IP сэервера SMB"
+
+#: ../lib/network/connection/ethernet.pm:138
+#, fuzzy, c-format
+msgid "DNS server 1"
+msgstr "NIS сэервер:"
+
+#: ../lib/network/connection/ethernet.pm:139
+#, fuzzy, c-format
+msgid "DNS server 2"
+msgstr "NIS сэервер:"
+
+#: ../lib/network/connection/ethernet.pm:140
+#, fuzzy, c-format
+msgid "Search domain"
+msgstr "Шукаць: "
+
+#: ../lib/network/connection/ethernet.pm:141
+#, c-format
+msgid "By default search domain will be set from the fully-qualified host name"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:143 ../tools/drakconnect:369
+#: ../tools/drakconnect:891
+#, c-format
+msgid "DHCP client"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:144 ../tools/drakconnect:379
+#, fuzzy, c-format
+msgid "DHCP timeout (in seconds)"
+msgstr "Настройка далучэння да Інтэрнэту"
+
+#: ../lib/network/connection/ethernet.pm:145 ../tools/drakconnect:383
+#, c-format
+msgid "Get YP servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:146 ../tools/drakconnect:384
+#, c-format
+msgid "Get NTPD servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:147 ../tools/drakconnect:375
+#, fuzzy, c-format
+msgid "DHCP host name"
+msgstr "Імя машыны"
+
+#: ../lib/network/connection/ethernet.pm:149
+#, c-format
+msgid "Do not fallback to Zeroconf (169.254.0.0 network)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:160 ../tools/drakconnect:676
+#, c-format
+msgid "IP address should be in format 1.2.3.4"
+msgstr "IP адрас павінен быць у фармаце 1.2.3.4"
+
+#: ../lib/network/connection/ethernet.pm:165 ../tools/drakconnect:680
+#, fuzzy, c-format
+msgid "Netmask should be in format 255.255.224.0"
+msgstr "IP адрас павінен быць у фармаце 1.2.3.4"
+
+#: ../lib/network/connection/ethernet.pm:170
+#, c-format
+msgid "Warning: IP address %s is usually reserved!"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:176
+#, fuzzy, c-format
+msgid "%s already in use\n"
+msgstr "%s ужо знойдзены "
+
+#: ../lib/network/connection/ethernet.pm:200 ../tools/drakconnect:373
+#, c-format
+msgid "Assign host name from DHCP address"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:202 ../tools/drakhosts:196
+#, c-format
+msgid "Host name"
+msgstr "Імя машыны"
+
+#: ../lib/network/connection/ethernet.pm:220 ../tools/drakconnect:440
+#, fuzzy, c-format
+msgid "Network Hotplugging"
+msgstr "Сетка"
+
+#: ../lib/network/connection/ethernet.pm:224
+#, c-format
+msgid "Enable IPv6 to IPv4 tunnel"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:277
+#, c-format
+msgid "Link beat detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:280
+#, c-format
+msgid "Requesting a network address on interface %s (%s protocol)..."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:281
+#, c-format
+msgid "Got a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:282
+#, c-format
+msgid "Failed to get a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:8
+#, c-format
+msgid "ISDN"
+msgstr "ISDN"
+
+#: ../lib/network/connection/isdn.pm:153 ../lib/network/netconnect.pm:197
+#: ../lib/network/netconnect.pm:200 ../lib/network/netconnect.pm:218
+#: ../lib/network/netconnect.pm:463 ../lib/network/netconnect.pm:559
+#: ../lib/network/netconnect.pm:562
+#, c-format
+msgid "Unlisted - edit manually"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "ISA / PCMCIA"
+msgstr "ISA / PCMCIA"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "I do not know"
+msgstr "Не вядома"
+
+#: ../lib/network/connection/isdn.pm:197 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "PCI"
+msgstr "PCI"
+
+#: ../lib/network/connection/isdn.pm:198 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "USB"
+msgstr "USB"
+
+#. -PO: POTS means "Plain old telephone service"
+#: ../lib/network/connection/pots.pm:10
+#, c-format
+msgid "POTS"
+msgstr ""
+
+#. -PO: POTS means "Plain old telephone service"
+#. -PO: remove it if it doesn't have an equivalent in your language
+#. -PO: for example, in French, it can be translated as "RTC"
+#: ../lib/network/connection/pots.pm:16
+#, c-format
+msgid "Analog telephone modem (POTS)"
+msgstr ""
+
+#: ../lib/network/connection/ppp.pm:9 ../lib/network/netconnect.pm:74
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Script-based"
+msgstr "на аснове скрыпту"
+
+#: ../lib/network/connection/ppp.pm:10 ../lib/network/netconnect.pm:75
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP"
+msgstr "PAP"
+
+#: ../lib/network/connection/ppp.pm:11 ../lib/network/netconnect.pm:76
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Terminal-based"
+msgstr "на аснове тэрміналу"
+
+#: ../lib/network/connection/ppp.pm:12 ../lib/network/netconnect.pm:77
+#: ../tools/drakconnect:499
+#, c-format
+msgid "CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/ppp.pm:13 ../lib/network/netconnect.pm:78
+#: ../tools/drakconnect:499
+#, fuzzy, c-format
+msgid "PAP/CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/providers/cellular.pm:13
+#: ../lib/network/connection/providers/cellular.pm:18
+#: ../lib/network/connection/providers/cellular.pm:23
+#: ../lib/network/connection/providers/xdsl.pm:492
+#: ../lib/network/connection/providers/xdsl.pm:504
+#: ../lib/network/connection/providers/xdsl.pm:516
+#: ../lib/network/connection/providers/xdsl.pm:528
+#: ../lib/network/connection/providers/xdsl.pm:539
+#: ../lib/network/connection/providers/xdsl.pm:551
+#: ../lib/network/connection/providers/xdsl.pm:563
+#: ../lib/network/connection/providers/xdsl.pm:575
+#: ../lib/network/connection/providers/xdsl.pm:588
+#: ../lib/network/connection/providers/xdsl.pm:599
+#: ../lib/network/connection/providers/xdsl.pm:610
+#: ../lib/network/netconnect.pm:33
+#, c-format
+msgid "France"
+msgstr "Францыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:47
+#: ../lib/network/connection/providers/xdsl.pm:57
+#, c-format
+msgid "Algeria"
+msgstr "Альджыр"
+
+#: ../lib/network/connection/providers/xdsl.pm:67
+#: ../lib/network/connection/providers/xdsl.pm:77
+#, c-format
+msgid "Argentina"
+msgstr "Аргенціна"
+
+#: ../lib/network/connection/providers/xdsl.pm:87
+#: ../lib/network/connection/providers/xdsl.pm:96
+#: ../lib/network/connection/providers/xdsl.pm:105
+#, c-format
+msgid "Austria"
+msgstr "Аўстрыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:114
+#: ../lib/network/connection/providers/xdsl.pm:124
+#: ../lib/network/connection/providers/xdsl.pm:134
+#, c-format
+msgid "Australia"
+msgstr "Аўстралія"
+
+#: ../lib/network/connection/providers/xdsl.pm:144
+#: ../lib/network/connection/providers/xdsl.pm:153
+#: ../lib/network/connection/providers/xdsl.pm:164
+#: ../lib/network/connection/providers/xdsl.pm:173
+#: ../lib/network/connection/providers/xdsl.pm:182
+#: ../lib/network/netconnect.pm:36
+#, c-format
+msgid "Belgium"
+msgstr "Бельгія"
+
+#: ../lib/network/connection/providers/xdsl.pm:191
+#: ../lib/network/connection/providers/xdsl.pm:201
+#: ../lib/network/connection/providers/xdsl.pm:210
+#: ../lib/network/connection/providers/xdsl.pm:219
+#, c-format
+msgid "Brazil"
+msgstr "Бразылія"
+
+#: ../lib/network/connection/providers/xdsl.pm:228
+#: ../lib/network/connection/providers/xdsl.pm:237
+#, c-format
+msgid "Bulgaria"
+msgstr "Баўгарыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:246
+#: ../lib/network/connection/providers/xdsl.pm:255
+#: ../lib/network/connection/providers/xdsl.pm:264
+#: ../lib/network/connection/providers/xdsl.pm:273
+#: ../lib/network/connection/providers/xdsl.pm:282
+#: ../lib/network/connection/providers/xdsl.pm:291
+#: ../lib/network/connection/providers/xdsl.pm:300
+#: ../lib/network/connection/providers/xdsl.pm:309
+#: ../lib/network/connection/providers/xdsl.pm:318
+#: ../lib/network/connection/providers/xdsl.pm:327
+#: ../lib/network/connection/providers/xdsl.pm:336
+#: ../lib/network/connection/providers/xdsl.pm:345
+#: ../lib/network/connection/providers/xdsl.pm:354
+#: ../lib/network/connection/providers/xdsl.pm:363
+#: ../lib/network/connection/providers/xdsl.pm:372
+#: ../lib/network/connection/providers/xdsl.pm:381
+#: ../lib/network/connection/providers/xdsl.pm:390
+#: ../lib/network/connection/providers/xdsl.pm:399
+#: ../lib/network/connection/providers/xdsl.pm:408
+#: ../lib/network/connection/providers/xdsl.pm:417
+#, c-format
+msgid "China"
+msgstr "Кітай"
+
+#: ../lib/network/connection/providers/xdsl.pm:426
+#: ../lib/network/connection/providers/xdsl.pm:436
+#, c-format
+msgid "Czech Republic"
+msgstr "Чэская Рэспубліка"
+
+#: ../lib/network/connection/providers/xdsl.pm:446
+#: ../lib/network/connection/providers/xdsl.pm:455
+#: ../lib/network/connection/providers/xdsl.pm:464
+#, c-format
+msgid "Denmark"
+msgstr "Данія"
+
+#: ../lib/network/connection/providers/xdsl.pm:473
+#, c-format
+msgid "Egypt"
+msgstr "Эгіпэт"
+
+#: ../lib/network/connection/providers/xdsl.pm:483
+#, c-format
+msgid "Finland"
+msgstr "Фінляндыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:621
+#: ../lib/network/connection/providers/xdsl.pm:630
+#: ../lib/network/connection/providers/xdsl.pm:640
+#, c-format
+msgid "Germany"
+msgstr "Нямецкі"
+
+#: ../lib/network/connection/providers/xdsl.pm:650
+#, c-format
+msgid "Greece"
+msgstr "Грэцыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:659
+#, c-format
+msgid "Hungary"
+msgstr "Вугоршчына"
+
+#: ../lib/network/connection/providers/xdsl.pm:668
+#, c-format
+msgid "Ireland"
+msgstr "Ірляндыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:677
+#, c-format
+msgid "Israel"
+msgstr "Габрэйшчына"
+
+#: ../lib/network/connection/providers/xdsl.pm:687
+#, c-format
+msgid "India"
+msgstr "Індыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:696
+#: ../lib/network/connection/providers/xdsl.pm:705
+#, c-format
+msgid "Iceland"
+msgstr "Ісьляндыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:714
+#: ../lib/network/connection/providers/xdsl.pm:725
+#: ../lib/network/connection/providers/xdsl.pm:735
+#: ../lib/network/connection/providers/xdsl.pm:746
+#: ../lib/network/netconnect.pm:35
+#, c-format
+msgid "Italy"
+msgstr "Італія"
+
+#: ../lib/network/connection/providers/xdsl.pm:758
+#, c-format
+msgid "Sri Lanka"
+msgstr "Шры Ланка"
+
+#: ../lib/network/connection/providers/xdsl.pm:770
+#, c-format
+msgid "Lithuania"
+msgstr "Жамойція"
+
+#: ../lib/network/connection/providers/xdsl.pm:779
+#: ../lib/network/connection/providers/xdsl.pm:789
+#, c-format
+msgid "Mauritius"
+msgstr "Марыціўс"
+
+#: ../lib/network/connection/providers/xdsl.pm:800
+#, c-format
+msgid "Morocco"
+msgstr "Марока"
+
+#: ../lib/network/connection/providers/xdsl.pm:810
+#: ../lib/network/connection/providers/xdsl.pm:819
+#: ../lib/network/connection/providers/xdsl.pm:828
+#: ../lib/network/connection/providers/xdsl.pm:837
+#: ../lib/network/netconnect.pm:34
+#, c-format
+msgid "Netherlands"
+msgstr "Нідэрлянды"
+
+#: ../lib/network/connection/providers/xdsl.pm:846
+#: ../lib/network/connection/providers/xdsl.pm:852
+#: ../lib/network/connection/providers/xdsl.pm:858
+#: ../lib/network/connection/providers/xdsl.pm:864
+#: ../lib/network/connection/providers/xdsl.pm:870
+#: ../lib/network/connection/providers/xdsl.pm:876
+#: ../lib/network/connection/providers/xdsl.pm:882
+#, c-format
+msgid "Norway"
+msgstr "Нарвэгія"
+
+#: ../lib/network/connection/providers/xdsl.pm:890
+#, c-format
+msgid "Pakistan"
+msgstr "Пакістан"
+
+#: ../lib/network/connection/providers/xdsl.pm:901
+#: ../lib/network/connection/providers/xdsl.pm:911
+#, c-format
+msgid "Poland"
+msgstr "Польшча"
+
+#: ../lib/network/connection/providers/xdsl.pm:922
+#, c-format
+msgid "Portugal"
+msgstr "Партугалія"
+
+#: ../lib/network/connection/providers/xdsl.pm:931
+#, c-format
+msgid "Russia"
+msgstr "Расея"
+
+#: ../lib/network/connection/providers/xdsl.pm:942
+#, c-format
+msgid "Singapore"
+msgstr "Сынгапур"
+
+#: ../lib/network/connection/providers/xdsl.pm:951
+#, c-format
+msgid "Senegal"
+msgstr "Сенегал"
+
+#: ../lib/network/connection/providers/xdsl.pm:961
+#, c-format
+msgid "Slovenia"
+msgstr "Славенія"
+
+#: ../lib/network/connection/providers/xdsl.pm:972
+#: ../lib/network/connection/providers/xdsl.pm:984
+#: ../lib/network/connection/providers/xdsl.pm:996
+#: ../lib/network/connection/providers/xdsl.pm:1009
+#: ../lib/network/connection/providers/xdsl.pm:1019
+#: ../lib/network/connection/providers/xdsl.pm:1029
+#: ../lib/network/connection/providers/xdsl.pm:1040
+#: ../lib/network/connection/providers/xdsl.pm:1050
+#: ../lib/network/connection/providers/xdsl.pm:1060
+#: ../lib/network/connection/providers/xdsl.pm:1070
+#: ../lib/network/connection/providers/xdsl.pm:1080
+#: ../lib/network/connection/providers/xdsl.pm:1090
+#: ../lib/network/connection/providers/xdsl.pm:1101
+#: ../lib/network/connection/providers/xdsl.pm:1112
+#: ../lib/network/connection/providers/xdsl.pm:1124
+#: ../lib/network/connection/providers/xdsl.pm:1136
+#, c-format
+msgid "Spain"
+msgstr "Гішпанія"
+
+#: ../lib/network/connection/providers/xdsl.pm:1149
+#, c-format
+msgid "Sweden"
+msgstr "Швэцыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:1158
+#: ../lib/network/connection/providers/xdsl.pm:1167
+#: ../lib/network/connection/providers/xdsl.pm:1177
+#, c-format
+msgid "Switzerland"
+msgstr "Щвэйцарыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:1186
+#, c-format
+msgid "Thailand"
+msgstr "Тайланд"
+
+#: ../lib/network/connection/providers/xdsl.pm:1196
+#, c-format
+msgid "Tunisia"
+msgstr "Тунісія"
+
+#: ../lib/network/connection/providers/xdsl.pm:1207
+#, c-format
+msgid "Turkey"
+msgstr "Турцыя"
+
+#: ../lib/network/connection/providers/xdsl.pm:1220
+#, c-format
+msgid "United Arab Emirates"
+msgstr "Злучаныя Арабскія Эміраты"
+
+#: ../lib/network/connection/providers/xdsl.pm:1230
+#: ../lib/network/connection/providers/xdsl.pm:1240
+#: ../lib/network/netconnect.pm:38
+#, c-format
+msgid "United Kingdom"
+msgstr "Злучанае Каралеўства"
+
+#: ../lib/network/connection/wireless.pm:11
+#, c-format
+msgid "Wireless"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:21
+#, c-format
+msgid "Use a Windows driver (with ndiswrapper)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:38
+#, c-format
+msgid "Open WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:39
+#, c-format
+msgid "Restricted WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:40
+#, c-format
+msgid "WPA Pre-Shared Key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:181 ../lib/network/thirdparty.pm:174
+#, c-format
+msgid "Firmware files are required for this device."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:209
+#, c-format
+msgid ""
+"Your wireless card is disabled, please enable the wireless switch (RF kill "
+"switch) first."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:270
+#, fuzzy, c-format
+msgid "Wireless settings"
+msgstr "Канфігурацыя"
+
+#: ../lib/network/connection/wireless.pm:275 ../tools/drakconnect:406
+#: ../tools/drakroam:119
+#, fuzzy, c-format
+msgid "Operating Mode"
+msgstr "Рэжым злучэння"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Ad-hoc"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:276
+#, fuzzy, c-format
+msgid "Managed"
+msgstr "Мэнэджэр файлаў"
+
+#: ../lib/network/connection/wireless.pm:276
+#, fuzzy, c-format
+msgid "Master"
+msgstr "Прайгравальнік дыскаў"
+
+#: ../lib/network/connection/wireless.pm:276
+#, fuzzy, c-format
+msgid "Repeater"
+msgstr "Цыклічна"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Secondary"
+msgstr "Падпарадкаваны"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Auto"
+msgstr "Аўтаматычна"
+
+#: ../lib/network/connection/wireless.pm:279 ../tools/drakconnect:407
+#, c-format
+msgid "Network name (ESSID)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:281
+#, c-format
+msgid "Encryption mode"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:283 ../tools/drakconnect:421
+#, c-format
+msgid "Encryption key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:285 ../tools/drakconnect:408
+#, fuzzy, c-format
+msgid "Network ID"
+msgstr "Сетка"
+
+#: ../lib/network/connection/wireless.pm:286 ../tools/drakconnect:409
+#, c-format
+msgid "Operating frequency"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:287 ../tools/drakconnect:410
+#, c-format
+msgid "Sensitivity threshold"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:288 ../tools/drakconnect:411
+#, fuzzy, c-format
+msgid "Bitrate (in b/s)"
+msgstr "Бітрэйт: %d kb/s"
+
+#: ../lib/network/connection/wireless.pm:289 ../tools/drakconnect:422
+#, c-format
+msgid "RTS/CTS"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:290
+#, c-format
+msgid ""
+"RTS/CTS adds a handshake before each packet transmission to make sure that "
+"the\n"
+"channel is clear. This adds overhead, but increase performance in case of "
+"hidden\n"
+"nodes or large number of active nodes. This parameter sets the size of the\n"
+"smallest packet for which the node sends RTS, a value equal to the maximum\n"
+"packet size disable the scheme. You may also set this parameter to auto, "
+"fixed\n"
+"or off."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:297 ../tools/drakconnect:423
+#, fuzzy, c-format
+msgid "Fragmentation"
+msgstr "Аўтэнтыфікацыя"
+
+#: ../lib/network/connection/wireless.pm:298 ../tools/drakconnect:424
+#, c-format
+msgid "iwconfig command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:299
+#, c-format
+msgid ""
+"Here, one can configure some extra wireless parameters such as:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick is already set "
+"as the hostname).\n"
+"\n"
+"See iwconfig(8) man page for further information."
+msgstr ""
+
+#. -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#: ../lib/network/connection/wireless.pm:306 ../tools/drakconnect:425
+#, c-format
+msgid "iwspy command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:307
+#, c-format
+msgid ""
+"iwspy is used to set a list of addresses in a wireless network\n"
+"interface and to read back quality of link information for each of those.\n"
+"\n"
+"This information is the same as the one available in /proc/net/wireless :\n"
+"quality of the link, signal strength and noise level.\n"
+"\n"
+"See iwpspy(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:315 ../tools/drakconnect:426
+#, c-format
+msgid "iwpriv command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:317
+#, c-format
+msgid ""
+"iwpriv enable to set up optionals (private) parameters of a wireless "
+"network\n"
+"interface.\n"
+"\n"
+"iwpriv deals with parameters and setting specific to each driver (as opposed "
+"to\n"
+"iwconfig which deals with generic ones).\n"
+"\n"
+"In theory, the documentation of each device driver should indicate how to "
+"use\n"
+"those interface specific commands and their effect.\n"
+"\n"
+"See iwpriv(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:335
+#, c-format
+msgid "An encryption key is required."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:341
+#, c-format
+msgid ""
+"Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz "
+"frequency), or add enough '0' (zeroes)."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:347
+#, c-format
+msgid ""
+"Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add "
+"enough '0' (zeroes)."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:359
+#, c-format
+msgid "Allow access point roaming"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:460
+#, c-format
+msgid "Associated to wireless network \"%s\" on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:461
+#, c-format
+msgid "Lost association to wireless network on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:8
+#, fuzzy, c-format
+msgid "DSL"
+msgstr "SSL"
+
+#: ../lib/network/connection/xdsl.pm:76 ../lib/network/netconnect.pm:755
+#, c-format
+msgid "Alcatel speedtouch USB modem"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:104
+#, c-format
+msgid ""
+"The ECI Hi-Focus modem cannot be supported due to binary driver distribution "
+"problem.\n"
+"\n"
+"You can find a driver on http://eciadsl.flashtux.org/"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:176
+#, c-format
+msgid "DSL over CAPI"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:179
+#, fuzzy, c-format
+msgid "Dynamic Host Configuration Protocol (DHCP)"
+msgstr "Канфігурацыя сістэмных сэрвісаў"
+
+#: ../lib/network/connection/xdsl.pm:180
+#, fuzzy, c-format
+msgid "Manual TCP/IP configuration"
+msgstr "Канфігурацыя"
+
+#: ../lib/network/connection/xdsl.pm:181
+#, c-format
+msgid "Point to Point Tunneling Protocol (PPTP)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:182
+#, c-format
+msgid "PPP over Ethernet (PPPoE)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:183
+#, c-format
+msgid "PPP over ATM (PPPoA)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:223
+#, c-format
+msgid "Virtual Path ID (VPI):"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:224
+#, c-format
+msgid "Virtual Circuit ID (VCI):"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/drakvpn.pm:52 ../lib/network/ndiswrapper.pm:27
+#: ../lib/network/ndiswrapper.pm:42 ../lib/network/ndiswrapper.pm:86
+#: ../lib/network/ndiswrapper.pm:102 ../lib/network/netconnect.pm:131
+#: ../lib/network/netconnect.pm:179 ../lib/network/netconnect.pm:268
+#: ../lib/network/netconnect.pm:813 ../lib/network/thirdparty.pm:114
+#: ../lib/network/thirdparty.pm:131 ../lib/network/thirdparty.pm:214
+#: ../lib/network/thirdparty.pm:216 ../lib/network/thirdparty.pm:237
+#: ../tools/drakconnect:676 ../tools/drakconnect:680 ../tools/drakconnect:689
+#: ../tools/drakconnect:705 ../tools/drakgw:184 ../tools/drakhosts:100
+#: ../tools/drakhosts:245 ../tools/drakhosts:252 ../tools/drakhosts:259
+#: ../tools/drakinvictus:72 ../tools/draknetprofile:113 ../tools/draknfs:85
+#: ../tools/draknfs:106 ../tools/draknfs:273 ../tools/draknfs:400
+#: ../tools/draknfs:402 ../tools/draknfs:405 ../tools/draknfs:497
+#: ../tools/draknfs:504 ../tools/draknfs:567 ../tools/draknfs:574
+#: ../tools/draknfs:581 ../tools/drakroam:79 ../tools/drakroam:92
+#: ../tools/draksambashare:372 ../tools/draksambashare:379
+#: ../tools/draksambashare:382 ../tools/draksambashare:428
+#: ../tools/draksambashare:452 ../tools/draksambashare:518
+#: ../tools/draksambashare:533 ../tools/draksambashare:611
+#: ../tools/draksambashare:678 ../tools/draksambashare:778
+#: ../tools/draksambashare:785 ../tools/draksambashare:916
+#: ../tools/draksambashare:1109 ../tools/draksambashare:1118
+#: ../tools/draksambashare:1140 ../tools/draksambashare:1149
+#: ../tools/draksambashare:1168 ../tools/draksambashare:1177
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Error"
+msgstr "Памылка"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/netconnect.pm:131 ../lib/network/thirdparty.pm:114
+#, fuzzy, c-format
+msgid "Could not install the packages (%s)!"
+msgstr "Усталяванне пакету %s"
+
+#: ../lib/network/drakfirewall.pm:12
+#, fuzzy, c-format
+msgid "Web Server"
+msgstr "Сервак"
+
+#: ../lib/network/drakfirewall.pm:17
+#, fuzzy, c-format
+msgid "Domain Name Server"
+msgstr "Імя дамену"
+
+#: ../lib/network/drakfirewall.pm:22
+#, fuzzy, c-format
+msgid "SSH server"
+msgstr "X сэервер"
+
+#: ../lib/network/drakfirewall.pm:27
+#, fuzzy, c-format
+msgid "FTP server"
+msgstr "X сэервер"
+
+#: ../lib/network/drakfirewall.pm:32
+#, fuzzy, c-format
+msgid "Mail Server"
+msgstr "Сервак"
+
+#: ../lib/network/drakfirewall.pm:37
+#, c-format
+msgid "POP and IMAP Server"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:42
+#, fuzzy, c-format
+msgid "Telnet server"
+msgstr "X сэервер"
+
+#: ../lib/network/drakfirewall.pm:48
+#, c-format
+msgid "Windows Files Sharing (SMB)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:54
+#, fuzzy, c-format
+msgid "CUPS server"
+msgstr "Аддалены сэервер CUPS"
+
+#: ../lib/network/drakfirewall.pm:60
+#, c-format
+msgid "Echo request (ping)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:65
+#, c-format
+msgid "BitTorrent"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:74
+#, c-format
+msgid "Port scan detection"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:166 ../lib/network/drakfirewall.pm:172
+#, fuzzy, c-format
+msgid "Firewall configuration"
+msgstr "Захаваць канфігурацыю меню"
+
+#: ../lib/network/drakfirewall.pm:166
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"This configures a personal firewall for this Mandriva Linux machine.\n"
+"For a powerful and dedicated firewall solution, please look to the\n"
+"specialized Mandriva Security Firewall distribution."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:172
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"Make sure you have configured your Network/Internet access with\n"
+"drakconnect before going any further."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:189
+#, c-format
+msgid "Which services would you like to allow the Internet to connect to?"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:190 ../lib/network/shorewall.pm:145
+#, c-format
+msgid "Firewall"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:192
+#, c-format
+msgid ""
+"You can enter miscellaneous ports. \n"
+"Valid examples are: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Have a look at /etc/services for information."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:198
+#, c-format
+msgid ""
+"Invalid port given: %s.\n"
+"The proper format is \"port/tcp\" or \"port/udp\", \n"
+"where port is between 1 and 65535.\n"
+"\n"
+"You can also give a range of ports (eg: 24300:24350/udp)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:208
+#, c-format
+msgid "Everything (no firewall)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:210
+#, fuzzy, c-format
+msgid "Other ports"
+msgstr "Парты вываду:"
+
+#: ../lib/network/drakfirewall.pm:211
+#, c-format
+msgid "Log firewall messages in system logs"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:255 ../lib/network/drakfirewall.pm:258
+#: ../tools/drakids:40 ../tools/drakids:65 ../tools/drakids:181
+#: ../tools/drakids:190 ../tools/drakids:215 ../tools/drakids:224
+#: ../tools/drakids:234 ../tools/drakids:326 ../tools/net_applet:77
+#: ../tools/net_applet:238 ../tools/net_applet:514 ../tools/net_applet:541
+#, fuzzy, c-format
+msgid "Interactive Firewall"
+msgstr "Знойдзена сістэма сеткавай бяспекі (firewall)!"
+
+#: ../lib/network/drakfirewall.pm:256
+#, c-format
+msgid ""
+"You can be warned when someone accesses to a service or tries to intrude "
+"into your computer.\n"
+"Please select which network activities should be watched."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:261
+#, c-format
+msgid "Use Interactive Firewall"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:30
+#, fuzzy, c-format
+msgid "VPN configuration"
+msgstr "Канфігурацыя"
+
+#: ../lib/network/drakvpn.pm:34
+#, fuzzy, c-format
+msgid "Choose the VPN type"
+msgstr "Выбар новых памераў"
+
+#: ../lib/network/drakvpn.pm:49
+#, c-format
+msgid "Initializing tools and detecting devices for %s..."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:52
+#, fuzzy, c-format
+msgid "Unable to initialize %s connection type!"
+msgstr "Выбар тыпу злучэння прынтэру"
+
+#: ../lib/network/drakvpn.pm:60
+#, c-format
+msgid "Please select an existing VPN connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:64
+#, fuzzy, c-format
+msgid "Configure a new connection..."
+msgstr "Настройка сеткі"
+
+#: ../lib/network/drakvpn.pm:66
+#, fuzzy, c-format
+msgid "New name"
+msgstr "Уласнае імя"
+
+#: ../lib/network/drakvpn.pm:70 ../lib/network/drakvpn.pm:100
+#: ../lib/network/ndiswrapper.pm:92 ../lib/network/netconnect.pm:471
+#: ../tools/drakconnect:978 ../tools/draknetprofile:129
+#: ../tools/draknetprofile:131 ../tools/drakproxy:36
+#, c-format
+msgid "Warning"
+msgstr "Увага!"
+
+#: ../lib/network/drakvpn.pm:70
+#, c-format
+msgid "You must select an existing connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:81
+#, fuzzy, c-format
+msgid "Please enter the required key(s)"
+msgstr "Калі ласка, зрабіце некалькі рухаў мышшу."
+
+#: ../lib/network/drakvpn.pm:86
+#, fuzzy, c-format
+msgid "Please enter the settings of your VPN connection"
+msgstr "Немагчыма адчыніць файл %s\n"
+
+#: ../lib/network/drakvpn.pm:94 ../lib/network/netconnect.pm:291
+#, c-format
+msgid "Do you want to start the connection now?"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:100
+#, fuzzy, c-format
+msgid "Connection failed."
+msgstr "Імя злучэння"
+
+#: ../lib/network/drakvpn.pm:108
+#, c-format
+msgid ""
+"The VPN connection is now configured.\n"
+"\n"
+"This VPN connection can be automatically started together with a network "
+"connection.\n"
+"It can be done by reconfiguring the network connection and selecting this "
+"VPN connection.\n"
+msgstr ""
+
+#: ../lib/network/ifw.pm:129
+#, fuzzy, c-format
+msgid "Port scanning"
+msgstr "Нічога"
+
+#: ../lib/network/ifw.pm:130
+#, fuzzy, c-format
+msgid "Service attack"
+msgstr "Кіраваньне сэрвісамі"
+
+#: ../lib/network/ifw.pm:131
+#, fuzzy, c-format
+msgid "Password cracking"
+msgstr "Паўтарыце пароль"
+
+#: ../lib/network/ifw.pm:132
+#, c-format
+msgid "\"%s\" attack"
+msgstr ""
+
+#: ../lib/network/ifw.pm:134
+#, c-format
+msgid "A port scanning attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:135
+#, fuzzy, c-format
+msgid "The %s service has been attacked by %s."
+msgstr "Гэтая падзея была зьменена."
+
+#: ../lib/network/ifw.pm:136
+#, c-format
+msgid "A password cracking attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:137
+#, fuzzy, c-format
+msgid "A \"%s\" attack has been attempted by %s"
+msgstr "Гэтая падзея была зьменена."
+
+#: ../lib/network/ifw.pm:146
+#, c-format
+msgid ""
+"The \"%s\" application is trying to make a service (%s) available to the "
+"network."
+msgstr ""
+
+#. -PO: this should be kept lowercase since the expression is meant to be used between brackets
+#: ../lib/network/ifw.pm:150
+#, fuzzy, c-format
+msgid "port %d"
+msgstr "Цыклічна"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/netconnect.pm:603
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#, fuzzy, c-format
+msgid "Manual"
+msgstr "Студзень"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/modem.pm:63
+#: ../lib/network/modem.pm:76 ../lib/network/modem.pm:81
+#: ../lib/network/modem.pm:110 ../lib/network/netconnect.pm:598
+#: ../lib/network/netconnect.pm:603 ../lib/network/netconnect.pm:615
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#: ../lib/network/netconnect.pm:638
+#, c-format
+msgid "Automatic"
+msgstr "Аўтаматычна"
+
+#: ../lib/network/ndiswrapper.pm:27
+#, c-format
+msgid "No device supporting the %s ndiswrapper driver is present!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:33
+#, c-format
+msgid "Please select the Windows driver (.inf file)"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:42
+#, c-format
+msgid "Unable to install the %s ndiswrapper driver!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:86
+#, c-format
+msgid "Unable to load the ndiswrapper module!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:92
+#, c-format
+msgid ""
+"The selected device has already been configured with the %s driver.\n"
+"Do you really want to use a ndiswrapper driver?"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:102
+#, c-format
+msgid "Unable to find the ndiswrapper interface!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:115
+#, fuzzy, c-format
+msgid "Choose an ndiswrapper driver"
+msgstr "X сэервер"
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Use the ndiswrapper driver %s"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:118
+#, fuzzy, c-format
+msgid "Install a new driver"
+msgstr "Усталяванне сістэмы"
+
+#: ../lib/network/ndiswrapper.pm:129
+#, c-format
+msgid "Select a device:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:37
+#, c-format
+msgid "United States"
+msgstr "Злучаныя Штаты"
+
+#: ../lib/network/netconnect.pm:60 ../lib/network/netconnect.pm:493
+#: ../lib/network/netconnect.pm:507
+#, c-format
+msgid "Manual choice"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:60
+#, c-format
+msgid "Internal ISDN card"
+msgstr "Унутраная ISDN карта"
+
+#: ../lib/network/netconnect.pm:65
+#, c-format
+msgid "Protocol for the rest of the world"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:67 ../tools/drakconnect:564
+#, c-format
+msgid "European protocol (EDSS1)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:68 ../tools/drakconnect:565
+#, c-format
+msgid ""
+"Protocol for the rest of the world\n"
+"No D-Channel (leased lines)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:118 ../tools/drakconnect:61
+#, fuzzy, c-format
+msgid "Network & Internet Configuration"
+msgstr "Канфігурацыя сеткі"
+
+#: ../lib/network/netconnect.pm:123
+#, fuzzy, c-format
+msgid "Choose the connection you want to configure"
+msgstr "Выбар раздзелаў для фарматавання"
+
+#: ../lib/network/netconnect.pm:145 ../lib/network/netconnect.pm:348
+#: ../lib/network/netconnect.pm:788
+#, fuzzy, c-format
+msgid "Select the network interface to configure:"
+msgstr "Пазначце сеткавы інтэрфейс"
+
+#: ../lib/network/netconnect.pm:164
+#, c-format
+msgid "No device can be found for this connection type."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:173
+#, fuzzy, c-format
+msgid "Hardware Configuration"
+msgstr "Канфігурацыя сеткі"
+
+#: ../lib/network/netconnect.pm:177 ../tools/drakroam:90
+#, fuzzy, c-format
+msgid "Configuring device..."
+msgstr "Настройка IDE"
+
+#: ../lib/network/netconnect.pm:194
+#, c-format
+msgid "Please select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:209 ../tools/drakroam:170
+#, fuzzy, c-format
+msgid "Scanning for networks..."
+msgstr "Пачатковы сектар:"
+
+#: ../lib/network/netconnect.pm:212
+#, c-format
+msgid "Please select your network:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:241
+#, c-format
+msgid ""
+"Please select your connection protocol.\n"
+"If you do not know it, keep the preselected protocol."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:285 ../lib/network/netconnect.pm:655
+#, c-format
+msgid "Connection control"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Connection Configuration"
+msgstr "Настройка далучэння да Інтэрнэту"
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Please fill or check the field below"
+msgstr "Калі ласка, запоўніце ці пазначце поле ніжэй"
+
+#: ../lib/network/netconnect.pm:318
+#, c-format
+msgid "Your personal phone number"
+msgstr "Ваш асабісты тэлефонны нумар"
+
+#: ../lib/network/netconnect.pm:319
+#, c-format
+msgid "Provider name (ex provider.net)"
+msgstr "Імя правайдару, напрыклад правайдар.net"
+
+#: ../lib/network/netconnect.pm:320 ../tools/drakconnect:494
+#, c-format
+msgid "Provider phone number"
+msgstr "Нумар тэлефону правайдара"
+
+#: ../lib/network/netconnect.pm:321
+#, fuzzy, c-format
+msgid "Provider DNS 1 (optional)"
+msgstr "Опцыі прынтэру"
+
+#: ../lib/network/netconnect.pm:322
+#, fuzzy, c-format
+msgid "Provider DNS 2 (optional)"
+msgstr "Опцыі прынтэру"
+
+#: ../lib/network/netconnect.pm:323 ../tools/drakconnect:446
+#, c-format
+msgid "Dialing mode"
+msgstr "Рэжым злучэння"
+
+#: ../lib/network/netconnect.pm:324 ../tools/drakconnect:451
+#: ../tools/drakconnect:518
+#, fuzzy, c-format
+msgid "Connection speed"
+msgstr "Імя злучэння"
+
+#: ../lib/network/netconnect.pm:325 ../tools/drakconnect:456
+#, fuzzy, c-format
+msgid "Connection timeout (in sec)"
+msgstr "Настройка далучэння да Інтэрнэту"
+
+#: ../lib/network/netconnect.pm:328 ../tools/drakconnect:555
+#, c-format
+msgid "Card IRQ"
+msgstr "IRQ карты"
+
+#: ../lib/network/netconnect.pm:329 ../tools/drakconnect:556
+#, c-format
+msgid "Card mem (DMA)"
+msgstr "Адрасы памяці карты (DMA)"
+
+#: ../lib/network/netconnect.pm:330 ../tools/drakconnect:557
+#, c-format
+msgid "Card IO"
+msgstr "IO карты"
+
+#: ../lib/network/netconnect.pm:331 ../tools/drakconnect:558
+#, c-format
+msgid "Card IO_0"
+msgstr "IO_0 карты"
+
+#: ../lib/network/netconnect.pm:332
+#, c-format
+msgid "Card IO_1"
+msgstr "IO_1 карты"
+
+#: ../lib/network/netconnect.pm:350 ../lib/network/netconnect.pm:385
+#: ../tools/drakconnect:719 ../tools/drakgw:123
+#, fuzzy, c-format
+msgid "Net Device"
+msgstr "Прылада"
+
+#: ../lib/network/netconnect.pm:351 ../lib/network/netconnect.pm:356
+#, fuzzy, c-format
+msgid "External ISDN modem"
+msgstr "Унутраная ISDN карта"
+
+#: ../lib/network/netconnect.pm:384
+#, fuzzy, c-format
+msgid "Select a device!"
+msgstr "Абярыце файл"
+
+#: ../lib/network/netconnect.pm:393 ../lib/network/netconnect.pm:403
+#: ../lib/network/netconnect.pm:413 ../lib/network/netconnect.pm:446
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid "ISDN Configuration"
+msgstr "Настройка ISDN"
+
+#: ../lib/network/netconnect.pm:394
+#, c-format
+msgid "What kind of card do you have?"
+msgstr "Які тып карты вы маеце?"
+
+#: ../lib/network/netconnect.pm:404
+#, c-format
+msgid ""
+"\n"
+"If you have an ISA card, the values on the next screen should be right.\n"
+"\n"
+"If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your "
+"card.\n"
+msgstr ""
+"\n"
+"Калі вы маеце ISA карту, велічыні на наступным экране павінны быць "
+"сапраўднымі.\n"
+"\n"
+"Калі вы маеце PCMCIA карту, вы павінны ведаць irq і io вашай карты.\n"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Continue"
+msgstr "Працягнуць"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Abort"
+msgstr "Адмяніць"
+
+#: ../lib/network/netconnect.pm:414
+#, c-format
+msgid "Which of the following is your ISDN card?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:432
+#, c-format
+msgid ""
+"A CAPI driver is available for this modem. This CAPI driver can offer more "
+"capabilities than the free driver (like sending faxes). Which driver do you "
+"want to use?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:434 ../tools/drakconnect:113
+#, c-format
+msgid "Driver"
+msgstr "Драйвэр"
+
+#: ../lib/network/netconnect.pm:446
+#, c-format
+msgid "Which protocol do you want to use?"
+msgstr "Які пратакол вы жадаеце выкарыстоўваць?"
+
+#: ../lib/network/netconnect.pm:448 ../tools/drakconnect:113
+#: ../tools/drakconnect:305 ../tools/drakconnect:563 ../tools/drakids:252
+#: ../tools/drakvpn-old:839
+#, c-format
+msgid "Protocol"
+msgstr "Пратакол"
+
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid ""
+"Select your provider.\n"
+"If it is not listed, choose Unlisted."
+msgstr ""
+"Абярыце вашага правайдара.\n"
+"калі яго няма ў гэтым спісе, абярыце тып ‟Іншы”"
+
+#: ../lib/network/netconnect.pm:462 ../lib/network/netconnect.pm:558
+#, fuzzy, c-format
+msgid "Provider:"
+msgstr "Прынтэр"
+
+#: ../lib/network/netconnect.pm:471
+#, c-format
+msgid ""
+"Your modem is not supported by the system.\n"
+"Take a look at http://www.linmodems.org"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:490
+#, fuzzy, c-format
+msgid "Select the modem to configure:"
+msgstr "Пазначце карыстальнікаў каб аб'яднаць у гэтыю групу"
+
+#: ../lib/network/netconnect.pm:492
+#, c-format
+msgid "Modem"
+msgstr "Мадэм"
+
+#: ../lib/network/netconnect.pm:527
+#, c-format
+msgid "Please choose which serial port your modem is connected to."
+msgstr "Да якога паслядоўнага порту далучаны мадэм?"
+
+#: ../lib/network/netconnect.pm:556
+#, c-format
+msgid "Select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:580
+#, fuzzy, c-format
+msgid "Dialup: account options"
+msgstr "Дазволіць тэрмін дзеяньня запісу"
+
+#: ../lib/network/netconnect.pm:583
+#, c-format
+msgid "Connection name"
+msgstr "Імя злучэння"
+
+#: ../lib/network/netconnect.pm:584
+#, c-format
+msgid "Phone number"
+msgstr "Нумар тэлефону"
+
+#: ../lib/network/netconnect.pm:585
+#, c-format
+msgid "Login ID"
+msgstr "Імя (login ID)"
+
+#: ../lib/network/netconnect.pm:586 ../lib/network/vpn/vpnc.pm:56
+#: ../tools/drakinvictus:110
+#, c-format
+msgid "Password"
+msgstr "Пароль"
+
+#: ../lib/network/netconnect.pm:600 ../lib/network/netconnect.pm:633
+#, fuzzy, c-format
+msgid "Dialup: IP parameters"
+msgstr "Настроіць проксі сэрвэры"
+
+#: ../lib/network/netconnect.pm:603
+#, fuzzy, c-format
+msgid "IP parameters"
+msgstr "Інтэрнэт"
+
+#: ../lib/network/netconnect.pm:605
+#, fuzzy, c-format
+msgid "Subnet mask"
+msgstr "Маска сеткі"
+
+#: ../lib/network/netconnect.pm:617
+#, c-format
+msgid "Dialup: DNS parameters"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:620
+#, c-format
+msgid "DNS"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:621
+#, c-format
+msgid "Domain name"
+msgstr "Імя дамену"
+
+#: ../lib/network/netconnect.pm:622 ../tools/drakconnect:996
+#, c-format
+msgid "First DNS Server (optional)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:623 ../tools/drakconnect:997
+#, fuzzy, c-format
+msgid "Second DNS Server (optional)"
+msgstr "Канфігурацыя сістэмных сэрвісаў"
+
+#: ../lib/network/netconnect.pm:624
+#, c-format
+msgid "Set hostname from IP"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:637
+#, fuzzy, c-format
+msgid "Gateway IP address"
+msgstr "IP адрас"
+
+#: ../lib/network/netconnect.pm:670
+#, fuzzy, c-format
+msgid "Automatically at boot"
+msgstr "Аўтаматычны"
+
+#: ../lib/network/netconnect.pm:672
+#, c-format
+msgid "By using Net Applet in the system tray"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:674
+#, c-format
+msgid "Manually (the interface would still be activated at boot)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:683
+#, fuzzy, c-format
+msgid "How do you want to dial this connection?"
+msgstr "Вы жадаеце, каб гэтае злучэнне стартавала пры загрузцы?"
+
+#: ../lib/network/netconnect.pm:696
+#, c-format
+msgid "Do you want to try to connect to the Internet now?"
+msgstr "Ці жадаеце зараз паспрабаваць далучыцца да Інтэрнэту?"
+
+#: ../lib/network/netconnect.pm:704 ../tools/drakconnect:1027
+#, c-format
+msgid "Testing your connection..."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:723
+#, fuzzy, c-format
+msgid "The system is now connected to the Internet."
+msgstr "Далучэнне да Інтэрнэту"
+
+#: ../lib/network/netconnect.pm:724
+#, c-format
+msgid "For security reasons, it will be disconnected now."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:725
+#, c-format
+msgid ""
+"The system does not seem to be connected to the Internet.\n"
+"Try to reconfigure your connection."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:740
+#, c-format
+msgid ""
+"Congratulations, the network and Internet configuration is finished.\n"
+"\n"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:743
+#, c-format
+msgid ""
+"After this is done, we recommend that you restart your X environment to "
+"avoid any hostname-related problems."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:744
+#, c-format
+msgid ""
+"Problems occurred during configuration.\n"
+"Test your connection via net_monitor or mcc. If your connection does not "
+"work, you might want to relaunch the configuration."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:756
+#, c-format
+msgid "Sagem USB modem"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:757 ../lib/network/netconnect.pm:758
+#, fuzzy, c-format
+msgid "Bewan modem"
+msgstr "Рэжым злучэння"
+
+#: ../lib/network/netconnect.pm:759
+#, c-format
+msgid "ECI Hi-Focus modem"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:760
+#, fuzzy, c-format
+msgid "LAN connection"
+msgstr "Дзеяньні"
+
+#: ../lib/network/netconnect.pm:761 ../tools/drakroam:29
+#, fuzzy, c-format
+msgid "Wireless connection"
+msgstr "Канфігурацыя"
+
+#: ../lib/network/netconnect.pm:762
+#, fuzzy, c-format
+msgid "ADSL connection"
+msgstr "Дзеяньні"
+
+#: ../lib/network/netconnect.pm:763
+#, fuzzy, c-format
+msgid "Cable connection"
+msgstr "Размеркаванне"
+
+#: ../lib/network/netconnect.pm:764
+#, fuzzy, c-format
+msgid "ISDN connection"
+msgstr "Дзеяньні"
+
+#: ../lib/network/netconnect.pm:765
+#, fuzzy, c-format
+msgid "Modem connection"
+msgstr "Размеркаванне"
+
+#: ../lib/network/netconnect.pm:766
+#, c-format
+msgid "DVB connection"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:768
+#, c-format
+msgid "(detected on port %s)"
+msgstr ""
+
+#. -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected %s)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:771
+#, c-format
+msgid "Network Configuration"
+msgstr "Канфігурацыя сеткі"
+
+#: ../lib/network/netconnect.pm:772
+#, c-format
+msgid "Zeroconf hostname resolution"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:773
+#, c-format
+msgid ""
+"If desired, enter a Zeroconf hostname.\n"
+"This is the name your machine will use to advertise any of\n"
+"its shared resources that are not managed by the network.\n"
+"It is not necessary on most networks."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:777
+#, fuzzy, c-format
+msgid "Zeroconf Host name"
+msgstr "Імя машыны"
+
+#: ../lib/network/netconnect.pm:778
+#, c-format
+msgid "Zeroconf host name must not contain a ."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:779
+#, c-format
+msgid ""
+"Because you are doing a network installation, your network is already "
+"configured.\n"
+"Click on Ok to keep your configuration, or cancel to reconfigure your "
+"Internet & Network connection.\n"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:782
+#, fuzzy, c-format
+msgid "The network needs to be restarted. Do you want to restart it?"
+msgstr "Зьмяненьні не былі захаваныя. Ці жадаеце працягнуць?"
+
+#: ../lib/network/netconnect.pm:783
+#, c-format
+msgid ""
+"A problem occurred while restarting the network: \n"
+"\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:784
+#, c-format
+msgid ""
+"We are now going to configure the %s connection.\n"
+"\n"
+"\n"
+"Press \"%s\" to continue."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:785
+#, fuzzy, c-format
+msgid "Configuration is complete, do you want to apply settings?"
+msgstr "Якую канфігурацыю Xorg вы жадаеце атрымаць?"
+
+#: ../lib/network/netconnect.pm:786
+#, c-format
+msgid ""
+"You have configured multiple ways to connect to the Internet.\n"
+"Choose the one you want to use.\n"
+"\n"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:787
+#, fuzzy, c-format
+msgid "Internet connection"
+msgstr "Сумеснае Інтэрнэт-злучэнне"
+
+#: ../lib/network/netconnect.pm:789
+#, fuzzy, c-format
+msgid "Configuring network device %s (driver %s)"
+msgstr "Настрйка драйверу Solaris"
+
+#: ../lib/network/netconnect.pm:790
+#, c-format
+msgid ""
+"The following protocols can be used to configure a LAN connection. Please "
+"choose the one you want to use."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:791
+#, c-format
+msgid ""
+"Please enter your host name.\n"
+"Your host name should be a fully-qualified host name,\n"
+"such as ``mybox.mylab.myco.com''.\n"
+"You may also enter the IP address of the gateway if you have one."
+msgstr ""
+"Увядзіце імя сваёй машыны (host).\n"
+"Імя вашай машыны павінна быць зададзена поўнасцю,\n"
+"напрыклад ‟mybox.mylab.myco.com”.\n"
+"Вы можаце таксама ўвесці IP адрас шлюзу, калі ён у вас ёсць."
+
+#: ../lib/network/netconnect.pm:796
+#, c-format
+msgid "Last but not least you can also type in your DNS server IP addresses."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:797
+#, fuzzy, c-format
+msgid "DNS server address should be in format 1.2.3.4"
+msgstr "IP адрас павінен быць у фармаце 1.2.3.4"
+
+#: ../lib/network/netconnect.pm:798 ../tools/drakconnect:689
+#, fuzzy, c-format
+msgid "Gateway address should be in format 1.2.3.4"
+msgstr "IP адрас павінен быць у фармаце 1.2.3.4"
+
+#: ../lib/network/netconnect.pm:799
+#, c-format
+msgid "Gateway device"
+msgstr "Прылада-шлюз"
+
+#: ../lib/network/netconnect.pm:813
+#, c-format
+msgid ""
+"An unexpected error has happened:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/network.pm:429
+#, c-format
+msgid "Proxies configuration"
+msgstr "Настройка proxy кэшуючых сэервераў"
+
+#: ../lib/network/network.pm:430
+#, c-format
+msgid ""
+"Here you can set up your proxies configuration (eg: http://"
+"my_caching_server:8080)"
+msgstr ""
+
+#: ../lib/network/network.pm:431
+#, c-format
+msgid "HTTP proxy"
+msgstr "HTTP proxy"
+
+#: ../lib/network/network.pm:432
+#, c-format
+msgid "Use HTTP proxy for HTTPS connections"
+msgstr ""
+
+#: ../lib/network/network.pm:433
+#, c-format
+msgid "HTTPS proxy"
+msgstr ""
+
+#: ../lib/network/network.pm:434
+#, c-format
+msgid "FTP proxy"
+msgstr "FTP proxy"
+
+#: ../lib/network/network.pm:435
+#, fuzzy, c-format
+msgid "No proxy for (comma separated list):"
+msgstr "Фарматаванне раздзелаў"
+
+#: ../lib/network/network.pm:440
+#, c-format
+msgid "Proxy should be http://..."
+msgstr "Proxy павінен быць http://..."
+
+#: ../lib/network/network.pm:441
+#, fuzzy, c-format
+msgid "Proxy should be http://... or https://..."
+msgstr "Proxy павінен быць http://..."
+
+#: ../lib/network/network.pm:442
+#, c-format
+msgid "URL should begin with 'ftp:' or 'http:'"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:61
+#, c-format
+msgid ""
+"Please select the interfaces that will be protected by the firewall.\n"
+"\n"
+"All interfaces directly connected to Internet should be selected,\n"
+"while interfaces connected to a local network may be unselected.\n"
+"\n"
+"Which interfaces should be protected?\n"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:136
+#, c-format
+msgid "Keep custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:137
+#, c-format
+msgid "Drop custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:142
+#, c-format
+msgid ""
+"Your firewall configuration has been manually edited and contains\n"
+"rules that may conflict with the configuration that has just been set up.\n"
+"What do you want to do?"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:134
+#, c-format
+msgid "Some components (%s) are required but aren't available for %s hardware."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:135
+#, c-format
+msgid "Some packages (%s) are required but aren't available."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:137
+#, c-format
+msgid ""
+"These packages can be found in Mandriva Club or in Mandriva commercial "
+"releases."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:138
+#, c-format
+msgid "The following component is missing: %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:140
+#, c-format
+msgid ""
+"The required files can also be installed from this URL:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:177 ../lib/network/thirdparty.pm:182
+#, fuzzy, c-format
+msgid "Use a floppy"
+msgstr "Захаванне на дыскету"
+
+#: ../lib/network/thirdparty.pm:178 ../lib/network/thirdparty.pm:185
+#, fuzzy, c-format
+msgid "Use my Windows partition"
+msgstr "Вылічэнне межаў файлавай сістэмы Windows"
+
+#: ../lib/network/thirdparty.pm:179
+#, c-format
+msgid "Select file"
+msgstr "Абярыце файл"
+
+#: ../lib/network/thirdparty.pm:190
+#, c-format
+msgid "Please select the firmware file (for example: %s)"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:214
+#, fuzzy, c-format
+msgid "Unable to find \"%s\" on your Windows system!"
+msgstr "У вашай сістэме няма ніводнага сеткавага адаптара!"
+
+#: ../lib/network/thirdparty.pm:216
+#, c-format
+msgid "No Windows system has been detected!"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:226
+#, fuzzy, c-format
+msgid "Insert floppy"
+msgstr "Усталёўка"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid ""
+"Insert a FAT formatted floppy in drive %s with %s in root directory and "
+"press %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid "Next"
+msgstr "Далей"
+
+#: ../lib/network/thirdparty.pm:237
+#, fuzzy, c-format
+msgid "Floppy access error, unable to mount device %s"
+msgstr "Куды вы жадаеце манціраваць прыладу %s?"
+
+#: ../lib/network/thirdparty.pm:319
+#, c-format
+msgid "Looking for required software and drivers..."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:330
+#, fuzzy, c-format
+msgid "Please wait, running device configuration commands..."
+msgstr "Канфігурацыя сыстэмы друку (прынтэры, заданьні, клясы, ...)"
+
+#: ../lib/network/vpn/openvpn.pm:107
+#, c-format
+msgid "X509 Public Key Infrastructure"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:108
+#, c-format
+msgid "Static Key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:115
+#, c-format
+msgid "Type"
+msgstr "Тып"
+
+#. -PO: please don't translate the CA acronym
+#: ../lib/network/vpn/openvpn.pm:142
+#, c-format
+msgid "Certificate Authority (CA)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:148
+#, c-format
+msgid "Certificate"
+msgstr "Сэртыфікат"
+
+#: ../lib/network/vpn/openvpn.pm:154
+#, c-format
+msgid "Key"
+msgstr "Клявіша"
+
+#: ../lib/network/vpn/openvpn.pm:160
+#, fuzzy, c-format
+msgid "TLS control channel key"
+msgstr "Кантролер гучнасьці"
+
+#: ../lib/network/vpn/openvpn.pm:167
+#, c-format
+msgid "Key direction"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:175
+#, c-format
+msgid "Authenticate using username and password"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:181
+#, c-format
+msgid "Check server certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:187
+#, c-format
+msgid "Cipher algorithm"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:191
+#, c-format
+msgid "Default"
+msgstr "Па дамаўленню"
+
+#: ../lib/network/vpn/openvpn.pm:195
+#, c-format
+msgid "Size of cipher key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:206
+#, fuzzy, c-format
+msgid "Get from server"
+msgstr "X сэервер"
+
+#: ../lib/network/vpn/openvpn.pm:216
+#, fuzzy, c-format
+msgid "Gateway port"
+msgstr "Шлюз"
+
+#: ../lib/network/vpn/openvpn.pm:227 ../tools/drakgw:176
+#, fuzzy, c-format
+msgid "Local IP address"
+msgstr "IP адрас"
+
+#: ../lib/network/vpn/openvpn.pm:232
+#, fuzzy, c-format
+msgid "Remote IP address"
+msgstr "IP адрас"
+
+#: ../lib/network/vpn/openvpn.pm:237
+#, fuzzy, c-format
+msgid "Use TCP protocol"
+msgstr "Пратакол"
+
+#: ../lib/network/vpn/openvpn.pm:243
+#, c-format
+msgid "Virtual network device type"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:250
+#, c-format
+msgid "Virtual network device number (optional)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:365
+#, c-format
+msgid "Starting connection.."
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:380
+#, c-format
+msgid "Please insert your token"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:9
+#, c-format
+msgid "Cisco VPN Concentrator"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:43
+#, fuzzy, c-format
+msgid "Group name"
+msgstr "ID групы"
+
+#: ../lib/network/vpn/vpnc.pm:47
+#, c-format
+msgid "Group secret"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:52
+#, c-format
+msgid "Username"
+msgstr "Карыстальнік"
+
+#: ../lib/network/vpn/vpnc.pm:61
+#, c-format
+msgid "Use Cisco-UDP encapsulation"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:67
+#, c-format
+msgid "Use specific UDP port"
+msgstr ""
+
+#: ../tools/drakconnect:81
+#, fuzzy, c-format
+msgid "Network configuration (%d adapters)"
+msgstr "Канфігурацыя сеткі"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Gateway:"
+msgstr "Шлюз:"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Interface:"
+msgstr "Інтэрфэйс:"
+
+#: ../tools/drakconnect:97 ../tools/net_monitor:119
+#, c-format
+msgid "Wait please"
+msgstr ""
+
+#: ../tools/drakconnect:113 ../tools/drakinvictus:105
+#, c-format
+msgid "Interface"
+msgstr "Інтэрфэйс"
+
+#: ../tools/drakconnect:113
+#, c-format
+msgid "State"
+msgstr "Стан"
+
+#: ../tools/drakconnect:130
+#, c-format
+msgid "Hostname: "
+msgstr "Імя машыны: "
+
+#: ../tools/drakconnect:132
+#, fuzzy, c-format
+msgid "Configure hostname..."
+msgstr "Настройка IDE"
+
+#: ../tools/drakconnect:146 ../tools/drakconnect:850
+#, fuzzy, c-format
+msgid "LAN configuration"
+msgstr "Настройка ISDN"
+
+#: ../tools/drakconnect:151
+#, fuzzy, c-format
+msgid "Configure Local Area Network..."
+msgstr "Настройка сеткі"
+
+#: ../tools/drakconnect:157 ../tools/drakconnect:240 ../tools/draknfs:181
+#, c-format
+msgid "Help"
+msgstr "Дапамога"
+
+#: ../tools/drakconnect:159 ../tools/drakconnect:241 ../tools/drakconnect:245
+#: ../tools/drakinvictus:140
+#, c-format
+msgid "Apply"
+msgstr "Применить"
+
+#: ../tools/drakconnect:161 ../tools/drakconnect:942 ../tools/drakconnect:1033
+#: ../tools/draknetprofile:106 ../tools/net_monitor:341
+#, c-format
+msgid "Cancel"
+msgstr "Адмена"
+
+#: ../tools/drakconnect:162 ../tools/drakconnect:857 ../tools/drakconnect:944
+#: ../tools/drakconnect:1034 ../tools/draknetprofile:108
+#: ../tools/net_monitor:342
+#, c-format
+msgid "Ok"
+msgstr "Ок"
+
+#: ../tools/drakconnect:164 ../tools/drakconnect:636 ../tools/drakgw:359
+#: ../tools/drakroam:251 ../tools/drakroam:289 ../tools/draksambashare:208
+#, c-format
+msgid "Please wait"
+msgstr "Калі ласка, пачакайце"
+
+#: ../tools/drakconnect:166 ../tools/drakconnect:638
+#, fuzzy, c-format
+msgid "Please Wait... Applying the configuration"
+msgstr "Праверка параметраў настройкі"
+
+#: ../tools/drakconnect:192
+#, c-format
+msgid "Manage connections"
+msgstr ""
+
+#: ../tools/drakconnect:219 ../tools/drakroam:302
+#, c-format
+msgid "Device: "
+msgstr "Прылада:"
+
+#: ../tools/drakconnect:302
+#, fuzzy, c-format
+msgid "IP configuration"
+msgstr "Канфігурацыя"
+
+#: ../tools/drakconnect:337
+#, fuzzy, c-format
+msgid "DNS servers"
+msgstr "CDDB сервакі"
+
+#: ../tools/drakconnect:343
+#, fuzzy, c-format
+msgid "Search Domain"
+msgstr "NIS Domain"
+
+#: ../tools/drakconnect:351 ../tools/drakvpn-old:837
+#, c-format
+msgid "none"
+msgstr "няма"
+
+#: ../tools/drakconnect:351
+#, fuzzy, c-format
+msgid "static"
+msgstr "Антарктыка"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "DHCP"
+msgstr ""
+
+#: ../tools/drakconnect:434
+#, c-format
+msgid "Start at boot"
+msgstr ""
+
+#: ../tools/drakconnect:516
+#, fuzzy, c-format
+msgid "Flow control"
+msgstr "Кантроль гуку"
+
+#: ../tools/drakconnect:517
+#, fuzzy, c-format
+msgid "Line termination"
+msgstr "Памеры і арыентацыя"
+
+#: ../tools/drakconnect:528
+#, c-format
+msgid "Modem timeout"
+msgstr ""
+
+#: ../tools/drakconnect:532
+#, fuzzy, c-format
+msgid "Use lock file"
+msgstr "Абярыце файл"
+
+#: ../tools/drakconnect:534
+#, c-format
+msgid "Wait for dialup tone before dialing"
+msgstr ""
+
+#: ../tools/drakconnect:537
+#, fuzzy, c-format
+msgid "Busy wait"
+msgstr "Калі ласка, пачакайце"
+
+#: ../tools/drakconnect:542
+#, fuzzy, c-format
+msgid "Modem sound"
+msgstr "Запісаць гукавы кліп"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Enable"
+msgstr "Уключыць"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Disable"
+msgstr "Выключыць"
+
+#: ../tools/drakconnect:592
+#, fuzzy, c-format
+msgid "Vendor"
+msgstr "Рэдактары"
+
+#: ../tools/drakconnect:593
+#, c-format
+msgid "Description"
+msgstr "Апісанне"
+
+#: ../tools/drakconnect:594
+#, c-format
+msgid "Media class"
+msgstr ""
+
+#: ../tools/drakconnect:595
+#, fuzzy, c-format
+msgid "Module name"
+msgstr "Назва файла"
+
+#: ../tools/drakconnect:596
+#, fuzzy, c-format
+msgid "Mac Address"
+msgstr "Адрасная кніга"
+
+#: ../tools/drakconnect:597
+#, c-format
+msgid "Bus"
+msgstr "Прац."
+
+#: ../tools/drakconnect:598
+#, c-format
+msgid "Location on the bus"
+msgstr ""
+
+#: ../tools/drakconnect:685 ../tools/drakconnect:766 ../tools/drakconnect:952
+#, c-format
+msgid "No IP"
+msgstr ""
+
+#: ../tools/drakconnect:686 ../tools/drakconnect:767
+#, c-format
+msgid "No Mask"
+msgstr ""
+
+#: ../tools/drakconnect:705 ../tools/drakgw:307
+#, c-format
+msgid ""
+"No ethernet network adapter has been detected on your system. Please run the "
+"hardware configuration tool."
+msgstr ""
+"Ні водны ethernet сеткавы адаптар у вашай сістэме не вызначаны. Калі ласка, "
+"скарыстайце канфігурацыйны інструмэнт."
+
+#: ../tools/drakconnect:714
+#, fuzzy, c-format
+msgid "Remove a network interface"
+msgstr "Пазначце сеткавы інтэрфейс"
+
+#: ../tools/drakconnect:718
+#, fuzzy, c-format
+msgid "Select the network interface to remove:"
+msgstr "Пазначце сеткавы інтэрфейс"
+
+#: ../tools/drakconnect:750
+#, c-format
+msgid ""
+"An error occurred while deleting the \"%s\" network interface:\n"
+"\n"
+"%s"
+msgstr ""
+
+#: ../tools/drakconnect:751
+#, c-format
+msgid ""
+"Congratulations, the \"%s\" network interface has been successfully deleted"
+msgstr ""
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, fuzzy, c-format
+msgid "up"
+msgstr "Скокнуць"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "down"
+msgstr ""
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Connected"
+msgstr "Далучаны"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Not connected"
+msgstr "Адлучаны"
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Disconnect..."
+msgstr ""
+
+#: ../tools/drakconnect:805
+#, fuzzy, c-format
+msgid "Connect..."
+msgstr "Настройка IDE"
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Deactivate now"
+msgstr ""
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Activate now"
+msgstr ""
+
+#: ../tools/drakconnect:854
+#, c-format
+msgid ""
+"You do not have any configured interface.\n"
+"Configure them first by clicking on 'Configure'"
+msgstr ""
+
+#: ../tools/drakconnect:868
+#, fuzzy, c-format
+msgid "LAN Configuration"
+msgstr "Канфігурацыя"
+
+#: ../tools/drakconnect:880
+#, c-format
+msgid "Adapter %s: %s"
+msgstr ""
+
+#: ../tools/drakconnect:889
+#, fuzzy, c-format
+msgid "Boot Protocol"
+msgstr "Пратакол"
+
+#: ../tools/drakconnect:890
+#, c-format
+msgid "Started on boot"
+msgstr ""
+
+#: ../tools/drakconnect:926
+#, c-format
+msgid ""
+"This interface has not been configured yet.\n"
+"Run the \"Add an interface\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+
+#: ../tools/drakconnect:974
+#, fuzzy, c-format
+msgid "Internet connection configuration"
+msgstr "Настройка далучэння да Інтэрнэту"
+
+#: ../tools/drakconnect:980 ../tools/net_applet:68
+#, c-format
+msgid ""
+"You do not have any configured Internet connection.\n"
+"Run the \"%s\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+
+#. -PO: here "Add Connection" should be translated the same was as in control-center
+#: ../tools/drakconnect:981 ../tools/net_applet:69
+#, fuzzy, c-format
+msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)"
+msgstr "Пазначце сеткавы інтэрфейс"
+
+#: ../tools/drakconnect:995
+#, fuzzy, c-format
+msgid "Host name (optional)"
+msgstr "Імя машыны"
+
+#: ../tools/drakconnect:998
+#, c-format
+msgid "Third DNS server (optional)"
+msgstr ""
+
+#: ../tools/drakconnect:1020
+#, fuzzy, c-format
+msgid "Internet Connection Configuration"
+msgstr "Настройка далучэння да Інтэрнэту"
+
+#: ../tools/drakconnect:1021
+#, c-format
+msgid "Internet access"
+msgstr ""
+
+#: ../tools/drakconnect:1023 ../tools/net_monitor:98
+#, fuzzy, c-format
+msgid "Connection type: "
+msgstr "Імя злучэння"
+
+#: ../tools/drakconnect:1026
+#, c-format
+msgid "Status:"
+msgstr "Стан:"
+
+#: ../tools/drakconnect:1031
+#, c-format
+msgid "Parameters"
+msgstr "Парамэтры"
+
+#: ../tools/drakgw:71
+#, c-format
+msgid "Internet Connection Sharing"
+msgstr "Сумеснае Інтэрнэт-злучэнне"
+
+#: ../tools/drakgw:75
+#, c-format
+msgid ""
+"You are about to configure your computer to share its Internet connection.\n"
+"With that feature, other computers on your local network will be able to use "
+"this computer's Internet connection.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using drakconnect "
+"before going any further.\n"
+"\n"
+"Note: you need a dedicated Network Adapter to set up a Local Area Network "
+"(LAN)."
+msgstr ""
+
+#: ../tools/drakgw:91
+#, c-format
+msgid ""
+"The setup of Internet Connection Sharing has already been done.\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakgw:95
+#, c-format
+msgid ""
+"The setup of Internet connection sharing has already been done.\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakgw:101
+#, fuzzy, c-format
+msgid "Reconfigure"
+msgstr "Настроіць панэль"
+
+#: ../tools/drakgw:122
+#, c-format
+msgid "Please select the network interface directly connected to the internet."
+msgstr ""
+
+#: ../tools/drakgw:141
+#, c-format
+msgid ""
+"There is only one configured network adapter on your system:\n"
+"\n"
+"%s\n"
+"\n"
+"I am about to setup your Local Area Network with that adapter."
+msgstr ""
+
+#: ../tools/drakgw:152
+#, c-format
+msgid ""
+"Please choose what network adapter will be connected to your Local Area "
+"Network."
+msgstr ""
+"Калі ласка, абярыце сеткавы адаптар, які будзе выкарыстаны для далучэння да "
+"вашай лакальнай сеткі."
+
+#: ../tools/drakgw:173
+#, fuzzy, c-format
+msgid "Local Area Network settings"
+msgstr "Прагляд лякальнай сеткі"
+
+#: ../tools/drakgw:178
+#, c-format
+msgid "The internal domain name"
+msgstr ""
+
+#: ../tools/drakgw:184
+#, c-format
+msgid "Potential LAN address conflict found in current config of %s!\n"
+msgstr "Патэнцыйны адрас ЛВС канфліктуе з бягучай канфігурацыяй %s!\n"
+
+#: ../tools/drakgw:200
+#, fuzzy, c-format
+msgid "Domain Name Server (DNS) configuration"
+msgstr "Сістэмнае адміністраваньне"
+
+#: ../tools/drakgw:204
+#, c-format
+msgid "Use this gateway as domain name server"
+msgstr ""
+
+#: ../tools/drakgw:205
+#, fuzzy, c-format
+msgid "The DNS Server IP"
+msgstr "IP сэервера SMB"
+
+#: ../tools/drakgw:232
+#, c-format
+msgid ""
+"DHCP Server Configuration.\n"
+"\n"
+"Here you can select different options for the DHCP server configuration.\n"
+"If you do not know the meaning of an option, simply leave it as it is."
+msgstr ""
+
+#: ../tools/drakgw:239
+#, fuzzy, c-format
+msgid "Use automatic configuration (DHCP)"
+msgstr "Аўтаматычнае вызначэнне"
+
+#: ../tools/drakgw:240
+#, c-format
+msgid "The DHCP start range"
+msgstr ""
+
+#: ../tools/drakgw:241
+#, c-format
+msgid "The DHCP end range"
+msgstr ""
+
+#: ../tools/drakgw:242
+#, c-format
+msgid "The default lease (in seconds)"
+msgstr ""
+
+#: ../tools/drakgw:243
+#, c-format
+msgid "The maximum lease (in seconds)"
+msgstr ""
+
+#: ../tools/drakgw:266
+#, c-format
+msgid "Proxy caching server (SQUID)"
+msgstr ""
+
+#: ../tools/drakgw:270
+#, c-format
+msgid "Use this gateway as proxy caching server"
+msgstr ""
+
+#: ../tools/drakgw:271
+#, c-format
+msgid "Admin mail"
+msgstr ""
+
+#: ../tools/drakgw:272
+#, fuzzy, c-format
+msgid "Visible hostname"
+msgstr "Выкарыстаць выдалены хост"
+
+#: ../tools/drakgw:273
+#, fuzzy, c-format
+msgid "Proxy port"
+msgstr "Якасьць"
+
+#: ../tools/drakgw:274
+#, fuzzy, c-format
+msgid "Cache size (MB)"
+msgstr "памер блоку"
+
+#: ../tools/drakgw:296
+#, fuzzy, c-format
+msgid "Broadcast printer information"
+msgstr "Канфігурацыя сістэмных сэрвісаў"
+
+#: ../tools/drakgw:313
+#, fuzzy, c-format
+msgid "Internet Connection Sharing is now enabled."
+msgstr "Сумеснае Інтэрнэт-злучэнне зараз магчыма"
+
+#: ../tools/drakgw:319
+#, fuzzy, c-format
+msgid "Internet Connection Sharing is now disabled."
+msgstr "Сумеснае Інтэрнэт-злучэнне зараз забаронена"
+
+#: ../tools/drakgw:325
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"You may now share Internet connection with other computers on your Local "
+"Area Network, using automatic network configuration (DHCP) and\n"
+" a Transparent Proxy Cache server (SQUID)."
+msgstr ""
+
+#: ../tools/drakgw:359
+#, fuzzy, c-format
+msgid "Disabling servers..."
+msgstr "Вызначэнне прыладаў..."
+
+#: ../tools/drakgw:373
+#, c-format
+msgid "Firewalling configuration detected!"
+msgstr "Знойдзена сістэма сеткавай бяспекі (firewall)!"
+
+#: ../tools/drakgw:374
+#, c-format
+msgid ""
+"Warning! An existing firewalling configuration has been detected. You may "
+"need some manual fixes after installation."
+msgstr ""
+"Увага! Знойдзена існуючая сістэма сеткавай бяспекі (firewall). Вам магчыма "
+"спатрэбіцца скарэктаваць яе пасля ўсталявання."
+
+#: ../tools/drakgw:379
+#, fuzzy, c-format
+msgid "Configuring..."
+msgstr "Настройка IDE"
+
+#: ../tools/drakgw:380
+#, c-format
+msgid "Configuring firewall..."
+msgstr ""
+
+#: ../tools/drakhosts:100
+#, c-format
+msgid "Please add an host to be able to modify it."
+msgstr ""
+
+#: ../tools/drakhosts:110
+#, fuzzy, c-format
+msgid "Please modify information"
+msgstr "Інфармацыя аб DMA"
+
+#: ../tools/drakhosts:111
+#, fuzzy, c-format
+msgid "Please delete information"
+msgstr "Інфармацыя аб DMA"
+
+#: ../tools/drakhosts:112
+#, fuzzy, c-format
+msgid "Please add information"
+msgstr "Інфармацыя аб DMA"
+
+#: ../tools/drakhosts:116
+#, c-format
+msgid "IP address:"
+msgstr "IP адрас:"
+
+#: ../tools/drakhosts:117
+#, c-format
+msgid "Host name:"
+msgstr "Назва вузла:"
+
+#: ../tools/drakhosts:118
+#, fuzzy, c-format
+msgid "Host Aliases:"
+msgstr "Імя машыны"
+
+#: ../tools/drakhosts:122 ../tools/drakhosts:128 ../tools/draksambashare:209
+#: ../tools/draksambashare:230 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Error!"
+msgstr "Памылка!"
+
+#: ../tools/drakhosts:122
+#, fuzzy, c-format
+msgid "Please enter a valid IP address."
+msgstr "IP адрас"
+
+#: ../tools/drakhosts:128
+#, fuzzy, c-format
+msgid "Same IP is already in %s file."
+msgstr "%s ужо знойдзены "
+
+#: ../tools/drakhosts:196
+#, fuzzy, c-format
+msgid "Host Aliases"
+msgstr "Імя машыны"
+
+#: ../tools/drakhosts:206 ../tools/drakhosts:236
+#, c-format
+msgid "Manage hosts definitions"
+msgstr ""
+
+#: ../tools/drakhosts:222 ../tools/drakhosts:249
+#, c-format
+msgid "Modify entry"
+msgstr ""
+
+#: ../tools/drakhosts:241 ../tools/draknfs:563 ../tools/draksambashare:1102
+#: ../tools/draksambashare:1133 ../tools/draksambashare:1164
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Add"
+msgstr "Дадаць"
+
+#: ../tools/drakhosts:242
+#, fuzzy, c-format
+msgid "Add entry"
+msgstr "Прынтэр"
+
+#: ../tools/drakhosts:245
+#, c-format
+msgid "Failed to add host."
+msgstr ""
+
+#: ../tools/drakhosts:248 ../tools/draknfs:570 ../tools/draksambashare:1059
+#: ../tools/draksambashare:1104 ../tools/draksambashare:1135
+#: ../tools/draksambashare:1172
+#, c-format
+msgid "Modify"
+msgstr "Зьмяненьне"
+
+#: ../tools/drakhosts:252
+#, c-format
+msgid "Failed to Modify host."
+msgstr ""
+
+#: ../tools/drakhosts:255 ../tools/drakids:87 ../tools/drakids:96
+#: ../tools/draknfs:577 ../tools/draksambashare:1060
+#: ../tools/draksambashare:1112 ../tools/draksambashare:1143
+#: ../tools/draksambashare:1180 ../tools/drakvpn-old:253
+#: ../tools/drakvpn-old:391
+#, c-format
+msgid "Remove"
+msgstr "Выдаліць"
+
+#: ../tools/drakhosts:259
+#, c-format
+msgid "Failed to remove host."
+msgstr ""
+
+#: ../tools/drakhosts:262 ../tools/drakinvictus:141
+#: ../tools/draknetprofile:147 ../tools/drakroam:309 ../tools/net_applet:138
+#, c-format
+msgid "Quit"
+msgstr "Выхад"
+
+#: ../tools/drakids:28
+#, fuzzy, c-format
+msgid "Allowed addresses"
+msgstr "Дадаць карыстальніка"
+
+#: ../tools/drakids:65 ../tools/drakids:181 ../tools/drakids:190
+#: ../tools/drakids:215 ../tools/drakids:224 ../tools/drakids:234
+#: ../tools/drakids:326 ../tools/net_applet:238 ../tools/net_applet:514
+#, fuzzy, c-format
+msgid "Unable to contact daemon"
+msgstr "Немагчыма адчыніць файл %s\n"
+
+#: ../tools/drakids:74 ../tools/drakids:102
+#, c-format
+msgid "Log"
+msgstr "Рэгістрацыя"
+
+#: ../tools/drakids:78 ../tools/drakids:97 ../tools/net_applet:659
+#, fuzzy, c-format
+msgid "Allow"
+msgstr "Усё"
+
+#: ../tools/drakids:79 ../tools/drakids:88 ../tools/net_applet:660
+#, fuzzy, c-format
+msgid "Block"
+msgstr "Заблякавана"
+
+#: ../tools/drakids:80 ../tools/drakids:89 ../tools/drakids:98
+#: ../tools/drakids:109 ../tools/drakids:122 ../tools/drakids:130
+#: ../tools/draknfs:186 ../tools/net_monitor:120
+#, c-format
+msgid "Close"
+msgstr "Зачыніць"
+
+#: ../tools/drakids:83
+#, fuzzy, c-format
+msgid "Allowed services"
+msgstr "Дадаць карыстальніка"
+
+#: ../tools/drakids:92
+#, fuzzy, c-format
+msgid "Blocked services"
+msgstr "Дрэнны файл рэзервовай копіі"
+
+#: ../tools/drakids:106
+#, fuzzy, c-format
+msgid "Clear logs"
+msgstr "Ачысціць усё"
+
+#: ../tools/drakids:107 ../tools/drakids:112 ../tools/net_applet:602
+#, c-format
+msgid "Blacklist"
+msgstr ""
+
+#: ../tools/drakids:108 ../tools/drakids:125 ../tools/net_applet:607
+#, c-format
+msgid "Whitelist"
+msgstr ""
+
+#: ../tools/drakids:116
+#, fuzzy, c-format
+msgid "Remove from blacklist"
+msgstr "Выдаліць з LVM"
+
+#: ../tools/drakids:117
+#, c-format
+msgid "Move to whitelist"
+msgstr ""
+
+#: ../tools/drakids:129
+#, fuzzy, c-format
+msgid "Remove from whitelist"
+msgstr "Выдаліць з LVM"
+
+#: ../tools/drakids:247
+#, c-format
+msgid "Date"
+msgstr "Дата"
+
+#: ../tools/drakids:248
+#, fuzzy, c-format
+msgid "Attacker"
+msgstr "Падрабязнасці"
+
+#: ../tools/drakids:249
+#, fuzzy, c-format
+msgid "Attack type"
+msgstr "Тып: "
+
+#: ../tools/drakids:250 ../tools/drakids:283
+#, c-format
+msgid "Service"
+msgstr "Паслуга"
+
+#: ../tools/drakids:251
+#, c-format
+msgid "Network interface"
+msgstr "Сеткавы інтэрфейс"
+
+#: ../tools/drakids:282
+#, c-format
+msgid "Application"
+msgstr "Дастасаваньне"
+
+#: ../tools/drakids:284
+#, c-format
+msgid "Status"
+msgstr "Статус"
+
+#: ../tools/drakids:286
+#, fuzzy, c-format
+msgid "Allowed"
+msgstr "Усё"
+
+#: ../tools/drakids:287
+#, c-format
+msgid "Blocked"
+msgstr "Заблякавана"
+
+#: ../tools/drakinvictus:36
+#, c-format
+msgid "Invictus Firewall"
+msgstr ""
+
+#: ../tools/drakinvictus:53
+#, c-format
+msgid "Start as master"
+msgstr ""
+
+#: ../tools/drakinvictus:72
+#, fuzzy, c-format
+msgid "A password is required."
+msgstr "Настроіць паролі"
+
+#: ../tools/drakinvictus:100
+#, c-format
+msgid ""
+"This tool allows to set up network interfaces failover and firewall "
+"replication."
+msgstr ""
+
+#: ../tools/drakinvictus:102
+#, c-format
+msgid "Network redundancy (leave empty if interface is not used)"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Real address"
+msgstr "Адрасная кніга"
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual shared address"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual ID"
+msgstr ""
+
+#: ../tools/drakinvictus:114
+#, fuzzy, c-format
+msgid "Firewall replication"
+msgstr "Памеры экрану"
+
+#: ../tools/drakinvictus:116
+#, c-format
+msgid "Synchronize firewall conntrack tables"
+msgstr ""
+
+#: ../tools/drakinvictus:123
+#, fuzzy, c-format
+msgid "Synchronization network interface"
+msgstr "Канфігурацыя сістэмных сэрвісаў"
+
+#: ../tools/drakinvictus:132
+#, fuzzy, c-format
+msgid "Connection mark bit"
+msgstr "Імя злучэння"
+
+#: ../tools/draknetprofile:36
+#, fuzzy, c-format
+msgid "Network profiles"
+msgstr "Сетка"
+
+#: ../tools/draknetprofile:67
+#, c-format
+msgid "Profile"
+msgstr "Профіль"
+
+#: ../tools/draknetprofile:99
+#, fuzzy, c-format
+msgid "New profile..."
+msgstr "Захаваць спіс"
+
+#: ../tools/draknetprofile:102
+#, c-format
+msgid ""
+"Name of the profile to create (the new profile is created as a copy of the "
+"current one):"
+msgstr ""
+
+#: ../tools/draknetprofile:113
+#, c-format
+msgid "The \"%s\" profile already exists!"
+msgstr ""
+
+#: ../tools/draknetprofile:129
+#, c-format
+msgid "You can not delete the default profile"
+msgstr ""
+
+#: ../tools/draknetprofile:131
+#, c-format
+msgid "You can not delete the current profile"
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid ""
+"This tool allows to activate an existing network profile, and to manage "
+"(clone, delete) profiles."
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid "To modify a profile, you have to activate it first."
+msgstr ""
+
+#: ../tools/draknetprofile:144
+#, fuzzy, c-format
+msgid "Activate"
+msgstr "Стан"
+
+#: ../tools/draknetprofile:145
+#, c-format
+msgid "Clone"
+msgstr "Клянаваньне"
+
+#: ../tools/draknetprofile:146
+#, c-format
+msgid "Delete"
+msgstr "Знішчыць"
+
+#: ../tools/draknfs:41
+#, c-format
+msgid "map root user as anonymous"
+msgstr ""
+
+#: ../tools/draknfs:42
+#, c-format
+msgid "map all users to anonymous user"
+msgstr ""
+
+#: ../tools/draknfs:43
+#, c-format
+msgid "No user UID mapping"
+msgstr ""
+
+#: ../tools/draknfs:44
+#, c-format
+msgid "allow real remote root access"
+msgstr ""
+
+#: ../tools/draknfs:58 ../tools/draknfs:59 ../tools/draknfs:60
+#: ../tools/draksambashare:161 ../tools/draksambashare:162
+#: ../tools/draksambashare:163
+#, c-format
+msgid "/_File"
+msgstr "/_Файл"
+
+#: ../tools/draknfs:59 ../tools/draksambashare:162
+#, c-format
+msgid "/_Write conf"
+msgstr ""
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "/_Quit"
+msgstr "/_Выйсьці"
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "<control>Q"
+msgstr "<control>Q"
+
+#: ../tools/draknfs:63 ../tools/draknfs:64 ../tools/draknfs:65
+#, fuzzy, c-format
+msgid "/_NFS Server"
+msgstr "NIS сэервер:"
+
+#: ../tools/draknfs:64 ../tools/draksambashare:166
+#, c-format
+msgid "/_Restart"
+msgstr ""
+
+#: ../tools/draknfs:65 ../tools/draksambashare:167
+#, c-format
+msgid "/R_eload"
+msgstr ""
+
+#: ../tools/draknfs:84
+#, fuzzy, c-format
+msgid "NFS server"
+msgstr "NIS сэервер:"
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "Restarting/Reloading NFS server..."
+msgstr ""
+
+#: ../tools/draknfs:85
+#, c-format
+msgid "Error Restarting/Reloading NFS server"
+msgstr ""
+
+#: ../tools/draknfs:101 ../tools/draksambashare:225
+#, fuzzy, c-format
+msgid "Directory Selection"
+msgstr "Накірунак"
+
+#: ../tools/draknfs:106 ../tools/draksambashare:230
+#, c-format
+msgid "Should be a directory."
+msgstr ""
+
+#: ../tools/draknfs:137
+#, c-format
+msgid ""
+"<span weight=\"bold\">NFS clients</span> may be specified in a number of "
+"ways:\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">single host:</span> a host either by an "
+"abbreviated name recognized be the resolver, fully qualified domain name, or "
+"an IP address\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">netgroups:</span> NIS netgroups may be given "
+"as @group.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">wildcards:</span> machine names may contain "
+"the wildcard characters * and ?. For instance: *.cs.foo.edu matches all "
+"hosts in the domain cs.foo.edu.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">IP networks:</span> you can also export "
+"directories to all hosts on an IP (sub-)network simultaneously. for example, "
+"either `/255.255.252.0' or `/22' appended to the network base address "
+"result.\n"
+msgstr ""
+
+#: ../tools/draknfs:152
+#, c-format
+msgid ""
+"<span weight=\"bold\">User ID options</span>\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map root user as anonymous:</span> map "
+"requests from uid/gid 0 to the anonymous uid/gid (root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">allow real remote root access:</span> turn "
+"off root squashing. This option is mainly useful for diskless clients "
+"(no_root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map all users to anonymous user:</span> map "
+"all uids and gids to the anonymous user (all_squash). Useful for NFS-"
+"exported public FTP directories, news spool directories, etc. The opposite "
+"option is no user UID mapping (no_all_squash), which is the default "
+"setting.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">anonuid and anongid:</span> explicitly set "
+"the uid and gid of the anonymous account.\n"
+msgstr ""
+
+#: ../tools/draknfs:168
+#, c-format
+msgid "Synchronous access:"
+msgstr ""
+
+#: ../tools/draknfs:169
+#, fuzzy, c-format
+msgid "Secured Connection:"
+msgstr "Сумеснае Інтэрнэт-злучэнне"
+
+#: ../tools/draknfs:170
+#, c-format
+msgid "Read-Only share:"
+msgstr ""
+
+#: ../tools/draknfs:172
+#, c-format
+msgid "Advanced Options"
+msgstr ""
+
+#: ../tools/draknfs:173
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> this option requires that requests "
+"originate on an internet port less than IPPORT_RESERVED (1024). This option "
+"is on by default."
+msgstr ""
+
+#: ../tools/draknfs:174
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> allow either only read or both "
+"read and write requests on this NFS volume. The default is to disallow any "
+"request which changes the filesystem. This can also be made explicit by "
+"using this option."
+msgstr ""
+
+#: ../tools/draknfs:175
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> disallows the NFS server to "
+"violate the NFS protocol and to reply to requests before any changes made by "
+"these requests have been committed to stable storage (e.g. disc drive)."
+msgstr ""
+
+#: ../tools/draknfs:180 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Information"
+msgstr "Інфармацыя"
+
+#: ../tools/draknfs:260
+#, c-format
+msgid "Directory"
+msgstr "Каталёг"
+
+#: ../tools/draknfs:264
+#, c-format
+msgid "Draknfs entry"
+msgstr ""
+
+#: ../tools/draknfs:273
+#, c-format
+msgid "Please add an NFS share to be able to modify it."
+msgstr ""
+
+#: ../tools/draknfs:357
+#, c-format
+msgid "NFS directory"
+msgstr ""
+
+#: ../tools/draknfs:358 ../tools/draksambashare:361
+#: ../tools/draksambashare:570 ../tools/draksambashare:749
+#, c-format
+msgid "Directory:"
+msgstr "Каталёг:"
+
+#: ../tools/draknfs:359
+#, fuzzy, c-format
+msgid "Host access"
+msgstr "Імя машыны"
+
+#: ../tools/draknfs:360
+#, c-format
+msgid "Access:"
+msgstr ""
+
+#: ../tools/draknfs:361
+#, c-format
+msgid "User ID Mapping"
+msgstr ""
+
+#: ../tools/draknfs:362
+#, c-format
+msgid "User ID:"
+msgstr ""
+
+#: ../tools/draknfs:363
+#, c-format
+msgid "Anonymous user ID:"
+msgstr ""
+
+#: ../tools/draknfs:364
+#, c-format
+msgid "Anonymous Group ID:"
+msgstr ""
+
+#: ../tools/draknfs:400
+#, fuzzy, c-format
+msgid "Please specify a directory to share."
+msgstr "Пазначце ня менш адной групы для карыстальніка"
+
+#: ../tools/draknfs:402
+#, c-format
+msgid "Can't create this directory."
+msgstr ""
+
+#: ../tools/draknfs:405
+#, c-format
+msgid "You must specify hosts access."
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Share Directory"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Hosts Wildcard"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "General Options"
+msgstr "Агульныя парамэтры"
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Custom Options"
+msgstr ""
+
+#: ../tools/draknfs:497 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Please enter a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:504
+#, c-format
+msgid "Please use the modify button to set right access."
+msgstr ""
+
+#: ../tools/draknfs:519
+#, c-format
+msgid "Manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:558
+#, c-format
+msgid "DrakNFS manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:567
+#, c-format
+msgid "Failed to add NFS share."
+msgstr ""
+
+#: ../tools/draknfs:574
+#, c-format
+msgid "Failed to Modify NFS share."
+msgstr ""
+
+#: ../tools/draknfs:581
+#, c-format
+msgid "Failed to remove an NFS share."
+msgstr ""
+
+#: ../tools/drakproxy:36
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr ""
+
+#: ../tools/drakroam:61
+#, fuzzy, c-format
+msgid "No device found"
+msgstr "Няма значкі"
+
+#: ../tools/drakroam:86 ../tools/drakroam:217
+#, fuzzy, c-format
+msgid "Please enter settings for network"
+msgstr "Інфармацыя аб DMA"
+
+#: ../tools/drakroam:115
+#, c-format
+msgid "SSID"
+msgstr ""
+
+#: ../tools/drakroam:116
+#, c-format
+msgid "Signal strength"
+msgstr ""
+
+#: ../tools/drakroam:118
+#, c-format
+msgid "Encryption"
+msgstr "Шыфраваньне"
+
+#: ../tools/drakroam:131
+#, c-format
+msgid "Hostname changed to \"%s\""
+msgstr ""
+
+#: ../tools/drakroam:251
+#, c-format
+msgid "Connecting..."
+msgstr "Далучэньне..."
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Disconnect"
+msgstr "Адлучаць"
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Connect"
+msgstr "Далучэньне"
+
+#: ../tools/drakroam:289
+#, fuzzy, c-format
+msgid "Disconnecting..."
+msgstr "Настройка IDE"
+
+#: ../tools/drakroam:306
+#, c-format
+msgid "Configure"
+msgstr "Настройка"
+
+#: ../tools/drakroam:308
+#, c-format
+msgid "Refresh"
+msgstr "Аднавіць"
+
+#: ../tools/draksambashare:63
+#, c-format
+msgid "User name"
+msgstr "Імя карыстальніку:"
+
+#: ../tools/draksambashare:70
+#, c-format
+msgid "Share name"
+msgstr "Імя для размеркаванага рэсурсу"
+
+#: ../tools/draksambashare:71
+#, fuzzy, c-format
+msgid "Share directory"
+msgstr "Ня тэчка"
+
+#: ../tools/draksambashare:72 ../tools/draksambashare:105
+#, c-format
+msgid "Comment"
+msgstr "Камэнтар"
+
+#: ../tools/draksambashare:73 ../tools/draksambashare:106
+#, fuzzy, c-format
+msgid "Browseable"
+msgstr "Прагляд"
+
+#: ../tools/draksambashare:74
+#, c-format
+msgid "Public"
+msgstr "Агульны"
+
+#: ../tools/draksambashare:75 ../tools/draksambashare:111
+#, fuzzy, c-format
+msgid "Writable"
+msgstr "Запіс"
+
+#: ../tools/draksambashare:76 ../tools/draksambashare:152
+#, fuzzy, c-format
+msgid "Create mask"
+msgstr "Стварыць"
+
+#: ../tools/draksambashare:77 ../tools/draksambashare:153
+#, fuzzy, c-format
+msgid "Directory mask"
+msgstr "Каталог %s Так"
+
+#: ../tools/draksambashare:78
+#, fuzzy, c-format
+msgid "Read list"
+msgstr "Чытаньне"
+
+#: ../tools/draksambashare:79 ../tools/draksambashare:112
+#: ../tools/draksambashare:584
+#, fuzzy, c-format
+msgid "Write list"
+msgstr "Запіс"
+
+#: ../tools/draksambashare:80 ../tools/draksambashare:144
+#, fuzzy, c-format
+msgid "Admin users"
+msgstr "Дадаць карыстальніка"
+
+#: ../tools/draksambashare:81 ../tools/draksambashare:145
+#, fuzzy, c-format
+msgid "Valid users"
+msgstr "Дадаць карыстальніка"
+
+#: ../tools/draksambashare:82
+#, fuzzy, c-format
+msgid "Inherit Permissions"
+msgstr "Правы доступу"
+
+#: ../tools/draksambashare:83 ../tools/draksambashare:146
+#, fuzzy, c-format
+msgid "Hide dot files"
+msgstr "Загрузіць файл(ы)"
+
+#: ../tools/draksambashare:84 ../tools/draksambashare:147
+#, fuzzy, c-format
+msgid "Hide files"
+msgstr "Загрузіць файл(ы)"
+
+#: ../tools/draksambashare:85 ../tools/draksambashare:151
+#, fuzzy, c-format
+msgid "Preserve case"
+msgstr "Усталяваньні"
+
+#: ../tools/draksambashare:86
+#, c-format
+msgid "Force create mode"
+msgstr ""
+
+#: ../tools/draksambashare:87
+#, fuzzy, c-format
+msgid "Force group"
+msgstr "Працоўная група"
+
+#: ../tools/draksambashare:88 ../tools/draksambashare:150
+#, fuzzy, c-format
+msgid "Default case"
+msgstr "Па ўмаўчанні (%s)"
+
+#: ../tools/draksambashare:103
+#, c-format
+msgid "Printer name"
+msgstr "Назва друкаркі"
+
+#: ../tools/draksambashare:104
+#, c-format
+msgid "Path"
+msgstr "Шлях:"
+
+#: ../tools/draksambashare:107 ../tools/draksambashare:576
+#, c-format
+msgid "Printable"
+msgstr "Здольны друкавацца"
+
+#: ../tools/draksambashare:108
+#, fuzzy, c-format
+msgid "Print Command"
+msgstr "Каманда"
+
+#: ../tools/draksambashare:109
+#, fuzzy, c-format
+msgid "LPQ command"
+msgstr "Каманда"
+
+#: ../tools/draksambashare:110
+#, c-format
+msgid "Guest ok"
+msgstr ""
+
+#: ../tools/draksambashare:113 ../tools/draksambashare:154
+#: ../tools/draksambashare:585
+#, fuzzy, c-format
+msgid "Inherit permissions"
+msgstr "Правы доступу"
+
+#: ../tools/draksambashare:114
+#, c-format
+msgid "Printing"
+msgstr "Друкаваньне"
+
+#: ../tools/draksambashare:115
+#, fuzzy, c-format
+msgid "Create mode"
+msgstr "Рэжым прайгравання"
+
+#: ../tools/draksambashare:116
+#, fuzzy, c-format
+msgid "Use client driver"
+msgstr "X сэервер"
+
+#: ../tools/draksambashare:142
+#, fuzzy, c-format
+msgid "Read List"
+msgstr "Выдаліць сьпіс"
+
+#: ../tools/draksambashare:143
+#, fuzzy, c-format
+msgid "Write List"
+msgstr "Запіс"
+
+#: ../tools/draksambashare:148
+#, fuzzy, c-format
+msgid "Force Group"
+msgstr "Група"
+
+#: ../tools/draksambashare:149
+#, c-format
+msgid "Force create group"
+msgstr ""
+
+#: ../tools/draksambashare:165 ../tools/draksambashare:166
+#: ../tools/draksambashare:167
+#, fuzzy, c-format
+msgid "/_Samba Server"
+msgstr "Сервак"
+
+#: ../tools/draksambashare:169 ../tools/draksambashare:170
+#, c-format
+msgid "/_About"
+msgstr "/_Пра праграму"
+
+#: ../tools/draksambashare:169
+#, c-format
+msgid "/_Report Bug"
+msgstr "/_Паведаміць пра памылку"
+
+#: ../tools/draksambashare:170
+#, c-format
+msgid "/About..."
+msgstr ""
+
+#: ../tools/draksambashare:173
+#, c-format
+msgid "Draksambashare"
+msgstr ""
+
+#: ../tools/draksambashare:175
+#, c-format
+msgid "Copyright (C) %s by Mandriva"
+msgstr ""
+
+#: ../tools/draksambashare:177
+#, c-format
+msgid "This is a simple tool to easily manage Samba configuration."
+msgstr ""
+
+#: ../tools/draksambashare:179
+#, fuzzy, c-format
+msgid "Mandriva Linux"
+msgstr "Цэнтар кіраваньня"
+
+#. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+#: ../tools/draksambashare:184
+#, c-format
+msgid "_: Translator(s) name(s) & email(s)\n"
+msgstr ""
+
+#: ../tools/draksambashare:208
+#, c-format
+msgid "Restarting/Reloading Samba server..."
+msgstr ""
+
+#: ../tools/draksambashare:209
+#, c-format
+msgid "Error Restarting/Reloading Samba server"
+msgstr ""
+
+#: ../tools/draksambashare:349 ../tools/draksambashare:549
+#: ../tools/draksambashare:670
+#, c-format
+msgid "Open"
+msgstr "Адчыніць"
+
+#: ../tools/draksambashare:352
+#, c-format
+msgid "DrakSamba add entry"
+msgstr ""
+
+#: ../tools/draksambashare:356
+#, fuzzy, c-format
+msgid "Add a share"
+msgstr "Дадаць карыстальніка"
+
+#: ../tools/draksambashare:359
+#, fuzzy, c-format
+msgid "Name of the share:"
+msgstr "Імя друкаркі"
+
+#: ../tools/draksambashare:360 ../tools/draksambashare:569
+#: ../tools/draksambashare:750
+#, c-format
+msgid "Comment:"
+msgstr "Камэнтар:"
+
+#: ../tools/draksambashare:372
+#, c-format
+msgid ""
+"Share with the same name already exist or share name empty, please choose "
+"another name."
+msgstr ""
+
+#: ../tools/draksambashare:379
+#, c-format
+msgid "Can't create the directory, please enter a correct path."
+msgstr ""
+
+#: ../tools/draksambashare:382 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Please enter a Comment for this share."
+msgstr ""
+
+#: ../tools/draksambashare:413
+#, c-format
+msgid "pdf-gen - a PDF generator"
+msgstr ""
+
+#: ../tools/draksambashare:414
+#, c-format
+msgid "printers - all printers available"
+msgstr ""
+
+#: ../tools/draksambashare:418
+#, c-format
+msgid "Add Special Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:421
+#, c-format
+msgid ""
+"Goal of this wizard is to easily create a new special printer Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:428
+#, c-format
+msgid "A PDF generator already exists."
+msgstr ""
+
+#: ../tools/draksambashare:452
+#, c-format
+msgid "Printers and print$ already exist."
+msgstr ""
+
+#: ../tools/draksambashare:502
+#, fuzzy, c-format
+msgid "Congratulations"
+msgstr "Прыміце віншаванні!"
+
+#: ../tools/draksambashare:503
+#, c-format
+msgid "The wizard successfully added the printer Samba share"
+msgstr ""
+
+#: ../tools/draksambashare:518
+#, c-format
+msgid "Failed to add printers."
+msgstr ""
+
+#: ../tools/draksambashare:533
+#, c-format
+msgid "Please add or select a Samba printer share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:552
+#, c-format
+msgid "DrakSamba Printers entry"
+msgstr ""
+
+#: ../tools/draksambashare:565
+#, c-format
+msgid "Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:568
+#, c-format
+msgid "Printer name:"
+msgstr "Імя прынтэра:"
+
+#: ../tools/draksambashare:574 ../tools/draksambashare:755
+#, fuzzy, c-format
+msgid "Writable:"
+msgstr "Запіс"
+
+#: ../tools/draksambashare:575 ../tools/draksambashare:756
+#, fuzzy, c-format
+msgid "Browseable:"
+msgstr "Прагляд"
+
+#: ../tools/draksambashare:580
+#, c-format
+msgid "Advanced options"
+msgstr ""
+
+#: ../tools/draksambashare:582
+#, fuzzy, c-format
+msgid "Printer access"
+msgstr "Інтэрфэйс"
+
+#: ../tools/draksambashare:586
+#, c-format
+msgid "Guest ok:"
+msgstr ""
+
+#: ../tools/draksambashare:587
+#, fuzzy, c-format
+msgid "Create mode:"
+msgstr "Рэжым прайгравання"
+
+#: ../tools/draksambashare:591
+#, c-format
+msgid "Printer command"
+msgstr ""
+
+#: ../tools/draksambashare:593
+#, c-format
+msgid "Print command:"
+msgstr ""
+
+#: ../tools/draksambashare:594
+#, fuzzy, c-format
+msgid "LPQ command:"
+msgstr "Каманда"
+
+#: ../tools/draksambashare:595
+#, fuzzy, c-format
+msgid "Printing:"
+msgstr "Увага!"
+
+#: ../tools/draksambashare:611
+#, c-format
+msgid "create mode should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:673
+#, c-format
+msgid "DrakSamba entry"
+msgstr ""
+
+#: ../tools/draksambashare:678
+#, c-format
+msgid "Please add or select a Samba share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:701
+#, fuzzy, c-format
+msgid "Samba user access"
+msgstr "NIS сэервер:"
+
+#: ../tools/draksambashare:709
+#, fuzzy, c-format
+msgid "Mask options"
+msgstr "Захаваць усталёўкі"
+
+#: ../tools/draksambashare:723
+#, fuzzy, c-format
+msgid "Display options"
+msgstr "Пазначце параметры"
+
+#: ../tools/draksambashare:745
+#, fuzzy, c-format
+msgid "Samba share directory"
+msgstr "Ня тэчка"
+
+#: ../tools/draksambashare:748
+#, fuzzy, c-format
+msgid "Share name:"
+msgstr "Імя для размеркаванага рэсурсу"
+
+#: ../tools/draksambashare:754
+#, c-format
+msgid "Public:"
+msgstr "Публічны:"
+
+#: ../tools/draksambashare:778
+#, c-format
+msgid ""
+"Create mask, create mode and directory mask should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:785
+#, c-format
+msgid "Please create this Samba user: %s"
+msgstr ""
+
+#: ../tools/draksambashare:889
+#, c-format
+msgid "Add Samba user"
+msgstr ""
+
+#: ../tools/draksambashare:904
+#, c-format
+msgid "User information"
+msgstr "Зьвесткі аб карыстальніке"
+
+#: ../tools/draksambashare:906
+#, c-format
+msgid "User name:"
+msgstr "Імя карыстальніка(цы):"
+
+#: ../tools/draksambashare:907
+#, c-format
+msgid "Password:"
+msgstr "Пароль:"
+
+#: ../tools/draksambashare:1021
+#, fuzzy, c-format
+msgid "Manage Samba configuration"
+msgstr "Канфігурацыя"
+
+#: ../tools/draksambashare:1109
+#, c-format
+msgid "Failed to Modify Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1118
+#, c-format
+msgid "Failed to remove a Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1125
+#, c-format
+msgid "File share"
+msgstr ""
+
+#: ../tools/draksambashare:1140
+#, c-format
+msgid "Failed to Modify."
+msgstr ""
+
+#: ../tools/draksambashare:1149
+#, c-format
+msgid "Failed to remove."
+msgstr ""
+
+#: ../tools/draksambashare:1156
+#, c-format
+msgid "Printers"
+msgstr "Прынтэры"
+
+#: ../tools/draksambashare:1168
+#, c-format
+msgid "Failed to add user."
+msgstr ""
+
+#: ../tools/draksambashare:1177
+#, c-format
+msgid "Failed to change user password."
+msgstr ""
+
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Failed to delete user."
+msgstr ""
+
+#: ../tools/draksambashare:1194
+#, fuzzy, c-format
+msgid "Userdrake"
+msgstr "Карыстальнік"
+
+#: ../tools/draksambashare:1202
+#, c-format
+msgid "Samba Users"
+msgstr ""
+
+#: ../tools/draksambashare:1211
+#, c-format
+msgid "DrakSamba manage Samba shares"
+msgstr ""
+
+#: ../tools/drakvpn-old:65
+#, c-format
+msgid "DrakVPN"
+msgstr ""
+
+#: ../tools/drakvpn-old:87
+#, c-format
+msgid "The VPN connection is enabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:88
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:93
+#, c-format
+msgid "disable"
+msgstr ""
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119
+#, c-format
+msgid "reconfigure"
+msgstr ""
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119 ../tools/drakvpn-old:432
+#, c-format
+msgid "dismiss"
+msgstr ""
+
+#: ../tools/drakvpn-old:97
+#, c-format
+msgid "Disabling VPN..."
+msgstr ""
+
+#: ../tools/drakvpn-old:106
+#, c-format
+msgid "The VPN connection is now disabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:113
+#, c-format
+msgid "VPN connection currently disabled"
+msgstr ""
+
+#: ../tools/drakvpn-old:114
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:119
+#, c-format
+msgid "enable"
+msgstr ""
+
+#: ../tools/drakvpn-old:127
+#, c-format
+msgid "Enabling VPN..."
+msgstr ""
+
+#: ../tools/drakvpn-old:133
+#, c-format
+msgid "The VPN connection is now enabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:147 ../tools/drakvpn-old:164
+#, c-format
+msgid "Simple VPN setup."
+msgstr ""
+
+#: ../tools/drakvpn-old:148
+#, c-format
+msgid ""
+"You are about to configure your computer to use a VPN connection.\n"
+"\n"
+"With this feature, computers on your local private network and computers\n"
+"on some other remote private networks, can share resources, through\n"
+"their respective firewalls, over the Internet, in a secure manner. \n"
+"\n"
+"The communication over the Internet is encrypted. The local and remote\n"
+"computers look as if they were on the same network.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using\n"
+"drakconnect before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:165
+#, c-format
+msgid ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:208
+#, c-format
+msgid "Problems installing package %s"
+msgstr "Праблемы з усталяваннем пакету %s"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "Security Policies"
+msgstr ""
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "IKE daemon racoon"
+msgstr ""
+
+#: ../tools/drakvpn-old:224
+#, c-format
+msgid "Configuration file"
+msgstr ""
+
+#: ../tools/drakvpn-old:225
+#, c-format
+msgid ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:245 ../tools/drakvpn-old:382
+#, c-format
+msgid "%s entries"
+msgstr ""
+
+#: ../tools/drakvpn-old:246
+#, c-format
+msgid ""
+"The %s file contents\n"
+"is divided into sections.\n"
+"\n"
+"You can now:\n"
+"\n"
+" - display, add, edit, or remove sections, then\n"
+" - commit the changes\n"
+"\n"
+"What would you like to do?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display"
+msgstr ""
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Edit"
+msgstr "Рэдагаваць"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Commit"
+msgstr "Фіксацыя"
+
+#: ../tools/drakvpn-old:267 ../tools/drakvpn-old:271 ../tools/drakvpn-old:406
+#: ../tools/drakvpn-old:410
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display configuration"
+msgstr ""
+
+#: ../tools/drakvpn-old:272
+#, c-format
+msgid ""
+"The %s file does not exist.\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose 'add'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:301
+#, c-format
+msgid ""
+"Add a Security Policy.\n"
+"\n"
+"You can now add a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:333 ../tools/drakvpn-old:523
+#, c-format
+msgid "Edit section"
+msgstr ""
+
+#: ../tools/drakvpn-old:334
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to edit \n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:337 ../tools/drakvpn-old:357 ../tools/drakvpn-old:528
+#: ../tools/drakvpn-old:574
+#, c-format
+msgid "Section names"
+msgstr ""
+
+#: ../tools/drakvpn-old:344
+#, c-format
+msgid ""
+"Edit a Security Policy.\n"
+"\n"
+"You can now edit a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:353 ../tools/drakvpn-old:570
+#, c-format
+msgid "Remove section"
+msgstr ""
+
+#: ../tools/drakvpn-old:354 ../tools/drakvpn-old:571
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to remove\n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:383
+#, c-format
+msgid ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+msgstr ""
+
+#: ../tools/drakvpn-old:411
+#, c-format
+msgid ""
+"The %s file does not exist\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose configure.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:425
+#, c-format
+msgid "racoon.conf entries"
+msgstr ""
+
+#: ../tools/drakvpn-old:426
+#, c-format
+msgid ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "path"
+msgstr ""
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "remote"
+msgstr ""
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "sainfo"
+msgstr ""
+
+#: ../tools/drakvpn-old:440
+#, c-format
+msgid ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+msgstr ""
+
+#: ../tools/drakvpn-old:443
+#, c-format
+msgid "path type"
+msgstr ""
+
+#: ../tools/drakvpn-old:447
+#, c-format
+msgid ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+msgstr ""
+
+#: ../tools/drakvpn-old:467 ../tools/drakvpn-old:560
+#, c-format
+msgid "real file"
+msgstr ""
+
+#: ../tools/drakvpn-old:490
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:507
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:524
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here in the list below the one you want\n"
+"to edit and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:535
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"\n"
+"You can now edit the remote section entries.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:544
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"You can now edit the sainfo section entries.\n"
+"\n"
+"Choose continue when you are done to write the data."
+msgstr ""
+
+#: ../tools/drakvpn-old:552
+#, c-format
+msgid ""
+"This section has to be on top of your\n"
+"%s file.\n"
+"\n"
+"Make sure all other sections follow these path\n"
+"sections.\n"
+"\n"
+"You can now edit the path entries.\n"
+"\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:559
+#, c-format
+msgid "path_type"
+msgstr ""
+
+#: ../tools/drakvpn-old:599
+#, c-format
+msgid "Congratulations!"
+msgstr "Прыміце віншаванні!"
+
+#: ../tools/drakvpn-old:600
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"\n"
+"You may now share resources through the Internet,\n"
+"in a secure way, using a VPN connection.\n"
+"\n"
+"You should make sure that the tunnels shorewall\n"
+"section is configured."
+msgstr ""
+
+#: ../tools/drakvpn-old:620
+#, c-format
+msgid "Sainfo source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:621
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:638
+#, c-format
+msgid "Sainfo source protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:639
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+msgstr ""
+
+#: ../tools/drakvpn-old:653
+#, c-format
+msgid "Sainfo destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:654
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:671
+#, c-format
+msgid "Sainfo destination protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:672
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+msgstr ""
+
+#: ../tools/drakvpn-old:686
+#, c-format
+msgid "PFS group"
+msgstr ""
+
+#: ../tools/drakvpn-old:688
+#, c-format
+msgid ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+msgstr ""
+
+#: ../tools/drakvpn-old:693
+#, c-format
+msgid "Lifetime number"
+msgstr ""
+
+#: ../tools/drakvpn-old:694
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:710
+#, c-format
+msgid "Lifetime unit"
+msgstr ""
+
+#: ../tools/drakvpn-old:712
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:728 ../tools/drakvpn-old:813
+#, c-format
+msgid "Encryption algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:730
+#, c-format
+msgid "Authentication algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:732
+#, c-format
+msgid "Compression algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:733
+#, c-format
+msgid "deflate"
+msgstr ""
+
+#: ../tools/drakvpn-old:740
+#, c-format
+msgid "Remote"
+msgstr ""
+
+#: ../tools/drakvpn-old:741
+#, c-format
+msgid ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+msgstr ""
+
+#: ../tools/drakvpn-old:749
+#, c-format
+msgid "Exchange mode"
+msgstr ""
+
+#: ../tools/drakvpn-old:751
+#, c-format
+msgid ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:757
+#, c-format
+msgid "Generate policy"
+msgstr ""
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "off"
+msgstr ""
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "on"
+msgstr "на"
+
+#: ../tools/drakvpn-old:759
+#, c-format
+msgid ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+msgstr ""
+
+#: ../tools/drakvpn-old:773
+#, c-format
+msgid "Passive"
+msgstr ""
+
+#: ../tools/drakvpn-old:775
+#, c-format
+msgid ""
+"If you do not want to initiate the negotiation, set this\n"
+"to on. The default value is off. It is useful for a\n"
+"server."
+msgstr ""
+
+#: ../tools/drakvpn-old:778
+#, c-format
+msgid "Certificate type"
+msgstr ""
+
+#: ../tools/drakvpn-old:780
+#, c-format
+msgid "My certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:781
+#, c-format
+msgid "Name of the certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:782
+#, c-format
+msgid "My private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:783
+#, c-format
+msgid "Name of the private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:784
+#, c-format
+msgid "Peers certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:785
+#, c-format
+msgid "Name of the peers certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:786
+#, c-format
+msgid "Verify cert"
+msgstr ""
+
+#: ../tools/drakvpn-old:788
+#, c-format
+msgid ""
+"If you do not want to verify the peer's certificate for\n"
+"some reason, set this to off. The default is on."
+msgstr ""
+
+#: ../tools/drakvpn-old:790
+#, c-format
+msgid "My identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:791
+#, c-format
+msgid ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+msgstr ""
+
+#: ../tools/drakvpn-old:811
+#, c-format
+msgid "Peers identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:812
+#, c-format
+msgid "Proposal"
+msgstr ""
+
+#: ../tools/drakvpn-old:814
+#, c-format
+msgid ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+msgstr ""
+
+#: ../tools/drakvpn-old:821
+#, c-format
+msgid "Hash algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:822
+#, fuzzy, c-format
+msgid "Authentication method"
+msgstr "Аўтэнтыфікацыя"
+
+#: ../tools/drakvpn-old:823
+#, c-format
+msgid "DH group"
+msgstr ""
+
+#: ../tools/drakvpn-old:830
+#, c-format
+msgid "Command"
+msgstr "Каманда"
+
+#: ../tools/drakvpn-old:831
+#, c-format
+msgid "Source IP range"
+msgstr ""
+
+#: ../tools/drakvpn-old:832
+#, c-format
+msgid "Destination IP range"
+msgstr ""
+
+#: ../tools/drakvpn-old:833
+#, c-format
+msgid "Upper-layer protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:833 ../tools/drakvpn-old:840
+#, c-format
+msgid "any"
+msgstr ""
+
+#: ../tools/drakvpn-old:835
+#, c-format
+msgid "Flag"
+msgstr "Сьцяг"
+
+#: ../tools/drakvpn-old:836
+#, c-format
+msgid "Direction"
+msgstr "Накірунак"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "IPsec policy"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "ipsec"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "discard"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "Mode"
+msgstr "Рэжым"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "tunnel"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "transport"
+msgstr ""
+
+#: ../tools/drakvpn-old:842
+#, c-format
+msgid "Source/destination"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "Level"
+msgstr "Узровень"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "require"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "default"
+msgstr "Па дамаўленню"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "use"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "unique"
+msgstr ""
+
+#: ../tools/net_applet:61
+#, fuzzy, c-format
+msgid "Network is up on interface %s."
+msgstr "Сеткавы інтэрфейс"
+
+#: ../tools/net_applet:62
+#, fuzzy, c-format
+msgid "IP address: %s"
+msgstr "IP адрас:"
+
+#: ../tools/net_applet:63
+#, fuzzy, c-format
+msgid "Gateway: %s"
+msgstr "Шлюз:"
+
+#: ../tools/net_applet:64
+#, c-format
+msgid "Connected to %s (link level: %d %%)"
+msgstr ""
+
+#: ../tools/net_applet:66
+#, fuzzy, c-format
+msgid "Network is down on interface %s."
+msgstr "Сеткавы інтэрфейс"
+
+#: ../tools/net_applet:74 ../tools/net_monitor:468
+#, fuzzy, c-format
+msgid "Connect %s"
+msgstr "Імя злучэння"
+
+#: ../tools/net_applet:75 ../tools/net_monitor:468
+#, c-format
+msgid "Disconnect %s"
+msgstr ""
+
+#: ../tools/net_applet:76
+#, fuzzy, c-format
+msgid "Monitor Network"
+msgstr "Сетка"
+
+#: ../tools/net_applet:78
+#, c-format
+msgid "Manage wireless networks"
+msgstr ""
+
+#: ../tools/net_applet:80
+#, fuzzy, c-format
+msgid "Manage VPN connections"
+msgstr "Размеркаванне"
+
+#: ../tools/net_applet:84
+#, fuzzy, c-format
+msgid "Configure Network"
+msgstr "Настройка сеткі"
+
+#: ../tools/net_applet:86
+#, fuzzy, c-format
+msgid "Watched interface"
+msgstr "Сеткавыя інтэрфэйсы"
+
+#: ../tools/net_applet:87 ../tools/net_applet:88 ../tools/net_applet:90
+#, fuzzy, c-format
+msgid "Auto-detect"
+msgstr "Аўтаматычнае вызначэнне"
+
+#: ../tools/net_applet:95
+#, c-format
+msgid "Active interfaces"
+msgstr ""
+
+#: ../tools/net_applet:119
+#, c-format
+msgid "Profiles"
+msgstr "Профілі"
+
+#: ../tools/net_applet:137
+#, c-format
+msgid "Get Online Help"
+msgstr ""
+
+#: ../tools/net_applet:318
+#, fuzzy, c-format
+msgid "Network connection"
+msgstr "Сетка"
+
+#: ../tools/net_applet:438
+#, c-format
+msgid "More networks"
+msgstr ""
+
+#: ../tools/net_applet:465
+#, c-format
+msgid "Interactive Firewall automatic mode"
+msgstr ""
+
+#: ../tools/net_applet:470
+#, c-format
+msgid "Always launch on startup"
+msgstr ""
+
+#: ../tools/net_applet:475
+#, fuzzy, c-format
+msgid "Wireless networks"
+msgstr "Канфігурацыя"
+
+#: ../tools/net_applet:482 ../tools/net_monitor:96
+#, c-format
+msgid "Settings"
+msgstr "Усталёўкі"
+
+#: ../tools/net_applet:557
+#, fuzzy, c-format
+msgid "Interactive Firewall: intrusion detected"
+msgstr "Знойдзена сістэма сеткавай бяспекі (firewall)!"
+
+#: ../tools/net_applet:574
+#, fuzzy, c-format
+msgid "What do you want to do with this attacker?"
+msgstr "Вы жадаеце скончыць гульню?"
+
+#: ../tools/net_applet:577
+#, fuzzy, c-format
+msgid "Attack details"
+msgstr "Падрабязнасці"
+
+#: ../tools/net_applet:581
+#, fuzzy, c-format
+msgid "Attack time: %s"
+msgstr "Укласьці файл(ы)"
+
+#: ../tools/net_applet:582
+#, c-format
+msgid "Network interface: %s"
+msgstr "Сеткавы інтэрфейс: %s"
+
+#: ../tools/net_applet:583
+#, fuzzy, c-format
+msgid "Attack type: %s"
+msgstr "Тып: "
+
+#: ../tools/net_applet:584
+#, c-format
+msgid "Protocol: %s"
+msgstr "Пратакол: %s"
+
+#: ../tools/net_applet:585
+#, fuzzy, c-format
+msgid "Attacker IP address: %s"
+msgstr "IP адрас"
+
+#: ../tools/net_applet:586
+#, fuzzy, c-format
+msgid "Attacker hostname: %s"
+msgstr "Адбыўся збой пад час атрыманьня назвы вузла: %s\n"
+
+#: ../tools/net_applet:589
+#, fuzzy, c-format
+msgid "Service attacked: %s"
+msgstr "Кіраваньне сэрвісамі"
+
+#: ../tools/net_applet:590
+#, fuzzy, c-format
+msgid "Port attacked: %s"
+msgstr "Порт:"
+
+#: ../tools/net_applet:592
+#, c-format
+msgid "Type of ICMP attack: %s"
+msgstr ""
+
+#: ../tools/net_applet:597
+#, c-format
+msgid "Always blacklist (do not ask again)"
+msgstr ""
+
+#: ../tools/net_applet:612
+#, c-format
+msgid "Ignore"
+msgstr "Ігнараваць"
+
+#: ../tools/net_applet:630 ../tools/net_applet:643
+#, fuzzy, c-format
+msgid "Interactive Firewall: new service"
+msgstr "Знойдзена сістэма сеткавай бяспекі (firewall)!"
+
+#: ../tools/net_applet:654
+#, fuzzy, c-format
+msgid "Do you want to open this service?"
+msgstr "Ці жадаеце пратэсціраваць настройкі?"
+
+#: ../tools/net_applet:657
+#, fuzzy, c-format
+msgid "Remember this answer"
+msgstr "Запомніць гэты пароль"
+
+#: ../tools/net_monitor:60 ../tools/net_monitor:65
+#, fuzzy, c-format
+msgid "Network Monitoring"
+msgstr "Канфігурацыя сеткі"
+
+#: ../tools/net_monitor:101
+#, c-format
+msgid "Global statistics"
+msgstr ""
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Instantaneous"
+msgstr ""
+
+#: ../tools/net_monitor:104
+#, fuzzy, c-format
+msgid "Average"
+msgstr "Альтэрнатыўны"
+
+#: ../tools/net_monitor:105
+#, c-format
+msgid ""
+"Sending\n"
+"speed:"
+msgstr ""
+
+#: ../tools/net_monitor:105 ../tools/net_monitor:106 ../tools/net_monitor:111
+#, c-format
+msgid "unknown"
+msgstr "невядома"
+
+#: ../tools/net_monitor:106
+#, c-format
+msgid ""
+"Receiving\n"
+"speed:"
+msgstr ""
+
+#: ../tools/net_monitor:110
+#, fuzzy, c-format
+msgid ""
+"Connection\n"
+"time: "
+msgstr "Імя злучэння"
+
+#: ../tools/net_monitor:117
+#, c-format
+msgid "Use same scale for received and transmitted"
+msgstr ""
+
+#: ../tools/net_monitor:136
+#, c-format
+msgid "Wait please, testing your connection..."
+msgstr ""
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, fuzzy, c-format
+msgid "Disconnecting from Internet "
+msgstr "Далучэнне да Інтэрнэту"
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, fuzzy, c-format
+msgid "Connecting to Internet "
+msgstr "Далучэнне да Інтэрнэту"
+
+#: ../tools/net_monitor:229
+#, c-format
+msgid "Disconnection from Internet failed."
+msgstr ""
+
+#: ../tools/net_monitor:230
+#, c-format
+msgid "Disconnection from Internet complete."
+msgstr ""
+
+#: ../tools/net_monitor:232
+#, fuzzy, c-format
+msgid "Connection complete."
+msgstr "Імя злучэння"
+
+#: ../tools/net_monitor:233
+#, c-format
+msgid ""
+"Connection failed.\n"
+"Verify your configuration in the Mandriva Linux Control Center."
+msgstr ""
+
+#: ../tools/net_monitor:338
+#, fuzzy, c-format
+msgid "Color configuration"
+msgstr "Канфігурацыя"
+
+#: ../tools/net_monitor:395 ../tools/net_monitor:407
+#, fuzzy, c-format
+msgid "sent: "
+msgstr "Эсперанто:"
+
+#: ../tools/net_monitor:398 ../tools/net_monitor:411
+#, c-format
+msgid "received: "
+msgstr ""
+
+#: ../tools/net_monitor:401
+#, c-format
+msgid "average"
+msgstr ""
+
+#: ../tools/net_monitor:404
+#, fuzzy, c-format
+msgid "Local measure"
+msgstr "Гульня ў косьці"
+
+#: ../tools/net_monitor:461
+#, c-format
+msgid ""
+"Warning, another internet connection has been detected, maybe using your "
+"network"
+msgstr ""
+
+#: ../tools/net_monitor:472
+#, fuzzy, c-format
+msgid "No internet connection configured"
+msgstr "Сумеснае Інтэрнэт-злучэнне"
diff --git a/po/bg.po b/po/bg.po
new file mode 100644
index 0000000..7ba7c82
--- /dev/null
+++ b/po/bg.po
@@ -0,0 +1,5533 @@
+# translation of drakx-net-bg.po to Bulgarian
+# Copyright (C) 2000,2003 Free Software Foundation, Inc.
+# Copyright (c) 2000 Mandriva
+# Bozhan Boiadzhiev <bozhan@plov.omega.bg>, 2000.
+# Borislav Aleksandrov <B.Aleksandrov@cnsys.bg>, 2003.
+# Boyan Ivanov <boyan17@bulgaria.com>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: drakx-net-bg\n"
+"POT-Creation-Date: 2007-01-10 15:18+0100\n"
+"PO-Revision-Date: 2004-09-15 13:27+0200\n"
+"Last-Translator: Boyan Ivanov <boyan17@bulgaria.com>\n"
+"Language-Team: Bulgarian <dict@linux.zonebg.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: ../lib/network/connection.pm:16
+#, c-format
+msgid "Unknown connection type"
+msgstr "Неизвестен тип връзка"
+
+#: ../lib/network/connection.pm:115
+#, c-format
+msgid "Network access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:116
+#, c-format
+msgid "Access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:117
+#, c-format
+msgid "Address settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:149 ../lib/network/drakvpn.pm:62
+#: ../lib/network/vpn/openvpn.pm:365 ../lib/network/vpn/openvpn.pm:379
+#: ../lib/network/vpn/openvpn.pm:390 ../tools/net_applet:129
+#, fuzzy, c-format
+msgid "VPN connection"
+msgstr "LAN връзка"
+
+#: ../lib/network/connection.pm:151 ../lib/network/connection/cable.pm:44
+#: ../lib/network/connection/wireless.pm:37 ../lib/network/vpn/openvpn.pm:127
+#: ../lib/network/vpn/openvpn.pm:171 ../lib/network/vpn/openvpn.pm:339
+#, c-format
+msgid "None"
+msgstr "Без"
+
+#: ../lib/network/connection.pm:163
+#, c-format
+msgid "Allow users to manage the connection"
+msgstr ""
+
+#: ../lib/network/connection.pm:164
+#, c-format
+msgid "Start the connection at boot"
+msgstr ""
+
+#: ../lib/network/connection.pm:165 ../tools/drakconnect:462
+#, c-format
+msgid "Metric"
+msgstr "Метрика"
+
+#: ../lib/network/connection.pm:230
+#, fuzzy, c-format
+msgid "Link detected on interface %s"
+msgstr "засечен на порт %s"
+
+#: ../lib/network/connection.pm:231 ../lib/network/connection/ethernet.pm:278
+#, c-format
+msgid "Link beat lost on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:13
+#, c-format
+msgid "Cable"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:14
+#, fuzzy, c-format
+msgid "Cable modem"
+msgstr "Модел на карта:"
+
+#: ../lib/network/connection/cable.pm:45
+#, c-format
+msgid "Use BPALogin (needed for Telstra)"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:48 ../lib/network/netconnect.pm:587
+#: ../tools/drakconnect:482
+#, c-format
+msgid "Authentication"
+msgstr "Идентификация"
+
+#: ../lib/network/connection/cable.pm:50 ../lib/network/connection/ppp.pm:22
+#: ../lib/network/netconnect.pm:326 ../lib/network/vpn/openvpn.pm:393
+#: ../tools/drakconnect:492
+#, c-format
+msgid "Account Login (user name)"
+msgstr "Име на акаунта (потебителско име)"
+
+#: ../lib/network/connection/cable.pm:52 ../lib/network/connection/ppp.pm:23
+#: ../lib/network/netconnect.pm:327 ../lib/network/vpn/openvpn.pm:394
+#: ../tools/drakconnect:493
+#, c-format
+msgid "Account Password"
+msgstr "Парола на акаунта"
+
+#: ../lib/network/connection/cellular.pm:47
+#, c-format
+msgid "Access Point Name"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:10
+#, c-format
+msgid "Bluetooth"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:11
+#, c-format
+msgid "Bluetooth Dial Up Networking"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:8
+#, c-format
+msgid "GPRS/Edge/3G"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:67
+#: ../lib/network/vpn/openvpn.pm:391
+#, c-format
+msgid "PIN number"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:130
+#, fuzzy, c-format
+msgid "Unable to open device %s"
+msgstr "Не мога да направя 'fork': %s"
+
+#: ../lib/network/connection/cellular_card.pm:155
+#, fuzzy, c-format
+msgid "Please check that your SIM card is inserted."
+msgstr "Моля, изберете порт към който свързан принтера ви."
+
+#: ../lib/network/connection/cellular_card.pm:161
+#, c-format
+msgid ""
+"You entered a wrong PIN code.\n"
+"Entering the wrong PIN code multiple times may lock your SIM card!"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:12
+#, c-format
+msgid "DVB"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:13
+#, c-format
+msgid "Satellite (DVB)"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:56
+#, c-format
+msgid "Adapter card"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:57
+#, c-format
+msgid "Net demux"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:58
+#, c-format
+msgid "PID"
+msgstr "Процес"
+
+#: ../lib/network/connection/ethernet.pm:10
+#, c-format
+msgid "Ethernet"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:53
+#, c-format
+msgid "Unable to find network interface for selected device (using %s driver)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:61 ../lib/network/vpn/openvpn.pm:207
+#, c-format
+msgid "Manual configuration"
+msgstr "Ръчна настройка"
+
+#: ../lib/network/connection/ethernet.pm:62
+#, fuzzy, c-format
+msgid "Automatic IP (BOOTP/DHCP)"
+msgstr "Автоматичен IP адрес"
+
+#: ../lib/network/connection/ethernet.pm:116
+#, fuzzy, c-format
+msgid "IP settings"
+msgstr "PLL настройки:"
+
+#: ../lib/network/connection/ethernet.pm:125 ../lib/network/netconnect.pm:604
+#: ../lib/network/vpn/openvpn.pm:221 ../tools/drakconnect:113
+#: ../tools/drakconnect:321 ../tools/drakconnect:887 ../tools/drakhosts:196
+#, c-format
+msgid "IP address"
+msgstr "IP адрес"
+
+#: ../lib/network/connection/ethernet.pm:129
+#, c-format
+msgid ""
+"Please enter the IP configuration for this machine.\n"
+"Each item should be entered as an IP address in dotted-decimal\n"
+"notation (for example, 1.2.3.4)."
+msgstr ""
+"Моля, въведете IP настройките за тази машина.\n"
+"Всяко устройство трябва да бъде въведено като IP адрес\n"
+"с точково-десетично означение (например, 1.2.3.4)."
+
+#: ../lib/network/connection/ethernet.pm:132 ../tools/drakconnect:326
+#: ../tools/drakconnect:888 ../tools/drakgw:177
+#, c-format
+msgid "Netmask"
+msgstr "Мрежова маска"
+
+#: ../lib/network/connection/ethernet.pm:133 ../lib/network/netconnect.pm:636
+#: ../lib/network/vpn/openvpn.pm:212 ../lib/network/vpn/vpnc.pm:39
+#: ../tools/drakconnect:332
+#, c-format
+msgid "Gateway"
+msgstr "Gateway"
+
+#: ../lib/network/connection/ethernet.pm:136 ../tools/drakconnect:382
+#, fuzzy, c-format
+msgid "Get DNS servers from DHCP"
+msgstr "DNS сървър IP"
+
+#: ../lib/network/connection/ethernet.pm:138
+#, fuzzy, c-format
+msgid "DNS server 1"
+msgstr "DNS сървър"
+
+#: ../lib/network/connection/ethernet.pm:139
+#, fuzzy, c-format
+msgid "DNS server 2"
+msgstr "DNS сървър"
+
+#: ../lib/network/connection/ethernet.pm:140
+#, fuzzy, c-format
+msgid "Search domain"
+msgstr "NIS домейн"
+
+#: ../lib/network/connection/ethernet.pm:141
+#, c-format
+msgid "By default search domain will be set from the fully-qualified host name"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:143 ../tools/drakconnect:369
+#: ../tools/drakconnect:891
+#, c-format
+msgid "DHCP client"
+msgstr "DHCP клиент"
+
+#: ../lib/network/connection/ethernet.pm:144 ../tools/drakconnect:379
+#, fuzzy, c-format
+msgid "DHCP timeout (in seconds)"
+msgstr "Timeout на връзката (в сек)"
+
+#: ../lib/network/connection/ethernet.pm:145 ../tools/drakconnect:383
+#, c-format
+msgid "Get YP servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:146 ../tools/drakconnect:384
+#, c-format
+msgid "Get NTPD servers from DHCP"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:147 ../tools/drakconnect:375
+#, c-format
+msgid "DHCP host name"
+msgstr "Име на DHCP хост"
+
+#: ../lib/network/connection/ethernet.pm:149
+#, c-format
+msgid "Do not fallback to Zeroconf (169.254.0.0 network)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:160 ../tools/drakconnect:676
+#, c-format
+msgid "IP address should be in format 1.2.3.4"
+msgstr "IP адресът трябва да бъде във формат 1.2.3.4"
+
+#: ../lib/network/connection/ethernet.pm:165 ../tools/drakconnect:680
+#, fuzzy, c-format
+msgid "Netmask should be in format 255.255.224.0"
+msgstr "Gateway адреса трябва да бъде във формат 1.2.3.4"
+
+#: ../lib/network/connection/ethernet.pm:170
+#, c-format
+msgid "Warning: IP address %s is usually reserved!"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:176
+#, c-format
+msgid "%s already in use\n"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:200 ../tools/drakconnect:373
+#, c-format
+msgid "Assign host name from DHCP address"
+msgstr "Получаване на име от DHCP адрес"
+
+#: ../lib/network/connection/ethernet.pm:202 ../tools/drakhosts:196
+#, c-format
+msgid "Host name"
+msgstr "Име на хост:"
+
+#: ../lib/network/connection/ethernet.pm:220 ../tools/drakconnect:440
+#, c-format
+msgid "Network Hotplugging"
+msgstr "Мрежов Hotplugging"
+
+#: ../lib/network/connection/ethernet.pm:224
+#, c-format
+msgid "Enable IPv6 to IPv4 tunnel"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:277
+#, c-format
+msgid "Link beat detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:280
+#, c-format
+msgid "Requesting a network address on interface %s (%s protocol)..."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:281
+#, c-format
+msgid "Got a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:282
+#, c-format
+msgid "Failed to get a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:8
+#, c-format
+msgid "ISDN"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:153 ../lib/network/netconnect.pm:197
+#: ../lib/network/netconnect.pm:200 ../lib/network/netconnect.pm:218
+#: ../lib/network/netconnect.pm:463 ../lib/network/netconnect.pm:559
+#: ../lib/network/netconnect.pm:562
+#, c-format
+msgid "Unlisted - edit manually"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "ISA / PCMCIA"
+msgstr "ISA / PCMCIA"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "I do not know"
+msgstr "Не знам"
+
+#: ../lib/network/connection/isdn.pm:197 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "PCI"
+msgstr "PCI"
+
+#: ../lib/network/connection/isdn.pm:198 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "USB"
+msgstr "USB"
+
+#. -PO: POTS means "Plain old telephone service"
+#: ../lib/network/connection/pots.pm:10
+#, c-format
+msgid "POTS"
+msgstr ""
+
+#. -PO: POTS means "Plain old telephone service"
+#. -PO: remove it if it doesn't have an equivalent in your language
+#. -PO: for example, in French, it can be translated as "RTC"
+#: ../lib/network/connection/pots.pm:16
+#, c-format
+msgid "Analog telephone modem (POTS)"
+msgstr ""
+
+#: ../lib/network/connection/ppp.pm:9 ../lib/network/netconnect.pm:74
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Script-based"
+msgstr "Базирана на скрипт"
+
+#: ../lib/network/connection/ppp.pm:10 ../lib/network/netconnect.pm:75
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP"
+msgstr "PAP"
+
+#: ../lib/network/connection/ppp.pm:11 ../lib/network/netconnect.pm:76
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Terminal-based"
+msgstr "Базирана на терминал"
+
+#: ../lib/network/connection/ppp.pm:12 ../lib/network/netconnect.pm:77
+#: ../tools/drakconnect:499
+#, c-format
+msgid "CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/ppp.pm:13 ../lib/network/netconnect.pm:78
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP/CHAP"
+msgstr "PAP/CHAP"
+
+#: ../lib/network/connection/providers/cellular.pm:13
+#: ../lib/network/connection/providers/cellular.pm:18
+#: ../lib/network/connection/providers/cellular.pm:23
+#: ../lib/network/connection/providers/xdsl.pm:492
+#: ../lib/network/connection/providers/xdsl.pm:504
+#: ../lib/network/connection/providers/xdsl.pm:516
+#: ../lib/network/connection/providers/xdsl.pm:528
+#: ../lib/network/connection/providers/xdsl.pm:539
+#: ../lib/network/connection/providers/xdsl.pm:551
+#: ../lib/network/connection/providers/xdsl.pm:563
+#: ../lib/network/connection/providers/xdsl.pm:575
+#: ../lib/network/connection/providers/xdsl.pm:588
+#: ../lib/network/connection/providers/xdsl.pm:599
+#: ../lib/network/connection/providers/xdsl.pm:610
+#: ../lib/network/netconnect.pm:33
+#, c-format
+msgid "France"
+msgstr "Франция"
+
+#: ../lib/network/connection/providers/xdsl.pm:47
+#: ../lib/network/connection/providers/xdsl.pm:57
+#, c-format
+msgid "Algeria"
+msgstr "Алжир"
+
+#: ../lib/network/connection/providers/xdsl.pm:67
+#: ../lib/network/connection/providers/xdsl.pm:77
+#, c-format
+msgid "Argentina"
+msgstr "Аржентина"
+
+#: ../lib/network/connection/providers/xdsl.pm:87
+#: ../lib/network/connection/providers/xdsl.pm:96
+#: ../lib/network/connection/providers/xdsl.pm:105
+#, c-format
+msgid "Austria"
+msgstr "Австрия"
+
+#: ../lib/network/connection/providers/xdsl.pm:114
+#: ../lib/network/connection/providers/xdsl.pm:124
+#: ../lib/network/connection/providers/xdsl.pm:134
+#, c-format
+msgid "Australia"
+msgstr "Австралия"
+
+#: ../lib/network/connection/providers/xdsl.pm:144
+#: ../lib/network/connection/providers/xdsl.pm:153
+#: ../lib/network/connection/providers/xdsl.pm:164
+#: ../lib/network/connection/providers/xdsl.pm:173
+#: ../lib/network/connection/providers/xdsl.pm:182
+#: ../lib/network/netconnect.pm:36
+#, c-format
+msgid "Belgium"
+msgstr "Белгия"
+
+#: ../lib/network/connection/providers/xdsl.pm:191
+#: ../lib/network/connection/providers/xdsl.pm:201
+#: ../lib/network/connection/providers/xdsl.pm:210
+#: ../lib/network/connection/providers/xdsl.pm:219
+#, c-format
+msgid "Brazil"
+msgstr "Бразилия"
+
+#: ../lib/network/connection/providers/xdsl.pm:228
+#: ../lib/network/connection/providers/xdsl.pm:237
+#, c-format
+msgid "Bulgaria"
+msgstr "България"
+
+#: ../lib/network/connection/providers/xdsl.pm:246
+#: ../lib/network/connection/providers/xdsl.pm:255
+#: ../lib/network/connection/providers/xdsl.pm:264
+#: ../lib/network/connection/providers/xdsl.pm:273
+#: ../lib/network/connection/providers/xdsl.pm:282
+#: ../lib/network/connection/providers/xdsl.pm:291
+#: ../lib/network/connection/providers/xdsl.pm:300
+#: ../lib/network/connection/providers/xdsl.pm:309
+#: ../lib/network/connection/providers/xdsl.pm:318
+#: ../lib/network/connection/providers/xdsl.pm:327
+#: ../lib/network/connection/providers/xdsl.pm:336
+#: ../lib/network/connection/providers/xdsl.pm:345
+#: ../lib/network/connection/providers/xdsl.pm:354
+#: ../lib/network/connection/providers/xdsl.pm:363
+#: ../lib/network/connection/providers/xdsl.pm:372
+#: ../lib/network/connection/providers/xdsl.pm:381
+#: ../lib/network/connection/providers/xdsl.pm:390
+#: ../lib/network/connection/providers/xdsl.pm:399
+#: ../lib/network/connection/providers/xdsl.pm:408
+#: ../lib/network/connection/providers/xdsl.pm:417
+#, c-format
+msgid "China"
+msgstr "Китай"
+
+#: ../lib/network/connection/providers/xdsl.pm:426
+#: ../lib/network/connection/providers/xdsl.pm:436
+#, c-format
+msgid "Czech Republic"
+msgstr "Чешка Република"
+
+#: ../lib/network/connection/providers/xdsl.pm:446
+#: ../lib/network/connection/providers/xdsl.pm:455
+#: ../lib/network/connection/providers/xdsl.pm:464
+#, c-format
+msgid "Denmark"
+msgstr "Дания"
+
+#: ../lib/network/connection/providers/xdsl.pm:473
+#, c-format
+msgid "Egypt"
+msgstr "Египет"
+
+#: ../lib/network/connection/providers/xdsl.pm:483
+#, c-format
+msgid "Finland"
+msgstr "Финландия"
+
+#: ../lib/network/connection/providers/xdsl.pm:621
+#: ../lib/network/connection/providers/xdsl.pm:630
+#: ../lib/network/connection/providers/xdsl.pm:640
+#, c-format
+msgid "Germany"
+msgstr "Германия"
+
+#: ../lib/network/connection/providers/xdsl.pm:650
+#, c-format
+msgid "Greece"
+msgstr "Гърция"
+
+#: ../lib/network/connection/providers/xdsl.pm:659
+#, c-format
+msgid "Hungary"
+msgstr "Унгария"
+
+#: ../lib/network/connection/providers/xdsl.pm:668
+#, c-format
+msgid "Ireland"
+msgstr "Ирландия"
+
+#: ../lib/network/connection/providers/xdsl.pm:677
+#, c-format
+msgid "Israel"
+msgstr "Израел"
+
+#: ../lib/network/connection/providers/xdsl.pm:687
+#, c-format
+msgid "India"
+msgstr "Индия"
+
+#: ../lib/network/connection/providers/xdsl.pm:696
+#: ../lib/network/connection/providers/xdsl.pm:705
+#, c-format
+msgid "Iceland"
+msgstr "Исландия"
+
+#: ../lib/network/connection/providers/xdsl.pm:714
+#: ../lib/network/connection/providers/xdsl.pm:725
+#: ../lib/network/connection/providers/xdsl.pm:735
+#: ../lib/network/connection/providers/xdsl.pm:746
+#: ../lib/network/netconnect.pm:35
+#, c-format
+msgid "Italy"
+msgstr "Италия"
+
+#: ../lib/network/connection/providers/xdsl.pm:758
+#, c-format
+msgid "Sri Lanka"
+msgstr "Шри Ланка"
+
+#: ../lib/network/connection/providers/xdsl.pm:770
+#, c-format
+msgid "Lithuania"
+msgstr "Литва"
+
+#: ../lib/network/connection/providers/xdsl.pm:779
+#: ../lib/network/connection/providers/xdsl.pm:789
+#, c-format
+msgid "Mauritius"
+msgstr "Мавриций"
+
+#: ../lib/network/connection/providers/xdsl.pm:800
+#, c-format
+msgid "Morocco"
+msgstr "Мароко"
+
+#: ../lib/network/connection/providers/xdsl.pm:810
+#: ../lib/network/connection/providers/xdsl.pm:819
+#: ../lib/network/connection/providers/xdsl.pm:828
+#: ../lib/network/connection/providers/xdsl.pm:837
+#: ../lib/network/netconnect.pm:34
+#, c-format
+msgid "Netherlands"
+msgstr "Холандия"
+
+#: ../lib/network/connection/providers/xdsl.pm:846
+#: ../lib/network/connection/providers/xdsl.pm:852
+#: ../lib/network/connection/providers/xdsl.pm:858
+#: ../lib/network/connection/providers/xdsl.pm:864
+#: ../lib/network/connection/providers/xdsl.pm:870
+#: ../lib/network/connection/providers/xdsl.pm:876
+#: ../lib/network/connection/providers/xdsl.pm:882
+#, c-format
+msgid "Norway"
+msgstr "Норвегия"
+
+#: ../lib/network/connection/providers/xdsl.pm:890
+#, c-format
+msgid "Pakistan"
+msgstr "Пакистан"
+
+#: ../lib/network/connection/providers/xdsl.pm:901
+#: ../lib/network/connection/providers/xdsl.pm:911
+#, c-format
+msgid "Poland"
+msgstr "Полша"
+
+#: ../lib/network/connection/providers/xdsl.pm:922
+#, c-format
+msgid "Portugal"
+msgstr "Португалия"
+
+#: ../lib/network/connection/providers/xdsl.pm:931
+#, c-format
+msgid "Russia"
+msgstr "Русия"
+
+#: ../lib/network/connection/providers/xdsl.pm:942
+#, c-format
+msgid "Singapore"
+msgstr "Сингапур"
+
+#: ../lib/network/connection/providers/xdsl.pm:951
+#, c-format
+msgid "Senegal"
+msgstr "Сенегал"
+
+#: ../lib/network/connection/providers/xdsl.pm:961
+#, c-format
+msgid "Slovenia"
+msgstr "Словения"
+
+#: ../lib/network/connection/providers/xdsl.pm:972
+#: ../lib/network/connection/providers/xdsl.pm:984
+#: ../lib/network/connection/providers/xdsl.pm:996
+#: ../lib/network/connection/providers/xdsl.pm:1009
+#: ../lib/network/connection/providers/xdsl.pm:1019
+#: ../lib/network/connection/providers/xdsl.pm:1029
+#: ../lib/network/connection/providers/xdsl.pm:1040
+#: ../lib/network/connection/providers/xdsl.pm:1050
+#: ../lib/network/connection/providers/xdsl.pm:1060
+#: ../lib/network/connection/providers/xdsl.pm:1070
+#: ../lib/network/connection/providers/xdsl.pm:1080
+#: ../lib/network/connection/providers/xdsl.pm:1090
+#: ../lib/network/connection/providers/xdsl.pm:1101
+#: ../lib/network/connection/providers/xdsl.pm:1112
+#: ../lib/network/connection/providers/xdsl.pm:1124
+#: ../lib/network/connection/providers/xdsl.pm:1136
+#, c-format
+msgid "Spain"
+msgstr "Испания"
+
+#: ../lib/network/connection/providers/xdsl.pm:1149
+#, c-format
+msgid "Sweden"
+msgstr "Швеция"
+
+#: ../lib/network/connection/providers/xdsl.pm:1158
+#: ../lib/network/connection/providers/xdsl.pm:1167
+#: ../lib/network/connection/providers/xdsl.pm:1177
+#, c-format
+msgid "Switzerland"
+msgstr "Швейцария"
+
+#: ../lib/network/connection/providers/xdsl.pm:1186
+#, c-format
+msgid "Thailand"
+msgstr "Тайланд"
+
+#: ../lib/network/connection/providers/xdsl.pm:1196
+#, c-format
+msgid "Tunisia"
+msgstr "Тунис"
+
+#: ../lib/network/connection/providers/xdsl.pm:1207
+#, c-format
+msgid "Turkey"
+msgstr "Турция"
+
+#: ../lib/network/connection/providers/xdsl.pm:1220
+#, c-format
+msgid "United Arab Emirates"
+msgstr "Обединени Арабски Емирства"
+
+#: ../lib/network/connection/providers/xdsl.pm:1230
+#: ../lib/network/connection/providers/xdsl.pm:1240
+#: ../lib/network/netconnect.pm:38
+#, c-format
+msgid "United Kingdom"
+msgstr "Англия"
+
+#: ../lib/network/connection/wireless.pm:11
+#, c-format
+msgid "Wireless"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:21
+#, c-format
+msgid "Use a Windows driver (with ndiswrapper)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:38
+#, c-format
+msgid "Open WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:39
+#, c-format
+msgid "Restricted WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:40
+#, c-format
+msgid "WPA Pre-Shared Key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:181 ../lib/network/thirdparty.pm:174
+#, c-format
+msgid "Firmware files are required for this device."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:209
+#, c-format
+msgid ""
+"Your wireless card is disabled, please enable the wireless switch (RF kill "
+"switch) first."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:270
+#, fuzzy, c-format
+msgid "Wireless settings"
+msgstr "Безжична връзка"
+
+#: ../lib/network/connection/wireless.pm:275 ../tools/drakconnect:406
+#: ../tools/drakroam:119
+#, fuzzy, c-format
+msgid "Operating Mode"
+msgstr "Разширени функиции"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Ad-hoc"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Managed"
+msgstr "Управляем"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Master"
+msgstr "Главен"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Repeater"
+msgstr "Повтаряем"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Secondary"
+msgstr "Вторичен"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Auto"
+msgstr "Автоматично"
+
+#: ../lib/network/connection/wireless.pm:279 ../tools/drakconnect:407
+#, c-format
+msgid "Network name (ESSID)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:281
+#, c-format
+msgid "Encryption mode"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:283 ../tools/drakconnect:421
+#, c-format
+msgid "Encryption key"
+msgstr "Ключ за криптиране"
+
+#: ../lib/network/connection/wireless.pm:285 ../tools/drakconnect:408
+#, fuzzy, c-format
+msgid "Network ID"
+msgstr "Мрежа"
+
+#: ../lib/network/connection/wireless.pm:286 ../tools/drakconnect:409
+#, c-format
+msgid "Operating frequency"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:287 ../tools/drakconnect:410
+#, c-format
+msgid "Sensitivity threshold"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:288 ../tools/drakconnect:411
+#, c-format
+msgid "Bitrate (in b/s)"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:289 ../tools/drakconnect:422
+#, c-format
+msgid "RTS/CTS"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:290
+#, c-format
+msgid ""
+"RTS/CTS adds a handshake before each packet transmission to make sure that "
+"the\n"
+"channel is clear. This adds overhead, but increase performance in case of "
+"hidden\n"
+"nodes or large number of active nodes. This parameter sets the size of the\n"
+"smallest packet for which the node sends RTS, a value equal to the maximum\n"
+"packet size disable the scheme. You may also set this parameter to auto, "
+"fixed\n"
+"or off."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:297 ../tools/drakconnect:423
+#, fuzzy, c-format
+msgid "Fragmentation"
+msgstr "Игрална станция"
+
+#: ../lib/network/connection/wireless.pm:298 ../tools/drakconnect:424
+#, c-format
+msgid "iwconfig command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:299
+#, c-format
+msgid ""
+"Here, one can configure some extra wireless parameters such as:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick is already set "
+"as the hostname).\n"
+"\n"
+"See iwconfig(8) man page for further information."
+msgstr ""
+
+#. -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#: ../lib/network/connection/wireless.pm:306 ../tools/drakconnect:425
+#, c-format
+msgid "iwspy command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:307
+#, c-format
+msgid ""
+"iwspy is used to set a list of addresses in a wireless network\n"
+"interface and to read back quality of link information for each of those.\n"
+"\n"
+"This information is the same as the one available in /proc/net/wireless :\n"
+"quality of the link, signal strength and noise level.\n"
+"\n"
+"See iwpspy(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:315 ../tools/drakconnect:426
+#, c-format
+msgid "iwpriv command extra arguments"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:317
+#, c-format
+msgid ""
+"iwpriv enable to set up optionals (private) parameters of a wireless "
+"network\n"
+"interface.\n"
+"\n"
+"iwpriv deals with parameters and setting specific to each driver (as opposed "
+"to\n"
+"iwconfig which deals with generic ones).\n"
+"\n"
+"In theory, the documentation of each device driver should indicate how to "
+"use\n"
+"those interface specific commands and their effect.\n"
+"\n"
+"See iwpriv(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:335
+#, c-format
+msgid "An encryption key is required."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:341
+#, c-format
+msgid ""
+"Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz "
+"frequency), or add enough '0' (zeroes)."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:347
+#, c-format
+msgid ""
+"Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add "
+"enough '0' (zeroes)."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:359
+#, c-format
+msgid "Allow access point roaming"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:460
+#, c-format
+msgid "Associated to wireless network \"%s\" on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:461
+#, c-format
+msgid "Lost association to wireless network on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:8
+#, fuzzy, c-format
+msgid "DSL"
+msgstr "SSL"
+
+#: ../lib/network/connection/xdsl.pm:76 ../lib/network/netconnect.pm:755
+#, fuzzy, c-format
+msgid "Alcatel speedtouch USB modem"
+msgstr "Alcatel speedtouch USB"
+
+#: ../lib/network/connection/xdsl.pm:104
+#, c-format
+msgid ""
+"The ECI Hi-Focus modem cannot be supported due to binary driver distribution "
+"problem.\n"
+"\n"
+"You can find a driver on http://eciadsl.flashtux.org/"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:176
+#, c-format
+msgid "DSL over CAPI"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:179
+#, c-format
+msgid "Dynamic Host Configuration Protocol (DHCP)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:180
+#, fuzzy, c-format
+msgid "Manual TCP/IP configuration"
+msgstr "Ръчна настройка"
+
+#: ../lib/network/connection/xdsl.pm:181
+#, c-format
+msgid "Point to Point Tunneling Protocol (PPTP)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:182
+#, c-format
+msgid "PPP over Ethernet (PPPoE)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:183
+#, c-format
+msgid "PPP over ATM (PPPoA)"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:223
+#, c-format
+msgid "Virtual Path ID (VPI):"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:224
+#, c-format
+msgid "Virtual Circuit ID (VCI):"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/drakvpn.pm:52 ../lib/network/ndiswrapper.pm:27
+#: ../lib/network/ndiswrapper.pm:42 ../lib/network/ndiswrapper.pm:86
+#: ../lib/network/ndiswrapper.pm:102 ../lib/network/netconnect.pm:131
+#: ../lib/network/netconnect.pm:179 ../lib/network/netconnect.pm:268
+#: ../lib/network/netconnect.pm:813 ../lib/network/thirdparty.pm:114
+#: ../lib/network/thirdparty.pm:131 ../lib/network/thirdparty.pm:214
+#: ../lib/network/thirdparty.pm:216 ../lib/network/thirdparty.pm:237
+#: ../tools/drakconnect:676 ../tools/drakconnect:680 ../tools/drakconnect:689
+#: ../tools/drakconnect:705 ../tools/drakgw:184 ../tools/drakhosts:100
+#: ../tools/drakhosts:245 ../tools/drakhosts:252 ../tools/drakhosts:259
+#: ../tools/drakinvictus:72 ../tools/draknetprofile:113 ../tools/draknfs:85
+#: ../tools/draknfs:106 ../tools/draknfs:273 ../tools/draknfs:400
+#: ../tools/draknfs:402 ../tools/draknfs:405 ../tools/draknfs:497
+#: ../tools/draknfs:504 ../tools/draknfs:567 ../tools/draknfs:574
+#: ../tools/draknfs:581 ../tools/drakroam:79 ../tools/drakroam:92
+#: ../tools/draksambashare:372 ../tools/draksambashare:379
+#: ../tools/draksambashare:382 ../tools/draksambashare:428
+#: ../tools/draksambashare:452 ../tools/draksambashare:518
+#: ../tools/draksambashare:533 ../tools/draksambashare:611
+#: ../tools/draksambashare:678 ../tools/draksambashare:778
+#: ../tools/draksambashare:785 ../tools/draksambashare:916
+#: ../tools/draksambashare:1109 ../tools/draksambashare:1118
+#: ../tools/draksambashare:1140 ../tools/draksambashare:1149
+#: ../tools/draksambashare:1168 ../tools/draksambashare:1177
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Error"
+msgstr "Грешка"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/netconnect.pm:131 ../lib/network/thirdparty.pm:114
+#, fuzzy, c-format
+msgid "Could not install the packages (%s)!"
+msgstr "Инсталиране на пакета %s"
+
+#: ../lib/network/drakfirewall.pm:12
+#, c-format
+msgid "Web Server"
+msgstr "Web Сървър"
+
+#: ../lib/network/drakfirewall.pm:17
+#, c-format
+msgid "Domain Name Server"
+msgstr "Domain Name Server"
+
+#: ../lib/network/drakfirewall.pm:22
+#, fuzzy, c-format
+msgid "SSH server"
+msgstr "SSH Сървър"
+
+#: ../lib/network/drakfirewall.pm:27
+#, c-format
+msgid "FTP server"
+msgstr "FTP сървър"
+
+#: ../lib/network/drakfirewall.pm:32
+#, c-format
+msgid "Mail Server"
+msgstr "Пощенски сървър"
+
+#: ../lib/network/drakfirewall.pm:37
+#, c-format
+msgid "POP and IMAP Server"
+msgstr "POP и IMAP сървър"
+
+#: ../lib/network/drakfirewall.pm:42
+#, fuzzy, c-format
+msgid "Telnet server"
+msgstr "X сървър"
+
+#: ../lib/network/drakfirewall.pm:48
+#, c-format
+msgid "Windows Files Sharing (SMB)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:54
+#, fuzzy, c-format
+msgid "CUPS server"
+msgstr "DNS сървър"
+
+#: ../lib/network/drakfirewall.pm:60
+#, c-format
+msgid "Echo request (ping)"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:65
+#, c-format
+msgid "BitTorrent"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:74
+#, c-format
+msgid "Port scan detection"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:166 ../lib/network/drakfirewall.pm:172
+#, fuzzy, c-format
+msgid "Firewall configuration"
+msgstr "Ръчна настройка"
+
+#: ../lib/network/drakfirewall.pm:166
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"This configures a personal firewall for this Mandriva Linux machine.\n"
+"For a powerful and dedicated firewall solution, please look to the\n"
+"specialized Mandriva Security Firewall distribution."
+msgstr ""
+"Настройчик за малка защитна стена\n"
+"\n"
+"Това настройва персонална защитна стена за тази Mandriva Linux машина.\n"
+"За мощно постветено на защитата решение, моле, погледнете специализираната\n"
+"Mandriva Security Firewall дистрибуция."
+
+#: ../lib/network/drakfirewall.pm:172
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"Make sure you have configured your Network/Internet access with\n"
+"drakconnect before going any further."
+msgstr ""
+"drakfirewall конфигурация\n"
+"\n"
+"Убедете се, че вие имате конфигуриран Интернет/Интранет достъп с\n"
+"drakconnect преди да правите други неща по-нататък."
+
+#: ../lib/network/drakfirewall.pm:189
+#, c-format
+msgid "Which services would you like to allow the Internet to connect to?"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:190 ../lib/network/shorewall.pm:145
+#, c-format
+msgid "Firewall"
+msgstr "Защитна стена"
+
+#: ../lib/network/drakfirewall.pm:192
+#, c-format
+msgid ""
+"You can enter miscellaneous ports. \n"
+"Valid examples are: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Have a look at /etc/services for information."
+msgstr ""
+"Вие може да въведете други портове. \n"
+"Валидни са например: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Погледнете в /etc/services за информация"
+
+#: ../lib/network/drakfirewall.pm:198
+#, fuzzy, c-format
+msgid ""
+"Invalid port given: %s.\n"
+"The proper format is \"port/tcp\" or \"port/udp\", \n"
+"where port is between 1 and 65535.\n"
+"\n"
+"You can also give a range of ports (eg: 24300:24350/udp)"
+msgstr ""
+"Зададен е грешен порт: %s.\n"
+"Форматът е \"port/tcp\" или \"port/udp\", \n"
+"където порт е между 1 и 65535."
+
+#: ../lib/network/drakfirewall.pm:208
+#, c-format
+msgid "Everything (no firewall)"
+msgstr "Всичко (без firewall)"
+
+#: ../lib/network/drakfirewall.pm:210
+#, c-format
+msgid "Other ports"
+msgstr "Други портовете"
+
+#: ../lib/network/drakfirewall.pm:211
+#, c-format
+msgid "Log firewall messages in system logs"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:255 ../lib/network/drakfirewall.pm:258
+#: ../tools/drakids:40 ../tools/drakids:65 ../tools/drakids:181
+#: ../tools/drakids:190 ../tools/drakids:215 ../tools/drakids:224
+#: ../tools/drakids:234 ../tools/drakids:326 ../tools/net_applet:77
+#: ../tools/net_applet:238 ../tools/net_applet:514 ../tools/net_applet:541
+#, fuzzy, c-format
+msgid "Interactive Firewall"
+msgstr "Защитна стена"
+
+#: ../lib/network/drakfirewall.pm:256
+#, c-format
+msgid ""
+"You can be warned when someone accesses to a service or tries to intrude "
+"into your computer.\n"
+"Please select which network activities should be watched."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:261
+#, c-format
+msgid "Use Interactive Firewall"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:30
+#, fuzzy, c-format
+msgid "VPN configuration"
+msgstr "CUPS конфигурация"
+
+#: ../lib/network/drakvpn.pm:34
+#, fuzzy, c-format
+msgid "Choose the VPN type"
+msgstr "Изберете нова големина"
+
+#: ../lib/network/drakvpn.pm:49
+#, c-format
+msgid "Initializing tools and detecting devices for %s..."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:52
+#, fuzzy, c-format
+msgid "Unable to initialize %s connection type!"
+msgstr "Неизвестен тип връзка"
+
+#: ../lib/network/drakvpn.pm:60
+#, c-format
+msgid "Please select an existing VPN connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:64
+#, fuzzy, c-format
+msgid "Configure a new connection..."
+msgstr "Изпробване на връзката..."
+
+#: ../lib/network/drakvpn.pm:66
+#, fuzzy, c-format
+msgid "New name"
+msgstr "Истинско име"
+
+#: ../lib/network/drakvpn.pm:70 ../lib/network/drakvpn.pm:100
+#: ../lib/network/ndiswrapper.pm:92 ../lib/network/netconnect.pm:471
+#: ../tools/drakconnect:978 ../tools/draknetprofile:129
+#: ../tools/draknetprofile:131 ../tools/drakproxy:36
+#, c-format
+msgid "Warning"
+msgstr "Предупреждение"
+
+#: ../lib/network/drakvpn.pm:70
+#, c-format
+msgid "You must select an existing connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:81
+#, fuzzy, c-format
+msgid "Please enter the required key(s)"
+msgstr "Моля въведете WebDAV сървър URL"
+
+#: ../lib/network/drakvpn.pm:86
+#, fuzzy, c-format
+msgid "Please enter the settings of your VPN connection"
+msgstr "Не мога да се свръжа с огледален сървър' %s"
+
+#: ../lib/network/drakvpn.pm:94 ../lib/network/netconnect.pm:291
+#, c-format
+msgid "Do you want to start the connection now?"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:100
+#, fuzzy, c-format
+msgid "Connection failed."
+msgstr "Име на връзката"
+
+#: ../lib/network/drakvpn.pm:108
+#, c-format
+msgid ""
+"The VPN connection is now configured.\n"
+"\n"
+"This VPN connection can be automatically started together with a network "
+"connection.\n"
+"It can be done by reconfiguring the network connection and selecting this "
+"VPN connection.\n"
+msgstr ""
+
+#: ../lib/network/ifw.pm:129
+#, fuzzy, c-format
+msgid "Port scanning"
+msgstr "Не поделя"
+
+#: ../lib/network/ifw.pm:130
+#, fuzzy, c-format
+msgid "Service attack"
+msgstr "_Тип услуга:"
+
+#: ../lib/network/ifw.pm:131
+#, fuzzy, c-format
+msgid "Password cracking"
+msgstr "Парола (отново)"
+
+#: ../lib/network/ifw.pm:132
+#, c-format
+msgid "\"%s\" attack"
+msgstr ""
+
+#: ../lib/network/ifw.pm:134
+#, c-format
+msgid "A port scanning attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:135
+#, fuzzy, c-format
+msgid "The %s service has been attacked by %s."
+msgstr "Това събитие е било променено."
+
+#: ../lib/network/ifw.pm:136
+#, c-format
+msgid "A password cracking attack has been attempted by %s."
+msgstr ""
+
+#: ../lib/network/ifw.pm:137
+#, fuzzy, c-format
+msgid "A \"%s\" attack has been attempted by %s"
+msgstr "Това събитие е било променено."
+
+#: ../lib/network/ifw.pm:146
+#, c-format
+msgid ""
+"The \"%s\" application is trying to make a service (%s) available to the "
+"network."
+msgstr ""
+
+#. -PO: this should be kept lowercase since the expression is meant to be used between brackets
+#: ../lib/network/ifw.pm:150
+#, fuzzy, c-format
+msgid "port %d"
+msgstr "Рапорт"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/netconnect.pm:603
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#, c-format
+msgid "Manual"
+msgstr "Ръчно"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/modem.pm:63
+#: ../lib/network/modem.pm:76 ../lib/network/modem.pm:81
+#: ../lib/network/modem.pm:110 ../lib/network/netconnect.pm:598
+#: ../lib/network/netconnect.pm:603 ../lib/network/netconnect.pm:615
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#: ../lib/network/netconnect.pm:638
+#, c-format
+msgid "Automatic"
+msgstr "Автоматично"
+
+#: ../lib/network/ndiswrapper.pm:27
+#, c-format
+msgid "No device supporting the %s ndiswrapper driver is present!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:33
+#, c-format
+msgid "Please select the Windows driver (.inf file)"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:42
+#, c-format
+msgid "Unable to install the %s ndiswrapper driver!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:86
+#, c-format
+msgid "Unable to load the ndiswrapper module!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:92
+#, c-format
+msgid ""
+"The selected device has already been configured with the %s driver.\n"
+"Do you really want to use a ndiswrapper driver?"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:102
+#, c-format
+msgid "Unable to find the ndiswrapper interface!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:115
+#, fuzzy, c-format
+msgid "Choose an ndiswrapper driver"
+msgstr "Избор на случаен драйвер"
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Use the ndiswrapper driver %s"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:118
+#, fuzzy, c-format
+msgid "Install a new driver"
+msgstr "Инсталиране на системата"
+
+#: ../lib/network/ndiswrapper.pm:129
+#, c-format
+msgid "Select a device:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:37
+#, c-format
+msgid "United States"
+msgstr "САЩ"
+
+#: ../lib/network/netconnect.pm:60 ../lib/network/netconnect.pm:493
+#: ../lib/network/netconnect.pm:507
+#, fuzzy, c-format
+msgid "Manual choice"
+msgstr "ръчно"
+
+#: ../lib/network/netconnect.pm:60
+#, c-format
+msgid "Internal ISDN card"
+msgstr "Вътрешна ISDN карта"
+
+#: ../lib/network/netconnect.pm:65
+#, c-format
+msgid "Protocol for the rest of the world"
+msgstr "Протокол за останалия свят"
+
+#: ../lib/network/netconnect.pm:67 ../tools/drakconnect:564
+#, c-format
+msgid "European protocol (EDSS1)"
+msgstr "Протокол Европа (EDSS1)"
+
+#: ../lib/network/netconnect.pm:68 ../tools/drakconnect:565
+#, c-format
+msgid ""
+"Protocol for the rest of the world\n"
+"No D-Channel (leased lines)"
+msgstr ""
+"Протокол за останалия свят\n"
+" без D-Канал (наета линия)"
+
+#: ../lib/network/netconnect.pm:118 ../tools/drakconnect:61
+#, fuzzy, c-format
+msgid "Network & Internet Configuration"
+msgstr "Настройка на мрежата"
+
+#: ../lib/network/netconnect.pm:123
+#, c-format
+msgid "Choose the connection you want to configure"
+msgstr "Изберете връзката, който искате да използвате"
+
+#: ../lib/network/netconnect.pm:145 ../lib/network/netconnect.pm:348
+#: ../lib/network/netconnect.pm:788
+#, fuzzy, c-format
+msgid "Select the network interface to configure:"
+msgstr "Изберете мрежов интерфейс"
+
+#: ../lib/network/netconnect.pm:164
+#, c-format
+msgid "No device can be found for this connection type."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:173
+#, fuzzy, c-format
+msgid "Hardware Configuration"
+msgstr "Настройка на мрежата"
+
+#: ../lib/network/netconnect.pm:177 ../tools/drakroam:90
+#, fuzzy, c-format
+msgid "Configuring device..."
+msgstr "Настройка ..."
+
+#: ../lib/network/netconnect.pm:194
+#, c-format
+msgid "Please select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:209 ../tools/drakroam:170
+#, fuzzy, c-format
+msgid "Scanning for networks..."
+msgstr "Стартиране мрежата...."
+
+#: ../lib/network/netconnect.pm:212
+#, c-format
+msgid "Please select your network:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:241
+#, c-format
+msgid ""
+"Please select your connection protocol.\n"
+"If you do not know it, keep the preselected protocol."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:285 ../lib/network/netconnect.pm:655
+#, c-format
+msgid "Connection control"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Connection Configuration"
+msgstr "Настройка на връзката"
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Please fill or check the field below"
+msgstr "Моля, попълнете или проверете полето по-долу"
+
+#: ../lib/network/netconnect.pm:318
+#, c-format
+msgid "Your personal phone number"
+msgstr "Личния ви телефонен номер"
+
+#: ../lib/network/netconnect.pm:319
+#, c-format
+msgid "Provider name (ex provider.net)"
+msgstr "Име на доставчика (напр. provider.net)"
+
+#: ../lib/network/netconnect.pm:320 ../tools/drakconnect:494
+#, c-format
+msgid "Provider phone number"
+msgstr "Телефонен номер на доставчика"
+
+#: ../lib/network/netconnect.pm:321
+#, fuzzy, c-format
+msgid "Provider DNS 1 (optional)"
+msgstr "1-ви DNS на доставчика (по желание)"
+
+#: ../lib/network/netconnect.pm:322
+#, fuzzy, c-format
+msgid "Provider DNS 2 (optional)"
+msgstr "2-ри DNS на доставчика (по желание)"
+
+#: ../lib/network/netconnect.pm:323 ../tools/drakconnect:446
+#, c-format
+msgid "Dialing mode"
+msgstr "Режим на набиране"
+
+#: ../lib/network/netconnect.pm:324 ../tools/drakconnect:451
+#: ../tools/drakconnect:518
+#, c-format
+msgid "Connection speed"
+msgstr "Скорост на връзката"
+
+#: ../lib/network/netconnect.pm:325 ../tools/drakconnect:456
+#, c-format
+msgid "Connection timeout (in sec)"
+msgstr "Timeout на връзката (в сек)"
+
+#: ../lib/network/netconnect.pm:328 ../tools/drakconnect:555
+#, c-format
+msgid "Card IRQ"
+msgstr "IRQ на картата"
+
+#: ../lib/network/netconnect.pm:329 ../tools/drakconnect:556
+#, c-format
+msgid "Card mem (DMA)"
+msgstr "Памет (DMA) на картата"
+
+#: ../lib/network/netconnect.pm:330 ../tools/drakconnect:557
+#, c-format
+msgid "Card IO"
+msgstr "IO на картата"
+
+#: ../lib/network/netconnect.pm:331 ../tools/drakconnect:558
+#, c-format
+msgid "Card IO_0"
+msgstr "IO_0 на картата"
+
+#: ../lib/network/netconnect.pm:332
+#, c-format
+msgid "Card IO_1"
+msgstr "IO_1 на картата"
+
+#: ../lib/network/netconnect.pm:350 ../lib/network/netconnect.pm:385
+#: ../tools/drakconnect:719 ../tools/drakgw:123
+#, c-format
+msgid "Net Device"
+msgstr "Мрежово у-во"
+
+#: ../lib/network/netconnect.pm:351 ../lib/network/netconnect.pm:356
+#, c-format
+msgid "External ISDN modem"
+msgstr "Външен ISDN модем"
+
+#: ../lib/network/netconnect.pm:384
+#, c-format
+msgid "Select a device!"
+msgstr "Изберете устройство !"
+
+#: ../lib/network/netconnect.pm:393 ../lib/network/netconnect.pm:403
+#: ../lib/network/netconnect.pm:413 ../lib/network/netconnect.pm:446
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid "ISDN Configuration"
+msgstr "Настройка на IDSN"
+
+#: ../lib/network/netconnect.pm:394
+#, c-format
+msgid "What kind of card do you have?"
+msgstr "Какъв тип карта имате ?"
+
+#: ../lib/network/netconnect.pm:404
+#, c-format
+msgid ""
+"\n"
+"If you have an ISA card, the values on the next screen should be right.\n"
+"\n"
+"If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your "
+"card.\n"
+msgstr ""
+"\n"
+"Ако имате ISA карта, стойностите на следващия екран трябва да са верни.\n"
+"\n"
+"Ако имате PCMCIA карта, ще трябва да знаете IRC и IO на картата си.\n"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Continue"
+msgstr "Нататък"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Abort"
+msgstr "Отказ"
+
+#: ../lib/network/netconnect.pm:414
+#, c-format
+msgid "Which of the following is your ISDN card?"
+msgstr "Коя от следните ISDN картати е вашата ?"
+
+#: ../lib/network/netconnect.pm:432
+#, c-format
+msgid ""
+"A CAPI driver is available for this modem. This CAPI driver can offer more "
+"capabilities than the free driver (like sending faxes). Which driver do you "
+"want to use?"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:434 ../tools/drakconnect:113
+#, c-format
+msgid "Driver"
+msgstr "Драйвер"
+
+#: ../lib/network/netconnect.pm:446
+#, c-format
+msgid "Which protocol do you want to use?"
+msgstr "Какъв протокол желаете да промените ?"
+
+#: ../lib/network/netconnect.pm:448 ../tools/drakconnect:113
+#: ../tools/drakconnect:305 ../tools/drakconnect:563 ../tools/drakids:252
+#: ../tools/drakvpn-old:839
+#, c-format
+msgid "Protocol"
+msgstr "Протокол"
+
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid ""
+"Select your provider.\n"
+"If it is not listed, choose Unlisted."
+msgstr ""
+"Посочете доставчика си.\n"
+" Ако не е в списъка, изберете Unlisted"
+
+#: ../lib/network/netconnect.pm:462 ../lib/network/netconnect.pm:558
+#, fuzzy, c-format
+msgid "Provider:"
+msgstr "Профил: "
+
+#: ../lib/network/netconnect.pm:471
+#, c-format
+msgid ""
+"Your modem is not supported by the system.\n"
+"Take a look at http://www.linmodems.org"
+msgstr ""
+"Вашият модем не се поддържа от системата.\n"
+"Погледнете в http://www.linmodems.org"
+
+#: ../lib/network/netconnect.pm:490
+#, fuzzy, c-format
+msgid "Select the modem to configure:"
+msgstr "Изберете мрежов интерфейс"
+
+#: ../lib/network/netconnect.pm:492
+#, c-format
+msgid "Modem"
+msgstr "Модем"
+
+#: ../lib/network/netconnect.pm:527
+#, c-format
+msgid "Please choose which serial port your modem is connected to."
+msgstr "Моля, изберете сериен порт към който свързан модемът ви."
+
+#: ../lib/network/netconnect.pm:556
+#, fuzzy, c-format
+msgid "Select your provider:"
+msgstr "Изберете принтерен spooler"
+
+#: ../lib/network/netconnect.pm:580
+#, fuzzy, c-format
+msgid "Dialup: account options"
+msgstr "Опции за избиране по телефон"
+
+#: ../lib/network/netconnect.pm:583
+#, c-format
+msgid "Connection name"
+msgstr "Име на връзката"
+
+#: ../lib/network/netconnect.pm:584
+#, c-format
+msgid "Phone number"
+msgstr "Телефонен номер"
+
+#: ../lib/network/netconnect.pm:585
+#, c-format
+msgid "Login ID"
+msgstr "Потребителско име"
+
+#: ../lib/network/netconnect.pm:586 ../lib/network/vpn/vpnc.pm:56
+#: ../tools/drakinvictus:110
+#, c-format
+msgid "Password"
+msgstr "Парола"
+
+#: ../lib/network/netconnect.pm:600 ../lib/network/netconnect.pm:633
+#, fuzzy, c-format
+msgid "Dialup: IP parameters"
+msgstr "Параметри"
+
+#: ../lib/network/netconnect.pm:603
+#, fuzzy, c-format
+msgid "IP parameters"
+msgstr "Параметри"
+
+#: ../lib/network/netconnect.pm:605
+#, fuzzy, c-format
+msgid "Subnet mask"
+msgstr "Маска на подмрежа:"
+
+#: ../lib/network/netconnect.pm:617
+#, c-format
+msgid "Dialup: DNS parameters"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:620
+#, c-format
+msgid "DNS"
+msgstr "Домейн"
+
+#: ../lib/network/netconnect.pm:621
+#, c-format
+msgid "Domain name"
+msgstr "Име на домейна"
+
+#: ../lib/network/netconnect.pm:622 ../tools/drakconnect:996
+#, c-format
+msgid "First DNS Server (optional)"
+msgstr "Първи DNS сървър (по избор)"
+
+#: ../lib/network/netconnect.pm:623 ../tools/drakconnect:997
+#, c-format
+msgid "Second DNS Server (optional)"
+msgstr "Втори DNS сървър (по избор)"
+
+#: ../lib/network/netconnect.pm:624
+#, fuzzy, c-format
+msgid "Set hostname from IP"
+msgstr "Име на хост за принтера или IP"
+
+#: ../lib/network/netconnect.pm:637
+#, fuzzy, c-format
+msgid "Gateway IP address"
+msgstr "IP адрес"
+
+#: ../lib/network/netconnect.pm:670
+#, fuzzy, c-format
+msgid "Automatically at boot"
+msgstr "Изпълнение при стартиране"
+
+#: ../lib/network/netconnect.pm:672
+#, c-format
+msgid "By using Net Applet in the system tray"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:674
+#, c-format
+msgid "Manually (the interface would still be activated at boot)"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:683
+#, fuzzy, c-format
+msgid "How do you want to dial this connection?"
+msgstr "Искате ли да стартирате връзката си при зареждане ?"
+
+#: ../lib/network/netconnect.pm:696
+#, c-format
+msgid "Do you want to try to connect to the Internet now?"
+msgstr "Искате ли сега да опитате връзка към Интернет ?"
+
+#: ../lib/network/netconnect.pm:704 ../tools/drakconnect:1027
+#, c-format
+msgid "Testing your connection..."
+msgstr "Изпробване на връзката..."
+
+#: ../lib/network/netconnect.pm:723
+#, c-format
+msgid "The system is now connected to the Internet."
+msgstr "Системата в момента е свързана към Интернет."
+
+#: ../lib/network/netconnect.pm:724
+#, c-format
+msgid "For security reasons, it will be disconnected now."
+msgstr "За ваша сигурност, сега тя ще бъдете отвързана."
+
+#: ../lib/network/netconnect.pm:725
+#, c-format
+msgid ""
+"The system does not seem to be connected to the Internet.\n"
+"Try to reconfigure your connection."
+msgstr ""
+"Системата не изглежда свързана към Интернет.\n"
+"Опитайте се да пренастроите връзката."
+
+#: ../lib/network/netconnect.pm:740
+#, c-format
+msgid ""
+"Congratulations, the network and Internet configuration is finished.\n"
+"\n"
+msgstr ""
+"Поздравления, мрежовата и интернет настройката е завършена.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:743
+#, c-format
+msgid ""
+"After this is done, we recommend that you restart your X environment to "
+"avoid any hostname-related problems."
+msgstr ""
+"След като стане това, препоръчваме ви да рестартирате X\n"
+"средата си, за да избегнете проблеми със смяната името на хоста."
+
+#: ../lib/network/netconnect.pm:744
+#, c-format
+msgid ""
+"Problems occurred during configuration.\n"
+"Test your connection via net_monitor or mcc. If your connection does not "
+"work, you might want to relaunch the configuration."
+msgstr ""
+"Появи се проблем при конфигурацията.\n"
+"Проверете вашата връзка през net_monitor или mcc. Ако вашата връзка не "
+"работи , вие трябва да преконфигурирате."
+
+#: ../lib/network/netconnect.pm:756
+#, fuzzy, c-format
+msgid "Sagem USB modem"
+msgstr "Системен режим"
+
+#: ../lib/network/netconnect.pm:757 ../lib/network/netconnect.pm:758
+#, c-format
+msgid "Bewan modem"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:759
+#, c-format
+msgid "ECI Hi-Focus modem"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:760
+#, c-format
+msgid "LAN connection"
+msgstr "LAN връзка"
+
+#: ../lib/network/netconnect.pm:761 ../tools/drakroam:29
+#, c-format
+msgid "Wireless connection"
+msgstr "Безжична връзка"
+
+#: ../lib/network/netconnect.pm:762
+#, c-format
+msgid "ADSL connection"
+msgstr "ADSL връзка"
+
+#: ../lib/network/netconnect.pm:763
+#, c-format
+msgid "Cable connection"
+msgstr "Кабелна връзка"
+
+#: ../lib/network/netconnect.pm:764
+#, c-format
+msgid "ISDN connection"
+msgstr "ISDN връзка"
+
+#: ../lib/network/netconnect.pm:765
+#, c-format
+msgid "Modem connection"
+msgstr "Модем"
+
+#: ../lib/network/netconnect.pm:766
+#, c-format
+msgid "DVB connection"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:768
+#, fuzzy, c-format
+msgid "(detected on port %s)"
+msgstr "засечен на порт %s"
+
+#. -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#: ../lib/network/netconnect.pm:770
+#, fuzzy, c-format
+msgid "(detected %s)"
+msgstr "засечена %s"
+
+#: ../lib/network/netconnect.pm:770
+#, fuzzy, c-format
+msgid "(detected)"
+msgstr "засечена "
+
+#: ../lib/network/netconnect.pm:771
+#, c-format
+msgid "Network Configuration"
+msgstr "Настройка на мрежата"
+
+#: ../lib/network/netconnect.pm:772
+#, fuzzy, c-format
+msgid "Zeroconf hostname resolution"
+msgstr "Име на Zeroconf хост:"
+
+#: ../lib/network/netconnect.pm:773
+#, c-format
+msgid ""
+"If desired, enter a Zeroconf hostname.\n"
+"This is the name your machine will use to advertise any of\n"
+"its shared resources that are not managed by the network.\n"
+"It is not necessary on most networks."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:777
+#, c-format
+msgid "Zeroconf Host name"
+msgstr "Име на Zeroconf хост:"
+
+#: ../lib/network/netconnect.pm:778
+#, c-format
+msgid "Zeroconf host name must not contain a ."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:779
+#, c-format
+msgid ""
+"Because you are doing a network installation, your network is already "
+"configured.\n"
+"Click on Ok to keep your configuration, or cancel to reconfigure your "
+"Internet & Network connection.\n"
+msgstr ""
+"Тъй като правите мрежова инсталация, мрежата ви вече е настроена.\n"
+"Цъкнете Ok, за да запазите настройката, или Отмяна, за да пренастоите "
+"Интернет и мрежовата си връзка.\n"
+
+#: ../lib/network/netconnect.pm:782
+#, c-format
+msgid "The network needs to be restarted. Do you want to restart it?"
+msgstr "Мрежата се нуждае от престартиране. Искате ли да я престартирам?"
+
+#: ../lib/network/netconnect.pm:783
+#, c-format
+msgid ""
+"A problem occurred while restarting the network: \n"
+"\n"
+"%s"
+msgstr ""
+"Изникна проблем при рестартирането на мрежата:\n"
+"\n"
+"%s"
+
+#: ../lib/network/netconnect.pm:784
+#, c-format
+msgid ""
+"We are now going to configure the %s connection.\n"
+"\n"
+"\n"
+"Press \"%s\" to continue."
+msgstr ""
+"Сега ще настроим %s връзката.\n"
+"\n"
+"\n"
+"\n"
+"Натиснете \"%s\", за да продължите."
+
+#: ../lib/network/netconnect.pm:785
+#, c-format
+msgid "Configuration is complete, do you want to apply settings?"
+msgstr "Настройката завърши,желаете ли да я приложите ?"
+
+#: ../lib/network/netconnect.pm:786
+#, c-format
+msgid ""
+"You have configured multiple ways to connect to the Internet.\n"
+"Choose the one you want to use.\n"
+"\n"
+msgstr ""
+"Настроили сте няколко начина за връзка към Интернет.\n"
+"Изберете този, който искате да използвате.\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:787
+#, c-format
+msgid "Internet connection"
+msgstr "Интернет връзка"
+
+#: ../lib/network/netconnect.pm:789
+#, fuzzy, c-format
+msgid "Configuring network device %s (driver %s)"
+msgstr "Настройка на мрежовото устройство %s"
+
+#: ../lib/network/netconnect.pm:790
+#, c-format
+msgid ""
+"The following protocols can be used to configure a LAN connection. Please "
+"choose the one you want to use."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:791
+#, c-format
+msgid ""
+"Please enter your host name.\n"
+"Your host name should be a fully-qualified host name,\n"
+"such as ``mybox.mylab.myco.com''.\n"
+"You may also enter the IP address of the gateway if you have one."
+msgstr ""
+"Моля, въведете host name за машината.\n"
+"Host името трябва да буде напълно квалифицирано име,\n"
+"като ``mybox.mylab.myco.com''.\n"
+"Можете също да въведете IP адреса на Вашия gateway, ако имате такъв"
+
+#: ../lib/network/netconnect.pm:796
+#, c-format
+msgid "Last but not least you can also type in your DNS server IP addresses."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:797
+#, c-format
+msgid "DNS server address should be in format 1.2.3.4"
+msgstr "DNS сървъра трябва да бъде във формат 1.2.3.4"
+
+#: ../lib/network/netconnect.pm:798 ../tools/drakconnect:689
+#, c-format
+msgid "Gateway address should be in format 1.2.3.4"
+msgstr "Gateway адреса трябва да бъде във формат 1.2.3.4"
+
+#: ../lib/network/netconnect.pm:799
+#, c-format
+msgid "Gateway device"
+msgstr "Gateway устройство"
+
+#: ../lib/network/netconnect.pm:813
+#, c-format
+msgid ""
+"An unexpected error has happened:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/network.pm:429
+#, c-format
+msgid "Proxies configuration"
+msgstr "Настройка на proxy"
+
+#: ../lib/network/network.pm:430
+#, c-format
+msgid ""
+"Here you can set up your proxies configuration (eg: http://"
+"my_caching_server:8080)"
+msgstr ""
+
+#: ../lib/network/network.pm:431
+#, c-format
+msgid "HTTP proxy"
+msgstr "HTTP proxy"
+
+#: ../lib/network/network.pm:432
+#, c-format
+msgid "Use HTTP proxy for HTTPS connections"
+msgstr ""
+
+#: ../lib/network/network.pm:433
+#, c-format
+msgid "HTTPS proxy"
+msgstr ""
+
+#: ../lib/network/network.pm:434
+#, c-format
+msgid "FTP proxy"
+msgstr "FTP proxy"
+
+#: ../lib/network/network.pm:435
+#, fuzzy, c-format
+msgid "No proxy for (comma separated list):"
+msgstr "%d със запетая разделен низ"
+
+#: ../lib/network/network.pm:440
+#, c-format
+msgid "Proxy should be http://..."
+msgstr "Proxy-сървъра трябва да е http://..."
+
+#: ../lib/network/network.pm:441
+#, fuzzy, c-format
+msgid "Proxy should be http://... or https://..."
+msgstr "Proxy-сървъра трябва да е http://..."
+
+#: ../lib/network/network.pm:442
+#, c-format
+msgid "URL should begin with 'ftp:' or 'http:'"
+msgstr "URL трябва да е започва с 'ftp:' или 'http:'"
+
+#: ../lib/network/shorewall.pm:61
+#, c-format
+msgid ""
+"Please select the interfaces that will be protected by the firewall.\n"
+"\n"
+"All interfaces directly connected to Internet should be selected,\n"
+"while interfaces connected to a local network may be unselected.\n"
+"\n"
+"Which interfaces should be protected?\n"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:136
+#, c-format
+msgid "Keep custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:137
+#, c-format
+msgid "Drop custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:142
+#, c-format
+msgid ""
+"Your firewall configuration has been manually edited and contains\n"
+"rules that may conflict with the configuration that has just been set up.\n"
+"What do you want to do?"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:134
+#, c-format
+msgid "Some components (%s) are required but aren't available for %s hardware."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:135
+#, c-format
+msgid "Some packages (%s) are required but aren't available."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:137
+#, c-format
+msgid ""
+"These packages can be found in Mandriva Club or in Mandriva commercial "
+"releases."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:138
+#, c-format
+msgid "The following component is missing: %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:140
+#, c-format
+msgid ""
+"The required files can also be installed from this URL:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:177 ../lib/network/thirdparty.pm:182
+#, fuzzy, c-format
+msgid "Use a floppy"
+msgstr "Запази на дискета"
+
+#: ../lib/network/thirdparty.pm:178 ../lib/network/thirdparty.pm:185
+#, fuzzy, c-format
+msgid "Use my Windows partition"
+msgstr "Изчислявам границите на Windows файловата система"
+
+#: ../lib/network/thirdparty.pm:179
+#, c-format
+msgid "Select file"
+msgstr "Изберете файл"
+
+#: ../lib/network/thirdparty.pm:190
+#, c-format
+msgid "Please select the firmware file (for example: %s)"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:214
+#, fuzzy, c-format
+msgid "Unable to find \"%s\" on your Windows system!"
+msgstr "Изтрива шрифтове от вашата система"
+
+#: ../lib/network/thirdparty.pm:216
+#, c-format
+msgid "No Windows system has been detected!"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:226
+#, c-format
+msgid "Insert floppy"
+msgstr "Сложете дискета във флопито"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid ""
+"Insert a FAT formatted floppy in drive %s with %s in root directory and "
+"press %s"
+msgstr ""
+"Сложете FAT форматирана дискета в устройство %s с %s в главната директория и "
+"натиснете %s"
+
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid "Next"
+msgstr "Следващ"
+
+#: ../lib/network/thirdparty.pm:237
+#, fuzzy, c-format
+msgid "Floppy access error, unable to mount device %s"
+msgstr "Къде искате да монтирате устройство %s ?"
+
+#: ../lib/network/thirdparty.pm:319
+#, c-format
+msgid "Looking for required software and drivers..."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:330
+#, fuzzy, c-format
+msgid "Please wait, running device configuration commands..."
+msgstr "Моля, изберете ниво на сигурност..."
+
+#: ../lib/network/vpn/openvpn.pm:107
+#, c-format
+msgid "X509 Public Key Infrastructure"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:108
+#, c-format
+msgid "Static Key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:115
+#, c-format
+msgid "Type"
+msgstr "Вид"
+
+#. -PO: please don't translate the CA acronym
+#: ../lib/network/vpn/openvpn.pm:142
+#, c-format
+msgid "Certificate Authority (CA)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:148
+#, c-format
+msgid "Certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:154
+#, fuzzy, c-format
+msgid "Key"
+msgstr "Кения"
+
+#: ../lib/network/vpn/openvpn.pm:160
+#, fuzzy, c-format
+msgid "TLS control channel key"
+msgstr "Ляв клавиш Ctrl"
+
+#: ../lib/network/vpn/openvpn.pm:167
+#, c-format
+msgid "Key direction"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:175
+#, fuzzy, c-format
+msgid "Authenticate using username and password"
+msgstr "Не мога да вляза като използвам име %s (грешна парола?)"
+
+#: ../lib/network/vpn/openvpn.pm:181
+#, c-format
+msgid "Check server certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:187
+#, fuzzy, c-format
+msgid "Cipher algorithm"
+msgstr "идентификация"
+
+#: ../lib/network/vpn/openvpn.pm:191
+#, c-format
+msgid "Default"
+msgstr "По подразбиране"
+
+#: ../lib/network/vpn/openvpn.pm:195
+#, c-format
+msgid "Size of cipher key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:206
+#, fuzzy, c-format
+msgid "Get from server"
+msgstr "X сървър"
+
+#: ../lib/network/vpn/openvpn.pm:216
+#, fuzzy, c-format
+msgid "Gateway port"
+msgstr "Gateway"
+
+#: ../lib/network/vpn/openvpn.pm:227 ../tools/drakgw:176
+#, fuzzy, c-format
+msgid "Local IP address"
+msgstr "IP адрес"
+
+#: ../lib/network/vpn/openvpn.pm:232
+#, fuzzy, c-format
+msgid "Remote IP address"
+msgstr "IP адрес"
+
+#: ../lib/network/vpn/openvpn.pm:237
+#, fuzzy, c-format
+msgid "Use TCP protocol"
+msgstr "Протокол"
+
+#: ../lib/network/vpn/openvpn.pm:243
+#, c-format
+msgid "Virtual network device type"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:250
+#, c-format
+msgid "Virtual network device number (optional)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:365
+#, c-format
+msgid "Starting connection.."
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:380
+#, c-format
+msgid "Please insert your token"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:9
+#, c-format
+msgid "Cisco VPN Concentrator"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:43
+#, fuzzy, c-format
+msgid "Group name"
+msgstr "Номер на група"
+
+#: ../lib/network/vpn/vpnc.pm:47
+#, c-format
+msgid "Group secret"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:52
+#, c-format
+msgid "Username"
+msgstr "Потребителско име"
+
+#: ../lib/network/vpn/vpnc.pm:61
+#, c-format
+msgid "Use Cisco-UDP encapsulation"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:67
+#, c-format
+msgid "Use specific UDP port"
+msgstr ""
+
+#: ../tools/drakconnect:81
+#, c-format
+msgid "Network configuration (%d adapters)"
+msgstr "Настройка на мрежата (%d адаптера)"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Gateway:"
+msgstr "Gateway:"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Interface:"
+msgstr "Интерфейс:"
+
+#: ../tools/drakconnect:97 ../tools/net_monitor:119
+#, c-format
+msgid "Wait please"
+msgstr ""
+
+#: ../tools/drakconnect:113 ../tools/drakinvictus:105
+#, c-format
+msgid "Interface"
+msgstr "Интерфейс"
+
+#: ../tools/drakconnect:113
+#, c-format
+msgid "State"
+msgstr "Състояние"
+
+#: ../tools/drakconnect:130
+#, c-format
+msgid "Hostname: "
+msgstr "Име на хост: "
+
+#: ../tools/drakconnect:132
+#, c-format
+msgid "Configure hostname..."
+msgstr "Настройка на име на хост..."
+
+#: ../tools/drakconnect:146 ../tools/drakconnect:850
+#, c-format
+msgid "LAN configuration"
+msgstr "Настройка на LAN"
+
+#: ../tools/drakconnect:151
+#, c-format
+msgid "Configure Local Area Network..."
+msgstr "Настойка на локална мрежа ..."
+
+#: ../tools/drakconnect:157 ../tools/drakconnect:240 ../tools/draknfs:181
+#, c-format
+msgid "Help"
+msgstr "Помощ"
+
+#: ../tools/drakconnect:159 ../tools/drakconnect:241 ../tools/drakconnect:245
+#: ../tools/drakinvictus:140
+#, c-format
+msgid "Apply"
+msgstr "Приложи"
+
+#: ../tools/drakconnect:161 ../tools/drakconnect:942 ../tools/drakconnect:1033
+#: ../tools/draknetprofile:106 ../tools/net_monitor:341
+#, c-format
+msgid "Cancel"
+msgstr "Отказ"
+
+#: ../tools/drakconnect:162 ../tools/drakconnect:857 ../tools/drakconnect:944
+#: ../tools/drakconnect:1034 ../tools/draknetprofile:108
+#: ../tools/net_monitor:342
+#, c-format
+msgid "Ok"
+msgstr "Ok"
+
+#: ../tools/drakconnect:164 ../tools/drakconnect:636 ../tools/drakgw:359
+#: ../tools/drakroam:251 ../tools/drakroam:289 ../tools/draksambashare:208
+#, c-format
+msgid "Please wait"
+msgstr "Моля изчакайте"
+
+#: ../tools/drakconnect:166 ../tools/drakconnect:638
+#, c-format
+msgid "Please Wait... Applying the configuration"
+msgstr "Моля, почакайте ... Прилагане на настройките"
+
+#: ../tools/drakconnect:192
+#, c-format
+msgid "Manage connections"
+msgstr "Настройка на връзките"
+
+#: ../tools/drakconnect:219 ../tools/drakroam:302
+#, c-format
+msgid "Device: "
+msgstr "Устройство: "
+
+#: ../tools/drakconnect:302
+#, fuzzy, c-format
+msgid "IP configuration"
+msgstr "CUPS конфигурация"
+
+#: ../tools/drakconnect:337
+#, fuzzy, c-format
+msgid "DNS servers"
+msgstr "DNS сървър"
+
+#: ../tools/drakconnect:343
+#, fuzzy, c-format
+msgid "Search Domain"
+msgstr "NIS домейн"
+
+#: ../tools/drakconnect:351 ../tools/drakvpn-old:837
+#, c-format
+msgid "none"
+msgstr "няма"
+
+#: ../tools/drakconnect:351
+#, fuzzy, c-format
+msgid "static"
+msgstr "Автоматичен IP адрес"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "DHCP"
+msgstr "DHCP"
+
+#: ../tools/drakconnect:434
+#, c-format
+msgid "Start at boot"
+msgstr "Изпълнение при стартиране"
+
+#: ../tools/drakconnect:516
+#, c-format
+msgid "Flow control"
+msgstr "Контрол на трансфера"
+
+#: ../tools/drakconnect:517
+#, fuzzy, c-format
+msgid "Line termination"
+msgstr "Интернет станция"
+
+#: ../tools/drakconnect:528
+#, fuzzy, c-format
+msgid "Modem timeout"
+msgstr "Шел време за достъп"
+
+#: ../tools/drakconnect:532
+#, fuzzy, c-format
+msgid "Use lock file"
+msgstr "Изберете файл"
+
+#: ../tools/drakconnect:534
+#, c-format
+msgid "Wait for dialup tone before dialing"
+msgstr ""
+
+#: ../tools/drakconnect:537
+#, fuzzy, c-format
+msgid "Busy wait"
+msgstr "Кувейт"
+
+#: ../tools/drakconnect:542
+#, fuzzy, c-format
+msgid "Modem sound"
+msgstr "Модем"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Enable"
+msgstr "Включване"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Disable"
+msgstr "Изключване"
+
+#: ../tools/drakconnect:592
+#, c-format
+msgid "Vendor"
+msgstr "Производител"
+
+#: ../tools/drakconnect:593
+#, c-format
+msgid "Description"
+msgstr "Описание"
+
+#: ../tools/drakconnect:594
+#, c-format
+msgid "Media class"
+msgstr "Клас носител"
+
+#: ../tools/drakconnect:595
+#, c-format
+msgid "Module name"
+msgstr "Име на модул"
+
+#: ../tools/drakconnect:596
+#, fuzzy, c-format
+msgid "Mac Address"
+msgstr "Broadcast адрес:"
+
+#: ../tools/drakconnect:597
+#, c-format
+msgid "Bus"
+msgstr "Шина"
+
+#: ../tools/drakconnect:598
+#, c-format
+msgid "Location on the bus"
+msgstr ""
+
+#: ../tools/drakconnect:685 ../tools/drakconnect:766 ../tools/drakconnect:952
+#, c-format
+msgid "No IP"
+msgstr ""
+
+#: ../tools/drakconnect:686 ../tools/drakconnect:767
+#, c-format
+msgid "No Mask"
+msgstr "Лоша маска"
+
+#: ../tools/drakconnect:705 ../tools/drakgw:307
+#, c-format
+msgid ""
+"No ethernet network adapter has been detected on your system. Please run the "
+"hardware configuration tool."
+msgstr ""
+"В системата не е открит ethernet мрежов адаптер. Моля, стартирайте "
+"инструмента за настройка на хардуер."
+
+#: ../tools/drakconnect:714
+#, fuzzy, c-format
+msgid "Remove a network interface"
+msgstr "Изберете мрежов интерфейс"
+
+#: ../tools/drakconnect:718
+#, fuzzy, c-format
+msgid "Select the network interface to remove:"
+msgstr "Изберете мрежов интерфейс"
+
+#: ../tools/drakconnect:750
+#, fuzzy, c-format
+msgid ""
+"An error occurred while deleting the \"%s\" network interface:\n"
+"\n"
+"%s"
+msgstr ""
+"Изникна проблем при рестартирането на мрежата:\n"
+"\n"
+"%s"
+
+#: ../tools/drakconnect:751
+#, c-format
+msgid ""
+"Congratulations, the \"%s\" network interface has been successfully deleted"
+msgstr ""
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "up"
+msgstr ""
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, fuzzy, c-format
+msgid "down"
+msgstr "готово"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Connected"
+msgstr "Свързан"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Not connected"
+msgstr "Не свързан"
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Disconnect..."
+msgstr "Отвързване ..."
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Connect..."
+msgstr "Свързване ..."
+
+#: ../tools/drakconnect:846
+#, fuzzy, c-format
+msgid "Deactivate now"
+msgstr "деактивирай сега"
+
+#: ../tools/drakconnect:846
+#, fuzzy, c-format
+msgid "Activate now"
+msgstr "активирай сега"
+
+#: ../tools/drakconnect:854
+#, c-format
+msgid ""
+"You do not have any configured interface.\n"
+"Configure them first by clicking on 'Configure'"
+msgstr ""
+"Нямате настроен интерфейс.\n"
+"Настройте ги преди това, като цъкнете на 'Настройка'"
+
+#: ../tools/drakconnect:868
+#, c-format
+msgid "LAN Configuration"
+msgstr "Настройка на локална мрежа"
+
+#: ../tools/drakconnect:880
+#, c-format
+msgid "Adapter %s: %s"
+msgstr "Адаптер %s: %s"
+
+#: ../tools/drakconnect:889
+#, c-format
+msgid "Boot Protocol"
+msgstr "Стартиращ протокол"
+
+#: ../tools/drakconnect:890
+#, c-format
+msgid "Started on boot"
+msgstr "Пуснат при стартиране"
+
+#: ../tools/drakconnect:926
+#, c-format
+msgid ""
+"This interface has not been configured yet.\n"
+"Run the \"Add an interface\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+
+#: ../tools/drakconnect:974
+#, c-format
+msgid "Internet connection configuration"
+msgstr "Настройка на Интернет връзка"
+
+#: ../tools/drakconnect:980 ../tools/net_applet:68
+#, fuzzy, c-format
+msgid ""
+"You do not have any configured Internet connection.\n"
+"Run the \"%s\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"Нямате Internet връзка.\n"
+"Създайте такава, като цъкнете на 'Настрой'"
+
+#. -PO: here "Add Connection" should be translated the same was as in control-center
+#: ../tools/drakconnect:981 ../tools/net_applet:69
+#, c-format
+msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)"
+msgstr "Настройване на мрежов интервейс (LAN, ISDN, ADSL, ...)"
+
+#: ../tools/drakconnect:995
+#, fuzzy, c-format
+msgid "Host name (optional)"
+msgstr "Първи DNS сървър (по избор)"
+
+#: ../tools/drakconnect:998
+#, fuzzy, c-format
+msgid "Third DNS server (optional)"
+msgstr "Първи DNS сървър (по избор)"
+
+#: ../tools/drakconnect:1020
+#, c-format
+msgid "Internet Connection Configuration"
+msgstr "Настройка на Интернет връзка"
+
+#: ../tools/drakconnect:1021
+#, c-format
+msgid "Internet access"
+msgstr "Интернет достъп"
+
+#: ../tools/drakconnect:1023 ../tools/net_monitor:98
+#, c-format
+msgid "Connection type: "
+msgstr "Тип на връзката: "
+
+#: ../tools/drakconnect:1026
+#, c-format
+msgid "Status:"
+msgstr "Състояние:"
+
+#: ../tools/drakconnect:1031
+#, c-format
+msgid "Parameters"
+msgstr "Параметри"
+
+#: ../tools/drakgw:71
+#, c-format
+msgid "Internet Connection Sharing"
+msgstr "Споделяне на връзката с Интернет"
+
+#: ../tools/drakgw:75
+#, c-format
+msgid ""
+"You are about to configure your computer to share its Internet connection.\n"
+"With that feature, other computers on your local network will be able to use "
+"this computer's Internet connection.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using drakconnect "
+"before going any further.\n"
+"\n"
+"Note: you need a dedicated Network Adapter to set up a Local Area Network "
+"(LAN)."
+msgstr ""
+"На път сте да настроите компютъра си така, че да поделя Интернет връзката\n"
+"си. С тази възможност, други компютри в локалната ви мрежа ще могат да\n"
+"използват Интернет връзката на този компютър.\n"
+"\n"
+"Убедете се, че вие сте конфигурирали вашата Мрежа/Интернет достъп "
+"използвайки drakconnect преди да правите друго.\n"
+"\n"
+"Отбележете: трябва ви отделен за това мрежов адаптер, за да установите "
+"вътрешната си мрежа (LAN)."
+
+#: ../tools/drakgw:91
+#, c-format
+msgid ""
+"The setup of Internet Connection Sharing has already been done.\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"Установката на Споделянето на Интернет връзката е завършена.\n"
+"В момента е включена.\n"
+"\n"
+"Какво искате да направите ?"
+
+#: ../tools/drakgw:95
+#, c-format
+msgid ""
+"The setup of Internet connection sharing has already been done.\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"Установката на Споделянето на Интернет връзката е вече завършена.\n"
+"В момента е изключена.\n"
+"\n"
+"Какво искате да направите ?"
+
+#: ../tools/drakgw:101
+#, c-format
+msgid "Reconfigure"
+msgstr "Преконфигуриране"
+
+#: ../tools/drakgw:122
+#, c-format
+msgid "Please select the network interface directly connected to the internet."
+msgstr ""
+
+#: ../tools/drakgw:141
+#, c-format
+msgid ""
+"There is only one configured network adapter on your system:\n"
+"\n"
+"%s\n"
+"\n"
+"I am about to setup your Local Area Network with that adapter."
+msgstr ""
+"В системата ви има само един настроен мрежов адаптер:\n"
+"\n"
+"%s\n"
+"\n"
+"Смятам да установя локалната ви мрежа на този адаптер."
+
+#: ../tools/drakgw:152
+#, c-format
+msgid ""
+"Please choose what network adapter will be connected to your Local Area "
+"Network."
+msgstr ""
+"Моля изберете кой мрежов адаптер да бъде включен към локалната ви мрежа."
+
+#: ../tools/drakgw:173
+#, fuzzy, c-format
+msgid "Local Area Network settings"
+msgstr "Адрес на Локална мрежа"
+
+#: ../tools/drakgw:178
+#, c-format
+msgid "The internal domain name"
+msgstr "Вътрешно име на домейн"
+
+#: ../tools/drakgw:184
+#, c-format
+msgid "Potential LAN address conflict found in current config of %s!\n"
+msgstr "Възможен конфликт с адресите в LAN с настройката на %s!\n"
+
+#: ../tools/drakgw:200
+#, fuzzy, c-format
+msgid "Domain Name Server (DNS) configuration"
+msgstr "Конфигурация на Терминален Сървър в Mandriva Linux"
+
+#: ../tools/drakgw:204
+#, c-format
+msgid "Use this gateway as domain name server"
+msgstr ""
+
+#: ../tools/drakgw:205
+#, c-format
+msgid "The DNS Server IP"
+msgstr "DNS сървър IP"
+
+#: ../tools/drakgw:232
+#, c-format
+msgid ""
+"DHCP Server Configuration.\n"
+"\n"
+"Here you can select different options for the DHCP server configuration.\n"
+"If you do not know the meaning of an option, simply leave it as it is."
+msgstr ""
+
+#: ../tools/drakgw:239
+#, fuzzy, c-format
+msgid "Use automatic configuration (DHCP)"
+msgstr "Автоматична реконфигурация"
+
+#: ../tools/drakgw:240
+#, c-format
+msgid "The DHCP start range"
+msgstr ""
+
+#: ../tools/drakgw:241
+#, c-format
+msgid "The DHCP end range"
+msgstr ""
+
+#: ../tools/drakgw:242
+#, c-format
+msgid "The default lease (in seconds)"
+msgstr ""
+
+#: ../tools/drakgw:243
+#, c-format
+msgid "The maximum lease (in seconds)"
+msgstr ""
+
+#: ../tools/drakgw:266
+#, c-format
+msgid "Proxy caching server (SQUID)"
+msgstr ""
+
+#: ../tools/drakgw:270
+#, c-format
+msgid "Use this gateway as proxy caching server"
+msgstr ""
+
+#: ../tools/drakgw:271
+#, c-format
+msgid "Admin mail"
+msgstr ""
+
+#: ../tools/drakgw:272
+#, fuzzy, c-format
+msgid "Visible hostname"
+msgstr "Име на отдалечен хост"
+
+#: ../tools/drakgw:273
+#, fuzzy, c-format
+msgid "Proxy port"
+msgstr "Собственост"
+
+#: ../tools/drakgw:274
+#, fuzzy, c-format
+msgid "Cache size (MB)"
+msgstr "Размер на кеш"
+
+#: ../tools/drakgw:296
+#, fuzzy, c-format
+msgid "Broadcast printer information"
+msgstr "Информацията за твърдия диск"
+
+#: ../tools/drakgw:313
+#, c-format
+msgid "Internet Connection Sharing is now enabled."
+msgstr "Споделянето на Интернет в момента е включено."
+
+#: ../tools/drakgw:319
+#, c-format
+msgid "Internet Connection Sharing is now disabled."
+msgstr "Споделянето на Интернет връзката в момента е изключено."
+
+#: ../tools/drakgw:325
+#, fuzzy, c-format
+msgid ""
+"Everything has been configured.\n"
+"You may now share Internet connection with other computers on your Local "
+"Area Network, using automatic network configuration (DHCP) and\n"
+" a Transparent Proxy Cache server (SQUID)."
+msgstr ""
+"Всичко е настроено.\n"
+"Сега можете да споделите Интернет връзката си с други компютри в локалната "
+"ви мрежа използвайки автоматична мрежова настройка (DHCP)."
+
+#: ../tools/drakgw:359
+#, c-format
+msgid "Disabling servers..."
+msgstr "Изключване на сървъри ..."
+
+#: ../tools/drakgw:373
+#, c-format
+msgid "Firewalling configuration detected!"
+msgstr "Открита е настройка на Защитна Стена !"
+
+#: ../tools/drakgw:374
+#, c-format
+msgid ""
+"Warning! An existing firewalling configuration has been detected. You may "
+"need some manual fixes after installation."
+msgstr ""
+"Внимание ! Открита е настройка на Защитна Стена. Може да се наложи някаква "
+"ръчна поправка след инсталацията."
+
+#: ../tools/drakgw:379
+#, c-format
+msgid "Configuring..."
+msgstr "Настройка ..."
+
+#: ../tools/drakgw:380
+#, c-format
+msgid "Configuring firewall..."
+msgstr ""
+
+#: ../tools/drakhosts:100
+#, c-format
+msgid "Please add an host to be able to modify it."
+msgstr ""
+
+#: ../tools/drakhosts:110
+#, fuzzy, c-format
+msgid "Please modify information"
+msgstr "Подробна информация"
+
+#: ../tools/drakhosts:111
+#, fuzzy, c-format
+msgid "Please delete information"
+msgstr "Подробна информация"
+
+#: ../tools/drakhosts:112
+#, fuzzy, c-format
+msgid "Please add information"
+msgstr "Подробна информация"
+
+#: ../tools/drakhosts:116
+#, c-format
+msgid "IP address:"
+msgstr "Адрес IP:"
+
+#: ../tools/drakhosts:117
+#, c-format
+msgid "Host name:"
+msgstr "Хост:"
+
+#: ../tools/drakhosts:118
+#, fuzzy, c-format
+msgid "Host Aliases:"
+msgstr "Име на хост:"
+
+#: ../tools/drakhosts:122 ../tools/drakhosts:128 ../tools/draksambashare:209
+#: ../tools/draksambashare:230 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Error!"
+msgstr "Грешка !"
+
+#: ../tools/drakhosts:122
+#, c-format
+msgid "Please enter a valid IP address."
+msgstr "Моля въведете валиден IP адрес."
+
+#: ../tools/drakhosts:128
+#, c-format
+msgid "Same IP is already in %s file."
+msgstr ""
+
+#: ../tools/drakhosts:196
+#, fuzzy, c-format
+msgid "Host Aliases"
+msgstr "Име на хост:"
+
+#: ../tools/drakhosts:206 ../tools/drakhosts:236
+#, fuzzy, c-format
+msgid "Manage hosts definitions"
+msgstr "Настройка на връзките"
+
+#: ../tools/drakhosts:222 ../tools/drakhosts:249
+#, c-format
+msgid "Modify entry"
+msgstr ""
+
+#: ../tools/drakhosts:241 ../tools/draknfs:563 ../tools/draksambashare:1102
+#: ../tools/draksambashare:1133 ../tools/draksambashare:1164
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Add"
+msgstr "Добавя"
+
+#: ../tools/drakhosts:242
+#, fuzzy, c-format
+msgid "Add entry"
+msgstr "Добавяне принтер"
+
+#: ../tools/drakhosts:245
+#, c-format
+msgid "Failed to add host."
+msgstr ""
+
+#: ../tools/drakhosts:248 ../tools/draknfs:570 ../tools/draksambashare:1059
+#: ../tools/draksambashare:1104 ../tools/draksambashare:1135
+#: ../tools/draksambashare:1172
+#, c-format
+msgid "Modify"
+msgstr "Модифицира"
+
+#: ../tools/drakhosts:252
+#, c-format
+msgid "Failed to Modify host."
+msgstr ""
+
+#: ../tools/drakhosts:255 ../tools/drakids:87 ../tools/drakids:96
+#: ../tools/draknfs:577 ../tools/draksambashare:1060
+#: ../tools/draksambashare:1112 ../tools/draksambashare:1143
+#: ../tools/draksambashare:1180 ../tools/drakvpn-old:253
+#: ../tools/drakvpn-old:391
+#, c-format
+msgid "Remove"
+msgstr "Премахва"
+
+#: ../tools/drakhosts:259
+#, c-format
+msgid "Failed to remove host."
+msgstr ""
+
+#: ../tools/drakhosts:262 ../tools/drakinvictus:141
+#: ../tools/draknetprofile:147 ../tools/drakroam:309 ../tools/net_applet:138
+#, c-format
+msgid "Quit"
+msgstr "Изход"
+
+#: ../tools/drakids:28
+#, fuzzy, c-format
+msgid "Allowed addresses"
+msgstr "Позволява на потребители"
+
+#: ../tools/drakids:65 ../tools/drakids:181 ../tools/drakids:190
+#: ../tools/drakids:215 ../tools/drakids:224 ../tools/drakids:234
+#: ../tools/drakids:326 ../tools/net_applet:238 ../tools/net_applet:514
+#, fuzzy, c-format
+msgid "Unable to contact daemon"
+msgstr "Не мога да се свръжа с огледален сървър' %s"
+
+#: ../tools/drakids:74 ../tools/drakids:102
+#, c-format
+msgid "Log"
+msgstr "Журнал"
+
+#: ../tools/drakids:78 ../tools/drakids:97 ../tools/net_applet:659
+#, fuzzy, c-format
+msgid "Allow"
+msgstr "Всички"
+
+#: ../tools/drakids:79 ../tools/drakids:88 ../tools/net_applet:660
+#, c-format
+msgid "Block"
+msgstr ""
+
+#: ../tools/drakids:80 ../tools/drakids:89 ../tools/drakids:98
+#: ../tools/drakids:109 ../tools/drakids:122 ../tools/drakids:130
+#: ../tools/draknfs:186 ../tools/net_monitor:120
+#, c-format
+msgid "Close"
+msgstr "Затвори"
+
+#: ../tools/drakids:83
+#, fuzzy, c-format
+msgid "Allowed services"
+msgstr "Позволява на потребители"
+
+#: ../tools/drakids:92
+#, fuzzy, c-format
+msgid "Blocked services"
+msgstr "Резервно копие на потребителски файлове"
+
+#: ../tools/drakids:106
+#, fuzzy, c-format
+msgid "Clear logs"
+msgstr "Изчисти всичко"
+
+#: ../tools/drakids:107 ../tools/drakids:112 ../tools/net_applet:602
+#, c-format
+msgid "Blacklist"
+msgstr ""
+
+#: ../tools/drakids:108 ../tools/drakids:125 ../tools/net_applet:607
+#, c-format
+msgid "Whitelist"
+msgstr ""
+
+#: ../tools/drakids:116
+#, fuzzy, c-format
+msgid "Remove from blacklist"
+msgstr "Премахни от LVM"
+
+#: ../tools/drakids:117
+#, c-format
+msgid "Move to whitelist"
+msgstr ""
+
+#: ../tools/drakids:129
+#, fuzzy, c-format
+msgid "Remove from whitelist"
+msgstr "Премахни от LVM"
+
+#: ../tools/drakids:247
+#, c-format
+msgid "Date"
+msgstr "Дата"
+
+#: ../tools/drakids:248
+#, fuzzy, c-format
+msgid "Attacker"
+msgstr "Без подробности"
+
+#: ../tools/drakids:249
+#, fuzzy, c-format
+msgid "Attack type"
+msgstr "тип: %s"
+
+#: ../tools/drakids:250 ../tools/drakids:283
+#, c-format
+msgid "Service"
+msgstr "Услуга"
+
+#: ../tools/drakids:251
+#, c-format
+msgid "Network interface"
+msgstr "Мрежов интерфейс"
+
+#: ../tools/drakids:282
+#, c-format
+msgid "Application"
+msgstr "Приложение"
+
+#: ../tools/drakids:284
+#, c-format
+msgid "Status"
+msgstr "Състояние"
+
+#: ../tools/drakids:286
+#, fuzzy, c-format
+msgid "Allowed"
+msgstr "Всички"
+
+#: ../tools/drakids:287
+#, c-format
+msgid "Blocked"
+msgstr ""
+
+#: ../tools/drakinvictus:36
+#, c-format
+msgid "Invictus Firewall"
+msgstr ""
+
+#: ../tools/drakinvictus:53
+#, fuzzy, c-format
+msgid "Start as master"
+msgstr "Пуснат при стартиране"
+
+#: ../tools/drakinvictus:72
+#, fuzzy, c-format
+msgid "A password is required."
+msgstr "Изисква парола"
+
+#: ../tools/drakinvictus:100
+#, c-format
+msgid ""
+"This tool allows to set up network interfaces failover and firewall "
+"replication."
+msgstr ""
+
+#: ../tools/drakinvictus:102
+#, c-format
+msgid "Network redundancy (leave empty if interface is not used)"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Real address"
+msgstr "Broadcast адрес:"
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual shared address"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual ID"
+msgstr ""
+
+#: ../tools/drakinvictus:114
+#, fuzzy, c-format
+msgid "Firewall replication"
+msgstr "Избор на файл"
+
+#: ../tools/drakinvictus:116
+#, c-format
+msgid "Synchronize firewall conntrack tables"
+msgstr ""
+
+#: ../tools/drakinvictus:123
+#, fuzzy, c-format
+msgid "Synchronization network interface"
+msgstr "Изберете мрежов интерфейс"
+
+#: ../tools/drakinvictus:132
+#, fuzzy, c-format
+msgid "Connection mark bit"
+msgstr "Връзка"
+
+#: ../tools/draknetprofile:36
+#, fuzzy, c-format
+msgid "Network profiles"
+msgstr "Мрежови опции"
+
+#: ../tools/draknetprofile:67
+#, fuzzy, c-format
+msgid "Profile"
+msgstr "Профили"
+
+#: ../tools/draknetprofile:99
+#, c-format
+msgid "New profile..."
+msgstr "Нов профил..."
+
+#: ../tools/draknetprofile:102
+#, c-format
+msgid ""
+"Name of the profile to create (the new profile is created as a copy of the "
+"current one):"
+msgstr "Име на новия профил (ще бъде създаден, като копие на текущият):"
+
+#: ../tools/draknetprofile:113
+#, c-format
+msgid "The \"%s\" profile already exists!"
+msgstr "Профилът \"%s\" вече съществува!"
+
+#: ../tools/draknetprofile:129
+#, c-format
+msgid "You can not delete the default profile"
+msgstr ""
+
+#: ../tools/draknetprofile:131
+#, c-format
+msgid "You can not delete the current profile"
+msgstr "Не може да изтриете профила, който ползвате в момента"
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid ""
+"This tool allows to activate an existing network profile, and to manage "
+"(clone, delete) profiles."
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid "To modify a profile, you have to activate it first."
+msgstr ""
+
+#: ../tools/draknetprofile:144
+#, c-format
+msgid "Activate"
+msgstr "Активира"
+
+#: ../tools/draknetprofile:145
+#, fuzzy, c-format
+msgid "Clone"
+msgstr "Връзка"
+
+#: ../tools/draknetprofile:146
+#, c-format
+msgid "Delete"
+msgstr "Изтрий"
+
+#: ../tools/draknfs:41
+#, c-format
+msgid "map root user as anonymous"
+msgstr ""
+
+#: ../tools/draknfs:42
+#, c-format
+msgid "map all users to anonymous user"
+msgstr ""
+
+#: ../tools/draknfs:43
+#, c-format
+msgid "No user UID mapping"
+msgstr ""
+
+#: ../tools/draknfs:44
+#, c-format
+msgid "allow real remote root access"
+msgstr ""
+
+#: ../tools/draknfs:58 ../tools/draknfs:59 ../tools/draknfs:60
+#: ../tools/draksambashare:161 ../tools/draksambashare:162
+#: ../tools/draksambashare:163
+#, c-format
+msgid "/_File"
+msgstr "/_Файл"
+
+#: ../tools/draknfs:59 ../tools/draksambashare:162
+#, c-format
+msgid "/_Write conf"
+msgstr ""
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "/_Quit"
+msgstr "/_Излиза"
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "<control>Q"
+msgstr "<control>Q"
+
+#: ../tools/draknfs:63 ../tools/draknfs:64 ../tools/draknfs:65
+#, fuzzy, c-format
+msgid "/_NFS Server"
+msgstr "DNS сървър"
+
+#: ../tools/draknfs:64 ../tools/draksambashare:166
+#, c-format
+msgid "/_Restart"
+msgstr ""
+
+#: ../tools/draknfs:65 ../tools/draksambashare:167
+#, c-format
+msgid "/R_eload"
+msgstr ""
+
+#: ../tools/draknfs:84
+#, fuzzy, c-format
+msgid "NFS server"
+msgstr "DNS сървър"
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "Restarting/Reloading NFS server..."
+msgstr ""
+
+#: ../tools/draknfs:85
+#, c-format
+msgid "Error Restarting/Reloading NFS server"
+msgstr ""
+
+#: ../tools/draknfs:101 ../tools/draksambashare:225
+#, fuzzy, c-format
+msgid "Directory Selection"
+msgstr "Посока"
+
+#: ../tools/draknfs:106 ../tools/draksambashare:230
+#, c-format
+msgid "Should be a directory."
+msgstr "Трябва да е директория"
+
+#: ../tools/draknfs:137
+#, c-format
+msgid ""
+"<span weight=\"bold\">NFS clients</span> may be specified in a number of "
+"ways:\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">single host:</span> a host either by an "
+"abbreviated name recognized be the resolver, fully qualified domain name, or "
+"an IP address\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">netgroups:</span> NIS netgroups may be given "
+"as @group.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">wildcards:</span> machine names may contain "
+"the wildcard characters * and ?. For instance: *.cs.foo.edu matches all "
+"hosts in the domain cs.foo.edu.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">IP networks:</span> you can also export "
+"directories to all hosts on an IP (sub-)network simultaneously. for example, "
+"either `/255.255.252.0' or `/22' appended to the network base address "
+"result.\n"
+msgstr ""
+
+#: ../tools/draknfs:152
+#, c-format
+msgid ""
+"<span weight=\"bold\">User ID options</span>\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map root user as anonymous:</span> map "
+"requests from uid/gid 0 to the anonymous uid/gid (root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">allow real remote root access:</span> turn "
+"off root squashing. This option is mainly useful for diskless clients "
+"(no_root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map all users to anonymous user:</span> map "
+"all uids and gids to the anonymous user (all_squash). Useful for NFS-"
+"exported public FTP directories, news spool directories, etc. The opposite "
+"option is no user UID mapping (no_all_squash), which is the default "
+"setting.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">anonuid and anongid:</span> explicitly set "
+"the uid and gid of the anonymous account.\n"
+msgstr ""
+
+#: ../tools/draknfs:168
+#, c-format
+msgid "Synchronous access:"
+msgstr ""
+
+#: ../tools/draknfs:169
+#, fuzzy, c-format
+msgid "Secured Connection:"
+msgstr "Интернет връзка"
+
+#: ../tools/draknfs:170
+#, c-format
+msgid "Read-Only share:"
+msgstr ""
+
+#: ../tools/draknfs:172
+#, c-format
+msgid "Advanced Options"
+msgstr ""
+
+#: ../tools/draknfs:173
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> this option requires that requests "
+"originate on an internet port less than IPPORT_RESERVED (1024). This option "
+"is on by default."
+msgstr ""
+
+#: ../tools/draknfs:174
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> allow either only read or both "
+"read and write requests on this NFS volume. The default is to disallow any "
+"request which changes the filesystem. This can also be made explicit by "
+"using this option."
+msgstr ""
+
+#: ../tools/draknfs:175
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> disallows the NFS server to "
+"violate the NFS protocol and to reply to requests before any changes made by "
+"these requests have been committed to stable storage (e.g. disc drive)."
+msgstr ""
+
+#: ../tools/draknfs:180 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Information"
+msgstr "Информация"
+
+#: ../tools/draknfs:260
+#, c-format
+msgid "Directory"
+msgstr "Директория"
+
+#: ../tools/draknfs:264
+#, c-format
+msgid "Draknfs entry"
+msgstr ""
+
+#: ../tools/draknfs:273
+#, c-format
+msgid "Please add an NFS share to be able to modify it."
+msgstr ""
+
+#: ../tools/draknfs:357
+#, c-format
+msgid "NFS directory"
+msgstr ""
+
+#: ../tools/draknfs:358 ../tools/draksambashare:361
+#: ../tools/draksambashare:570 ../tools/draksambashare:749
+#, c-format
+msgid "Directory:"
+msgstr "Директория:"
+
+#: ../tools/draknfs:359
+#, fuzzy, c-format
+msgid "Host access"
+msgstr "Име на хост:"
+
+#: ../tools/draknfs:360
+#, c-format
+msgid "Access:"
+msgstr "Достъп:"
+
+#: ../tools/draknfs:361
+#, c-format
+msgid "User ID Mapping"
+msgstr ""
+
+#: ../tools/draknfs:362
+#, c-format
+msgid "User ID:"
+msgstr "Номер (UID):"
+
+#: ../tools/draknfs:363
+#, c-format
+msgid "Anonymous user ID:"
+msgstr ""
+
+#: ../tools/draknfs:364
+#, c-format
+msgid "Anonymous Group ID:"
+msgstr ""
+
+#: ../tools/draknfs:400
+#, fuzzy, c-format
+msgid "Please specify a directory to share."
+msgstr "Моля, въведете име на хост или IP."
+
+#: ../tools/draknfs:402
+#, c-format
+msgid "Can't create this directory."
+msgstr ""
+
+#: ../tools/draknfs:405
+#, c-format
+msgid "You must specify hosts access."
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Share Directory"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Hosts Wildcard"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "General Options"
+msgstr "Общи настройки"
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Custom Options"
+msgstr ""
+
+#: ../tools/draknfs:497 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Please enter a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:504
+#, c-format
+msgid "Please use the modify button to set right access."
+msgstr ""
+
+#: ../tools/draknfs:519
+#, c-format
+msgid "Manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:558
+#, c-format
+msgid "DrakNFS manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:567
+#, c-format
+msgid "Failed to add NFS share."
+msgstr ""
+
+#: ../tools/draknfs:574
+#, c-format
+msgid "Failed to Modify NFS share."
+msgstr ""
+
+#: ../tools/draknfs:581
+#, c-format
+msgid "Failed to remove an NFS share."
+msgstr ""
+
+#: ../tools/drakproxy:36
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr ""
+
+#: ../tools/drakroam:61
+#, c-format
+msgid "No device found"
+msgstr "Не беше открито устройство"
+
+#: ../tools/drakroam:86 ../tools/drakroam:217
+#, fuzzy, c-format
+msgid "Please enter settings for network"
+msgstr "Подробна информация"
+
+#: ../tools/drakroam:115
+#, c-format
+msgid "SSID"
+msgstr ""
+
+#: ../tools/drakroam:116
+#, c-format
+msgid "Signal strength"
+msgstr ""
+
+#: ../tools/drakroam:118
+#, c-format
+msgid "Encryption"
+msgstr "Криптиране"
+
+#: ../tools/drakroam:131
+#, c-format
+msgid "Hostname changed to \"%s\""
+msgstr ""
+
+#: ../tools/drakroam:251
+#, fuzzy, c-format
+msgid "Connecting..."
+msgstr "Свързване ..."
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Disconnect"
+msgstr "Разкачване"
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Connect"
+msgstr "Връзка"
+
+#: ../tools/drakroam:289
+#, fuzzy, c-format
+msgid "Disconnecting..."
+msgstr "Отвързване ..."
+
+#: ../tools/drakroam:306
+#, c-format
+msgid "Configure"
+msgstr "Настрока"
+
+#: ../tools/drakroam:308
+#, c-format
+msgid "Refresh"
+msgstr "Опресни"
+
+#: ../tools/draksambashare:63
+#, c-format
+msgid "User name"
+msgstr "Потребителско име"
+
+#: ../tools/draksambashare:70
+#, c-format
+msgid "Share name"
+msgstr "Общо име"
+
+#: ../tools/draksambashare:71
+#, fuzzy, c-format
+msgid "Share directory"
+msgstr "Не е директория"
+
+#: ../tools/draksambashare:72 ../tools/draksambashare:105
+#, c-format
+msgid "Comment"
+msgstr "Коментар"
+
+#: ../tools/draksambashare:73 ../tools/draksambashare:106
+#, fuzzy, c-format
+msgid "Browseable"
+msgstr "Преглед"
+
+#: ../tools/draksambashare:74
+#, c-format
+msgid "Public"
+msgstr "Публичен"
+
+#: ../tools/draksambashare:75 ../tools/draksambashare:111
+#, c-format
+msgid "Writable"
+msgstr "Запис"
+
+#: ../tools/draksambashare:76 ../tools/draksambashare:152
+#, fuzzy, c-format
+msgid "Create mask"
+msgstr "Създай"
+
+#: ../tools/draksambashare:77 ../tools/draksambashare:153
+#, fuzzy, c-format
+msgid "Directory mask"
+msgstr "Сървър с директории"
+
+#: ../tools/draksambashare:78
+#, fuzzy, c-format
+msgid "Read list"
+msgstr "Четене"
+
+#: ../tools/draksambashare:79 ../tools/draksambashare:112
+#: ../tools/draksambashare:584
+#, fuzzy, c-format
+msgid "Write list"
+msgstr "Запис"
+
+#: ../tools/draksambashare:80 ../tools/draksambashare:144
+#, fuzzy, c-format
+msgid "Admin users"
+msgstr "Добави потребител"
+
+#: ../tools/draksambashare:81 ../tools/draksambashare:145
+#, fuzzy, c-format
+msgid "Valid users"
+msgstr "Добави потребител"
+
+#: ../tools/draksambashare:82
+#, fuzzy, c-format
+msgid "Inherit Permissions"
+msgstr "Права"
+
+#: ../tools/draksambashare:83 ../tools/draksambashare:146
+#, fuzzy, c-format
+msgid "Hide dot files"
+msgstr "Скрий файловете"
+
+#: ../tools/draksambashare:84 ../tools/draksambashare:147
+#, c-format
+msgid "Hide files"
+msgstr "Скрий файловете"
+
+#: ../tools/draksambashare:85 ../tools/draksambashare:151
+#, fuzzy, c-format
+msgid "Preserve case"
+msgstr "Настройки"
+
+#: ../tools/draksambashare:86
+#, fuzzy, c-format
+msgid "Force create mode"
+msgstr "Вашият модел принтер"
+
+#: ../tools/draksambashare:87
+#, fuzzy, c-format
+msgid "Force group"
+msgstr "Работна група"
+
+#: ../tools/draksambashare:88 ../tools/draksambashare:150
+#, fuzzy, c-format
+msgid "Default case"
+msgstr "Потребител по подразбиране"
+
+#: ../tools/draksambashare:103
+#, c-format
+msgid "Printer name"
+msgstr "Име на принтера"
+
+#: ../tools/draksambashare:104
+#, c-format
+msgid "Path"
+msgstr "Път"
+
+#: ../tools/draksambashare:107 ../tools/draksambashare:576
+#, fuzzy, c-format
+msgid "Printable"
+msgstr "Включване"
+
+#: ../tools/draksambashare:108
+#, fuzzy, c-format
+msgid "Print Command"
+msgstr "Команда"
+
+#: ../tools/draksambashare:109
+#, fuzzy, c-format
+msgid "LPQ command"
+msgstr "Команда"
+
+#: ../tools/draksambashare:110
+#, c-format
+msgid "Guest ok"
+msgstr ""
+
+#: ../tools/draksambashare:113 ../tools/draksambashare:154
+#: ../tools/draksambashare:585
+#, fuzzy, c-format
+msgid "Inherit permissions"
+msgstr "Права"
+
+#: ../tools/draksambashare:114
+#, c-format
+msgid "Printing"
+msgstr "Печатане"
+
+#: ../tools/draksambashare:115
+#, fuzzy, c-format
+msgid "Create mode"
+msgstr "Модел на карта:"
+
+#: ../tools/draksambashare:116
+#, fuzzy, c-format
+msgid "Use client driver"
+msgstr "X сървър"
+
+#: ../tools/draksambashare:142
+#, fuzzy, c-format
+msgid "Read List"
+msgstr "Изтрива списък"
+
+#: ../tools/draksambashare:143
+#, fuzzy, c-format
+msgid "Write List"
+msgstr "Запис"
+
+#: ../tools/draksambashare:148
+#, fuzzy, c-format
+msgid "Force Group"
+msgstr "Група"
+
+#: ../tools/draksambashare:149
+#, c-format
+msgid "Force create group"
+msgstr ""
+
+#: ../tools/draksambashare:165 ../tools/draksambashare:166
+#: ../tools/draksambashare:167
+#, fuzzy, c-format
+msgid "/_Samba Server"
+msgstr "Web Сървър"
+
+#: ../tools/draksambashare:169 ../tools/draksambashare:170
+#, c-format
+msgid "/_About"
+msgstr "/_Относно"
+
+#: ../tools/draksambashare:169
+#, c-format
+msgid "/_Report Bug"
+msgstr "/_Информирай за бъг"
+
+#: ../tools/draksambashare:170
+#, c-format
+msgid "/About..."
+msgstr ""
+
+#: ../tools/draksambashare:173
+#, fuzzy, c-format
+msgid "Draksambashare"
+msgstr "Samba Сървър"
+
+#: ../tools/draksambashare:175
+#, c-format
+msgid "Copyright (C) %s by Mandriva"
+msgstr ""
+
+#: ../tools/draksambashare:177
+#, c-format
+msgid "This is a simple tool to easily manage Samba configuration."
+msgstr ""
+
+#: ../tools/draksambashare:179
+#, fuzzy, c-format
+msgid "Mandriva Linux"
+msgstr "Mandriva Online"
+
+#. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+#: ../tools/draksambashare:184
+#, c-format
+msgid "_: Translator(s) name(s) & email(s)\n"
+msgstr "Boyan Ivanov <boyan17@bulgaria.com>\n"
+
+#: ../tools/draksambashare:208
+#, c-format
+msgid "Restarting/Reloading Samba server..."
+msgstr ""
+
+#: ../tools/draksambashare:209
+#, c-format
+msgid "Error Restarting/Reloading Samba server"
+msgstr ""
+
+#: ../tools/draksambashare:349 ../tools/draksambashare:549
+#: ../tools/draksambashare:670
+#, c-format
+msgid "Open"
+msgstr "Отвори"
+
+#: ../tools/draksambashare:352
+#, fuzzy, c-format
+msgid "DrakSamba add entry"
+msgstr "Samba Сървър"
+
+#: ../tools/draksambashare:356
+#, fuzzy, c-format
+msgid "Add a share"
+msgstr "Samba Сървър"
+
+#: ../tools/draksambashare:359
+#, fuzzy, c-format
+msgid "Name of the share:"
+msgstr "Име на принтер"
+
+#: ../tools/draksambashare:360 ../tools/draksambashare:569
+#: ../tools/draksambashare:750
+#, c-format
+msgid "Comment:"
+msgstr "Коментар:"
+
+#: ../tools/draksambashare:372
+#, c-format
+msgid ""
+"Share with the same name already exist or share name empty, please choose "
+"another name."
+msgstr ""
+
+#: ../tools/draksambashare:379
+#, c-format
+msgid "Can't create the directory, please enter a correct path."
+msgstr ""
+
+#: ../tools/draksambashare:382 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, fuzzy, c-format
+msgid "Please enter a Comment for this share."
+msgstr "Моля, въведете име на хост или IP."
+
+#: ../tools/draksambashare:413
+#, c-format
+msgid "pdf-gen - a PDF generator"
+msgstr ""
+
+#: ../tools/draksambashare:414
+#, c-format
+msgid "printers - all printers available"
+msgstr ""
+
+#: ../tools/draksambashare:418
+#, c-format
+msgid "Add Special Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:421
+#, c-format
+msgid ""
+"Goal of this wizard is to easily create a new special printer Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:428
+#, fuzzy, c-format
+msgid "A PDF generator already exists."
+msgstr "Профилът \"%s\" вече съществува!"
+
+#: ../tools/draksambashare:452
+#, fuzzy, c-format
+msgid "Printers and print$ already exist."
+msgstr "Профилът \"%s\" вече съществува!"
+
+#: ../tools/draksambashare:502
+#, c-format
+msgid "Congratulations"
+msgstr "Поздравления"
+
+#: ../tools/draksambashare:503
+#, c-format
+msgid "The wizard successfully added the printer Samba share"
+msgstr ""
+
+#: ../tools/draksambashare:518
+#, c-format
+msgid "Failed to add printers."
+msgstr ""
+
+#: ../tools/draksambashare:533
+#, c-format
+msgid "Please add or select a Samba printer share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:552
+#, c-format
+msgid "DrakSamba Printers entry"
+msgstr ""
+
+#: ../tools/draksambashare:565
+#, c-format
+msgid "Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:568
+#, c-format
+msgid "Printer name:"
+msgstr "Име на принтер:"
+
+#: ../tools/draksambashare:574 ../tools/draksambashare:755
+#, fuzzy, c-format
+msgid "Writable:"
+msgstr "Запис"
+
+#: ../tools/draksambashare:575 ../tools/draksambashare:756
+#, fuzzy, c-format
+msgid "Browseable:"
+msgstr "Преглед"
+
+#: ../tools/draksambashare:580
+#, c-format
+msgid "Advanced options"
+msgstr "Допълнителни настройки"
+
+#: ../tools/draksambashare:582
+#, fuzzy, c-format
+msgid "Printer access"
+msgstr "Интернет достъп"
+
+#: ../tools/draksambashare:586
+#, c-format
+msgid "Guest ok:"
+msgstr ""
+
+#: ../tools/draksambashare:587
+#, fuzzy, c-format
+msgid "Create mode:"
+msgstr "Модел на карта:"
+
+#: ../tools/draksambashare:591
+#, c-format
+msgid "Printer command"
+msgstr ""
+
+#: ../tools/draksambashare:593
+#, c-format
+msgid "Print command:"
+msgstr ""
+
+#: ../tools/draksambashare:594
+#, fuzzy, c-format
+msgid "LPQ command:"
+msgstr "Команда"
+
+#: ../tools/draksambashare:595
+#, fuzzy, c-format
+msgid "Printing:"
+msgstr "Предупреждение"
+
+#: ../tools/draksambashare:611
+#, c-format
+msgid "create mode should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:673
+#, c-format
+msgid "DrakSamba entry"
+msgstr ""
+
+#: ../tools/draksambashare:678
+#, c-format
+msgid "Please add or select a Samba share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:701
+#, fuzzy, c-format
+msgid "Samba user access"
+msgstr "Samba Сървър"
+
+#: ../tools/draksambashare:709
+#, fuzzy, c-format
+msgid "Mask options"
+msgstr "Основни настройки"
+
+#: ../tools/draksambashare:723
+#, fuzzy, c-format
+msgid "Display options"
+msgstr "Задай опции"
+
+#: ../tools/draksambashare:745
+#, fuzzy, c-format
+msgid "Samba share directory"
+msgstr "Не е директория"
+
+#: ../tools/draksambashare:748
+#, fuzzy, c-format
+msgid "Share name:"
+msgstr "Общо име"
+
+#: ../tools/draksambashare:754
+#, c-format
+msgid "Public:"
+msgstr ""
+
+#: ../tools/draksambashare:778
+#, c-format
+msgid ""
+"Create mask, create mode and directory mask should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:785
+#, c-format
+msgid "Please create this Samba user: %s"
+msgstr ""
+
+#: ../tools/draksambashare:889
+#, c-format
+msgid "Add Samba user"
+msgstr ""
+
+#: ../tools/draksambashare:904
+#, fuzzy, c-format
+msgid "User information"
+msgstr "Изчислявам границите на Windows файловата система"
+
+#: ../tools/draksambashare:906
+#, c-format
+msgid "User name:"
+msgstr "Потребител:"
+
+#: ../tools/draksambashare:907
+#, c-format
+msgid "Password:"
+msgstr "Парола:"
+
+#: ../tools/draksambashare:1021
+#, fuzzy, c-format
+msgid "Manage Samba configuration"
+msgstr "Конфигурация за подредба на поща"
+
+#: ../tools/draksambashare:1109
+#, c-format
+msgid "Failed to Modify Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1118
+#, c-format
+msgid "Failed to remove a Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1125
+#, c-format
+msgid "File share"
+msgstr ""
+
+#: ../tools/draksambashare:1140
+#, c-format
+msgid "Failed to Modify."
+msgstr ""
+
+#: ../tools/draksambashare:1149
+#, c-format
+msgid "Failed to remove."
+msgstr ""
+
+#: ../tools/draksambashare:1156
+#, c-format
+msgid "Printers"
+msgstr "Принтери"
+
+#: ../tools/draksambashare:1168
+#, c-format
+msgid "Failed to add user."
+msgstr ""
+
+#: ../tools/draksambashare:1177
+#, c-format
+msgid "Failed to change user password."
+msgstr ""
+
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Failed to delete user."
+msgstr ""
+
+#: ../tools/draksambashare:1194
+#, c-format
+msgid "Userdrake"
+msgstr "Userdrake"
+
+#: ../tools/draksambashare:1202
+#, c-format
+msgid "Samba Users"
+msgstr ""
+
+#: ../tools/draksambashare:1211
+#, c-format
+msgid "DrakSamba manage Samba shares"
+msgstr ""
+
+#: ../tools/drakvpn-old:65
+#, c-format
+msgid "DrakVPN"
+msgstr ""
+
+#: ../tools/drakvpn-old:87
+#, c-format
+msgid "The VPN connection is enabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:88
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:93
+#, c-format
+msgid "disable"
+msgstr "изключи"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119
+#, c-format
+msgid "reconfigure"
+msgstr "пренастройка"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119 ../tools/drakvpn-old:432
+#, c-format
+msgid "dismiss"
+msgstr "остави"
+
+#: ../tools/drakvpn-old:97
+#, c-format
+msgid "Disabling VPN..."
+msgstr ""
+
+#: ../tools/drakvpn-old:106
+#, c-format
+msgid "The VPN connection is now disabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:113
+#, c-format
+msgid "VPN connection currently disabled"
+msgstr ""
+
+#: ../tools/drakvpn-old:114
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+
+#: ../tools/drakvpn-old:119
+#, c-format
+msgid "enable"
+msgstr "включи"
+
+#: ../tools/drakvpn-old:127
+#, c-format
+msgid "Enabling VPN..."
+msgstr ""
+
+#: ../tools/drakvpn-old:133
+#, c-format
+msgid "The VPN connection is now enabled."
+msgstr ""
+
+#: ../tools/drakvpn-old:147 ../tools/drakvpn-old:164
+#, c-format
+msgid "Simple VPN setup."
+msgstr ""
+
+#: ../tools/drakvpn-old:148
+#, c-format
+msgid ""
+"You are about to configure your computer to use a VPN connection.\n"
+"\n"
+"With this feature, computers on your local private network and computers\n"
+"on some other remote private networks, can share resources, through\n"
+"their respective firewalls, over the Internet, in a secure manner. \n"
+"\n"
+"The communication over the Internet is encrypted. The local and remote\n"
+"computers look as if they were on the same network.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using\n"
+"drakconnect before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:165
+#, c-format
+msgid ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+msgstr ""
+
+#: ../tools/drakvpn-old:208
+#, c-format
+msgid "Problems installing package %s"
+msgstr "Проблеми с инсталирането на пакета %s"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "Security Policies"
+msgstr ""
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "IKE daemon racoon"
+msgstr ""
+
+#: ../tools/drakvpn-old:224
+#, c-format
+msgid "Configuration file"
+msgstr ""
+
+#: ../tools/drakvpn-old:225
+#, c-format
+msgid ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:245 ../tools/drakvpn-old:382
+#, c-format
+msgid "%s entries"
+msgstr ""
+
+#: ../tools/drakvpn-old:246
+#, c-format
+msgid ""
+"The %s file contents\n"
+"is divided into sections.\n"
+"\n"
+"You can now:\n"
+"\n"
+" - display, add, edit, or remove sections, then\n"
+" - commit the changes\n"
+"\n"
+"What would you like to do?\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display"
+msgstr ""
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Edit"
+msgstr "Редакция"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Commit"
+msgstr ""
+
+#: ../tools/drakvpn-old:267 ../tools/drakvpn-old:271 ../tools/drakvpn-old:406
+#: ../tools/drakvpn-old:410
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display configuration"
+msgstr ""
+
+#: ../tools/drakvpn-old:272
+#, c-format
+msgid ""
+"The %s file does not exist.\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose 'add'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:301
+#, c-format
+msgid ""
+"Add a Security Policy.\n"
+"\n"
+"You can now add a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:333 ../tools/drakvpn-old:523
+#, c-format
+msgid "Edit section"
+msgstr ""
+
+#: ../tools/drakvpn-old:334
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to edit \n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:337 ../tools/drakvpn-old:357 ../tools/drakvpn-old:528
+#: ../tools/drakvpn-old:574
+#, c-format
+msgid "Section names"
+msgstr ""
+
+#: ../tools/drakvpn-old:344
+#, c-format
+msgid ""
+"Edit a Security Policy.\n"
+"\n"
+"You can now edit a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:353 ../tools/drakvpn-old:570
+#, c-format
+msgid "Remove section"
+msgstr ""
+
+#: ../tools/drakvpn-old:354 ../tools/drakvpn-old:571
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to remove\n"
+"and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:383
+#, c-format
+msgid ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+msgstr ""
+
+#: ../tools/drakvpn-old:411
+#, c-format
+msgid ""
+"The %s file does not exist\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose configure.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:425
+#, c-format
+msgid "racoon.conf entries"
+msgstr ""
+
+#: ../tools/drakvpn-old:426
+#, c-format
+msgid ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "path"
+msgstr "път"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "remote"
+msgstr "отдалечен"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "sainfo"
+msgstr ""
+
+#: ../tools/drakvpn-old:440
+#, c-format
+msgid ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+msgstr ""
+
+#: ../tools/drakvpn-old:443
+#, c-format
+msgid "path type"
+msgstr ""
+
+#: ../tools/drakvpn-old:447
+#, c-format
+msgid ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+msgstr ""
+
+#: ../tools/drakvpn-old:467 ../tools/drakvpn-old:560
+#, c-format
+msgid "real file"
+msgstr ""
+
+#: ../tools/drakvpn-old:490
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:507
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:524
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here in the list below the one you want\n"
+"to edit and then click on next.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:535
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"\n"
+"You can now edit the remote section entries.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:544
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"You can now edit the sainfo section entries.\n"
+"\n"
+"Choose continue when you are done to write the data."
+msgstr ""
+
+#: ../tools/drakvpn-old:552
+#, c-format
+msgid ""
+"This section has to be on top of your\n"
+"%s file.\n"
+"\n"
+"Make sure all other sections follow these path\n"
+"sections.\n"
+"\n"
+"You can now edit the path entries.\n"
+"\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:559
+#, c-format
+msgid "path_type"
+msgstr ""
+
+#: ../tools/drakvpn-old:599
+#, c-format
+msgid "Congratulations!"
+msgstr "Поздравления !"
+
+#: ../tools/drakvpn-old:600
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"\n"
+"You may now share resources through the Internet,\n"
+"in a secure way, using a VPN connection.\n"
+"\n"
+"You should make sure that the tunnels shorewall\n"
+"section is configured."
+msgstr ""
+
+#: ../tools/drakvpn-old:620
+#, c-format
+msgid "Sainfo source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:621
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+msgstr ""
+
+#: ../tools/drakvpn-old:638
+#, c-format
+msgid "Sainfo source protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:639
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+msgstr ""
+
+#: ../tools/drakvpn-old:653
+#, c-format
+msgid "Sainfo destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:654
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+msgstr ""
+
+#: ../tools/drakvpn-old:671
+#, c-format
+msgid "Sainfo destination protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:672
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+msgstr ""
+
+#: ../tools/drakvpn-old:686
+#, c-format
+msgid "PFS group"
+msgstr ""
+
+#: ../tools/drakvpn-old:688
+#, c-format
+msgid ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+msgstr ""
+
+#: ../tools/drakvpn-old:693
+#, c-format
+msgid "Lifetime number"
+msgstr ""
+
+#: ../tools/drakvpn-old:694
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:710
+#, c-format
+msgid "Lifetime unit"
+msgstr ""
+
+#: ../tools/drakvpn-old:712
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:728 ../tools/drakvpn-old:813
+#, fuzzy, c-format
+msgid "Encryption algorithm"
+msgstr "идентификация"
+
+#: ../tools/drakvpn-old:730
+#, c-format
+msgid "Authentication algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:732
+#, c-format
+msgid "Compression algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:733
+#, c-format
+msgid "deflate"
+msgstr ""
+
+#: ../tools/drakvpn-old:740
+#, c-format
+msgid "Remote"
+msgstr "Отдалечен"
+
+#: ../tools/drakvpn-old:741
+#, c-format
+msgid ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+msgstr ""
+
+#: ../tools/drakvpn-old:749
+#, c-format
+msgid "Exchange mode"
+msgstr ""
+
+#: ../tools/drakvpn-old:751
+#, c-format
+msgid ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+msgstr ""
+
+#: ../tools/drakvpn-old:757
+#, c-format
+msgid "Generate policy"
+msgstr ""
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "off"
+msgstr "изключено"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "on"
+msgstr "включено"
+
+#: ../tools/drakvpn-old:759
+#, c-format
+msgid ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+msgstr ""
+
+#: ../tools/drakvpn-old:773
+#, c-format
+msgid "Passive"
+msgstr "Страдателен залог"
+
+#: ../tools/drakvpn-old:775
+#, c-format
+msgid ""
+"If you do not want to initiate the negotiation, set this\n"
+"to on. The default value is off. It is useful for a\n"
+"server."
+msgstr ""
+
+#: ../tools/drakvpn-old:778
+#, c-format
+msgid "Certificate type"
+msgstr ""
+
+#: ../tools/drakvpn-old:780
+#, c-format
+msgid "My certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:781
+#, c-format
+msgid "Name of the certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:782
+#, c-format
+msgid "My private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:783
+#, c-format
+msgid "Name of the private key"
+msgstr ""
+
+#: ../tools/drakvpn-old:784
+#, c-format
+msgid "Peers certfile"
+msgstr ""
+
+#: ../tools/drakvpn-old:785
+#, c-format
+msgid "Name of the peers certificate"
+msgstr ""
+
+#: ../tools/drakvpn-old:786
+#, c-format
+msgid "Verify cert"
+msgstr ""
+
+#: ../tools/drakvpn-old:788
+#, c-format
+msgid ""
+"If you do not want to verify the peer's certificate for\n"
+"some reason, set this to off. The default is on."
+msgstr ""
+
+#: ../tools/drakvpn-old:790
+#, c-format
+msgid "My identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:791
+#, c-format
+msgid ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+msgstr ""
+
+#: ../tools/drakvpn-old:811
+#, c-format
+msgid "Peers identifier"
+msgstr ""
+
+#: ../tools/drakvpn-old:812
+#, c-format
+msgid "Proposal"
+msgstr ""
+
+#: ../tools/drakvpn-old:814
+#, c-format
+msgid ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+msgstr ""
+
+#: ../tools/drakvpn-old:821
+#, c-format
+msgid "Hash algorithm"
+msgstr ""
+
+#: ../tools/drakvpn-old:822
+#, fuzzy, c-format
+msgid "Authentication method"
+msgstr "идентификация"
+
+#: ../tools/drakvpn-old:823
+#, c-format
+msgid "DH group"
+msgstr ""
+
+#: ../tools/drakvpn-old:830
+#, c-format
+msgid "Command"
+msgstr "Команда"
+
+#: ../tools/drakvpn-old:831
+#, c-format
+msgid "Source IP range"
+msgstr ""
+
+#: ../tools/drakvpn-old:832
+#, c-format
+msgid "Destination IP range"
+msgstr ""
+
+#: ../tools/drakvpn-old:833
+#, c-format
+msgid "Upper-layer protocol"
+msgstr ""
+
+#: ../tools/drakvpn-old:833 ../tools/drakvpn-old:840
+#, c-format
+msgid "any"
+msgstr ""
+
+#: ../tools/drakvpn-old:835
+#, c-format
+msgid "Flag"
+msgstr "Flag"
+
+#: ../tools/drakvpn-old:836
+#, c-format
+msgid "Direction"
+msgstr "Посока"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "IPsec policy"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "ipsec"
+msgstr ""
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "discard"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "Mode"
+msgstr "Режим"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "tunnel"
+msgstr ""
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "transport"
+msgstr ""
+
+#: ../tools/drakvpn-old:842
+#, c-format
+msgid "Source/destination"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "Level"
+msgstr "Ниво"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "require"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "default"
+msgstr "по подрабиране"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "use"
+msgstr ""
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "unique"
+msgstr ""
+
+#: ../tools/net_applet:61
+#, fuzzy, c-format
+msgid "Network is up on interface %s."
+msgstr "Мрежов интерфейс"
+
+#: ../tools/net_applet:62
+#, fuzzy, c-format
+msgid "IP address: %s"
+msgstr "Адрес IP:"
+
+#: ../tools/net_applet:63
+#, fuzzy, c-format
+msgid "Gateway: %s"
+msgstr "Gateway:"
+
+#: ../tools/net_applet:64
+#, c-format
+msgid "Connected to %s (link level: %d %%)"
+msgstr ""
+
+#: ../tools/net_applet:66
+#, fuzzy, c-format
+msgid "Network is down on interface %s."
+msgstr "Мрежов интерфейс"
+
+#: ../tools/net_applet:74 ../tools/net_monitor:468
+#, c-format
+msgid "Connect %s"
+msgstr "Свързва %s"
+
+#: ../tools/net_applet:75 ../tools/net_monitor:468
+#, c-format
+msgid "Disconnect %s"
+msgstr "Разкачва %s"
+
+#: ../tools/net_applet:76
+#, fuzzy, c-format
+msgid "Monitor Network"
+msgstr "Възстановява през мрежа"
+
+#: ../tools/net_applet:78
+#, c-format
+msgid "Manage wireless networks"
+msgstr ""
+
+#: ../tools/net_applet:80
+#, fuzzy, c-format
+msgid "Manage VPN connections"
+msgstr "Настройка на връзките"
+
+#: ../tools/net_applet:84
+#, c-format
+msgid "Configure Network"
+msgstr "Конфигуриране на мрежа"
+
+#: ../tools/net_applet:86
+#, fuzzy, c-format
+msgid "Watched interface"
+msgstr "Интерфейс"
+
+#: ../tools/net_applet:87 ../tools/net_applet:88 ../tools/net_applet:90
+#, c-format
+msgid "Auto-detect"
+msgstr "Автоматично засичане"
+
+#: ../tools/net_applet:95
+#, c-format
+msgid "Active interfaces"
+msgstr ""
+
+#: ../tools/net_applet:119
+#, c-format
+msgid "Profiles"
+msgstr "Профили"
+
+#: ../tools/net_applet:137
+#, c-format
+msgid "Get Online Help"
+msgstr ""
+
+#: ../tools/net_applet:318
+#, fuzzy, c-format
+msgid "Network connection"
+msgstr "Мрежови опции"
+
+#: ../tools/net_applet:438
+#, c-format
+msgid "More networks"
+msgstr ""
+
+#: ../tools/net_applet:465
+#, c-format
+msgid "Interactive Firewall automatic mode"
+msgstr ""
+
+#: ../tools/net_applet:470
+#, c-format
+msgid "Always launch on startup"
+msgstr "Винаги зареждай при стартиране"
+
+#: ../tools/net_applet:475
+#, fuzzy, c-format
+msgid "Wireless networks"
+msgstr "Безжична връзка"
+
+#: ../tools/net_applet:482 ../tools/net_monitor:96
+#, c-format
+msgid "Settings"
+msgstr "Настройки"
+
+#: ../tools/net_applet:557
+#, fuzzy, c-format
+msgid "Interactive Firewall: intrusion detected"
+msgstr "Открита е настройка на Защитна Стена !"
+
+#: ../tools/net_applet:574
+#, fuzzy, c-format
+msgid "What do you want to do with this attacker?"
+msgstr "Искате ли да завършите играта?"
+
+#: ../tools/net_applet:577
+#, fuzzy, c-format
+msgid "Attack details"
+msgstr "Без подробности"
+
+#: ../tools/net_applet:581
+#, fuzzy, c-format
+msgid "Attack time: %s"
+msgstr "Действие:%s"
+
+#: ../tools/net_applet:582
+#, c-format
+msgid "Network interface: %s"
+msgstr "Мрежов интерфейс: %s"
+
+#: ../tools/net_applet:583
+#, fuzzy, c-format
+msgid "Attack type: %s"
+msgstr "тип: %s"
+
+#: ../tools/net_applet:584
+#, c-format
+msgid "Protocol: %s"
+msgstr "Протокол: %s"
+
+#: ../tools/net_applet:585
+#, fuzzy, c-format
+msgid "Attacker IP address: %s"
+msgstr "Статичен IP адрес"
+
+#: ../tools/net_applet:586
+#, fuzzy, c-format
+msgid "Attacker hostname: %s"
+msgstr "Установявам име на хост %s: "
+
+#: ../tools/net_applet:589
+#, fuzzy, c-format
+msgid "Service attacked: %s"
+msgstr "_Тип услуга:"
+
+#: ../tools/net_applet:590
+#, fuzzy, c-format
+msgid "Port attacked: %s"
+msgstr "Порт: %s"
+
+#: ../tools/net_applet:592
+#, c-format
+msgid "Type of ICMP attack: %s"
+msgstr ""
+
+#: ../tools/net_applet:597
+#, c-format
+msgid "Always blacklist (do not ask again)"
+msgstr ""
+
+#: ../tools/net_applet:612
+#, c-format
+msgid "Ignore"
+msgstr "Игнориране"
+
+#: ../tools/net_applet:630 ../tools/net_applet:643
+#, fuzzy, c-format
+msgid "Interactive Firewall: new service"
+msgstr "Открита е настройка на Защитна Стена !"
+
+#: ../tools/net_applet:654
+#, fuzzy, c-format
+msgid "Do you want to open this service?"
+msgstr "Искате ли да тествате настройките?"
+
+#: ../tools/net_applet:657
+#, fuzzy, c-format
+msgid "Remember this answer"
+msgstr "Запомня тази парола"
+
+#: ../tools/net_monitor:60 ../tools/net_monitor:65
+#, c-format
+msgid "Network Monitoring"
+msgstr "Мониторинг на мрежата"
+
+#: ../tools/net_monitor:101
+#, fuzzy, c-format
+msgid "Global statistics"
+msgstr "Статистики"
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Instantaneous"
+msgstr ""
+
+#: ../tools/net_monitor:104
+#, c-format
+msgid "Average"
+msgstr "Средно"
+
+#: ../tools/net_monitor:105
+#, fuzzy, c-format
+msgid ""
+"Sending\n"
+"speed:"
+msgstr "Скорост на изпращане:"
+
+#: ../tools/net_monitor:105 ../tools/net_monitor:106 ../tools/net_monitor:111
+#, c-format
+msgid "unknown"
+msgstr "неизвестен"
+
+#: ../tools/net_monitor:106
+#, fuzzy, c-format
+msgid ""
+"Receiving\n"
+"speed:"
+msgstr "Скорост на получаване:"
+
+#: ../tools/net_monitor:110
+#, fuzzy, c-format
+msgid ""
+"Connection\n"
+"time: "
+msgstr "Време на връзката: "
+
+#: ../tools/net_monitor:117
+#, c-format
+msgid "Use same scale for received and transmitted"
+msgstr ""
+
+#: ../tools/net_monitor:136
+#, c-format
+msgid "Wait please, testing your connection..."
+msgstr "Почакайте, пробвам вашата връзка..."
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Disconnecting from Internet "
+msgstr "Разкачвам от Интернет "
+
+#: ../tools/net_monitor:185 ../tools/net_monitor:198
+#, c-format
+msgid "Connecting to Internet "
+msgstr "Свързвам към Интернет"
+
+#: ../tools/net_monitor:229
+#, c-format
+msgid "Disconnection from Internet failed."
+msgstr "Разкачването от Интернет е неуспешно"
+
+#: ../tools/net_monitor:230
+#, c-format
+msgid "Disconnection from Internet complete."
+msgstr "Разкачването от Интернет е завършено"
+
+#: ../tools/net_monitor:232
+#, c-format
+msgid "Connection complete."
+msgstr "Връзката е установена."
+
+#: ../tools/net_monitor:233
+#, c-format
+msgid ""
+"Connection failed.\n"
+"Verify your configuration in the Mandriva Linux Control Center."
+msgstr ""
+"Връзката пропадна.\n"
+"Проверете си конфигурацията в Контролен център на Mandriva Linux."
+
+#: ../tools/net_monitor:338
+#, c-format
+msgid "Color configuration"
+msgstr "Конфигурация на цвят"
+
+#: ../tools/net_monitor:395 ../tools/net_monitor:407
+#, c-format
+msgid "sent: "
+msgstr "изпраща: "
+
+#: ../tools/net_monitor:398 ../tools/net_monitor:411
+#, c-format
+msgid "received: "
+msgstr "получено: "
+
+#: ../tools/net_monitor:401
+#, c-format
+msgid "average"
+msgstr "средно"
+
+#: ../tools/net_monitor:404
+#, c-format
+msgid "Local measure"
+msgstr "Локално измерване"
+
+#: ../tools/net_monitor:461
+#, c-format
+msgid ""
+"Warning, another internet connection has been detected, maybe using your "
+"network"
+msgstr ""
+
+#: ../tools/net_monitor:472
+#, fuzzy, c-format
+msgid "No internet connection configured"
+msgstr "Настройка на Интернет връзка"
diff --git a/po/bn.po b/po/bn.po
new file mode 100644
index 0000000..792df83
--- /dev/null
+++ b/po/bn.po
@@ -0,0 +1,5919 @@
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Omi Azad <omi@altruists.org>, 2004.
+# Khandakar Mujahidul Islam <suzan@BengaLinux.Org>, 2004.
+# Progga <progga@BengaLinux.Org>, 2004.
+# Jamil Ahmed <jamil@BengaLinux.Org>, 2004, 2005.
+# Samia <mailsamia2001@yahoo.com>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: drakx-net HEAD\n"
+"POT-Creation-Date: 2007-01-10 15:18+0100\n"
+"PO-Revision-Date: 2005-03-19 23:18+0600\n"
+"Last-Translator: Samia <mailsamia2001@yahoo.com>\n"
+"Language-Team: Bangla <mdk-translation@bengalinux.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../lib/network/connection.pm:16
+#, c-format
+msgid "Unknown connection type"
+msgstr "সংযোগের ধরণ অজানা"
+
+#: ../lib/network/connection.pm:115
+#, c-format
+msgid "Network access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:116
+#, c-format
+msgid "Access settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:117
+#, c-format
+msgid "Address settings"
+msgstr ""
+
+#: ../lib/network/connection.pm:149 ../lib/network/drakvpn.pm:62
+#: ../lib/network/vpn/openvpn.pm:365 ../lib/network/vpn/openvpn.pm:379
+#: ../lib/network/vpn/openvpn.pm:390 ../tools/net_applet:129
+#, fuzzy, c-format
+msgid "VPN connection"
+msgstr "LAN সংযোগ"
+
+#: ../lib/network/connection.pm:151 ../lib/network/connection/cable.pm:44
+#: ../lib/network/connection/wireless.pm:37 ../lib/network/vpn/openvpn.pm:127
+#: ../lib/network/vpn/openvpn.pm:171 ../lib/network/vpn/openvpn.pm:339
+#, c-format
+msgid "None"
+msgstr "একটিও না"
+
+#: ../lib/network/connection.pm:163
+#, c-format
+msgid "Allow users to manage the connection"
+msgstr ""
+
+#: ../lib/network/connection.pm:164
+#, c-format
+msgid "Start the connection at boot"
+msgstr ""
+
+# সাম: পরিমাপক বা মেট্রিক (as in metric system)
+#: ../lib/network/connection.pm:165 ../tools/drakconnect:462
+#, c-format
+msgid "Metric"
+msgstr "মেট্রিক"
+
+#: ../lib/network/connection.pm:230
+#, fuzzy, c-format
+msgid "Link detected on interface %s"
+msgstr "(%s পোর্টে সনাক্ত হয়েছে)"
+
+#: ../lib/network/connection.pm:231 ../lib/network/connection/ethernet.pm:278
+#, c-format
+msgid "Link beat lost on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:13
+#, c-format
+msgid "Cable"
+msgstr ""
+
+#: ../lib/network/connection/cable.pm:14
+#, fuzzy, c-format
+msgid "Cable modem"
+msgstr "কার্ড মডেল:"
+
+# সাম
+#: ../lib/network/connection/cable.pm:45
+#, c-format
+msgid "Use BPALogin (needed for Telstra)"
+msgstr "BPALogin ব্যবহার করুন (Telstra এর জন্য প্রয়োজন)"
+
+#: ../lib/network/connection/cable.pm:48 ../lib/network/netconnect.pm:587
+#: ../tools/drakconnect:482
+#, c-format
+msgid "Authentication"
+msgstr "অনুমোদন"
+
+#: ../lib/network/connection/cable.pm:50 ../lib/network/connection/ppp.pm:22
+#: ../lib/network/netconnect.pm:326 ../lib/network/vpn/openvpn.pm:393
+#: ../tools/drakconnect:492
+#, c-format
+msgid "Account Login (user name)"
+msgstr "একাউন্ট লগইন (ইউজারনেম)"
+
+#: ../lib/network/connection/cable.pm:52 ../lib/network/connection/ppp.pm:23
+#: ../lib/network/netconnect.pm:327 ../lib/network/vpn/openvpn.pm:394
+#: ../tools/drakconnect:493
+#, c-format
+msgid "Account Password"
+msgstr "একাউন্ট পাসওয়ার্ড"
+
+#: ../lib/network/connection/cellular.pm:47
+#, c-format
+msgid "Access Point Name"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:10
+#, c-format
+msgid "Bluetooth"
+msgstr ""
+
+#: ../lib/network/connection/cellular_bluetooth.pm:11
+#, c-format
+msgid "Bluetooth Dial Up Networking"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:8
+#, c-format
+msgid "GPRS/Edge/3G"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:67
+#: ../lib/network/vpn/openvpn.pm:391
+#, c-format
+msgid "PIN number"
+msgstr ""
+
+#: ../lib/network/connection/cellular_card.pm:130
+#, fuzzy, c-format
+msgid "Unable to open device %s"
+msgstr "ফর্ক করতে ব্যর্থ: %s"
+
+#: ../lib/network/connection/cellular_card.pm:155
+#, fuzzy, c-format
+msgid "Please check that your SIM card is inserted."
+msgstr ""
+"\n"
+"অনুগ্রহপূর্বক আপনার প্রয়োজনীয় সকল অপশন পরীক্ষা করুন।\n"
+
+#: ../lib/network/connection/cellular_card.pm:161
+#, c-format
+msgid ""
+"You entered a wrong PIN code.\n"
+"Entering the wrong PIN code multiple times may lock your SIM card!"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:12
+#, c-format
+msgid "DVB"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:13
+#, c-format
+msgid "Satellite (DVB)"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:56
+#, c-format
+msgid "Adapter card"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:57
+#, c-format
+msgid "Net demux"
+msgstr ""
+
+#: ../lib/network/connection/dvb.pm:58
+#, c-format
+msgid "PID"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:10
+#, c-format
+msgid "Ethernet"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:53
+#, c-format
+msgid "Unable to find network interface for selected device (using %s driver)."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:61 ../lib/network/vpn/openvpn.pm:207
+#, c-format
+msgid "Manual configuration"
+msgstr "স্বনির্বাচিত কনফিগারেশন"
+
+#: ../lib/network/connection/ethernet.pm:62
+#, c-format
+msgid "Automatic IP (BOOTP/DHCP)"
+msgstr "সয়ংক্রিয় IP (BOOTP/DHCP)"
+
+#: ../lib/network/connection/ethernet.pm:116
+#, fuzzy, c-format
+msgid "IP settings"
+msgstr "PLL সেটিং:"
+
+#: ../lib/network/connection/ethernet.pm:125 ../lib/network/netconnect.pm:604
+#: ../lib/network/vpn/openvpn.pm:221 ../tools/drakconnect:113
+#: ../tools/drakconnect:321 ../tools/drakconnect:887 ../tools/drakhosts:196
+#, c-format
+msgid "IP address"
+msgstr "IP ঠিকানাসমূহ"
+
+#: ../lib/network/connection/ethernet.pm:129
+#, c-format
+msgid ""
+"Please enter the IP configuration for this machine.\n"
+"Each item should be entered as an IP address in dotted-decimal\n"
+"notation (for example, 1.2.3.4)."
+msgstr ""
+"অনুগ্রহ করে এই মেশিনের আই-পি কন্‌ফিগারেশন দিন।\n"
+"প্রত্যেক আইটেম একটি আই-পি অ্যাড্রেস হিসেবে dotted-decimal নোটেশনে দিতে \n"
+"হবে (উদাহরণস্বরুপ, 1.2.3.4)"
+
+#: ../lib/network/connection/ethernet.pm:132 ../tools/drakconnect:326
+#: ../tools/drakconnect:888 ../tools/drakgw:177
+#, c-format
+msgid "Netmask"
+msgstr "নেটমাস্ক"
+
+#: ../lib/network/connection/ethernet.pm:133 ../lib/network/netconnect.pm:636
+#: ../lib/network/vpn/openvpn.pm:212 ../lib/network/vpn/vpnc.pm:39
+#: ../tools/drakconnect:332
+#, c-format
+msgid "Gateway"
+msgstr "গেটওয়ে"
+
+#: ../lib/network/connection/ethernet.pm:136 ../tools/drakconnect:382
+#, c-format
+msgid "Get DNS servers from DHCP"
+msgstr "DHCP থেকে DNS সার্ভারগুলো দেখাও "
+
+#: ../lib/network/connection/ethernet.pm:138
+#, c-format
+msgid "DNS server 1"
+msgstr "DNS সার্ভার ১"
+
+#: ../lib/network/connection/ethernet.pm:139
+#, c-format
+msgid "DNS server 2"
+msgstr "DNS সার্ভার ২"
+
+#: ../lib/network/connection/ethernet.pm:140
+#, c-format
+msgid "Search domain"
+msgstr "ডোমেইনের খোঁজ"
+
+#: ../lib/network/connection/ethernet.pm:141
+#, c-format
+msgid "By default search domain will be set from the fully-qualified host name"
+msgstr "ডিফল্টভাবে ডোমেইন সন্ধান যোগ্যতা-সম্পন্ন হোস্ট-নেম থেকে নির্দিষ্ত হবে"
+
+#: ../lib/network/connection/ethernet.pm:143 ../tools/drakconnect:369
+#: ../tools/drakconnect:891
+#, c-format
+msgid "DHCP client"
+msgstr "DHCP ক্লায়েন্ট"
+
+# sam
+#: ../lib/network/connection/ethernet.pm:144 ../tools/drakconnect:379
+#, c-format
+msgid "DHCP timeout (in seconds)"
+msgstr "DHCP টাইমআউট (সেকেন্ডে)"
+
+# সাম
+#: ../lib/network/connection/ethernet.pm:145 ../tools/drakconnect:383
+#, c-format
+msgid "Get YP servers from DHCP"
+msgstr "DHCP থেকে YP সার্ভারগুলো দেখাও "
+
+# সাম
+#: ../lib/network/connection/ethernet.pm:146 ../tools/drakconnect:384
+#, c-format
+msgid "Get NTPD servers from DHCP"
+msgstr "DHCP থেকে NTPD সার্ভারগুলো দেখাও "
+
+#: ../lib/network/connection/ethernet.pm:147 ../tools/drakconnect:375
+#, c-format
+msgid "DHCP host name"
+msgstr "DHCP হোস্টের নাম"
+
+#: ../lib/network/connection/ethernet.pm:149
+#, c-format
+msgid "Do not fallback to Zeroconf (169.254.0.0 network)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:160 ../tools/drakconnect:676
+#, c-format
+msgid "IP address should be in format 1.2.3.4"
+msgstr "IP ঠিকানা 1.2.3.4-এর মত হতে হবে"
+
+# সাম
+#: ../lib/network/connection/ethernet.pm:165 ../tools/drakconnect:680
+#, c-format
+msgid "Netmask should be in format 255.255.224.0"
+msgstr "নেটমাস্ক 255.255.224.0 এই ফরম্যাটে হতে হবে"
+
+#: ../lib/network/connection/ethernet.pm:170
+#, c-format
+msgid "Warning: IP address %s is usually reserved!"
+msgstr "নির্দেশ : সাধারনত %s IP ঠিকানাগুলি রিজার্ভ থাকে !"
+
+#: ../lib/network/connection/ethernet.pm:176
+#, c-format
+msgid "%s already in use\n"
+msgstr "%s ইতিমধ্যেই ব্যবহৃত হচ্ছে\n"
+
+#: ../lib/network/connection/ethernet.pm:200 ../tools/drakconnect:373
+#, c-format
+msgid "Assign host name from DHCP address"
+msgstr "DHCP ঠিকানা থেকে পাওয়া হোস্টের নাম"
+
+#: ../lib/network/connection/ethernet.pm:202 ../tools/drakhosts:196
+#, c-format
+msgid "Host name"
+msgstr "হোস্টের নাম"
+
+#: ../lib/network/connection/ethernet.pm:220 ../tools/drakconnect:440
+#, c-format
+msgid "Network Hotplugging"
+msgstr "নেটওয়ার্ক Hotplugging"
+
+#: ../lib/network/connection/ethernet.pm:224
+#, c-format
+msgid "Enable IPv6 to IPv4 tunnel"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:277
+#, c-format
+msgid "Link beat detected on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:280
+#, c-format
+msgid "Requesting a network address on interface %s (%s protocol)..."
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:281
+#, c-format
+msgid "Got a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/ethernet.pm:282
+#, c-format
+msgid "Failed to get a network address on interface %s (%s protocol)"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:8
+#, c-format
+msgid "ISDN"
+msgstr ""
+
+#: ../lib/network/connection/isdn.pm:153 ../lib/network/netconnect.pm:197
+#: ../lib/network/netconnect.pm:200 ../lib/network/netconnect.pm:218
+#: ../lib/network/netconnect.pm:463 ../lib/network/netconnect.pm:559
+#: ../lib/network/netconnect.pm:562
+#, c-format
+msgid "Unlisted - edit manually"
+msgstr "তালিকায় অন্তর্ভুক্ত নেই - নিজে নিজেই সম্পাদন করুন"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "ISA / PCMCIA"
+msgstr "ISA / PCMCIA"
+
+#: ../lib/network/connection/isdn.pm:196 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "I do not know"
+msgstr "আমি জানি না"
+
+#: ../lib/network/connection/isdn.pm:197 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "PCI"
+msgstr "পি-সি-আই"
+
+#: ../lib/network/connection/isdn.pm:198 ../lib/network/netconnect.pm:395
+#, c-format
+msgid "USB"
+msgstr "ইউএসবি"
+
+#. -PO: POTS means "Plain old telephone service"
+#: ../lib/network/connection/pots.pm:10
+#, c-format
+msgid "POTS"
+msgstr ""
+
+#. -PO: POTS means "Plain old telephone service"
+#. -PO: remove it if it doesn't have an equivalent in your language
+#. -PO: for example, in French, it can be translated as "RTC"
+#: ../lib/network/connection/pots.pm:16
+#, c-format
+msgid "Analog telephone modem (POTS)"
+msgstr ""
+
+#: ../lib/network/connection/ppp.pm:9 ../lib/network/netconnect.pm:74
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Script-based"
+msgstr "স্ক্রিপ্ট-ভিত্তিক"
+
+#: ../lib/network/connection/ppp.pm:10 ../lib/network/netconnect.pm:75
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP"
+msgstr "PAP"
+
+#: ../lib/network/connection/ppp.pm:11 ../lib/network/netconnect.pm:76
+#: ../tools/drakconnect:499
+#, c-format
+msgid "Terminal-based"
+msgstr "টার্মিনাল-ভিত্তিক"
+
+#: ../lib/network/connection/ppp.pm:12 ../lib/network/netconnect.pm:77
+#: ../tools/drakconnect:499
+#, c-format
+msgid "CHAP"
+msgstr "CHAP"
+
+#: ../lib/network/connection/ppp.pm:13 ../lib/network/netconnect.pm:78
+#: ../tools/drakconnect:499
+#, c-format
+msgid "PAP/CHAP"
+msgstr "PAP/CHAP"
+
+#: ../lib/network/connection/providers/cellular.pm:13
+#: ../lib/network/connection/providers/cellular.pm:18
+#: ../lib/network/connection/providers/cellular.pm:23
+#: ../lib/network/connection/providers/xdsl.pm:492
+#: ../lib/network/connection/providers/xdsl.pm:504
+#: ../lib/network/connection/providers/xdsl.pm:516
+#: ../lib/network/connection/providers/xdsl.pm:528
+#: ../lib/network/connection/providers/xdsl.pm:539
+#: ../lib/network/connection/providers/xdsl.pm:551
+#: ../lib/network/connection/providers/xdsl.pm:563
+#: ../lib/network/connection/providers/xdsl.pm:575
+#: ../lib/network/connection/providers/xdsl.pm:588
+#: ../lib/network/connection/providers/xdsl.pm:599
+#: ../lib/network/connection/providers/xdsl.pm:610
+#: ../lib/network/netconnect.pm:33
+#, c-format
+msgid "France"
+msgstr "ফ্রান্স"
+
+#: ../lib/network/connection/providers/xdsl.pm:47
+#: ../lib/network/connection/providers/xdsl.pm:57
+#, c-format
+msgid "Algeria"
+msgstr "আলজেরিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:67
+#: ../lib/network/connection/providers/xdsl.pm:77
+#, c-format
+msgid "Argentina"
+msgstr "আর্জেন্টিনা"
+
+#: ../lib/network/connection/providers/xdsl.pm:87
+#: ../lib/network/connection/providers/xdsl.pm:96
+#: ../lib/network/connection/providers/xdsl.pm:105
+#, c-format
+msgid "Austria"
+msgstr "অষ্ট্রিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:114
+#: ../lib/network/connection/providers/xdsl.pm:124
+#: ../lib/network/connection/providers/xdsl.pm:134
+#, c-format
+msgid "Australia"
+msgstr "অষ্ট্রেলিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:144
+#: ../lib/network/connection/providers/xdsl.pm:153
+#: ../lib/network/connection/providers/xdsl.pm:164
+#: ../lib/network/connection/providers/xdsl.pm:173
+#: ../lib/network/connection/providers/xdsl.pm:182
+#: ../lib/network/netconnect.pm:36
+#, c-format
+msgid "Belgium"
+msgstr "বেলজিয়াম"
+
+#: ../lib/network/connection/providers/xdsl.pm:191
+#: ../lib/network/connection/providers/xdsl.pm:201
+#: ../lib/network/connection/providers/xdsl.pm:210
+#: ../lib/network/connection/providers/xdsl.pm:219
+#, c-format
+msgid "Brazil"
+msgstr "ব্রাজিল"
+
+#: ../lib/network/connection/providers/xdsl.pm:228
+#: ../lib/network/connection/providers/xdsl.pm:237
+#, c-format
+msgid "Bulgaria"
+msgstr "বুলগেরিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:246
+#: ../lib/network/connection/providers/xdsl.pm:255
+#: ../lib/network/connection/providers/xdsl.pm:264
+#: ../lib/network/connection/providers/xdsl.pm:273
+#: ../lib/network/connection/providers/xdsl.pm:282
+#: ../lib/network/connection/providers/xdsl.pm:291
+#: ../lib/network/connection/providers/xdsl.pm:300
+#: ../lib/network/connection/providers/xdsl.pm:309
+#: ../lib/network/connection/providers/xdsl.pm:318
+#: ../lib/network/connection/providers/xdsl.pm:327
+#: ../lib/network/connection/providers/xdsl.pm:336
+#: ../lib/network/connection/providers/xdsl.pm:345
+#: ../lib/network/connection/providers/xdsl.pm:354
+#: ../lib/network/connection/providers/xdsl.pm:363
+#: ../lib/network/connection/providers/xdsl.pm:372
+#: ../lib/network/connection/providers/xdsl.pm:381
+#: ../lib/network/connection/providers/xdsl.pm:390
+#: ../lib/network/connection/providers/xdsl.pm:399
+#: ../lib/network/connection/providers/xdsl.pm:408
+#: ../lib/network/connection/providers/xdsl.pm:417
+#, c-format
+msgid "China"
+msgstr "চীন"
+
+#: ../lib/network/connection/providers/xdsl.pm:426
+#: ../lib/network/connection/providers/xdsl.pm:436
+#, c-format
+msgid "Czech Republic"
+msgstr "চেক রিপাবলিক"
+
+#: ../lib/network/connection/providers/xdsl.pm:446
+#: ../lib/network/connection/providers/xdsl.pm:455
+#: ../lib/network/connection/providers/xdsl.pm:464
+#, c-format
+msgid "Denmark"
+msgstr "ডেনমার্ক"
+
+#: ../lib/network/connection/providers/xdsl.pm:473
+#, c-format
+msgid "Egypt"
+msgstr "মিশর"
+
+#: ../lib/network/connection/providers/xdsl.pm:483
+#, c-format
+msgid "Finland"
+msgstr "ফিনল্যান্ড"
+
+#: ../lib/network/connection/providers/xdsl.pm:621
+#: ../lib/network/connection/providers/xdsl.pm:630
+#: ../lib/network/connection/providers/xdsl.pm:640
+#, c-format
+msgid "Germany"
+msgstr "জার্মানী"
+
+#: ../lib/network/connection/providers/xdsl.pm:650
+#, c-format
+msgid "Greece"
+msgstr "গ্রীস"
+
+#: ../lib/network/connection/providers/xdsl.pm:659
+#, c-format
+msgid "Hungary"
+msgstr "হাঙ্গেরী"
+
+#: ../lib/network/connection/providers/xdsl.pm:668
+#, c-format
+msgid "Ireland"
+msgstr "আয়ারল্যান্ড"
+
+#: ../lib/network/connection/providers/xdsl.pm:677
+#, c-format
+msgid "Israel"
+msgstr "ইসরাঈল"
+
+#: ../lib/network/connection/providers/xdsl.pm:687
+#, c-format
+msgid "India"
+msgstr "ভারত"
+
+#: ../lib/network/connection/providers/xdsl.pm:696
+#: ../lib/network/connection/providers/xdsl.pm:705
+#, c-format
+msgid "Iceland"
+msgstr "আইসল্যান্ড"
+
+#: ../lib/network/connection/providers/xdsl.pm:714
+#: ../lib/network/connection/providers/xdsl.pm:725
+#: ../lib/network/connection/providers/xdsl.pm:735
+#: ../lib/network/connection/providers/xdsl.pm:746
+#: ../lib/network/netconnect.pm:35
+#, c-format
+msgid "Italy"
+msgstr "ইতালী"
+
+#: ../lib/network/connection/providers/xdsl.pm:758
+#, c-format
+msgid "Sri Lanka"
+msgstr "শ্রীলঙ্কা"
+
+#: ../lib/network/connection/providers/xdsl.pm:770
+#, c-format
+msgid "Lithuania"
+msgstr "লিথুয়েনিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:779
+#: ../lib/network/connection/providers/xdsl.pm:789
+#, c-format
+msgid "Mauritius"
+msgstr "মরিসাস"
+
+#: ../lib/network/connection/providers/xdsl.pm:800
+#, c-format
+msgid "Morocco"
+msgstr "মরক্কো"
+
+#: ../lib/network/connection/providers/xdsl.pm:810
+#: ../lib/network/connection/providers/xdsl.pm:819
+#: ../lib/network/connection/providers/xdsl.pm:828
+#: ../lib/network/connection/providers/xdsl.pm:837
+#: ../lib/network/netconnect.pm:34
+#, c-format
+msgid "Netherlands"
+msgstr "নেদারল্যান্ড"
+
+#: ../lib/network/connection/providers/xdsl.pm:846
+#: ../lib/network/connection/providers/xdsl.pm:852
+#: ../lib/network/connection/providers/xdsl.pm:858
+#: ../lib/network/connection/providers/xdsl.pm:864
+#: ../lib/network/connection/providers/xdsl.pm:870
+#: ../lib/network/connection/providers/xdsl.pm:876
+#: ../lib/network/connection/providers/xdsl.pm:882
+#, c-format
+msgid "Norway"
+msgstr "নরওয়ে"
+
+#: ../lib/network/connection/providers/xdsl.pm:890
+#, c-format
+msgid "Pakistan"
+msgstr "পাকিস্তান"
+
+#: ../lib/network/connection/providers/xdsl.pm:901
+#: ../lib/network/connection/providers/xdsl.pm:911
+#, c-format
+msgid "Poland"
+msgstr "পোল্যান্ড"
+
+#: ../lib/network/connection/providers/xdsl.pm:922
+#, c-format
+msgid "Portugal"
+msgstr "পর্তুগাল"
+
+#: ../lib/network/connection/providers/xdsl.pm:931
+#, c-format
+msgid "Russia"
+msgstr "রাশিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:942
+#, c-format
+msgid "Singapore"
+msgstr "সিঙ্গাপুর"
+
+#: ../lib/network/connection/providers/xdsl.pm:951
+#, c-format
+msgid "Senegal"
+msgstr "সেনেগাল"
+
+#: ../lib/network/connection/providers/xdsl.pm:961
+#, c-format
+msgid "Slovenia"
+msgstr "স্লোভেনিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:972
+#: ../lib/network/connection/providers/xdsl.pm:984
+#: ../lib/network/connection/providers/xdsl.pm:996
+#: ../lib/network/connection/providers/xdsl.pm:1009
+#: ../lib/network/connection/providers/xdsl.pm:1019
+#: ../lib/network/connection/providers/xdsl.pm:1029
+#: ../lib/network/connection/providers/xdsl.pm:1040
+#: ../lib/network/connection/providers/xdsl.pm:1050
+#: ../lib/network/connection/providers/xdsl.pm:1060
+#: ../lib/network/connection/providers/xdsl.pm:1070
+#: ../lib/network/connection/providers/xdsl.pm:1080
+#: ../lib/network/connection/providers/xdsl.pm:1090
+#: ../lib/network/connection/providers/xdsl.pm:1101
+#: ../lib/network/connection/providers/xdsl.pm:1112
+#: ../lib/network/connection/providers/xdsl.pm:1124
+#: ../lib/network/connection/providers/xdsl.pm:1136
+#, c-format
+msgid "Spain"
+msgstr "স্পেন"
+
+#: ../lib/network/connection/providers/xdsl.pm:1149
+#, c-format
+msgid "Sweden"
+msgstr "সুইডেন"
+
+#: ../lib/network/connection/providers/xdsl.pm:1158
+#: ../lib/network/connection/providers/xdsl.pm:1167
+#: ../lib/network/connection/providers/xdsl.pm:1177
+#, c-format
+msgid "Switzerland"
+msgstr "সুইজারল্যান্ড"
+
+#: ../lib/network/connection/providers/xdsl.pm:1186
+#, c-format
+msgid "Thailand"
+msgstr "থাইল্যান্ড"
+
+#: ../lib/network/connection/providers/xdsl.pm:1196
+#, c-format
+msgid "Tunisia"
+msgstr "তানিসিয়া"
+
+#: ../lib/network/connection/providers/xdsl.pm:1207
+#, c-format
+msgid "Turkey"
+msgstr "তুর্কি"
+
+#: ../lib/network/connection/providers/xdsl.pm:1220
+#, c-format
+msgid "United Arab Emirates"
+msgstr "সংযুক্ত আরব আমিরাত"
+
+#: ../lib/network/connection/providers/xdsl.pm:1230
+#: ../lib/network/connection/providers/xdsl.pm:1240
+#: ../lib/network/netconnect.pm:38
+#, c-format
+msgid "United Kingdom"
+msgstr "যুক্তরাজ্য"
+
+#: ../lib/network/connection/wireless.pm:11
+#, c-format
+msgid "Wireless"
+msgstr ""
+
+# সাম
+#: ../lib/network/connection/wireless.pm:21
+#, c-format
+msgid "Use a Windows driver (with ndiswrapper)"
+msgstr "একটি উইন্ডোজ ড্রাইভার ব্যবহার করুন (ndiswrapper এর সাথে)"
+
+#: ../lib/network/connection/wireless.pm:38
+#, c-format
+msgid "Open WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:39
+#, c-format
+msgid "Restricted WEP"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:40
+#, c-format
+msgid "WPA Pre-Shared Key"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:181 ../lib/network/thirdparty.pm:174
+#, c-format
+msgid "Firmware files are required for this device."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:209
+#, c-format
+msgid ""
+"Your wireless card is disabled, please enable the wireless switch (RF kill "
+"switch) first."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:270
+#, fuzzy, c-format
+msgid "Wireless settings"
+msgstr "ওয়্যারলেস সংযোগ"
+
+#: ../lib/network/connection/wireless.pm:275 ../tools/drakconnect:406
+#: ../tools/drakroam:119
+#, c-format
+msgid "Operating Mode"
+msgstr "কার্যকারিতার ধরন"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Ad-hoc"
+msgstr "Echo request (ping)"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Managed"
+msgstr "ব্যবস্থা হয়েছে"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Master"
+msgstr "মাষ্টার"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Repeater"
+msgstr "রিপিটার"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Secondary"
+msgstr "মাধ্যমিক"
+
+#: ../lib/network/connection/wireless.pm:276
+#, c-format
+msgid "Auto"
+msgstr "সয়ংক্রিয়"
+
+#: ../lib/network/connection/wireless.pm:279 ../tools/drakconnect:407
+#, c-format
+msgid "Network name (ESSID)"
+msgstr "নেটওয়ার্কের নাম (ESSID)"
+
+#: ../lib/network/connection/wireless.pm:281
+#, c-format
+msgid "Encryption mode"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:283 ../tools/drakconnect:421
+#, c-format
+msgid "Encryption key"
+msgstr "এনক্রিপশন কী"
+
+#: ../lib/network/connection/wireless.pm:285 ../tools/drakconnect:408
+#, c-format
+msgid "Network ID"
+msgstr "নেটওয়ার্ক ID"
+
+#: ../lib/network/connection/wireless.pm:286 ../tools/drakconnect:409
+#, c-format
+msgid "Operating frequency"
+msgstr "কার্যকারিতার ফ্রিকুয়েন্সি"
+
+#: ../lib/network/connection/wireless.pm:287 ../tools/drakconnect:410
+#, c-format
+msgid "Sensitivity threshold"
+msgstr "প্রতিক্রিয়াশীল থ্রেশল্ড"
+
+#: ../lib/network/connection/wireless.pm:288 ../tools/drakconnect:411
+#, c-format
+msgid "Bitrate (in b/s)"
+msgstr "বিটরেট (b/s-এ)"
+
+#: ../lib/network/connection/wireless.pm:289 ../tools/drakconnect:422
+#, c-format
+msgid "RTS/CTS"
+msgstr "RTS/CTS"
+
+# sam=
+# parameter has been translated as প্যারামিটার
+#: ../lib/network/connection/wireless.pm:290
+#, c-format
+msgid ""
+"RTS/CTS adds a handshake before each packet transmission to make sure that "
+"the\n"
+"channel is clear. This adds overhead, but increase performance in case of "
+"hidden\n"
+"nodes or large number of active nodes. This parameter sets the size of the\n"
+"smallest packet for which the node sends RTS, a value equal to the maximum\n"
+"packet size disable the scheme. You may also set this parameter to auto, "
+"fixed\n"
+"or off."
+msgstr ""
+"RTS/CTS প্রতিটি প্যাকেট প্রেরণের আগে চ্যানলটি খালি কিনা তা পরীক্ষা করার জন্য একটি "
+"হ্যান্ডশেক যোগ\n"
+"করে। এতে কিছুটা সময় ব্যয় হয় বটে তবে লুকানো নোডসমুহ ও বহুসংখ্যক স্বক্রিয় নোডের ক্ষেত্রে "
+"পারফরম্যান্স\n"
+"বাড়িয়ে দেয়। এ প্যারামিটারটি, একটি সবচেয়ে ছোট প্যাকেট যার জন্য একটি নোড RTS "
+"পাঠায়,\n"
+"তার সাইজ সেট করে, অতএব এখানে সর্বোচ্চ প্যাকেট সাইজের মানটি বসালে এই ব্যবস্থা "
+"নিষ্ক্রিয়\n"
+"হয়ে যায়। আপনি এই প্যারামিটারটি স্বয়ংক্রিয়, নির্ধারিত, বা বন্ধও সেট\n"
+"করতে পারেন।"
+
+#: ../lib/network/connection/wireless.pm:297 ../tools/drakconnect:423
+#, c-format
+msgid "Fragmentation"
+msgstr "ফ্রাগমেন্টেশন"
+
+#: ../lib/network/connection/wireless.pm:298 ../tools/drakconnect:424
+#, c-format
+msgid "iwconfig command extra arguments"
+msgstr "Iwকন্‌ফিগ কমান্ড অতিরিক্ত আর্গুমেন্ট"
+
+#: ../lib/network/connection/wireless.pm:299
+#, c-format
+msgid ""
+"Here, one can configure some extra wireless parameters such as:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick is already set "
+"as the hostname).\n"
+"\n"
+"See iwconfig(8) man page for further information."
+msgstr ""
+"এখানে, একজন কিছু তারবিহীন প্যারামিটার কন্‌ফিগার করতে পারে, যেমন:\n"
+"ap, channel, commit, enc, power, retry, sens, txpower (nick ইতিমধ্যেই হোস্টনেম "
+"হিসেবে সেট হয়ে গেছে)।\n"
+"\n"
+"অতিরিক্ত তথ্যের জন্য iwconfig(8) এর ম্যান পেজ দেখুন।"
+
+# -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#. -PO: split the "xyz command extra argument" translated string into two lines if it's bigger than the english one
+#: ../lib/network/connection/wireless.pm:306 ../tools/drakconnect:425
+#, c-format
+msgid "iwspy command extra arguments"
+msgstr "Iwস্পাই কমান্ড অতিরিক্ত আর্গুমেন্ট"
+
+#: ../lib/network/connection/wireless.pm:307
+#, fuzzy, c-format
+msgid ""
+"iwspy is used to set a list of addresses in a wireless network\n"
+"interface and to read back quality of link information for each of those.\n"
+"\n"
+"This information is the same as the one available in /proc/net/wireless :\n"
+"quality of the link, signal strength and noise level.\n"
+"\n"
+"See iwpspy(8) man page for further information."
+msgstr ""
+"iwspy ব্যবহার করা হয় ওয়্যারলেস নেটওয়ার্ক ইন্টারফেসে একটি ঠিকানার\n"
+"তালিকা সেট করা এবং তার প্রতিটির সংযোগ এর মান সংক্রান্ত তথ্য পড়ার জন্য।\n"
+"\n"
+
+#: ../lib/network/connection/wireless.pm:315 ../tools/drakconnect:426
+#, c-format
+msgid "iwpriv command extra arguments"
+msgstr "iwpriv কমান্ড অতিরিক্ত আর্গুমেন্ট"
+
+#: ../lib/network/connection/wireless.pm:317
+#, c-format
+msgid ""
+"iwpriv enable to set up optionals (private) parameters of a wireless "
+"network\n"
+"interface.\n"
+"\n"
+"iwpriv deals with parameters and setting specific to each driver (as opposed "
+"to\n"
+"iwconfig which deals with generic ones).\n"
+"\n"
+"In theory, the documentation of each device driver should indicate how to "
+"use\n"
+"those interface specific commands and their effect.\n"
+"\n"
+"See iwpriv(8) man page for further information."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:335
+#, c-format
+msgid "An encryption key is required."
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:341
+#, c-format
+msgid ""
+"Freq should have the suffix k, M or G (for example, \"2.46G\" for 2.46 GHz "
+"frequency), or add enough '0' (zeroes)."
+msgstr ""
+"ফ্রিকোয়েন্সির শেষে k, M বা G থাকতে হবে (উদাহরণস্বরুপ,২.৪৬ গিগাহার্জ ফ্রিকোয়েন্সীর "
+"জন্য \"2.46G\"),অথবা অনেকগুলো '0' (শূণ্য) যোগ করুন।"
+
+#: ../lib/network/connection/wireless.pm:347
+#, c-format
+msgid ""
+"Rate should have the suffix k, M or G (for example, \"11M\" for 11M), or add "
+"enough '0' (zeroes)."
+msgstr ""
+"ফ্রিকোয়েন্সির শেষে k, M বা G থাকতে হবে (উদাহরণস্বরুপ,১১M এর জন্য \"11M\"),অথবা "
+"অনেকগুলো '0' (শূণ্য) যোগ করুন।"
+
+#: ../lib/network/connection/wireless.pm:359
+#, c-format
+msgid "Allow access point roaming"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:460
+#, c-format
+msgid "Associated to wireless network \"%s\" on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/wireless.pm:461
+#, c-format
+msgid "Lost association to wireless network on interface %s"
+msgstr ""
+
+#: ../lib/network/connection/xdsl.pm:8
+#, fuzzy, c-format
+msgid "DSL"
+msgstr "এসএসএল"
+
+#: ../lib/network/connection/xdsl.pm:76 ../lib/network/netconnect.pm:755
+#, c-format
+msgid "Alcatel speedtouch USB modem"
+msgstr "Alcatel speedtouch ইউএসবি মডেম"
+
+#: ../lib/network/connection/xdsl.pm:104
+#, c-format
+msgid ""
+"The ECI Hi-Focus modem cannot be supported due to binary driver distribution "
+"problem.\n"
+"\n"
+"You can find a driver on http://eciadsl.flashtux.org/"
+msgstr ""
+"বাইনারি ড্রাইভার ডিস্ট্রিবিউশন সমস্যার জন্য ECI Hi-Focus মডেম সমর্থন নেই।\n"
+"\n"
+"আপনি http://eciadsl.flashtux.org/ থেকে ড্রাইভার পেতে পারেন"
+
+#: ../lib/network/connection/xdsl.pm:176
+#, c-format
+msgid "DSL over CAPI"
+msgstr "CAPI উপরে DSL"
+
+#: ../lib/network/connection/xdsl.pm:179
+#, c-format
+msgid "Dynamic Host Configuration Protocol (DHCP)"
+msgstr "ডায়নামিক হোস্ট কনফিগারেশন প্রটোকল (DHCP)"
+
+#: ../lib/network/connection/xdsl.pm:180
+#, c-format
+msgid "Manual TCP/IP configuration"
+msgstr "হাতে হাতে TCP/IP কনফিগারেশন"
+
+#: ../lib/network/connection/xdsl.pm:181
+#, c-format
+msgid "Point to Point Tunneling Protocol (PPTP)"
+msgstr "পয়েন্ট টু পয়েন্ট টর্নেলিং প্রটোকল (PPTP)"
+
+#: ../lib/network/connection/xdsl.pm:182
+#, c-format
+msgid "PPP over Ethernet (PPPoE)"
+msgstr "Ethernet মাধ্যমে PPP (PPPoE)"
+
+#: ../lib/network/connection/xdsl.pm:183
+#, c-format
+msgid "PPP over ATM (PPPoA)"
+msgstr "ATM-এর মাধ্যমে PPP (PPPoA)"
+
+#: ../lib/network/connection/xdsl.pm:223
+#, c-format
+msgid "Virtual Path ID (VPI):"
+msgstr "ভার্চুয়াল পাথ আই-ডি(VPI):"
+
+#: ../lib/network/connection/xdsl.pm:224
+#, c-format
+msgid "Virtual Circuit ID (VCI):"
+msgstr "ভার্চুয়াল সার্কিট আই-ডি(VCI):"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/drakvpn.pm:52 ../lib/network/ndiswrapper.pm:27
+#: ../lib/network/ndiswrapper.pm:42 ../lib/network/ndiswrapper.pm:86
+#: ../lib/network/ndiswrapper.pm:102 ../lib/network/netconnect.pm:131
+#: ../lib/network/netconnect.pm:179 ../lib/network/netconnect.pm:268
+#: ../lib/network/netconnect.pm:813 ../lib/network/thirdparty.pm:114
+#: ../lib/network/thirdparty.pm:131 ../lib/network/thirdparty.pm:214
+#: ../lib/network/thirdparty.pm:216 ../lib/network/thirdparty.pm:237
+#: ../tools/drakconnect:676 ../tools/drakconnect:680 ../tools/drakconnect:689
+#: ../tools/drakconnect:705 ../tools/drakgw:184 ../tools/drakhosts:100
+#: ../tools/drakhosts:245 ../tools/drakhosts:252 ../tools/drakhosts:259
+#: ../tools/drakinvictus:72 ../tools/draknetprofile:113 ../tools/draknfs:85
+#: ../tools/draknfs:106 ../tools/draknfs:273 ../tools/draknfs:400
+#: ../tools/draknfs:402 ../tools/draknfs:405 ../tools/draknfs:497
+#: ../tools/draknfs:504 ../tools/draknfs:567 ../tools/draknfs:574
+#: ../tools/draknfs:581 ../tools/drakroam:79 ../tools/drakroam:92
+#: ../tools/draksambashare:372 ../tools/draksambashare:379
+#: ../tools/draksambashare:382 ../tools/draksambashare:428
+#: ../tools/draksambashare:452 ../tools/draksambashare:518
+#: ../tools/draksambashare:533 ../tools/draksambashare:611
+#: ../tools/draksambashare:678 ../tools/draksambashare:778
+#: ../tools/draksambashare:785 ../tools/draksambashare:916
+#: ../tools/draksambashare:1109 ../tools/draksambashare:1118
+#: ../tools/draksambashare:1140 ../tools/draksambashare:1149
+#: ../tools/draksambashare:1168 ../tools/draksambashare:1177
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Error"
+msgstr "ত্রুটি"
+
+#: ../lib/network/connection/xdsl.pm:324 ../lib/network/drakvpn.pm:45
+#: ../lib/network/netconnect.pm:131 ../lib/network/thirdparty.pm:114
+#, fuzzy, c-format
+msgid "Could not install the packages (%s)!"
+msgstr "%s প্যাকেজগুলি ইনস্টল করা গেলোনা!"
+
+#: ../lib/network/drakfirewall.pm:12
+#, c-format
+msgid "Web Server"
+msgstr "ওয়েব সার্ভার"
+
+#: ../lib/network/drakfirewall.pm:17
+#, c-format
+msgid "Domain Name Server"
+msgstr "ডোমেইন নেম সার্ভার (DNS)"
+
+#: ../lib/network/drakfirewall.pm:22
+#, c-format
+msgid "SSH server"
+msgstr "SSH সার্ভার"
+
+#: ../lib/network/drakfirewall.pm:27
+#, c-format
+msgid "FTP server"
+msgstr "FTP সার্ভার"
+
+#: ../lib/network/drakfirewall.pm:32
+#, c-format
+msgid "Mail Server"
+msgstr "মেইল সার্ভার"
+
+#: ../lib/network/drakfirewall.pm:37
+#, c-format
+msgid "POP and IMAP Server"
+msgstr "POP & IMAP সার্ভার"
+
+#: ../lib/network/drakfirewall.pm:42
+#, c-format
+msgid "Telnet server"
+msgstr "টেলনেট সার্ভার"
+
+# সাম
+#: ../lib/network/drakfirewall.pm:48
+#, c-format
+msgid "Windows Files Sharing (SMB)"
+msgstr "উইন্ডোজ ফাইলস শেয়ারিং (SMB)"
+
+#: ../lib/network/drakfirewall.pm:54
+#, c-format
+msgid "CUPS server"
+msgstr "CUPS সার্ভার"
+
+#: ../lib/network/drakfirewall.pm:60
+#, c-format
+msgid "Echo request (ping)"
+msgstr "Echo request (ping)"
+
+#: ../lib/network/drakfirewall.pm:65
+#, c-format
+msgid "BitTorrent"
+msgstr "বিটTorrent"
+
+#: ../lib/network/drakfirewall.pm:74
+#, c-format
+msgid "Port scan detection"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:166 ../lib/network/drakfirewall.pm:172
+#, fuzzy, c-format
+msgid "Firewall configuration"
+msgstr "স্বনির্বাচিত কনফিগারেশন"
+
+#: ../lib/network/drakfirewall.pm:166
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"This configures a personal firewall for this Mandriva Linux machine.\n"
+"For a powerful and dedicated firewall solution, please look to the\n"
+"specialized Mandriva Security Firewall distribution."
+msgstr ""
+"ড্র্যাকফায়ারওয়াল কন্‌ফিগারেটর\n"
+"\n"
+"এটি এই ম্যান্ড্রিব লিনাক্স মেশিনের জন্য একটী ব্যক্তিগত ফায়ারওয়াল কন্‌ফিগার করবে।\n"
+"একটি শক্তিশালী এবং একান্তভাবে নিযুক্ত ফায়ারওয়াল সমাধানের জন্য, অনুগ্রহ করে\n"
+"বিশেষ ম্যান্ড্রিব নিরাপত্তা ফায়ারওয়াল ডিস্ট্রিবিউশনে দেখুন।"
+
+#: ../lib/network/drakfirewall.pm:172
+#, c-format
+msgid ""
+"drakfirewall configurator\n"
+"\n"
+"Make sure you have configured your Network/Internet access with\n"
+"drakconnect before going any further."
+msgstr ""
+"ড্র্যাকফায়ারওয়াল কন্‌ফিগারেটর\n"
+"\n"
+"নিশ্চিত হোন যে অন্য কিছু ব্যবহারের আগেই আপনি আপনার নেটওয়ার্ক/ইন্টারনেট প্রবেশ\n"
+"drakconnect দিয়ে কন্‌ফিগার করেছেন।"
+
+#: ../lib/network/drakfirewall.pm:189
+#, c-format
+msgid "Which services would you like to allow the Internet to connect to?"
+msgstr "আপনার কোন কোন সার্ভিসগুলোকে ইন্টারনেট থেকে সংযুক্ত হবার ক্ষমতা দিতে চান?"
+
+#: ../lib/network/drakfirewall.pm:190 ../lib/network/shorewall.pm:145
+#, c-format
+msgid "Firewall"
+msgstr "ফায়ারওয়াল"
+
+#: ../lib/network/drakfirewall.pm:192
+#, c-format
+msgid ""
+"You can enter miscellaneous ports. \n"
+"Valid examples are: 139/tcp 139/udp 600:610/tcp 600:610/udp.\n"
+"Have a look at /etc/services for information."
+msgstr ""
+"আপনি একটি miscellaneous পোর্ট দিন। \n"
+"সঠিক উদাহরণ হচ্ছে: ১৩৯/tcp ১৩৯/udp ৬০০:৬১০/tcp ৬০০:৬১০/udp।\n"
+"তথ্যের জন্য /etc/services দেখুন।"
+
+#: ../lib/network/drakfirewall.pm:198
+#, c-format
+msgid ""
+"Invalid port given: %s.\n"
+"The proper format is \"port/tcp\" or \"port/udp\", \n"
+"where port is between 1 and 65535.\n"
+"\n"
+"You can also give a range of ports (eg: 24300:24350/udp)"
+msgstr ""
+"ভুল পোর্ট দেয়া হয়েছে: %s।\n"
+"সঠিক ফরম্যাট হচ্ছে \"port/tcp\" বা \"port/udp\", \n"
+"যেখানে পোর্ট হচ্ছে ১ এবং ৬৫৫৩৫ এর মধ্যে।\n"
+"\n"
+"আপনি পোর্টের সীমাও দিয়ে দিতে পারেন (যেমন: 24300:24350/udp)"
+
+#: ../lib/network/drakfirewall.pm:208
+#, c-format
+msgid "Everything (no firewall)"
+msgstr "সবকিছু (কোন ফায়ারওয়াল ছাড়া)"
+
+#: ../lib/network/drakfirewall.pm:210
+#, c-format
+msgid "Other ports"
+msgstr "অন্যান্য পোর্ট"
+
+#: ../lib/network/drakfirewall.pm:211
+#, c-format
+msgid "Log firewall messages in system logs"
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:255 ../lib/network/drakfirewall.pm:258
+#: ../tools/drakids:40 ../tools/drakids:65 ../tools/drakids:181
+#: ../tools/drakids:190 ../tools/drakids:215 ../tools/drakids:224
+#: ../tools/drakids:234 ../tools/drakids:326 ../tools/net_applet:77
+#: ../tools/net_applet:238 ../tools/net_applet:514 ../tools/net_applet:541
+#, fuzzy, c-format
+msgid "Interactive Firewall"
+msgstr "ফায়ারওয়াল"
+
+#: ../lib/network/drakfirewall.pm:256
+#, c-format
+msgid ""
+"You can be warned when someone accesses to a service or tries to intrude "
+"into your computer.\n"
+"Please select which network activities should be watched."
+msgstr ""
+
+#: ../lib/network/drakfirewall.pm:261
+#, c-format
+msgid "Use Interactive Firewall"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:30
+#, fuzzy, c-format
+msgid "VPN configuration"
+msgstr "CUPS কনফিগার"
+
+#: ../lib/network/drakvpn.pm:34
+#, fuzzy, c-format
+msgid "Choose the VPN type"
+msgstr "নতুন সাইজটি পছন্দ করুন"
+
+#: ../lib/network/drakvpn.pm:49
+#, c-format
+msgid "Initializing tools and detecting devices for %s..."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:52
+#, fuzzy, c-format
+msgid "Unable to initialize %s connection type!"
+msgstr "সংযোগের ধরণ অজানা"
+
+#: ../lib/network/drakvpn.pm:60
+#, c-format
+msgid "Please select an existing VPN connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:64
+#, fuzzy, c-format
+msgid "Configure a new connection..."
+msgstr "আপনার কানেকশন পরীক্ষা করা হচ্ছে..."
+
+#: ../lib/network/drakvpn.pm:66
+#, fuzzy, c-format
+msgid "New name"
+msgstr "আসল নাম"
+
+#: ../lib/network/drakvpn.pm:70 ../lib/network/drakvpn.pm:100
+#: ../lib/network/ndiswrapper.pm:92 ../lib/network/netconnect.pm:471
+#: ../tools/drakconnect:978 ../tools/draknetprofile:129
+#: ../tools/draknetprofile:131 ../tools/drakproxy:36
+#, c-format
+msgid "Warning"
+msgstr "নোটিশ"
+
+#: ../lib/network/drakvpn.pm:70
+#, c-format
+msgid "You must select an existing connection or enter a new name."
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:81
+#, fuzzy, c-format
+msgid "Please enter the required key(s)"
+msgstr "অনুগ্রহ করে WebDAV সার্ভারের URL প্রবেশ করান"
+
+#: ../lib/network/drakvpn.pm:86
+#, fuzzy, c-format
+msgid "Please enter the settings of your VPN connection"
+msgstr "%s মিররের সাথে সংযুক্ত হওয়া গেলনা"
+
+#: ../lib/network/drakvpn.pm:94 ../lib/network/netconnect.pm:291
+#, c-format
+msgid "Do you want to start the connection now?"
+msgstr ""
+
+#: ../lib/network/drakvpn.pm:100
+#, fuzzy, c-format
+msgid "Connection failed."
+msgstr "কানেকশনের নাম"
+
+#: ../lib/network/drakvpn.pm:108
+#, c-format
+msgid ""
+"The VPN connection is now configured.\n"
+"\n"
+"This VPN connection can be automatically started together with a network "
+"connection.\n"
+"It can be done by reconfiguring the network connection and selecting this "
+"VPN connection.\n"
+msgstr ""
+
+#: ../lib/network/ifw.pm:129
+#, fuzzy, c-format
+msgid "Port scanning"
+msgstr "শেয়ারিং নেই"
+
+# সাম
+#: ../lib/network/ifw.pm:130
+#, fuzzy, c-format
+msgid "Service attack"
+msgstr "আক্রান্ত সার্ভিস: %s"
+
+#: ../lib/network/ifw.pm:131
+#, fuzzy, c-format
+msgid "Password cracking"
+msgstr "পাসওয়ার্ড (পুনরায়)"
+
+#: ../lib/network/ifw.pm:132
+#, c-format
+msgid "\"%s\" attack"
+msgstr ""
+
+# সাম
+#: ../lib/network/ifw.pm:134
+#, c-format
+msgid "A port scanning attack has been attempted by %s."
+msgstr "%s দ্বারা একটি পোর্ট স্ক্যানিং আক্রমনের চেষ্টা করা হয়েছে।"
+
+# সাম
+#: ../lib/network/ifw.pm:135
+#, c-format
+msgid "The %s service has been attacked by %s."
+msgstr "%s দ্বারা %s সার্ভিসটি আক্রান্ত হয়েছে।"
+
+# সাম
+#: ../lib/network/ifw.pm:136
+#, c-format
+msgid "A password cracking attack has been attempted by %s."
+msgstr "%s দ্বারা একটি পাসওয়ার্ড ভাঙার আক্রমনের চেষ্টা করা হয়েছে।"
+
+# সাম
+#: ../lib/network/ifw.pm:137
+#, fuzzy, c-format
+msgid "A \"%s\" attack has been attempted by %s"
+msgstr "%s দ্বারা একটি পোর্ট স্ক্যানিং আক্রমনের চেষ্টা করা হয়েছে।"
+
+#: ../lib/network/ifw.pm:146
+#, c-format
+msgid ""
+"The \"%s\" application is trying to make a service (%s) available to the "
+"network."
+msgstr ""
+
+#. -PO: this should be kept lowercase since the expression is meant to be used between brackets
+#: ../lib/network/ifw.pm:150
+#, fuzzy, c-format
+msgid "port %d"
+msgstr "রিপোর্ট"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/netconnect.pm:603
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#, c-format
+msgid "Manual"
+msgstr "হাতে হাতে"
+
+#: ../lib/network/modem.pm:42 ../lib/network/modem.pm:43
+#: ../lib/network/modem.pm:44 ../lib/network/modem.pm:63
+#: ../lib/network/modem.pm:76 ../lib/network/modem.pm:81
+#: ../lib/network/modem.pm:110 ../lib/network/netconnect.pm:598
+#: ../lib/network/netconnect.pm:603 ../lib/network/netconnect.pm:615
+#: ../lib/network/netconnect.pm:620 ../lib/network/netconnect.pm:636
+#: ../lib/network/netconnect.pm:638
+#, c-format
+msgid "Automatic"
+msgstr "সয়ংক্রিয়"
+
+#: ../lib/network/ndiswrapper.pm:27
+#, c-format
+msgid "No device supporting the %s ndiswrapper driver is present!"
+msgstr ""
+
+# সাম
+#: ../lib/network/ndiswrapper.pm:33
+#, c-format
+msgid "Please select the Windows driver (.inf file)"
+msgstr "উইন্ডোজ ড্রাইভারটি বেছে নিন (.inf ফাইল)"
+
+#: ../lib/network/ndiswrapper.pm:42
+#, c-format
+msgid "Unable to install the %s ndiswrapper driver!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:86
+#, c-format
+msgid "Unable to load the ndiswrapper module!"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:92
+#, c-format
+msgid ""
+"The selected device has already been configured with the %s driver.\n"
+"Do you really want to use a ndiswrapper driver?"
+msgstr ""
+
+#: ../lib/network/ndiswrapper.pm:102
+#, c-format
+msgid "Unable to find the ndiswrapper interface!"
+msgstr ""
+
+# সাম
+#: ../lib/network/ndiswrapper.pm:115
+#, c-format
+msgid "Choose an ndiswrapper driver"
+msgstr "একটি ndiswrapper ড্রাইভার বেছে নিন"
+
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Use the ndiswrapper driver %s"
+msgstr ""
+
+# সাম
+#: ../lib/network/ndiswrapper.pm:118
+#, c-format
+msgid "Install a new driver"
+msgstr "একটি নতুন ড্রাইভার ইনস্টল করুন"
+
+#: ../lib/network/ndiswrapper.pm:129
+#, c-format
+msgid "Select a device:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:37
+#, c-format
+msgid "United States"
+msgstr "যুক্তরাষ্ট্র"
+
+#: ../lib/network/netconnect.pm:60 ../lib/network/netconnect.pm:493
+#: ../lib/network/netconnect.pm:507
+#, c-format
+msgid "Manual choice"
+msgstr "হাতে হাতে পছন্দ"
+
+#: ../lib/network/netconnect.pm:60
+#, c-format
+msgid "Internal ISDN card"
+msgstr "ইন্টার্নাল ISDN কার্ড"
+
+#: ../lib/network/netconnect.pm:65
+#, c-format
+msgid "Protocol for the rest of the world"
+msgstr "বাকী বিশ্বের জন্য প্রটোকল"
+
+#: ../lib/network/netconnect.pm:67 ../tools/drakconnect:564
+#, c-format
+msgid "European protocol (EDSS1)"
+msgstr "ইউরোপীয় প্রটোকল (EDSS1)"
+
+#: ../lib/network/netconnect.pm:68 ../tools/drakconnect:565
+#, c-format
+msgid ""
+"Protocol for the rest of the world\n"
+"No D-Channel (leased lines)"
+msgstr ""
+"বাকী বিশ্বের জন্য প্রটকোল\n"
+"কোন D-Channel ছাড়াই (ভাড়া নেয়া লাইনসমূহ)"
+
+#: ../lib/network/netconnect.pm:118 ../tools/drakconnect:61
+#, c-format
+msgid "Network & Internet Configuration"
+msgstr "নেটওয়ার্ক এবং ইন্টারনেট কনফিগারেশন"
+
+#: ../lib/network/netconnect.pm:123
+#, c-format
+msgid "Choose the connection you want to configure"
+msgstr "কনফিগারের জন্য আপনার সংযোগ পছন্দ করুন"
+
+#: ../lib/network/netconnect.pm:145 ../lib/network/netconnect.pm:348
+#: ../lib/network/netconnect.pm:788
+#, c-format
+msgid "Select the network interface to configure:"
+msgstr "কনফিগার করার জন্য নেটওয়ার্কের ইন্টারফেস পছন্দ করুন:"
+
+#: ../lib/network/netconnect.pm:164
+#, c-format
+msgid "No device can be found for this connection type."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:173
+#, fuzzy, c-format
+msgid "Hardware Configuration"
+msgstr "নেটওয়ার্ক কনফিগারেশন"
+
+# সাম
+#: ../lib/network/netconnect.pm:177 ../tools/drakroam:90
+#, c-format
+msgid "Configuring device..."
+msgstr "ডিভাইস কন্‌ফিগার হচ্ছে..."
+
+#: ../lib/network/netconnect.pm:194
+#, c-format
+msgid "Please select your provider:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:209 ../tools/drakroam:170
+#, fuzzy, c-format
+msgid "Scanning for networks..."
+msgstr "নেটওয়ার্ক স্ক্যান করা হচ্ছে..."
+
+#: ../lib/network/netconnect.pm:212
+#, c-format
+msgid "Please select your network:"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:241
+#, c-format
+msgid ""
+"Please select your connection protocol.\n"
+"If you do not know it, keep the preselected protocol."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:285 ../lib/network/netconnect.pm:655
+#, c-format
+msgid "Connection control"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Connection Configuration"
+msgstr "সংযোগ কনফিগারেশন"
+
+#: ../lib/network/netconnect.pm:315
+#, c-format
+msgid "Please fill or check the field below"
+msgstr "অনুগ্রহ করে নিম্নের দেখুন অথবা পূরন করুন"
+
+#: ../lib/network/netconnect.pm:318
+#, c-format
+msgid "Your personal phone number"
+msgstr "আপনার ব্যক্তিগত ফোন নম্বর"
+
+#: ../lib/network/netconnect.pm:319
+#, c-format
+msgid "Provider name (ex provider.net)"
+msgstr "পরিবেশকের নাম (যেমন provider.net)"
+
+#: ../lib/network/netconnect.pm:320 ../tools/drakconnect:494
+#, c-format
+msgid "Provider phone number"
+msgstr "পরিবেশকের ফোন নম্বর"
+
+#: ../lib/network/netconnect.pm:321
+#, c-format
+msgid "Provider DNS 1 (optional)"
+msgstr "পরিবেশকের DNS ১ (ঐচ্ছিক)"
+
+#: ../lib/network/netconnect.pm:322
+#, c-format
+msgid "Provider DNS 2 (optional)"
+msgstr "পরিবেশকের DNS ২ (ঐচ্ছিক)"
+
+#: ../lib/network/netconnect.pm:323 ../tools/drakconnect:446
+#, c-format
+msgid "Dialing mode"
+msgstr "ডায়েলের ধরণ"
+
+#: ../lib/network/netconnect.pm:324 ../tools/drakconnect:451
+#: ../tools/drakconnect:518
+#, c-format
+msgid "Connection speed"
+msgstr "সংযোগের গতি"
+
+#: ../lib/network/netconnect.pm:325 ../tools/drakconnect:456
+#, c-format
+msgid "Connection timeout (in sec)"
+msgstr "সংযোগের টাইমআউট (সেকেন্ডে)"
+
+#: ../lib/network/netconnect.pm:328 ../tools/drakconnect:555
+#, c-format
+msgid "Card IRQ"
+msgstr "কার্ডের IRQ"
+
+#: ../lib/network/netconnect.pm:329 ../tools/drakconnect:556
+#, c-format
+msgid "Card mem (DMA)"
+msgstr "কার্ড মেম (DMA)"
+
+#: ../lib/network/netconnect.pm:330 ../tools/drakconnect:557
+#, c-format
+msgid "Card IO"
+msgstr "কার্ডের IO"
+
+#: ../lib/network/netconnect.pm:331 ../tools/drakconnect:558
+#, c-format
+msgid "Card IO_0"
+msgstr "কার্ডের IO_০"
+
+#: ../lib/network/netconnect.pm:332
+#, c-format
+msgid "Card IO_1"
+msgstr "কার্ডের IO_১"
+
+#: ../lib/network/netconnect.pm:350 ../lib/network/netconnect.pm:385
+#: ../tools/drakconnect:719 ../tools/drakgw:123
+#, c-format
+msgid "Net Device"
+msgstr "নেট ডিভাইস"
+
+#: ../lib/network/netconnect.pm:351 ../lib/network/netconnect.pm:356
+#, c-format
+msgid "External ISDN modem"
+msgstr "বাহ্যিক ISDN মডেম"
+
+#: ../lib/network/netconnect.pm:384
+#, c-format
+msgid "Select a device!"
+msgstr "একটি যন্ত্র বেছে নিন!"
+
+#: ../lib/network/netconnect.pm:393 ../lib/network/netconnect.pm:403
+#: ../lib/network/netconnect.pm:413 ../lib/network/netconnect.pm:446
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid "ISDN Configuration"
+msgstr "ISDN কনফিগারেশন"
+
+#: ../lib/network/netconnect.pm:394
+#, c-format
+msgid "What kind of card do you have?"
+msgstr "আপনার কি ধরনের কার্ড আছে?"
+
+#: ../lib/network/netconnect.pm:404
+#, c-format
+msgid ""
+"\n"
+"If you have an ISA card, the values on the next screen should be right.\n"
+"\n"
+"If you have a PCMCIA card, you have to know the \"irq\" and \"io\" of your "
+"card.\n"
+msgstr ""
+"\n"
+"যদি আপনার একটি ISA কার্ড থাকে, পরবর্তী স্ক্রীণের মানগুলো সঠিক হবে।\n"
+"\n"
+"যদি আপনার একটি PCMCIA কার্ড থাকে, আপনার কার্ডের \"irq\" এবং \"io\" আপনাকে "
+"জানতে হবে।\n"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Continue"
+msgstr "অগ্রসর"
+
+#: ../lib/network/netconnect.pm:408
+#, c-format
+msgid "Abort"
+msgstr "বাতিল"
+
+#: ../lib/network/netconnect.pm:414
+#, c-format
+msgid "Which of the following is your ISDN card?"
+msgstr "এগুলির মধ্যে কোনটি আপনার ISDN কার্ড?"
+
+#: ../lib/network/netconnect.pm:432
+#, c-format
+msgid ""
+"A CAPI driver is available for this modem. This CAPI driver can offer more "
+"capabilities than the free driver (like sending faxes). Which driver do you "
+"want to use?"
+msgstr ""
+"এই মডেমের জন্য একটি CAPI ড্রাইভার আছে। এই CAPI ড্রাইভার একটি ফ্রি ড্রাইভারের "
+"চেয়ে বেশি সুবিধা দেবে (ফ্যাক্স পাঠানোর মত)। আপনি কোন্‌ ড্রাইভার ব্যবহার করতে চান?"
+
+#: ../lib/network/netconnect.pm:434 ../tools/drakconnect:113
+#, c-format
+msgid "Driver"
+msgstr "ড্রাইভার"
+
+#: ../lib/network/netconnect.pm:446
+#, c-format
+msgid "Which protocol do you want to use?"
+msgstr "আপনি কোন প্রটোকল ব্যবহার করতে চান?"
+
+#: ../lib/network/netconnect.pm:448 ../tools/drakconnect:113
+#: ../tools/drakconnect:305 ../tools/drakconnect:563 ../tools/drakids:252
+#: ../tools/drakvpn-old:839
+#, c-format
+msgid "Protocol"
+msgstr "প্রটোকল"
+
+#: ../lib/network/netconnect.pm:460
+#, c-format
+msgid ""
+"Select your provider.\n"
+"If it is not listed, choose Unlisted."
+msgstr ""
+"আপনার পরিবেশক পছন্দ করুন।\n"
+"যদি তালিকাভূক্ত না থাকে, তাহলে তালিকায় নেই পছন্দ করুন।"
+
+#: ../lib/network/netconnect.pm:462 ../lib/network/netconnect.pm:558
+#, c-format
+msgid "Provider:"
+msgstr "পরিবেশক:"
+
+#: ../lib/network/netconnect.pm:471
+#, c-format
+msgid ""
+"Your modem is not supported by the system.\n"
+"Take a look at http://www.linmodems.org"
+msgstr ""
+"এই সিস্টেম আপনার মডেম সাপোর্ট করেনা।\n"
+" http://www.linmodems.org-এ একবার দেখুন"
+
+#: ../lib/network/netconnect.pm:490
+#, c-format
+msgid "Select the modem to configure:"
+msgstr "কনফিগার করার জন্য মডেম নির্বাচন করুন:"
+
+#: ../lib/network/netconnect.pm:492
+#, c-format
+msgid "Modem"
+msgstr "মডেম"
+
+#: ../lib/network/netconnect.pm:527
+#, c-format
+msgid "Please choose which serial port your modem is connected to."
+msgstr "আপনার মোডেমটি যেই সিরিয়াল পোর্টে সংযুক্ত আছে তা পছন্দ করুন।"
+
+#: ../lib/network/netconnect.pm:556
+#, c-format
+msgid "Select your provider:"
+msgstr "আপনার পরিবেশক নির্বাচন করুন:"
+
+#: ../lib/network/netconnect.pm:580
+#, c-format
+msgid "Dialup: account options"
+msgstr "ডায়েলআপ: একাউন্টের অপশন"
+
+#: ../lib/network/netconnect.pm:583
+#, c-format
+msgid "Connection name"
+msgstr "কানেকশনের নাম"
+
+#: ../lib/network/netconnect.pm:584
+#, c-format
+msgid "Phone number"
+msgstr "ফোন নম্বর"
+
+#: ../lib/network/netconnect.pm:585
+#, c-format
+msgid "Login ID"
+msgstr "লগইন আইডি"
+
+#: ../lib/network/netconnect.pm:586 ../lib/network/vpn/vpnc.pm:56
+#: ../tools/drakinvictus:110
+#, c-format
+msgid "Password"
+msgstr "পাসওয়ার্ড"
+
+#: ../lib/network/netconnect.pm:600 ../lib/network/netconnect.pm:633
+#, c-format
+msgid "Dialup: IP parameters"
+msgstr "ডায়েলআপ: IP প্যারামিটার"
+
+#: ../lib/network/netconnect.pm:603
+#, c-format
+msgid "IP parameters"
+msgstr "IP প্যারামিটারসমূহ"
+
+#: ../lib/network/netconnect.pm:605
+#, c-format
+msgid "Subnet mask"
+msgstr "সাবনেট মাস্ক"
+
+#: ../lib/network/netconnect.pm:617
+#, c-format
+msgid "Dialup: DNS parameters"
+msgstr "ডায়েলআপ: DNS প্যারামিটার"
+
+#: ../lib/network/netconnect.pm:620
+#, c-format
+msgid "DNS"
+msgstr "DNS"
+
+#: ../lib/network/netconnect.pm:621
+#, c-format
+msgid "Domain name"
+msgstr "ডোমেইন নেম"
+
+#: ../lib/network/netconnect.pm:622 ../tools/drakconnect:996
+#, c-format
+msgid "First DNS Server (optional)"
+msgstr "প্রথম DNS সার্ভার (ঐচ্ছিক)"
+
+#: ../lib/network/netconnect.pm:623 ../tools/drakconnect:997
+#, c-format
+msgid "Second DNS Server (optional)"
+msgstr "দ্বিতীয় DNS সার্ভার (ঐচ্ছিক)"
+
+#: ../lib/network/netconnect.pm:624
+#, c-format
+msgid "Set hostname from IP"
+msgstr "IP থেকে হোস্টনেম সেট করুন"
+
+#: ../lib/network/netconnect.pm:637
+#, c-format
+msgid "Gateway IP address"
+msgstr "গেটওয়ে IP ঠিকানা"
+
+#: ../lib/network/netconnect.pm:670
+#, c-format
+msgid "Automatically at boot"
+msgstr "বুট এর সময় সয়ংক্রিয় ভাবে"
+
+#: ../lib/network/netconnect.pm:672
+#, c-format
+msgid "By using Net Applet in the system tray"
+msgstr "সিস্টেম ট্রে'তে নেট অ্যাপলেট ব্যবহার করে"
+
+#: ../lib/network/netconnect.pm:674
+#, c-format
+msgid "Manually (the interface would still be activated at boot)"
+msgstr "হাতে হাতে (ইন্টারফেস এখনও বুট হওয়ার সময় সক্রিয় হবে)"
+
+#: ../lib/network/netconnect.pm:683
+#, c-format
+msgid "How do you want to dial this connection?"
+msgstr "আপনি কিভাবে ডায়াল করে এই সংযোগ স্থাপন করতে চান?"
+
+#: ../lib/network/netconnect.pm:696
+#, c-format
+msgid "Do you want to try to connect to the Internet now?"
+msgstr "আপনি কি এখন ইন্টার্নেটের সাথে সংযুক্ত হবার চেষ্টা করবেন?"
+
+#: ../lib/network/netconnect.pm:704 ../tools/drakconnect:1027
+#, c-format
+msgid "Testing your connection..."
+msgstr "আপনার কানেকশন পরীক্ষা করা হচ্ছে..."
+
+#: ../lib/network/netconnect.pm:723
+#, c-format
+msgid "The system is now connected to the Internet."
+msgstr "সিস্টেম এখন ইন্টারনেটে সংযুক্ত হবে।"
+
+#: ../lib/network/netconnect.pm:724
+#, c-format
+msgid "For security reasons, it will be disconnected now."
+msgstr "নিরাপত্তা কারণে, এটা এখন বিচ্ছিন্ন হবে।"
+
+#: ../lib/network/netconnect.pm:725
+#, c-format
+msgid ""
+"The system does not seem to be connected to the Internet.\n"
+"Try to reconfigure your connection."
+msgstr ""
+"সিস্টেম ইন্টারনেটে সংযুক্ত আছে বলে মনে হয় না।\n"
+"আপনার সংযুক্তি পুনরায় কন্‌ফিগার করার চেষ্টা করুন।"
+
+#: ../lib/network/netconnect.pm:740
+#, c-format
+msgid ""
+"Congratulations, the network and Internet configuration is finished.\n"
+"\n"
+msgstr ""
+"অভিনন্দন, নেটওয়ার্ক এবং ইন্টারনেট কন্‌ফিগারেশন শেষ হয়ে গেছে।\n"
+"।\n"
+
+#: ../lib/network/netconnect.pm:743
+#, c-format
+msgid ""
+"After this is done, we recommend that you restart your X environment to "
+"avoid any hostname-related problems."
+msgstr ""
+"এটা হয়ে যাবার পর, আমরা সুপারিশ করি যে হোস্টনেমের সংক্রান্ত সমস্যাগুলো এড়ানোর জন্য "
+"আপনার X এনভায়রনমেন্ট পুনরায় চালু করুন।"
+
+#: ../lib/network/netconnect.pm:744
+#, c-format
+msgid ""
+"Problems occurred during configuration.\n"
+"Test your connection via net_monitor or mcc. If your connection does not "
+"work, you might want to relaunch the configuration."
+msgstr ""
+"কন্‌ফিগারেশনের সময় সমস্যা হয়ে গেছে।\n"
+"net_monitor বা mcc এর মাধ্যমে আপনার সংযুক্ত পরীক্ষা করুন। যদি আপনার সংযুক্তি কাজ না "
+"করে, তাহলে আপনাকে পুনরায় কন্‌ফিগারেশন করতে হবে।"
+
+#: ../lib/network/netconnect.pm:756
+#, c-format
+msgid "Sagem USB modem"
+msgstr "Sagem ইউএসবি মডেম"
+
+#: ../lib/network/netconnect.pm:757 ../lib/network/netconnect.pm:758
+#, c-format
+msgid "Bewan modem"
+msgstr "Bewan মডেম"
+
+#: ../lib/network/netconnect.pm:759
+#, c-format
+msgid "ECI Hi-Focus modem"
+msgstr "ECI Hi-Focus মডেম"
+
+#: ../lib/network/netconnect.pm:760
+#, c-format
+msgid "LAN connection"
+msgstr "LAN সংযোগ"
+
+#: ../lib/network/netconnect.pm:761 ../tools/drakroam:29
+#, c-format
+msgid "Wireless connection"
+msgstr "ওয়্যারলেস সংযোগ"
+
+#: ../lib/network/netconnect.pm:762
+#, c-format
+msgid "ADSL connection"
+msgstr "ASDL সংযোগ"
+
+#: ../lib/network/netconnect.pm:763
+#, c-format
+msgid "Cable connection"
+msgstr "কেবল সংযোগ"
+
+#: ../lib/network/netconnect.pm:764
+#, c-format
+msgid "ISDN connection"
+msgstr "ISDN কানেকশন"
+
+#: ../lib/network/netconnect.pm:765
+#, c-format
+msgid "Modem connection"
+msgstr "মডেম কানেকশন"
+
+#: ../lib/network/netconnect.pm:766
+#, c-format
+msgid "DVB connection"
+msgstr ""
+
+#: ../lib/network/netconnect.pm:768
+#, c-format
+msgid "(detected on port %s)"
+msgstr "(%s পোর্টে সনাক্ত হয়েছে)"
+
+# -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#. -PO: here, "(detected)" string will be appended to eg "ADSL connection"
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected %s)"
+msgstr "(%s সনাক্ত হয়েছে)"
+
+#: ../lib/network/netconnect.pm:770
+#, c-format
+msgid "(detected)"
+msgstr "(সনাক্ত হয়েছে)"
+
+#: ../lib/network/netconnect.pm:771
+#, c-format
+msgid "Network Configuration"
+msgstr "নেটওয়ার্ক কনফিগারেশন"
+
+#: ../lib/network/netconnect.pm:772
+#, c-format
+msgid "Zeroconf hostname resolution"
+msgstr "Zeroconf হোস্টের নাম রেজ্যুলুশন"
+
+#: ../lib/network/netconnect.pm:773
+#, c-format
+msgid ""
+"If desired, enter a Zeroconf hostname.\n"
+"This is the name your machine will use to advertise any of\n"
+"its shared resources that are not managed by the network.\n"
+"It is not necessary on most networks."
+msgstr ""
+"যদি চায়, তাহলে একটি Zeroconf হোস্টনেম দিন।\n"
+"এটি আপনার মেশিনের নাম যা ব্যবহার করে নেটওয়ার্ক যা করে দিতে \n"
+"পারে না সেই রিসোর্স ভাগাভাগিতে সাহায্য করবে।\n"
+"এটি বেশিরভাগ নেটওয়ার্কের ক্ষেত্রে জরুরী নয়।"
+
+#: ../lib/network/netconnect.pm:777
+#, c-format
+msgid "Zeroconf Host name"
+msgstr "Zeroconf হোস্টের নাম"
+
+#: ../lib/network/netconnect.pm:778
+#, c-format
+msgid "Zeroconf host name must not contain a ."
+msgstr "Zeroconf হোস্টের নামে অবশ্যই a থাকবে না ।"
+
+#: ../lib/network/netconnect.pm:779
+#, c-format
+msgid ""
+"Because you are doing a network installation, your network is already "
+"configured.\n"
+"Click on Ok to keep your configuration, or cancel to reconfigure your "
+"Internet & Network connection.\n"
+msgstr ""
+"কারণ আপনি একটি নেটওয়ার্ক ইনস্টল করছেন, আপনার নেটওয়ার্ক ইতিমধ্যেই কন্‌ফিগার করা "
+"আছে।\n"
+"কন্‌ফিগারেশন বজায় রাখতে ঠিক আছে'তে ক্লিক করুন, অথবা আপনার ইন্টারনেট এবং নেটওয়ার্ক "
+"সংযুক্তি পুনরায়পুনরায় কন্‌ফিগার করতে বাতিল ক্লিক করুন।\n"
+
+#: ../lib/network/netconnect.pm:782
+#, c-format
+msgid "The network needs to be restarted. Do you want to restart it?"
+msgstr "নোটওয়ার্কের রিষ্টার্টের প্রয়োজন। আপনি কি রি-ষ্টার্ট করতে চান?"
+
+#: ../lib/network/netconnect.pm:783
+#, c-format
+msgid ""
+"A problem occurred while restarting the network: \n"
+"\n"
+"%s"
+msgstr ""
+"নেটওয়ার্ক রি-ষ্টার্ট করার সময় একটি সমস্যা হয়েছে: \n"
+"\n"
+"%s"
+
+#: ../lib/network/netconnect.pm:784
+#, c-format
+msgid ""
+"We are now going to configure the %s connection.\n"
+"\n"
+"\n"
+"Press \"%s\" to continue."
+msgstr ""
+"আপনি এখন %s সংযোগ কনফিগার করতে যাচ্ছেন।\n"
+"\n"
+"\n"
+" অগ্রসর হবার জন্য \"%s\" চাপুন।"
+
+#: ../lib/network/netconnect.pm:785
+#, c-format
+msgid "Configuration is complete, do you want to apply settings?"
+msgstr "কনফিগারেশন সম্পূর্ন হয়েছে, আপনি কি সেটিংগুলি প্রয়োগ করতে চান?"
+
+#: ../lib/network/netconnect.pm:786
+#, c-format
+msgid ""
+"You have configured multiple ways to connect to the Internet.\n"
+"Choose the one you want to use.\n"
+"\n"
+msgstr ""
+"আপনি ইন্টারনেটের সংযুক্তির বিভিন্ন উপায় কন্‌ফিগার করেছেন।\n"
+"যেটি আপনি ব্যবহার করতে চান বেছে নিন।\n"
+"\n"
+
+#: ../lib/network/netconnect.pm:787
+#, c-format
+msgid "Internet connection"
+msgstr "ইন্টারনেট সংযোগ"
+
+#: ../lib/network/netconnect.pm:789
+#, c-format
+msgid "Configuring network device %s (driver %s)"
+msgstr "%s নেটওয়ার্ক যন্ত্রটি কন্‌ফিগার হচ্ছে (ড্রাইভার %s)"
+
+#: ../lib/network/netconnect.pm:790
+#, c-format
+msgid ""
+"The following protocols can be used to configure a LAN connection. Please "
+"choose the one you want to use."
+msgstr ""
+
+#: ../lib/network/netconnect.pm:791
+#, c-format
+msgid ""
+"Please enter your host name.\n"
+"Your host name should be a fully-qualified host name,\n"
+"such as ``mybox.mylab.myco.com''.\n"
+"You may also enter the IP address of the gateway if you have one."
+msgstr ""
+"অনুগ্রহ করে আপনার হোস্টনেম দিন।\n"
+"আপনি হোস্টনেমটি যোগ্যতা-সম্পন্ন হোস্টনেম হওয়া উচিত,\n"
+"যেমন ``mybox.mylab.myco.com''।\n"
+"যদি আপনার কোন গেটওয়ে থাকে তাহলে তার আই-পি অ্যাড্রেস দিন"
+
+#: ../lib/network/netconnect.pm:796
+#, c-format
+msgid "Last but not least you can also type in your DNS server IP addresses."
+msgstr ""
+"শেষ কিন্তু সবচেয়ে ছোট নয় আপনি আপনার ডি-এন-এস সার্ভারের আই-পি অ্যাড্রেসগুলো টাইপ "
+"করে দিতে পারেন।"
+
+#: ../lib/network/netconnect.pm:797
+#, c-format
+msgid "DNS server address should be in format 1.2.3.4"
+msgstr "DNS সার্ভারের ঠিকানা 1.2.3.4-এর মত হতে হবে"
+
+#: ../lib/network/netconnect.pm:798 ../tools/drakconnect:689
+#, c-format
+msgid "Gateway address should be in format 1.2.3.4"
+msgstr "গেটওয়ে ঠিকানা 1.2.3.4-এর মত হতে হবে"
+
+#: ../lib/network/netconnect.pm:799
+#, c-format
+msgid "Gateway device"
+msgstr "গেটওয়ে ডিভাইস"
+
+#: ../lib/network/netconnect.pm:813
+#, c-format
+msgid ""
+"An unexpected error has happened:\n"
+"%s"
+msgstr ""
+"একটি অনাকাঙ্খিত ভুল ঘটে গেছে:\n"
+"%s"
+
+#: ../lib/network/network.pm:429
+#, c-format
+msgid "Proxies configuration"
+msgstr "প্রক্সিসমূহের কনফিগারেশন"
+
+#: ../lib/network/network.pm:430
+#, c-format
+msgid ""
+"Here you can set up your proxies configuration (eg: http://"
+"my_caching_server:8080)"
+msgstr ""
+
+#: ../lib/network/network.pm:431
+#, c-format
+msgid "HTTP proxy"
+msgstr "HTTP প্রক্সি"
+
+#: ../lib/network/network.pm:432
+#, c-format
+msgid "Use HTTP proxy for HTTPS connections"
+msgstr ""
+
+#: ../lib/network/network.pm:433
+#, c-format
+msgid "HTTPS proxy"
+msgstr ""
+
+#: ../lib/network/network.pm:434
+#, c-format
+msgid "FTP proxy"
+msgstr "FTP প্রক্সি"
+
+#: ../lib/network/network.pm:435
+#, fuzzy, c-format
+msgid "No proxy for (comma separated list):"
+msgstr "%d কমা দিয়ে আলাদা করা বাক্য সমূহ"
+
+#: ../lib/network/network.pm:440
+#, c-format
+msgid "Proxy should be http://..."
+msgstr "প্রক্সি http://..... হওয়া উচিত্‍‌"
+
+#: ../lib/network/network.pm:441
+#, fuzzy, c-format
+msgid "Proxy should be http://... or https://..."
+msgstr "প্রক্সি http://..... হওয়া উচিত্‍‌"
+
+#: ../lib/network/network.pm:442
+#, c-format
+msgid "URL should begin with 'ftp:' or 'http:'"
+msgstr "URL 'ftp:' অথবা 'http:' দিয়ে শুরু হওয়া উচিত্‍‌"
+
+#: ../lib/network/shorewall.pm:61
+#, c-format
+msgid ""
+"Please select the interfaces that will be protected by the firewall.\n"
+"\n"
+"All interfaces directly connected to Internet should be selected,\n"
+"while interfaces connected to a local network may be unselected.\n"
+"\n"
+"Which interfaces should be protected?\n"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:136
+#, c-format
+msgid "Keep custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:137
+#, c-format
+msgid "Drop custom rules"
+msgstr ""
+
+#: ../lib/network/shorewall.pm:142
+#, c-format
+msgid ""
+"Your firewall configuration has been manually edited and contains\n"
+"rules that may conflict with the configuration that has just been set up.\n"
+"What do you want to do?"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:134
+#, c-format
+msgid "Some components (%s) are required but aren't available for %s hardware."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:135
+#, c-format
+msgid "Some packages (%s) are required but aren't available."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:137
+#, c-format
+msgid ""
+"These packages can be found in Mandriva Club or in Mandriva commercial "
+"releases."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:138
+#, c-format
+msgid "The following component is missing: %s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:140
+#, c-format
+msgid ""
+"The required files can also be installed from this URL:\n"
+"%s"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:177 ../lib/network/thirdparty.pm:182
+#, c-format
+msgid "Use a floppy"
+msgstr "একটি ফ্লপি ব্যবহার করো"
+
+#: ../lib/network/thirdparty.pm:178 ../lib/network/thirdparty.pm:185
+#, c-format
+msgid "Use my Windows partition"
+msgstr "আমার উইন্ডোজ পার্টিশন ব্যবহার করো"
+
+#: ../lib/network/thirdparty.pm:179
+#, c-format
+msgid "Select file"
+msgstr "ফাইল সিলেক্ট করো"
+
+# সাম
+#: ../lib/network/thirdparty.pm:190
+#, fuzzy, c-format
+msgid "Please select the firmware file (for example: %s)"
+msgstr "উইন্ডোজ ড্রাইভারটি বেছে নিন (.inf ফাইল)"
+
+#: ../lib/network/thirdparty.pm:214
+#, fuzzy, c-format
+msgid "Unable to find \"%s\" on your Windows system!"
+msgstr "আপনার সিস্টেম থেকে ফন্ট মুছে ফেলুন"
+
+#: ../lib/network/thirdparty.pm:216
+#, c-format
+msgid "No Windows system has been detected!"
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:226
+#, c-format
+msgid "Insert floppy"
+msgstr "ফ্লপি প্রবেশ করান"
+
+# বহু কথা বলতে হচ্ছে। ব্যবহারকারী হাঁফসে যাবে ;)
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid ""
+"Insert a FAT formatted floppy in drive %s with %s in root directory and "
+"press %s"
+msgstr ""
+"%s ড্রাইভে FAT ফরম্যাট করা একটি ফ্লপি প্রবেশ করান যার রুট ডিরেক্টরিতে %s আছে এবং %"
+"s চাপুন"
+
+# পরবর্তি
+#: ../lib/network/thirdparty.pm:227
+#, c-format
+msgid "Next"
+msgstr "পরবর্তী"
+
+#: ../lib/network/thirdparty.pm:237
+#, c-format
+msgid "Floppy access error, unable to mount device %s"
+msgstr "ফ্লপি ব্যবহার করা যাচ্ছেনা, %s ডিভাইস মাউন্ট করা সম্ভব হয়নি"
+
+#: ../lib/network/thirdparty.pm:319
+#, c-format
+msgid "Looking for required software and drivers..."
+msgstr ""
+
+#: ../lib/network/thirdparty.pm:330
+#, fuzzy, c-format
+msgid "Please wait, running device configuration commands..."
+msgstr "অনুগ্রহ করে অপেক্ষা করুন, ডিভাইসগুলি সনাক্ত এবং কনফিগার করা হচ্ছে..."
+
+#: ../lib/network/vpn/openvpn.pm:107
+#, c-format
+msgid "X509 Public Key Infrastructure"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:108
+#, c-format
+msgid "Static Key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:115
+#, c-format
+msgid "Type"
+msgstr "ধরণ"
+
+#. -PO: please don't translate the CA acronym
+#: ../lib/network/vpn/openvpn.pm:142
+#, c-format
+msgid "Certificate Authority (CA)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:148
+#, c-format
+msgid "Certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:154
+#, fuzzy, c-format
+msgid "Key"
+msgstr "কেনিয়া"
+
+#: ../lib/network/vpn/openvpn.pm:160
+#, fuzzy, c-format
+msgid "TLS control channel key"
+msgstr "ডান Alt কী"
+
+#: ../lib/network/vpn/openvpn.pm:167
+#, c-format
+msgid "Key direction"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:175
+#, fuzzy, c-format
+msgid "Authenticate using username and password"
+msgstr "ইউজারনেম %s ব্যবহার করে লগইন করা গেলোনা (নষ্ট পাসওয়ার্ড?)"
+
+#: ../lib/network/vpn/openvpn.pm:181
+#, c-format
+msgid "Check server certificate"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:187
+#, fuzzy, c-format
+msgid "Cipher algorithm"
+msgstr "Encryption অ্যালগোরিদম"
+
+#: ../lib/network/vpn/openvpn.pm:191
+#, c-format
+msgid "Default"
+msgstr "স্বাভাবিক"
+
+#: ../lib/network/vpn/openvpn.pm:195
+#, c-format
+msgid "Size of cipher key"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:206
+#, fuzzy, c-format
+msgid "Get from server"
+msgstr "টেলনেট সার্ভার"
+
+#: ../lib/network/vpn/openvpn.pm:216
+#, fuzzy, c-format
+msgid "Gateway port"
+msgstr "গেটওয়ে"
+
+#: ../lib/network/vpn/openvpn.pm:227 ../tools/drakgw:176
+#, fuzzy, c-format
+msgid "Local IP address"
+msgstr "IP ঠিকানাসমূহ"
+
+#: ../lib/network/vpn/openvpn.pm:232
+#, fuzzy, c-format
+msgid "Remote IP address"
+msgstr "গেটওয়ে IP ঠিকানা"
+
+#: ../lib/network/vpn/openvpn.pm:237
+#, fuzzy, c-format
+msgid "Use TCP protocol"
+msgstr "প্রটোকল"
+
+#: ../lib/network/vpn/openvpn.pm:243
+#, c-format
+msgid "Virtual network device type"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:250
+#, c-format
+msgid "Virtual network device number (optional)"
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:365
+#, c-format
+msgid "Starting connection.."
+msgstr ""
+
+#: ../lib/network/vpn/openvpn.pm:380
+#, c-format
+msgid "Please insert your token"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:9
+#, c-format
+msgid "Cisco VPN Concentrator"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:43
+#, fuzzy, c-format
+msgid "Group name"
+msgstr "দলের ID"
+
+#: ../lib/network/vpn/vpnc.pm:47
+#, c-format
+msgid "Group secret"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:52
+#, c-format
+msgid "Username"
+msgstr "ব্যবহারকারীনাম"
+
+#: ../lib/network/vpn/vpnc.pm:61
+#, c-format
+msgid "Use Cisco-UDP encapsulation"
+msgstr ""
+
+#: ../lib/network/vpn/vpnc.pm:67
+#, c-format
+msgid "Use specific UDP port"
+msgstr ""
+
+#: ../tools/drakconnect:81
+#, c-format
+msgid "Network configuration (%d adapters)"
+msgstr "নেটওয়ার্ক কনফিগারেশন (%d অ্যাডাপ্টার)"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Gateway:"
+msgstr "গেটওয়ে:"
+
+#: ../tools/drakconnect:93 ../tools/drakconnect:812
+#, c-format
+msgid "Interface:"
+msgstr "ইন্টারফেস:"
+
+#: ../tools/drakconnect:97 ../tools/net_monitor:119
+#, c-format
+msgid "Wait please"
+msgstr "অনুগ্রহপূর্বক অপেক্ষা করুন"
+
+#: ../tools/drakconnect:113 ../tools/drakinvictus:105
+#, c-format
+msgid "Interface"
+msgstr "ইন্টারফেস"
+
+#: ../tools/drakconnect:113
+#, c-format
+msgid "State"
+msgstr "অবস্থা"
+
+#: ../tools/drakconnect:130
+#, c-format
+msgid "Hostname: "
+msgstr "হোস্টনাম: "
+
+#: ../tools/drakconnect:132
+#, c-format
+msgid "Configure hostname..."
+msgstr "হোস্টনাম কনফিগার করো..."
+
+#: ../tools/drakconnect:146 ../tools/drakconnect:850
+#, c-format
+msgid "LAN configuration"
+msgstr "ল্যান কনফিগারেশন"
+
+#: ../tools/drakconnect:151
+#, c-format
+msgid "Configure Local Area Network..."
+msgstr "স্থানীয় নেটওয়ার্ক কনফিগার করো..."
+
+#: ../tools/drakconnect:157 ../tools/drakconnect:240 ../tools/draknfs:181
+#, c-format
+msgid "Help"
+msgstr "সাহায্য"
+
+#: ../tools/drakconnect:159 ../tools/drakconnect:241 ../tools/drakconnect:245
+#: ../tools/drakinvictus:140
+#, c-format
+msgid "Apply"
+msgstr "প্রয়োগ"
+
+#: ../tools/drakconnect:161 ../tools/drakconnect:942 ../tools/drakconnect:1033
+#: ../tools/draknetprofile:106 ../tools/net_monitor:341
+#, c-format
+msgid "Cancel"
+msgstr "বাতিল"
+
+#: ../tools/drakconnect:162 ../tools/drakconnect:857 ../tools/drakconnect:944
+#: ../tools/drakconnect:1034 ../tools/draknetprofile:108
+#: ../tools/net_monitor:342
+#, c-format
+msgid "Ok"
+msgstr "ঠিক আছে"
+
+#: ../tools/drakconnect:164 ../tools/drakconnect:636 ../tools/drakgw:359
+#: ../tools/drakroam:251 ../tools/drakroam:289 ../tools/draksambashare:208
+#, c-format
+msgid "Please wait"
+msgstr "অনুগ্রহ করে অপেক্ষা করুন"
+
+#: ../tools/drakconnect:166 ../tools/drakconnect:638
+#, c-format
+msgid "Please Wait... Applying the configuration"
+msgstr "অনুগ্রহ করে অপেক্ষা করুন.... কনফিগারেশন প্রস্তাব করা হচ্ছে"
+
+#: ../tools/drakconnect:192
+#, c-format
+msgid "Manage connections"
+msgstr "সংযোগ ব্যবস্থাপনা"
+
+#: ../tools/drakconnect:219 ../tools/drakroam:302
+#, c-format
+msgid "Device: "
+msgstr "ডিভাইস:"
+
+#: ../tools/drakconnect:302
+#, c-format
+msgid "IP configuration"
+msgstr "আই.পি. কনফিগারেশন"
+
+#: ../tools/drakconnect:337
+#, c-format
+msgid "DNS servers"
+msgstr "ডি.এন.এস. সার্ভার"
+
+#: ../tools/drakconnect:343
+#, c-format
+msgid "Search Domain"
+msgstr "অনুসন্ধান ক্ষেত্র (Domain)"
+
+#: ../tools/drakconnect:351 ../tools/drakvpn-old:837
+#, c-format
+msgid "none"
+msgstr "না"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "static"
+msgstr "স্থির"
+
+#: ../tools/drakconnect:351
+#, c-format
+msgid "DHCP"
+msgstr "ডি.এইচ.সি.পি."
+
+#: ../tools/drakconnect:434
+#, c-format
+msgid "Start at boot"
+msgstr "বুটের সময় চালু হবে"
+
+#: ../tools/drakconnect:516
+#, c-format
+msgid "Flow control"
+msgstr "ফ্লো কনট্রোল"
+
+#: ../tools/drakconnect:517
+#, c-format
+msgid "Line termination"
+msgstr "লাইন টার্মিনেশন"
+
+#: ../tools/drakconnect:528
+#, c-format
+msgid "Modem timeout"
+msgstr "মডেম টাইম-আউট"
+
+#: ../tools/drakconnect:532
+#, c-format
+msgid "Use lock file"
+msgstr "লক (Lock) ফাইল ব্যবহার করো"
+
+#: ../tools/drakconnect:534
+#, c-format
+msgid "Wait for dialup tone before dialing"
+msgstr "ডায়াল করার পূর্বে ডায়াল টোনের জন্য অপেক্ষা করো"
+
+#: ../tools/drakconnect:537
+#, c-format
+msgid "Busy wait"
+msgstr "ব্যস্ততার অপেক্ষা"
+
+#: ../tools/drakconnect:542
+#, c-format
+msgid "Modem sound"
+msgstr "মডেমের শব্দ"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Enable"
+msgstr "সক্রিয়"
+
+#: ../tools/drakconnect:543 ../tools/drakgw:101
+#, c-format
+msgid "Disable"
+msgstr "নিষ্ক্রিয়"
+
+#: ../tools/drakconnect:592
+#, c-format
+msgid "Vendor"
+msgstr "পরিবেশক"
+
+#: ../tools/drakconnect:593
+#, c-format
+msgid "Description"
+msgstr "বর্ণনা"
+
+#: ../tools/drakconnect:594
+#, c-format
+msgid "Media class"
+msgstr "মিডিয়া শ্রেণী"
+
+#: ../tools/drakconnect:595
+#, c-format
+msgid "Module name"
+msgstr "মডিউলের নাম"
+
+#: ../tools/drakconnect:596
+#, c-format
+msgid "Mac Address"
+msgstr "ম্যাক (Mac) ঠিকানা"
+
+#: ../tools/drakconnect:597
+#, c-format
+msgid "Bus"
+msgstr "বাস"
+
+#: ../tools/drakconnect:598
+#, c-format
+msgid "Location on the bus"
+msgstr "বাস-এ অবস্থান"
+
+#: ../tools/drakconnect:685 ../tools/drakconnect:766 ../tools/drakconnect:952
+#, c-format
+msgid "No IP"
+msgstr "কোন আই.পি. নেই"
+
+#: ../tools/drakconnect:686 ../tools/drakconnect:767
+#, c-format
+msgid "No Mask"
+msgstr "কোন মাস্ক (Mask) নেই"
+
+#: ../tools/drakconnect:705 ../tools/drakgw:307
+#, c-format
+msgid ""
+"No ethernet network adapter has been detected on your system. Please run the "
+"hardware configuration tool."
+msgstr ""
+"আপনার কম্পিউটারে কোন ইথারনেট নেটওয়ার্ক অ্যাডাপ্টার সনাক্ত করা যায় নি। অনুগ্রহপূর্বক "
+"হার্ডওয়ার কনফিগারেশন সফটওয়ারটি চালান।"
+
+#: ../tools/drakconnect:714
+#, c-format
+msgid "Remove a network interface"
+msgstr "নেটওয়ার্ক ইন্টারফেস অপসারণ করো"
+
+#: ../tools/drakconnect:718
+#, c-format
+msgid "Select the network interface to remove:"
+msgstr "যে নেটওয়ার্ক ইন্টারফেসটি অপসারণ করা হবে তা বেছে নিন:"
+
+#: ../tools/drakconnect:750
+#, c-format
+msgid ""
+"An error occurred while deleting the \"%s\" network interface:\n"
+"\n"
+"%s"
+msgstr ""
+"\"%s\" নেটওয়ার্ক ইন্টারফেস অপসারণের সময় সমস্যা হয়েছে:\n"
+"\n"
+"%s"
+
+#: ../tools/drakconnect:751
+#, c-format
+msgid ""
+"Congratulations, the \"%s\" network interface has been successfully deleted"
+msgstr "অভিনন্দন, \"%s\" নেটওয়ার্ক ইন্টারফেসটি সফলভাবে অপসারণ করা গিয়েছে"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "up"
+msgstr "সক্রিয়"
+
+#: ../tools/drakconnect:768 ../tools/drakconnect:921
+#, c-format
+msgid "down"
+msgstr "নিষ্ক্রিয়"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Connected"
+msgstr "সংযুক্ত"
+
+#: ../tools/drakconnect:803 ../tools/net_monitor:465
+#, c-format
+msgid "Not connected"
+msgstr "সংযোগহীন"
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Disconnect..."
+msgstr "সংযোগ বিচ্ছিন্ন করো..."
+
+#: ../tools/drakconnect:805
+#, c-format
+msgid "Connect..."
+msgstr "সংযোগ স্থাপন করো..."
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Deactivate now"
+msgstr "এখনি নিষ্ক্রিয় করো"
+
+#: ../tools/drakconnect:846
+#, c-format
+msgid "Activate now"
+msgstr "এখনি সক্রিয় করো"
+
+#: ../tools/drakconnect:854
+#, c-format
+msgid ""
+"You do not have any configured interface.\n"
+"Configure them first by clicking on 'Configure'"
+msgstr ""
+"আপনার সিস্টেমে কোন কনফিগারকৃত ইন্টারফেস নেই।\n"
+"'কনফিগার' চেপে প্রথমে তাদের কনফিগার করুন"
+
+#: ../tools/drakconnect:868
+#, c-format
+msgid "LAN Configuration"
+msgstr "ল্যান কনফিগারেশন"
+
+#: ../tools/drakconnect:880
+#, c-format
+msgid "Adapter %s: %s"
+msgstr "অ্যাডাপ্টার %s: %s"
+
+#: ../tools/drakconnect:889
+#, c-format
+msgid "Boot Protocol"
+msgstr "বুট প্রোটোকল"
+
+#: ../tools/drakconnect:890
+#, c-format
+msgid "Started on boot"
+msgstr "বুট হওয়ার সময় সচল হয়"
+
+#: ../tools/drakconnect:926
+#, c-format
+msgid ""
+"This interface has not been configured yet.\n"
+"Run the \"Add an interface\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"এই ইন্টারফেস এখনো কন্‌ফিগার করা হয়নি।\n"
+"ম্যান্ড্রিব লিনাক্স নিয়ন্ত্রক কেন্দ্র থেকে সহকারী \"ইন্টারফেস যুক্ত করো\" চালান"
+
+#: ../tools/drakconnect:974
+#, c-format
+msgid "Internet connection configuration"
+msgstr "ইন্টারনেট সংযোগ কনফিগারেশন"
+
+#: ../tools/drakconnect:980 ../tools/net_applet:68
+#, c-format
+msgid ""
+"You do not have any configured Internet connection.\n"
+"Run the \"%s\" assistant from the Mandriva Linux Control Center"
+msgstr ""
+"আপনার সিস্টেমে কোন ইন্টারনেট সংযোগ কনফিগার করা নেই।\n"
+"অনুগ্রহপূর্বক Mandriva Linux নিয়ন্ত্রণকেন্দ্র থেকে \"%s\" চালান।"
+
+#. -PO: here "Add Connection" should be translated the same was as in control-center
+#: ../tools/drakconnect:981 ../tools/net_applet:69
+#, c-format
+msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)"
+msgstr "নতুন নেটওয়ার্ক ইন্টারফেস সেট আপ করুন (LAN, ISDN, ADSL, ...)"
+
+#: ../tools/drakconnect:995
+#, c-format
+msgid "Host name (optional)"
+msgstr "হোস্টের নাম (ঐচ্ছিক)"
+
+#: ../tools/drakconnect:998
+#, c-format
+msgid "Third DNS server (optional)"
+msgstr "তৃতীয় DNS সার্ভার (ঐচ্ছিক)"
+
+#: ../tools/drakconnect:1020
+#, c-format
+msgid "Internet Connection Configuration"
+msgstr "ইন্টারনেট সংযোগ কনফিগারেশন"
+
+#: ../tools/drakconnect:1021
+#, c-format
+msgid "Internet access"
+msgstr "ইন্টারনেট ব্যবহার"
+
+#: ../tools/drakconnect:1023 ../tools/net_monitor:98
+#, c-format
+msgid "Connection type: "
+msgstr "সংযোগের ধরন: "
+
+#: ../tools/drakconnect:1026
+#, c-format
+msgid "Status:"
+msgstr "অবস্থা:"
+
+#: ../tools/drakconnect:1031
+#, c-format
+msgid "Parameters"
+msgstr "প্যারামিটার"
+
+#: ../tools/drakgw:71
+#, c-format
+msgid "Internet Connection Sharing"
+msgstr "ইন্টারনেট সংযুক্তিতে ভাগাভাগি"
+
+#: ../tools/drakgw:75
+#, c-format
+msgid ""
+"You are about to configure your computer to share its Internet connection.\n"
+"With that feature, other computers on your local network will be able to use "
+"this computer's Internet connection.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using drakconnect "
+"before going any further.\n"
+"\n"
+"Note: you need a dedicated Network Adapter to set up a Local Area Network "
+"(LAN)."
+msgstr ""
+"আপনি আপনার কম্পিউটারের ইন্টারনেট সংযুক্তি ভাগাভাগি করার জন্য কন্‌ফিগার প্রায় করে "
+"ফেলেছেন।\n"
+"এই বৈশিষ্ট্যের কারণে, আপনার লোকাল নেটওয়ার্কে থাকা অন্য কম্পিউটারগুলো এই কম্পিউটারের "
+"ইন্টারনেট সংযুক্ত ব্যবহার করতে পারবে।\n"
+"\n"
+"পরবর্তী কোন কাজ করার আগে নিশ্চিত করুন যে drakconnect দিয়ে আপনার নেটওয়ার্ক/"
+"ইন্টারনেটে প্রবেশ কন্‌ফিগার করেছেন।\n"
+"\n"
+"নোট: স্থানীয় এরিয়া নেটওয়ার্ক (LAN) করার জন্য আপনার একটি নেটওয়ার্ক এডাপ্টর লাগবে।"
+
+#: ../tools/drakgw:91
+#, c-format
+msgid ""
+"The setup of Internet Connection Sharing has already been done.\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"ইন্টারনেট সংযুক্তিতে ভাগাভাগি সংক্রান্ত সেটআপ ইতিমধ্যে হয়ে গেছে।\n"
+"এটা বর্তমানে সক্রিয় আছে।\n"
+"\n"
+"আপনি এখন কি করতে চান?"
+
+#: ../tools/drakgw:95
+#, c-format
+msgid ""
+"The setup of Internet connection sharing has already been done.\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"ইন্টারনেট সংযুক্তিতে ভাগাভাগি সংক্রান্ত সেটআপ ইতিমধ্যে হয়ে গেছে।\n"
+"এটা আপাতত নিষ্ক্রিয় করা আছে।\n"
+"\n"
+"আপনি এখন কি করতে চান?"
+
+#: ../tools/drakgw:101
+#, c-format
+msgid "Reconfigure"
+msgstr "পুনরায়-কনফিগার "
+
+#: ../tools/drakgw:122
+#, c-format
+msgid "Please select the network interface directly connected to the internet."
+msgstr ""
+
+#: ../tools/drakgw:141
+#, c-format
+msgid ""
+"There is only one configured network adapter on your system:\n"
+"\n"
+"%s\n"
+"\n"
+"I am about to setup your Local Area Network with that adapter."
+msgstr ""
+"আপনার সিস্টেমে একটিমাত্র কন্‌ফিগার করা নেটওয়ার্ক এডাপ্টর আছে:\n"
+"\n"
+"%s\n"
+"\n"
+"আমি আপনার স্থানীয় এরিয়ার নেটওয়ার্ক সেই এডাপ্টরের সাথে করতে যাচ্ছি।"
+
+#: ../tools/drakgw:152
+#, c-format
+msgid ""
+"Please choose what network adapter will be connected to your Local Area "
+"Network."
+msgstr ""
+"আপনার স্থানীয় এরিয়া নেটওয়ার্কে কোন নেটওয়ার্ক এডাপ্টর যুক্ত হবে তা অনুগ্রহ করে পছন্দ "
+"করুন।"
+
+# ##msgstr "স্থানীয় নেটওয়ার্ক ঠিকানা"
+#: ../tools/drakgw:173
+#, fuzzy, c-format
+msgid "Local Area Network settings"
+msgstr "স্থানীয় নেটওয়ার্ক অ্যাড্রেস"
+
+#: ../tools/drakgw:178
+#, c-format
+msgid "The internal domain name"
+msgstr "অন্তঃস্থ ডোমেইন নাম"
+
+#: ../tools/drakgw:184
+#, c-format
+msgid "Potential LAN address conflict found in current config of %s!\n"
+msgstr "%s এর বর্তমান কন্‌ফিগে কার্যকরী ল্যান এড্রেস দ্বন্দ্ব পাওয়া গিয়েছিল!\n"
+
+#: ../tools/drakgw:200
+#, fuzzy, c-format
+msgid "Domain Name Server (DNS) configuration"
+msgstr "টার্মিনাল সার্ভার কনফিগারেশন"
+
+#: ../tools/drakgw:204
+#, c-format
+msgid "Use this gateway as domain name server"
+msgstr ""
+
+#: ../tools/drakgw:205
+#, c-format
+msgid "The DNS Server IP"
+msgstr "DNS সার্ভার আই-পি(IP)"
+
+#: ../tools/drakgw:232
+#, c-format
+msgid ""
+"DHCP Server Configuration.\n"
+"\n"
+"Here you can select different options for the DHCP server configuration.\n"
+"If you do not know the meaning of an option, simply leave it as it is."
+msgstr ""
+"DHCP সার্ভার কন্‌ফিগারেশন।\n"
+"\n"
+"এখানে আপনি DHCP সার্ভার কন্‌ফিগার করার জন্য বিভিন্ন অপশন পছন্দ করতে পারেন।\n"
+"যদি কোন অপশন না বুঝতে পারেন, তাহলে যেমন আছে তেমনই রেখে দিন।"
+
+#: ../tools/drakgw:239
+#, fuzzy, c-format
+msgid "Use automatic configuration (DHCP)"
+msgstr "স্বয়ংক্রিয়ভাবে পুনরায় কন্‌ফিগার"
+
+#: ../tools/drakgw:240
+#, c-format
+msgid "The DHCP start range"
+msgstr "DHCP সীমার শুরু"
+
+#: ../tools/drakgw:241
+#, c-format
+msgid "The DHCP end range"
+msgstr "DHCP সীমার শেষ"
+
+#: ../tools/drakgw:242
+#, c-format
+msgid "The default lease (in seconds)"
+msgstr "ডিফল্ট লীজ(lease) (সেকেন্ডে)"
+
+#: ../tools/drakgw:243
+#, c-format
+msgid "The maximum lease (in seconds)"
+msgstr "সর্বোচ্চ লীজ(lease) (সেকেন্ডে)"
+
+#: ../tools/drakgw:266
+#, c-format
+msgid "Proxy caching server (SQUID)"
+msgstr ""
+
+#: ../tools/drakgw:270
+#, c-format
+msgid "Use this gateway as proxy caching server"
+msgstr ""
+
+#: ../tools/drakgw:271
+#, c-format
+msgid "Admin mail"
+msgstr ""
+
+#: ../tools/drakgw:272
+#, fuzzy, c-format
+msgid "Visible hostname"
+msgstr "দূরবর্তী হোস্টের নাম"
+
+#: ../tools/drakgw:273
+#, fuzzy, c-format
+msgid "Proxy port"
+msgstr "বৈশিষ্ট্য"
+
+#: ../tools/drakgw:274
+#, fuzzy, c-format
+msgid "Cache size (MB)"
+msgstr "ক্যাশ সাইজ"
+
+#: ../tools/drakgw:296
+#, fuzzy, c-format
+msgid "Broadcast printer information"
+msgstr "হার্ড ড্রাইভের তথ্য"
+
+#: ../tools/drakgw:313
+#, c-format
+msgid "Internet Connection Sharing is now enabled."
+msgstr "ইন্টারনেট সংযুক্তিতে ভাগাভাগি এখন সক্রিয়।"
+
+#: ../tools/drakgw:319
+#, c-format
+msgid "Internet Connection Sharing is now disabled."
+msgstr "ইন্টারনেট সংযুক্তিতে ভাগাভাগি এখন নিষ্ক্রিয়।"
+
+#: ../tools/drakgw:325
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"You may now share Internet connection with other computers on your Local "
+"Area Network, using automatic network configuration (DHCP) and\n"
+" a Transparent Proxy Cache server (SQUID)."
+msgstr ""
+"সবকিছু কন্‌ফিগার করা হয়েছে।\n"
+"আপনি এখন আপনার স্থানীয় এরিয়া নেটওয়ার্কে অন্যান্য কম্পিউটারের সাথে ইন্টারনেট সংযুক্তি "
+"ভাগাভাগি করতে পারেন, স্বয়ংক্রিয়ভাবে নেটওয়ার্ক কন্‌ফিগারেশন (DHCP) এবং\n"
+" একটি স্বচ্ছ প্রক্সি ক্যাশ সার্ভার (SQUID) ব্যবহার করে।"
+
+#: ../tools/drakgw:359
+#, c-format
+msgid "Disabling servers..."
+msgstr "সার্ভার নিষ্ক্রিয়করণ..."
+
+#: ../tools/drakgw:373
+#, c-format
+msgid "Firewalling configuration detected!"
+msgstr "ফায়ারওয়াল কন্‌ফিগারেশনের সন্ধান পাওয়া গেছে!"
+
+#: ../tools/drakgw:374
+#, c-format
+msgid ""
+"Warning! An existing firewalling configuration has been detected. You may "
+"need some manual fixes after installation."
+msgstr ""
+"সাবধান! একটি বিদ্যমান ফায়ারওয়াল কন্‌ফিগারেশনের সন্ধান পাওয়া গেছে। আপনি "
+"ইনস্টলেশনের পর নিজেই কিছু ঠিক করে নিতে পারেন।"
+
+#: ../tools/drakgw:379
+#, c-format
+msgid "Configuring..."
+msgstr "কন্‌ফিগার হচ্ছে..."
+
+#: ../tools/drakgw:380
+#, c-format
+msgid "Configuring firewall..."
+msgstr ""
+
+#: ../tools/drakhosts:100
+#, c-format
+msgid "Please add an host to be able to modify it."
+msgstr ""
+
+#: ../tools/drakhosts:110
+#, fuzzy, c-format
+msgid "Please modify information"
+msgstr "বিস্তারিত তথ্য"
+
+#: ../tools/drakhosts:111
+#, fuzzy, c-format
+msgid "Please delete information"
+msgstr "বিস্তারিত তথ্য"
+
+#: ../tools/drakhosts:112
+#, fuzzy, c-format
+msgid "Please add information"
+msgstr "বিস্তারিত তথ্য"
+
+#: ../tools/drakhosts:116
+#, fuzzy, c-format
+msgid "IP address:"
+msgstr "IP ঠিকানাসমূহ"
+
+#: ../tools/drakhosts:117
+#, fuzzy, c-format
+msgid "Host name:"
+msgstr "হোস্টের নাম"
+
+#: ../tools/drakhosts:118
+#, fuzzy, c-format
+msgid "Host Aliases:"
+msgstr "হোস্টের নাম"
+
+#: ../tools/drakhosts:122 ../tools/drakhosts:128 ../tools/draksambashare:209
+#: ../tools/draksambashare:230 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Error!"
+msgstr "সমস্যা!"
+
+#: ../tools/drakhosts:122
+#, c-format
+msgid "Please enter a valid IP address."
+msgstr "অনুগ্রহ করে একটি সঠিক IP ঠিকানা দিন।"
+
+#: ../tools/drakhosts:128
+#, fuzzy, c-format
+msgid "Same IP is already in %s file."
+msgstr "%s ইতিমধ্যেই ব্যবহৃত হচ্ছে\n"
+
+#: ../tools/drakhosts:196
+#, fuzzy, c-format
+msgid "Host Aliases"
+msgstr "হোস্টের নাম"
+
+#: ../tools/drakhosts:206 ../tools/drakhosts:236
+#, fuzzy, c-format
+msgid "Manage hosts definitions"
+msgstr "সংযোগ ব্যবস্থাপনা"
+
+#: ../tools/drakhosts:222 ../tools/drakhosts:249
+#, c-format
+msgid "Modify entry"
+msgstr ""
+
+#: ../tools/drakhosts:241 ../tools/draknfs:563 ../tools/draksambashare:1102
+#: ../tools/draksambashare:1133 ../tools/draksambashare:1164
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Add"
+msgstr "যোগ"
+
+#: ../tools/drakhosts:242
+#, fuzzy, c-format
+msgid "Add entry"
+msgstr "প্রিন্টার যোগ করো"
+
+#: ../tools/drakhosts:245
+#, c-format
+msgid "Failed to add host."
+msgstr ""
+
+#: ../tools/drakhosts:248 ../tools/draknfs:570 ../tools/draksambashare:1059
+#: ../tools/draksambashare:1104 ../tools/draksambashare:1135
+#: ../tools/draksambashare:1172
+#, c-format
+msgid "Modify"
+msgstr "পরিবর্তন"
+
+#: ../tools/drakhosts:252
+#, c-format
+msgid "Failed to Modify host."
+msgstr ""
+
+#: ../tools/drakhosts:255 ../tools/drakids:87 ../tools/drakids:96
+#: ../tools/draknfs:577 ../tools/draksambashare:1060
+#: ../tools/draksambashare:1112 ../tools/draksambashare:1143
+#: ../tools/draksambashare:1180 ../tools/drakvpn-old:253
+#: ../tools/drakvpn-old:391
+#, c-format
+msgid "Remove"
+msgstr "মুছে ফেলো"
+
+#: ../tools/drakhosts:259
+#, c-format
+msgid "Failed to remove host."
+msgstr ""
+
+#: ../tools/drakhosts:262 ../tools/drakinvictus:141
+#: ../tools/draknetprofile:147 ../tools/drakroam:309 ../tools/net_applet:138
+#, c-format
+msgid "Quit"
+msgstr "বাহির"
+
+#: ../tools/drakids:28
+#, fuzzy, c-format
+msgid "Allowed addresses"
+msgstr "সব ব্যবহারকারীদের গ্রহণ করো"
+
+#: ../tools/drakids:65 ../tools/drakids:181 ../tools/drakids:190
+#: ../tools/drakids:215 ../tools/drakids:224 ../tools/drakids:234
+#: ../tools/drakids:326 ../tools/net_applet:238 ../tools/net_applet:514
+#, fuzzy, c-format
+msgid "Unable to contact daemon"
+msgstr "%s মিররের সাথে সংযুক্ত হওয়া গেলনা"
+
+#: ../tools/drakids:74 ../tools/drakids:102
+#, c-format
+msgid "Log"
+msgstr "লগ"
+
+#: ../tools/drakids:78 ../tools/drakids:97 ../tools/net_applet:659
+#, fuzzy, c-format
+msgid "Allow"
+msgstr "সকল"
+
+#: ../tools/drakids:79 ../tools/drakids:88 ../tools/net_applet:660
+#, c-format
+msgid "Block"
+msgstr ""
+
+#: ../tools/drakids:80 ../tools/drakids:89 ../tools/drakids:98
+#: ../tools/drakids:109 ../tools/drakids:122 ../tools/drakids:130
+#: ../tools/draknfs:186 ../tools/net_monitor:120
+#, c-format
+msgid "Close"
+msgstr "বন্ধ"
+
+#: ../tools/drakids:83
+#, fuzzy, c-format
+msgid "Allowed services"
+msgstr "সব ব্যবহারকারীদের গ্রহণ করো"
+
+#: ../tools/drakids:92
+#, fuzzy, c-format
+msgid "Blocked services"
+msgstr "ব্যবহারকারীর ফাইলের ব্যাক-আপ তৈরি করো"
+
+#: ../tools/drakids:106
+#, fuzzy, c-format
+msgid "Clear logs"
+msgstr "সব বন্ধ করো"
+
+#: ../tools/drakids:107 ../tools/drakids:112 ../tools/net_applet:602
+#, c-format
+msgid "Blacklist"
+msgstr ""
+
+#: ../tools/drakids:108 ../tools/drakids:125 ../tools/net_applet:607
+#, c-format
+msgid "Whitelist"
+msgstr ""
+
+#: ../tools/drakids:116
+#, fuzzy, c-format
+msgid "Remove from blacklist"
+msgstr "LVM থেকে মুছে ফেলো"
+
+#: ../tools/drakids:117
+#, c-format
+msgid "Move to whitelist"
+msgstr ""
+
+#: ../tools/drakids:129
+#, fuzzy, c-format
+msgid "Remove from whitelist"
+msgstr "LVM থেকে মুছে ফেলো"
+
+#: ../tools/drakids:247
+#, c-format
+msgid "Date"
+msgstr "তারিখ"
+
+# সাম
+#: ../tools/drakids:248
+#, fuzzy, c-format
+msgid "Attacker"
+msgstr "আক্রমনের বিস্তারিত"
+
+# সাম
+#: ../tools/drakids:249
+#, fuzzy, c-format
+msgid "Attack type"
+msgstr "আক্রমনের ধরণ: %s"
+
+#: ../tools/drakids:250 ../tools/drakids:283
+#, c-format
+msgid "Service"
+msgstr "সার্ভিস"
+
+#: ../tools/drakids:251
+#, c-format
+msgid "Network interface"
+msgstr "নেটওয়ার্ক ইন্টারফেস"
+
+#: ../tools/drakids:282
+#, c-format
+msgid "Application"
+msgstr "অ্যাপলিকেশন"
+
+#: ../tools/drakids:284
+#, c-format
+msgid "Status"
+msgstr "স্ট্যাটাস"
+
+#: ../tools/drakids:286
+#, fuzzy, c-format
+msgid "Allowed"
+msgstr "সকল"
+
+#: ../tools/drakids:287
+#, c-format
+msgid "Blocked"
+msgstr ""
+
+#: ../tools/drakinvictus:36
+#, c-format
+msgid "Invictus Firewall"
+msgstr ""
+
+#: ../tools/drakinvictus:53
+#, fuzzy, c-format
+msgid "Start as master"
+msgstr "বুট হওয়ার সময় সচল হয়"
+
+#: ../tools/drakinvictus:72
+#, fuzzy, c-format
+msgid "A password is required."
+msgstr "পাসওয়ার্ড প্রয়োজন"
+
+#: ../tools/drakinvictus:100
+#, c-format
+msgid ""
+"This tool allows to set up network interfaces failover and firewall "
+"replication."
+msgstr ""
+
+#: ../tools/drakinvictus:102
+#, c-format
+msgid "Network redundancy (leave empty if interface is not used)"
+msgstr ""
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Real address"
+msgstr "ম্যাক (Mac) ঠিকানা"
+
+#: ../tools/drakinvictus:105
+#, fuzzy, c-format
+msgid "Virtual shared address"
+msgstr "Sainfo উত্‍সের ঠিকানা"
+
+#: ../tools/drakinvictus:105
+#, c-format
+msgid "Virtual ID"
+msgstr ""
+
+#: ../tools/drakinvictus:114
+#, fuzzy, c-format
+msgid "Firewall replication"
+msgstr "ফাইনাল রেজুলেশন"
+
+#: ../tools/drakinvictus:116
+#, c-format
+msgid "Synchronize firewall conntrack tables"
+msgstr ""
+
+#: ../tools/drakinvictus:123
+#, fuzzy, c-format
+msgid "Synchronization network interface"
+msgstr "সমন্বয়কারী সফটওয়ার"
+
+#: ../tools/drakinvictus:132
+#, fuzzy, c-format
+msgid "Connection mark bit"
+msgstr "সংযোগ"
+
+#: ../tools/draknetprofile:36
+#, fuzzy, c-format
+msgid "Network profiles"
+msgstr "নেটওয়ার্ক অপশন"
+
+# সাম
+#: ../tools/draknetprofile:67
+#, fuzzy, c-format
+msgid "Profile"
+msgstr "প্রোফাইলসমূহ"
+
+#: ../tools/draknetprofile:99
+#, c-format
+msgid "New profile..."
+msgstr "নতুন প্রোফাইল..."
+
+#: ../tools/draknetprofile:102
+#, c-format
+msgid ""
+"Name of the profile to create (the new profile is created as a copy of the "
+"current one):"
+msgstr ""
+"যে প্রোফাইলটি তৈরি করা হবে তার নাম লিখুন (নতুন প্রোফাইলটি বর্তমান প্রোফাইলের কপি "
+"হিসাবে তৈরি হবে):"
+
+#: ../tools/draknetprofile:113
+#, c-format
+msgid "The \"%s\" profile already exists!"
+msgstr "\"%s\" প্রোফাইলটি বর্তমানে উপস্থিত আছে!"
+
+#: ../tools/draknetprofile:129
+#, c-format
+msgid "You can not delete the default profile"
+msgstr ""
+
+#: ../tools/draknetprofile:131
+#, c-format
+msgid "You can not delete the current profile"
+msgstr "আপনি বর্তমান প্রোফাইলটি মুছে ফেলতে পারবেন না"
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid ""
+"This tool allows to activate an existing network profile, and to manage "
+"(clone, delete) profiles."
+msgstr ""
+
+#: ../tools/draknetprofile:141
+#, c-format
+msgid "To modify a profile, you have to activate it first."
+msgstr ""
+
+#: ../tools/draknetprofile:144
+#, c-format
+msgid "Activate"
+msgstr "সক্রিয় করো"
+
+#: ../tools/draknetprofile:145
+#, fuzzy, c-format
+msgid "Clone"
+msgstr "সংযোগ স্থাপন করো"
+
+#: ../tools/draknetprofile:146
+#, c-format
+msgid "Delete"
+msgstr "মুছে ফেলো"
+
+#: ../tools/draknfs:41
+#, c-format
+msgid "map root user as anonymous"
+msgstr ""
+
+#: ../tools/draknfs:42
+#, c-format
+msgid "map all users to anonymous user"
+msgstr ""
+
+#: ../tools/draknfs:43
+#, c-format
+msgid "No user UID mapping"
+msgstr ""
+
+#: ../tools/draknfs:44
+#, c-format
+msgid "allow real remote root access"
+msgstr ""
+
+#: ../tools/draknfs:58 ../tools/draknfs:59 ../tools/draknfs:60
+#: ../tools/draksambashare:161 ../tools/draksambashare:162
+#: ../tools/draksambashare:163
+#, c-format
+msgid "/_File"
+msgstr "/ফাইল (_ফ)"
+
+#: ../tools/draknfs:59 ../tools/draksambashare:162
+#, c-format
+msgid "/_Write conf"
+msgstr ""
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "/_Quit"
+msgstr "/পরিত্যাগ (_প)"
+
+#: ../tools/draknfs:60 ../tools/draksambashare:163
+#, c-format
+msgid "<control>Q"
+msgstr "<control>0x10009aa"
+
+#: ../tools/draknfs:63 ../tools/draknfs:64 ../tools/draknfs:65
+#, fuzzy, c-format
+msgid "/_NFS Server"
+msgstr "ডি.এন.এস. সার্ভার"
+
+#: ../tools/draknfs:64 ../tools/draksambashare:166
+#, c-format
+msgid "/_Restart"
+msgstr ""
+
+#: ../tools/draknfs:65 ../tools/draksambashare:167
+#, c-format
+msgid "/R_eload"
+msgstr ""
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "NFS server"
+msgstr "NFS সার্ভার"
+
+#: ../tools/draknfs:84
+#, c-format
+msgid "Restarting/Reloading NFS server..."
+msgstr ""
+
+#: ../tools/draknfs:85
+#, c-format
+msgid "Error Restarting/Reloading NFS server"
+msgstr ""
+
+#: ../tools/draknfs:101 ../tools/draksambashare:225
+#, fuzzy, c-format
+msgid "Directory Selection"
+msgstr "গতিপথ"
+
+#: ../tools/draknfs:106 ../tools/draksambashare:230
+#, c-format
+msgid "Should be a directory."
+msgstr "একটি ডিরেক্টরি হওয়া আবশ্যক।"
+
+#: ../tools/draknfs:137
+#, c-format
+msgid ""
+"<span weight=\"bold\">NFS clients</span> may be specified in a number of "
+"ways:\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">single host:</span> a host either by an "
+"abbreviated name recognized be the resolver, fully qualified domain name, or "
+"an IP address\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">netgroups:</span> NIS netgroups may be given "
+"as @group.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">wildcards:</span> machine names may contain "
+"the wildcard characters * and ?. For instance: *.cs.foo.edu matches all "
+"hosts in the domain cs.foo.edu.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">IP networks:</span> you can also export "
+"directories to all hosts on an IP (sub-)network simultaneously. for example, "
+"either `/255.255.252.0' or `/22' appended to the network base address "
+"result.\n"
+msgstr ""
+
+#: ../tools/draknfs:152
+#, c-format
+msgid ""
+"<span weight=\"bold\">User ID options</span>\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map root user as anonymous:</span> map "
+"requests from uid/gid 0 to the anonymous uid/gid (root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">allow real remote root access:</span> turn "
+"off root squashing. This option is mainly useful for diskless clients "
+"(no_root_squash).\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">map all users to anonymous user:</span> map "
+"all uids and gids to the anonymous user (all_squash). Useful for NFS-"
+"exported public FTP directories, news spool directories, etc. The opposite "
+"option is no user UID mapping (no_all_squash), which is the default "
+"setting.\n"
+"\n"
+"\n"
+"<span foreground=\"royalblue3\">anonuid and anongid:</span> explicitly set "
+"the uid and gid of the anonymous account.\n"
+msgstr ""
+
+#: ../tools/draknfs:168
+#, c-format
+msgid "Synchronous access:"
+msgstr ""
+
+#: ../tools/draknfs:169
+#, fuzzy, c-format
+msgid "Secured Connection:"
+msgstr "ইন্টারনেট সংযোগ"
+
+#: ../tools/draknfs:170
+#, c-format
+msgid "Read-Only share:"
+msgstr ""
+
+#: ../tools/draknfs:172
+#, c-format
+msgid "Advanced Options"
+msgstr ""
+
+#: ../tools/draknfs:173
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> this option requires that requests "
+"originate on an internet port less than IPPORT_RESERVED (1024). This option "
+"is on by default."
+msgstr ""
+
+#: ../tools/draknfs:174
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> allow either only read or both "
+"read and write requests on this NFS volume. The default is to disallow any "
+"request which changes the filesystem. This can also be made explicit by "
+"using this option."
+msgstr ""
+
+#: ../tools/draknfs:175
+#, c-format
+msgid ""
+"<span foreground=\"royalblue3\">%s</span> disallows the NFS server to "
+"violate the NFS protocol and to reply to requests before any changes made by "
+"these requests have been committed to stable storage (e.g. disc drive)."
+msgstr ""
+
+#: ../tools/draknfs:180 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, c-format
+msgid "Information"
+msgstr "তথ্য"
+
+#: ../tools/draknfs:260
+#, c-format
+msgid "Directory"
+msgstr "ডিরেক্টরি"
+
+#: ../tools/draknfs:264
+#, c-format
+msgid "Draknfs entry"
+msgstr ""
+
+#: ../tools/draknfs:273
+#, c-format
+msgid "Please add an NFS share to be able to modify it."
+msgstr ""
+
+#: ../tools/draknfs:357
+#, c-format
+msgid "NFS directory"
+msgstr ""
+
+#: ../tools/draknfs:358 ../tools/draksambashare:361
+#: ../tools/draksambashare:570 ../tools/draksambashare:749
+#, c-format
+msgid "Directory:"
+msgstr "ডিরেক্টরি:"
+
+#: ../tools/draknfs:359
+#, fuzzy, c-format
+msgid "Host access"
+msgstr "হোস্টের নাম"
+
+#: ../tools/draknfs:360
+#, c-format
+msgid "Access:"
+msgstr "ব্যবহার :"
+
+#: ../tools/draknfs:361
+#, c-format
+msgid "User ID Mapping"
+msgstr ""
+
+#: ../tools/draknfs:362
+#, c-format
+msgid "User ID:"
+msgstr ""
+
+#: ../tools/draknfs:363
+#, c-format
+msgid "Anonymous user ID:"
+msgstr ""
+
+#: ../tools/draknfs:364
+#, c-format
+msgid "Anonymous Group ID:"
+msgstr ""
+
+#: ../tools/draknfs:400
+#, fuzzy, c-format
+msgid "Please specify a directory to share."
+msgstr "কার্ডের ওয়্যারলেস প্যারামিটার প্রবেশ করান"
+
+#: ../tools/draknfs:402
+#, c-format
+msgid "Can't create this directory."
+msgstr ""
+
+#: ../tools/draknfs:405
+#, c-format
+msgid "You must specify hosts access."
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Share Directory"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Hosts Wildcard"
+msgstr ""
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "General Options"
+msgstr "সাধারণ অপশন"
+
+#: ../tools/draknfs:485
+#, c-format
+msgid "Custom Options"
+msgstr ""
+
+#: ../tools/draknfs:497 ../tools/draksambashare:376
+#: ../tools/draksambashare:607 ../tools/draksambashare:774
+#, c-format
+msgid "Please enter a directory to share."
+msgstr ""
+
+#: ../tools/draknfs:504
+#, c-format
+msgid "Please use the modify button to set right access."
+msgstr ""
+
+#: ../tools/draknfs:519
+#, c-format
+msgid "Manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:558
+#, c-format
+msgid "DrakNFS manage NFS shares"
+msgstr ""
+
+#: ../tools/draknfs:567
+#, c-format
+msgid "Failed to add NFS share."
+msgstr ""
+
+#: ../tools/draknfs:574
+#, c-format
+msgid "Failed to Modify NFS share."
+msgstr ""
+
+#: ../tools/draknfs:581
+#, c-format
+msgid "Failed to remove an NFS share."
+msgstr ""
+
+#: ../tools/drakproxy:36
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr "পরিবর্তন কার্যকর করার পূর্বে আপনাকে লগ-আউট করে তারপর পুণরায় লগ-ইন করতে হবে"
+
+#: ../tools/drakroam:61
+#, c-format
+msgid "No device found"
+msgstr "কোন ডিভাইস পাওয়া যায় নি"
+
+#: ../tools/drakroam:86 ../tools/drakroam:217
+#, fuzzy, c-format
+msgid "Please enter settings for network"
+msgstr "বিস্তারিত তথ্য"
+
+#: ../tools/drakroam:115
+#, c-format
+msgid "SSID"
+msgstr ""
+
+#: ../tools/drakroam:116
+#, c-format
+msgid "Signal strength"
+msgstr ""
+
+#: ../tools/drakroam:118
+#, c-format
+msgid "Encryption"
+msgstr "এনক্রিপশন"
+
+#: ../tools/drakroam:131
+#, c-format
+msgid "Hostname changed to \"%s\""
+msgstr ""
+
+#: ../tools/drakroam:251
+#, fuzzy, c-format
+msgid "Connecting..."
+msgstr "সংযোগ স্থাপন করো..."
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Disconnect"
+msgstr "সংযোগ বিচ্ছিন্ন করো"
+
+#: ../tools/drakroam:273
+#, c-format
+msgid "Connect"
+msgstr "সংযোগ স্থাপন করো"
+
+#: ../tools/drakroam:289
+#, fuzzy, c-format
+msgid "Disconnecting..."
+msgstr "সংযোগ বিচ্ছিন্ন করো..."
+
+#: ../tools/drakroam:306
+#, c-format
+msgid "Configure"
+msgstr "কনফিগার"
+
+#: ../tools/drakroam:308
+#, c-format
+msgid "Refresh"
+msgstr "রিফ্রেশ"
+
+#: ../tools/draksambashare:63
+#, c-format
+msgid "User name"
+msgstr "ইউজারের নাম"
+
+#: ../tools/draksambashare:70
+#, c-format
+msgid "Share name"
+msgstr "শেয়ারের নাম"
+
+# সাম
+#: ../tools/draksambashare:71
+#, fuzzy, c-format
+msgid "Share directory"
+msgstr "এই নামে কোন ডিরেক্টরি নেই"
+
+#: ../tools/draksambashare:72 ../tools/draksambashare:105
+#, c-format
+msgid "Comment"
+msgstr "মন্তব্য"
+
+#: ../tools/draksambashare:73 ../tools/draksambashare:106
+#, fuzzy, c-format
+msgid "Browseable"
+msgstr "ব্রাউজ"
+
+#: ../tools/draksambashare:74
+#, c-format
+msgid "Public"
+msgstr "সাধারণ"
+
+#: ../tools/draksambashare:75 ../tools/draksambashare:111
+#, fuzzy, c-format
+msgid "Writable"
+msgstr "লেখো"
+
+#: ../tools/draksambashare:76 ../tools/draksambashare:152
+#, fuzzy, c-format
+msgid "Create mask"
+msgstr "তৈরী করো"
+
+#: ../tools/draksambashare:77 ../tools/draksambashare:153
+#, fuzzy, c-format
+msgid "Directory mask"
+msgstr "ব্যাক-আপ ধারনকারী ডিরেক্টরি"
+
+#: ../tools/draksambashare:78
+#, fuzzy, c-format
+msgid "Read list"
+msgstr "পড়ো"
+
+#: ../tools/draksambashare:79 ../tools/draksambashare:112
+#: ../tools/draksambashare:584
+#, fuzzy, c-format
+msgid "Write list"
+msgstr "লেখো"
+
+#: ../tools/draksambashare:80 ../tools/draksambashare:144
+#, fuzzy, c-format
+msgid "Admin users"
+msgstr "ইউজার যোগ করো"
+
+#: ../tools/draksambashare:81 ../tools/draksambashare:145
+#, fuzzy, c-format
+msgid "Valid users"
+msgstr "ইউজার যোগ করো"
+
+#: ../tools/draksambashare:82
+#, fuzzy, c-format
+msgid "Inherit Permissions"
+msgstr "অনুমতি"
+
+#: ../tools/draksambashare:83 ../tools/draksambashare:146
+#, fuzzy, c-format
+msgid "Hide dot files"
+msgstr "ফাইল লুকানো হোক"
+
+#: ../tools/draksambashare:84 ../tools/draksambashare:147
+#, c-format
+msgid "Hide files"
+msgstr "ফাইল লুকানো হোক"
+
+#: ../tools/draksambashare:85 ../tools/draksambashare:151
+#, fuzzy, c-format
+msgid "Preserve case"
+msgstr "পছন্দ"
+
+#: ../tools/draksambashare:86
+#, fuzzy, c-format
+msgid "Force create mode"
+msgstr "আপনার প্রিন্টারের মডেল"
+
+#: ../tools/draksambashare:87
+#, fuzzy, c-format
+msgid "Force group"
+msgstr "পি-এফ-এস গ্রুপ"
+
+#: ../tools/draksambashare:88 ../tools/draksambashare:150
+#, fuzzy, c-format
+msgid "Default case"
+msgstr "ডিফল্ট ব্যবহারকারী"
+
+#: ../tools/draksambashare:103
+#, c-format
+msgid "Printer name"
+msgstr "প্রিন্টারের নাম"
+
+#: ../tools/draksambashare:104
+#, c-format
+msgid "Path"
+msgstr "পাথ"
+
+#: ../tools/draksambashare:107 ../tools/draksambashare:576
+#, fuzzy, c-format
+msgid "Printable"
+msgstr "সক্রিয়"
+
+#: ../tools/draksambashare:108
+#, fuzzy, c-format
+msgid "Print Command"
+msgstr "কমান্ড"
+
+#: ../tools/draksambashare:109
+#, fuzzy, c-format
+msgid "LPQ command"
+msgstr "কমান্ড"
+
+#: ../tools/draksambashare:110
+#, c-format
+msgid "Guest ok"
+msgstr ""
+
+#: ../tools/draksambashare:113 ../tools/draksambashare:154
+#: ../tools/draksambashare:585
+#, fuzzy, c-format
+msgid "Inherit permissions"
+msgstr "অনুমতি"
+
+#: ../tools/draksambashare:114
+#, c-format
+msgid "Printing"
+msgstr "প্রিন্টিং"
+
+#: ../tools/draksambashare:115
+#, fuzzy, c-format
+msgid "Create mode"
+msgstr "কার্ড মডেল:"
+
+#: ../tools/draksambashare:116
+#, fuzzy, c-format
+msgid "Use client driver"
+msgstr "টেলনেট সার্ভার"
+
+#: ../tools/draksambashare:142
+#, fuzzy, c-format
+msgid "Read List"
+msgstr "লিস্ট মুছে ফেলো"
+
+#: ../tools/draksambashare:143
+#, fuzzy, c-format
+msgid "Write List"
+msgstr "লেখো"
+
+#: ../tools/draksambashare:148
+#, fuzzy, c-format
+msgid "Force Group"
+msgstr "গ্রুপ"
+
+#: ../tools/draksambashare:149
+#, c-format
+msgid "Force create group"
+msgstr ""
+
+#: ../tools/draksambashare:165 ../tools/draksambashare:166
+#: ../tools/draksambashare:167
+#, fuzzy, c-format
+msgid "/_Samba Server"
+msgstr "ওয়েব সার্ভার"
+
+#: ../tools/draksambashare:169 ../tools/draksambashare:170
+#, c-format
+msgid "/_About"
+msgstr "/পরিচিতি (_চ)"
+
+#: ../tools/draksambashare:169
+#, c-format
+msgid "/_Report Bug"
+msgstr "/_বাগ রিপোর্ট করো"
+
+#: ../tools/draksambashare:170
+#, c-format
+msgid "/About..."
+msgstr ""
+
+#: ../tools/draksambashare:173
+#, c-format
+msgid "Draksambashare"
+msgstr ""
+
+#: ../tools/draksambashare:175
+#, c-format
+msgid "Copyright (C) %s by Mandriva"
+msgstr ""
+
+#: ../tools/draksambashare:177
+#, c-format
+msgid "This is a simple tool to easily manage Samba configuration."
+msgstr ""
+
+#: ../tools/draksambashare:179
+#, fuzzy, c-format
+msgid "Mandriva Linux"
+msgstr "ম্যান্ড্রিব অনলাইন (Mandriva Online)"
+
+#. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>")
+#: ../tools/draksambashare:184
+#, c-format
+msgid "_: Translator(s) name(s) & email(s)\n"
+msgstr "Bangla team <mdk-translation@bengalinux.org>\n"
+
+#: ../tools/draksambashare:208
+#, c-format
+msgid "Restarting/Reloading Samba server..."
+msgstr ""
+
+#: ../tools/draksambashare:209
+#, c-format
+msgid "Error Restarting/Reloading Samba server"
+msgstr ""
+
+#: ../tools/draksambashare:349 ../tools/draksambashare:549
+#: ../tools/draksambashare:670
+#, c-format
+msgid "Open"
+msgstr "খোলা"
+
+#: ../tools/draksambashare:352
+#, c-format
+msgid "DrakSamba add entry"
+msgstr ""
+
+#: ../tools/draksambashare:356
+#, fuzzy, c-format
+msgid "Add a share"
+msgstr "নীতি যোগ করো"
+
+#: ../tools/draksambashare:359
+#, fuzzy, c-format
+msgid "Name of the share:"
+msgstr "সার্টফাইলের নাম"
+
+#: ../tools/draksambashare:360 ../tools/draksambashare:569
+#: ../tools/draksambashare:750
+#, c-format
+msgid "Comment:"
+msgstr "মন্তব্য:"
+
+#: ../tools/draksambashare:372
+#, c-format
+msgid ""
+"Share with the same name already exist or share name empty, please choose "
+"another name."
+msgstr ""
+
+#: ../tools/draksambashare:379
+#, c-format
+msgid "Can't create the directory, please enter a correct path."
+msgstr ""
+
+#: ../tools/draksambashare:382 ../tools/draksambashare:605
+#: ../tools/draksambashare:772
+#, fuzzy, c-format
+msgid "Please enter a Comment for this share."
+msgstr "কার্ডের ওয়্যারলেস প্যারামিটার প্রবেশ করান"
+
+#: ../tools/draksambashare:413
+#, c-format
+msgid "pdf-gen - a PDF generator"
+msgstr ""
+
+#: ../tools/draksambashare:414
+#, c-format
+msgid "printers - all printers available"
+msgstr ""
+
+#: ../tools/draksambashare:418
+#, c-format
+msgid "Add Special Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:421
+#, c-format
+msgid ""
+"Goal of this wizard is to easily create a new special printer Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:428
+#, fuzzy, c-format
+msgid "A PDF generator already exists."
+msgstr "\"%s\" প্রোফাইলটি বর্তমানে উপস্থিত আছে!"
+
+#: ../tools/draksambashare:452
+#, fuzzy, c-format
+msgid "Printers and print$ already exist."
+msgstr "\"%s\" প্রোফাইলটি বর্তমানে উপস্থিত আছে!"
+
+#: ../tools/draksambashare:502
+#, c-format
+msgid "Congratulations"
+msgstr "স্বাগতম"
+
+#: ../tools/draksambashare:503
+#, c-format
+msgid "The wizard successfully added the printer Samba share"
+msgstr ""
+
+#: ../tools/draksambashare:518
+#, c-format
+msgid "Failed to add printers."
+msgstr ""
+
+#: ../tools/draksambashare:533
+#, c-format
+msgid "Please add or select a Samba printer share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:552
+#, c-format
+msgid "DrakSamba Printers entry"
+msgstr ""
+
+#: ../tools/draksambashare:565
+#, c-format
+msgid "Printer share"
+msgstr ""
+
+#: ../tools/draksambashare:568
+#, fuzzy, c-format
+msgid "Printer name:"
+msgstr "ইন্টারফেস:"
+
+#: ../tools/draksambashare:574 ../tools/draksambashare:755
+#, fuzzy, c-format
+msgid "Writable:"
+msgstr "লেখো"
+
+#: ../tools/draksambashare:575 ../tools/draksambashare:756
+#, fuzzy, c-format
+msgid "Browseable:"
+msgstr "ব্রাউজ"
+
+#: ../tools/draksambashare:580
+#, c-format
+msgid "Advanced options"
+msgstr ""
+
+#: ../tools/draksambashare:582
+#, fuzzy, c-format
+msgid "Printer access"
+msgstr "ইন্টারনেট ব্যবহার"
+
+#: ../tools/draksambashare:586
+#, c-format
+msgid "Guest ok:"
+msgstr ""
+
+#: ../tools/draksambashare:587
+#, fuzzy, c-format
+msgid "Create mode:"
+msgstr "কার্ড মডেল:"
+
+#: ../tools/draksambashare:591
+#, c-format
+msgid "Printer command"
+msgstr ""
+
+#: ../tools/draksambashare:593
+#, c-format
+msgid "Print command:"
+msgstr ""
+
+#: ../tools/draksambashare:594
+#, fuzzy, c-format
+msgid "LPQ command:"
+msgstr "কমান্ড"
+
+#: ../tools/draksambashare:595
+#, c-format
+msgid "Printing:"
+msgstr "ছাপানো হচ্ছে:"
+
+#: ../tools/draksambashare:611
+#, c-format
+msgid "create mode should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:673
+#, c-format
+msgid "DrakSamba entry"
+msgstr ""
+
+#: ../tools/draksambashare:678
+#, c-format
+msgid "Please add or select a Samba share to be able to modify it."
+msgstr ""
+
+#: ../tools/draksambashare:701
+#, fuzzy, c-format
+msgid "Samba user access"
+msgstr "Samba সার্ভার"
+
+#: ../tools/draksambashare:709
+#, fuzzy, c-format
+msgid "Mask options"
+msgstr "বেসিক অপশন"
+
+#: ../tools/draksambashare:723
+#, fuzzy, c-format
+msgid "Display options"
+msgstr "অপশনসমূহ বর্ননা করুন"
+
+# সাম
+#: ../tools/draksambashare:745
+#, fuzzy, c-format
+msgid "Samba share directory"
+msgstr "এই নামে কোন ডিরেক্টরি নেই"
+
+#: ../tools/draksambashare:748
+#, fuzzy, c-format
+msgid "Share name:"
+msgstr "শেয়ারের নাম"
+
+#: ../tools/draksambashare:754
+#, c-format
+msgid "Public:"
+msgstr ""
+
+#: ../tools/draksambashare:778
+#, c-format
+msgid ""
+"Create mask, create mode and directory mask should be numeric. ie: 0755."
+msgstr ""
+
+#: ../tools/draksambashare:785
+#, c-format
+msgid "Please create this Samba user: %s"
+msgstr ""
+
+#: ../tools/draksambashare:889
+#, c-format
+msgid "Add Samba user"
+msgstr ""
+
+#: ../tools/draksambashare:904
+#, fuzzy, c-format
+msgid "User information"
+msgstr "আমার উইন্ডোজ পার্টিশন ব্যবহার করো"
+
+#: ../tools/draksambashare:906
+#, c-format
+msgid "User name:"
+msgstr "ব্যবহারকারীর নাম:"
+
+#: ../tools/draksambashare:907
+#, c-format
+msgid "Password:"
+msgstr "পাসওয়ার্ড:"
+
+#: ../tools/draksambashare:1021
+#, fuzzy, c-format
+msgid "Manage Samba configuration"
+msgstr "মেইলের সংকেত কনফিগারেশন"
+
+#: ../tools/draksambashare:1109
+#, c-format
+msgid "Failed to Modify Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1118
+#, c-format
+msgid "Failed to remove a Samba share."
+msgstr ""
+
+#: ../tools/draksambashare:1125
+#, c-format
+msgid "File share"
+msgstr ""
+
+#: ../tools/draksambashare:1140
+#, c-format
+msgid "Failed to Modify."
+msgstr ""
+
+#: ../tools/draksambashare:1149
+#, c-format
+msgid "Failed to remove."
+msgstr ""
+
+#: ../tools/draksambashare:1156
+#, c-format
+msgid "Printers"
+msgstr "মুদ্রণযন্ত্র"
+
+#: ../tools/draksambashare:1168
+#, c-format
+msgid "Failed to add user."
+msgstr ""
+
+#: ../tools/draksambashare:1177
+#, c-format
+msgid "Failed to change user password."
+msgstr ""
+
+#: ../tools/draksambashare:1189
+#, c-format
+msgid "Failed to delete user."
+msgstr ""
+
+#: ../tools/draksambashare:1194
+#, c-format
+msgid "Userdrake"
+msgstr "ইউজারড্রেক"
+
+#: ../tools/draksambashare:1202
+#, c-format
+msgid "Samba Users"
+msgstr ""
+
+#: ../tools/draksambashare:1211
+#, c-format
+msgid "DrakSamba manage Samba shares"
+msgstr ""
+
+#: ../tools/drakvpn-old:65
+#, c-format
+msgid "DrakVPN"
+msgstr "DrakVPN"
+
+#: ../tools/drakvpn-old:87
+#, c-format
+msgid "The VPN connection is enabled."
+msgstr "VPN সংযুক্তি সক্রিয়।"
+
+#: ../tools/drakvpn-old:88
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently enabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"VPN সংযুক্তির সেটআপ ইতিমধ্যে হয়ে গেছে।\n"
+"\n"
+"এটা এখন সক্রিয় অবস্থায় আছে।\n"
+"\n"
+"আপনি কি করতে পছন্দ করছেন?"
+
+#: ../tools/drakvpn-old:93
+#, c-format
+msgid "disable"
+msgstr "নিষ্ক্রিয়"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119
+#, c-format
+msgid "reconfigure"
+msgstr "পুনরায় কন্‌ফিগার"
+
+#: ../tools/drakvpn-old:93 ../tools/drakvpn-old:119 ../tools/drakvpn-old:432
+#, c-format
+msgid "dismiss"
+msgstr "বাদ"
+
+#: ../tools/drakvpn-old:97
+#, c-format
+msgid "Disabling VPN..."
+msgstr "VPN নিষ্ক্রিয় হচ্ছে..."
+
+#: ../tools/drakvpn-old:106
+#, c-format
+msgid "The VPN connection is now disabled."
+msgstr "VPN সংযুক্তি এখন নিষ্ক্রিয়।"
+
+#: ../tools/drakvpn-old:113
+#, c-format
+msgid "VPN connection currently disabled"
+msgstr "VPN সংযুক্তি বর্তমানে নিষ্ক্রিয়"
+
+#: ../tools/drakvpn-old:114
+#, c-format
+msgid ""
+"The setup of a VPN connection has already been done.\n"
+"\n"
+"It's currently disabled.\n"
+"\n"
+"What would you like to do?"
+msgstr ""
+"VPN সংযুক্তির সেটআপ ইতিমধ্যে হয়ে গেছে।\n"
+"\n"
+"এটা এখন নিষ্ক্রিয় অবস্থায় আছে।\n"
+"\n"
+"আপনি কি করতে পছন্দ করছেন?"
+
+#: ../tools/drakvpn-old:119
+#, c-format
+msgid "enable"
+msgstr "সক্রিয়"
+
+#: ../tools/drakvpn-old:127
+#, c-format
+msgid "Enabling VPN..."
+msgstr "VPN সক্রিয় হচ্ছে..."
+
+#: ../tools/drakvpn-old:133
+#, c-format
+msgid "The VPN connection is now enabled."
+msgstr "VPN সংযোগ এখন সক্রিয়।"
+
+#: ../tools/drakvpn-old:147 ../tools/drakvpn-old:164
+#, c-format
+msgid "Simple VPN setup."
+msgstr "সাধারণ VPN সেটআপ।"
+
+#: ../tools/drakvpn-old:148
+#, c-format
+msgid ""
+"You are about to configure your computer to use a VPN connection.\n"
+"\n"
+"With this feature, computers on your local private network and computers\n"
+"on some other remote private networks, can share resources, through\n"
+"their respective firewalls, over the Internet, in a secure manner. \n"
+"\n"
+"The communication over the Internet is encrypted. The local and remote\n"
+"computers look as if they were on the same network.\n"
+"\n"
+"Make sure you have configured your Network/Internet access using\n"
+"drakconnect before going any further."
+msgstr ""
+"আপনি আপনার কম্পিউটারের VPN সংযুক্তির কন্‌ফিগার প্রায় করে ফেলেছেন।\n"
+"\n"
+"এই বৈশিষ্ট্যের কারণে, আপনার ব্যক্তিগত লোকাল নেটওয়ার্কে থাকা অন্য কম্পিউটারগুলো\n"
+"এবং অন্যান্য দূরবর্তী ব্যক্তিগত নেটওয়ার্কে থাকা কম্পিউটারগুলো, তাদের ফায়ারওয়ালের\n"
+"মাধ্যমে, ইন্টারনেটে, নিরাপত্তা সহযোগে, সেগুলোর রিসোর্স ভাগাভাগি করতে পারেন। \n"
+"\n"
+"ইন্টারনেটে যোগাযোগ এনক্রিপ্ট হয়ে হয়। স্থানীয় এবং দূরবর্তী কম্পিউটারগুলো\n"
+"দেখুন যদি সেগুলো একই নেটওয়ার্কে থাকে।\n"
+"\n"
+"অন্য উপায় না দেখে নিশ্চিত হোন যে drakconnect ব্যবহার করে আপনার\n"
+"নেটওয়ার্ক ও ইন্টারনেট ব্যবহার কন্‌ফিগার করা হয়েছে।"
+
+#: ../tools/drakvpn-old:165
+#, c-format
+msgid ""
+"VPN connection.\n"
+"\n"
+"This program is based on the following projects:\n"
+" - FreeSwan: \t\t\thttp://www.freeswan.org/\n"
+" - Super-FreeSwan: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-tools: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - the docs and man pages coming with the %s package\n"
+"\n"
+"Please read AT LEAST the ipsec-howto docs\n"
+"before going any further."
+msgstr ""
+"VPN সংযুক্তি।\n"
+"\n"
+"এই প্রোগ্রামটি নিম্নলিখিত প্রোজেক্টের উপর নির্ভরশীল:\n"
+" - ফ্রিসুয়ান: \t\t\thttp://www.freeswan.org/\n"
+" - সুপার-ফ্রিসুয়ান: \t\thttp://www.freeswan.ca/\n"
+" - ipsec-টুল্‌স: \t\t\thttp://ipsec-tools.sourceforge.net/\n"
+" - ipsec-howto: \t\thttp://www.ipsec-howto.org\n"
+" - তথ্য এবং ম্যান পেজগুলো %s প্যাকেজের সাথে আসে\n"
+"\n"
+"অন্যান্য ক্ষেত্রে যাওয়ার আগে অনুগ্রহ করে অন্ততপক্ষে\n"
+" ipsec-howto নথিগুলো পড়ুন।"
+
+#: ../tools/drakvpn-old:208
+#, c-format
+msgid "Problems installing package %s"
+msgstr "%s প্যাকেজ ইনস্টলে সমস্যা"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "Security Policies"
+msgstr "নিরাপত্তা নীতি"
+
+#: ../tools/drakvpn-old:222
+#, c-format
+msgid "IKE daemon racoon"
+msgstr "IKE ডেমন্‌ racoon"
+
+#: ../tools/drakvpn-old:224
+#, c-format
+msgid "Configuration file"
+msgstr "কন্‌ফিগারেশন ফাইল"
+
+#: ../tools/drakvpn-old:225
+#, c-format
+msgid ""
+"Configuration step!\n"
+"\n"
+"You need to define the Security Policies and then to \n"
+"configure the automatic key exchange (IKE) daemon. \n"
+"The KAME IKE daemon we're using is called 'racoon'.\n"
+"\n"
+"What would you like to configure?\n"
+msgstr ""
+"কন্‌ফিগারেশনের ধাপ !\n"
+"\n"
+"আপনাকে নিরাপত্তা নীতি বলে দিতে হবে এবং তারপর \n"
+"স্বয়ংক্রিয় কী পরিবর্তন (IKE) ডেমন্‌ কন্‌ফিগার করতে হবে। \n"
+"আমরা যে KAME IKE ডেমন্‌ ব্যবহার করছি তাকে 'racoon' বলা হয়।\n"
+"\n"
+"আপনি কি কন্‌ফিগার করতে পছন্দ করছেন?\n"
+
+#: ../tools/drakvpn-old:245 ../tools/drakvpn-old:382
+#, c-format
+msgid "%s entries"
+msgstr "%s এন্ট্রি"
+
+#: ../tools/drakvpn-old:246
+#, c-format
+msgid ""
+"The %s file contents\n"
+"is divided into sections.\n"
+"\n"
+"You can now:\n"
+"\n"
+" - display, add, edit, or remove sections, then\n"
+" - commit the changes\n"
+"\n"
+"What would you like to do?\n"
+msgstr ""
+"%s ফাইলের বিষয়বস্তুগুলো\n"
+"বিভিন্ন সেক্‌শনে বিভক্ত থাকে।\n"
+"\n"
+"আপনি এখন করতে পারেন :\n"
+"\n"
+" - প্রদর্শন, যোগ, সম্পাদনা, অথবা সেকশন মুছে ফেলতে পারেন, তখন\n"
+" - পরিবর্তগুলো নিবদ্ধ করুন\n"
+"\n"
+"আপনি কি করতে পছন্দ করছেন?\n"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display"
+msgstr "প্রদর্শন করো"
+
+# ##এডিট
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Edit"
+msgstr "সম্পাদন"
+
+#: ../tools/drakvpn-old:253 ../tools/drakvpn-old:391
+#, c-format
+msgid "Commit"
+msgstr "নিবদ্ধ করো"
+
+#: ../tools/drakvpn-old:267 ../tools/drakvpn-old:271 ../tools/drakvpn-old:406
+#: ../tools/drakvpn-old:410
+#, c-format
+msgid ""
+"_:display here is a verb\n"
+"Display configuration"
+msgstr "কন্‌ফিগারেশন প্রদর্শন করো"
+
+#: ../tools/drakvpn-old:272
+#, c-format
+msgid ""
+"The %s file does not exist.\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose 'add'.\n"
+msgstr ""
+"%s ফাইলটি বিদ্যমান নেই।\n"
+"\n"
+"এটা অবশ্যই একটি নতুন কন্‌ফিগারেশন হবে।\n"
+"\n"
+"আপনাকে পূর্ব অবস্থানে যেতে হবে এবং 'যোগ করো' পছন্দ করুন।\n"
+
+#: ../tools/drakvpn-old:301
+#, c-format
+msgid ""
+"Add a Security Policy.\n"
+"\n"
+"You can now add a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"একটি নিরাপত্তা নীতি যোগ করো।\n"
+"\n"
+"আপনি এখন একটি নিরাপত্তা নীতি যোগ করতে পারেন।\n"
+"\n"
+"যখন আপনার তথ্য লেখা হয়ে যাবে তখন চালিয়ে যাও পছন্দ করুন।\n"
+
+#: ../tools/drakvpn-old:333 ../tools/drakvpn-old:523
+#, c-format
+msgid "Edit section"
+msgstr "সেক্‌শন সম্পাদনা"
+
+#: ../tools/drakvpn-old:334
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to edit \n"
+"and then click on next.\n"
+msgstr ""
+"আপনার %s ফাইলের কয়েকটি সেক্‌শন অথবা সংযুক্তি আছে।\n"
+"\n"
+"সম্পাদনার জন্য আপনি নিচের যে কোন একটি ফাইল পছন্দ \n"
+"করতে পারেন এবং তখন পরবর্তী'তে ক্লিক করতে পারেন।\n"
+
+#: ../tools/drakvpn-old:337 ../tools/drakvpn-old:357 ../tools/drakvpn-old:528
+#: ../tools/drakvpn-old:574
+#, c-format
+msgid "Section names"
+msgstr "সেক্‌শনগুলোর নাম"
+
+#: ../tools/drakvpn-old:344
+#, c-format
+msgid ""
+"Edit a Security Policy.\n"
+"\n"
+"You can now edit a Security Policy.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"নিরাপত্তা নীতি সম্পাদনা করো।\n"
+"\n"
+"আপনি এখন নিরাপত্তা নীতি যোগ করতে পারেন।\n"
+"\n"
+"তথ্য লিখে ফেলতে আপনি চালিয়ে যাও পছন্দ করুন।\n"
+
+#: ../tools/drakvpn-old:353 ../tools/drakvpn-old:570
+#, c-format
+msgid "Remove section"
+msgstr "সেকশন মুছে ফেলো"
+
+#: ../tools/drakvpn-old:354 ../tools/drakvpn-old:571
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here below the one you want to remove\n"
+"and then click on next.\n"
+msgstr ""
+"আপনার %s ফাইলের বেশকিছু অংশ বা সংযুক্তি আছে।\n"
+"\n"
+"আপনি নিচের কোন একটিকে মুছতে চাইলে পছন্দ করুন\n"
+"এবং পরবর্তী'তে ক্লিক করুন।\n"
+
+#: ../tools/drakvpn-old:383
+#, c-format
+msgid ""
+"The racoon.conf file configuration.\n"
+"\n"
+"The contents of this file is divided into sections.\n"
+"You can now:\n"
+" - display \t\t (display the file contents)\n"
+" - add\t\t\t (add one section)\n"
+" - edit \t\t\t (modify parameters of an existing section)\n"
+" - remove \t\t (remove an existing section)\n"
+" - commit \t\t (writes the changes to the real file)"
+msgstr ""
+"racoon.conf ফাইলের কন্‌ফিগারেশন।\n"
+"\n"
+"এই ফাইলের বিষয়বস্তুগুলো বিভিন্ন অংশে বিভক্ত।\n"
+"আপনি এখন করতে পারেন:\n"
+" - প্রদর্শন \t\t (ফাইলের বিষয়বস্তু প্রদর্শন করতে)\n"
+" - যোগ \t\t (একটি অংশ যোগ করতে)\n"
+" - সম্পাদনা \t\t (বিদ্যমান অংশের প্যারামিটারে পরিবর্তন করতে)\n"
+" - মুছো \t\t (বিদ্যমান অংশ মুছে ফেলতে)\n"
+" - নিবদ্ধ \t\t (বাস্তব ফাইলের পরিবর্তন লিখতে)"
+
+#: ../tools/drakvpn-old:411
+#, c-format
+msgid ""
+"The %s file does not exist\n"
+"\n"
+"This must be a new configuration.\n"
+"\n"
+"You'll have to go back and choose configure.\n"
+msgstr ""
+"%s ফাইলটি বর্তমান নেই।\n"
+"\n"
+"এটা অবশ্যই কোন কন্‌ফিগারেশন হবে।\n"
+"\n"
+"আপনাকে পেছনে ফিরতে হবে এবং কন্‌ফিগার বেছে নিতে হবে।\n"
+
+#: ../tools/drakvpn-old:425
+#, c-format
+msgid "racoon.conf entries"
+msgstr "racoon.conf এন্ট্রি"
+
+#: ../tools/drakvpn-old:426
+#, c-format
+msgid ""
+"The 'add' sections step.\n"
+"\n"
+"Here below is the racoon.conf file skeleton:\n"
+"\t'path'\n"
+"\t'remote'\n"
+"\t'sainfo' \n"
+"\n"
+"Choose the section you would like to add.\n"
+msgstr ""
+"'যোগ করো' সেক্‌শনের ধাপ।\n"
+"\n"
+"এখানে নিচে racoon.conf ফাইলের স্কেলেটন :\n"
+"\t'পাথ'\n"
+"\t'দূরবর্তী'\n"
+"\t'sainfo'\n"
+"\n"
+"যে সেক্‌শনটি যোগ করতে চান তা পছন্দ করুন।\n"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "path"
+msgstr "পাথ"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "remote"
+msgstr "দূরবর্তী"
+
+#: ../tools/drakvpn-old:432
+#, c-format
+msgid "sainfo"
+msgstr "sainfo"
+
+#: ../tools/drakvpn-old:440
+#, c-format
+msgid ""
+"The 'add path' section step.\n"
+"\n"
+"The path sections have to be on top of your racoon.conf file.\n"
+"\n"
+"Put your mouse over the certificate entry to obtain online help."
+msgstr ""
+"'পাথ যোগ করো' অংশের ধাপ।\n"
+"\n"
+"পাথের অংশটা আপনার racoon.conf ফাইলের উপরে থাকে।\n"
+"\n"
+"অনলাইনে সাহায্য পাওয়ার জন্য আপনার মাউসটি সার্টিফিকেট এন্ট্রি'র উপর রাখুন।"
+
+#: ../tools/drakvpn-old:443
+#, c-format
+msgid "path type"
+msgstr "পাথের ধরণ"
+
+#: ../tools/drakvpn-old:447
+#, c-format
+msgid ""
+"path include path: specifies a path to include\n"
+"a file. See File Inclusion.\n"
+"\tExample: path include '/etc/racoon'\n"
+"\n"
+"path pre_shared_key file: specifies a file containing\n"
+"pre-shared key(s) for various ID(s). See Pre-shared key File.\n"
+"\tExample: path pre_shared_key '/etc/racoon/psk.txt' ;\n"
+"\n"
+"path certificate path: racoon(8) will search this directory\n"
+"if a certificate or certificate request is received.\n"
+"\tExample: path certificate '/etc/cert' ;\n"
+"\n"
+"File Inclusion: include file \n"
+"other configuration files can be included.\n"
+"\tExample: include \"remote.conf\" ;\n"
+"\n"
+"Pre-shared key File: Pre-shared key file defines a pair\n"
+"of the identifier and the shared secret key which are used at\n"
+"Pre-shared key authentication method in phase 1."
+msgstr ""
+
+# "পাথ যোগ করার পাথ : একটি ফাইল যুক্ত করার জন্য নির্দিষ্ট পাথ\n"
+# "দেখিয়ে দিন। ফাইল Inclusion দেখিয়ে দিন।\n"
+# "\tউদাহরণস্বরুপ: '/etc/racoon' যুক্ত করার পাথ\n"
+# "\n"
+# ""
+# Real Sugar = আসল চিনি
+#: ../tools/drakvpn-old:467 ../tools/drakvpn-old:560
+#, c-format
+msgid "real file"
+msgstr "আসল ফাইল"
+
+#: ../tools/drakvpn-old:490
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your racoon.conf file.\n"
+"\n"
+"You can now choose the remote settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"নিশ্চিত হোন যে আপনার racoon.conf ফাইলের উপরে ইতিমধ্যেই\n"
+"আপনার পাথে'র অংশ আছে।\n"
+"\n"
+"আপনি দূরবর্তী সেটিংস পছন্দ করতে পারেন।\n"
+"যখন আপনার কাজ শেষ হবে তখন চালিয়ে যাও বা পূর্ববর্তী পছন্দ করুন।\n"
+
+#: ../tools/drakvpn-old:507
+#, c-format
+msgid ""
+"Make sure you already have the path sections\n"
+"on the top of your %s file.\n"
+"\n"
+"You can now choose the sainfo settings.\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"নিশ্চিত হোন যে আপনার %s ফাইলের উপরে ইতিমধ্যেই\n"
+"আপনার পাথের অংশ আছে।\n"
+"\n"
+"আপনি sainfo সেটিংস পছন্দ করতে পারেন।\n"
+"যখন আপনার কাজ শেষ হবে তখন চালিয়ে যাও বা পূর্ববর্তী পছন্দ করুন।\n"
+
+#: ../tools/drakvpn-old:524
+#, c-format
+msgid ""
+"Your %s file has several sections or connections.\n"
+"\n"
+"You can choose here in the list below the one you want\n"
+"to edit and then click on next.\n"
+msgstr ""
+"আপনার %s ফাইলের কয়েকটি অংশ বা সংযুক্তি আছে।\n"
+"\n"
+"নিচে দেয়া তালিকা থেকে আপনি যে কোন একটি সম্পাদনা করার জন্য\n"
+"বেছে নিতে পারেন এবং তখন পরবর্তী'র উপর ক্লিক করুন।\n"
+
+#: ../tools/drakvpn-old:535
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"\n"
+"You can now edit the remote section entries.\n"
+"\n"
+"Choose continue when you are done to write the data.\n"
+msgstr ""
+"আপনার %s ফাইলের কয়েকটি অংশ আছে।\n"
+"\n"
+"আপনি দূরবর্তী অংশের এন্ট্রিগুলো সম্পাদনা করতে পারেন।\n"
+"\n"
+"যখন আপনার তথ্য লেখা শেষ হবে তখন চালিয়ে পছন্দ নিন।\n"
+
+#: ../tools/drakvpn-old:544
+#, c-format
+msgid ""
+"Your %s file has several sections.\n"
+"\n"
+"You can now edit the sainfo section entries.\n"
+"\n"
+"Choose continue when you are done to write the data."
+msgstr ""
+"আপনার %s ফাইলের কয়েকটি অংশ আছে।\n"
+"\n"
+"আপনি sainfo অংশের এন্ট্রিগুলো সম্পাদনা করতে পারেন।\n"
+"\n"
+"যখন আপনার তথ্য লেখা শেষ হবে তখন চালিয়ে পছন্দ নিন।"
+
+#: ../tools/drakvpn-old:552
+#, c-format
+msgid ""
+"This section has to be on top of your\n"
+"%s file.\n"
+"\n"
+"Make sure all other sections follow these path\n"
+"sections.\n"
+"\n"
+"You can now edit the path entries.\n"
+"\n"
+"Choose continue or previous when you are done.\n"
+msgstr ""
+"এই সেক্‌শনটি আপনার %s ফাইলের উপরে\n"
+"রাখতে হবে।\n"
+"\n"
+"নিশ্চিত হোন যে সবগুলো সেক্‌শন এই পাথ সেক্‌শন\n"
+"অনুসরণ করবে।\n"
+"আপনি এখন পাথ এন্ট্রি সম্পাদনা করতে পারেন।\n"
+"\n"
+"যখন আপনার কাজ শেষ হবে তখন চালিয়ে যাও বা পূর্ববর্তী পছন্দ করুন।\n"
+
+#: ../tools/drakvpn-old:559
+#, c-format
+msgid "path_type"
+msgstr "পাথ_টাইপ"
+
+#: ../tools/drakvpn-old:599
+#, c-format
+msgid "Congratulations!"
+msgstr "অভিনন্দন!"
+
+#: ../tools/drakvpn-old:600
+#, c-format
+msgid ""
+"Everything has been configured.\n"
+"\n"
+"You may now share resources through the Internet,\n"
+"in a secure way, using a VPN connection.\n"
+"\n"
+"You should make sure that the tunnels shorewall\n"
+"section is configured."
+msgstr ""
+"সবকিছু কন্‌ফিগার করা হয়েছে।\n"
+"\n"
+"আপনি এখন ইন্টারনেটে রিসোর্স ভাগাভাগী করতে পারেন,\n"
+"নিরাপদ পথে, VPN সংযুক্তি ব্যবহার করে।\n"
+"\n"
+"আপনার নিশ্চিত উচিত যে tunnels shorewall সেক্‌শন\n"
+"কন্‌ফিগার করা হয়েছে।"
+
+#: ../tools/drakvpn-old:620
+#, c-format
+msgid "Sainfo source address"
+msgstr ""
+
+# #msgstr "Sainfo উত্‍সের অ্যাড্রেস"
+#: ../tools/drakvpn-old:621
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.209 is the source address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.1.0/24 is the source address"
+msgstr ""
+"sainfo (উত্‍স_আইডি গন্তব্য_আইডি | anonymous) { মন্তব্য }\n"
+"IKE phase 2 প্যারামিটার নির্দিষ্ট করে দেয়\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"উত্‍স_আইডি এবং গন্তব্য_আইডি তৈরী হয় যাদের মতো:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"উদাহরণস্বরুপ : \n"
+"\n"
+"sainfo anonymous (যেকোন জায়গা থেকে সংযুক্তি গ্রহণ করে)\n"
+"\tআপনি যদি anonymous চান তাহলে এই এন্ট্রি খালি রেখে দিন\n"
+"\n"
+"sainfo ঠিকানা 203.178.141.209 যেকোন ঠিকানা 203.178.141.218 যেকোন\n"
+"\t203.178.141.209 হচ্ছে উত্‍সের ঠিকানা\n"
+"\n"
+"sainfo ঠিকানা 172.16.1.0/24 যেকোন ঠিকানা 172.16.2.0/24 যেকোনো\n"
+"\t172.16.1.0/24 হচ্ছে উত্‍সের ঠিকানা"
+
+#: ../tools/drakvpn-old:638
+#, c-format
+msgid "Sainfo source protocol"
+msgstr "Sainfo উত্‍সের প্রোটোকল"
+
+#: ../tools/drakvpn-old:639
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe first 'any' allows any protocol for the source"
+msgstr ""
+"sainfo (উত্‍স_আইডি গন্তব্য_আইডি | anonymous) { মন্তব্য }\n"
+"IKE phase 2 প্যারামিটার নির্দিষ্ট করে দেয়\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"উত্‍স_আইডি এবং গন্তব্য_আইডি তৈরী হয় যাদের মতো:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"উদাহরণস্বরুপ : \n"
+"\n"
+"sainfo anonymous (যেকোন জায়গা থেকে সংযুক্তি গ্রহণ করে)\n"
+"\tআপনি যদি anonymous চান তাহলে এই এন্ট্রি খালি রেখে দিন\n"
+"\n"
+"sainfo ঠিকানা 203.178.141.209 যেকোন ঠিকানা 203.178.141.218 যেকোন\n"
+"জায়গার প্রথম 'যেকোন' সবসময় যেকোন উত্‍স থেকে প্রোটোকল গ্রহণ করে"
+
+#: ../tools/drakvpn-old:653
+#, c-format
+msgid "Sainfo destination address"
+msgstr "Sainfo গন্তব্যের ঠিকানা"
+
+# ##msgstr "Sainfo গন্তব্যের অ্যাড্রেস"
+#: ../tools/drakvpn-old:654
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\t203.178.141.218 is the destination address\n"
+"\n"
+"sainfo address 172.16.1.0/24 any address 172.16.2.0/24 any\n"
+"\t172.16.2.0/24 is the destination address"
+msgstr ""
+"sainfo (উত্‍স_আইডি গন্তব্য_আইডি | anonymous) { মন্তব্য }\n"
+"IKE phase 2 প্যারামিটার নির্দিষ্ট করে দেয়\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"উত্‍স_আইডি এবং গন্তব্য_আইডি তৈরী হয় যাদের মতো:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"উদাহরণস্বরুপ : \n"
+"\n"
+"sainfo anonymous (যেকোন জায়গা থেকে সংযুক্তি গ্রহণ করে)\n"
+"\tআপনি যদি anonymous চান তাহলে এই এন্ট্রি খালি রেখে দিন\n"
+"\n"
+"sainfo ঠিকানা 203.178.141.209 যেকোন ঠিকানা 203.178.141.218 যেকোন\n"
+"\t203.178.141.209 হচ্ছে গন্তব্যের ঠিকানা\n"
+"\n"
+"sainfo ঠিকানা 172.16.1.0/24 যেকোন ঠিকানা 172.16.2.0/24 যেকোনো\n"
+"\t172.16.1.0/24 হচ্ছে গন্তব্যের ঠিকানা"
+
+#: ../tools/drakvpn-old:671
+#, c-format
+msgid "Sainfo destination protocol"
+msgstr "Sainfo গন্তব্যের প্রোটোকল"
+
+#: ../tools/drakvpn-old:672
+#, c-format
+msgid ""
+"sainfo (source_id destination_id | anonymous) { statements }\n"
+"defines the parameters of the IKE phase 2\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"source_id and destination_id are constructed like:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"Examples: \n"
+"\n"
+"sainfo anonymous (accepts connections from anywhere)\n"
+"\tleave blank this entry if you want anonymous\n"
+"\n"
+"sainfo address 203.178.141.209 any address 203.178.141.218 any\n"
+"\tthe last 'any' allows any protocol for the destination"
+msgstr ""
+"sainfo (উত্‍স_আইডি গন্তব্য_আইডি | anonymous) { মন্তব্য }\n"
+"IKE phase 2 প্যারামিটার নির্দিষ্ট করে দেয়\n"
+"(IPsec-SA establishment).\n"
+"\n"
+"উত্‍স_আইডি এবং গন্তব্য_আইডি তৈরী হয় যাদের মতো:\n"
+"\n"
+"\taddress address [/ prefix] [[port]] ul_proto\n"
+"\n"
+"উদাহরণস্বরুপ : \n"
+"\n"
+"sainfo anonymous (যেকোন জায়গা থেকে সংযুক্তি গ্রহণ করে)\n"
+"\tআপনি যদি anonymous চান তাহলে এই এন্ট্রি খালি রেখে দিন\n"
+"\n"
+"sainfo ঠিকানা 203.178.141.209 যেকোন ঠিকানা 203.178.141.218 যেকোন\n"
+"জায়গার প্রথম 'যেকোন' সবসময় গন্তব্যের জন্য প্রোটোকল গ্রহণ করে"
+
+#: ../tools/drakvpn-old:686
+#, c-format
+msgid "PFS group"
+msgstr "পি-এফ-এস গ্রুপ"
+
+#: ../tools/drakvpn-old:688
+#, c-format
+msgid ""
+"define the group of Diffie-Hellman exponentiations.\n"
+"If you do not require PFS then you can omit this directive.\n"
+"Any proposal will be accepted if you do not specify one.\n"
+"group is one of the following: modp768, modp1024, modp1536.\n"
+"Or you can define 1, 2, or 5 as the DH group number."
+msgstr ""
+"Diffie-Hellman exponentiations এর গ্রুপ নির্দিষ্ট করো।\n"
+"আপনার যদি কোন পি-এফ-এস প্রয়োজন না হয় তাহলে এই ডিরেক্টিভ মুছে ফেলতে পারেন।\n"
+"আপনি কোন একটি নির্দিষ্ত করে না দেন তাহলে প্রস্তাব গ্রহণযোগ্য হবে।\n"
+"এখানকার যেকোন একটি গ্রুপ: modp768, modp1024, modp1536।\n"
+"অথবা আপনি ১, ২, বা ৫ হিসেবে DH গ্রুপ সংখ্যাগুলো নির্দিষ্ট করে দিতে পারেন।"
+
+#: ../tools/drakvpn-old:693
+#, c-format
+msgid "Lifetime number"
+msgstr "আজীবনের নম্বর"
+
+#: ../tools/drakvpn-old:694
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime numbers are 1, 1, 30, 30, 60 and 12.\n"
+msgstr ""
+"আজীবনের একটা নির্দিষ্ট সময় নির্ধারণ করুন যা phase 1 \n"
+"negotiations এ প্রস্তাবিত হবে। যেকোন প্রস্তাব গ্রহণ করা\n"
+"হবে, এবং বৈশিষ্ট্যগুলো সঙ্গীর(peer) প্রতি প্রস্তাব করা হবে না\n"
+"যদি আপনি তাকে(তাদেরকে) নির্দিষ্ট করে না দেন। তারা প্রত্যেকে\n"
+"প্রতি প্রস্তাবের পৃথকভাবে নির্দিষ্ট করে দিতে পারে।\n"
+"\n"
+"উদাহরণস্বরুপ : \n"
+"\n"
+"\t১ মিনিটের সময়সীমা; #সেকেন্ড,মিনিট,ঘন্টা\n"
+"\t১ মিনিটের সময়সীমা; #সেকেন্ড,মিনিট,ঘন্টা\n"
+"\t৩০ সেকেন্ডের সময়সীমা;\n"
+"\t৩০ সেকেন্ডের সময়সীমা;\n"
+"\t৬০ সেকেন্ডের সময়সীমা;\n"
+"\t১২ ঘন্টার সময়সীমা;\n"
+"\n"
+"সুতরাং, এখানে সময়সীমা সংখ্যাগুলো ১, ১, ৩০, ৬০ এবং ১২।\n"
+
+#: ../tools/drakvpn-old:710
+#, c-format
+msgid "Lifetime unit"
+msgstr "আজীবনের ইউনিট"
+
+#: ../tools/drakvpn-old:712
+#, c-format
+msgid ""
+"define a lifetime of a certain time which will be pro-\n"
+"posed in the phase 1 negotiations. Any proposal will be\n"
+"accepted, and the attribute(s) will not be proposed to\n"
+"the peer if you do not specify it(them). They can be\n"
+"individually specified in each proposal.\n"
+"\n"
+"Examples: \n"
+"\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 1 min; # sec,min,hour\n"
+" lifetime time 30 sec;\n"
+" lifetime time 30 sec;\n"
+" lifetime time 60 sec;\n"
+"\tlifetime time 12 hour;\n"
+"\n"
+"So, here, the lifetime units are 'min', 'min', 'sec', 'sec', 'sec' and "
+"'hour'.\n"
+msgstr ""
+"আজীবনের একটা নির্দিষ্ট সময় নির্ধারণ করুন যা phase 1 \n"
+"negotiations এ প্রস্তাবিত হবে। যেকোন প্রস্তাব গ্রহণ করা\n"
+"হবে, এবং বৈশিষ্ট্যগুলো সঙ্গীর(peer) প্রতি প্রস্তাব করা হবে না\n"
+"যদি আপনি তাকে(তাদেরকে) নির্দিষ্ট করে না দেন। তারা প্রত্যেকে\n"
+"প্রতি প্রস্তাবের পৃথকভাবে নির্দিষ্ট করে দিতে পারে।\n"
+"\n"
+"উদাহরণস্বরুপ : \n"
+"\n"
+"\t১ মিনিটের সময়সীমা; #সেকেন্ড,মিনিট,ঘন্টা\n"
+"\t১ মিনিটের সময়সীমা; #সেকেন্ড,মিনিট,ঘন্টা\n"
+"\t৩০ সেকেন্ডের সময়সীমা;\n"
+"\t৩০ সেকেন্ডের সময়সীমা;\n"
+"\t৬০ সেকেন্ডের সময়সীমা;\n"
+"\t১২ ঘন্টার সময়সীমা;\n"
+"\n"
+"সুতরাং, এখানে সময়সীমা ইউনিটগুলো 'মিনিট', 'মিনিট', 'সেকেন্ড', 'সেকেন্ড', 'সেকেন্ড' "
+"এবং 'ঘন্টা'।\n"
+
+#: ../tools/drakvpn-old:728 ../tools/drakvpn-old:813
+#, c-format
+msgid "Encryption algorithm"
+msgstr "Encryption অ্যালগোরিদম"
+
+#: ../tools/drakvpn-old:730
+#, c-format
+msgid "Authentication algorithm"
+msgstr "নির্ভরযোগ্য অ্যালগোরিদম"
+
+#: ../tools/drakvpn-old:732
+#, c-format
+msgid "Compression algorithm"
+msgstr "সংক্ষিপ্ত করার অ্যালগোরিদম"
+
+#: ../tools/drakvpn-old:733
+#, c-format
+msgid "deflate"
+msgstr "স্ফীতি হ্রাস"
+
+#: ../tools/drakvpn-old:740
+#, c-format
+msgid "Remote"
+msgstr "দূরবর্তী"
+
+# সাম
+#: ../tools/drakvpn-old:741
+#, c-format
+msgid ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"specifies the parameters for IKE phase 1 for each remote node.\n"
+"The default port is 500. If anonymous is specified, the state-\n"
+"ments apply to all peers which do not match any other remote\n"
+"directive.\n"
+"\n"
+"Examples: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+msgstr ""
+"remote (address | anonymous) [[port]] { statements }\n"
+"প্রতিটি দূরবর্তী নোডের IKE ১ম পর্যায়ের প্যারামিটার নির্ধারন করে।\n"
+"ডিফল্ট পোর্ট হল ৫০০। যদি Anonymous বলা হয়ে থাকে\n"
+"statement গুলো সব peer এর ক্ষেত্রে প্রযোজ্য যেগুলো আর কোন\n"
+"দূরবর্তী ডিরেক্টিভের সাথে মিলে না।\n"
+"\n"
+"উদাহরন: \n"
+"\n"
+"remote anonymous\n"
+"remote ::1 [8000]"
+
+#: ../tools/drakvpn-old:749
+#, c-format
+msgid "Exchange mode"
+msgstr "বিনিময় মোড"
+
+# negotiation = নিস্পত্তি প্রক্রিয়ায়
+# initiator ‌= ইনিশিয়েটর
+#: ../tools/drakvpn-old:751
+#, c-format
+msgid ""
+"defines the exchange mode for phase 1 when racoon is the\n"
+"initiator. Also it means the acceptable exchange mode\n"
+"when racoon is responder. More than one mode can be\n"
+"specified by separating them with a comma. All of the\n"
+"modes are acceptable. The first exchange mode is what\n"
+"racoon uses when it is the initiator.\n"
+msgstr ""
+"racoon যখন ইনিশিয়েটর তখন ১ম পর্যায়ের আদান‌-প্রদান মোড\n"
+"ঠিক করে। যখন racoon রেসপন্ডার তখন এটি গ্রহনযোগ্য\n"
+"আদান‌-প্রদান মোডও বটে। একের অধিক মোড কমা দিয়ে\n"
+"আলাদা করে দেয়া যেতে পারে। সবগুলো মোডই গ্রহনযোগ্য।\n"
+"ইনিশিয়েটর হিসেবে racoon ১ম আদান‌-প্রদান মোডটি ব্যবহার\n"
+"করে।\n"
+
+#: ../tools/drakvpn-old:757
+#, c-format
+msgid "Generate policy"
+msgstr "সাধারন নীতি"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "off"
+msgstr "বন্ধ"
+
+#: ../tools/drakvpn-old:758 ../tools/drakvpn-old:774 ../tools/drakvpn-old:787
+#, c-format
+msgid "on"
+msgstr "চালু"
+
+# negotiation = নিস্পত্তি প্রক্রিয়ায়
+# initiator ‌= ইনিশিয়েটর
+#: ../tools/drakvpn-old:759
+#, c-format
+msgid ""
+"This directive is for the responder. Therefore you\n"
+"should set passive on in order that racoon(8) only\n"
+"becomes a responder. If the responder does not have any\n"
+"policy in SPD during phase 2 negotiation, and the direc-\n"
+"tive is set on, then racoon(8) will choose the first pro-\n"
+"posal in the SA payload from the initiator, and generate\n"
+"policy entries from the proposal. It is useful to nego-\n"
+"tiate with the client which is allocated IP address\n"
+"dynamically. Note that inappropriate policy might be\n"
+"installed into the responder's SPD by the initiator. So\n"
+"that other communication might fail if such policies\n"
+"installed due to some policy mismatches between the ini-\n"
+"tiator and the responder. This directive is ignored in\n"
+"the initiator case. The default value is off."
+msgstr ""
+"এই ডিরেক্টিভটি রেসপন্ডারের জন্য। অতএব আপনাকে passive সেটিংটি\n"
+"চালু করতে হবে যাতে racoon(8) শুধু রেসপন্ডার হিসেবে কাজ করে। যদি\n"
+"রেসপন্ডারটির ২য় নিস্পত্তি প্রক্রিয়ায় কোন SPD নীতি না থাকে, এবং\n"
+"ডিরেক্টিভটি চালু থাকে, তবে racoon ইনিশিয়েটর থেকে SA পেলোডের\n"
+"প্রস্তাবটি বেছে নেবে এবং এটি থেকেই নীতিমালা তৈরী করবে। যে ক্লায়েন্টের\n"
+"IP address ডাইনামিক ভাবে দেয়া হয়, তার সাথে নিস্পত্তি করাই শ্রেয়।\n"
+"মনে রাখবেন, ইনিশিয়েটরটি রেসপন্ডারের SPD তে সঠিক নীতি ইনস্টল\n"
+"নাও করতে পারে। এই ইনিশিয়েটর ও রেসপন্ডারের মাঝে নীতির অমিলের\n"
+"কারনে অনান্য যোগাযোগ বিঘ্ন হতে পারে। ইনিশিয়েটরের ক্ষেত্রে এই\n"
+"ডিরেক্টিভটি অগ্রায্য করা হয় যার ডিফল্ট মান বন্ধ। "
+
+#: ../tools/drakvpn-old:773
+#, c-format
+msgid "Passive"
+msgstr "জড়"
+
+# ##অক্রিয় / স্থির
+#: ../tools/drakvpn-old:775
+#, c-format
+msgid ""
+"If you do not want to initiate the negotiation, set this\n"
+"to on. The default value is off. It is useful for a\n"
+"server."
+msgstr ""
+"আপনি মধ্যস্থতা আরম্ভ করতে না চান, তাহলে এটাকে চালু অবস্থায়\n"
+"সেট করুন। ডিফল্টভাবে এটা বন্ধ থাকে। এটা সার্ভারের জন্য খুব\n"
+"দরকারী।"
+
+#: ../tools/drakvpn-old:778
+#, c-format
+msgid "Certificate type"
+msgstr "সার্টিফিকেটের ধরণ"
+
+#: ../tools/drakvpn-old:780
+#, c-format
+msgid "My certfile"
+msgstr "আমার সার্টফাইল"
+
+#: ../tools/drakvpn-old:781
+#, c-format
+msgid "Name of the certificate"
+msgstr "সার্টফাইলের নাম"
+
+#: ../tools/drakvpn-old:782
+#, c-format
+msgid "My private key"
+msgstr "আমার ব্যক্তিগত কী"
+
+#: ../tools/drakvpn-old:783
+#, c-format
+msgid "Name of the private key"
+msgstr "ব্যক্তিগত কী'র নাম"
+
+#: ../tools/drakvpn-old:784
+#, c-format
+msgid "Peers certfile"
+msgstr "peers সার্টফাইল"
+
+#: ../tools/drakvpn-old:785
+#, c-format
+msgid "Name of the peers certificate"
+msgstr "peers সার্টিফিকেটের নাম"
+
+# #Fix me
+#: ../tools/drakvpn-old:786
+#, c-format
+msgid "Verify cert"
+msgstr "সার্টিফিকেট যাচাই"
+
+#: ../tools/drakvpn-old:788
+#, c-format
+msgid ""
+"If you do not want to verify the peer's certificate for\n"
+"some reason, set this to off. The default is on."
+msgstr ""
+"আপনি যদি কোন কারণে সঙ্গীর (peer) সার্টিফিকেট যাচাই করতে\n"
+"না চান, তাহলে এটাকে বন্ধ হিসেবে সেট করুন। তবে ডিফল্ট হিসেবে এটি চালু অবস্থায় থাকে।"
+
+# # Fix me
+#: ../tools/drakvpn-old:790
+#, c-format
+msgid "My identifier"
+msgstr "আমার সনাক্রকারক"
+
+#: ../tools/drakvpn-old:791
+#, c-format
+msgid ""
+"specifies the identifier sent to the remote host and the\n"
+"type to use in the phase 1 negotiation. address, FQDN,\n"
+"user_fqdn, keyid and asn1dn can be used as an idtype.\n"
+"they are used like:\n"
+"\tmy_identifier address [address];\n"
+"\t\tthe type is the IP address. This is the default\n"
+"\t\ttype if you do not specify an identifier to use.\n"
+"\tmy_identifier user_fqdn string;\n"
+"\t\tthe type is a USER_FQDN (user fully-qualified\n"
+"\t\tdomain name).\n"
+"\tmy_identifier FQDN string;\n"
+"\t\tthe type is a FQDN (fully-qualified domain name).\n"
+"\tmy_identifier keyid file;\n"
+"\t\tthe type is a KEY_ID.\n"
+"\tmy_identifier asn1dn [string];\n"
+"\t\tthe type is an ASN.1 distinguished name. If\n"
+"\t\tstring is omitted, racoon(8) will get DN from\n"
+"\t\tSubject field in the certificate.\n"
+"\n"
+"Examples: \n"
+"\n"
+"my_identifier user_fqdn \"myemail@mydomain.com\""
+msgstr ""
+
+#: ../tools/drakvpn-old:811
+#, c-format
+msgid "Peers identifier"
+msgstr "সঙ্গী সনাক্তকারক"
+
+# ##সংগী/সঙ্গী নির্দেশক
+#: ../tools/drakvpn-old:812
+#, c-format
+msgid "Proposal"
+msgstr "প্রস্তাব"
+
+#: ../tools/drakvpn-old:814
+#, c-format
+msgid ""
+"specify the encryption algorithm used for the\n"
+"phase 1 negotiation. This directive must be defined. \n"
+"algorithm is one of the following: \n"
+"\n"
+"DES, 3DES, blowfish, cast128 for oakley.\n"
+"\n"
+"For other transforms, this statement should not be used."
+msgstr ""
+"phase ১ নেগোশিয়েশনের জন্য ব্যবহৃত encryption অ্যালগোরিদম নির্দিষ্ট করুন.\n"
+"এই আদেশটি অবশ্যই বলা থাকবে।\n"
+"অ্যালগোরিদম নিচের যেকোন একটি: \n"
+"\n"
+"oakley এর জন্য DES, 3DES, blowfish, cast128 ।\n"
+"\n"
+"অন্যান্য রুপান্তরের জন্য, এই মন্তব্য ব্যবহৃত হবে না।"
+
+#: ../tools/drakvpn-old:821
+#, c-format
+msgid "Hash algorithm"
+msgstr "হ্যাশ অ্যালগোরিদম"
+
+#: ../tools/drakvpn-old:822
+#, c-format
+msgid "Authentication method"
+msgstr "নির্ভরযোগ্য নিয়ম"
+
+#: ../tools/drakvpn-old:823
+#, c-format
+msgid "DH group"
+msgstr "DH গ্রুপ"
+
+#: ../tools/drakvpn-old:830
+#, c-format
+msgid "Command"
+msgstr "কমান্ড"
+
+#: ../tools/drakvpn-old:831
+#, c-format
+msgid "Source IP range"
+msgstr "আই-পি range এর উত্‍স"
+
+#: ../tools/drakvpn-old:832
+#, c-format
+msgid "Destination IP range"
+msgstr "আই-পি range এর গন্তব্য"
+
+#: ../tools/drakvpn-old:833
+#, c-format
+msgid "Upper-layer protocol"
+msgstr "উপরের স্তরের প্রোটোকল"
+
+#: ../tools/drakvpn-old:833 ../tools/drakvpn-old:840
+#, c-format
+msgid "any"
+msgstr "যেকোন"
+
+#: ../tools/drakvpn-old:835
+#, c-format
+msgid "Flag"
+msgstr "ফ্ল্যাগ"
+
+#: ../tools/drakvpn-old:836
+#, c-format
+msgid "Direction"
+msgstr "গতিপথ"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "IPsec policy"
+msgstr "Ipsec নীতি"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "ipsec"
+msgstr "ipsec"
+
+#: ../tools/drakvpn-old:837
+#, c-format
+msgid "discard"
+msgstr "অপ্রোজনীয়"
+
+# ##বাতিল
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "Mode"
+msgstr "মোড"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "tunnel"
+msgstr "টানেল"
+
+#: ../tools/drakvpn-old:840
+#, c-format
+msgid "transport"
+msgstr "বাহন"
+
+#: ../tools/drakvpn-old:842
+#, c-format
+msgid "Source/destination"
+msgstr "উত্‍স/গন্তব্য"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "Level"
+msgstr "লেভেল"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "require"
+msgstr "প্রয়োজন"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "default"
+msgstr "ডিফল্ট"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "use"
+msgstr "ব্যবহার"
+
+#: ../tools/drakvpn-old:843
+#, c-format
+msgid "unique"
+msgstr "অদ্বিতীয়"
+
+#: ../tools/net_applet:61
+#, fuzzy, c-format
+msgid "Network is up on interface %s."
+msgstr "নেটওয়ার্ট %s ইন্টারফেস এ চালু আছে"
+
+#: ../tools/net_applet:62
+#, fuzzy, c-format
+msgid "IP address: %s"
+msgstr "আক্রমনকারীর IP অ্যাড্রেস: %s"
+
+#: ../tools/net_applet:63
+#, fuzzy, c-format
+msgid "Gateway: %s"
+msgstr "গেটওয়ে:"
+
+#: ../tools/net_applet:64
+#, c-format
+msgid "Connected to %s (link level: %d %%)"
+msgstr ""
+
+#: ../tools/net_applet:66
+#, fuzzy, c-format
+msgid "Network is down on interface %s."
+msgstr "নেটওয়ার্ট %s ইন্টারফেস এ চালু আছে"
+
+#: ../tools/net_applet:74 ../tools/net_monitor:468
+#, c-format
+msgid "Connect %s"
+msgstr "%s সংযুক্ত করো"
+
+#: ../tools/net_applet:75 ../tools/net_monitor:468
+#, c-format
+msgid "Disconnect %s"
+msgstr "%s বিচ্ছিন্ন করো"
+
+#: ../tools/net_applet:76
+#, c-format
+msgid "Monitor Network"
+msgstr "নেটওয়ার্ক মনিটর"
+
+#: ../tools/net_applet:78
+#, c-format
+msgid "Manage wireless networks"
+msgstr ""
+
+#: ../tools/net_applet:80
+#, fuzzy, c-format
+msgid "Manage VPN connections"
+msgstr "সংযোগ ব্যবস্থাপনা"
+
+#: ../tools/net_applet:84
+#, c-format
+msgid "Configure Network"
+msgstr "নেটওয়ার্ক কনফিগার"
+
+#: ../tools/net_applet:86
+#, c-format
+msgid "Watched interface"
+msgstr "যে সব ইন্টারফেসের উপর নজর রাখা হয়েছে"
+
+#: ../tools/net_applet:87 ../tools/net_applet:88 ../tools/net_applet:90
+#, c-format
+msgid "Auto-detect"
+msgstr "সয়ং-সনাক্ত"
+
+#: ../tools/net_applet:95
+#, c-format
+msgid "Active interfaces"
+msgstr ""
+
+#: ../tools/net_applet:119
+#, c-format
+msgid "Profiles"
+msgstr "প্রোফাইলসমূহ"
+
+#: ../tools/net_applet:137
+#, c-format
+msgid "Get Online Help"
+msgstr "অনলাইন সহায়তা নিন"
+
+#: ../tools/net_applet:318
+#, fuzzy, c-format
+msgid "Network connection"
+msgstr "নেটওয়ার্ক অপশন"
+
+#: ../tools/net_applet:438
+#, c-format
+msgid "More networks"
+msgstr ""
+
+#: ../tools/net_applet:465
+#, c-format
+msgid "Interactive Firewall automatic mode"
+msgstr ""
+
+#: ../tools/net_applet:470
+#, c-format
+msgid "Always launch on startup"
+msgstr "সবসময় স্টার্টআপে আরম্ভ করো"
+
+#: ../tools/net_applet:475
+#, fuzzy, c-format