summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRenato Botelho <garga@FreeBSD.org>2014-05-09 14:57:17 -0300
committerRenato Botelho <garga@FreeBSD.org>2014-05-09 14:57:17 -0300
commit29282ddc0989efe336b00603b95f0504b14245a8 (patch)
tree0eca3bee994413a3586db2085c853d4f616bb856
parent91946ea44db0c951471342beef8c8b0a330b4ae1 (diff)
parentd973a602abeab78803fce467198c571ba25ec0cb (diff)
downloadpfsense-29282ddc0989efe336b00603b95f0504b14245a8.zip
pfsense-29282ddc0989efe336b00603b95f0504b14245a8.tar.gz
Merge pull request #1131 from razzfazz/make_upnp_listen_on_if_optional
-rw-r--r--usr/local/pkg/miniupnpd.inc6
-rw-r--r--usr/local/pkg/miniupnpd.xml7
2 files changed, 11 insertions, 2 deletions
diff --git a/usr/local/pkg/miniupnpd.inc b/usr/local/pkg/miniupnpd.inc
index 7f37d72..c0760d6 100644
--- a/usr/local/pkg/miniupnpd.inc
+++ b/usr/local/pkg/miniupnpd.inc
@@ -156,9 +156,13 @@
/* above function returns iface if fail */
if($if!=$iface) {
$addr = find_interface_ip($if);
+ $bits = find_interface_subnet($if);
/* check that the interface has an ip address before adding parameters */
if (is_ipaddr($addr)) {
- $config_text .= "listening_ip={$if}\n";
+ if ($upnp_config['listen_on_iface'])
+ $config_text .= "listening_ip={$if}\n";
+ else
+ $config_text .= "listening_ip={$addr}/{$bits}\n";
if(!$ifaces_active) {
$webgui_ip = $addr;
$ifaces_active = $iface;
diff --git a/usr/local/pkg/miniupnpd.xml b/usr/local/pkg/miniupnpd.xml
index 6fc054f..65fd76f 100644
--- a/usr/local/pkg/miniupnpd.xml
+++ b/usr/local/pkg/miniupnpd.xml
@@ -35,7 +35,7 @@
<field>
<name>UPnP &amp; NAT-PMP Settings</name>
<type>listtopic</type>
- <enablefields>enable_upnp,enable_natpmp,iface_array,overridewanip,upnpqueue,logpackets,sysuptime,permdefault,permuser1,permuser2,permuser3,permuser4</enablefields>
+ <enablefields>enable_upnp,enable_natpmp,listen_on_iface,iface_array,overridewanip,upnpqueue,logpackets,sysuptime,permdefault,permuser1,permuser2,permuser3,permuser4</enablefields>
</field>
<field>
<fielddescr>Enable UPnP &amp; NAT-PMP</fielddescr>
@@ -81,6 +81,11 @@
<required/>
</field>
<field>
+ <fielddescr>Listen on interface instead of interface's IPv4 address</fielddescr>
+ <fieldname>listen_on_iface</fieldname>
+ <type>checkbox</type>
+ </field>
+ <field>
<fielddescr>Maximum Download Speed (Kbits/second)</fielddescr>
<fieldname>download</fieldname>
<type>input</type>
OpenPOWER on IntegriCloud