aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--config/dnsmasq-edns/dnsmasq-edns.inc18
-rw-r--r--config/dnsmasq-edns/dnsmasq-edns.patch13
-rw-r--r--config/dnsmasq-edns/dnsmasq-edns.xml65
-rwxr-xr-xpkg_config.7.xml10
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>