Merge remote-tracking branch 'origin' into next

This commit is contained in:
Matthias Fischer
2015-05-28 13:23:47 +02:00
17 changed files with 147 additions and 136 deletions

View File

@@ -92,6 +92,7 @@ srv/web/ipfire/html/blob.gif
srv/web/ipfire/html/clwarn.cgi
srv/web/ipfire/html/dial.cgi
srv/web/ipfire/html/favicon.ico
#srv/web/ipfire/html/graphs
#srv/web/ipfire/html/images
srv/web/ipfire/html/images/IPFire.png
srv/web/ipfire/html/images/add.gif

View File

@@ -75,15 +75,17 @@ chown nobody.nobody \
/var/run/ovpnserver.log
# Update OpenVPN/collectd configuration
files=`find /var/ipfire/ovpn/n2nconf/ -type d`
for i in $files;
do
if ! grep -q "status-version" $i/${i##*/}.conf; then
echo "# Logfile" >> $i/${i##*/}.conf
echo "status-version 1" >> $i/${i##*/}.conf
for i in /var/ipfire/ovpn/n2nconf/*/*.conf; do
name="${i##*/}"
name="${name%*.conf}"
if ! grep -qE "^status-version" ${i}; then
echo "# Logfile" >> ${i}
echo "status-version 1" >> ${i}
fi
if ! grep -q "status " $i/${i##*/}.conf; then
echo "status /var/run/openvpn/${i##*/}-n2n 10" >> $i/${i##*/}.conf
if ! grep -qE "^status " ${i}; then
echo "status /var/run/openvpn/${name}-n2n 10" >> ${i}
fi
done

View File

@@ -15,7 +15,6 @@ etc/sudoers
etc/sysconfig/firewall.local
etc/sysconfig/modules
etc/sysconfig/rc.local
etc/udev/rules.d/30-persistent-network.rules
srv/web/ipfire/html/proxy.pac
var/ipfire/firewall/geoipblock
var/ipfire/fwhosts/custmgeoipgrp

View File

@@ -5,6 +5,8 @@ etc/rc.d/init.d/network-trigger
etc/rc.d/init.d/networking/functions.network
etc/rc.d/init.d/networking/red.up/99-geoip-database
etc/rc.d/rcsysinit.d/S90network-trigger
opt/pakfire/pakfire
opt/pakfire/lib/functions.pl
srv/web/ipfire/cgi-bin/country.cgi
srv/web/ipfire/cgi-bin/ddns.cgi
srv/web/ipfire/cgi-bin/firewall.cgi

View File

@@ -0,0 +1 @@
../../../common/openldap

View File

@@ -208,6 +208,13 @@ sudo -u nobody /srv/web/ipfire/cgi-bin/vpnmain.cgi
# Update Language cache
perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
# Remove old udev configuration
rm -vf /etc/udev/rules.d/30-persistent-network.rules
# Remove pids from dhcp client because it hang at normal shutdown
# so let the sysvinit kill it
rm -f /run/dhcpcd-*.pid
#
# Start services
#
@@ -218,22 +225,9 @@ if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then
/etc/init.d/ipsec start
fi
case "$(uname -m)" in
i?86)
case "$(find_device "/")" in
xvd* )
echo Skip remove grub2 files, because pygrub fail.
rm -f /boot/grub/*
echo config will recreated by linux-pae install.
;;
* )
#
# Update to GRUB2 config
#
grub-mkconfig > /boot/grub/grub.cfg
;;
esac
esac
if [ -e /boot/grub/grub.cfg ]; then
grub-mkconfig > /boot/grub/grub.cfg
fi
# Upadate Kernel version uEnv.txt
if [ -e /boot/uEnv.txt ]; then
@@ -247,7 +241,7 @@ fi
# Force (re)install pae kernel if pae is supported
rm -rf /opt/pakfire/db/*/meta-linux-pae
rm -rf /opt/pakfire/db/installed/meta-linux-pae
if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
ROOTSPACE=`df / -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
@@ -258,9 +252,7 @@ if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
echo "Name: linux-pae" > /opt/pakfire/db/installed/meta-linux-pae
echo "ProgVersion: 0" >> /opt/pakfire/db/installed/meta-linux-pae
echo "Release: 0" >> /opt/pakfire/db/installed/meta-linux-pae
echo "Name: linux-pae" > /opt/pakfire/db/meta/meta-linux-pae
echo "ProgVersion: 0" >> /opt/pakfire/db/meta/meta-linux-pae
echo "Release: 0" >> /opt/pakfire/db/meta/meta-linux-pae
# rm -f /opt/pakfire/db/meta/meta-linux-pae 2>&1 > /dev/null
fi
fi

View File

@@ -23,12 +23,9 @@ use strict;
use Locale::Codes::Country;
my $flagdir = '/srv/web/ipfire/html/images/flags';
my $col;
my $lines = '1';
my $lines2 = '';
my @flaglist=();
my @flaglistfiles=();
my $flag = '';
require '/var/ipfire/general-functions.pl';
require "${General::swroot}/geoip-functions.pl";
@@ -41,44 +38,41 @@ require "${General::swroot}/header.pl";
&Header::openbigbox('100%', 'left');
&Header::openbox('100%', 'left', $Lang::tr{'country codes and flags'});
print "<table class='tbl'>";
print "<tr><th style='width=5%;'><b>$Lang::tr{'flag'}</b></th>";
print "<th style='width=5%;'><b>$Lang::tr{'countrycode'}</b></th>";
print "<th style='width=40%; text-align:left;'><b>$Lang::tr{'country'}</b></th>";
print "<th>&nbsp;</th>";
print "<th style='width=5%;'><b>$Lang::tr{'flag'}</b></th>";
print "<th style='width=5%;'><b>$Lang::tr{'countrycode'}</b></th>";
print "<th style='width=40%; text-align:left;'><b>$Lang::tr{'country'}</b></th></tr>";
@flaglist = <$flagdir/*>;
print<<END;
<table class='tbl'>
<tr>
<th style='width=5%'><b>$Lang::tr{'flag'}</b></th>
<th style='width=5%'><b>$Lang::tr{'countrycode'}</b></th>
<th style='width=40% text-align:left'><b>$Lang::tr{'country'}</b></th>
<th>&nbsp;</th>
<th style='width=5%'><b>$Lang::tr{'flag'}</b></th>
<th style='width=5%;'><b>$Lang::tr{'countrycode'}</b></th>
<th style='width=40% text-align:left;'><b>$Lang::tr{'country'}</b></th>
</tr>
END
undef @flaglistfiles;
# Get a list of all supported country codes.
my @countries = Locale::Codes::Country::all_country_codes();
foreach (@flaglist)
{
if (!-d) { push(@flaglistfiles,substr($_,rindex($_,"/")+1)); }
}
my $col="";
foreach $flag (@flaglistfiles)
{
# Loop through whole country list.
foreach my $country (@countries) {
$lines++;
my $flagcode = uc(substr($flag, 0, 2));
my $fcode = lc($flagcode);
# Convert country code into upper case.
my $country_uc = uc($country);
# Get flag icon for of the country.
my $flag_icon = &GeoIP::get_flag_icon($fcode);
my $flag_icon = &GeoIP::get_flag_icon($country);
# Get country name.
my $name = &GeoIP::get_full_country_name($country);
my $country = Locale::Country::code2country($fcode);
if($fcode eq 'eu') { $country = 'Europe'; }
if($fcode eq 'tp') { $country = 'East Timor'; }
if($fcode eq 'yu') { $country = 'Yugoslavia'; }
if ($lines % 2) {
print "<td $col><a id='$fcode'><img src='$flag_icon' alt='$flagcode' title='$flagcode'/></a></td>";
print "<td $col>$flagcode</td>";
print "<td $col>$country</td></tr>\n";
}
else {
print "<td $col><a id='$country'><img src='$flag_icon' alt='$country_uc' title='$country_uc'/></a></td>";
print "<td $col>$country_uc</td>";
print "<td $col>$name</td></tr>\n";
} else {
$lines2++;
if($lines2 % 2) {
$col="style='background-color:${Header::table2colour};'";
@@ -86,25 +80,25 @@ foreach $flag (@flaglistfiles)
$col="style='background-color:${Header::table1colour};'";
}
print "<tr>";
print "<td $col><a id='$fcode'><img src='$flag_icon' alt='$flagcode' title='$flagcode'/></a></td>";
print "<td $col>$flagcode</td>";
print "<td $col>$country</td>";
print "<td $col><a id='$country'><img src='$flag_icon' alt='$country_uc' title='$country_uc'/></a></td>";
print "<td $col>$country_uc</td>";
print "<td $col>$name</td>";
print "<td $col>&nbsp;</td>";
# Finish column when the last element in the array has passed and we have an uneven amount of items.
if ( $country eq $countries[-1] ) {
print "<td $col>&nbsp;</td>\n";
print "<td $col>&nbsp;</td>\n";
print "<td $col>&nbsp;</td></tr>\n";
}
}
}
print "</table>";
&Header::closebox();
&Header::closebigbox();
print <<END
<div style='text-align:center'>
<a href='$ENV{'HTTP_REFERER'}'>$Lang::tr{'back'}</a>
</div>
END
;
print "<div style='text-align:center'><a href='$ENV{'HTTP_REFERER'}'>$Lang::tr{'back'}</a></div>\n";
&Header::closepage();

View File

@@ -225,7 +225,16 @@ foreach my $location (@locations) {
print "<td align='center' $col>$flag</td>\n";
print "<td align='center' $col>$ccode_uc</td>\n";
print "<td align='left' $col>$cname</td>$line_end\n";
# Finish column when the last element in the array has passed and we have an uneven amount of items.
if(! ($lines2 % 2) && ($location eq $locations[-1] )) {
print "<td $col>&nbsp;</td>\n";
print "<td $col>&nbsp;</td>\n";
print "<td $col>&nbsp;</td>\n";
print "<td $col>&nbsp;</td>\n";
print "<td $col>&nbsp;</td></tr>\n";
}
$lines2++;
}

View File

@@ -3029,12 +3029,6 @@ sub make_algos($$$$$) {
if (!$is_aead) {
push(@algo, $int);
}
if ($grp =~ m/^e(.*)$/) {
push(@algo, "ecp$1");
} else {
push(@algo, "modp$grp");
}
}
push(@algos, join("-", @algo));

View File

@@ -1,7 +1,7 @@
###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2011 IPFire Team <info@ipfire.org> #
# Copyright (C) 2007-2015 IPFire Team <info@ipfire.org> #
# #
# 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 #
@@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = cyrus-imapd
PAK_VER = 3
PAK_VER = 4
DEPS = ""

View File

@@ -1,7 +1,7 @@
###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007-2013 IPFire Team <info@ipfire.org> #
# Copyright (C) 2007-2015 IPFire Team <info@ipfire.org> #
# #
# 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 #
@@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = elinks
PAK_VER = 4
PAK_VER = 5
DEPS = ""

View File

@@ -24,11 +24,11 @@
include Config
VER = 3.14.41
VER = 3.14.43
RPI_PATCHES = 3.14.41-grsec-ipfire1
A7M_PATCHES = 3.14.41-grsec-ipfire1
GRS_PATCHES = grsecurity-3.1-3.14.41-201505072056.patch.xz
RPI_PATCHES = 3.14.43-grsec-ipfire1
A7M_PATCHES = 3.14.43-grsec-ipfire1
GRS_PATCHES = grsecurity-3.1-3.14.43-201505191737.patch.xz
THISAPP = linux-$(VER)
DL_FILE = linux-$(VER).tar.xz
@@ -37,7 +37,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP)
CFLAGS =
CXXFLAGS =
PAK_VER = 59
PAK_VER = 61
DEPS = ""
VERSUFIX=ipfire$(KCFG)
@@ -77,10 +77,10 @@ rpi-patches-$(RPI_PATCHES).patch.xz = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES).
arm7-multi-patches-$(A7M_PATCHES).patch.xz = $(URL_IPFIRE)/arm7-multi-patches-$(A7M_PATCHES).patch.xz
$(GRS_PATCHES) = $(URL_IPFIRE)/$(GRS_PATCHES)
$(DL_FILE)_MD5 = b28dfc6907c388c2adcc65aee2ad68ff
rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = 9c8b20647429a64d656999a3c7af890f
arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = a4a4103255e93bfcb02652212b0ae3fc
$(GRS_PATCHES)_MD5 = 8af3b27954311da581cc6f803f048779
$(DL_FILE)_MD5 = 927f2343f298dfe531a8371f81356e53
rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = b5ba925ae1d4279d3ac0f03c27dd16eb
arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = b9c696fe4f22b05b81c168329ca33c94
$(GRS_PATCHES)_MD5 = 35e26b1214b1b0b515ee67e5ce50633a
install : $(TARGET)

View File

@@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = netsnmpd
PAK_VER = 2
PAK_VER = 3
DEPS = ""
###############################################################################

View File

@@ -40,9 +40,6 @@ if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then
echo "Name: linux-pae" > /opt/pakfire/db/installed/meta-linux-pae
echo "ProgVersion: 0" >> /opt/pakfire/db/installed/meta-linux-pae
echo "Release: 0" >> /opt/pakfire/db/installed/meta-linux-pae
echo "Name: linux-pae" > /opt/pakfire/db/meta/meta-linux-pae
echo "ProgVersion: 0" >> /opt/pakfire/db/meta/meta-linux-pae
echo "Release: 0" >> /opt/pakfire/db/meta/meta-linux-pae
fi
fi

View File

@@ -2,7 +2,7 @@
###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
# Copyright (C) 2007-2015 IPFire Team <info@ipfire.org> #
# #
# 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 #
@@ -393,6 +393,7 @@ sub dbgetlist {
foreach $file (@files) {
next if ( $file eq "." );
next if ( $file eq ".." );
next if ( $file eq "meta-" );
next if ( $file =~ /^old/ );
open(FILE, "<$Conf::dbdir/meta/$file");
@meta = <FILE>;
@@ -589,6 +590,25 @@ sub resolvedeps {
return @all;
}
sub resolvedeps_recursive {
my @packages = shift;
my @result = ();
foreach my $pkg (@packages) {
my @deps = &Pakfire::resolvedeps($pkg);
foreach my $dep (@deps) {
push(@result, $dep);
}
}
# Sort the result array and remove dupes
my %sort = map{ $_, 1 } @result;
@result = keys %sort;
return @result;
}
sub cleanup {
my $dir = shift;
my $path;
@@ -695,7 +715,7 @@ sub getpak {
}
unless ($file) {
message("No filename given in meta-file. Please phone the developers.");
message("No filename given in meta-file.");
exit 1;
}

View File

@@ -2,7 +2,7 @@
###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
# Copyright (C) 2007-2015 IPFire Team <info@ipfire.org> #
# #
# 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 #
@@ -255,14 +255,11 @@
} elsif ("$ARGV[0]" eq "upgrade") {
&Pakfire::upgradecore();
my @upgradepaks = &Pakfire::dblist("upgrade", "noweb");
my @temp, $pak;
foreach (@upgradepaks) {
@temp = &Pakfire::resolvedeps("$_");
foreach (@temp) { push(@upgradepaks,$_) if $_; }
}
if (@upgradepaks) {
# Resolve the dependencies of the to be upgraded packages
my @deps = &Pakfire::resolvedeps_recursive(@upgradepaks);
&Pakfire::message("");
&Pakfire::message("PAKFIRE UPGR: We are going to install all packages listed above.");
if ($interactive) {
@@ -277,16 +274,24 @@
}
}
### Download first
# Download packages
foreach $pak (@upgradepaks) {
#system("mv $Conf::dbdir/meta/meta-$pak $Conf::dbdir/meta/old-meta-$pak");
&Pakfire::getpak("$pak", "");
}
# Download dependencies
foreach $pak (@deps) {
&Pakfire::getpak("$pak", "");
}
# Install dependencies first
foreach $pak (@deps) {
&Pakfire::setuppak("$pak");
}
# Install all upgrades
foreach $pak (@upgradepaks) {
if (&Pakfire::upgradepak("$pak")) {
#system("mv $Conf::dbdir/meta/old-meta-$pak $Conf::dbdir/meta/meta-$pak");
}
&Pakfire::upgradepak("$pak");
}
} elsif ("$ARGV[0]" eq "list") {

View File

@@ -55,29 +55,24 @@ depmod -a $KVER-ipfire-pae
#
/usr/bin/dracut --force --xz /boot/initramfs-$KVER-ipfire-pae.img $KVER-ipfire-pae
ROOT="$(find_partition "/")"
case $ROOT in
xvd* )
#
# We are on XEN so create new grub.conf / menu.lst for pygrub
#
echo "timeout 10" > /boot/grub/grub.conf
echo "default 0" >> /boot/grub/grub.conf
echo "title IPFire (pae-kernel)" >> /boot/grub/grub.conf
echo " kernel /vmlinuz-$KVER-ipfire-pae root=/dev/$ROOT rootdelay=10 panic=10 console=hvc0" \
>> /boot/grub/grub.conf
echo " initrd /initramfs-$KVER-ipfire-pae.img" >> /boot/grub/grub.conf
echo "# savedefault 0" >> /boot/grub/grub.conf
ln -s grub.conf $MNThdd/boot/grub/menu.lst
;;
* )
#
# Update grub2 config
#
grub-mkconfig > /boot/grub/grub.cfg
;;
esac
if [ -e /boot/grub/grub.cfg ]; then
#
# Update grub2 config
#
grub-mkconfig > /boot/grub/grub.cfg
else
#
# xen pv with pygrub need grub.conf / menu.lst
#
echo "timeout 10" > /boot/grub/grub.conf
echo "default 0" >> /boot/grub/grub.conf
echo "title IPFire (pae-kernel)" >> /boot/grub/grub.conf
echo " kernel /vmlinuz-$KVER-ipfire-pae root=/dev/$ROOT rootdelay=10 panic=10 console=hvc0" \
>> /boot/grub/grub.conf
echo " initrd /initramfs-$KVER-ipfire-pae.img" >> /boot/grub/grub.conf
echo "# savedefault 0" >> /boot/grub/grub.conf
ln -s grub.conf $MNThdd/boot/grub/menu.lst
fi
# request a reboot if pae is supported
if [ ! "$(grep "^flags.* pae " /proc/cpuinfo)" == "" ]; then