diff options
-rw-r--r-- | config/patch_rc_filter_dirty/patch_rc_filter_dirty.inc | 18 | ||||
-rw-r--r-- | config/patch_rc_filter_dirty/patch_rc_filter_dirty.patch | 10 | ||||
-rw-r--r-- | config/patch_rc_filter_dirty/patch_rc_filter_dirty.xml | 65 | ||||
-rwxr-xr-x | pkg_config.7.xml | 10 |
4 files changed, 103 insertions, 0 deletions
diff --git a/config/patch_rc_filter_dirty/patch_rc_filter_dirty.inc b/config/patch_rc_filter_dirty/patch_rc_filter_dirty.inc new file mode 100644 index 00000000..85b5edf6 --- /dev/null +++ b/config/patch_rc_filter_dirty/patch_rc_filter_dirty.inc @@ -0,0 +1,18 @@ +<?php + +function patch_rc_filter_dirty_install() { + global $g, $config; + + // Test to make sure the patch is not already applied. + $out = `patch -fslC --reverse -p1 -b .before_patch_rc_filter_dirty -d / -i /usr/local/pkg/patch_rc_filter_dirty.patch |& grep -ci reject`; + if ($out == 0) { + // If the patch has not already been applied, test to see if it will apply cleanly. + $out = `patch -fsNlC -p1 -b .before_patch_rc_filter_dirty -d / -i /usr/local/pkg/patch_rc_filter_dirty.patch |& grep -ci reject`; + if ($out == 0) { + // The patch should apply cleanly, let 'er rip. + mwexec("patch -fsNl -p1 -b .before_patch_rc_filter_dirty -d / -i /usr/local/pkg/patch_rc_filter_dirty.patch "); + } + } +} + +?>
\ No newline at end of file diff --git a/config/patch_rc_filter_dirty/patch_rc_filter_dirty.patch b/config/patch_rc_filter_dirty/patch_rc_filter_dirty.patch new file mode 100644 index 00000000..81163362 --- /dev/null +++ b/config/patch_rc_filter_dirty/patch_rc_filter_dirty.patch @@ -0,0 +1,10 @@ +--- rc.orig 2010-06-24 18:38:58.000000000 +0000 ++++ rc 2010-06-24 18:39:06.000000000 +0000 +@@ -319,7 +319,6 @@ + + # Remove stale files that have already been processed by bootup + # scripts +-rm -f /tmp/filter_dirty + rm -f /tmp/rc.linkup + nohup /usr/bin/nice -n20 /usr/local/sbin/check_reload_status & + diff --git a/config/patch_rc_filter_dirty/patch_rc_filter_dirty.xml b/config/patch_rc_filter_dirty/patch_rc_filter_dirty.xml new file mode 100644 index 00000000..63f8f7d6 --- /dev/null +++ b/config/patch_rc_filter_dirty/patch_rc_filter_dirty.xml @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="utf-8" ?> +<!DOCTYPE packagegui SYSTEM "../schema/packages.dtd"> +<?xml-stylesheet type="text/xsl" href="../xsl/package.xsl"?> +<packagegui> + <copyright> + <![CDATA[ +/* $Id$ */ +/* ========================================================================== */ +/* + patch_rc_filter_dirty.xml + part of pfSense (http://www.pfSense.com) + Copyright (C) 2010 to whom it may belong + All rights reserved. + + Based on m0n0wall (http://m0n0.ch/wall) + Copyright (C) 2003-2006 Manuel Kasper <mk@neon1.net>. + All rights reserved. + */ +/* ========================================================================== */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + */ +/* ========================================================================== */ + ]]> + </copyright> + <description>Patch to stop /etc/rc from removing /tmp/filter_dirty on boot. Fixes boot issues with some packages on certain platforms.</description> + <requirements>pfSense 1.2.3</requirements> + <faq>None</faq> + <name>Patch rc to leave filter_dirty</name> + <version>0.2</version> + <title>Patch rc to leave filter_dirty</title> + <include_file>/usr/local/pkg/patch_rc_filter_dirty.inc</include_file> + <additional_files_needed> + <prefix>/usr/local/pkg/</prefix> + <chmod>077</chmod> + <item>http://www.pfsense.com/packages/config/patch_rc_filter_dirty/patch_rc_filter_dirty.inc</item> + </additional_files_needed> + <additional_files_needed> + <prefix>/usr/local/pkg/</prefix> + <chmod>077</chmod> + <item>http://www.pfsense.com/packages/config/patch_rc_filter_dirty/patch_rc_filter_dirty.patch</item> + </additional_files_needed> + <custom_php_install_command> + patch_rc_filter_dirty_install(); + </custom_php_install_command> +</packagegui> diff --git a/pkg_config.7.xml b/pkg_config.7.xml index 8b652ef2..fb00ba25 100755 --- a/pkg_config.7.xml +++ b/pkg_config.7.xml @@ -1053,5 +1053,15 @@ <config_file>http://www.pfsense.org/packages/config/rrd-summary/rrd-summary.xml</config_file> <configurationfile>rrd-summary.xml</configurationfile> </package> + <package> + <name>Patch rc to leave filter_dirty</name> + <descr>Patch to stop /etc/rc from removing /tmp/filter_dirty on boot. Fixes boot issues with some packages on certain platforms.</descr> + <category>System</category> + <config_file>http://www.pfsense.com/packages/config/patch_rc_filter_dirty/patch_rc_filter_dirty.xml</config_file> + <version>0.1</version> + <status>BETA</status> + <required_version>1.2.3</required_version> + <maximum_version>1.2.3</maximum_version> + </package> </packages> </pfsensepkgs> |