From a2072a21d04e8513300a8e7b7cef329ac657f52d Mon Sep 17 00:00:00 2001 From: Ross Williams Date: Fri, 16 Aug 2013 15:49:52 -0400 Subject: Allowing siproxd to run even if RTP proxy is disabled --- config/siproxd.inc | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/config/siproxd.inc b/config/siproxd.inc index 13254a42..c99514fc 100644 --- a/config/siproxd.inc +++ b/config/siproxd.inc @@ -69,12 +69,6 @@ function siproxd_generate_rules($type) { return; } - /* proxy is turned off in package settings */ - if($siproxd_conf['rtpenable'] == "0") { - log_error("WARNING: siproxd RTP proxy has not been enabled. Not installing rules."); - return "\n"; - } - $ifaces = explode(",", $siproxd_conf['if_inbound']); $ifaces = array_map('convert_friendly_interface_to_real_interface_name', $ifaces); $rtplower = ($siproxd_conf['rtplower'] ? $siproxd_conf['rtplower'] : 7070); @@ -95,7 +89,9 @@ function siproxd_generate_rules($type) { if($iface <> "") { $rules .= "# allow SIP signaling and RTP traffic\n"; $rules .= "pass in on {$iface} proto udp from any to any port = {$port}\n"; - $rules .= "pass in on {$iface} proto udp from any to any port {$rtplower}:{$rtpupper}\n"; + if($siproxd_conf['rtpenable'] == "1") { + $rules .= "pass in on {$iface} proto udp from any to any port {$rtplower}:{$rtpupper}\n"; + } } } break; @@ -124,12 +120,6 @@ function sync_package_siproxd() { fwrite($fout, "# This file was automatically generated by the pfSense\n"); fwrite($fout, "# package management system.\n\n"); - /* proxy is turned off in package settings */ - if($siproxd_conf['rtpenable'] == "0") { - fclose($fout); - return; - } - if($siproxd_conf['if_inbound'] != "") { fwrite($fout, "if_inbound = " . convert_friendly_interface_to_real_interface_name($siproxd_conf['if_inbound']) . "\n"); } -- cgit v1.2.3 From 06404172446e9cbb8cd9960c03bca75761064ef3 Mon Sep 17 00:00:00 2001 From: Ross Williams Date: Sat, 17 Aug 2013 17:48:06 -0400 Subject: siproxd: separate enable/disable of RTP proxy from rest of daemon --- config/siproxd.inc | 14 +++++++++++++- config/siproxd.xml | 10 ++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/config/siproxd.inc b/config/siproxd.inc index c99514fc..1fb5f4b2 100644 --- a/config/siproxd.inc +++ b/config/siproxd.inc @@ -69,6 +69,12 @@ function siproxd_generate_rules($type) { return; } + /* proxy is turned off in package settings */ + if($siproxd_conf['sipenable'] == "0") { + log_error("WARNING: siproxd proxy has not been enabled. Not installing rules."); + return "\n"; + } + $ifaces = explode(",", $siproxd_conf['if_inbound']); $ifaces = array_map('convert_friendly_interface_to_real_interface_name', $ifaces); $rtplower = ($siproxd_conf['rtplower'] ? $siproxd_conf['rtplower'] : 7070); @@ -120,6 +126,12 @@ function sync_package_siproxd() { fwrite($fout, "# This file was automatically generated by the pfSense\n"); fwrite($fout, "# package management system.\n\n"); + /* proxy is turned off in package settings */ + if($siproxd_conf['sipenable'] == "0") { + fclose($fout); + return; + } + if($siproxd_conf['if_inbound'] != "") { fwrite($fout, "if_inbound = " . convert_friendly_interface_to_real_interface_name($siproxd_conf['if_inbound']) . "\n"); } @@ -150,7 +162,7 @@ function sync_package_siproxd() { if($siproxd_conf['rtpenable'] != "") { fwrite($fout, "rtp_proxy_enable = " . $siproxd_conf['rtpenable'] . "\n"); } else { - fwrite($fout, "rtp_proxy_enable = 1\n"); + fwrite($fout, "rtp_proxy_enable = 0\n"); } if(($siproxd_conf['rtplower'] != "") && ($siproxd_conf['rtpupper'] != "")) { diff --git a/config/siproxd.xml b/config/siproxd.xml index 1176a423..15688ab6 100644 --- a/config/siproxd.xml +++ b/config/siproxd.xml @@ -83,6 +83,12 @@ http://www.pfsense.com/packages/config/siproxd_registered_phones.php + + Enable siproxd + sipenable + Enable or disable siproxd + checkbox + Inbound interface if_inbound @@ -114,7 +120,7 @@ Enable RTP proxy rtpenable - Enable or disable the RTP proxy. (default is enabled) + Enable or disable the RTP proxy. (default is disabled) select