From dd73ef846e9b75c52da993044c0bbba67dc8f7f6 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 12 Apr 2014 12:18:57 +0200 Subject: [PATCH 01/12] media.cgi: Add missing 'tr'. --- doc/language_issues.de | 1 - doc/language_issues.en | 1 - doc/language_issues.es | 1 + doc/language_issues.fr | 1 + doc/language_issues.nl | 1 + doc/language_issues.pl | 1 + doc/language_issues.ru | 1 + doc/language_issues.tr | 1 - html/cgi-bin/media.cgi | 2 +- 9 files changed, 6 insertions(+), 4 deletions(-) diff --git a/doc/language_issues.de b/doc/language_issues.de index a7d894055..d501b712e 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -4,7 +4,6 @@ WARNING: translation string unused: ConnSched select profile WARNING: translation string unused: HDD temperature WARNING: translation string unused: Level7 rule WARNING: translation string unused: Local VPN IP -WARNING: translation string unused: MB written WARNING: translation string unused: Ping WARNING: translation string unused: Queuelenght WARNING: translation string unused: Remote IP diff --git a/doc/language_issues.en b/doc/language_issues.en index 26c8d3280..494780f25 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -4,7 +4,6 @@ WARNING: translation string unused: ConnSched select profile WARNING: translation string unused: HDD temperature WARNING: translation string unused: Level7 rule WARNING: translation string unused: Local VPN IP -WARNING: translation string unused: MB written WARNING: translation string unused: Ping WARNING: translation string unused: Queuelenght WARNING: translation string unused: Remote IP diff --git a/doc/language_issues.es b/doc/language_issues.es index 95f85cb2f..0e73b2e15 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -577,6 +577,7 @@ WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot WARNING: untranslated string: ConnSched shutdown WARNING: untranslated string: MB read +WARNING: untranslated string: MB written WARNING: untranslated string: Scan for Songs WARNING: untranslated string: Set time on boot WARNING: untranslated string: addons diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 0b513d06e..8206c5787 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -588,6 +588,7 @@ WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot WARNING: untranslated string: ConnSched shutdown WARNING: untranslated string: MB read +WARNING: untranslated string: MB written WARNING: untranslated string: Scan for Songs WARNING: untranslated string: addons WARNING: untranslated string: advproxy cache-digest diff --git a/doc/language_issues.nl b/doc/language_issues.nl index d19b60215..f6311e97e 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -592,6 +592,7 @@ WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot WARNING: untranslated string: ConnSched shutdown WARNING: untranslated string: MB read +WARNING: untranslated string: MB written WARNING: untranslated string: Scan for Songs WARNING: untranslated string: addons WARNING: untranslated string: advproxy cache-digest diff --git a/doc/language_issues.pl b/doc/language_issues.pl index 95f85cb2f..0e73b2e15 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -577,6 +577,7 @@ WARNING: untranslated string: ConnSched hangup WARNING: untranslated string: ConnSched reboot WARNING: untranslated string: ConnSched shutdown WARNING: untranslated string: MB read +WARNING: untranslated string: MB written WARNING: untranslated string: Scan for Songs WARNING: untranslated string: Set time on boot WARNING: untranslated string: addons diff --git a/doc/language_issues.ru b/doc/language_issues.ru index 15caa07f9..e385fd8ce 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -581,6 +581,7 @@ WARNING: untranslated string: ConnSched reboot WARNING: untranslated string: ConnSched shutdown WARNING: untranslated string: Edit an existing route WARNING: untranslated string: MB read +WARNING: untranslated string: MB written WARNING: untranslated string: Scan for Songs WARNING: untranslated string: addons WARNING: untranslated string: advproxy cache-digest diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 8b3afdf83..a880a58d0 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -4,7 +4,6 @@ WARNING: translation string unused: ConnSched select profile WARNING: translation string unused: HDD temperature WARNING: translation string unused: Level7 rule WARNING: translation string unused: Local VPN IP -WARNING: translation string unused: MB written WARNING: translation string unused: Ping WARNING: translation string unused: Queuelenght WARNING: translation string unused: Remote IP diff --git a/html/cgi-bin/media.cgi b/html/cgi-bin/media.cgi index b231bbf8d..4c94d1c8d 100644 --- a/html/cgi-bin/media.cgi +++ b/html/cgi-bin/media.cgi @@ -152,7 +152,7 @@ END for(my $i = 1; $i <= $#iostat1; $i++){ if ( $i eq '1' ){ - print "$Lang::tr{'device'}$Lang::tr{'MB read'}$Lang::{'MB written'}"; + print "$Lang::tr{'device'}$Lang::tr{'MB read'}$Lang::tr{'MB written'}"; }else{ print "$iostat1[$i]$iostat2[$i]$iostat3[$i]"; } From aa5f4b65685421555cf09eccb068890926512abd Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 12 Apr 2014 15:16:08 +0200 Subject: [PATCH 02/12] firewall: Fix creation of automatic rules for the firewall. If the firewall is part of a local network (e.g. GREEN), we automatically add rules that grant/forbid access for the firewall, too. This has been broken for various default policies other than ALLOWED. --- config/firewall/firewall-lib.pl | 3 ++ config/firewall/rules.pl | 80 +++++++++++++++++++++++++++------ 2 files changed, 70 insertions(+), 13 deletions(-) diff --git a/config/firewall/firewall-lib.pl b/config/firewall/firewall-lib.pl index 9f546a9ef..c4a19e5d8 100755 --- a/config/firewall/firewall-lib.pl +++ b/config/firewall/firewall-lib.pl @@ -520,6 +520,9 @@ sub get_internal_firewall_ip_address return 0; } + # Convert net mask into correct format for &General::IpInSubnet(). + $net_mask = &General::iporsubtodec($net_mask); + my @addresses = &get_internal_firewall_ip_addresses($use_orange); foreach my $zone_address (@addresses) { if (&General::IpInSubnet($zone_address, $net_address, $net_mask)) { diff --git a/config/firewall/rules.pl b/config/firewall/rules.pl index 92f1c0a30..5bd7412e7 100755 --- a/config/firewall/rules.pl +++ b/config/firewall/rules.pl @@ -47,6 +47,7 @@ my @PROTOCOLS_WITH_PORTS = ("tcp", "udp"); my @VALID_TARGETS = ("ACCEPT", "DROP", "REJECT"); my %fwdfwsettings=(); +my %fwoptions = (); my %defaultNetworks=(); my %configfwdfw=();; my %customgrp=(); @@ -63,6 +64,7 @@ my $configgrp = "${General::swroot}/fwhosts/customgroups"; my $netsettings = "${General::swroot}/ethernet/settings"; &General::readhash("${General::swroot}/firewall/settings", \%fwdfwsettings); +&General::readhash("${General::swroot}/optionsfw/settings", \%fwoptions); &General::readhash("$netsettings", \%defaultNetworks); &General::readhasharray($configfwdfw, \%configfwdfw); &General::readhasharray($configinput, \%configinputfw); @@ -71,6 +73,14 @@ my $netsettings = "${General::swroot}/ethernet/settings"; my @log_limit_options = &make_log_limit_options(); +my $POLICY_INPUT_ALLOWED = 0; +my $POLICY_FORWARD_ALLOWED = ($fwdfwsettings{"POLICY"} eq "MODE2"); +my $POLICY_OUTPUT_ALLOWED = ($fwdfwsettings{"POLICY1"} eq "MODE2"); + +my $POLICY_INPUT_ACTION = $fwoptions{"FWPOLICY2"}; +my $POLICY_FORWARD_ACTION = $fwoptions{"FWPOLICY"}; +my $POLICY_OUTPUT_ACTION = $fwoptions{"FWPOLICY1"}; + # MAIN &main(); @@ -131,20 +141,47 @@ sub flush { } sub preparerules { - if (! -z "${General::swroot}/firewall/config"){ - &buildrules(\%configfwdfw); - } if (! -z "${General::swroot}/firewall/input"){ &buildrules(\%configinputfw); } if (! -z "${General::swroot}/firewall/outgoing"){ &buildrules(\%configoutgoingfw); } + if (! -z "${General::swroot}/firewall/config"){ + &buildrules(\%configfwdfw); + } } sub buildrules { my $hash = shift; + # Search for targets that need to be specially handled when adding + # forwarding rules. Additional rules will automatically get inserted + # into the INPUT/OUTPUT chains for these targets. + my @special_input_targets = (); + if (!$POLICY_FORWARD_ALLOWED) { + push(@special_input_targets, "ACCEPT"); + } + + if ($POLICY_INPUT_ACTION eq "DROP") { + push(@special_input_targets, "REJECT"); + } elsif ($POLICY_INPUT_ACTION eq "REJECT") { + push(@special_input_targets, "DROP"); + } + + my @special_output_targets = (); + if ($POLICY_OUTPUT_ALLOWED) { + push(@special_output_targets, ("DROP", "REJECT")); + } else { + push(@special_output_targets, "ACCEPT"); + + if ($POLICY_OUTPUT_ACTION eq "DROP") { + push(@special_output_targets, "REJECT"); + } elsif ($POLICY_OUTPUT_ACTION eq "REJECT") { + push(@special_output_targets, "DROP"); + } + } + foreach my $key (sort {$a <=> $b} keys %$hash) { # Skip disabled rules. next unless ($$hash{$key}[2] eq 'ON'); @@ -297,11 +334,16 @@ sub buildrules { # Add time constraint options. push(@options, @time_options); - my $firewall_is_in_source_subnet = 0; + my $firewall_is_in_source_subnet = 1; if ($source) { $firewall_is_in_source_subnet = &firewall_is_in_subnet($source); } + my $firewall_is_in_destination_subnet = 1; + if ($destination) { + $firewall_is_in_destination_subnet = &firewall_is_in_subnet($destination); + } + # Process NAT rules. if ($NAT) { my $nat_address = &fwlib::get_nat_address($$hash{$key}[29], $source); @@ -380,14 +422,6 @@ sub buildrules { } push(@options, @source_options); - - if ($firewall_is_in_source_subnet && ($fwdfwsettings{"POLICY"} eq "MODE1") && ($chain eq $CHAIN_FORWARD)) { - if ($LOG && !$NAT) { - run("$IPTABLES -A $CHAIN_INPUT @options @log_limit_options -j LOG --log-prefix '$CHAIN_INPUT '"); - } - run("$IPTABLES -A $CHAIN_INPUT @options -j $target"); - } - push(@options, @destination_options); # Insert firewall rule. @@ -395,6 +429,27 @@ sub buildrules { run("$IPTABLES -A $chain @options @log_limit_options -j LOG --log-prefix '$chain '"); } run("$IPTABLES -A $chain @options -j $target"); + + # Handle forwarding rules and add corresponding rules for firewall access. + if ($chain eq $CHAIN_FORWARD) { + # If the firewall is part of the destination subnet and access to the destination network + # is granted/forbidden for any network that the firewall itself is part of, we grant/forbid access + # for the firewall, too. + if ($firewall_is_in_destination_subnet && ($target ~~ @special_input_targets)) { + if ($LOG && !$NAT) { + run("$IPTABLES -A $CHAIN_INPUT @options @log_limit_options -j LOG --log-prefix '$CHAIN_INPUT '"); + } + run("$IPTABLES -A $CHAIN_INPUT @options -j $target"); + } + + # Likewise. + if ($firewall_is_in_source_subnet && ($target ~~ @special_output_targets)) { + if ($LOG && !$NAT) { + run("$IPTABLES -A $CHAIN_OUTPUT @options @log_limit_options -j LOG --log-prefix '$CHAIN_OUTPUT '"); + } + run("$IPTABLES -A $CHAIN_OUTPUT @options -j $target"); + } + } } } } @@ -675,4 +730,3 @@ sub firewall_is_in_subnet { return 0; } - From 28e003e4861004579d1a271ac4255c62303c7b6a Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 12 Apr 2014 15:23:45 +0200 Subject: [PATCH 03/12] firewall.cgi: Sort protocols alphabetically. --- html/cgi-bin/firewall.cgi | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/html/cgi-bin/firewall.cgi b/html/cgi-bin/firewall.cgi index 9af97d1a8..021255fd7 100644 --- a/html/cgi-bin/firewall.cgi +++ b/html/cgi-bin/firewall.cgi @@ -1284,6 +1284,10 @@ sub get_serviceports } } } + + # Sort protocols alphabetically. + @protocols = sort(@protocols); + return @protocols; } sub getcolor From 766c2f601dc6015a04855420f338eebcd4e815e3 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 12 Apr 2014 15:39:08 +0200 Subject: [PATCH 04/12] rules.pl: Rewrite P2P protocol filter. --- config/firewall/rules.pl | 42 ++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/config/firewall/rules.pl b/config/firewall/rules.pl index 5bd7412e7..2c314d16e 100755 --- a/config/firewall/rules.pl +++ b/config/firewall/rules.pl @@ -495,29 +495,29 @@ sub time_convert_to_minutes { } sub p2pblock { - my $P2PSTRING = ""; - my $DO; - open( FILE, "< $p2pfile" ) or die "Unable to read $p2pfile"; - @p2ps = ; - close FILE; - my $CMD = "-m ipp2p"; - foreach my $p2pentry (sort @p2ps) { - my @p2pline = split( /\;/, $p2pentry ); - if ( $fwdfwsettings{'POLICY'} eq 'MODE1' ) { - $DO = "ACCEPT"; - if ("$p2pline[2]" eq "on") { - $P2PSTRING = "$P2PSTRING --$p2pline[1]"; - } - }else { - $DO = "RETURN"; - if ("$p2pline[2]" eq "off") { - $P2PSTRING = "$P2PSTRING --$p2pline[1]"; - } - } + my $search_action; + my $target; + + if ($fwdfwsettings{"POLICY"} eq "MODE1") { + $search_action = "on"; + $target = "ACCEPT"; + } else { + $search_action = "off"; + $target = "DROP"; } - if($P2PSTRING) { - run("$IPTABLES -A FORWARDFW $CMD $P2PSTRING -j $DO"); + open(FILE, "<$p2pfile") or die "Unable to read $p2pfile"; + my @protocols = (); + foreach my $p2pentry () { + my @p2pline = split(/\;/, $p2pentry); + next unless ($p2pline[2] eq $search_action); + + push(@protocols, "--$p2pline[1]"); + } + close(FILE); + + if (@protocols) { + run("$IPTABLES -A FORWARDFW -m ipp2p @protocols -j $target"); } } From 2dd3aa93f443ae2d29d92e3c6256329c8fb5ff46 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 12 Apr 2014 15:55:44 +0200 Subject: [PATCH 05/12] firewall: Change headlines for rule sections. --- doc/language_issues.de | 2 ++ doc/language_issues.en | 2 ++ doc/language_issues.es | 4 ++++ doc/language_issues.fr | 4 ++++ doc/language_issues.nl | 4 ++++ doc/language_issues.pl | 4 ++++ doc/language_issues.ru | 4 ++++ doc/language_issues.tr | 4 ++++ doc/language_missings | 8 ++++++++ html/cgi-bin/firewall.cgi | 4 ++-- langs/de/cgi-bin/de.pl | 2 ++ langs/en/cgi-bin/en.pl | 2 ++ 12 files changed, 42 insertions(+), 2 deletions(-) diff --git a/doc/language_issues.de b/doc/language_issues.de index d501b712e..decab3f6f 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -181,6 +181,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -379,6 +380,7 @@ WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: our donors WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall add ip group WARNING: translation string unused: outgoing firewall add mac group WARNING: translation string unused: outgoing firewall edit ip group diff --git a/doc/language_issues.en b/doc/language_issues.en index 494780f25..c7b3c4b78 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -203,6 +203,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -405,6 +406,7 @@ WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: our donors WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall add ip group WARNING: translation string unused: outgoing firewall add mac group WARNING: translation string unused: outgoing firewall edit ip group diff --git a/doc/language_issues.es b/doc/language_issues.es index 0e73b2e15..187d68c76 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -196,6 +196,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -361,6 +362,7 @@ WARNING: translation string unused: or WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall mode0 WARNING: translation string unused: outgoing firewall mode1 WARNING: translation string unused: outgoing firewall mode2 @@ -820,6 +822,7 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay WARNING: untranslated string: invalid input for dpd timeout @@ -845,6 +848,7 @@ WARNING: untranslated string: openvpn prefix openvpn subnet WARNING: untranslated string: openvpn prefix remote subnet WARNING: untranslated string: openvpn subnet is used WARNING: untranslated string: other +WARNING: untranslated string: outgoing firewall access WARNING: untranslated string: outgoing firewall p2p allow WARNING: untranslated string: outgoing firewall p2p deny WARNING: untranslated string: ovpn errmsg green already pushed diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 8206c5787..ac595b0a1 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -196,6 +196,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -361,6 +362,7 @@ WARNING: translation string unused: or WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall add ip group WARNING: translation string unused: outgoing firewall add mac group WARNING: translation string unused: outgoing firewall edit ip group @@ -831,6 +833,7 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay WARNING: untranslated string: invalid input for dpd timeout @@ -858,6 +861,7 @@ WARNING: untranslated string: openvpn prefix openvpn subnet WARNING: untranslated string: openvpn prefix remote subnet WARNING: untranslated string: openvpn subnet is used WARNING: untranslated string: other +WARNING: untranslated string: outgoing firewall access WARNING: untranslated string: ovpn mgmt in root range WARNING: untranslated string: ovpn mtu-disc WARNING: untranslated string: ovpn mtu-disc and mtu not 1500 diff --git a/doc/language_issues.nl b/doc/language_issues.nl index f6311e97e..d31d972c3 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -198,6 +198,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -366,6 +367,7 @@ WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: our donors WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall add ip group WARNING: translation string unused: outgoing firewall add mac group WARNING: translation string unused: outgoing firewall edit ip group @@ -778,6 +780,7 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay WARNING: untranslated string: invalid input for dpd timeout @@ -793,6 +796,7 @@ WARNING: untranslated string: most preferred WARNING: untranslated string: no hardware random number generator WARNING: untranslated string: notice WARNING: untranslated string: openvpn network +WARNING: untranslated string: outgoing firewall access WARNING: untranslated string: ovpn mgmt in root range WARNING: untranslated string: ovpn no connections WARNING: untranslated string: ovpn port in root range diff --git a/doc/language_issues.pl b/doc/language_issues.pl index 0e73b2e15..187d68c76 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -196,6 +196,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -361,6 +362,7 @@ WARNING: translation string unused: or WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall mode0 WARNING: translation string unused: outgoing firewall mode1 WARNING: translation string unused: outgoing firewall mode2 @@ -820,6 +822,7 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay WARNING: untranslated string: invalid input for dpd timeout @@ -845,6 +848,7 @@ WARNING: untranslated string: openvpn prefix openvpn subnet WARNING: untranslated string: openvpn prefix remote subnet WARNING: untranslated string: openvpn subnet is used WARNING: untranslated string: other +WARNING: untranslated string: outgoing firewall access WARNING: untranslated string: outgoing firewall p2p allow WARNING: untranslated string: outgoing firewall p2p deny WARNING: untranslated string: ovpn errmsg green already pushed diff --git a/doc/language_issues.ru b/doc/language_issues.ru index e385fd8ce..8540edeba 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -195,6 +195,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -355,6 +356,7 @@ WARNING: translation string unused: or WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall add ip group WARNING: translation string unused: outgoing firewall add mac group WARNING: translation string unused: outgoing firewall edit ip group @@ -815,6 +817,7 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: incoming firewall access WARNING: untranslated string: incoming traffic in bytes per second WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay @@ -841,6 +844,7 @@ WARNING: untranslated string: openvpn prefix openvpn subnet WARNING: untranslated string: openvpn prefix remote subnet WARNING: untranslated string: openvpn subnet is used WARNING: untranslated string: other +WARNING: untranslated string: outgoing firewall access WARNING: untranslated string: outgoing traffic in bytes per second WARNING: untranslated string: ovpn mgmt in root range WARNING: untranslated string: ovpn mtu-disc diff --git a/doc/language_issues.tr b/doc/language_issues.tr index a880a58d0..216dc8521 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -203,6 +203,7 @@ WARNING: translation string unused: esp keylife WARNING: translation string unused: expected WARNING: translation string unused: expertoptions WARNING: translation string unused: exportkey +WARNING: translation string unused: external access WARNING: translation string unused: external access configuration WARNING: translation string unused: external access rule added WARNING: translation string unused: external access rule changed @@ -405,6 +406,7 @@ WARNING: translation string unused: original WARNING: translation string unused: other countries WARNING: translation string unused: our donors WARNING: translation string unused: out +WARNING: translation string unused: outgoing firewall WARNING: translation string unused: outgoing firewall add ip group WARNING: translation string unused: outgoing firewall add mac group WARNING: translation string unused: outgoing firewall edit ip group @@ -646,6 +648,8 @@ WARNING: untranslated string: bytes WARNING: untranslated string: count WARNING: untranslated string: fwdfw many WARNING: untranslated string: fwhost err hostip +WARNING: untranslated string: incoming firewall access +WARNING: untranslated string: outgoing firewall access WARNING: untranslated string: route config changed WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed diff --git a/doc/language_missings b/doc/language_missings index fc3089007..3f1f997dd 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -295,6 +295,7 @@ < fw settings ruletable < grouptype < hardware support +< incoming firewall access < integrity < invalid input for dpd delay < invalid input for dpd timeout @@ -328,6 +329,7 @@ < openvpn subnet is used < other < our donors +< outgoing firewall access < ovpn mgmt in root range < ovpn mtu-disc < ovpn mtu-disc and mtu not 1500 @@ -761,6 +763,7 @@ < fw settings ruletable < grouptype < hardware support +< incoming firewall access < integrity < invalid input for dpd delay < invalid input for dpd timeout @@ -792,6 +795,7 @@ < openvpn subnet is used < other < our donors +< outgoing firewall access < outgoing firewall add ip group < outgoing firewall add mac group < outgoing firewall edit ip group @@ -1211,6 +1215,7 @@ < fw settings ruletable < grouptype < hardware support +< incoming firewall access < integrity < invalid input for dpd delay < invalid input for dpd timeout @@ -1242,6 +1247,7 @@ < openvpn subnet is used < other < our donors +< outgoing firewall access < ovpn errmsg green already pushed < ovpn errmsg invalid ip or mask < ovpn mgmt in root range @@ -1651,6 +1657,7 @@ < grouptype < hardware support < hour-graph +< incoming firewall access < incoming traffic in bytes per second < integrity < invalid input for dpd delay @@ -1684,6 +1691,7 @@ < openvpn subnet is used < other < our donors +< outgoing firewall access < outgoing traffic in bytes per second < ovpn mgmt in root range < ovpn mtu-disc diff --git a/html/cgi-bin/firewall.cgi b/html/cgi-bin/firewall.cgi index 021255fd7..4dea2e94b 100644 --- a/html/cgi-bin/firewall.cgi +++ b/html/cgi-bin/firewall.cgi @@ -2299,8 +2299,8 @@ sub viewtablerule &General::readhash("/var/ipfire/ethernet/settings", \%netsettings); &viewtablenew(\%configfwdfw, $configfwdfw, $Lang::tr{'firewall rules'}); - &viewtablenew(\%configinputfw, $configinput, $Lang::tr{'external access'}); - &viewtablenew(\%configoutgoingfw, $configoutgoing, $Lang::tr{'outgoing firewall'}); + &viewtablenew(\%configinputfw, $configinput, $Lang::tr{'incoming firewall access'}); + &viewtablenew(\%configoutgoingfw, $configoutgoing, $Lang::tr{'outgoing firewall access'}); } sub viewtablenew { diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 5e8892d76..ac95fe8ec 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -1200,6 +1200,7 @@ 'inactive' => 'inaktiv', 'include logfiles' => 'mit Logdateien', 'incoming' => 'eingehend', +'incoming firewall access' => 'Eingehender Firewallzugang', 'incoming traffic in bytes per second' => 'Eingehender Verkehr', 'incorrect password' => 'Fehlerhaftes Passwort', 'info' => 'Info', @@ -1599,6 +1600,7 @@ 'out' => 'Aus', 'outgoing' => 'ausgehend', 'outgoing firewall' => 'Ausgehende Firewall', +'outgoing firewall access' => 'Ausgehender Firewallzugang', 'outgoing firewall add ip group' => 'IP Adressgruppen hinzufügen', 'outgoing firewall add mac group' => 'MAC Adressgruppen hinzufügen', 'outgoing firewall edit ip group' => 'IP Adressgruppen bearbeiten', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index db31a89ea..f8cdf7630 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -1228,6 +1228,7 @@ 'inactive' => 'inactive', 'include logfiles' => 'Include logfiles', 'incoming' => 'incoming', +'incoming firewall access' => 'Incoming Firewall Access', 'incoming traffic in bytes per second' => 'Incoming Traffic', 'incorrect password' => 'Incorrect password', 'info' => 'Info', @@ -1629,6 +1630,7 @@ 'out' => 'Out', 'outgoing' => 'outgoing', 'outgoing firewall' => 'Outgoing Firewall', +'outgoing firewall access' => 'Outgoing Firewall Access', 'outgoing firewall add ip group' => 'Add IP Address Group', 'outgoing firewall add mac group' => 'Add MAC Address Group', 'outgoing firewall edit ip group' => 'Edit IP Address Group', From cc81c4305319798f6c47a90acf8a84cdb7a281c8 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 12 Apr 2014 16:01:11 +0200 Subject: [PATCH 06/12] firewall: Fix spelling and seperate spelling issues. --- config/menu/50-firewall.menu | 6 +++--- doc/language_issues.de | 1 + doc/language_issues.en | 1 + doc/language_issues.es | 1 - doc/language_issues.fr | 1 - doc/language_issues.nl | 1 - doc/language_issues.pl | 1 - doc/language_issues.ru | 1 - doc/language_issues.tr | 1 + html/cgi-bin/firewall.cgi | 2 +- langs/de/cgi-bin/de.pl | 4 ++-- 11 files changed, 9 insertions(+), 11 deletions(-) diff --git a/config/menu/50-firewall.menu b/config/menu/50-firewall.menu index ce6fd9d8d..e872e6428 100644 --- a/config/menu/50-firewall.menu +++ b/config/menu/50-firewall.menu @@ -1,7 +1,7 @@ - $subfirewall->{'10.forward'} = { - 'caption' => $Lang::tr{'fwdfw menu'}, + $subfirewall->{'10.firewall'} = { + 'caption' => $Lang::tr{'firewall rules'}, 'uri' => '/cgi-bin/firewall.cgi', - 'title' => "$Lang::tr{'fwdfw menu'}", + 'title' => "$Lang::tr{'firewall rules'}", 'enabled' => 1, }; $subfirewall->{'20.fwhost'} = { diff --git a/doc/language_issues.de b/doc/language_issues.de index decab3f6f..486ecba0d 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -217,6 +217,7 @@ WARNING: translation string unused: fwdfw final_rule WARNING: translation string unused: fwdfw from WARNING: translation string unused: fwdfw ipsec network WARNING: translation string unused: fwdfw man port +WARNING: translation string unused: fwdfw menu WARNING: translation string unused: fwdfw natport used WARNING: translation string unused: fwdfw p2p txt WARNING: translation string unused: fwdfw rule action diff --git a/doc/language_issues.en b/doc/language_issues.en index c7b3c4b78..e968b591a 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -239,6 +239,7 @@ WARNING: translation string unused: fwdfw final_rule WARNING: translation string unused: fwdfw from WARNING: translation string unused: fwdfw ipsec network WARNING: translation string unused: fwdfw man port +WARNING: translation string unused: fwdfw menu WARNING: translation string unused: fwdfw natport used WARNING: translation string unused: fwdfw p2p txt WARNING: translation string unused: fwdfw rule action diff --git a/doc/language_issues.es b/doc/language_issues.es index 187d68c76..dbccd8f58 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -719,7 +719,6 @@ WARNING: untranslated string: fwdfw iface WARNING: untranslated string: fwdfw log WARNING: untranslated string: fwdfw log rule WARNING: untranslated string: fwdfw many -WARNING: untranslated string: fwdfw menu WARNING: untranslated string: fwdfw movedown WARNING: untranslated string: fwdfw moveup WARNING: untranslated string: fwdfw newrule diff --git a/doc/language_issues.fr b/doc/language_issues.fr index ac595b0a1..4acdaf485 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -730,7 +730,6 @@ WARNING: untranslated string: fwdfw iface WARNING: untranslated string: fwdfw log WARNING: untranslated string: fwdfw log rule WARNING: untranslated string: fwdfw many -WARNING: untranslated string: fwdfw menu WARNING: untranslated string: fwdfw movedown WARNING: untranslated string: fwdfw moveup WARNING: untranslated string: fwdfw newrule diff --git a/doc/language_issues.nl b/doc/language_issues.nl index d31d972c3..949acdc39 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -677,7 +677,6 @@ WARNING: untranslated string: fwdfw iface WARNING: untranslated string: fwdfw log WARNING: untranslated string: fwdfw log rule WARNING: untranslated string: fwdfw many -WARNING: untranslated string: fwdfw menu WARNING: untranslated string: fwdfw movedown WARNING: untranslated string: fwdfw moveup WARNING: untranslated string: fwdfw newrule diff --git a/doc/language_issues.pl b/doc/language_issues.pl index 187d68c76..dbccd8f58 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -719,7 +719,6 @@ WARNING: untranslated string: fwdfw iface WARNING: untranslated string: fwdfw log WARNING: untranslated string: fwdfw log rule WARNING: untranslated string: fwdfw many -WARNING: untranslated string: fwdfw menu WARNING: untranslated string: fwdfw movedown WARNING: untranslated string: fwdfw moveup WARNING: untranslated string: fwdfw newrule diff --git a/doc/language_issues.ru b/doc/language_issues.ru index 8540edeba..e57e91e78 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -714,7 +714,6 @@ WARNING: untranslated string: fwdfw iface WARNING: untranslated string: fwdfw log WARNING: untranslated string: fwdfw log rule WARNING: untranslated string: fwdfw many -WARNING: untranslated string: fwdfw menu WARNING: untranslated string: fwdfw movedown WARNING: untranslated string: fwdfw moveup WARNING: untranslated string: fwdfw newrule diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 216dc8521..050204327 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -239,6 +239,7 @@ WARNING: translation string unused: fwdfw final_rule WARNING: translation string unused: fwdfw from WARNING: translation string unused: fwdfw ipsec network WARNING: translation string unused: fwdfw man port +WARNING: translation string unused: fwdfw menu WARNING: translation string unused: fwdfw natport used WARNING: translation string unused: fwdfw p2p txt WARNING: translation string unused: fwdfw rule action diff --git a/html/cgi-bin/firewall.cgi b/html/cgi-bin/firewall.cgi index 4dea2e94b..53c7c1c1f 100644 --- a/html/cgi-bin/firewall.cgi +++ b/html/cgi-bin/firewall.cgi @@ -101,7 +101,7 @@ my @protocols; &General::readhasharray("$configipsec", \%ipsecconf); &Header::showhttpheaders(); &Header::getcgihash(\%fwdfwsettings); -&Header::openpage($Lang::tr{'fwdfw menu'}, 1, ''); +&Header::openpage($Lang::tr{'firewall rules'}, 1, ''); &Header::openbigbox('100%', 'center',$errormessage); #### JAVA SCRIPT #### print< 'Von Email Server', 'from email user' => 'Von Email Benutzer', 'from warn email bad' => 'Von Email Adresse ist nicht gültig', -'fw blue' => 'Firewall-Optionen für das Blaue Interface', +'fw blue' => 'Firewalloptionen für das Blaue Interface', 'fw default drop' => 'Firewall Policy', 'fw logging' => 'Firewall-Logging', 'fw settings' => 'Firewall-Einstellungen', @@ -1581,7 +1581,7 @@ 'optional at cmd' => 'zusätzlicher Modembefehl', 'optional data' => '3. Optionale Einstellungen', 'options' => 'Optionen', -'options fw' => 'Firewall-Optionen', +'options fw' => 'Firewalloptionen', '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', 'or' => 'oder', From d22294fa7e70fa6eb907239ba00c2a0c7ae1863d Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 12 Apr 2014 16:17:20 +0200 Subject: [PATCH 07/12] firewall: Fix outgoing OpenVPN N2N tunnel packets. Don't throw away packets from the firewall that pass through an OpenVPN N2N tunnel. --- src/initscripts/init.d/firewall | 1 - 1 file changed, 1 deletion(-) diff --git a/src/initscripts/init.d/firewall b/src/initscripts/init.d/firewall index 31aa2c9b5..f0d9c492a 100644 --- a/src/initscripts/init.d/firewall +++ b/src/initscripts/init.d/firewall @@ -107,7 +107,6 @@ iptables_init() { # Block OpenVPN transfer networks iptables -N OVPNBLOCK iptables -A INPUT -i tun+ -j OVPNBLOCK - iptables -A OUTPUT -o tun+ -j OVPNBLOCK iptables -A FORWARD -i tun+ -j OVPNBLOCK iptables -A FORWARD -o tun+ -j OVPNBLOCK From a78d662c7ae4cd0c12d3a69069afc6bb04e147e5 Mon Sep 17 00:00:00 2001 From: Arne Fitzenreiter Date: Mon, 14 Apr 2014 20:13:14 +0200 Subject: [PATCH 08/12] kernel: update to 3.10.37. --- lfs/linux | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lfs/linux b/lfs/linux index e5f12d222..948d056a6 100644 --- a/lfs/linux +++ b/lfs/linux @@ -24,10 +24,10 @@ include Config -VER = 3.10.36 +VER = 3.10.37 RPI_PATCHES = linux-3.10.34-grsec-dea8280 -GRS_PATCHES = grsecurity-2.9.1-3.10.36-ipfire1.patch.xz +GRS_PATCHES = grsecurity-2.9.1-3.10.37-ipfire1.patch.xz THISAPP = linux-$(VER) DL_FILE = linux-$(VER).tar.xz @@ -36,7 +36,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) CFLAGS = CXXFLAGS = -PAK_VER = 41 +PAK_VER = 42 DEPS = "" VERSUFIX=ipfire$(KCFG) @@ -74,9 +74,9 @@ $(DL_FILE) = $(URL_IPFIRE)/$(DL_FILE) rpi-patches-$(RPI_PATCHES).patch.xz = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES).patch.xz $(GRS_PATCHES) = $(URL_IPFIRE)/$(GRS_PATCHES) -$(DL_FILE)_MD5 = 721f76050755ec8ec88876ee350a2726 +$(DL_FILE)_MD5 = a08a10ffc31b07d9422af1cd2baa3274 rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = 522683db031f7033b1b5dfe1b1f30e67 -$(GRS_PATCHES)_MD5 = 85717c4d6643ea52eef443ee7bc873e2 +$(GRS_PATCHES)_MD5 = 7b0f44571974217d79dbcdf5d7e33976 install : $(TARGET) From eae92b2bafe3a94a3c6c616f8ff02c6fa013e97a Mon Sep 17 00:00:00 2001 From: Alexander Marx Date: Mon, 14 Apr 2014 08:02:16 +0200 Subject: [PATCH 09/12] Firewall: Bug 10514 fixed --- html/cgi-bin/fwhosts.cgi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/html/cgi-bin/fwhosts.cgi b/html/cgi-bin/fwhosts.cgi index 53d93ef5a..e8ddf461e 100644 --- a/html/cgi-bin/fwhosts.cgi +++ b/html/cgi-bin/fwhosts.cgi @@ -1846,7 +1846,7 @@ sub viewtablegrp print "$Lang::tr{'fwhost deleted'}$customgrp{$key}[3]
"; }else{ my ($colip,$colsub) = split("/",$ip); - $ip="$colip/".&General::subtocidr($colsub) if ($colsub); + $ip="$colip/".&General::iporsubtocidr($colsub) if ($colsub); print"".&getcolor($ip)."$customgrp{$key}[3]"; } if ($delflag > 0 && $ip ne ''){ From fab1f85783abd330657d6c0d331848e50347ca4c Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Tue, 15 Apr 2014 21:16:14 +0200 Subject: [PATCH 10/12] strongswan: Update to 5.1.3. Fixes CVE-2014-2338. --- lfs/strongswan | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lfs/strongswan b/lfs/strongswan index 600a16f46..f9f6e7811 100644 --- a/lfs/strongswan +++ b/lfs/strongswan @@ -24,7 +24,7 @@ include Config -VER = 5.1.2 +VER = 5.1.3 THISAPP = strongswan-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -48,7 +48,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_MD5 = d45a2e89c624bceaf2e53c9b9cdddf83 +$(DL_FILE)_MD5 = 1d1c108775242743cd8699215b2918c3 install : $(TARGET) From b18b011b840ced8db756d75b7bd0e40c940e11b6 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Tue, 15 Apr 2014 21:38:24 +0200 Subject: [PATCH 11/12] Rename IPFire 2.15 Core Update 76 -> 77. --- config/rootfiles/core/{76 => 77}/exclude | 0 config/rootfiles/core/{76 => 77}/filelists/Net_SSLeay | 0 config/rootfiles/core/{76 => 77}/filelists/apache2 | 0 config/rootfiles/core/{76 => 77}/filelists/armv5tel/binutils | 0 config/rootfiles/core/{76 => 77}/filelists/armv5tel/dracut | 0 config/rootfiles/core/{76 => 77}/filelists/armv5tel/gcc | 0 config/rootfiles/core/{76 => 77}/filelists/armv5tel/glibc | 0 .../rootfiles/core/{76 => 77}/filelists/armv5tel/initscripts | 0 .../core/{76 => 77}/filelists/armv5tel/linux-kirkwood | 0 .../rootfiles/core/{76 => 77}/filelists/armv5tel/linux-multi | 0 config/rootfiles/core/{76 => 77}/filelists/armv5tel/linux-rpi | 0 .../rootfiles/core/{76 => 77}/filelists/armv5tel/lm_sensors | 0 .../rootfiles/core/{76 => 77}/filelists/armv5tel/rpi-firmware | 0 config/rootfiles/core/{76 => 77}/filelists/armv5tel/u-boot | 0 .../rootfiles/core/{76 => 77}/filelists/armv5tel/util-linux | 0 config/rootfiles/core/{76 => 77}/filelists/beep | 0 config/rootfiles/core/{76 => 77}/filelists/bridge-utils | 0 config/rootfiles/core/{76 => 77}/filelists/coreutils | 0 config/rootfiles/core/{76 => 77}/filelists/cyrus-sasl | 0 config/rootfiles/core/{76 => 77}/filelists/dosfstools | 0 config/rootfiles/core/{76 => 77}/filelists/dvb-firmwares | 0 config/rootfiles/core/{76 => 77}/filelists/e2fsprogs | 0 config/rootfiles/core/{76 => 77}/filelists/files | 0 config/rootfiles/core/{76 => 77}/filelists/fireinfo | 0 config/rootfiles/core/{76 => 77}/filelists/firewall | 0 config/rootfiles/core/{76 => 77}/filelists/i586/binutils | 0 config/rootfiles/core/{76 => 77}/filelists/i586/dracut | 0 config/rootfiles/core/{76 => 77}/filelists/i586/gcc | 0 config/rootfiles/core/{76 => 77}/filelists/i586/glibc | 0 config/rootfiles/core/{76 => 77}/filelists/i586/grub | 0 config/rootfiles/core/{76 => 77}/filelists/i586/initscripts | 0 config/rootfiles/core/{76 => 77}/filelists/i586/linux | 0 config/rootfiles/core/{76 => 77}/filelists/i586/lm_sensors | 0 .../core/{76 => 77}/filelists/i586/strongswan-padlock | 0 config/rootfiles/core/{76 => 77}/filelists/i586/util-linux | 0 config/rootfiles/core/{76 => 77}/filelists/iptables | 0 config/rootfiles/core/{76 => 77}/filelists/iw | 0 config/rootfiles/core/{76 => 77}/filelists/jquery | 0 config/rootfiles/core/{76 => 77}/filelists/kmod | 0 config/rootfiles/core/{76 => 77}/filelists/libnl | 0 config/rootfiles/core/{76 => 77}/filelists/libusbx | 0 config/rootfiles/core/{76 => 77}/filelists/libxml2 | 0 config/rootfiles/core/{76 => 77}/filelists/linux-firmware | 0 config/rootfiles/core/{76 => 77}/filelists/lzo | 0 config/rootfiles/core/{76 => 77}/filelists/misc-progs | 0 config/rootfiles/core/{76 => 77}/filelists/mysql-libs | 0 config/rootfiles/core/{76 => 77}/filelists/net-tools | 0 config/rootfiles/core/{76 => 77}/filelists/ntp | 0 config/rootfiles/core/{76 => 77}/filelists/openssh | 0 config/rootfiles/core/{76 => 77}/filelists/openssl | 0 config/rootfiles/core/{76 => 77}/filelists/openssl-compat | 0 config/rootfiles/core/{76 => 77}/filelists/openvpn | 0 config/rootfiles/core/{76 => 77}/filelists/pakfire | 0 config/rootfiles/core/{76 => 77}/filelists/paxctl | 0 config/rootfiles/core/{76 => 77}/filelists/php | 0 config/rootfiles/core/{76 => 77}/filelists/rng-tools | 0 config/rootfiles/core/{76 => 77}/filelists/setup | 0 config/rootfiles/core/{76 => 77}/filelists/strongswan | 0 config/rootfiles/core/{76 => 77}/filelists/tzdata | 0 config/rootfiles/core/{76 => 77}/filelists/udev | 0 config/rootfiles/core/{76 => 77}/filelists/usb_modeswitch | 0 .../rootfiles/core/{76 => 77}/filelists/usb_modeswitch_data | 0 config/rootfiles/core/{76 => 77}/filelists/usbutils | 0 config/rootfiles/core/{76 => 77}/filelists/vim | 0 config/rootfiles/core/{76 => 77}/filelists/wget | 0 config/rootfiles/core/{76 => 77}/filelists/wpa_supplicant | 0 config/rootfiles/core/{76 => 77}/filelists/xz | 0 config/rootfiles/core/{76 => 77}/meta | 0 config/rootfiles/core/{76 => 77}/update.sh | 2 +- make.sh | 4 ++-- 70 files changed, 3 insertions(+), 3 deletions(-) rename config/rootfiles/core/{76 => 77}/exclude (100%) rename config/rootfiles/core/{76 => 77}/filelists/Net_SSLeay (100%) rename config/rootfiles/core/{76 => 77}/filelists/apache2 (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/binutils (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/dracut (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/gcc (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/glibc (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/initscripts (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/linux-kirkwood (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/linux-multi (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/linux-rpi (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/lm_sensors (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/rpi-firmware (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/u-boot (100%) rename config/rootfiles/core/{76 => 77}/filelists/armv5tel/util-linux (100%) rename config/rootfiles/core/{76 => 77}/filelists/beep (100%) rename config/rootfiles/core/{76 => 77}/filelists/bridge-utils (100%) rename config/rootfiles/core/{76 => 77}/filelists/coreutils (100%) rename config/rootfiles/core/{76 => 77}/filelists/cyrus-sasl (100%) rename config/rootfiles/core/{76 => 77}/filelists/dosfstools (100%) rename config/rootfiles/core/{76 => 77}/filelists/dvb-firmwares (100%) rename config/rootfiles/core/{76 => 77}/filelists/e2fsprogs (100%) rename config/rootfiles/core/{76 => 77}/filelists/files (100%) rename config/rootfiles/core/{76 => 77}/filelists/fireinfo (100%) rename config/rootfiles/core/{76 => 77}/filelists/firewall (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/binutils (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/dracut (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/gcc (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/glibc (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/grub (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/initscripts (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/linux (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/lm_sensors (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/strongswan-padlock (100%) rename config/rootfiles/core/{76 => 77}/filelists/i586/util-linux (100%) rename config/rootfiles/core/{76 => 77}/filelists/iptables (100%) rename config/rootfiles/core/{76 => 77}/filelists/iw (100%) rename config/rootfiles/core/{76 => 77}/filelists/jquery (100%) rename config/rootfiles/core/{76 => 77}/filelists/kmod (100%) rename config/rootfiles/core/{76 => 77}/filelists/libnl (100%) rename config/rootfiles/core/{76 => 77}/filelists/libusbx (100%) rename config/rootfiles/core/{76 => 77}/filelists/libxml2 (100%) rename config/rootfiles/core/{76 => 77}/filelists/linux-firmware (100%) rename config/rootfiles/core/{76 => 77}/filelists/lzo (100%) rename config/rootfiles/core/{76 => 77}/filelists/misc-progs (100%) rename config/rootfiles/core/{76 => 77}/filelists/mysql-libs (100%) rename config/rootfiles/core/{76 => 77}/filelists/net-tools (100%) rename config/rootfiles/core/{76 => 77}/filelists/ntp (100%) rename config/rootfiles/core/{76 => 77}/filelists/openssh (100%) rename config/rootfiles/core/{76 => 77}/filelists/openssl (100%) rename config/rootfiles/core/{76 => 77}/filelists/openssl-compat (100%) rename config/rootfiles/core/{76 => 77}/filelists/openvpn (100%) rename config/rootfiles/core/{76 => 77}/filelists/pakfire (100%) rename config/rootfiles/core/{76 => 77}/filelists/paxctl (100%) rename config/rootfiles/core/{76 => 77}/filelists/php (100%) rename config/rootfiles/core/{76 => 77}/filelists/rng-tools (100%) rename config/rootfiles/core/{76 => 77}/filelists/setup (100%) rename config/rootfiles/core/{76 => 77}/filelists/strongswan (100%) rename config/rootfiles/core/{76 => 77}/filelists/tzdata (100%) rename config/rootfiles/core/{76 => 77}/filelists/udev (100%) rename config/rootfiles/core/{76 => 77}/filelists/usb_modeswitch (100%) rename config/rootfiles/core/{76 => 77}/filelists/usb_modeswitch_data (100%) rename config/rootfiles/core/{76 => 77}/filelists/usbutils (100%) rename config/rootfiles/core/{76 => 77}/filelists/vim (100%) rename config/rootfiles/core/{76 => 77}/filelists/wget (100%) rename config/rootfiles/core/{76 => 77}/filelists/wpa_supplicant (100%) rename config/rootfiles/core/{76 => 77}/filelists/xz (100%) rename config/rootfiles/core/{76 => 77}/meta (100%) rename config/rootfiles/core/{76 => 77}/update.sh (99%) diff --git a/config/rootfiles/core/76/exclude b/config/rootfiles/core/77/exclude similarity index 100% rename from config/rootfiles/core/76/exclude rename to config/rootfiles/core/77/exclude diff --git a/config/rootfiles/core/76/filelists/Net_SSLeay b/config/rootfiles/core/77/filelists/Net_SSLeay similarity index 100% rename from config/rootfiles/core/76/filelists/Net_SSLeay rename to config/rootfiles/core/77/filelists/Net_SSLeay diff --git a/config/rootfiles/core/76/filelists/apache2 b/config/rootfiles/core/77/filelists/apache2 similarity index 100% rename from config/rootfiles/core/76/filelists/apache2 rename to config/rootfiles/core/77/filelists/apache2 diff --git a/config/rootfiles/core/76/filelists/armv5tel/binutils b/config/rootfiles/core/77/filelists/armv5tel/binutils similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/binutils rename to config/rootfiles/core/77/filelists/armv5tel/binutils diff --git a/config/rootfiles/core/76/filelists/armv5tel/dracut b/config/rootfiles/core/77/filelists/armv5tel/dracut similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/dracut rename to config/rootfiles/core/77/filelists/armv5tel/dracut diff --git a/config/rootfiles/core/76/filelists/armv5tel/gcc b/config/rootfiles/core/77/filelists/armv5tel/gcc similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/gcc rename to config/rootfiles/core/77/filelists/armv5tel/gcc diff --git a/config/rootfiles/core/76/filelists/armv5tel/glibc b/config/rootfiles/core/77/filelists/armv5tel/glibc similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/glibc rename to config/rootfiles/core/77/filelists/armv5tel/glibc diff --git a/config/rootfiles/core/76/filelists/armv5tel/initscripts b/config/rootfiles/core/77/filelists/armv5tel/initscripts similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/initscripts rename to config/rootfiles/core/77/filelists/armv5tel/initscripts diff --git a/config/rootfiles/core/76/filelists/armv5tel/linux-kirkwood b/config/rootfiles/core/77/filelists/armv5tel/linux-kirkwood similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/linux-kirkwood rename to config/rootfiles/core/77/filelists/armv5tel/linux-kirkwood diff --git a/config/rootfiles/core/76/filelists/armv5tel/linux-multi b/config/rootfiles/core/77/filelists/armv5tel/linux-multi similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/linux-multi rename to config/rootfiles/core/77/filelists/armv5tel/linux-multi diff --git a/config/rootfiles/core/76/filelists/armv5tel/linux-rpi b/config/rootfiles/core/77/filelists/armv5tel/linux-rpi similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/linux-rpi rename to config/rootfiles/core/77/filelists/armv5tel/linux-rpi diff --git a/config/rootfiles/core/76/filelists/armv5tel/lm_sensors b/config/rootfiles/core/77/filelists/armv5tel/lm_sensors similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/lm_sensors rename to config/rootfiles/core/77/filelists/armv5tel/lm_sensors diff --git a/config/rootfiles/core/76/filelists/armv5tel/rpi-firmware b/config/rootfiles/core/77/filelists/armv5tel/rpi-firmware similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/rpi-firmware rename to config/rootfiles/core/77/filelists/armv5tel/rpi-firmware diff --git a/config/rootfiles/core/76/filelists/armv5tel/u-boot b/config/rootfiles/core/77/filelists/armv5tel/u-boot similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/u-boot rename to config/rootfiles/core/77/filelists/armv5tel/u-boot diff --git a/config/rootfiles/core/76/filelists/armv5tel/util-linux b/config/rootfiles/core/77/filelists/armv5tel/util-linux similarity index 100% rename from config/rootfiles/core/76/filelists/armv5tel/util-linux rename to config/rootfiles/core/77/filelists/armv5tel/util-linux diff --git a/config/rootfiles/core/76/filelists/beep b/config/rootfiles/core/77/filelists/beep similarity index 100% rename from config/rootfiles/core/76/filelists/beep rename to config/rootfiles/core/77/filelists/beep diff --git a/config/rootfiles/core/76/filelists/bridge-utils b/config/rootfiles/core/77/filelists/bridge-utils similarity index 100% rename from config/rootfiles/core/76/filelists/bridge-utils rename to config/rootfiles/core/77/filelists/bridge-utils diff --git a/config/rootfiles/core/76/filelists/coreutils b/config/rootfiles/core/77/filelists/coreutils similarity index 100% rename from config/rootfiles/core/76/filelists/coreutils rename to config/rootfiles/core/77/filelists/coreutils diff --git a/config/rootfiles/core/76/filelists/cyrus-sasl b/config/rootfiles/core/77/filelists/cyrus-sasl similarity index 100% rename from config/rootfiles/core/76/filelists/cyrus-sasl rename to config/rootfiles/core/77/filelists/cyrus-sasl diff --git a/config/rootfiles/core/76/filelists/dosfstools b/config/rootfiles/core/77/filelists/dosfstools similarity index 100% rename from config/rootfiles/core/76/filelists/dosfstools rename to config/rootfiles/core/77/filelists/dosfstools diff --git a/config/rootfiles/core/76/filelists/dvb-firmwares b/config/rootfiles/core/77/filelists/dvb-firmwares similarity index 100% rename from config/rootfiles/core/76/filelists/dvb-firmwares rename to config/rootfiles/core/77/filelists/dvb-firmwares diff --git a/config/rootfiles/core/76/filelists/e2fsprogs b/config/rootfiles/core/77/filelists/e2fsprogs similarity index 100% rename from config/rootfiles/core/76/filelists/e2fsprogs rename to config/rootfiles/core/77/filelists/e2fsprogs diff --git a/config/rootfiles/core/76/filelists/files b/config/rootfiles/core/77/filelists/files similarity index 100% rename from config/rootfiles/core/76/filelists/files rename to config/rootfiles/core/77/filelists/files diff --git a/config/rootfiles/core/76/filelists/fireinfo b/config/rootfiles/core/77/filelists/fireinfo similarity index 100% rename from config/rootfiles/core/76/filelists/fireinfo rename to config/rootfiles/core/77/filelists/fireinfo diff --git a/config/rootfiles/core/76/filelists/firewall b/config/rootfiles/core/77/filelists/firewall similarity index 100% rename from config/rootfiles/core/76/filelists/firewall rename to config/rootfiles/core/77/filelists/firewall diff --git a/config/rootfiles/core/76/filelists/i586/binutils b/config/rootfiles/core/77/filelists/i586/binutils similarity index 100% rename from config/rootfiles/core/76/filelists/i586/binutils rename to config/rootfiles/core/77/filelists/i586/binutils diff --git a/config/rootfiles/core/76/filelists/i586/dracut b/config/rootfiles/core/77/filelists/i586/dracut similarity index 100% rename from config/rootfiles/core/76/filelists/i586/dracut rename to config/rootfiles/core/77/filelists/i586/dracut diff --git a/config/rootfiles/core/76/filelists/i586/gcc b/config/rootfiles/core/77/filelists/i586/gcc similarity index 100% rename from config/rootfiles/core/76/filelists/i586/gcc rename to config/rootfiles/core/77/filelists/i586/gcc diff --git a/config/rootfiles/core/76/filelists/i586/glibc b/config/rootfiles/core/77/filelists/i586/glibc similarity index 100% rename from config/rootfiles/core/76/filelists/i586/glibc rename to config/rootfiles/core/77/filelists/i586/glibc diff --git a/config/rootfiles/core/76/filelists/i586/grub b/config/rootfiles/core/77/filelists/i586/grub similarity index 100% rename from config/rootfiles/core/76/filelists/i586/grub rename to config/rootfiles/core/77/filelists/i586/grub diff --git a/config/rootfiles/core/76/filelists/i586/initscripts b/config/rootfiles/core/77/filelists/i586/initscripts similarity index 100% rename from config/rootfiles/core/76/filelists/i586/initscripts rename to config/rootfiles/core/77/filelists/i586/initscripts diff --git a/config/rootfiles/core/76/filelists/i586/linux b/config/rootfiles/core/77/filelists/i586/linux similarity index 100% rename from config/rootfiles/core/76/filelists/i586/linux rename to config/rootfiles/core/77/filelists/i586/linux diff --git a/config/rootfiles/core/76/filelists/i586/lm_sensors b/config/rootfiles/core/77/filelists/i586/lm_sensors similarity index 100% rename from config/rootfiles/core/76/filelists/i586/lm_sensors rename to config/rootfiles/core/77/filelists/i586/lm_sensors diff --git a/config/rootfiles/core/76/filelists/i586/strongswan-padlock b/config/rootfiles/core/77/filelists/i586/strongswan-padlock similarity index 100% rename from config/rootfiles/core/76/filelists/i586/strongswan-padlock rename to config/rootfiles/core/77/filelists/i586/strongswan-padlock diff --git a/config/rootfiles/core/76/filelists/i586/util-linux b/config/rootfiles/core/77/filelists/i586/util-linux similarity index 100% rename from config/rootfiles/core/76/filelists/i586/util-linux rename to config/rootfiles/core/77/filelists/i586/util-linux diff --git a/config/rootfiles/core/76/filelists/iptables b/config/rootfiles/core/77/filelists/iptables similarity index 100% rename from config/rootfiles/core/76/filelists/iptables rename to config/rootfiles/core/77/filelists/iptables diff --git a/config/rootfiles/core/76/filelists/iw b/config/rootfiles/core/77/filelists/iw similarity index 100% rename from config/rootfiles/core/76/filelists/iw rename to config/rootfiles/core/77/filelists/iw diff --git a/config/rootfiles/core/76/filelists/jquery b/config/rootfiles/core/77/filelists/jquery similarity index 100% rename from config/rootfiles/core/76/filelists/jquery rename to config/rootfiles/core/77/filelists/jquery diff --git a/config/rootfiles/core/76/filelists/kmod b/config/rootfiles/core/77/filelists/kmod similarity index 100% rename from config/rootfiles/core/76/filelists/kmod rename to config/rootfiles/core/77/filelists/kmod diff --git a/config/rootfiles/core/76/filelists/libnl b/config/rootfiles/core/77/filelists/libnl similarity index 100% rename from config/rootfiles/core/76/filelists/libnl rename to config/rootfiles/core/77/filelists/libnl diff --git a/config/rootfiles/core/76/filelists/libusbx b/config/rootfiles/core/77/filelists/libusbx similarity index 100% rename from config/rootfiles/core/76/filelists/libusbx rename to config/rootfiles/core/77/filelists/libusbx diff --git a/config/rootfiles/core/76/filelists/libxml2 b/config/rootfiles/core/77/filelists/libxml2 similarity index 100% rename from config/rootfiles/core/76/filelists/libxml2 rename to config/rootfiles/core/77/filelists/libxml2 diff --git a/config/rootfiles/core/76/filelists/linux-firmware b/config/rootfiles/core/77/filelists/linux-firmware similarity index 100% rename from config/rootfiles/core/76/filelists/linux-firmware rename to config/rootfiles/core/77/filelists/linux-firmware diff --git a/config/rootfiles/core/76/filelists/lzo b/config/rootfiles/core/77/filelists/lzo similarity index 100% rename from config/rootfiles/core/76/filelists/lzo rename to config/rootfiles/core/77/filelists/lzo diff --git a/config/rootfiles/core/76/filelists/misc-progs b/config/rootfiles/core/77/filelists/misc-progs similarity index 100% rename from config/rootfiles/core/76/filelists/misc-progs rename to config/rootfiles/core/77/filelists/misc-progs diff --git a/config/rootfiles/core/76/filelists/mysql-libs b/config/rootfiles/core/77/filelists/mysql-libs similarity index 100% rename from config/rootfiles/core/76/filelists/mysql-libs rename to config/rootfiles/core/77/filelists/mysql-libs diff --git a/config/rootfiles/core/76/filelists/net-tools b/config/rootfiles/core/77/filelists/net-tools similarity index 100% rename from config/rootfiles/core/76/filelists/net-tools rename to config/rootfiles/core/77/filelists/net-tools diff --git a/config/rootfiles/core/76/filelists/ntp b/config/rootfiles/core/77/filelists/ntp similarity index 100% rename from config/rootfiles/core/76/filelists/ntp rename to config/rootfiles/core/77/filelists/ntp diff --git a/config/rootfiles/core/76/filelists/openssh b/config/rootfiles/core/77/filelists/openssh similarity index 100% rename from config/rootfiles/core/76/filelists/openssh rename to config/rootfiles/core/77/filelists/openssh diff --git a/config/rootfiles/core/76/filelists/openssl b/config/rootfiles/core/77/filelists/openssl similarity index 100% rename from config/rootfiles/core/76/filelists/openssl rename to config/rootfiles/core/77/filelists/openssl diff --git a/config/rootfiles/core/76/filelists/openssl-compat b/config/rootfiles/core/77/filelists/openssl-compat similarity index 100% rename from config/rootfiles/core/76/filelists/openssl-compat rename to config/rootfiles/core/77/filelists/openssl-compat diff --git a/config/rootfiles/core/76/filelists/openvpn b/config/rootfiles/core/77/filelists/openvpn similarity index 100% rename from config/rootfiles/core/76/filelists/openvpn rename to config/rootfiles/core/77/filelists/openvpn diff --git a/config/rootfiles/core/76/filelists/pakfire b/config/rootfiles/core/77/filelists/pakfire similarity index 100% rename from config/rootfiles/core/76/filelists/pakfire rename to config/rootfiles/core/77/filelists/pakfire diff --git a/config/rootfiles/core/76/filelists/paxctl b/config/rootfiles/core/77/filelists/paxctl similarity index 100% rename from config/rootfiles/core/76/filelists/paxctl rename to config/rootfiles/core/77/filelists/paxctl diff --git a/config/rootfiles/core/76/filelists/php b/config/rootfiles/core/77/filelists/php similarity index 100% rename from config/rootfiles/core/76/filelists/php rename to config/rootfiles/core/77/filelists/php diff --git a/config/rootfiles/core/76/filelists/rng-tools b/config/rootfiles/core/77/filelists/rng-tools similarity index 100% rename from config/rootfiles/core/76/filelists/rng-tools rename to config/rootfiles/core/77/filelists/rng-tools diff --git a/config/rootfiles/core/76/filelists/setup b/config/rootfiles/core/77/filelists/setup similarity index 100% rename from config/rootfiles/core/76/filelists/setup rename to config/rootfiles/core/77/filelists/setup diff --git a/config/rootfiles/core/76/filelists/strongswan b/config/rootfiles/core/77/filelists/strongswan similarity index 100% rename from config/rootfiles/core/76/filelists/strongswan rename to config/rootfiles/core/77/filelists/strongswan diff --git a/config/rootfiles/core/76/filelists/tzdata b/config/rootfiles/core/77/filelists/tzdata similarity index 100% rename from config/rootfiles/core/76/filelists/tzdata rename to config/rootfiles/core/77/filelists/tzdata diff --git a/config/rootfiles/core/76/filelists/udev b/config/rootfiles/core/77/filelists/udev similarity index 100% rename from config/rootfiles/core/76/filelists/udev rename to config/rootfiles/core/77/filelists/udev diff --git a/config/rootfiles/core/76/filelists/usb_modeswitch b/config/rootfiles/core/77/filelists/usb_modeswitch similarity index 100% rename from config/rootfiles/core/76/filelists/usb_modeswitch rename to config/rootfiles/core/77/filelists/usb_modeswitch diff --git a/config/rootfiles/core/76/filelists/usb_modeswitch_data b/config/rootfiles/core/77/filelists/usb_modeswitch_data similarity index 100% rename from config/rootfiles/core/76/filelists/usb_modeswitch_data rename to config/rootfiles/core/77/filelists/usb_modeswitch_data diff --git a/config/rootfiles/core/76/filelists/usbutils b/config/rootfiles/core/77/filelists/usbutils similarity index 100% rename from config/rootfiles/core/76/filelists/usbutils rename to config/rootfiles/core/77/filelists/usbutils diff --git a/config/rootfiles/core/76/filelists/vim b/config/rootfiles/core/77/filelists/vim similarity index 100% rename from config/rootfiles/core/76/filelists/vim rename to config/rootfiles/core/77/filelists/vim diff --git a/config/rootfiles/core/76/filelists/wget b/config/rootfiles/core/77/filelists/wget similarity index 100% rename from config/rootfiles/core/76/filelists/wget rename to config/rootfiles/core/77/filelists/wget diff --git a/config/rootfiles/core/76/filelists/wpa_supplicant b/config/rootfiles/core/77/filelists/wpa_supplicant similarity index 100% rename from config/rootfiles/core/76/filelists/wpa_supplicant rename to config/rootfiles/core/77/filelists/wpa_supplicant diff --git a/config/rootfiles/core/76/filelists/xz b/config/rootfiles/core/77/filelists/xz similarity index 100% rename from config/rootfiles/core/76/filelists/xz rename to config/rootfiles/core/77/filelists/xz diff --git a/config/rootfiles/core/76/meta b/config/rootfiles/core/77/meta similarity index 100% rename from config/rootfiles/core/76/meta rename to config/rootfiles/core/77/meta diff --git a/config/rootfiles/core/76/update.sh b/config/rootfiles/core/77/update.sh similarity index 99% rename from config/rootfiles/core/76/update.sh rename to config/rootfiles/core/77/update.sh index db8271a87..0078abd94 100644 --- a/config/rootfiles/core/76/update.sh +++ b/config/rootfiles/core/77/update.sh @@ -35,7 +35,7 @@ function add_to_backup () # # Remove old core updates from pakfire cache to save space... -core=76 +core=77 for (( i=1; i<=${core}; i++ )) do rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire diff --git a/make.sh b/make.sh index 93949dce5..23b63ae85 100755 --- a/make.sh +++ b/make.sh @@ -25,8 +25,8 @@ NAME="IPFire" # Software name SNAME="ipfire" # Short name VERSION="2.15" # Version number -CORE="76-rc1" # Core Level (Filename) -PAKFIRE_CORE="76" # Core Level (PAKFIRE) +CORE="77-rc1" # Core Level (Filename) +PAKFIRE_CORE="77" # Core Level (PAKFIRE) GIT_BRANCH=`git rev-parse --abbrev-ref HEAD` # Git Branch SLOGAN="www.ipfire.org" # Software slogan CONFIG_ROOT=/var/ipfire # Configuration rootdir From c5e3d520e92aee074f1713f8ba98ee4296341ad3 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Wed, 16 Apr 2014 01:26:28 +0200 Subject: [PATCH 12/12] Add modem status page. On this page, much useful information is displayed about the hardware and the status of an LTE/3G or other kinds of modems that respond to AT commands. --- config/cfgroot/header.pl | 4 + config/cfgroot/modem-lib.pl | 276 ++++++++++++++++++ config/menu/20-status.menu | 5 + config/rootfiles/common/apache2 | 1 + config/rootfiles/common/configroot | 1 + config/rootfiles/common/perl-Device-Modem | 18 ++ .../rootfiles/common/perl-Device-SerialPort | 10 + doc/language_issues.de | 1 + doc/language_issues.en | 1 + doc/language_issues.es | 19 ++ doc/language_issues.fr | 19 ++ doc/language_issues.nl | 19 ++ doc/language_issues.pl | 19 ++ doc/language_issues.ru | 19 ++ doc/language_issues.tr | 19 ++ doc/language_missings | 72 +++++ html/cgi-bin/modem-status.cgi | 211 +++++++++++++ html/cgi-bin/pppsetup.cgi | 29 ++ langs/de/cgi-bin/de.pl | 18 ++ langs/en/cgi-bin/en.pl | 18 ++ lfs/configroot | 1 + lfs/perl-Device-Modem | 77 +++++ lfs/perl-Device-SerialPort | 77 +++++ make.sh | 2 + 24 files changed, 936 insertions(+) create mode 100644 config/cfgroot/modem-lib.pl create mode 100644 config/rootfiles/common/perl-Device-Modem create mode 100644 config/rootfiles/common/perl-Device-SerialPort create mode 100755 html/cgi-bin/modem-status.cgi create mode 100644 lfs/perl-Device-Modem create mode 100644 lfs/perl-Device-SerialPort diff --git a/config/cfgroot/header.pl b/config/cfgroot/header.pl index 39472a857..bbb7e21f4 100644 --- a/config/cfgroot/header.pl +++ b/config/cfgroot/header.pl @@ -153,6 +153,10 @@ sub genmenu { if (&General::RedIsWireless()) { $menu->{'01.system'}{'subMenu'}->{'21.wlan'}{'enabled'} = 1; } + + if ($ethsettings{'RED_TYPE'} eq "PPPOE") { + $menu->{'02.status'}{'subMenu'}->{'74.modem-status'}{'enabled'} = 1; + } } sub showhttpheaders diff --git a/config/cfgroot/modem-lib.pl b/config/cfgroot/modem-lib.pl new file mode 100644 index 000000000..51b6d68e9 --- /dev/null +++ b/config/cfgroot/modem-lib.pl @@ -0,0 +1,276 @@ +#!/usr/bin/perl +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2014 IPFire Team # +# # +# 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 3 of the License, 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, see . # +# # +############################################################################### + +use Device::Modem; + +package Modem; + +sub new() { + my $class = shift; + + my $port = shift; + my $baud = shift; + + my $self = {}; + bless $self, $class; + + # Initialize the connetion to the modem. + $self->_initialize($port, $baud); + + if ($self->_is_working()) { + return $self; + } + + return undef; +} + +sub DESTROY() { + my $self = shift; + + # Close connection to modem. + if ($self->{modem}) { + $self->{modem}->close(); + } +} + +sub _initialize() { + my ($self, $port, $baud) = @_; + + # Establish connection to the modem. + $self->{modem} = new Device::Modem(port => $port); + $self->{modem}->connect(baudrate => $baud); +} + +sub _is_working() { + my $self = shift; + + # Check if the modem responds to AT commands. + $self->{modem}->atsend("AT\r\n"); + + my $response = $self->{modem}->answer(); + return ($response eq "OK"); +} + +sub _command() { + my $self = shift; + my $cmd = shift; + + # Terminate the AT command with newline. + $cmd .= "\r\n"; + + $self->{modem}->atsend($cmd); + + my $response = $self->{modem}->answer(); + my @response = split(/\n/, $response); + + # Trim leading and trailing spaces. + foreach my $line (@response) { + $line =~ s/^\s+|\s+$//g; + chomp($line); + } + + my $last_element = pop(@response); + unless ($last_element eq "OK") { + push(@response, $last_element); + } + + $response = join("\n", @response); + + return $self->_trim($response); +} + +sub _trim() { + my $self = shift; + my $input = shift; + + my $first_char = substr($input, 0, 1); + if ($first_char eq "+") { + my @output = split(/:/, $input); + if ($#output == 1) { + return $output[1]; + } + } + + return $input; +} + +sub get_vendor() { + my $self = shift; + + return $self->_command("AT+GMI"); +} + +sub get_model() { + my $self = shift; + + return $self->_command("AT+GMM"); +} + +sub get_software_version() { + my $self = shift; + + return $self->_command("AT+GMR"); +} + +sub get_imei() { + my $self = shift; + + return $self->_command("AT+GSN"); +} + +sub get_capabilities() { + my $self = shift; + + my $output = $self->_command("AT+GCAP"); + return split(/,/, $output); +} + +sub is_sim_unlocked() { + my $self = shift; + + # TODO + return 1; +} + +sub get_sim_imsi() { + my $self = shift; + + if ($self->is_sim_unlocked()) { + return $self->_command("AT+CIMI"); + } +} + +sub get_network_registration() { + my $self = shift; + + my @elements; + foreach my $i ([0, 1]) { + my $output = $self->_command("AT+CREG?"); + + @elements = split(/,/, $output); + if ($#elements != 2) { + # Output in wrong format. Resetting. + $self->_command("AT+CREG=0"); + } + } + + if ($elements[0] == 0) { + if ($elements[1] == 0) { + return "NOT REGISTERED, NOT SEARCHING"; + } elsif ($elements[1] == 1) { + return "REGISTERED TO HOME NETWORK"; + } elsif ($elements[1] == 2) { + return "NOT REGISTERED, SEARCHING"; + } elsif ($elements[1] == 3) { + return "REGISTRATION DENIED"; + } elsif ($elements[1] == 5) { + return "REGISTERED, ROAMING"; + } else { + return "UNKNOWN"; + } + } +} + +sub _get_network_operator() { + my $self = shift; + + my $output = $self->_command("AT+COPS?"); + $output =~ s/\"//g; + + my @elements = split(/,/, $output); + if ($#elements == 3) { + return @elements; + } +} + +sub get_network_operator() { + my $self = shift; + + my ($mode, $format, $operator, $act) = $self->_get_network_operator(); + + return $operator; +} + +sub get_network_mode() { + my $self = shift; + + my ($mode, $format, $operator, $act) = $self->_get_network_operator(); + + if ($act == 0) { + return "GSM"; + } elsif ($act == 1) { + return "Compact GSM"; + } elsif ($act == 2) { + return "UMTS"; + } elsif ($act == 3) { + return "GSM WITH EGPRS"; + } elsif ($act == 4) { + return "UMTS WITH HSDPA"; + } elsif ($act == 5) { + return "UMTS WITH HSUPA"; + } elsif ($act == 6) { + return "UMTS WITH HSDPA+HSUPA"; + } elsif ($act == 7) { + return "LTE"; + } else { + return "UNKNOWN ($act)"; + } +} + +sub _get_signal_quality() { + my $self = shift; + + my $output = $self->_command("AT+CSQ"); + + my @elements = split(/,/, $output); + if ($#elements == 1) { + return @elements; + } +} + +sub get_signal_quality() { + my $self = shift; + + my ($rssi, $ber) = $self->_get_signal_quality(); + + # 99 equals unknown. + unless ($rssi == 99) { + my $dbm = ($rssi * 2) - 113; + return $dbm; + } + + return undef; +} + +sub get_bit_error_rate() { + my $self = shift; + + my ($rssi, $ber) = $self->_get_signal_quality(); + + # 99 indicates unknown. + unless ($ber == 99) { + return $ber; + } + + return undef; +} + +1; diff --git a/config/menu/20-status.menu b/config/menu/20-status.menu index 8899310aa..b159ed610 100644 --- a/config/menu/20-status.menu +++ b/config/menu/20-status.menu @@ -70,6 +70,11 @@ 'title' => "$Lang::tr{'qos graphs'}", 'enabled' => 1, }; + $substatus->{'74.modem-status'} = {'caption' => $Lang::tr{'modem status'}, + 'uri' => '/cgi-bin/modem-status.cgi', + 'title' => $Lang::tr{'modem status'}, + 'enabled' => 0, + }; $substatus->{'75.atm-status'} = {'caption' => 'Atm-status', 'uri' => '/cgi-bin/atm-status.cgi', 'title' => 'Atm-status', diff --git a/config/rootfiles/common/apache2 b/config/rootfiles/common/apache2 index 2dd14cc2c..474e7a7dc 100644 --- a/config/rootfiles/common/apache2 +++ b/config/rootfiles/common/apache2 @@ -1415,6 +1415,7 @@ srv/web/ipfire/cgi-bin/mac.cgi srv/web/ipfire/cgi-bin/media.cgi srv/web/ipfire/cgi-bin/memory.cgi srv/web/ipfire/cgi-bin/modem.cgi +srv/web/ipfire/cgi-bin/modem-status.cgi srv/web/ipfire/cgi-bin/netexternal.cgi srv/web/ipfire/cgi-bin/netinternal.cgi srv/web/ipfire/cgi-bin/netother.cgi diff --git a/config/rootfiles/common/configroot b/config/rootfiles/common/configroot index b5de9891d..6afe6cdf8 100644 --- a/config/rootfiles/common/configroot +++ b/config/rootfiles/common/configroot @@ -116,6 +116,7 @@ var/ipfire/menu.d/70-log.menu var/ipfire/modem #var/ipfire/modem/defaults #var/ipfire/modem/settings +var/ipfire/modem-lib.pl var/ipfire/net-traffic #var/ipfire/net-traffic/net-traffic-admin.pl #var/ipfire/net-traffic/net-traffic-lib.pl diff --git a/config/rootfiles/common/perl-Device-Modem b/config/rootfiles/common/perl-Device-Modem new file mode 100644 index 000000000..9e8da1c39 --- /dev/null +++ b/config/rootfiles/common/perl-Device-Modem @@ -0,0 +1,18 @@ +#usr/lib/perl5/site_perl/5.12.3/Device +#usr/lib/perl5/site_perl/5.12.3/Device/Modem +usr/lib/perl5/site_perl/5.12.3/Device/Modem.pm +#usr/lib/perl5/site_perl/5.12.3/Device/Modem/FAQ.pod +#usr/lib/perl5/site_perl/5.12.3/Device/Modem/Log +usr/lib/perl5/site_perl/5.12.3/Device/Modem/Log/File.pm +usr/lib/perl5/site_perl/5.12.3/Device/Modem/Log/Syslog.pm +#usr/lib/perl5/site_perl/5.12.3/Device/Modem/Protocol +usr/lib/perl5/site_perl/5.12.3/Device/Modem/Protocol/Xmodem.pm +usr/lib/perl5/site_perl/5.12.3/Device/Modem/UsRobotics.pm +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Device/Modem +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Device/Modem/.packlist +#usr/share/man/man3/Device::Modem.3 +#usr/share/man/man3/Device::Modem::FAQ.3 +#usr/share/man/man3/Device::Modem::Log::File.3 +#usr/share/man/man3/Device::Modem::Log::Syslog.3 +#usr/share/man/man3/Device::Modem::Protocol::Xmodem.3 +#usr/share/man/man3/Device::Modem::UsRobotics.3 diff --git a/config/rootfiles/common/perl-Device-SerialPort b/config/rootfiles/common/perl-Device-SerialPort new file mode 100644 index 000000000..dccc42588 --- /dev/null +++ b/config/rootfiles/common/perl-Device-SerialPort @@ -0,0 +1,10 @@ +#usr/bin/modemtest +usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Device +usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Device/SerialPort.pm +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Device +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Device/SerialPort +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Device/SerialPort/.packlist +#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Device/SerialPort/SerialPort.bs +usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Device/SerialPort/SerialPort.so +#usr/share/man/man1/modemtest.1 +#usr/share/man/man3/Device::SerialPort.3 diff --git a/doc/language_issues.de b/doc/language_issues.de index 486ecba0d..32deb0954 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -613,6 +613,7 @@ WARNING: untranslated string: community rules WARNING: untranslated string: dead peer detection WARNING: untranslated string: emerging rules WARNING: untranslated string: fwhost err hostip +WARNING: untranslated string: monitor interface WARNING: untranslated string: qos add subclass WARNING: untranslated string: route config changed WARNING: untranslated string: routing config added diff --git a/doc/language_issues.en b/doc/language_issues.en index e968b591a..4e15460fd 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -643,6 +643,7 @@ WARNING: translation string unused: yearly firewallhits WARNING: untranslated string: Scan for Songs WARNING: untranslated string: bytes WARNING: untranslated string: fwhost err hostip +WARNING: untranslated string: monitor interface WARNING: untranslated string: route config changed WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed diff --git a/doc/language_issues.es b/doc/language_issues.es index dbccd8f58..d99937501 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -591,6 +591,7 @@ WARNING: untranslated string: advproxy proxy port transparent WARNING: untranslated string: attention WARNING: untranslated string: bit WARNING: untranslated string: bytes +WARNING: untranslated string: capabilities WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -821,6 +822,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: imei +WARNING: untranslated string: imsi WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay @@ -834,6 +837,20 @@ WARNING: untranslated string: mac filter WARNING: untranslated string: maximum WARNING: untranslated string: minimum WARNING: untranslated string: minute +WARNING: untranslated string: model +WARNING: untranslated string: modem hardware details +WARNING: untranslated string: modem information +WARNING: untranslated string: modem network bit error rate +WARNING: untranslated string: modem network information +WARNING: untranslated string: modem network mode +WARNING: untranslated string: modem network operator +WARNING: untranslated string: modem network registration +WARNING: untranslated string: modem network signal quality +WARNING: untranslated string: modem no connection +WARNING: untranslated string: modem no connection message +WARNING: untranslated string: modem sim information +WARNING: untranslated string: modem status +WARNING: untranslated string: monitor interface WARNING: untranslated string: most preferred WARNING: untranslated string: no hardware random number generator WARNING: untranslated string: notice @@ -880,6 +897,7 @@ WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address +WARNING: untranslated string: software version WARNING: untranslated string: ssh WARNING: untranslated string: static routes WARNING: untranslated string: support donation @@ -937,6 +955,7 @@ WARNING: untranslated string: tor use exit nodes WARNING: untranslated string: uplink WARNING: untranslated string: uptime load average WARNING: untranslated string: urlfilter redirect template +WARNING: untranslated string: vendor WARNING: untranslated string: visit us at WARNING: untranslated string: vpn keyexchange WARNING: untranslated string: wlan client diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 4acdaf485..219567664 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -601,6 +601,7 @@ WARNING: untranslated string: advproxy proxy port transparent WARNING: untranslated string: attention WARNING: untranslated string: bit WARNING: untranslated string: bytes +WARNING: untranslated string: capabilities WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -832,6 +833,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: imei +WARNING: untranslated string: imsi WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay @@ -845,6 +848,20 @@ WARNING: untranslated string: mac filter WARNING: untranslated string: maximum WARNING: untranslated string: minimum WARNING: untranslated string: minute +WARNING: untranslated string: model +WARNING: untranslated string: modem hardware details +WARNING: untranslated string: modem information +WARNING: untranslated string: modem network bit error rate +WARNING: untranslated string: modem network information +WARNING: untranslated string: modem network mode +WARNING: untranslated string: modem network operator +WARNING: untranslated string: modem network registration +WARNING: untranslated string: modem network signal quality +WARNING: untranslated string: modem no connection +WARNING: untranslated string: modem no connection message +WARNING: untranslated string: modem sim information +WARNING: untranslated string: modem status +WARNING: untranslated string: monitor interface WARNING: untranslated string: most preferred WARNING: untranslated string: no hardware random number generator WARNING: untranslated string: notice @@ -888,6 +905,7 @@ WARNING: untranslated string: routing table WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address WARNING: untranslated string: snort working +WARNING: untranslated string: software version WARNING: untranslated string: ssh WARNING: untranslated string: static routes WARNING: untranslated string: support donation @@ -948,6 +966,7 @@ WARNING: untranslated string: uptime load average WARNING: untranslated string: urlfilter file ext block WARNING: untranslated string: urlfilter mode block WARNING: untranslated string: urlfilter redirect template +WARNING: untranslated string: vendor WARNING: untranslated string: visit us at WARNING: untranslated string: vpn keyexchange WARNING: untranslated string: wlan client diff --git a/doc/language_issues.nl b/doc/language_issues.nl index 949acdc39..cd54bc18e 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -602,6 +602,7 @@ WARNING: untranslated string: advproxy errmsg proxy ports equal WARNING: untranslated string: advproxy proxy port transparent WARNING: untranslated string: bit WARNING: untranslated string: bytes +WARNING: untranslated string: capabilities WARNING: untranslated string: ccd err isipsecrw WARNING: untranslated string: ccd err isovpnn2n WARNING: untranslated string: ccd iroute2 @@ -779,6 +780,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: imei +WARNING: untranslated string: imsi WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay @@ -791,6 +794,20 @@ WARNING: untranslated string: lifetime WARNING: untranslated string: mac filter WARNING: untranslated string: maximum WARNING: untranslated string: minimum +WARNING: untranslated string: model +WARNING: untranslated string: modem hardware details +WARNING: untranslated string: modem information +WARNING: untranslated string: modem network bit error rate +WARNING: untranslated string: modem network information +WARNING: untranslated string: modem network mode +WARNING: untranslated string: modem network operator +WARNING: untranslated string: modem network registration +WARNING: untranslated string: modem network signal quality +WARNING: untranslated string: modem no connection +WARNING: untranslated string: modem no connection message +WARNING: untranslated string: modem sim information +WARNING: untranslated string: modem status +WARNING: untranslated string: monitor interface WARNING: untranslated string: most preferred WARNING: untranslated string: no hardware random number generator WARNING: untranslated string: notice @@ -808,6 +825,7 @@ WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table WARNING: untranslated string: snat new source ip address +WARNING: untranslated string: software version WARNING: untranslated string: ssh WARNING: untranslated string: support donation WARNING: untranslated string: system has hwrng @@ -863,6 +881,7 @@ WARNING: untranslated string: tor use exit nodes WARNING: untranslated string: uplink WARNING: untranslated string: uptime load average WARNING: untranslated string: urlfilter redirect template +WARNING: untranslated string: vendor WARNING: untranslated string: wlan client WARNING: untranslated string: wlan client advanced settings WARNING: untranslated string: wlan client and diff --git a/doc/language_issues.pl b/doc/language_issues.pl index dbccd8f58..d99937501 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -591,6 +591,7 @@ WARNING: untranslated string: advproxy proxy port transparent WARNING: untranslated string: attention WARNING: untranslated string: bit WARNING: untranslated string: bytes +WARNING: untranslated string: capabilities WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -821,6 +822,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: imei +WARNING: untranslated string: imsi WARNING: untranslated string: incoming firewall access WARNING: untranslated string: integrity WARNING: untranslated string: invalid input for dpd delay @@ -834,6 +837,20 @@ WARNING: untranslated string: mac filter WARNING: untranslated string: maximum WARNING: untranslated string: minimum WARNING: untranslated string: minute +WARNING: untranslated string: model +WARNING: untranslated string: modem hardware details +WARNING: untranslated string: modem information +WARNING: untranslated string: modem network bit error rate +WARNING: untranslated string: modem network information +WARNING: untranslated string: modem network mode +WARNING: untranslated string: modem network operator +WARNING: untranslated string: modem network registration +WARNING: untranslated string: modem network signal quality +WARNING: untranslated string: modem no connection +WARNING: untranslated string: modem no connection message +WARNING: untranslated string: modem sim information +WARNING: untranslated string: modem status +WARNING: untranslated string: monitor interface WARNING: untranslated string: most preferred WARNING: untranslated string: no hardware random number generator WARNING: untranslated string: notice @@ -880,6 +897,7 @@ WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address +WARNING: untranslated string: software version WARNING: untranslated string: ssh WARNING: untranslated string: static routes WARNING: untranslated string: support donation @@ -937,6 +955,7 @@ WARNING: untranslated string: tor use exit nodes WARNING: untranslated string: uplink WARNING: untranslated string: uptime load average WARNING: untranslated string: urlfilter redirect template +WARNING: untranslated string: vendor WARNING: untranslated string: visit us at WARNING: untranslated string: vpn keyexchange WARNING: untranslated string: wlan client diff --git a/doc/language_issues.ru b/doc/language_issues.ru index e57e91e78..9821311a5 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -594,6 +594,7 @@ WARNING: untranslated string: advproxy proxy port transparent WARNING: untranslated string: attention WARNING: untranslated string: bit WARNING: untranslated string: bytes +WARNING: untranslated string: capabilities WARNING: untranslated string: ccd add WARNING: untranslated string: ccd choose net WARNING: untranslated string: ccd client options @@ -816,6 +817,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: hardware support +WARNING: untranslated string: imei +WARNING: untranslated string: imsi WARNING: untranslated string: incoming firewall access WARNING: untranslated string: incoming traffic in bytes per second WARNING: untranslated string: integrity @@ -830,6 +833,20 @@ WARNING: untranslated string: mac filter WARNING: untranslated string: maximum WARNING: untranslated string: minimum WARNING: untranslated string: minute +WARNING: untranslated string: model +WARNING: untranslated string: modem hardware details +WARNING: untranslated string: modem information +WARNING: untranslated string: modem network bit error rate +WARNING: untranslated string: modem network information +WARNING: untranslated string: modem network mode +WARNING: untranslated string: modem network operator +WARNING: untranslated string: modem network registration +WARNING: untranslated string: modem network signal quality +WARNING: untranslated string: modem no connection +WARNING: untranslated string: modem no connection message +WARNING: untranslated string: modem sim information +WARNING: untranslated string: modem status +WARNING: untranslated string: monitor interface WARNING: untranslated string: most preferred WARNING: untranslated string: no hardware random number generator WARNING: untranslated string: notice @@ -870,6 +887,7 @@ WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address +WARNING: untranslated string: software version WARNING: untranslated string: ssh WARNING: untranslated string: static routes WARNING: untranslated string: support donation @@ -926,6 +944,7 @@ WARNING: untranslated string: tor use exit nodes WARNING: untranslated string: uplink WARNING: untranslated string: uptime load average WARNING: untranslated string: urlfilter redirect template +WARNING: untranslated string: vendor WARNING: untranslated string: visit us at WARNING: untranslated string: vpn keyexchange WARNING: untranslated string: wlan client diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 050204327..3e07adf1c 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -646,12 +646,31 @@ WARNING: untranslated string: ConnSched reboot WARNING: untranslated string: ConnSched shutdown WARNING: untranslated string: Scan for Songs WARNING: untranslated string: bytes +WARNING: untranslated string: capabilities WARNING: untranslated string: count WARNING: untranslated string: fwdfw many WARNING: untranslated string: fwhost err hostip +WARNING: untranslated string: imei +WARNING: untranslated string: imsi WARNING: untranslated string: incoming firewall access +WARNING: untranslated string: model +WARNING: untranslated string: modem hardware details +WARNING: untranslated string: modem information +WARNING: untranslated string: modem network bit error rate +WARNING: untranslated string: modem network information +WARNING: untranslated string: modem network mode +WARNING: untranslated string: modem network operator +WARNING: untranslated string: modem network registration +WARNING: untranslated string: modem network signal quality +WARNING: untranslated string: modem no connection +WARNING: untranslated string: modem no connection message +WARNING: untranslated string: modem sim information +WARNING: untranslated string: modem status +WARNING: untranslated string: monitor interface WARNING: untranslated string: outgoing firewall access WARNING: untranslated string: route config changed WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table +WARNING: untranslated string: software version +WARNING: untranslated string: vendor diff --git a/doc/language_missings b/doc/language_missings index 3f1f997dd..7b0a391b0 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -25,6 +25,7 @@ < age ssecond < attention < bit +< capabilities < ccd add < ccd choose net < ccd clientip @@ -295,6 +296,8 @@ < fw settings ruletable < grouptype < hardware support +< imei +< imsi < incoming firewall access < integrity < invalid input for dpd delay @@ -311,6 +314,19 @@ < MB written < minimum < minute +< model +< modem hardware details +< modem information +< modem network bit error rate +< modem network information +< modem network mode +< modem network operator +< modem network registration +< modem network signal quality +< modem no connection +< modem no connection message +< modem sim information +< modem status < most preferred < no hardware random number generator < notice @@ -352,6 +368,7 @@ < server restart < snat new source ip address < snort working +< software version < ssh < static routes < support donation @@ -420,6 +437,7 @@ < urlfilter file ext block < urlfilter mode block < urlfilter redirect template +< vendor < visit us at < vpn keyexchange < wlanap access point @@ -494,6 +512,7 @@ < Async logging enabled < attention < bit +< capabilities < ccd add < ccd choose net < ccd clientip @@ -763,6 +782,8 @@ < fw settings ruletable < grouptype < hardware support +< imei +< imsi < incoming firewall access < integrity < invalid input for dpd delay @@ -779,6 +800,19 @@ < MB written < minimum < minute +< model +< modem hardware details +< modem information +< modem network bit error rate +< modem network information +< modem network mode +< modem network operator +< modem network registration +< modem network signal quality +< modem no connection +< modem no connection message +< modem sim information +< modem status < most preferred < no hardware random number generator < notice @@ -836,6 +870,7 @@ < server restart < Set time on boot < snat new source ip address +< software version < ssh < static routes < support donation @@ -901,6 +936,7 @@ < uptime < uptime load average < urlfilter redirect template +< vendor < visit us at < vpn keyexchange < wlanap country @@ -954,6 +990,7 @@ < age ssecond < attention < bit +< capabilities < ccd add < ccd choose net < ccd clientip @@ -1215,6 +1252,8 @@ < fw settings ruletable < grouptype < hardware support +< imei +< imsi < incoming firewall access < integrity < invalid input for dpd delay @@ -1231,6 +1270,19 @@ < MB written < minimum < minute +< model +< modem hardware details +< modem information +< modem network bit error rate +< modem network information +< modem network mode +< modem network operator +< modem network registration +< modem network signal quality +< modem no connection +< modem no connection message +< modem sim information +< modem status < most preferred < no hardware random number generator < notice @@ -1273,6 +1325,7 @@ < red1 < server restart < snat new source ip address +< software version < ssh < static routes < support donation @@ -1337,6 +1390,7 @@ < uptime < uptime load average < urlfilter redirect template +< vendor < visit us at < vpn keyexchange < wlanap country @@ -1391,6 +1445,7 @@ < age ssecond < attention < bit +< capabilities < ccd add < ccd choose net < ccd clientip @@ -1657,6 +1712,8 @@ < grouptype < hardware support < hour-graph +< imei +< imsi < incoming firewall access < incoming traffic in bytes per second < integrity @@ -1674,6 +1731,19 @@ < MB written < minimum < minute +< model +< modem hardware details +< modem information +< modem network bit error rate +< modem network information +< modem network mode +< modem network operator +< modem network registration +< modem network signal quality +< modem no connection +< modem no connection message +< modem sim information +< modem status < month-graph < most preferred < no hardware random number generator @@ -1714,6 +1784,7 @@ < red1 < server restart < snat new source ip address +< software version < ssh < static routes < support donation @@ -1778,6 +1849,7 @@ < uptime < uptime load average < urlfilter redirect template +< vendor < visit us at < vpn keyexchange < week-graph diff --git a/html/cgi-bin/modem-status.cgi b/html/cgi-bin/modem-status.cgi new file mode 100755 index 000000000..d278c7720 --- /dev/null +++ b/html/cgi-bin/modem-status.cgi @@ -0,0 +1,211 @@ +#!/usr/bin/perl +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2008 Michael Tremer & Christian Schmidt # +# # +# 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 3 of the License, 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, see . # +# # +############################################################################### + +use strict; + +# enable only the following on debugging purpose +use warnings; +use CGI::Carp 'fatalsToBrowser'; + +require '/var/ipfire/general-functions.pl'; +require "${General::swroot}/lang.pl"; +require "${General::swroot}/header.pl"; +require "${General::swroot}/modem-lib.pl"; + +my $modem; +my %ethsettings = {}; +my %pppsettings = {}; + +&General::readhash("${General::swroot}/ethernet/settings", \%ethsettings); + +if ($ethsettings{"RED_TYPE"} eq "PPPOE") { + &General::readhash("${General::swroot}/ppp/settings", \%pppsettings); + + # Establish the connection to the modem. + my $port = $pppsettings{'MONPORT'}; + if ($port) { + $port = "/dev/$port"; + $modem = Modem->new($port, $pppsettings{"DTERATE"}); + } +} + +&Header::showhttpheaders(); +&Header::openpage($Lang::tr{'modem information'}, 1, ''); +&Header::openbigbox('100%', 'left'); + +if ($modem) { + &Header::openbox("100%", "center", $Lang::tr{'modem hardware details'}); + + print < + +END + + my $vendor = $modem->get_vendor(); + if ($vendor) { + print < + $Lang::tr{'vendor'} + $vendor + +END + } + + my $model = $modem->get_model(); + if ($model) { + print < + $Lang::tr{'model'} + $model + +END + } + + my $software_version = $modem->get_software_version(); + if ($software_version) { + print < + $Lang::tr{'software version'} + $software_version + +END + } + + my $imei = $modem->get_imei(); + if ($imei) { + print < + $Lang::tr{'imei'} + $imei + +END + } + + my @caps = $modem->get_capabilities(); + if (@caps) { + my $caps_string = join(", ", @caps); + + print < + $Lang::tr{'capabilities'} + $caps_string + +END + } + + print < + +END + &Header::closebox(); + + + &Header::openbox("100%", "center", $Lang::tr{'modem sim information'}); + print < + +END + + my $imsi = $modem->get_sim_imsi(); + if ($imsi) { + print < + $Lang::tr{'imsi'} + $imsi + +END + } + + print < + +END + &Header::closebox(); + + &Header::openbox("100%", "center", $Lang::tr{'modem network information'}); + print < + +END + + my $network_registration = $modem->get_network_registration(); + if ($network_registration) { + print < + $Lang::tr{'modem network registration'} + $network_registration + +END + } + + my $network_operator = $modem->get_network_operator(); + if ($network_operator) { + print < + $Lang::tr{'modem network operator'} + $network_operator + +END + } + + my $network_mode = $modem->get_network_mode(); + if ($network_mode) { + print < + $Lang::tr{'modem network mode'} + $network_mode + +END + } + + my $signal_quality = $modem->get_signal_quality(); + if ($signal_quality) { + print < + $Lang::tr{'modem network signal quality'} + $signal_quality dBm + +END + } + + my $bit_error_rate = $modem->get_bit_error_rate(); + if ($bit_error_rate) { + print < + $Lang::tr{'modem network bit error rate'} + $bit_error_rate + +END + } + print < + +END + + &Header::closebox(); +} else { + &Header::openbox("100%", "center", $Lang::tr{'modem no connection'}); + print "

$Lang::tr{'modem no connection message'}

"; + &Header::closebox(); +} + +&Header::closebigbox(); +&Header::closepage(); diff --git a/html/cgi-bin/pppsetup.cgi b/html/cgi-bin/pppsetup.cgi index edec82696..563d0eb58 100644 --- a/html/cgi-bin/pppsetup.cgi +++ b/html/cgi-bin/pppsetup.cgi @@ -73,6 +73,9 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) if ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn)$/ && $pppsettings{'COMPORT'} !~ /^(ttyS0|ttyS1|ttyS2|ttyS3|ttyS4|ttyACM0|ttyACM1|ttyACM2|ttyACM3|ttyUSB0|ttyUSB1|ttyUSB2|ttyUSB3|rfcomm0|rfcomm1|isdn1|isdn2)$/) { $errormessage = $Lang::tr{'invalid input'}; goto ERROR; } + if ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn)$/ && $pppsettings{'MONPORT'} !~ /^(ttyUSB0|ttyUSB1|ttyUSB2|ttyUSB3)$/) { + $errormessage = $Lang::tr{'invalid input'}; + goto ERROR; } if ($pppsettings{'TYPE'} =~ /^(modem|serial)$/ && $pppsettings{'DTERATE'} !~ /^(9600|19200|38400|57600|115200|230400|460800|921600)$/) { $errormessage = $Lang::tr{'invalid input'}; goto ERROR; } @@ -335,6 +338,13 @@ $selected{'COMPORT'}{'rfcomm0'} = ''; $selected{'COMPORT'}{'rfcomm1'} = ''; $selected{'COMPORT'}{$pppsettings{'COMPORT'}} = "selected='selected'"; +$selected{'MONPORT'}{''} = ''; +$selected{'MONPORT'}{'ttyUSB0'} = ''; +$selected{'MONPORT'}{'ttyUSB1'} = ''; +$selected{'MONPORT'}{'ttyUSB2'} = ''; +$selected{'MONPORT'}{'ttyUSB3'} = ''; +$selected{'MONPORT'}{$pppsettings{'MONPORT'}} = "selected='selected'"; + $selected{'DTERATE'}{'9600'} = ''; $selected{'DTERATE'}{'19200'} = ''; $selected{'DTERATE'}{'38400'} = ''; @@ -583,6 +593,24 @@ END ; } print " "} + + if ($pppsettings{'TYPE'} =~ /^(modem|serial)$/) { + print < + $Lang::tr{'monitor interface'}: + + + + +END + } + if ($pppsettings{'TYPE'} =~ /^(modem|serial)$/ ) { print < @@ -926,6 +954,7 @@ sub initprofile { $pppsettings{'PROFILENAME'} = $Lang::tr{'unnamed'}; $pppsettings{'COMPORT'} = 'ttyS0'; + $pppsettings{'MONPORT'} = ''; $pppsettings{'DTERATE'} = 115200; $pppsettings{'SPEAKER'} = 'off'; $pppsettings{'RECONNECTION'} = 'persistent'; diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 74bd6e887..c24e181fb 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -467,6 +467,7 @@ 'cant change certificates' => 'Kann Zertifikate nicht ändern.', 'cant enable xtaccess' => 'Die zugehörige Port-Weiterleitungsregel ist deaktiviert, daher können Sie den externen Zugang für diese Regel nicht aktivieren.', 'cant start openssl' => 'Kann OpenSSL nicht starten', +'capabilities' => 'Unterstützte Features', 'caps all' => 'ALLE', 'capsclosed' => 'GETRENNT', 'capsinactive' => 'INAKTIV', @@ -1194,8 +1195,10 @@ '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.', +'imei' => 'IMEI', 'import' => 'Import', 'importkey' => 'PSK importieren', +'imsi' => 'IMSI', 'in' => 'Ein', 'inactive' => 'inaktiv', 'include logfiles' => 'mit Logdateien', @@ -1447,15 +1450,28 @@ 'missing dat' => 'Verschlüsseltes Archiv wurde nicht gefunden', 'missing gz' => 'Nichtverschlüsseltes Archiv wurde nicht gefunden', 'mode' => 'Modus', +'model' => 'Modell', 'modem' => 'Modem', 'modem configuration' => 'Modem-Konfiguration', +'modem hardware details' => 'Modem-Hardware', +'modem information' => 'Modem-Informationen', +'modem network bit error rate' => 'Bit-Fehlerrate', +'modem network information' => 'Netzwerkinformationen', +'modem network mode' => 'Netzwerkmodus', +'modem network operator' => 'Netzbetreiber', +'modem network registration' => 'Netzregistrierung', +'modem network signal quality' => 'Signalqualität', +'modem no connection' => 'Keine Verbindung', +'modem no connection message' => 'Es konnte keine Verbindung zum Modem aufgebaut werden.', 'modem on com1' => 'Modem an COM1', 'modem on com2' => 'Modem an COM2', 'modem on com3' => 'Modem an COM3', 'modem on com4' => 'Modem an COM4', 'modem on com5' => 'Modem an COM5', 'modem settings have errors' => 'Modemeinstellungen fehlerhaft', +'modem sim information' => 'SIM-Informationen', 'modem speaker on' => 'Modemlautsprecher an:', +'modem status' => 'Modem-Status', 'modify' => 'Ändern', 'modulation' => 'Modulation', 'monday' => 'Montag', @@ -1919,6 +1935,7 @@ 'snort hits' => 'Gesamtanzahl der aktivierten Intrusion-Regeln für', 'snort working' => 'Snort führt gerade eine Aufgabe aus... Bitte warten Sie, bis diese erfolgreich beendet wurde.', 'socket options' => 'Socket Options', +'software version' => 'Software-Version', 'sort ascending' => 'Sortiere aufsteigend', 'sort descending' => 'Sortiere absteigend', 'sound' => 'Klang', @@ -2459,6 +2476,7 @@ 'valid root certificate already exists' => 'Ein gültiges Root-Zertifikat existiert bereits.', 'valid till' => 'Gültig bis', 'vci number' => 'VCI-Nummer:', +'vendor' => 'Hersteller', 'view log' => 'Log anzeigen', 'virtual address' => 'Virtuelle Addresse', 'virtual private networking' => 'Virtuelles Privates Netzwerk', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index f8cdf7630..1935ca232 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -486,6 +486,7 @@ 'cant change certificates' => 'Can\'t change certificates.', 'cant enable xtaccess' => 'The associated port forwarding rule is disabled, therefore you cannot enable external access for this rule.', 'cant start openssl' => 'Can\'t start OpenSSL', +'capabilities' => 'Capabilities', 'caps all' => 'ALL', 'capsclosed' => 'DISCONNECTED', 'capsinactive' => 'INACTIVE', @@ -1222,8 +1223,10 @@ 'ike integrity' => 'IKE Integrity:', 'ike lifetime' => 'IKE Lifetime:', 'ike lifetime should be between 1 and 8 hours' => 'IKE lifetime should be between 1 and 8 hours.', +'imei' => 'IMEI', 'import' => 'Import', 'importkey' => 'Import PSK', +'imsi' => 'IMSI', 'in' => 'In', 'inactive' => 'inactive', 'include logfiles' => 'Include logfiles', @@ -1476,15 +1479,28 @@ 'missing dat' => 'Encrypted archive not found', 'missing gz' => 'Unencrypted archive not found', 'mode' => 'Mode', +'model' => 'Model', 'modem' => 'Modem', 'modem configuration' => 'Modem configuration', +'modem hardware details' => 'Modem Hardware', +'modem information' => 'Modem Information', +'modem network bit error rate' => 'Bit Error Rate', +'modem network information' => 'Network Information', +'modem network mode' => 'Network Mode', +'modem network operator' => 'Network Operator', +'modem network registration' => 'Network Registration', +'modem network signal quality' => 'Signal Quality', +'modem no connection' => 'No Connection', +'modem no connection message' => 'No connection to the modem could be established.', 'modem on com1' => 'Modem on COM1', 'modem on com2' => 'Modem on COM2', 'modem on com3' => 'Modem on COM3', 'modem on com4' => 'Modem on COM4', 'modem on com5' => 'Modem on COM5', 'modem settings have errors' => 'Modem settings have errors', +'modem sim information' => 'SIM Information', 'modem speaker on' => 'Modem speaker on:', +'modem status' => 'Modem Status', 'modify' => 'Modify', 'modulation' => 'Modulation', 'monday' => 'Monday', @@ -1954,6 +1970,7 @@ 'snort hits' => 'Total of number of Intrusion rules activated for', 'snort working' => 'Snort is working ... Please wait until all operations have completed successfully.', 'socket options' => 'Socket options', +'software version' => 'Software Version', 'sort ascending' => 'Sort ascending', 'sort descending' => 'Sort descending', 'sound' => 'Sound', @@ -2498,6 +2515,7 @@ 'valid root certificate already exists' => 'A valid root certificate already exists.', 'valid till' => 'Valid till', 'vci number' => 'VCI number:', +'vendor' => 'Vendor', 'view log' => 'view log', 'virtual address' => 'Virtual Address', 'virtual private networking' => 'Virtual Private Networking', diff --git a/lfs/configroot b/lfs/configroot index 3232d38ec..fcb08b0d4 100644 --- a/lfs/configroot +++ b/lfs/configroot @@ -80,6 +80,7 @@ $(TARGET) : cp $(DIR_SRC)/config/cfgroot/lang.pl $(CONFIG_ROOT)/ cp $(DIR_SRC)/config/cfgroot/countries.pl $(CONFIG_ROOT)/ cp $(DIR_SRC)/config/cfgroot/graphs.pl $(CONFIG_ROOT)/ + cp $(DIR_SRC)/config/cfgroot/modem-lib.pl $(CONFIG_ROOT)/ cp $(DIR_SRC)/config/cfgroot/advoptions-list $(CONFIG_ROOT)/dhcp/advoptions-list cp $(DIR_SRC)/config/cfgroot/connscheduler-lib.pl $(CONFIG_ROOT)/connscheduler/lib.pl cp $(DIR_SRC)/config/cfgroot/connscheduler.conf $(CONFIG_ROOT)/connscheduler diff --git a/lfs/perl-Device-Modem b/lfs/perl-Device-Modem new file mode 100644 index 000000000..f0609b928 --- /dev/null +++ b/lfs/perl-Device-Modem @@ -0,0 +1,77 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2014 IPFire Team # +# # +# 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 3 of the License, 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, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 1.56 + +THISAPP = Device-Modem-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = a0ec45c3e313bea27ccb476d3b725955 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && perl Makefile.PL + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/perl-Device-SerialPort b/lfs/perl-Device-SerialPort new file mode 100644 index 000000000..3eebc07d7 --- /dev/null +++ b/lfs/perl-Device-SerialPort @@ -0,0 +1,77 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2014 IPFire Team # +# # +# 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 3 of the License, 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, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 1.000002 + +THISAPP = Device-SerialPort-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = f53db3733679adc5d05d06fa530444b6 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && perl Makefile.PL + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/make.sh b/make.sh index 23b63ae85..eb9cd315c 100755 --- a/make.sh +++ b/make.sh @@ -514,6 +514,8 @@ buildipfire() { ipfiremake perl-GD ipfiremake GD-Graph ipfiremake GD-TextUtil + ipfiremake perl-Device-SerialPort + ipfiremake perl-Device-Modem ipfiremake gnupg ipfiremake hdparm ipfiremake sdparm