diff options
-rw-r--r-- | config/dnsmasq-edns/dnsmasq-edns.inc | 18 | ||||
-rw-r--r-- | config/dnsmasq-edns/dnsmasq-edns.patch | 13 | ||||
-rw-r--r-- | config/dnsmasq-edns/dnsmasq-edns.xml | 65 | ||||
-rwxr-xr-x | pkg_config.7.xml | 10 |
4 files changed, 106 insertions, 0 deletions
diff --git a/config/dnsmasq-edns/dnsmasq-edns.inc b/config/dnsmasq-edns/dnsmasq-edns.inc new file mode 100644 index 00000000..dd84271f --- /dev/null +++ b/config/dnsmasq-edns/dnsmasq-edns.inc @@ -0,0 +1,18 @@ +<?php + +function dnsmasq-edns_install() { + global $g, $config; + + // Test to make sure the patch is not already applied. + $out = `patch -fslC --reverse -p1 -b .before_dnsmasq-edns -d / -i /usr/local/pkg/dnsmasq-edns.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_dnsmasq-edns -d / -i /usr/local/pkg/dnsmasq-edns.patch |& grep -ci reject`; + if ($out == 0) { + // The patch should apply cleanly, let 'er rip. + mwexec("patch -fsNl -p1 -b .before_dnsmasq-edns -d / -i /usr/local/pkg/dnsmasq-edns.patch "); + } + } +} + +?>
\ No newline at end of file diff --git a/config/dnsmasq-edns/dnsmasq-edns.patch b/config/dnsmasq-edns/dnsmasq-edns.patch new file mode 100644 index 00000000..5ef93d1e --- /dev/null +++ b/config/dnsmasq-edns/dnsmasq-edns.patch @@ -0,0 +1,13 @@ +diff --git a/etc/inc/services.inc b/etc/inc/services.inc +index d014b13..09b1ae8 100644 +--- a/etc/inc/services.inc ++++ b/etc/inc/services.inc +@@ -636,7 +636,7 @@ function services_dnsmasq_configure() { + //} + + /* run dnsmasq */ +- mwexec("/usr/local/sbin/dnsmasq --all-servers {$args}"); ++ mwexec("/usr/local/sbin/dnsmasq --all-servers --edns-packet-max=4096 {$args}"); + + if ($g['booting']) + echo "done.\n"; diff --git a/config/dnsmasq-edns/dnsmasq-edns.xml b/config/dnsmasq-edns/dnsmasq-edns.xml new file mode 100644 index 00000000..9ab9ecb5 --- /dev/null +++ b/config/dnsmasq-edns/dnsmasq-edns.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$ */ +/* ========================================================================== */ +/* + dnsmasq-edns.xml + part of pfSense (http://www.pfSense.com) + Copyright (C) 2007 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 increase dnsmasq EDNS size.</description> + <requirements>pfSense 1.2.3</requirements> + <faq>None</faq> + <name>dnsmasq EDNS size increase</name> + <version>0.1</version> + <title>dnsmasq EDNS size increase</title> + <include_file>/usr/local/pkg/dnsmasq-edns.inc</include_file> + <additional_files_needed> + <prefix>/usr/local/pkg/</prefix> + <chmod>077</chmod> + <item>http://www.pfsense.com/packages/config/dnsmasq-edns/dnsmasq-edns.inc</item> + </additional_files_needed> + <additional_files_needed> + <prefix>/usr/local/pkg/</prefix> + <chmod>077</chmod> + <item>http://www.pfsense.com/packages/config/dnsmasq-edns/dnsmasq-edns.patch</item> + </additional_files_needed> + <custom_php_install_command> + dnsmasq-edns_install(); + </custom_php_install_command> +</packagegui> diff --git a/pkg_config.7.xml b/pkg_config.7.xml index 42446fb3..8d423ac9 100755 --- a/pkg_config.7.xml +++ b/pkg_config.7.xml @@ -986,5 +986,15 @@ <required_version>1.2.3</required_version> <maximum_version>1.2.3</maximum_version> </package> + <package> + <name>dnsmasq EDNS size increase</name> + <descr>Patch to increase dnsmasq EDNS size to 4096 if needed. WARNING! Cannot be uninstalled.</descr> + <category>System</category> + <config_file>http://www.pfsense.com/packages/config/dnsmasq-edns/dnsmasq-edns.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> |