Hinzugefügt:
authorms <ms@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Tue, 6 Jun 2006 19:12:22 +0000 (19:12 +0000)
committerms <ms@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Tue, 6 Jun 2006 19:12:22 +0000 (19:12 +0000)
  * Morningreconnect Script
Geändert:
  * Neue Spamassassin Version. 3.1.3
  * Interface umfangreich bearbeitet in Layout und angezeigten Texten.
  * DHCP-Leases-Error gefixt
  * lq-Graph pingt nun nach www.heise.de
  * IP-Anzeige für PPPoE/DSL gefixt.
  * Connectionstate vom IPCop übernommen.

git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@164 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8

43 files changed:
config/cfgroot/header.pl
html/cgi-bin/aliases.cgi
html/cgi-bin/backup.cgi
html/cgi-bin/changepw.cgi
html/cgi-bin/connections.cgi
html/cgi-bin/credits.cgi
html/cgi-bin/ddns.cgi
html/cgi-bin/dhcp.cgi
html/cgi-bin/dial.cgi
html/cgi-bin/dmzholes.cgi
html/cgi-bin/fwhits.cgi
html/cgi-bin/graphs.cgi
html/cgi-bin/gui.cgi
html/cgi-bin/hosts.cgi
html/cgi-bin/ids.cgi
html/cgi-bin/index.cgi
html/cgi-bin/ipinfo.cgi
html/cgi-bin/logs.cgi/config.dat
html/cgi-bin/logs.cgi/firewalllog.dat
html/cgi-bin/logs.cgi/ids.dat
html/cgi-bin/logs.cgi/log.dat
html/cgi-bin/logs.cgi/proxylog.dat
html/cgi-bin/logs.cgi/summary.dat
html/cgi-bin/modem.cgi
html/cgi-bin/netstatus.cgi
html/cgi-bin/optionsfw.cgi
html/cgi-bin/pakfire.cgi
html/cgi-bin/portfw.cgi
html/cgi-bin/pppsetup.cgi
html/cgi-bin/proxygraphs.cgi
html/cgi-bin/remote.cgi
html/cgi-bin/shaping.cgi
html/cgi-bin/shutdown.cgi
html/cgi-bin/status.cgi
html/cgi-bin/upload.cgi
html/cgi-bin/vpnmain.cgi
html/cgi-bin/wireless.cgi
html/cgi-bin/xtaccess.cgi
langs/de/cgi-bin/de.pl
lfs/spamassassin
src/rc.d/rc.sysinit
src/scripts/makegraphs
src/scripts/morningreconnect [new file with mode: 0644]

index d07a213..04ed281 100644 (file)
@@ -189,9 +189,9 @@ sub genmenu {
                                'enabled' => 1,
                                };
     $substatus->{'06.fwhits'} = {
-                                 'caption' => 'Firewallhits',
+                                 'caption' => 'Firewall-Diagramme',
                                  'uri' => '/cgi-bin/fwhits.cgi',
-                                 'title' => "IPFire Firewallhits",
+                                 'title' => "Firewall-Diagramme",
                                 'enabled' => 1,
                                  };
     $substatus->{'07.connections'} = {
@@ -290,7 +290,7 @@ sub genmenu {
     $subservices->{'06.ids'} = {'caption' => $tr{'intrusion detection'},
                                'enabled' => 1,
                                'uri' => '/cgi-bin/ids.cgi',
-                               'title' => "$tr{'intrusion detection system'} (Snort)",
+                               'title' => "$tr{'intrusion detection system'}",
                                };
 
 
@@ -320,7 +320,7 @@ sub genmenu {
     $subfirewall->{'04.dmz'} = {
                                'caption' => $tr{'ssdmz pinholes'},
                                'uri' => '/cgi-bin/dmzholes.cgi',
-                               'title' => "$tr{'ssdmz pinhole'}",
+                               'title' => "$tr{'dmz pinhole configuration'}",
                                'enabled' => 1,
                                 };
     $subfirewall->{'05.outgoing'} = {
@@ -351,7 +351,7 @@ sub genmenu {
                                 };
     $sublogs->{'03.proxy'} = {'caption' => $tr{'proxy logs'},
                                 'uri' => '/cgi-bin/logs.cgi/proxylog.dat',
-                                'title' => "$tr{'proxy log'}",
+                                'title' => "$tr{'proxy logs'}",
                                 'enabled' => 1
                                 };
     $sublogs->{'04.firewall'} = {'caption' => $tr{'firewall logs'},
@@ -377,7 +377,7 @@ sub genmenu {
                                };
     $sublogs->{'09.system'} = {'caption' => $tr{'system logs'},
                                'uri' => '/cgi-bin/logs.cgi/log.dat',
-                               'title' => "$tr{'system log'}",
+                               'title' => "$tr{'system logs'}",
                                'enabled' => 1
                                };
     $sublogs->{'10.userlog'} = {'caption' => $tr{'user proxy logs'},
@@ -388,19 +388,19 @@ sub genmenu {
 
     my %subipfirehash = ();
     my $subipfire = \%subipfirehash;
-    $subipfire->{'01.pakfire'} = {'caption' => $tr{'pakfire'},
+    $subipfire->{'01.pakfire'} = {'caption' => 'Pakfire',
                                  'uri' => '/cgi-bin/pakfire.cgi',
-                                 'title' => "$tr{'paketmanager'}",
+                                 'title' => "Pakfire",
                                  'enabled' => 1,
                                  };
-    $subipfire->{'02.asterisk'} = {'caption' => $tr{'asterisk'},
+    $subipfire->{'02.asterisk'} = {'caption' => 'Asterisk',
                                  'uri' => '/cgi-bin/asterisk.cgi',
-                                 'title' => "$tr{'asterisk'}",
+                                 'title' => "Asterisk",
                                  'enabled' => 1,
                                  };
-    $subipfire->{'02.samba'} = {'caption' => $tr{'samba'},
+    $subipfire->{'02.samba'} = {'caption' => 'Samba',
                                  'uri' => '/cgi-bin/samba.cgi',
-                                 'title' => "$tr{'samba'}",
+                                 'title' => "Samba",
                                  'enabled' => 1,
                                  };
     $subipfire->{'99.help'} = {'caption' => $tr{'help'},
@@ -1235,33 +1235,125 @@ sub cleanhtml
        $outstring =~ s/>/&gt;/g;
        return $outstring;
 }
+
 sub connectionstatus
 {
-        my $status;
-        opendir UPLINKS, "/var/ipfire/uplinks" or die "Cannot read uplinks: $!";
-                foreach my $uplink (sort grep !/^\./, readdir UPLINKS) {
-                    if ( -f "${swroot}/uplinks/${uplink}/active") {
-                        if ( ! $status ) {
-                                $timestr = &age("${swroot}/uplinks/${uplink}/active");
-                                $status = "$tr{'connected'}: $uplink (<span class='ipcop_StatusBigRed'>$timestr</span>) ";
-                        } else {
-                                $timestr = &age("${swroot}/uplinks/${uplink}/active");
-                                $status = "$status , $uplink (<span class='ipcop_StatusBigRed'>$timestr</span>) ";
-                        }
-                    } elsif ( -f "${swroot}/uplinks/${uplink}/connecting") {
-                        if ( ! $status ) {
-                                $status = "$tr{'connecting'} $uplink";
-                        } else {
-                                $status = "$status , $tr{'connecting'} $uplink (<span class='ipcop_StatusBigRed'>$timestr</span>) ";
-                        }
-                    }
-                    $lines++;
-                }
-                closedir(UPLINKS);
-                if ( ! $status ) {
-                        $status = "$tr{'idle'}";
-                }
-                $connstate = "<span class='ipcop_StatusBig'>$status</span>";
+    my %pppsettings = ();
+    my %netsettings = ();
+    my $iface='';
+
+    $pppsettings{'PROFILENAME'} = 'None';
+    &General::readhash("${General::swroot}/ppp/settings", \%pppsettings);
+    &General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
+
+    my $profileused='';
+    if ( ! ( $netsettings{'CONFIG_TYPE'} =~ /^(2|3|6|7)$/ && $netsettings{'RED_TYPE'} =~ /^(DHCP|STATIC)$/ ) ) {
+       $profileused="- $pppsettings{'PROFILENAME'}";
+    }
+
+    if ( ( $pppsettings{'METHOD'} eq 'DHCP' && $netsettings{'RED_TYPE'} ne 'PPTP') 
+                                               || $netsettings{'RED_TYPE'} eq 'DHCP' ) {
+               if (open(IFACE, "${General::swroot}/red/iface")) {
+                       $iface = <IFACE>;
+                       close IFACE;
+                       chomp ($iface);
+                       $iface =~ /([a-zA-Z0-9]*)/; $iface = $1;
+               }
+    }
+
+    my ($timestr, $connstate);
+    if ($netsettings{'CONFIG_TYPE'} =~ /^(0|1|4|5)$/ &&  $pppsettings{'TYPE'} =~ /^isdn/) {
+       # Count ISDN channels
+       my ($idmap, $chmap, $drmap, $usage, $flags, $phone);
+       my @phonenumbers;
+       my $count=0;
+
+       open (FILE, "/dev/isdninfo");
+
+       $idmap = <FILE>; chop $idmap;
+       $chmap = <FILE>; chop $chmap;
+       $drmap = <FILE>; chop $drmap;
+       $usage = <FILE>; chop $usage;
+       $flags = <FILE>; chop $flags;
+       $phone = <FILE>; chop $phone;
+
+       $phone =~ s/^phone(\s*):(\s*)//;
+
+       @phonenumbers = split / /, $phone;
+
+       foreach (@phonenumbers) {
+               if ($_ ne '???') {
+                       $count++;
+               }
+       }
+       close (FILE);
+
+       ## Connection status
+       my $number;
+       if ($count == 0) {
+               $number = 'none!';
+       } elsif ($count == 1) {
+               $number = 'single';
+       } else {
+               $number = 'dual';
+       }
+
+       if (-e "${General::swroot}/red/active") {
+               $timestr = &General::age("${General::swroot}/red/active");
+               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} - $number channel (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused</span>";
+       } else {
+               if ($count == 0) {
+                       if (-e "${General::swroot}/red/dial-on-demand") {
+                               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'dod waiting'} $profileused</span>";
+                       } else {
+                               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'idle'} $profileused</span>";
+                       }
+               } else {
+                       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connecting'} $profileused</span>";
+               }
+       }
+    } elsif ($netsettings{'RED_TYPE'} eq "STATIC" || $pppsettings {'METHOD'} eq 'STATIC') {
+       if (-e "${General::swroot}/red/active") {
+               $timestr = &General::age("${General::swroot}/red/active");
+               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused</span>";
+       } else {
+               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'idle'} $profileused</span>";
+       }
+    } elsif ( ( (-e "${General::swroot}/dhcpc/dhcpcd-$iface.pid") && $netsettings{'RED_TYPE'} ne 'PPTP' ) || 
+       !system("/bin/ps -ef | /bin/grep -q '[p]ppd'") || !system("/bin/ps -ef | /bin/grep -q '[c]onnectioncheck'")) {
+       if (-e "${General::swroot}/red/active") {
+               $timestr = &General::age("${General::swroot}/red/active");
+               if ($pppsettings{'TYPE'} =~ /^(modem|bewanadsl|conexantpciadsl|eagleusbadsl)$/) {
+                       my $speed;
+                       if ($pppsettings{'TYPE'} eq 'modem') {
+                               open(CONNECTLOG, "/var/log/connect.log");
+                               while (<CONNECTLOG>) {
+                                       if (/CONNECT/) {
+                                               $speed = (split / /)[6];
+                                       }
+                               }
+                               close (CONNECTLOG);
+                       } elsif ($pppsettings{'TYPE'} eq 'bewanadsl') {
+                               $speed = `/usr/bin/unicorn_status | /bin/grep Rate | /usr/bin/cut -f2 -d ':'`;
+                       } elsif ($pppsettings{'TYPE'} eq 'conexantpciadsl') {
+                               $speed = `/bin/cat /proc/net/atm/CnxAdsl:* | /bin/grep 'Line Rates' | /bin/sed -e 's+Line Rates:   Receive+Rx+' -e 's+Transmit+Tx+'`;
+                       } elsif ($pppsettings{'TYPE'} eq 'eagleusbadsl') {
+                               $speed = `/usr/sbin/eaglestat | /bin/grep Rate`;
+                       }
+                       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused (\@$speed)</span>";
+               } else {
+                       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused</span>";
+               }
+       } else {
+               if (-e "${General::swroot}/red/dial-on-demand") {
+                   $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'dod waiting'} $profileused</span>";
+               } else {
+                   $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connecting'} $profileused</span>";
+               }
+       }
+    } else {
+       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'idle'} $profileused</span>";
+    }
     return $connstate;
 }
 
@@ -1392,7 +1484,7 @@ sub PrintActualLeases
 END
     ;
 
-    open(LEASES,"/var/lib/dhcp/dhcpd.leases") or die "Can't open dhcpd.leases";
+    open(LEASES,"/var/state/dhcp/dhcpd.leases") or die "Can't open dhcpd.leases";
     while ($line = <LEASES>) {
        next if( $line =~ /^\s*#/ );
        chomp($line);
index d32d842..b75a015 100644 (file)
@@ -17,7 +17,7 @@ use strict;
 #use Carp ();
 #local $SIG{__WARN__} = \&Carp::cluck;
 
-require 'CONFIG_ROOT/general-functions.pl';    # replace CONFIG_ROOT with /var/ipfire in case of manual install
+require '/var/ipfire/general-functions.pl';    # replace /var/ipfire with /var/ipfire in case of manual install
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index eab30eb..0948b77 100644 (file)
@@ -22,7 +22,7 @@ use strict;
 use File::Copy;
 use Sys::Hostname;
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 09a1bcc..037a8a5 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 9a0f2ac..43927f5 100644 (file)
@@ -23,7 +23,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 895a870..0fdbdc2 100644 (file)
@@ -13,7 +13,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -36,6 +36,8 @@ Projektleiter - Michael Tremer
 (<a href='mailto:m.s.tremer\@gmail.com'>m.s.tremer\@gmail.com</a>)<br />
 Projektmitglied &amp; Sponsor - Detlef Lampart
 (<a href='mailto:info\@delaco.de'>info\@delaco.de</a>)<br />
+Projektmitglied &amp; Developer - Heiner Irgendwas...
+(<a href='mailto:email\@fehlt.com'>email\@fehlt.com</a>)<br />
 Projektmitglied &amp; Supporter - Silvio Rechenbach
 (<a href='mailto:sr\@tne.de'>sr\@tne.de</a>)<br />
 Sponsor - Karsten Rechenbach
index 3e6d549..1de2d90 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 11fbb6a..f09b35f 100644 (file)
@@ -25,7 +25,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 #workaround to suppress a warning when a variable is used only once
index 67b40b0..8f4a51f 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 5421284..26275ae 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 3b209ee..58da565 100755 (executable)
@@ -28,43 +28,43 @@ my $graphdir = "/home/httpd/html/graphs";
 my @LOCALCHECK=();
 my $errormessage="";
 
-&Header::openpage('firewall graphs', 1, ' <META HTTP-EQUIV="Refresh" CONTENT="300"> <META HTTP-EQUIV="Cache-Control" content="no-cache"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> ');
+&Header::openpage($Lang::tr{'firewall graphs'}, 1, ' <META HTTP-EQUIV="Refresh" CONTENT="300"> <META HTTP-EQUIV="Cache-Control" content="no-cache"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> ');
 
 &Header::openbigbox('100%', 'left', '', $errormessage);
 print <<END;
 <table width="100%" align="center">
        <tr>
                <td align="left">
-                       <a href=/cgi-bin/fwhits.cgi?graph=line>show lines</a>
+                       <a href=/cgi-bin/fwhits.cgi?graph=line>$Lang::tr{'show lines'}</a>
                        &nbsp;
-                       <a href=/cgi-bin/fwhits.cgi?graph=area>show areas</a>
+                       <a href=/cgi-bin/fwhits.cgi?graph=area>$Lang::tr{'show areas'}</a>
                </td>
        </tr>
 </table>
 END
 if ($cgigraphs[1] eq "line") {
-               &Header::openbox('100%', 'center', "daily firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"daily firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-day-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-day-line.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "weekly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"weekly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-week-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-week-line.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "monthly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"monthly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-month-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-month-line.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "yearly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"yearly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-year-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-year-line.png' border='0' />";
@@ -73,28 +73,28 @@ if ($cgigraphs[1] eq "line") {
 }
 else
 {
-               &Header::openbox('100%', 'center', "daily firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"daily firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-day-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-day-area.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "weekly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"weekly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-week-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-week-area.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "monthly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"monthly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-month-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-month-area.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "yearly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"yearly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-year-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-year-area.png' border='0' />";
index 8f590d3..a294596 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 991a31f..6d7c101 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 7d68028..531ecee 100644 (file)
@@ -17,7 +17,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index df5f1c7..dee7cfc 100644 (file)
@@ -18,7 +18,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 9233628..8d7af10 100644 (file)
@@ -67,21 +67,17 @@ my $dialButtonDisabled = "disabled='disabled'";
 &Header::openbigbox('', 'center');
 &Header::openbox('100%', 'center', &Header::cleanhtml(`/bin/uname -n`,"y"));
 
-if ( ( $pppsettings{'VALID'} eq 'yes'&& $modemsettings{'VALID'} eq 'yes' ) || ( $netsettings{'CONFIG_TYPE'} =~ /^(2|3|6|7)$/ && $netsettings{'RED_TYPE'} =~ /^(DHCP|STATIC)$/ )) {
-       if ($connstate =~ /$Lang::tr{'connected'}/) {
-           if ($ddnssettings{'BEHINDROUTER'} eq 'FETCH_IP') {
-               if (open(IPADDR,"${General::swroot}/ddns/ipcache")) {
-                   $ipaddr = <IPADDR>;
-                   close IPADDR;
-                   chomp ($ipaddr);
-               }
-           }
-           if (open(IPADDR,"${General::swroot}/red/local-ipaddress")) {
-               my $ipaddr = <IPADDR>;
-               close IPADDR;
-               chomp ($ipaddr);
-           }
-        }
+if ( ( $pppsettings{'VALID'} eq 'yes' && $modemsettings{'VALID'} eq 'yes' ) || ( $netsettings{'CONFIG_TYPE'} =~ /^(2|3|6|7)$/ && $netsettings{'RED_TYPE'} =~ /^(DHCP|STATIC)$/ )) {
+       if (open(IPADDR,"${General::swroot}/ddns/ipcache")) {
+           $ipaddr = <IPADDR>;
+           close IPADDR;
+           chomp ($ipaddr);
+       }
+       if (open(IPADDR,"${General::swroot}/red/local-ipaddress")) {
+           my $ipaddr = <IPADDR>;
+           close IPADDR;
+           chomp ($ipaddr);
+       }
 } elsif ($modemsettings{'VALID'} eq 'no') {
        print "$Lang::tr{'modem settings have errors'}\n </b></font>\n";
 } else {
index 258fff3..fbf6522 100644 (file)
@@ -18,7 +18,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 7ad2eb8..43bc3bc 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index b48b009..3857f7d 100644 (file)
@@ -20,7 +20,7 @@ use Getopt::Std;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index aa76202..23d8042 100644 (file)
@@ -18,7 +18,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 854bad4..e2eaa84 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -250,7 +250,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'export'})
 
 &Header::showhttpheaders();
 
-&Header::openpage($Lang::tr{'firewall log'}, 1, '');
+&Header::openpage($Lang::tr{'system logs'}, 1, '');
 
 &Header::openbigbox('100%', 'left', '', $errormessage);
 
index 70208b9..9c0176f 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 273a862..1efe8b7 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index bb75a69..4d05374 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 8cad1fb..bde5bf2 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 775f51f..5e1dceb 100644 (file)
@@ -16,7 +16,7 @@
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 41845e4..84662a8 100644 (file)
@@ -17,7 +17,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -50,7 +50,7 @@ $checked{'AUTOUPD'}{'off'} = '';
 $checked{'AUTOUPD'}{'on'} = '';
 $checked{'AUTOUPD'}{$pakfiresettings{'AUTOUPD'}} = "checked='checked'";
 
-&Header::openpage($Lang::tr{'pakfire configuration'}, 1, $refresh);
+&Header::openpage($Lang::tr{'pakfire configuration'}, 1);
 
 &Header::openbigbox('100%', 'left', '', $errormessage);
 
index bd3333b..91ccbf5 100644 (file)
@@ -30,7 +30,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index aca632b..93098ad 100644 (file)
@@ -19,7 +19,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 406fe9b..459af06 100644 (file)
@@ -11,7 +11,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index ec4424d..78f714f 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 75b9451..9ea446d 100644 (file)
@@ -13,7 +13,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index cd0ace7..79717e2 100644 (file)
@@ -13,7 +13,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index ac560f8..b195106 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -41,7 +41,7 @@ my %servicenames =
        $Lang::tr{'secure shell server'} => 'sshd',
        $Lang::tr{'vpn'} => 'pluto',
        $Lang::tr{'web proxy'} => 'squid',
-       $Lang::tr{'openvpn'} => 'openvpn'
+       'OpenVPN' => 'openvpn'
 );
 
 my $iface = '';
index 6bc955e..e2394cb 100644 (file)
@@ -16,7 +16,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 2a30d03..28f5b15 100644 (file)
@@ -30,7 +30,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index d73df70..3964835 100644 (file)
@@ -17,7 +17,7 @@ use Time::Local;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 0ba8075..67f20a7 100644 (file)
@@ -16,7 +16,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index cc52299..4e5ec8e 100644 (file)
 %tr, 
 
 'a ca certificate with this name already exists' => 'Ein CA-Zertifikat mit diesem Namen existiert bereits.', 
-'access allowed' => 'Zugriff erlaubt von:', 
+'access allowed' => 'Zugriff erlaubt von', 
 'access refused with this oinkcode' => 'Zugriff mit diesem Oink Code verweigert', 
 'a connection with this common name already exists' => 'Eine Verbindung mit diesem gemeinsamen Namen existiert bereits.', 
 'a connection with this name already exists' => 'Eine Verbindung mit diesem Namen existiert bereits.', 
 'action' => 'Aktion', 
-'add a host' => 'Host hinzufügen:', 
-'add a new rule' => 'Neue Regel hinzufügen:', 
+'add a host' => 'Host hinzufügen', 
+'add a new rule' => 'Neue Regel hinzufügen', 
 'add device' => 'Gerät hinzufügen', 
 'added from dhcp lease list' => 'hinzugefügt von der DHCP Zuordnungsliste', 
 'add' => 'Hinzufügen', 
 'add network' => 'Netzwerk hinzufügen', 
-'add new alias' => 'Neue Alias-Adresse hinzufügen:', 
+'add new alias' => 'Neue Alias-Adresse hinzufügen', 
 'add new lease' => 'Neue Zuordnung definieren', 
 'add service' => 'Dienst hinzufügen', 
 'add xtaccess' => 'Externen Zugang hinzugefügt', 
-'administrator user password' => 'Passwort für Benutzer &quot;admin&quot;:', 
+'administrator user password' => 'Passwort für Benutzer &quot;admin&quot;', 
 'admin user password has been changed' => 'Passwort für Benutzer admin wurde geändert.', 
 'adsl settings' => 'ADSL-Einstellungen', 
 'advanced' => 'Erweitert', 
-'again' => 'Wiederholung:', 
-'alcatelusb help' => 'Um das Speedtouch USB Modem zu verwenden, müssen Sie die Firmware in Ihre IPFire Box hochladen. Bitte laden sie das <b>Embedded Firmware</b> Paket von speedtouch.com herunter, entpacken es und laden dann die passende Datei für Ihr Modem hoch: KQD6_3.xxx für Revisionsnummern <4 oder ZZZL_3.xxx für Rev.=4 mittels des unten angegebenen Formulars.', 
+'again' => 'Wiederholung', 
+'alcatelusb help' => 'Um das Speedtouch USB Modem zu verwenden, müssen Sie die Firmware in Ihre IPFire Box hochladen. Bitte laden sie das <b>Embedded Firmware</b> Paket von speedtouch.com herunter, entpacken es und laden dann die passende Datei für Ihr Modem hoch KQD6_3.xxx für Revisionsnummern <4 oder ZZZL_3.xxx für Rev.=4 mittels des unten angegebenen Formulars.', 
 'alcatelusb upload' => 'Speedtouch USB Firmware hochladen', 
 'aliases' => 'Aliase', 
 'aliases not active' => 'Aliase-Adresse wird erst aktiviert, wenn Ihr ROTES Interface STATISCH ist', 
 'april' => 'April', 
 'archive not exist' => 'Konfigurationsarchiv existiert nicht', 
 'are you sure' => 'Sind Sie sicher?', 
-'arp table entries' => 'Einträge der ARP-Tabelle:', 
+'arp table entries' => 'Einträge der ARP-Tabelle', 
 'august' => 'August', 
-'authentication' => 'Authentifizierung:', 
+'authentication' => 'Authentifizierung', 
 'automatic' => 'Automatisch', 
-'available updates' => 'Verfügbare Updates:', 
+'available updates' => 'Verfügbare Updates', 
 'average' => 'Durchschnitt', 
 'avoid dod' => 'Benutzen Sie diese Option nicht mit Dial on Demand! Wird hautpsächlich verwendet, wenn ihr IPFire sich hinter einem Router befindet. Ihre ROTE IP muß sich innerhalb eines der drei reservierten Netzwerkbereiche befinden z.B. 10/8, 172.16/12, 192.168/16.', 
 'backup config floppy' => 'Backup-Konfiguration - Diskette', 
-'backup configuration' => 'Backup-Konfiguration:', 
+'backup configuration' => 'Backup-Konfiguration', 
 'backup' => 'Datensicherung', 
 'backupprofile' => 'Falls die Wiederverbindung scheitert, auf Profil umschalten', 
 'backup sets' => 'Datensicherungssätze', 
 'bad characters in script field' => 'Nicht erlaubte Zeichen im Skriptnamen', 
 'bad characters in the telephone number field' => 'Nicht erlaubte(s) Zeichen im Feld Telefonnummer.', 
 'bad destination range' => 'Der erste Wert des Zielportbereichs ist größer oder gleich dem zweiten Wert.', 
-'bad ignore filter' => 'Falscher &quot;Ignorieren&quot;-Filter:', 
+'bad ignore filter' => 'Falscher &quot;Ignorieren&quot;-Filter', 
 'bad return code' => 'Das Hilfsprogramm hat einen Fehlercode gemeldet', 
 'bad source range' => 'Der erste Wert des Quellportbereich ist größer oder gleich dem zweiten Wert.', 
 'beep when ppp connects or disconnects' => 'Piepen, wenn IPFire verbindet oder trennt', 
-'behind a proxy' => 'Hinter einem Proxy:', 
+'behind a proxy' => 'Hinter einem Proxy', 
 'bewan adsl pci st' => 'Bewan ADSL PCI ST', 
 'bewan adsl usb' => 'Bewan ADSL USB', 
 'blue access' => 'Zugriff auf Blau', 
@@ -98,7 +98,7 @@
 'cached memory' => 'Cache Speicher', 
 'cached' => 'zwischengespeichert', 
 'cache management' => 'Cache Verwaltung', 
-'cache size' => 'Cache-Größe (MB):', 
+'cache size' => 'Cache-Größe (MB)', 
 'ca name' => 'CA Name', 
 'cancel' => 'Abbrechen', 
 'cannot enable both nat traversal and compression' => 'NAT Traversal und Kompression können nicht gleichzeitig aktiviert sein.', 
 'clock has not been synchronized' => 'Die Uhr wurde nicht synchronisiert', 
 'clock last synchronized at' => 'Die Uhr wurde zuletzt synchronisiert um', 
 'common name' => 'Gemeinsamer Name', 
-'compression' => 'Kompression:', 
-'computer to modem rate' => 'Übertragungsrate zwischen Computer und Modem:', 
-'concentrator name' => 'Name des Konzentrators:', 
+'compression' => 'Kompression', 
+'computer to modem rate' => 'Übertragungsrate zwischen Computer und Modem', 
+'concentrator name' => 'Name des Konzentrators', 
 'confirmation' => 'Bestätigung', 
 'connected' => 'Verbunden', 
 'connecting' => 'Baue Verbindung auf...', 
 'connection debugging' => 'Verbindungs-Debugging', 
 'connections are associated with this ca.  deleting the ca will delete these connections as well.' => 'Es sind noch Verbindungen mit dieser CA verknüpft.  Das Löschen dieser CA wird diese Verbindungen ebenfalls löschen.', 
-'connection status and controlc' => 'Verbindungsstatus und -kontrolle:', 
+'connection status and controlc' => 'Verbindungsstatus und -kontrolle', 
 'connections' => 'Verbindungen', 
 'connection tracking' => 'IPTables-Verbindungsverfolgung', 
 'connection type is invalid' => 'Verbindungstyp ist ungültig', 
 'connection' => 'Verbindung', 
 'connect on ipfire restart' => 'Verbinden bei IPFire-Neustart', 
 'connect the modem' => 'Das Modem anschließen', 
-'connect timeout' => 'Anwahl-Wartezeit:', 
+'connect timeout' => 'Anwahl-Wartezeit', 
 'could not be opened' => 'konnte nicht geöffnet werden', 
 'could not connect to' => 'Konnte keine Verbindung herstellen mit', 
 'could not connect to www ipfire org' => 'Keine Verbindung zu www.ipfire.org möglich', 
 'country' => 'Land', 
 'cpu usage per' => 'CPU-Nutzung pro', 
 'create' => 'Erzeuge', 
-'credits' => 'Dank an ..', 
+'credits' => 'Credits', 
 'cron server' => 'Cron-Server', 
 'current' => 'Aktuell', 
-'current aliases' => 'Aktuelle Alias-Adresse:', 
+'current aliases' => 'Aktuelle Alias-Adresse', 
 'current dhcp leases on blue' => 'Aktuelle DHCP Zuordnungen auf Blau', 
 'current dynamic leases' => 'Aktuelle dynamische Zuordnungen', 
 'current fixed leases' => 'Aktuelle feste Zuordnungen', 
-'current hosts' => 'Aktuelle Hosts:', 
-'current profile' => 'Aktuelles Profil:', 
-'current rules' => 'Aktuelle Regeln:', 
+'current hosts' => 'Aktuelle Hosts', 
+'current profile' => 'Aktuelles Profil', 
+'current rules' => 'Aktuelle Regeln', 
 'custom networks' => 'Benutzerdefinierte Netzwerke', 
 'custom services' => 'Benutzerdefinierte Dienste', 
+'daily firewallhits' => 'Tägliche Firewalltreffer', 
 'date' => 'Datum', 
 'date not in logs' => 'Für den gesuchten Tag existiert kein (oder nur ein unvollständiges) Log', 
 'dat without key' => 'Ein verschlüsseltes Archiv kann ohne Schlüssel nicht wiederhergestellt werden.', 
 'ddns hostname added' => 'Hostname für dynamischen DNS hinzugefügt', 
 'ddns hostname modified' => 'Hostname für dynamischen DNS geändert', 
 'ddns hostname removed' => 'Hostname für dynamischen DNS gelöscht', 
-'ddns minimize updates' => 'Updates minimieren: Vergleicht vor einem Update die DNS-IP-Adresse für Hostname "[host.]domain" gegen die ROTE IP-Addresse.', 
+'ddns minimize updates' => 'Updates minimieren Vergleicht vor einem Update die DNS-IP-Adresse für Hostname "[host.]domain" gegen die ROTE IP-Addresse.', 
 'ddns noip prefix' => 'Um no-ip im Gruppenmodus zu benutzen, dem Hostnamen <b>%</b> hinzufügen', 
 'december' => 'Dezember', 
-'default lease time' => 'Haltezeit-Voreinstellung in min:', 
+'default lease time' => 'Haltezeit-Voreinstellung in min', 
 'default networks' => 'Standard Netzwerke', 
 'default renewal time' => 'Standard-Aktualisierungszeit', 
 'default services' => 'Standard Dienste', 
 'destination port overlaps' => 'Der Zielportbereich überlappt einen bereits bestehenden Portbereich.', 
 'destination port' => 'Ziel-Port', 
 'destination' => 'Ziel', 
-'dest ip and port' => 'Ziel-IP:Port', 
+'dest ip and port' => 'Ziel-IPPort', 
 'detail level' => 'Detaillierungsgrad', 
 'device' => 'Gerät', 
 'devices on blue' => 'Geräte auf Blau', 
 'dhcp server disabled on blue interface' => 'DHCP-Server auf BLAUER Schnittstelle deaktiviert', 
 'dhcp server enabled' => 'DHCP-Server aktiviert. Starte neu.', 
 'dhcp server enabled on blue interface' => 'DHCP-Server auf BLAUER Schnittstelle aktviert', 
-'dialing mode' => 'Wählmodus:', 
+'dialing mode' => 'Wählmodus', 
 'dial profile' => 'Verbinden mit Profil',
 'dialup settings' => 'Einwahl-Einstellungen', 
 'dial user password has been changed' => 'Passwort für Benutzer -dial- wurde geändert.', 
-'dial user password' => 'Passwort für Benutzer &quot;dial&quot;:', 
+'dial user password' => 'Passwort für Benutzer &quot;dial&quot;', 
 'dial' => 'Verbinden', 
 'disk access per' => 'Plattenzugriff je', 
-'disk usage' => 'Festplattenbelegung:', 
+'disk usage' => 'Festplattenbelegung', 
 'display' => 'Anzeige', 
 'display hostname in window title' => 'Hostname im Fenstertitel anzeigen', 
 'dmz' => 'DMZ', 
-'dmz pinhole configuration' => 'Einstellungen des DMZ-Schlupfloches', 
+'dmz pinhole configuration' => 'DMZ-Schlupflöcher', 
 'dmz pinhole rule added' => 'Regel für DMZ-Schlupfloch hinzugefügt; Starte DMZ-Schlupfloch neu', 
 'dmz pinhole rule removed' => 'Regel für DMZ-Schlupfloch entfernt; Starte DMZ-Schlupfloch neu', 
 'dmzpinholes for same net not necessary' => 'DMZ-Schlupflöcher werden im gleichen Netz nicht benötigt. Wählen Sie ein anderes Quell- oder Ziel-Netz.', 
 'dns check failed' => 'Fehler bei DNS-Überprüfung', 
 'dns proxy server' => 'DNS-Proxyserver', 
 'dod' => 'Dial-on-Demand-Modus', 
-'dod for dns' => 'Dial-on-Demand für DNS:', 
+'dod for dns' => 'Dial-on-Demand für DNS', 
 'dod not compatible with ddns' => 'Dial on Demand ist nicht kompatibel mit dynamischen DNS Diensten', 
 'dod waiting' => 'Dial On Demand wartet', 
 'domain' => 'Domain', 
 'domain name' => 'Domainname', 
-'domain name suffix' => 'Domain-Name-Suffix:', 
+'domain name suffix' => 'Domain-Name-Suffix', 
 'domain not set' => 'Domain nicht eingegeben.', 
 'do not log this port list' => 'Verwerfe diese Port-Liste kurz bevor sie protokolliert werden (reduziert Protokollgröße)', 
 'downlink speed' => 'Downlink-Geschwindigkeit (kBit/sek)', 
 'duplicate name' => 'Dieser Name wird bereits benutzt. Bitte wählen Sie einen anderen.', 
 'dynamic dns client' => 'Dynamischer DNS-Client', 
 'dynamic dns' => 'Dynamischer DNS', 
-'dyn dns source choice' => 'Dynamic DNS Anbieter werden eine IP-Adresse für diesen IPFire erhalten von:', 
+'dyn dns source choice' => 'Dynamic DNS Anbieter werden eine IP-Adresse für diesen IPFire erhalten von', 
 'eciadsl help' => 'Um ein ECI PCI-Modem nutzen zu können, müssen Sie zuerst die Treiber-Software zur IPFire-Box hochladen. Laden Sie zuerst den Tarball von ECIADSL herunter und laden Sie dann die Datei <B>synch.bin</B> über das untenstehende Formblatt zu IPFire hoch.', 
 'eciadsl upload' => 'Hochladen der ECI ADSL Datei synch.bin', 
 'edit advanced settings when done' => 'Erweiterte Einstellungen bearbeiten, wenn fertig.', 
 'edit an existing alias' => 'Einen bestehenden Alias bearbeiten', 
 'edit an existing host' => 'Einen bestehenden Host hinzufügen', 
 'edit an existing lease' => 'Eine existierende Zuordnung bearbeiten', 
-'edit a rule' => 'Existierende Regel bearbeiten:', 
+'edit a rule' => 'Existierende Regel bearbeiten', 
 'edit' => 'Bearbeiten', 
 'edit device' => 'Gerät bearbeiten', 
 'edit hosts' => 'Hosts bearbeiten', 
 'edit network' => 'Netzwerk bearbeiten', 
 'edit service' => 'Dienst bearbeiten', 
-'eg' => 'z.B.:', 
+'eg' => 'z.B.', 
 'e-mail address too long' => 'E-mail Adresse ist zu lang; sie sollte nicht länger als 40 Zeichen sein.', 
 'empty' => 'Leer', 
-'enabled' => 'Aktiviert:', 
+'enabled' => 'Aktiviert', 
 'enabled on' => 'Aktiviert auf', 
 'enabledtitle' => 'Aktiviert', 
 'enable ignore filter' => '&quot;Ignorieren&quot;-Filter ein', 
 'enable javascript' => 'Javascript aktivieren', 
-'enable wildcards' => 'Wildcards erlauben:', 
+'enable wildcards' => 'Wildcards erlauben', 
 'encapsulation' => 'Encapsulation', 
 'encrypted' => 'Verschlüsselt', 
-'end address' => 'Endadresse:', 
+'end address' => 'Endadresse', 
 'err bk 1' => 'Fehler beim Erzeugen des Archivs', 
 'err bk 2 key' => 'Fehler beim Erzeugen der Schlüsseldatei', 
 'err bk 3 tar' => 'Fehler beim Anhängen der Datei ans Archiv', 
 'err bk 4 gz' => 'Fehler beim Komprimieren des Archivs', 
 'err bk 5 encrypt' => 'Fehler beim Verschlüsseln des Archivs', 
-'error messages' => 'Fehlermeldungen:', 
+'error messages' => 'Fehlermeldungen', 
 'err rs 1' => 'Fehler beim Wiederherstellen des Archivs', 
 'err rs 6 decrypt' => 'Fehler beim Entschlüsseln des Archivs', 
 'err rs 7 untartst' => 'Ungültiges entschlüsseltes Archiv', 
 'err rs 8 untar' => 'Fehler beim un-tar-en des Archivs', 
-'esp encryption' => 'ESP Verschlüsselung:', 
-'esp grouptype' => 'ESP Gruppentyp:', 
-'esp integrity' => 'ESP Integrität:', 
-'esp keylife' => 'Lebensdauer des ESP Schlüssels:', 
+'esp encryption' => 'ESP Verschlüsselung', 
+'esp grouptype' => 'ESP Gruppentyp', 
+'esp integrity' => 'ESP Integrität', 
+'esp keylife' => 'Lebensdauer des ESP Schlüssels', 
 'esp keylife should be between 1 and 24 hours' => 'ESP Schlüssel-Lebensdauer sollte zwischen 1 und 24 Stunden betragen.', 
 'every' => 'Jeden', 
 'excluding buffers and cache' => '-/+ Puffer/Zwischenspeicher', 
 'expected' => 'Erwartet', 
 'expires' => 'Ablaufdatum', 
 'export' => 'Export', 
-'external access configuration' => 'Einstellungen für externen Zugang', 
+'external access configuration' => 'Externer Zugang', 
 'external access' => 'Externer Zugang', 
 'external access rule added' => 'Regel für externen Zugang hinzugefügt; Starte Zugangskontroller neu', 
 'external access rule removed' => ' Regel für externen Zugang entfernt; Starte Zugangskontroller neu', 
 'filename' => 'Dateiname', 
 'filesystem full' => 'Dateisystem voll', 
 'firewall' => 'Firewall', 
+'firewall graphs' => 'Firewall-Diagramme', 
 'firewall hits' => 'Gesamtanzahl der Firewall-Treffer für', 
 'firewall log' => 'Firewall-Protokoll', 
 'firewall logs' => 'Firewall-Logdateien', 
 'gateway' => 'Gateway', 
 'gateway ip' => 'Gateway-IP', 
 'g.dtm' => 'G.dmt', 
-'generate a certificate' => 'Erzeuge ein Zertifikat:', 
+'generate a certificate' => 'Erzeuge ein Zertifikat', 
 'generate root/host certificates' => 'Erzeuge Root/Host Zertifikate', 
 'generating the root and host certificates may take a long time. it can take up to several minutes on older hardware. please be patient' => 'Die Erzeugung der Root und Host Zertifikate kann lange Zeit dauern.  Auf älterer Hardware kann es mehrere Minuten lang dauern. Bitte haben Sie etwas Geduld.', 
 'g.lite' => 'G.lite', 
 'green interface' => 'Grünes Interface', 
 'gui settings' => 'Benutzeroberfläche', 
 'gz with key' => 'Nur ein verschlüsseltes Archiv kann auf dieser Maschine wiederhergestellt werden.', 
-'hangup string' => 'Auflegen:', 
+'hangup string' => 'Auflegen', 
 'hangup' => 'Trennen', 
 'high' => 'Hoch', 
 'high memory usage' => 'Speicher wird knapp', 
 'host ip' => 'Host IP-Adresse', 
 'hostname and domain already in use' => 'Hostname und Domain sind werden bereits benutzt.', 
 'hostname cant be empty' => 'Hostname darf nicht leer bleiben.', 
-'hostname' => 'Hostname', 
+'hostname' => 'Host-Konfiguration', 
 'hostname not set' => 'Hostname nicht eingegeben.', 
 'hosts config added' => 'Hosts-Konfiguration hinzugefügt', 
 'hosts config changed' => 'Hosts-Konfiguration geändert', 
 'idle cpu' => 'CPU Leerlauf', 
 'idle cpu usage' => 'Leerlauf CPU Nutzung', 
 'idle' => 'Leerlauf', 
-'idle timeout' => 'Leerlauf-Wartezeit in min (0 zum Deaktivieren):', 
+'idle timeout' => 'Leerlauf-Wartezeit in min (0 zum Deaktivieren)', 
 'idle timeout not set' => 'Leerlauf-Wartezeit nicht angegeben.', 
 'ids logs' => 'IDS-Logdateien', 
-'ids log viewer' => 'Ansicht IDS-Log', 
+'ids log viewer' => 'IDS-Logdateien', 
 'ids rules license2' => 'Bestätigen Sie die Lizenz, empfangen Sie Ihr Passwort per email und gehen Sie auf die Website. Gehen Sie zu', 
 'ids rules license3' => 'klicken Sie den \'Get Code\' Knopf am Fuß und kopieren den 40-Zeichen Oink Code in das untere Feld.', 
 'ids rules license' => 'Um  Sourcefire VRT Zertifizierte Regeln zu nutzen, müssen Sie ich registrieren auf', 
 'ids rules update' => 'Snort Regeln Update', 
 'iface' => 'Iface', 
 'ignore filter' => '&quot;Ignorieren&quot;-Filter', 
-'ike encryption' => 'IKE Verschlüsselung:', 
-'ike grouptype' => 'IKE Gruppentyp:', 
-'ike integrity' => 'IKE Integrität:', 
-'ike lifetime' => 'IKE Lebensdauer:', 
+'ike encryption' => 'IKE Verschlüsselung', 
+'ike grouptype' => 'IKE Gruppentyp', 
+'ike integrity' => 'IKE Integrität', 
+'ike lifetime' => 'IKE Lebensdauer', 
 'ike lifetime should be between 1 and 8 hours' => 'IKE Lebensdauer sollte zwischen 1 und 8 Stunden betragen.', 
 'import' => 'Import', 
 'incoming traffic in bytes per second' => 'Eingehender Verkehr in Bytes pro Sekunde', 
 'in' => 'Ein', 
 'info' => 'Info', 
-'init string' => 'Initialisierung:', 
+'init string' => 'Initialisierung', 
 'insert floppy' => 'Legen Sie eine formatierte Diskette in das Floppy-Laufwerk in IPFire und klicken auf <i>Datensicherung auf Diskette</i>, um die Systemeinstellungen zu sichern.  Überprüfen Sie das Ergebnis sorgfältig, um sicher zu sein, dass die Datensicherung vollständig und erfolgreich abgeschlossen wurde.<p>', 
 'installed' => 'Installiert', 
-'installed updates' => 'Installierte Updates:', 
-'install new update' => 'Installiere neues Update:', 
+'installed updates' => 'Installierte Updates', 
+'install new update' => 'Installiere neues Update', 
 'instant update' => 'Sofortiges Update', 
 'interface' => 'Schnittstelle', 
-'interfaces' => 'Schnittstellen:', 
+'interfaces' => 'Schnittstellen', 
 'internet' => 'INTERNET', 
 'intrusion detection' => 'Einbruchdetektierung', 
-'intrusion detection system2' => 'Intrusion Detection System:', 
-'intrusion detection system' => 'Intrusion Detection System', 
+'intrusion detection system2' => 'Intrusion Detection System', 
+'intrusion detection system' => 'Snort', 
 'intrusion detection system log viewer' => 'Betrachter der IDS-Logfiles', 
 'invalid broadcast ip' => 'Ungültige Broadcast-IP', 
 'invalid cache size' => 'Ungültige Cache-Größe.', 
 'invalid md5sum' => 'Ungültige MD5-Summe.', 
 'invalid minimum object size' => 'Ungültige min. Objektgröße.', 
 'invalid netmask' => 'Ungültige Netzwerkmaske', 
-'invalid port list' => 'Portlisten-Syntax lautet: port[,port]... wobei port in /etc/services vorkommt oder Nummer', 
+'invalid port list' => 'Portlisten-Syntax lautet port[,port]... wobei port in /etc/services vorkommt oder Nummer', 
 'invalid port' => 'Ungültiger Port. Bitte gültige Portnummer eingeben.', 
 'invalid primary dns' => 'Ungültiger primärer DNS.', 
 'invalid primary ntp' => 'Ungültiger primärer NTP.', 
 'ipfire has now rebooted' => 'IPFire wird jetzt neu gestartet.', 
 'ipfire has now shutdown' => 'IPFire wird jetzt heruntergefahren.', 
 'ipfires hostname' => 'IPFire\'s Hostname', 
-'ipfire side' => 'IPFire Seite:', 
+'ipfire side' => 'IPFire Seite', 
 'ipfire side is invalid' => 'IPFire Seite ist ungültig.', 
 'ipinfo' => 'IP-Info', 
 'ip info' => 'IP-Information', 
 'isdn1' => 'Einfaches ISDN', 
 'isdn2' => 'ISDN-Kanalbündelung', 
 'isdn' => 'ISDN', 
-'isdn settings' => 'Zusätzliche ISDN-Einstellungen:', 
+'isdn settings' => 'Zusätzliche ISDN-Einstellungen', 
 'january' => 'Januar', 
 'javascript menu error1' => 'Wenn die Drop-down-Menus nicht funktionieren, deaktivieren Sie Javascript auf der', 
 'javascript menu error2' => 'Seite.', 
 'june' => 'Juni', 
 'kernel' => 'Kernel', 
 'kernel logging server' => 'Kernel-Protokollierungs-Server', 
-'kernel version' => 'Kernel-Version:', 
-'languagepurpose' => 'Wählen Sie eine Sprache, in der IPFire angezeigt werden soll:', 
+'kernel version' => 'Kernel-Version', 
+'languagepurpose' => 'Wählen Sie eine Sprache, in der IPFire angezeigt werden soll', 
 'lan' => 'LAN', 
 'lease expires' => 'Zuordnung verfällt', 
 'legend' => 'Legende', 
 'line' => 'Leitung', 
-'loaded modules' => 'Geladene Module:', 
+'loaded modules' => 'Geladene Module', 
 'local ntp server specified but not enabled' => 'Lokaler NTP Server angegeben aber nicht aktiviert', 
 'local subnet is invalid' => 'Lokales Subnet ist ungültig.', 
-'local subnet' => 'Lokales Subnetz:', 
+'local subnet' => 'Lokales Subnetz', 
 'local vpn hostname/ip' => 'Lokaler VPN Hostname/IP', 
 'log enabled' => 'Log aktiviert', 
 'logging server' => 'Protokollierungs-Server', 
 'loginlogout' => 'Login/Logout', 
 'log lines per page' => 'Zeilen pro Seite', 
-'log' => 'Protokoll:', 
+'log' => 'Protokoll', 
 'log server address' => 'Syslog Server', 
 'log settings' => 'Logdatei-Einstellungen', 
 'log summaries' => 'Log Übersicht', 
-'log summary' => 'Log Zusammenfassung', 
+'log summary' => 'Log-Zusammenfassung', 
 'log viewer' => 'Protokollansicht', 
 'log viewing options' => 'Log Ansichts-Optionen', 
 'lookup failed' => 'Reverse Lookup gescheitert', 
 'low' => 'Niedrig', 
-'ls_dhcpd' => 'DHCP-Server:', 
-'ls_disk space' => 'Plattenplatz:', 
-'ls_free/swan' => 'VPN:', 
-'ls_httpd' => 'HTTP-Server:', 
-'ls_init' => 'Init:', 
-'ls_kernel' => 'Kernel und Firewall:', 
-'ls_modprobe' => 'Modul Ladeprogramm:', 
-'ls_pam_unix' => 'Lokale Benutzeranmeldungen:', 
-'ls_sshd' => 'Fern-Benutzeranmeldungen:', 
-'ls_syslogd' => 'Syslogd:', 
+'ls_dhcpd' => 'DHCP-Server', 
+'ls_disk space' => 'Plattenplatz', 
+'ls_free/swan' => 'VPN', 
+'ls_httpd' => 'HTTP-Server', 
+'ls_init' => 'Init', 
+'ls_kernel' => 'Kernel und Firewall', 
+'ls_modprobe' => 'Modul Ladeprogramm', 
+'ls_pam_unix' => 'Lokale Benutzeranmeldungen', 
+'ls_sshd' => 'Fern-Benutzeranmeldungen', 
+'ls_syslogd' => 'Syslogd', 
 'mac address in use' => 'MAC-Adresse bereits vergeben', 
 'mac address' => 'MAC-Adresse', 
 'main page' => 'Startseite', 
-'manual control and status' => 'Manuelle Einstellung und Status:', 
+'manual control and status' => 'Manuelle Einstellung und Status', 
 'manually' => 'Manuell', 
 'manual' => 'Manuell', 
 'march' => 'März', 
 'marked' => 'Markiert', 
 'maximal' => 'Maximal', 
-'maximum retries' => 'Maximale Wiederholversuche:', 
-'max incoming size' => 'Max. eingehende Größe (kB):', 
-'max lease time' => 'Max. Haltezeit in min:', 
-'max outgoing size' => 'Max. abgehende Größe (kB):', 
+'maximum retries' => 'Maximale Wiederholversuche', 
+'max incoming size' => 'Max. eingehende Größe (kB)', 
+'max lease time' => 'Max. Haltezeit in min', 
+'max outgoing size' => 'Max. abgehende Größe (kB)', 
 'max renewal time' => 'Maximale Aktualisierungszeit', 
 'max retries not set' => 'Maximale Wiederholversuche nicht angegeben.', 
-'max size' => 'Max. Objektgröße (kB):', 
+'max size' => 'Max. Objektgröße (kB)', 
 'may' => 'Mai', 
 'medium' => 'Mittel', 
-'memory' => 'Speicher:', 
+'memory' => 'Speicher', 
 'memory usage per' => 'Speichernutzung pro', 
-'method' => 'Methode:', 
-'min size' => 'Min. Objektgröße (kB):', 
+'method' => 'Methode', 
+'min size' => 'Min. Objektgröße (kB)', 
 'minutes' => 'Minuten', 
 'missing dat' => 'Verschlüsseltes Archiv wurde nicht gefunden', 
 'missing gz' => 'Nichtverschlüsseltes Archiv wurde nicht gefunden', 
 'modem on com4' => 'Modem an COM4', 
 'modem on com5' => 'Modem an COM5', 
 'modem settings have errors' => 'Modemeinstellungen fehlerhaft', 
-'modem speaker on' => 'Modemlautsprecher an:', 
+'modem speaker on' => 'Modemlautsprecher an', 
 'modulation' => 'Modulation', 
 'monday' => 'Montag', 
 'month' => 'Monat', 
+'monthly firewallhits' => 'Monatliche Firewalltreffer', 
 'months' => 'Monate', 
 'mounted on' => 'Mounted auf', 
 'name is invalid' => 'Name ist ungültig', 
 'name must only contain characters' => 'Name darf nur Buchstaben enthalten.', 
 'name' => 'Name', 
 'name too long' => 'Der volle Benutzername oder der System Hostname ist zu lang', 
-'nat-traversal' => 'Nat Traversal:', 
+'nat-traversal' => 'Nat Traversal', 
 'netmask' => 'Netzwerkmaske', 
 'net' => 'Netz', 
 'net to net vpn' => 'Netz-zu-Netz Virtual Private Network', 
 'network' => 'Netzwerk', 
 'network removed' => 'Benutzerdefiniertes Netzwerk entfernt', 
 'networks settings' => 'Firewall - Netzwerkeinstellungen', 
-'network status information' => 'Netzwerk-Statusinformationen', 
-'network time' => 'Benutze NTP-Server:', 
+'network status information' => 'Netzwerk-Status', 
+'network time' => 'Benutze NTP-Server', 
 'network time from' => 'Uhrzeit von einem Netzwerk Zeitserver ermitteln', 
-'network traffic graphs' => 'Diagramme zur Netzwerkauslastung', 
+'network traffic graphs' => 'Netzwerk-Diagramme', 
 'network updated' => 'Benutzerdefiniertes Netzwerk aktualisiert', 
 'newer' => 'Neuer', 
 'new optionsfw later' => 'Ihre Modifikation(en) wird (werden) beim nächsten Neustart aktiv werden', 
 'ntp server' => 'NTP-Server', 
 'ntp syncro disabled' => 'NTP-Synchronisierung deaktiviert', 
 'ntp syncro enabled' => 'NTP-Synchronisierung aktiviert', 
-'number' => 'Nummer:', 
+'number' => 'Nummer', 
 'october' => 'Oktober', 
 'older' => 'Älter', 
 'online help en' => 'Online-Hilfe (auf Englisch)', 
 'only red' => 'Nur ROT', 
 'openssl produced an error' => 'OpenSSL hat einen Fehler verursacht', 
 'open to all' => 'Überschreibe externen Zugang zu ALL', 
-'options fw' => 'Firewall Optionen', 
+'options fw' => 'Firewall-Optionen', 
 'optionsfw portlist hint' => 'Die Liste der Ports muss durch ein Komma getrennt werden (z.B. 137,138). Sie können maximal bis zu 15 Ports pro Protokoll angeben.', 
 'optionsfw warning' => 'Verändern dieser Optionen bedingt einen Neustart der Firewall', 
 'options' => 'Optionen', 
 'pap or chap' => 'PAP oder CHAP', 
 'password contains illegal characters' => 'Passwort enthält ungültige(s) Zeichen.', 
 'password not set' => 'Passwort nicht angegeben.', 
-'password' => 'Passwort:', 
+'password' => 'Passwort', 
 'passwords do not match' => 'Die Passwörter stimmen nicht überein.', 
 'passwords must be at least 6 characters in length' => 'Passwörter müssen mind. 6 Zeichen lang sein', 
 'password too short' => 'Passwort ist zu kurz.', 
 'persistent' => 'Dauerhaft', 
 'pfs yes no' => 'Perfect Forward Secrecy (PFS)', 
 'phase1 group' => 'Phase1 Gruppe', 
-'phonebook entry' => 'Telefonbuch-Eintrag:', 
+'phonebook entry' => 'Telefonbuch-Eintrag', 
 'ping disabled' => 'Ping Antwort deaktivieren', 
 'pkcs12 file password' => 'PKCS12 Datei-Passwort', 
-'port forwarding configuration' => 'Konfiguration der Port-Weiterleitung', 
+'port forwarding configuration' => 'Port-Weiterleitung', 
 'port' => 'Port', 
 'ports' => 'Ports', 
 'pots' => 'Analoges Telefon', 
 'pppoe' => 'PPPoE', 
-'pppoe settings' => 'Zusätzliche PPPoE-Einstellungen:', 
-'ppp setup' => 'PPP-Einstellungen', 
-'pptp settings' => 'Zusätzliche PPTP-Einstellungen:', 
+'pppoe settings' => 'Zusätzliche PPPoE-Einstellungen', 
+'ppp setup' => 'PPP-Konfiguration', 
+'pptp settings' => 'Zusätzliche PPTP-Einstellungen', 
 'present' => 'Vorhanden', 
 'pre-shared key is too short' => 'Pre-shared Schlüsel ist zu kurz', 
-'primary dns' => 'Primärer DNS:', 
+'primary dns' => 'Primärer DNS', 
 'primary ntp server' => 'Primärer NTP-Server', 
 'primary wins server address' => 'Primäre WINS-Server Adresse', 
 'priority' => 'Priorität', 
-'profile deleted' => 'Profil gelöscht: ', 
+'profile deleted' => 'Profil gelöscht ', 
 'profile has errors' => 'Profil fehlerhaft', 
-'profile made current' => 'Profil ausgewählt: ', 
+'profile made current' => 'Profil ausgewählt ', 
 'profile name not given' => 'Profilname nicht angegeben.', 
-'profile name' => 'Profilname:', 
+'profile name' => 'Profilname', 
 'profile' => 'Profil', 
-'profile saved' => 'Profil gespeichert: ', 
-'profiles' => 'Profile:', 
+'profile saved' => 'Profil gespeichert ', 
+'profiles' => 'Profile', 
 'protocol' => 'Protokoll', 
 'proto' => 'Proto', 
-'proxy access graphs' => 'Diagramme zur Proxyauslastung', 
+'proxy access graphs' => 'Proxy-Diagramme', 
 'proxy logs' => 'Proxy-Logdateien', 
-'proxy log viewer' => 'Ansicht Proxy-Log', 
+'proxy log viewer' => 'Proxy-Logdateien', 
 'proxy port' => 'Proxy-Port', 
 'proxy' => 'Proxy', 
 'psk' => 'PSK', 
-'pulse dial' => 'Pulswahl:', 
+'pulse dial' => 'Pulswahl', 
 'pulse' => 'Puls', 
 'quick control' => 'Quick Control',
 'ram' => 'RAM-Speicher', 
 'registered user rules' => 'Sourcefire VRT Regeln für registrierte Benutzer', 
 'released' => 'Freigegeben', 
 'remark' => 'Anmerkung', 
-'remark title' => 'Anmerkung:', 
-'remote access' => 'Fernwartung', 
+'remark title' => 'Anmerkung', 
+'remote access' => 'SSH-Zugriff', 
 'remote host/ip' => 'Remote Host/IP', 
 'remote logging' => 'Remote logging', 
 'remote subnet is invalid' => 'Remote Subnetz ist ungültig.', 
-'remote subnet' => 'Remote Subnetz:', 
+'remote subnet' => 'Remote Subnetz', 
 'remove ca certificate' => 'CA-Zertifikat entfernen', 
 'remove' => 'Löschen', 
-'reserved dst port' => 'Dieser Zielport ist für die ausschließliche Benutzung durch IPFire reserviert:', 
-'reserved src port' => 'Dieser Quellport ist für die ausschließliche Benutzung durch IPFire reserviert:', 
+'reserved dst port' => 'Dieser Zielport ist für die ausschließliche Benutzung durch IPFire reserviert', 
+'reserved src port' => 'Dieser Quellport ist für die ausschließliche Benutzung durch IPFire reserviert', 
 'resetting the vpn configuration will remove the root ca, the host certificate and all certificate based connections' => 'Das Zurücksetzen der VPN-Konfiguration wird die Root-CA, die Host-Zertifikate und alle weiteren Zertifikate und alle zertifikatsbasierten Verbindungen entfernen', 
 'reset' => 'Zurücksetzen', 
 'restart' => 'Neustart', 
 'reverse sort' => 'In umgekehrter chronologischer Reihenfolge sortieren', 
 'root certificate' => 'Root-Zertifikat', 
 'root path' => 'Root-Pfad', 
-'router ip' => 'IP-Adresse des Routers:', 
-'routing table entries' => 'Einträge der Routing-Tabelle:', 
-'rsvd dst port overlap' => 'Dieser Zielportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist:', 
-'rsvd src port overlap' => 'Dieser Quellportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist:', 
+'router ip' => 'IP-Adresse des Routers', 
+'routing table entries' => 'Einträge der Routing-Tabelle', 
+'rsvd dst port overlap' => 'Dieser Zielportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist', 
+'rsvd src port overlap' => 'Dieser Quellportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist', 
 'rules already up to date' => 'Regeln sind schon aktuell', 
 'running' => 'LÄUFT', 
 'saturday' => 'Samstag', 
 'save error' => 'Konfigurationsarchiv-Datei konnte nicht gespeichert werden', 
 'save' => 'Speichern', 
-'script name' => 'Skriptname:', 
-'secondary dns' => 'Sekundärer DNS:', 
+'script name' => 'Skriptname', 
+'secondary dns' => 'Sekundärer DNS', 
 'secondary ntp server' => 'Sekundärer NTP-Server', 
 'secondary wins server address' => 'Sekundäre WINS-Server Adresse', 
 'seconds' => 'sek.', 
 'select' => 'Auswählen', 
 'select dest net' => 'Auswahl Ziel-Netz', 
 'select source net' => 'Auswahl Quell-Netz', 
-'selecttraffic' => 'Wähle den Nutzungs Zeitraum:',
-'send cr' => 'ISP verlangt Zeilenrücklaufzeichen:', 
+'selecttraffic' => 'Wähle den Nutzungs Zeitraum',
+'send cr' => 'ISP verlangt Zeilenrücklaufzeichen', 
 'september' => 'September', 
 'serial' => 'serielle', 
 'service added' => 'Benutzerdefinierter Netzwerkdienst wurde hinzugefügt', 
 'service' => 'Dienst', 
 'servicename' => 'Dienstname', 
-'service name' => 'Name des Dienstes:', 
+'service name' => 'Name des Dienstes', 
 'service removed' => 'Benutzerdefinierter Netzwerkdienst wurde entfernt', 
-'services' => 'Dienste:', 
+'services' => 'Dienste', 
 'services settings' => 'Firewall - Diensteeinstellungen', 
 'service updated' => 'Benutzerdefinierter Netzwerkdienst wurde aktualisiert', 
 'set time now help' => 'Um ein Synchronisationsereignis zu jeder Zeit in die Warteschlange zu stellen, drücken Sie die <i>Stelle jetzt die Uhrzeit ein</i> Schaltfläche. Bitte beachten Sie, daß Sie 5 Minuten, oder länger, warten müssen, bevor ein Sync-Ergeinis eintritt.', 
 'shaping list options' => 'Datenflußkontrolldienste', 
 'shared memory' => 'Gemeins. Speicher', 
 'shared' => 'shared', 
+'show areas' => 'Flächengraphen', 
 'show ca certificate' => 'CA Zertifikat anzeigen', 
 'show certificate' => 'Zertifikat anzeigen', 
 'show host certificate' => 'Host-Zertifikat anzeigen', 
+'show lines' => 'Liniengraphen', 
 'show root certificate' => 'Root-Zertifikat anzeigen', 
-'shutdown2' => 'Herunterfahren:', 
+'shutdown2' => 'Herunterfahren', 
 'shutdown control' => 'Herunterfahren', 
 'shutdown' => 'Herunterfahren', 
 'shutting down' => 'Fahre herunter', 
 'sort ascending' => 'Sortiere aufsteigend', 
 'sort descending' => 'Sortiere absteigend', 
 'sound' => 'Klang', 
-'source ip and port' => 'Quell-IP:Port', 
+'source ip and port' => 'Quell-IPPort', 
 'source ip bad' => 'Ungültige Quell-IP-Adresse.', 
-'source ip in use' => 'Benutzte Quell-IP:', 
+'source ip in use' => 'Benutzte Quell-IP', 
 'source ip or net' => 'Quellen-IP oder Netz', 
 'source ip' => 'Quell-IP-Adresse', 
 'source net' => 'Quell-Netz', 
-'source network' => 'Quell-IP, oder Netzwerk (leer für "ALL"):', 
-'source port in use' => 'Benutzter Quell-Port:', 
+'source network' => 'Quell-IP, oder Netzwerk (leer für "ALL")', 
+'source port in use' => 'Benutzter Quell-Port', 
 'source port numbers' => 'Quell-Port muß ein(e) gültige(r) Port-Nummer oder Port-Bereich sein.', 
 'source port overlaps' => 'Quell-Port-Bereich überlappt mit einem bereits definierten Port-Bereich.', 
 'source port' => 'Quell-Port', 
 'source' => 'Quelle', 
-'speaker off' => 'Lautsprecher aus:', 
-'speaker on' => 'Lautsprecher ein:', 
+'speaker off' => 'Lautsprecher aus', 
+'speaker on' => 'Lautsprecher ein', 
 'squid extension methods' => 'Ihre <tt>extension_methods</tt> Liste', 
 'squid extension methods invalid' => 'Ihre  \'extension_methods\' Liste darf nur Worte aus Großbuchstaben und Ziffer enthalten, die mittels eines Leerzeichens getrennt werden.', 
 'src port' => 'Quell-Port', 
 'sstraffic graphs' => 'Netzwerk-Diagramme', 
 'sstraffic' => 'Net-Traffic',
 'standard login script' => 'Standard-Anmeldeskript', 
-'start address' => 'Anfangsadresse:', 
+'start address' => 'Anfangsadresse', 
 'state or province' => 'Bundesstat oder Provinz', 
 'static ip' => 'Statisch IP', 
-'status information' => 'Statusinformationen', 
+'status information' => 'System-Status', 
 'status' => 'Status', 
 'stopped' => 'ANGEHALTEN', 
 'subject' => 'Betreff', 
 'title' => 'Titel', 
 'to' => 'Bis', 
 'toggle enable disable' => 'Aktivieren oder Deaktivieren', 
-'to install an update' => 'Um ein Update zu installieren, laden Sie zuerst die folgende .tgz.gpg Datei hoch:', 
-'tone dial' => 'Tonwahl:', 
+'to install an update' => 'Um ein Update zu installieren, laden Sie zuerst die folgende .tgz.gpg Datei hoch', 
+'tone dial' => 'Tonwahl', 
 'tone' => 'Ton', 
 'total hits for log section' => 'Gesamte Treffer für Log Sektion', 
 'trafficblue' => 'WLAN',
 'trafficred' => 'Internet',
 'traffic shaping settings' => 'Einstellungen der Datenflußkontrolle', 
 'traffic shaping' => 'Traffic Shaping', 
-'traffics' => 'Nutzungs-überblick:',
+'traffics' => 'Nutzungs-überblick',
 'trafficsum' => 'Gesamt',
 'trafficto' => 'Bis',
 'transfer limits' => 'Transferbeschränkungen', 
 'updates is old1' => 'Ihre Update-Datei ist ', 
 'updates is old2' => 'Tage alt. Wir empfehlen Ihnen, Ihr System über die &quot;Updates&quot;-Seite zu aktualisieren.', 
 'updates' => 'Updates', 
-'update time' => 'Aktualisiere die Uhrzeit:', 
+'update time' => 'Aktualisiere die Uhrzeit', 
 'update transcript' => 'Aktualisieren', 
 'uplink speed' => 'Uplink-Geschwindigkeit (kBit/sek)', 
-'upload a certificate' => 'Ein Zertifikat hochladen:', 
-'upload a certificate request' => 'Eine Zertifikatsanfrage hochladen:', 
+'upload a certificate' => 'Ein Zertifikat hochladen', 
+'upload a certificate request' => 'Eine Zertifikatsanfrage hochladen', 
 'upload ca certificate' => 'CA Zertifikat hochladen', 
 'upload fcdsl.o' => 'Fcdsl.o hochladen', 
 'upload file' => 'Datei zum hochladen', 
 'upload p12 file' => 'PKCS12 Datei hochladen', 
 'upload successful' => 'Erfolgreich hochgeladen.', 
 'upload synch.bin' => 'Synch.bin hochladen', 
-'upload update file' => 'Lade die Update-Datei hoch:', 
-'upstream password' => 'Proxy-Passwort:', 
-'upstream proxy host:port' => 'Vorgelagerter Proxy (hostname:port)', 
-'upstream username' => 'Proxy-Benutzername:', 
-'uptime and users' => 'Uptime und Benutzer:', 
+'upload update file' => 'Lade die Update-Datei hoch', 
+'upstream password' => 'Proxy-Passwort', 
+'upstream proxy hostport' => 'Vorgelagerter Proxy (hostnameport)', 
+'upstream username' => 'Proxy-Benutzername', 
+'uptime and users' => 'Uptime und Benutzer', 
 'usb modem on acm0' => 'USB Modem an ACM0', 
 'usb modem on acm1' => 'USB Modem an ACM1', 
 'usb modem on acm2' => 'USB Modem an ACM2', 
 'usb modem on acm3' => 'USB Modem an ACM3', 
-'use a pre-shared key' => 'Verwenden Sie einen Pre-Shared Schlüssel:', 
+'use a pre-shared key' => 'Verwenden Sie einen Pre-Shared Schlüssel', 
 'used' => 'Benutzt', 
 'used memory' => 'Genutzter Speicher', 
-'use dov' => 'DOV (Data Over Voice) benutzen:', 
+'use dov' => 'DOV (Data Over Voice) benutzen', 
 'used swap' => 'Genutzter Swap', 
 'use' => 'Einsatz', 
-'use ibod' => 'Bandwidth on Demand (iBOD) benutzen:', 
+'use ibod' => 'Bandwidth on Demand (iBOD) benutzen', 
 'use ipfire red ip' => 'Die klassische ROTE IP, welche von IPFire während der Verbindung verwendet wird', 
 'use only proposed settings' => 'Verwenden Sie nur die vorgeschlagenen Einstellungen.', 
 'user cpu' => 'Benutzer CPU', 
 'user cpu usage' => 'Benutzer CPU', 
-'username' => 'Benutzername:', 
+'username' => 'Benutzername', 
 'username not set' => 'Benutzername nicht angegeben.', 
 'users department' => 'Abteilung des Benutzers', 
 'users email' => 'E-mail Adresse des Benutzers', 
 'users fullname or system hostname' => 'Voller Name oder System Hostaname des Benutzers', 
 'valid root certificate already exists' => 'Ein gültiges Root-Zertifikat existiert bereits.', 
-'vci number' => 'VCI-Nummer:', 
+'vci number' => 'VCI-Nummer', 
 'virtual private networking' => 'Virtuelles Privates Netzwerk', 
-'vpi number' => 'VPI-Nummer:', 
-'vpn configuration main' => 'VPN-Konfiguration - Übersicht', 
+'vpi number' => 'VPI-Nummer', 
+'vpn configuration main' => 'VPN', 
 'vpn delayed start help' => 'Falls notwendig, kann diese Verzögerung dazu verwendet werden, um Dynamic DNS Updates ordnungsgemäß anzuwenden. 60 ist ein gängiger Wert, wenn ROT (RED) eine dynamische IP Adresse ist.', 
 'vpn delayed start' => 'Verzögerung bevor VPN gestartet wird (Sekunden)', 
 'vpn mtu invalid' => 'MTU muß ein numerischer Wert sein!', 
 'web server' => 'Web-Server', 
 'website' => 'Website', 
 'wednesday' => 'Mittwoch', 
+'weekly firewallhits' => 'Wöchentliche Firewalltreffer', 
 'weeks' => 'Wochen', 
 'week' => 'Woche', 
 'wildcards' => 'Wildcards', 
 'written sectors' => 'Sektoren schr.', 
 'xtaccess all error' => 'Sie können einen externen Zugang nicht auf \'ALL\' setzen - dies erfolgt in den Port-Weiterleitungsregeln.', 
 'year' => 'Jahr', 
+'yearly firewallhits' => 'Jährliche Firewalltreffer',
 'yes' => 'Ja', 
 'you can only define one roadwarrior connection when using pre-shared key authentication' => 'Sie können nur eine Roadwarrior Verbindung definieren, wenn die Pre-shared Schlüsselauthentifizierung verwendet wird.<br/>Entweder haben Sie bereits eine Roadwarrior Verbindung mit Pre-shared Schlüsselauthentifizierung, oder Sie versuchen gerade eine hinzuzufügen.', 
 'your department' => 'Ihre Abteilung', 
 'your e-mail' => 'Ihre E-mail Adresse', 
 'connect' => 'OVPN Start / Verbinden',
 'disconnect' => 'OVPN Stop / Trennen',
-'add new ovpn' => 'OpenVPN Einstellungen:',
-'Remote IP' => 'Entfernte IP / Hostname (DynDNS):', 
-'comment' => 'Kommentar:',
+'add new ovpn' => 'OpenVPN Einstellungen',
+'Remote IP' => 'Entfernte IP / Hostname (DynDNS)', 
+'comment' => 'Kommentar',
 'alt ovpn' => 'OpenVPN',  
 'ovpn' => 'OpenVPN',
 'ovpn log' => 'OVPN-Log',
 'ovpn config' => 'OVPN-Konfiguration',
 'ovpnstatus log' => 'OVPN-Status-Log',
 'ovpnsys log' => 'OVPN-System-Log',
-'current ovpn' => 'Aktive OVPN-Verbindung:',
-'Local VPN IP' => 'Internes Netzwerk (GREEN):',
-'Remote VPN IP' => 'VPN Subnetz (z.B. 10.0.10.0/255.255.255.0):',
-'Ping'=> 'Ping :',
-'optional data'=> '3. Optionale Einstellungen:',
-'requested data' => '1. Verbindungs Einstellungen:',
-'Resolv'=> 'Resolv-Retry:',
-'Verbose'=> 'Verbose:',
-'MTU'=> 'MTU Size:',
+'current ovpn' => 'Aktive OVPN-Verbindung',
+'Local VPN IP' => 'Internes Netzwerk (GREEN)',
+'Remote VPN IP' => 'VPN Subnetz (z.B. 10.0.10.0/255.255.255.0)',
+'Ping'=> 'Ping ',
+'optional data'=> '3. Optionale Einstellungen',
+'requested data' => '1. Verbindungs Einstellungen',
+'Resolv'=> 'Resolv-Retry',
+'Verbose'=> 'Verbose',
+'MTU'=> 'MTU Size',
 'choose config' => 'Konfiguration auswaehlen', 
 'generate' => 'Root/Host Zertifikate generieren', 
 'test' => 'test', 
 'ovpn dl' => 'OVPN-Konfiguration downloaden',
 'key stuff' => '2. Keys und Zertifikate',
-'status ovpn' => '4. OpenVPN Status / Konfiguration:',
-'manage ovpn' => '5. Tunnel Management:',
+'status ovpn' => 'OpenVPN',
+'manage ovpn' => '5. Tunnel Management',
 'genkey' => 'PSK erzeugen',
 'exportkey' => 'PSK exportieren',
 'importkey' => 'PSK importieren',
 'OpenVPN' => 'OpenVPN',
 'o-yes' => 'Aktiv',
 'o-no' => 'Inaktiv',
-'comp-lzo' => 'LZO-Kompression:',
-'error external access' => 'Kann /var/ipcop/xtaccess/config nicht öffnen (external acccess could not be granted)!',
-'error config' => 'Kann /var/ipcop/ovpn/config/ZERINA.ovpn nicht öffnen!',
-'hint' => 'Tipp:',
+'comp-lzo' => 'LZO-Kompression',
+'error external access' => 'Kann /var/ipcop/xtaccess/config nicht öffnen (external acccess could not be granted)!',
+'error config' => 'Kann /var/ipcop/ovpn/config/ZERINA.ovpn nicht öffnen!',
+'hint' => 'Tipp',
 'empty' => 'Dieses Feld kann leer bleiben',
-'cipher' => 'Verschlüsselung:',
+'cipher' => 'Verschlüsselung',
 'debugme' => 'Noch nicht implementiert', 
-'Client status and controlc' => 'Client Status und Kontrolle:', 
-'Act as' => 'Konfiguriert als:',
+'Client status and controlc' => 'Client Status und Kontrolle', 
+'Act as' => 'Konfiguriert als',
 'openvpn server' => 'OpenVPN Server',
 'openvpn client' => 'OpenVPN Client',
 'ovpn subnet' => 'OpenVPN Subnetz (z.B. 10.0.10.0/255.255.255.0)',
-'gen static key' => 'Statischen Schlüssel erzeugen',
-'upload static key' => 'Statischen Schlüssel hochladen',
-'ovpn device' => 'OpenVPN Gerät',
+'gen static key' => 'Statischen Schlüssel erzeugen',
+'upload static key' => 'Statischen Schlüssel hochladen',
+'ovpn device' => 'OpenVPN Gerät',
 'external access rule changed' => 'External access Regel geaendert; Der access controller wird neu gestartet.', 
-'ovpn subnet is invalid' => 'Das OpenVPN Subnetz ist ungültig.', 
-'invalid mtu input' => 'Ungültige MTU', 
+'ovpn subnet is invalid' => 'Das OpenVPN Subnetz ist ungültig.', 
+'invalid mtu input' => 'Ungültige MTU', 
 'start ovpn server' => 'Starte OpenVPN Server', 
 'stop ovpn server' => 'Stoppe OpenVPN Server',
 'restart ovpn server' => 'OpenVPN Server neu starten',
-'ovpn server status', => 'OpenVPN Server Status:',
+'ovpn server status', => 'OpenVPN Server Status',
 'dl client arch', => 'Client Paket herunterladen (zip)',
 'ovpn on red' => 'OpenVPN auf ROT',
 'ovpn on blue' => 'OpenVPN auf BLAU', 
 'bytes sent' => 'Bytes Gesendet',
 'bytes received' => 'Bytes Empfangen',
 'last activity' => 'Letzte Aktivitaet',
-'ovpn subnet overlap' => 'OpenVPN Subnetz überschneidet sich mit : ',
+'ovpn subnet overlap' => 'OpenVPN Subnetz überschneidet sich mit  ',
 'show crl' => 'Certificate Revocation List anzeigen',
 'crl' => 'Certificate Revocation List',
 'advanced server' => 'Erweiterte Server Optionen',
 'misc-options' => 'Sonstige Optionen',
 'save-adv-options' => 'Erweiterte Optionen speichern',
 'cancel-adv-options' => 'Abbrechen',
-'invalid input for dhcp domain' => 'Ungültige Eingabe für DHCP Domain',
-'invalid input for dhcp dns' => 'Ungültige Eingabe für DHCP DNS',
-'invalid input for dhcp wins' => 'Ungültige Eingabe für DHCP WINS',
-'invalid input for max clients' => 'Ungültige Eingabe für Max Clients',
-'invalid input for keepalive 1' => 'Ungültige Eingabe für Keepalive ping',
-'invalid input for keepalive 2' => 'Ungültige Eingabe für Keepalive ping-restart',
-'valid till' => 'Güig bis',
-'ovpn_processprio' => 'Prozesspriorität',
+'invalid input for dhcp domain' => 'Ungültige Eingabe für DHCP Domain',
+'invalid input for dhcp dns' => 'Ungültige Eingabe für DHCP DNS',
+'invalid input for dhcp wins' => 'Ungültige Eingabe für DHCP WINS',
+'invalid input for max clients' => 'Ungültige Eingabe für Max Clients',
+'invalid input for keepalive 1' => 'Ungültige Eingabe für Keepalive ping',
+'invalid input for keepalive 2' => 'Ungültige Eingabe für Keepalive ping-restart',
+'valid till' => 'Güig bis',
+'ovpn_processprio' => 'Prozesspriorität',
 'ovpn_fastio' => 'Fast-IO',
 'ovpn_mtudisc' => 'MTU-Discovery',
-'ovpn_mssfix' => 'MSSFIX Grösse',
-'ovpn_fragment' => 'Fragmentgrösse',
+'ovpn_mssfix' => 'MSSFIX Grösse',
+'ovpn_fragment' => 'Fragmentgrösse',
 'ovpn_processprioEH' => 'Extrem Hoch',
 'ovpn_processprioVH' => 'Sehr Hoch',
 'ovpn_processprioH' => 'Hoch',
-'ovpn_processprioEN' => 'Höher als Normal',
+'ovpn_processprioEN' => 'Höher als Normal',
 'ovpn_processprioN' => 'Normal',
 'ovpn_processprioLN' => 'Tiefer als Normal',
 'ovpn_processprioD' => 'Tief',
 'advproxy advanced proxy' => 'Advanced Proxy',
 'advproxy ssadvanced proxy' => 'advanced proxy',
 'advproxy advanced web proxy' => 'Advanced Web Proxy',
-'advproxy advanced web proxy configuration' => 'Advanced Web Proxy Konfiguration',
+'advproxy advanced web proxy configuration' => 'Proxy-Konfiguration',
 'advproxy common settings' => 'Allgemeine Einstellungen',
 'advproxy enabled on' => 'Aktiviert auf',
 'advproxy transparent on' => 'Transparent auf',
 'advproxy via forwarding' => 'Proxy-Adresse weiterleiten',
 'advproxy client IP forwarding' => 'Client-IP-Adresse weiterleiten',
 'advproxy username forwarding' => ' Benutzernamen weiterleiten',
-'advproxy upstream proxy host:port' => 'Vorgelagerter Proxy (Host:Port)',
+'advproxy upstream proxy hostport' => 'Vorgelagerter Proxy (HostPort)',
 'advproxy upstream username' => 'Proxy-Benutzername',
 'advproxy upstream password' => 'Proxy-Passwort',
 'advproxy log settings' => 'Protokolleinstellungen',
 'advproxy RADIUS use positive access list' => 'Verwende positive Zugriffskontrolle',
 'advproxy RADIUS use negative access list' => 'Verwende negative Zugriffskontrolle',
 'advproxy errmsg invalid upstream proxy username or password setting' => 'Ungültiger Benutzername oder ungültiges Kennwort für Upstream Proxy',
-'advproxy errmsg hdd cache size' => 'Ungültiger Wert für die Größe des Festplatten-Cachespeichers (min. 10 MB erforderlich)',
-'advproxy errmsg mem cache size' => 'Ungültiger Wert für die Größe des RAM-Cachespeichers',
+'advproxy errmsg hdd cache size' => 'Ungültiger Wert für die Größe des Festplatten-Cachespeichers (min. 10 MB erforderlich)',
+'advproxy errmsg mem cache size' => 'Ungültiger Wert für die Größe des RAM-Cachespeichers',
 'advproxy errmsg time restriction' => 'Ungültige Zeitbeschränkung',
 'advproxy errmsg no browser' => 'Mindestens ein Browser oder Client muss für den Web-Zugriff zugelassen sein',
 'advproxy errmsg auth children' => 'Ungültige Anzahl Authentifizierungsprozesse',
 'advproxy errmsg password incorrect' => 'Falsches Passwort',
 'advproxy errmsg change fail' => 'Passwort konnte nicht geändert werden',
 'advproxy errmsg change success'  => 'Passwort für Webzugriff erfolgreich geändert',
-'advproxy chgwebpwd SUCCESS' => 'E R F O L G :',
-'advproxy chgwebpwd ERROR' => 'F E H L E R :',
+'advproxy chgwebpwd SUCCESS' => 'E R F O L G ',
+'advproxy chgwebpwd ERROR' => 'F E H L E R ',
 'advproxy update notification' => 'Update-Benachrichtigung!',
 'advproxy update information' => 'Eine aktualisierte Version steht zum Download bereit. Besuchen Sie <a href="http://www.advproxy.net" target="_blank">http://www.advproxy.net</a> für weitere Informationen.',
-'linkq' => 'Verbindungsqualität',
+'linkq' => 'Verbindungsqualität',
 'empty profile' => 'Unbenannt',
 
 ); 
index 8437cdd..bdd4167 100644 (file)
 
 include Config
 
-VER        = 3.1.1
+VER        = 3.1.3
 
 THISAPP    = Mail-SpamAssassin-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
-DL_FROM    = http://www.artfiles.org/apache.org/spamassassin/source
+DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = f7844cbc149de3d7b09a4310f4ab6739
+$(DL_FILE)_MD5 = 32ad78f3cdaddb02cdf0f55572604d07
 
 install : $(TARGET)
 
index 21e589a..0062140 100644 (file)
@@ -3,7 +3,7 @@
 # $Id: rc.sysinit,v 1.18.2.36 2005/12/01 20:13:08 eoberlander Exp $
 #
 
-eval $(/usr/local/bin/readhash CONFIG_ROOT/main/settings)
+eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
 
 umask 022
 
@@ -153,7 +153,7 @@ LANG=en_US.utf8
 export LANG
 
 echo "Setting consolefonts"
-eval $(/usr/local/bin/readhash CONFIG_ROOT/main/settings)
+eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
 for i in 2 3 4 5 6; do
        > /dev/tty$i
 done
@@ -181,8 +181,8 @@ echo "Clearing old files"
 rm -f /var/run/{*.pid,*.sem,*.tdb}
 rm -f /var/run/dhcpcd-*.pid
 rm -f /var/lock/{LCK..tty*,rc.updatered.lock}
-rm -f CONFIG_ROOT/dhcpc/{*.pid,*.cache,*.info}
-rm -f CONFIG_ROOT/red/{active,eciadsl-synch-done}
+rm -f /var/ipfire/dhcpc/{*.pid,*.cache,*.info}
+rm -f /var/ipfire/red/{active,eciadsl-synch-done}
 
 echo "Setting the clock"
 /sbin/hwclock --hctosys
@@ -193,9 +193,9 @@ touch /var/log/wtmp
 chgrp utmp /var/run/utmp /var/log/wtmp
 chmod 0664 /var/run/utmp /var/log/wtmp
 
-if [ -x /usr/sbin/isapnp -a -f CONFIG_ROOT/isapnp/isapnp.conf -a ! -f /proc/isapnp ]; then
+if [ -x /usr/sbin/isapnp -a -f /var/ipfire/isapnp/isapnp.conf -a ! -f /proc/isapnp ]; then
        echo "Running isapnp"
-       /usr/sbin/isapnp CONFIG_ROOT/isapnp/isapnp.conf 2>/dev/null
+       /usr/sbin/isapnp /var/ipfire/isapnp/isapnp.conf 2>/dev/null
 fi
 
 if [ ! -e /etc/ssh/ssh_host_key ]; then
@@ -232,38 +232,40 @@ echo "Running /etc/rc.d/rc.network"
 echo "Dumping boot messages"
 dmesg > /var/log/dmesg
 
-if [ -e /var/log/rrd/disk.rrd ]; then
-       echo "Adjusting graphs to compensate for boot"
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk.rrd","-t","readsect:writesect","N:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hda.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hda.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdb.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdb.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdc.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdc.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdd.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdd.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hde.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hde.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdf.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdf.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdg.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdg.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdh.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdh.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /tmp/hddshutdown-stat ] ; then
-  rm /tmp/hddshutdown-*"
-fi
-/usr/local/bin/hddshutdown
+echo 7200 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
+
+#if [ -e /var/log/rrd/disk.rrd ]; then
+#      echo "Adjusting graphs to compensate for boot"
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk.rrd","-t","readsect:writesect","N:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hda.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hda.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdb.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdb.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdc.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdc.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdd.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdd.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hde.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hde.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdf.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdf.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdg.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdg.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdh.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdh.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /tmp/hddshutdown-stat ] ; then
+#  rm /tmp/hddshutdown-*"
+#fi
+#/usr/local/bin/hddshutdown
 
 echo "Starting crond"
 /usr/sbin/fcron
@@ -280,7 +282,7 @@ echo "Starting ntpd (if enabled)"
 echo "Starting openvpn (if enabled)"
 /usr/local/bin/openvpnctrl --start-daemon-only
 
-if [ -e "CONFIG_ROOT/proxy/squid.conf" ]; then
+if [ -e "/var/ipfire/proxy/squid.conf" ]; then
        echo "Starting squid (if enabled)"
        /usr/local/bin/restartsquid
 fi
index 1ea6dc3..b3ea42f 100644 (file)
@@ -28,7 +28,7 @@ use strict;
 #use warnings;
 
 use RRDs;
-require "CONFIG_ROOT/general-functions.pl";
+require "/var/ipfire/general-functions.pl";
 require "${General::swroot}/lang.pl";
 
 my (%settings, @ipacsum, $iface, $ERROR);
@@ -625,7 +625,7 @@ sub updatelq {
        my $roundtrip=0;
        my $test=0;
 #      LQ_GATEWAY is the ip of your isp's public ip facing you
-       my $LQ_GATEWAY=`netstat -r | grep ^default | awk '{print \$2}'`;
+       my $LQ_GATEWAY='www.heise.de';
        my $NUMPINGS=10;
        my $pingoutput = `ping -c $NUMPINGS -q $LQ_GATEWAY`;
        chomp;
diff --git a/src/scripts/morningreconnect b/src/scripts/morningreconnect
new file mode 100644 (file)
index 0000000..82dfc92
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/bash
+#
+# IPFire SCRIPTs
+#
+# This code is distributed under the terms of the GPL
+#
+# (c) The IPFire Team
+
+# begin
+
+if [ -e "/var/ipfire/morningreconnect/enable" ]; then
+               logger -t ipfire MorningReconnect executed!
+               /etc/rc.d/rc.red stop
+               /bin/sleep 10
+               /etc/rc.d/rc.red start
+fi
+
+# end