From c2f53e76fde1ab534e67a9227d4f0adcde05dfa4 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Wed, 28 Oct 2009 14:05:37 -0400
Subject: [PATCH] Fix in maildrop plugin.

---
 server/plugins-available/firewall_plugin.inc.php |   27 +++++++++++++++++++++++----
 1 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/server/plugins-available/firewall_plugin.inc.php b/server/plugins-available/firewall_plugin.inc.php
index 697b937..9039946 100644
--- a/server/plugins-available/firewall_plugin.inc.php
+++ b/server/plugins-available/firewall_plugin.inc.php
@@ -33,6 +33,15 @@
 	var $plugin_name = 'firewall_plugin';
 	var $class_name  = 'firewall_plugin';
 	
+	//* This function is called during ispconfig installation to determine
+	//  if a symlink shall be created for this plugin.
+	function onInstall() {
+		global $conf;
+		
+		return true;
+		
+	}
+	
 		
 	/*
 	 	This function is called when the plugin is loaded
@@ -70,8 +79,13 @@
 		$ports = explode(',',$data["new"]["tcp_port"]);
 		if(is_array($ports)) {
 			foreach($ports as $p) {
-				$p_int = intval($p);
-				if($p_int > 0) $tcp_ports .= $p_int . ' ';
+				if(strstr($p,':')) {
+					$p_parts = explode(':',$p);
+					$p_clean = intval($p_parts[0]).':'.intval($p_parts[1]);
+				} else {
+					$p_clean = intval($p);
+				}
+				$tcp_ports .= $p_clean . ' ';
 			}
 		}
 		$tcp_ports = trim($tcp_ports);
@@ -79,8 +93,13 @@
 		$ports = explode(',',$data["new"]["udp_port"]);
 		if(is_array($ports)) {
 			foreach($ports as $p) {
-				$p_int = intval($p);
-				if($p_int > 0) $udp_ports .= $p_int . ' ';
+				if(strstr($p,':')) {
+					$p_parts = explode(':',$p);
+					$p_clean = intval($p_parts[0]).':'.intval($p_parts[1]);
+				} else {
+					$p_clean = intval($p);
+				}
+				$udp_ports .= $p_clean . ' ';
 			}
 		}
 		$udp_ports = trim($udp_ports);

--
Gitblit v1.9.1