From 2c49c56ebcb55e4dec88f22bf2977d0e6db9bcc7 Mon Sep 17 00:00:00 2001
From: Till Brehm <tbrehm@ispconfig.org>
Date: Fri, 01 Aug 2014 09:58:04 -0400
Subject: [PATCH] Fixed issue in password strength check.

---
 interface/lib/classes/functions.inc.php |   31 ++++++++++++++++++++++++++++++-
 1 files changed, 30 insertions(+), 1 deletions(-)

diff --git a/interface/lib/classes/functions.inc.php b/interface/lib/classes/functions.inc.php
index d2ac583..e37edda 100644
--- a/interface/lib/classes/functions.inc.php
+++ b/interface/lib/classes/functions.inc.php
@@ -275,7 +275,8 @@
 				if(preg_match($regex, $result['ip'])) $ips[] = $result['ip'];
 			}
 		}
-
+		
+		/*
 		$results = $app->db->queryAllRecords("SELECT xfer FROM dns_slave WHERE xfer != ''");
 		if(!empty($results) && is_array($results)){
 			foreach($results as $result){
@@ -306,6 +307,8 @@
 				}
 			}
 		}
+		*/
+		
 		$results = $app->db->queryAllRecords("SELECT remote_ips FROM web_database WHERE remote_ips != ''");
 		if(!empty($results) && is_array($results)){
 			foreach($results as $result){
@@ -421,6 +424,32 @@
 		return implode("\n", $domains);
 	}
 
+	public function is_allowed_user($username, $restrict_names = false) {
+		global $app;
+		
+		$name_blacklist = array('root','ispconfig','vmail','getmail');
+		if(in_array($username,$name_blacklist)) return false;
+		
+		if(preg_match('/^[a-zA-Z0-9\.\-]{1,32}$/', $username) == false) return false;
+		
+		if($restrict_names == true && preg_match('/^web\d+$/', $username) == false) return false;
+		
+		return true;
+	}
+	
+	public function is_allowed_group($groupname, $restrict_names = false) {
+		global $app;
+		
+		$name_blacklist = array('root','ispconfig','vmail','getmail');
+		if(in_array($groupname,$name_blacklist)) return false;
+		
+		if(preg_match('/^[a-zA-Z0-9\.\-]{1,32}$/', $groupname) == false) return false;
+		
+		if($restrict_names == true && preg_match('/^client\d+$/', $groupname) == false) return false;
+		
+		return true;
+	}
+
 }
 
 ?>

--
Gitblit v1.9.1