From: Michael Tremer Date: Wed, 8 Jan 2014 14:01:24 +0000 (+0100) Subject: Merge commit '961f3dbcd8675f8b62ecd2404a709e47ec2ae343' into fifteen X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=commitdiff_plain;h=a51528487b0d04de80f4e79555595445de9d23cc;hp=961f3dbcd8675f8b62ecd2404a709e47ec2ae343 Merge commit '961f3dbcd8675f8b62ecd2404a709e47ec2ae343' into fifteen --- diff --git a/config/rootfiles/core/fifteen/filelists/apache2 b/config/rootfiles/core/fifteen/filelists/apache2 new file mode 120000 index 000000000..eef95efa7 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/apache2 @@ -0,0 +1 @@ +../../../common/apache2 \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/binutils b/config/rootfiles/core/fifteen/filelists/armv5tel/binutils new file mode 120000 index 000000000..ac971f931 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/binutils @@ -0,0 +1 @@ +../../../../common/armv5tel/binutils \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/dracut b/config/rootfiles/core/fifteen/filelists/armv5tel/dracut new file mode 120000 index 000000000..861df3f36 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/dracut @@ -0,0 +1 @@ +../../../../common/armv5tel/dracut \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/gcc b/config/rootfiles/core/fifteen/filelists/armv5tel/gcc new file mode 120000 index 000000000..84f7b9344 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/gcc @@ -0,0 +1 @@ +../../../../common/armv5tel/gcc \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/initscripts b/config/rootfiles/core/fifteen/filelists/armv5tel/initscripts new file mode 120000 index 000000000..af1d762ce --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/initscripts @@ -0,0 +1 @@ +../../../../common/armv5tel/initscripts \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/linux-kirkwood b/config/rootfiles/core/fifteen/filelists/armv5tel/linux-kirkwood new file mode 120000 index 000000000..72171071e --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/linux-kirkwood @@ -0,0 +1 @@ +../../../../common/armv5tel/linux-kirkwood \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/linux-multi b/config/rootfiles/core/fifteen/filelists/armv5tel/linux-multi new file mode 120000 index 000000000..204eb4c43 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/linux-multi @@ -0,0 +1 @@ +../../../../common/armv5tel/linux-multi \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/linux-rpi b/config/rootfiles/core/fifteen/filelists/armv5tel/linux-rpi new file mode 120000 index 000000000..a651a498f --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/linux-rpi @@ -0,0 +1 @@ +../../../../common/armv5tel/linux-rpi \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/lm_sensors b/config/rootfiles/core/fifteen/filelists/armv5tel/lm_sensors new file mode 120000 index 000000000..eec84cd56 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/lm_sensors @@ -0,0 +1 @@ +../../../../common/armv5tel/lm_sensors \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/rpi-firmware b/config/rootfiles/core/fifteen/filelists/armv5tel/rpi-firmware new file mode 120000 index 000000000..428fdf88f --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/rpi-firmware @@ -0,0 +1 @@ +../../../../common/armv5tel/rpi-firmware \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/u-boot b/config/rootfiles/core/fifteen/filelists/armv5tel/u-boot new file mode 120000 index 000000000..3df31a883 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/u-boot @@ -0,0 +1 @@ +../../../../common/armv5tel/u-boot \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/armv5tel/util-linux b/config/rootfiles/core/fifteen/filelists/armv5tel/util-linux new file mode 120000 index 000000000..2596908cc --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/armv5tel/util-linux @@ -0,0 +1 @@ +../../../../common/armv5tel/util-linux \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/bridge-utils b/config/rootfiles/core/fifteen/filelists/bridge-utils new file mode 120000 index 000000000..3dee211b6 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/bridge-utils @@ -0,0 +1 @@ +../../../common/bridge-utils \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/cyrus-sasl b/config/rootfiles/core/fifteen/filelists/cyrus-sasl new file mode 120000 index 000000000..bb51b4c92 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/cyrus-sasl @@ -0,0 +1 @@ +../../../common/cyrus-sasl \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/dosfstools b/config/rootfiles/core/fifteen/filelists/dosfstools new file mode 120000 index 000000000..087ccb0de --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/dosfstools @@ -0,0 +1 @@ +../../../common/dosfstools \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/files b/config/rootfiles/core/fifteen/filelists/files index 0f3a7e9c2..ff725c916 100644 --- a/config/rootfiles/core/fifteen/filelists/files +++ b/config/rootfiles/core/fifteen/filelists/files @@ -1,5 +1,6 @@ etc/system-release etc/issue +etc/collectd.conf etc/rc.d/init.d/network srv/web/ipfire/cgi-bin/credits.cgi srv/web/ipfire/cgi-bin/gui.cgi @@ -15,9 +16,11 @@ srv/web/ipfire/html/themes/darkdos srv/web/ipfire/html/themes/ipfire srv/web/ipfire/html/themes/ipfire-legacy srv/web/ipfire/html/themes/maniac +usr/local/bin/setddns.pl var/ipfire/backup/bin/backup.pl var/ipfire/backup/exclude var/ipfire/backup/include var/ipfire/general-functions.pl var/ipfire/header.pl +var/ipfire/graphs.pl var/ipfire/langs diff --git a/config/rootfiles/core/fifteen/filelists/fireinfo b/config/rootfiles/core/fifteen/filelists/fireinfo new file mode 120000 index 000000000..c46115521 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/fireinfo @@ -0,0 +1 @@ +../../../common/fireinfo \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/binutils b/config/rootfiles/core/fifteen/filelists/i586/binutils new file mode 120000 index 000000000..78695d73a --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/binutils @@ -0,0 +1 @@ +../../../../common/i586/binutils \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/dracut b/config/rootfiles/core/fifteen/filelists/i586/dracut new file mode 120000 index 000000000..9a0901051 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/dracut @@ -0,0 +1 @@ +../../../../common/i586/dracut \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/gcc b/config/rootfiles/core/fifteen/filelists/i586/gcc new file mode 120000 index 000000000..ba328e3b6 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/gcc @@ -0,0 +1 @@ +../../../../common/i586/gcc \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/grub b/config/rootfiles/core/fifteen/filelists/i586/grub new file mode 120000 index 000000000..feb236a22 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/grub @@ -0,0 +1 @@ +../../../../common/i586/grub \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/initscripts b/config/rootfiles/core/fifteen/filelists/i586/initscripts new file mode 120000 index 000000000..12d877060 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/initscripts @@ -0,0 +1 @@ +../../../../common/i586/initscripts \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/linux b/config/rootfiles/core/fifteen/filelists/i586/linux new file mode 120000 index 000000000..693ec4bbf --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/linux @@ -0,0 +1 @@ +../../../../common/i586/linux \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/lm_sensors b/config/rootfiles/core/fifteen/filelists/i586/lm_sensors new file mode 120000 index 000000000..17d6c016e --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/lm_sensors @@ -0,0 +1 @@ +../../../../common/i586/lm_sensors \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/i586/util-linux b/config/rootfiles/core/fifteen/filelists/i586/util-linux new file mode 120000 index 000000000..c973106f1 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/i586/util-linux @@ -0,0 +1 @@ +../../../../common/i586/util-linux \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/iptables b/config/rootfiles/core/fifteen/filelists/iptables new file mode 120000 index 000000000..8caf12bcc --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/iptables @@ -0,0 +1 @@ +../../../common/iptables \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/iw b/config/rootfiles/core/fifteen/filelists/iw new file mode 120000 index 000000000..7c58a2089 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/iw @@ -0,0 +1 @@ +../../../common/iw \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/kmod b/config/rootfiles/core/fifteen/filelists/kmod new file mode 120000 index 000000000..0020e197e --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/kmod @@ -0,0 +1 @@ +../../../common/kmod \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/libnl b/config/rootfiles/core/fifteen/filelists/libnl new file mode 120000 index 000000000..7181849de --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/libnl @@ -0,0 +1 @@ +../../../common/libnl \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/libusbx b/config/rootfiles/core/fifteen/filelists/libusbx new file mode 120000 index 000000000..96c999584 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/libusbx @@ -0,0 +1 @@ +../../../common/libusbx \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/mysql-libs b/config/rootfiles/core/fifteen/filelists/mysql-libs new file mode 120000 index 000000000..c63bc7fa3 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/mysql-libs @@ -0,0 +1 @@ +../../../common/mysql-libs \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/net-tools b/config/rootfiles/core/fifteen/filelists/net-tools new file mode 120000 index 000000000..bac6b00be --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/net-tools @@ -0,0 +1 @@ +../../../common/net-tools \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/setup b/config/rootfiles/core/fifteen/filelists/setup new file mode 120000 index 000000000..209374bbc --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/setup @@ -0,0 +1 @@ +../../../common/setup \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/udev b/config/rootfiles/core/fifteen/filelists/udev new file mode 120000 index 000000000..e967a1c92 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/udev @@ -0,0 +1 @@ +../../../common/udev \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/usbutils b/config/rootfiles/core/fifteen/filelists/usbutils new file mode 120000 index 000000000..31db5a7ac --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/usbutils @@ -0,0 +1 @@ +../../../common/usbutils \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/filelists/xz b/config/rootfiles/core/fifteen/filelists/xz new file mode 120000 index 000000000..734e926c7 --- /dev/null +++ b/config/rootfiles/core/fifteen/filelists/xz @@ -0,0 +1 @@ +../../../common/xz \ No newline at end of file diff --git a/config/rootfiles/core/fifteen/update.sh b/config/rootfiles/core/fifteen/update.sh index 4a5697214..a31f7d349 100644 --- a/config/rootfiles/core/fifteen/update.sh +++ b/config/rootfiles/core/fifteen/update.sh @@ -24,25 +24,181 @@ . /opt/pakfire/lib/functions.sh /usr/local/bin/backupctrl exclude >/dev/null 2>&1 +function add_to_backup () +{ + # Add path to ROOTFILES but remove old entries to prevent double + # files in the tar + grep -v "^$1" /opt/pakfire/tmp/ROOTFILES > /opt/pakfire/tmp/ROOTFILES.tmp + mv /opt/pakfire/tmp/ROOTFILES.tmp /opt/pakfire/tmp/ROOTFILES + echo $1 >> /opt/pakfire/tmp/ROOTFILES +} + # # Remove old core updates from pakfire cache to save space... -core=74 +core=76 for (( i=1; i<=$core; i++ )) do rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire done +# +# Do some sanity checks. +case $(uname -r) in + *-ipfire-versatile ) + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-$core: ERROR cannot update. versatile support is dropped." + # Report no error to pakfire. So it does not try to install it again. + exit 0 + ;; + *-ipfire-xen ) + BOOTSIZE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f2 | tail -n 1` + if [ $BOOTSIZE -lt 28000 ]; then + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-$core: ERROR cannot update because not enough space on boot." + exit 2 + fi + ;; + *-ipfire* ) + # Ok. + ;; + * ) + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-$core: ERROR cannot update. No IPFire Kernel." + exit 1 + ;; +esac + + +# +# +KVER="3.10.25" +MOUNT=`grep "kernel" /boot/grub/grub.conf 2>/dev/null | tail -n 1 ` +# Nur den letzten Parameter verwenden +echo $MOUNT > /dev/null +MOUNT=$_ +if [ ! $MOUNT == "rw" ]; then + MOUNT="ro" +fi + +# +# check if we the backup file already exist +if [ -e /var/ipfire/backup/core-upgrade$core_$KVER.tar.xz ]; then + echo Moving backup to backup-old ... + mv -f /var/ipfire/backup/core-upgrade$core_$KVER.tar.xz \ + /var/ipfire/backup/core-upgrade$core_$KVER-old.tar.xz +fi +echo First we made a backup of all files that was inside of the +echo update archive. This may take a while ... +# Add some files that are not in the package to backup +add_to_backup lib/modules +add_to_backup etc/udev +add_to_backup lib/udev +add_to_backup boot +add_to_backup etc/sysconfig/lm_sensors +add_to_backup etc/sysconfig/rc.local +add_to_backup srv/web/ipfire/html/themes/ipfire +add_to_backup usr/lib/engines +add_to_backup etc/rc.d/init.d/networking/red.up/22-outgoingfwctrl +add_to_backup etc/rc.d/init.d/networking/red.up/25-portfw +add_to_backup etc/rc.d/init.d/networking/red.up/26-xtaccess +add_to_backup usr/local/bin/setportfw +add_to_backup usr/local/bin/setdmzholes +add_to_backup usr/local/bin/setxtaccess +add_to_backup usr/local/bin/outgoingfwctrl +add_to_backup srv/web/ipfire/cgi-bin/{dmzholes,outgoingfw,portfw,xtaccess}.cgi +add_to_backup var/ipfire/{dmzholes,portfw,outgoing,xtaccess} + +# Backup the files +tar cJvf /var/ipfire/backup/core-upgrade$core_$KVER.tar.xz \ + -C / -T /opt/pakfire/tmp/ROOTFILES --exclude='#*' --exclude='/var/cache' > /dev/null 2>&1 + +# Check diskspace on root +ROOTSPACE=`df / -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1` + +if [ $ROOTSPACE -lt 70000 ]; then + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-$core: ERROR cannot update because not enough free space on root." + exit 2 +fi + + +echo +echo Update Kernel to $KVER ... +# +# Remove old kernel, configs, initrd, modules ... +# +rm -rf /boot/System.map-* +rm -rf /boot/config-* +rm -rf /boot/ipfirerd-* +rm -rf /boot/vmlinuz-* +rm -rf /boot/uImage-ipfire-* +rm -rf /boot/uInit-ipfire-* +rm -rf /lib/modules + +# +# Remove old udev rules. +# +if [ -e /etc/udev/rules.d/29-ct-server-network.rules ]; then + cp /etc/udev/rules.d/29-ct-server-network.rules /tmp/ +fi +cp /etc/udev/rules.d/30-persistent-network.rules /tmp/ +rm -rf /etc/udev +rm -rf /lib/udev +mkdir -p /etc/udev/rules.d +if [ -e /tmp/rules.d/29-ct-server-network.rules ]; then + mv /tmp/29-ct-server-network.rules /etc/udev/rules.d/ +fi +mv /tmp/30-persistent-network.rules /etc/udev/rules.d/ + +case $(uname -m) in + i?86 ) + # + # Backup grub.conf + # + cp -vf /boot/grub/grub.conf /boot/grub/grub.conf.org + ;; +esac +# +#Stop services +/etc/init.d/snort stop +/etc/init.d/squid stop +/etc/init.d/ipsec stop +/etc/init.d/apache stop + # Remove the old default theme rm -rf /srv/web/ipfire/html/themes/ipfire -# Stop services +# +#Extract files +tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C / +# Check diskspace on boot +BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1` -# Extract files -extract_files +if [ $BOOTSPACE -lt 1000 ]; then + case $(uname -r) in + *-ipfire-kirkwood ) + # Special handling for old kirkwood images. + # (install only kirkwood kernel) + rm -rf /boot/* + tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p \ + --numeric-owner -C / --wildcards 'boot/*-kirkwood*' + ;; + * ) + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-$core: FATAL-ERROR space run out on boot. System is not bootable..." + /etc/init.d/apache start + exit 4 + ;; + esac +fi -# Start services +# +#Reload init to close old linker/glibc +telinit u +# Regenerate ipsec configuration files. +/srv/web/ipfire/cgi-bin/vpnmain.cgi # Update Language cache perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang" @@ -82,16 +238,128 @@ rm -f /srv/web/ipfire/cgi-bin/{dmzholes,outgoingfw,portfw,xtaccess}.cgi # Remove old firewall configuration files rm -rf /var/ipfire/{dmzholes,portfw,outgoing,xtaccess} -sync +# +# Start services +# +/etc/init.d/apache start +/etc/init.d/squid start +/etc/init.d/snort start +if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then + /etc/init.d/ipsec start +fi + +# +# Rebuild qosscript if enabled +# +if [ -e /var/ipfire/qos/enable ]; then + /usr/local/bin/qosctrl stop + /usr/local/bin/qosctrl generate + /usr/local/bin/qosctrl start +fi + + +case $(uname -m) in + i?86 ) + # + # Modify grub.conf + # + echo + echo Update grub configuration ... + ROOT=`mount | grep " / " | cut -d" " -f1` + + if [ ! -z $ROOT ]; then + ROOTUUID=`blkid -c /dev/null -sUUID $ROOT | cut -d'"' -f2` + fi + + if [ ! -z $ROOTUUID ]; then + sed -i "s|ROOT|UUID=$ROOTUUID|g" /boot/grub/grub.conf + else + sed -i "s|ROOT|$ROOT|g" /boot/grub/grub.conf + fi + sed -i "s|KVER|$KVER|g" /boot/grub/grub.conf + sed -i "s|MOUNT|$MOUNT|g" /boot/grub/grub.conf + + if [ "$(grep "^serial" /boot/grub/grub.conf.org)" == "" ]; then + echo "grub use default console ..." + else + echo "grub use serial console ..." + sed -i -e "s|splashimage|#splashimage|g" /boot/grub/grub.conf + sed -i -e "s|#serial|serial|g" /boot/grub/grub.conf + sed -i -e "s|#terminal|terminal|g" /boot/grub/grub.conf + sed -i -e "s| panic=10 | console=ttyS0,115200n8 panic=10 |g" /boot/grub/grub.conf + fi + + # + # ReInstall grub + # + echo "(hd0) ${ROOT::`expr length $ROOT`-1}" > /boot/grub/device.map + grub-install --no-floppy ${ROOT::`expr length $ROOT`-1} + ;; +esac +# +# Delete old lm-sensor modullist to force search at next boot +# +rm -rf /etc/sysconfig/lm_sensors + + +# Force (re)install pae kernel if pae is supported +rm -rf /opt/pakfire/db/*/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` + if [ $BOOTSPACE -lt 8000 -o $ROOTSPACE -lt 70000 ]; then + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-$core: WARNING not enough space for pae kernel." + else + echo "Name: linux-pae" > /opt/pakfire/db/installed/meta-linux-pae + echo "ProgVersion: 3.10.24" >> /opt/pakfire/db/installed/meta-linux-pae + echo "Release: 30" >> /opt/pakfire/db/installed/meta-linux-pae + fi +fi + +# Force reinstall xen kernel if it was installed +if [ -e "/opt/pakfire/db/installed/meta-linux-xen" ]; then + echo "Name: linux-xen" > /opt/pakfire/db/installed/meta-linux-xen + echo "ProgVersion: 2.6.32.60" >> /opt/pakfire/db/installed/meta-linux-xen + echo "Release: 24" >> /opt/pakfire/db/installed/meta-linux-xen + # Add xvc0 to /etc/securetty + echo "xvc0" >> /etc/securetty +fi + +# +# After pakfire has ended run it again and update the lists and do upgrade +# +echo '#!/bin/bash' > /tmp/pak_update +echo 'while [ "$(ps -A | grep " update.sh")" != "" ]; do' >> /tmp/pak_update +echo ' sleep 1' >> /tmp/pak_update +echo 'done' >> /tmp/pak_update +echo 'while [ "$(ps -A | grep " pakfire")" != "" ]; do' >> /tmp/pak_update +echo ' sleep 1' >> /tmp/pak_update +echo 'done' >> /tmp/pak_update +echo '/opt/pakfire/pakfire update -y --force' >> /tmp/pak_update +echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update +echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update +echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update +echo '/usr/bin/logger -p syslog.emerg -t ipfire "Core-upgrade finished. If you use a customized grub.cfg"' >> /tmp/pak_update +echo '/usr/bin/logger -p syslog.emerg -t ipfire "Check it before reboot !!!"' >> /tmp/pak_update +echo '/usr/bin/logger -p syslog.emerg -t ipfire " *** Please reboot... *** "' >> /tmp/pak_update +echo 'touch /var/run/need_reboot ' >> /tmp/pak_update +# +chmod +x /tmp/pak_update +/tmp/pak_update & -# This update need a reboot... -touch /var/run/need_reboot +sync -# Finish -# Update the fireinfo profile +# +#Finish ( /etc/init.d/fireinfo start sendprofile ) >/dev/null 2>&1 & +echo +echo Please wait until pakfire has ended... +echo +#Don't report the exitcode last command exit 0 + diff --git a/doc/language_issues.de b/doc/language_issues.de index bcc021423..02c999070 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -150,6 +150,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -198,7 +199,6 @@ WARNING: translation string unused: from warn email bad WARNING: translation string unused: fwdfw MODE1 WARNING: translation string unused: fwdfw MODE2 WARNING: translation string unused: fwdfw err prot_port1 -WARNING: translation string unused: fwdfw err tgt_port WARNING: translation string unused: fwdfw final_rule WARNING: translation string unused: fwdfw from WARNING: translation string unused: fwdfw ipsec network @@ -572,6 +572,7 @@ WARNING: untranslated string: Scan for Songs WARNING: untranslated string: advproxy cache-digest WARNING: untranslated string: bytes 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: new diff --git a/doc/language_issues.en b/doc/language_issues.en index 1eccc80a2..b6b506f6d 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -173,6 +173,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -221,7 +222,6 @@ WARNING: translation string unused: from warn email bad WARNING: translation string unused: fwdfw MODE1 WARNING: translation string unused: fwdfw MODE2 WARNING: translation string unused: fwdfw err prot_port1 -WARNING: translation string unused: fwdfw err tgt_port WARNING: translation string unused: fwdfw final_rule WARNING: translation string unused: fwdfw from WARNING: translation string unused: fwdfw ipsec network diff --git a/doc/language_issues.es b/doc/language_issues.es index 6b6424a33..d32c90a58 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -167,6 +167,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -595,6 +596,7 @@ WARNING: untranslated string: ccd none WARNING: untranslated string: ccd routes WARNING: untranslated string: ccd subnet WARNING: untranslated string: ccd used +WARNING: untranslated string: dead peer detection WARNING: untranslated string: default ip WARNING: untranslated string: deprecated fs warn WARNING: untranslated string: dnat address @@ -605,6 +607,8 @@ WARNING: untranslated string: dnsforward edit an entry WARNING: untranslated string: dnsforward entries WARNING: untranslated string: dnsforward forward_server WARNING: untranslated string: dnsforward zone +WARNING: untranslated string: dpd delay +WARNING: untranslated string: dpd timeout WARNING: untranslated string: drop action WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 @@ -664,6 +668,7 @@ WARNING: untranslated string: fwdfw err src_addr WARNING: untranslated string: fwdfw err tgt_addr WARNING: untranslated string: fwdfw err tgt_grp WARNING: untranslated string: fwdfw err tgt_mac +WARNING: untranslated string: fwdfw err tgt_port WARNING: untranslated string: fwdfw err time WARNING: untranslated string: fwdfw external port nat WARNING: untranslated string: fwdfw hint ip1 @@ -774,6 +779,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: integrity +WARNING: untranslated string: invalid input for dpd delay +WARNING: untranslated string: invalid input for dpd timeout WARNING: untranslated string: least preferred WARNING: untranslated string: lifetime WARNING: untranslated string: minute diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 2f7f60d00..344c234d4 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -167,6 +167,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -597,6 +598,7 @@ WARNING: untranslated string: ccd none WARNING: untranslated string: ccd routes WARNING: untranslated string: ccd subnet WARNING: untranslated string: ccd used +WARNING: untranslated string: dead peer detection WARNING: untranslated string: default ip WARNING: untranslated string: deprecated fs warn WARNING: untranslated string: dnat address @@ -608,6 +610,8 @@ WARNING: untranslated string: dnsforward edit an entry WARNING: untranslated string: dnsforward entries WARNING: untranslated string: dnsforward forward_server WARNING: untranslated string: dnsforward zone +WARNING: untranslated string: dpd delay +WARNING: untranslated string: dpd timeout WARNING: untranslated string: drop action WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 @@ -667,6 +671,7 @@ WARNING: untranslated string: fwdfw err src_addr WARNING: untranslated string: fwdfw err tgt_addr WARNING: untranslated string: fwdfw err tgt_grp WARNING: untranslated string: fwdfw err tgt_mac +WARNING: untranslated string: fwdfw err tgt_port WARNING: untranslated string: fwdfw err time WARNING: untranslated string: fwdfw external port nat WARNING: untranslated string: fwdfw hint ip1 @@ -777,6 +782,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: integrity +WARNING: untranslated string: invalid input for dpd delay +WARNING: untranslated string: invalid input for dpd timeout WARNING: untranslated string: least preferred WARNING: untranslated string: lifetime WARNING: untranslated string: minute diff --git a/doc/language_issues.nl b/doc/language_issues.nl index d543069f3..44d92e585 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -169,6 +169,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -563,6 +564,7 @@ WARNING: untranslated string: advproxy errmsg proxy ports equal WARNING: untranslated string: advproxy proxy port transparent WARNING: untranslated string: bytes WARNING: untranslated string: ccd iroute2 +WARNING: untranslated string: dead peer detection WARNING: untranslated string: default ip WARNING: untranslated string: dnat address WARNING: untranslated string: dnsforward @@ -572,6 +574,8 @@ WARNING: untranslated string: dnsforward edit an entry WARNING: untranslated string: dnsforward entries WARNING: untranslated string: dnsforward forward_server WARNING: untranslated string: dnsforward zone +WARNING: untranslated string: dpd delay +WARNING: untranslated string: dpd timeout WARNING: untranslated string: drop action WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 @@ -613,6 +617,7 @@ WARNING: untranslated string: fwdfw err src_addr WARNING: untranslated string: fwdfw err tgt_addr WARNING: untranslated string: fwdfw err tgt_grp WARNING: untranslated string: fwdfw err tgt_mac +WARNING: untranslated string: fwdfw err tgt_port WARNING: untranslated string: fwdfw err time WARNING: untranslated string: fwdfw external port nat WARNING: untranslated string: fwdfw hint ip1 @@ -723,6 +728,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: integrity +WARNING: untranslated string: invalid input for dpd delay +WARNING: untranslated string: invalid input for dpd timeout WARNING: untranslated string: least preferred WARNING: untranslated string: lifetime WARNING: untranslated string: most preferred diff --git a/doc/language_issues.pl b/doc/language_issues.pl index 6b6424a33..d32c90a58 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -167,6 +167,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -595,6 +596,7 @@ WARNING: untranslated string: ccd none WARNING: untranslated string: ccd routes WARNING: untranslated string: ccd subnet WARNING: untranslated string: ccd used +WARNING: untranslated string: dead peer detection WARNING: untranslated string: default ip WARNING: untranslated string: deprecated fs warn WARNING: untranslated string: dnat address @@ -605,6 +607,8 @@ WARNING: untranslated string: dnsforward edit an entry WARNING: untranslated string: dnsforward entries WARNING: untranslated string: dnsforward forward_server WARNING: untranslated string: dnsforward zone +WARNING: untranslated string: dpd delay +WARNING: untranslated string: dpd timeout WARNING: untranslated string: drop action WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 @@ -664,6 +668,7 @@ WARNING: untranslated string: fwdfw err src_addr WARNING: untranslated string: fwdfw err tgt_addr WARNING: untranslated string: fwdfw err tgt_grp WARNING: untranslated string: fwdfw err tgt_mac +WARNING: untranslated string: fwdfw err tgt_port WARNING: untranslated string: fwdfw err time WARNING: untranslated string: fwdfw external port nat WARNING: untranslated string: fwdfw hint ip1 @@ -774,6 +779,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: integrity +WARNING: untranslated string: invalid input for dpd delay +WARNING: untranslated string: invalid input for dpd timeout WARNING: untranslated string: least preferred WARNING: untranslated string: lifetime WARNING: untranslated string: minute diff --git a/doc/language_issues.ru b/doc/language_issues.ru index 5a1296b54..09c6930b5 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -166,6 +166,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -590,6 +591,7 @@ WARNING: untranslated string: ccd routes WARNING: untranslated string: ccd subnet WARNING: untranslated string: ccd used WARNING: untranslated string: community rules +WARNING: untranslated string: dead peer detection WARNING: untranslated string: default ip WARNING: untranslated string: deprecated fs warn WARNING: untranslated string: disk access per @@ -601,6 +603,8 @@ WARNING: untranslated string: dnsforward edit an entry WARNING: untranslated string: dnsforward entries WARNING: untranslated string: dnsforward forward_server WARNING: untranslated string: dnsforward zone +WARNING: untranslated string: dpd delay +WARNING: untranslated string: dpd timeout WARNING: untranslated string: drop action WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 @@ -650,6 +654,7 @@ WARNING: untranslated string: fwdfw err src_addr WARNING: untranslated string: fwdfw err tgt_addr WARNING: untranslated string: fwdfw err tgt_grp WARNING: untranslated string: fwdfw err tgt_mac +WARNING: untranslated string: fwdfw err tgt_port WARNING: untranslated string: fwdfw err time WARNING: untranslated string: fwdfw external port nat WARNING: untranslated string: fwdfw hint ip1 @@ -761,6 +766,8 @@ WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: incoming traffic in bytes per second WARNING: untranslated string: integrity +WARNING: untranslated string: invalid input for dpd delay +WARNING: untranslated string: invalid input for dpd timeout WARNING: untranslated string: least preferred WARNING: untranslated string: lifetime WARNING: untranslated string: minute diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 299c74d64..07ee128b3 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -174,6 +174,7 @@ WARNING: translation string unused: eciadsl upload WARNING: translation string unused: edit network WARNING: translation string unused: edit service WARNING: translation string unused: editor +WARNING: translation string unused: eg WARNING: translation string unused: email server can not be empty WARNING: translation string unused: enable javascript WARNING: translation string unused: enabled on @@ -576,8 +577,11 @@ WARNING: untranslated string: Scan for Songs WARNING: untranslated string: advproxy errmsg proxy ports equal WARNING: untranslated string: advproxy proxy port transparent WARNING: untranslated string: bytes +WARNING: untranslated string: dead peer detection WARNING: untranslated string: default ip WARNING: untranslated string: dnat address +WARNING: untranslated string: dpd delay +WARNING: untranslated string: dpd timeout WARNING: untranslated string: drop action WARNING: untranslated string: drop action1 WARNING: untranslated string: drop action2 @@ -619,6 +623,7 @@ WARNING: untranslated string: fwdfw err src_addr WARNING: untranslated string: fwdfw err tgt_addr WARNING: untranslated string: fwdfw err tgt_grp WARNING: untranslated string: fwdfw err tgt_mac +WARNING: untranslated string: fwdfw err tgt_port WARNING: untranslated string: fwdfw err time WARNING: untranslated string: fwdfw external port nat WARNING: untranslated string: fwdfw hint ip1 @@ -729,6 +734,8 @@ WARNING: untranslated string: fwhost used WARNING: untranslated string: fwhost welcome WARNING: untranslated string: grouptype WARNING: untranslated string: integrity +WARNING: untranslated string: invalid input for dpd delay +WARNING: untranslated string: invalid input for dpd timeout WARNING: untranslated string: least preferred WARNING: untranslated string: lifetime WARNING: untranslated string: most preferred diff --git a/doc/language_missings b/doc/language_missings index 86f45b004..952e1e5f2 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -70,6 +70,8 @@ < dnsforward entries < dnsforward forward_server < dnsforward zone +< dpd delay +< dpd timeout < drop action < drop action1 < drop action2 @@ -268,6 +270,8 @@ < fw settings ruletable < grouptype < integrity +< invalid input for dpd delay +< invalid input for dpd timeout < least preferred < lifetime < minute @@ -488,6 +492,8 @@ < dnsforward entries < dnsforward forward_server < dnsforward zone +< dpd delay +< dpd timeout < drop action < drop action1 < drop action2 @@ -686,6 +692,8 @@ < fw settings ruletable < grouptype < integrity +< invalid input for dpd delay +< invalid input for dpd timeout < least preferred < lifetime < minute @@ -898,6 +906,8 @@ < dnsforward entries < dnsforward forward_server < dnsforward zone +< dpd delay +< dpd timeout < drop action < drop action1 < drop action2 @@ -1088,6 +1098,8 @@ < fw settings ruletable < grouptype < integrity +< invalid input for dpd delay +< invalid input for dpd timeout < least preferred < lifetime < minute @@ -1287,6 +1299,8 @@ < dnsforward entries < dnsforward forward_server < dnsforward zone +< dpd delay +< dpd timeout < drop action < drop action1 < drop action2 @@ -1481,6 +1495,8 @@ < hour-graph < incoming traffic in bytes per second < integrity +< invalid input for dpd delay +< invalid input for dpd timeout < least preferred < lifetime < minute diff --git a/html/cgi-bin/ovpnmain.cgi b/html/cgi-bin/ovpnmain.cgi index 52dc6e464..c620ab09d 100644 --- a/html/cgi-bin/ovpnmain.cgi +++ b/html/cgi-bin/ovpnmain.cgi @@ -4748,8 +4748,8 @@ END
- - + +
  END diff --git a/html/cgi-bin/vpnmain.cgi b/html/cgi-bin/vpnmain.cgi index 64bf17e93..0f60820ed 100644 --- a/html/cgi-bin/vpnmain.cgi +++ b/html/cgi-bin/vpnmain.cgi @@ -104,7 +104,8 @@ $cgiparams{'ROOTCERT_OU'} = ''; $cgiparams{'ROOTCERT_CITY'} = ''; $cgiparams{'ROOTCERT_STATE'} = ''; $cgiparams{'RW_NET'} = ''; - +$cgiparams{'DPD_DELAY'} = '30'; +$cgiparams{'DPD_TIMEOUT'} = '120'; &Header::getcgihash(\%cgiparams, {'wantfile' => 1, 'filevar' => 'FH'}); ### @@ -384,9 +385,27 @@ sub writeipsecfiles { print CONF "\tcompress=yes\n" if ($lconfighash{$key}[13] eq 'on'); # Dead Peer Detection - print CONF "\tdpddelay=30\n"; - print CONF "\tdpdtimeout=120\n"; - print CONF "\tdpdaction=$lconfighash{$key}[27]\n"; + my $dpdaction = $lconfighash{$key}[27]; + print CONF "\tdpdaction=$dpdaction\n"; + + # If the dead peer detection is disabled and IKEv2 is used, + # dpddelay must be set to zero, too. + if ($dpdaction eq "none") { + if ($lconfighash{$key}[29] eq "ikev2") { + print CONF "\tdpddelay=0\n"; + } + } else { + my $dpddelay = $lconfighash{$key}[30]; + if (!$dpddelay) { + $dpddelay = 30; + } + print CONF "\tdpddelay=$dpddelay\n"; + my $dpdtimeout = $lconfighash{$key}[31]; + if (!$dpdtimeout) { + $dpdtimeout = 120; + } + print CONF "\tdpdtimeout=$dpdtimeout\n"; + } # Build Authentication details: LEFTid RIGHTid : PSK psk my $psk_line; @@ -1274,6 +1293,16 @@ END $cgiparams{'ONLY_PROPOSED'} = $confighash{$cgiparams{'KEY'}}[24]; $cgiparams{'PFS'} = $confighash{$cgiparams{'KEY'}}[28]; $cgiparams{'VHOST'} = $confighash{$cgiparams{'KEY'}}[14]; + $cgiparams{'DPD_TIMEOUT'} = $confighash{$cgiparams{'KEY'}}[30]; + $cgiparams{'DPD_DELAY'} = $confighash{$cgiparams{'KEY'}}[31]; + + if (!$cgiparams{'DPD_DELAY'}) { + $cgiparams{'DPD_DELAY'} = 30; + } + + if (!$cgiparams{'DPD_TIMEOUT'}) { + $cgiparams{'DPD_TIMEOUT'} = 120; + } } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) { $cgiparams{'REMARK'} = &Header::cleanhtml($cgiparams{'REMARK'}); @@ -1748,7 +1777,7 @@ END my $key = $cgiparams{'KEY'}; if (! $key) { $key = &General::findhasharraykey (\%confighash); - foreach my $i (0 .. 28) { $confighash{$key}[$i] = "";} + foreach my $i (0 .. 31) { $confighash{$key}[$i] = "";} } $confighash{$key}[0] = $cgiparams{'ENABLED'}; $confighash{$key}[1] = $cgiparams{'NAME'}; @@ -1788,6 +1817,8 @@ END $confighash{$key}[24] = $cgiparams{'ONLY_PROPOSED'}; $confighash{$key}[28] = $cgiparams{'PFS'}; $confighash{$key}[14] = $cgiparams{'VHOST'}; + $confighash{$key}[30] = $cgiparams{'DPD_TIMEOUT'}; + $confighash{$key}[31] = $cgiparams{'DPD_DELAY'}; #free unused fields! $confighash{$key}[6] = 'off'; @@ -1823,9 +1854,17 @@ END # choose appropriate dpd action if ($cgiparams{'TYPE'} eq 'host') { - $cgiparams{'DPD_ACTION'} = 'clear'; + $cgiparams{'DPD_ACTION'} = 'clear'; } else { - $cgiparams{'DPD_ACTION'} = 'restart'; + $cgiparams{'DPD_ACTION'} = 'restart'; + } + + if (!$cgiparams{'DPD_DELAY'}) { + $cgiparams{'DPD_DELAY'} = 30; + } + + if (!$cgiparams{'DPD_TIMEOUT'}) { + $cgiparams{'DPD_TIMEOUT'} = 120; } # Default IKE Version to v2 @@ -1869,15 +1908,6 @@ END $checked{'AUTH'}{'auth-dn'} = ''; $checked{'AUTH'}{$cgiparams{'AUTH'}} = "checked='checked'"; - $selected{'DPD_ACTION'}{'clear'} = ''; - $selected{'DPD_ACTION'}{'hold'} = ''; - $selected{'DPD_ACTION'}{'restart'} = ''; - $selected{'DPD_ACTION'}{$cgiparams{'DPD_ACTION'}} = "selected='selected'"; - - $selected{'IKE_VERSION'}{'ikev1'} = ''; - $selected{'IKE_VERSION'}{'ikev2'} = ''; - $selected{'IKE_VERSION'}{$cgiparams{'IKE_VERSION'}} = "selected='selected'"; - &Header::showhttpheaders(); &Header::openpage($Lang::tr{'vpn configuration main'}, 1, ''); &Header::openbigbox('100%', 'left', '', $errormessage); @@ -1898,6 +1928,7 @@ END print "
"; print< + @@ -1910,23 +1941,30 @@ END + + + END ; if ($cgiparams{'KEY'}) { print ""; + print ""; print ""; } - &Header::openbox('100%', 'left', "$Lang::tr{'connection'}:"); + &Header::openbox('100%', 'left', "$Lang::tr{'connection'}: $cgiparams{'NAME'}"); print ""; - print ""; - if ($cgiparams{'KEY'}) { - print ""; - } else { - print ""; + if (!$cgiparams{'KEY'}) { + print < + + + + +EOF } - print ""; - print ''; my $disabled; my $blob; @@ -1937,44 +1975,41 @@ END print < - - - - + + + - - + + + - - - - - - - - + - - + + + + + + - - - END ; @@ -2184,6 +2219,17 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || goto ADVANCED_ERROR; } + if ($cgiparams{'DPD_DELAY'} !~ /^\d+$/) { + $errormessage = $Lang::tr{'invalid input for dpd delay'}; + goto ADVANCED_ERROR; + } + + if ($cgiparams{'DPD_TIMEOUT'} !~ /^\d+$/) { + $errormessage = $Lang::tr{'invalid input for dpd timeout'}; + goto ADVANCED_ERROR; + } + + $confighash{$cgiparams{'KEY'}}[29] = $cgiparams{'IKE_VERSION'}; $confighash{$cgiparams{'KEY'}}[18] = $cgiparams{'IKE_ENCRYPTION'}; $confighash{$cgiparams{'KEY'}}[19] = $cgiparams{'IKE_INTEGRITY'}; $confighash{$cgiparams{'KEY'}}[20] = $cgiparams{'IKE_GROUPTYPE'}; @@ -2197,6 +2243,9 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || $confighash{$cgiparams{'KEY'}}[24] = $cgiparams{'ONLY_PROPOSED'}; $confighash{$cgiparams{'KEY'}}[28] = $cgiparams{'PFS'}; $confighash{$cgiparams{'KEY'}}[14] = $cgiparams{'VHOST'}; + $confighash{$cgiparams{'KEY'}}[27] = $cgiparams{'DPD_ACTION'}; + $confighash{$cgiparams{'KEY'}}[30] = $cgiparams{'DPD_TIMEOUT'}; + $confighash{$cgiparams{'KEY'}}[31] = $cgiparams{'DPD_DELAY'}; &General::writehasharray("${General::swroot}/vpn/config", \%confighash); &writeipsecfiles(); if (&vpnenabled) { @@ -2205,6 +2254,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || } goto ADVANCED_END; } else { + $cgiparams{'IKE_VERSION'} = $confighash{$cgiparams{'KEY'}}[29]; $cgiparams{'IKE_ENCRYPTION'} = $confighash{$cgiparams{'KEY'}}[18]; $cgiparams{'IKE_INTEGRITY'} = $confighash{$cgiparams{'KEY'}}[19]; $cgiparams{'IKE_GROUPTYPE'} = $confighash{$cgiparams{'KEY'}}[20]; @@ -2217,6 +2267,17 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || $cgiparams{'ONLY_PROPOSED'} = $confighash{$cgiparams{'KEY'}}[24]; $cgiparams{'PFS'} = $confighash{$cgiparams{'KEY'}}[28]; $cgiparams{'VHOST'} = $confighash{$cgiparams{'KEY'}}[14]; + $cgiparams{'DPD_ACTION'} = $confighash{$cgiparams{'KEY'}}[27]; + $cgiparams{'DPD_TIMEOUT'} = $confighash{$cgiparams{'KEY'}}[30]; + $cgiparams{'DPD_DELAY'} = $confighash{$cgiparams{'KEY'}}[31]; + + if (!$cgiparams{'DPD_DELAY'}) { + $cgiparams{'DPD_DELAY'} = 30; + } + + if (!$cgiparams{'DPD_TIMEOUT'}) { + $cgiparams{'DPD_TIMEOUT'} = 120; + } if ($confighash{$cgiparams{'KEY'}}[3] eq 'net' || $confighash{$cgiparams{'KEY'}}[10]) { $cgiparams{'VHOST'} = 'off'; @@ -2279,6 +2340,16 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || $checked{'PFS'} = $cgiparams{'PFS'} eq 'on' ? "checked='checked'" : '' ; $checked{'VHOST'} = $cgiparams{'VHOST'} eq 'on' ? "checked='checked'" : '' ; + $selected{'IKE_VERSION'}{'ikev1'} = ''; + $selected{'IKE_VERSION'}{'ikev2'} = ''; + $selected{'IKE_VERSION'}{$cgiparams{'IKE_VERSION'}} = "selected='selected'"; + + $selected{'DPD_ACTION'}{'clear'} = ''; + $selected{'DPD_ACTION'}{'hold'} = ''; + $selected{'DPD_ACTION'}{'restart'} = ''; + $selected{'DPD_ACTION'}{'none'} = ''; + $selected{'DPD_ACTION'}{$cgiparams{'DPD_ACTION'}} = "selected='selected'"; + &Header::showhttpheaders(); &Header::openpage($Lang::tr{'vpn configuration main'}, 1, ''); &Header::openbigbox('100%', 'left', '', $errormessage); @@ -2306,14 +2377,24 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
$Lang::tr{'name'}:$cgiparams{'NAME'}$Lang::tr{'name'}: + +
$Lang::tr{'enabled'}

$Lang::tr{'remote host/ip'}: $blob - - $Lang::tr{'remote subnet'} - + $Lang::tr{'enabled'} + + $Lang::tr{'local subnet'} +
$Lang::tr{'local subnet'} - + $Lang::tr{'remote host/ip'}: $blob + + $Lang::tr{'remote subnet'} +
$Lang::tr{'vpn local id'}:
($Lang::tr{'eg'} @xy.example.com)
$Lang::tr{'vpn remote id'}:

$Lang::tr{'vpn keyexchange'}: + $Lang::tr{'vpn local id'}: + $Lang::tr{'dpd action'}: + $Lang::tr{'vpn remote id'}: + +

$Lang::tr{'remark title'} * +
$Lang::tr{'remark title'} *
- + - + + + + + + - + - + @@ -2371,7 +2452,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || - +
IKE ESP
$Lang::tr{'encryption'}$Lang::tr{'vpn keyexchange'}: + +
$Lang::tr{'encryption'}
$Lang::tr{'integrity'}$Lang::tr{'integrity'}
$Lang::tr{'lifetime'}$Lang::tr{'lifetime'} $Lang::tr{'hours'}
$Lang::tr{'grouptype'}$Lang::tr{'grouptype'}
+

+ +

$Lang::tr{'dead peer detection'}

+ + + + + + + + + + + + + + +
$Lang::tr{'dpd action'}: + +
$Lang::tr{'dpd timeout'}: + +
$Lang::tr{'dpd delay'}: + +
+
@@ -2441,7 +2552,7 @@ EOF print < - @@ -2759,8 +2870,8 @@ END diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 01cd3f683..568f057cb 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -749,6 +749,8 @@ 'download pkcs12 file' => 'PKCS12-Datei herunterladen', 'download root certificate' => 'Root-Zertifikat herunterladen', 'dpd action' => 'Aktion für Dead Peer Detection', +'dpd delay' => 'Verzögerung', +'dpd timeout' => 'Zeitüberschreitung', 'driver' => 'Treiber', 'drop action' => 'Standardverhalten der (Forward) Firewall in Modus "Blocked"', 'drop action1' => 'Standardverhalten der (Outgoing) Firewall in Modus "Blocked"', @@ -1209,6 +1211,8 @@ 'invalid input for dhcp dns' => 'Ungültige Eingabe für DHCP DNS', 'invalid input for dhcp domain' => 'Ungültige Eingabe für DHCP Domain', 'invalid input for dhcp wins' => 'Ungültige Eingabe für DHCP WINS', +'invalid input for dpd delay' => 'Ungültige Eingabe für DPD-Verzögerung', +'invalid input for dpd timeout' => 'Ungültige Eingabe für DPD-Zeitüberschreitung', 'invalid input for e-mail address' => 'Ungültige Eingabe für die E-mail Adresse', 'invalid input for esp keylife' => 'Ungültige Eingabe für ESP Schlüssel-Lebensdauer', 'invalid input for hostname' => 'Ungültige Eingabe für Hostname', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index dc38129f3..451ea7945 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -634,6 +634,7 @@ 'ddns noip prefix' => 'To use no-ip in group mode, prefix hostname with %', 'deactivate' => 'deactivate', 'deactivate user' => 'deactivate user', +'dead peer detection' => 'Dead Peer Detection', 'debugme' => 'Not yet implemented', 'december' => 'December', 'deep scan directories' => 'Scan recursive', @@ -772,7 +773,9 @@ 'download new ruleset' => 'Download new ruleset', 'download pkcs12 file' => 'Download PKCS12 file', 'download root certificate' => 'Download root certificate', -'dpd action' => 'Dead Peer Detection action', +'dpd action' => 'Action', +'dpd delay' => 'Delay', +'dpd timeout' => 'Timeout', 'driver' => 'Driver', 'drop action' => 'Default behaviour of (forward) firewall in mode "Blocked"', 'drop action1' => 'Default behaviour of (outgoing) firewall in mode "Blocked"', @@ -1237,6 +1240,8 @@ 'invalid input for dhcp dns' => 'Invalid input for DHCP DNS', 'invalid input for dhcp domain' => 'Invalid input for DHCP domain', 'invalid input for dhcp wins' => 'Invalid input for DHCP WINS', +'invalid input for dpd delay' => 'Invalid input for DPD delay', +'invalid input for dpd timeout' => 'Invalid input for DPD timeout', 'invalid input for e-mail address' => 'Invalid input for e-mail address.', 'invalid input for esp keylife' => 'Invalid input for ESP Keylife', 'invalid input for hostname' => 'Invalid input for hostname.', diff --git a/lfs/initrd b/lfs/initrd index 56e19679b..cc1695680 100644 --- a/lfs/initrd +++ b/lfs/initrd @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2010 IPFire Team # +# Copyright (C) 2007-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 # @@ -88,8 +88,6 @@ $(TARGET) : #Build Module deps for installer. depmod -a -b /install/initrd/ -F /boot/System.map-$(KVER)-ipfire $(KVER)-ipfire - # Remove binary depmod files - rm -rf /install/initrd/lib/modules/$(KVER)-ipfire/modules.*.bin #Name service from dhcpcd cp -f /etc/nsswitch.conf /install/initrd/etc/ diff --git a/lfs/mysql b/lfs/mysql index 5fcd7b3ac..aa5c3579f 100644 --- a/lfs/mysql +++ b/lfs/mysql @@ -32,7 +32,9 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = mysql -PAK_VER = 2 +PAK_VER = 3 + +CFLAGS += -fno-strict-aliasing ############################################################################### # Top-level Rules @@ -75,7 +77,6 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && C_EXTRA_FLAGS=-fno-strict-aliasing cd $(DIR_APP) && ./configure --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/sbin \
+ - - + +