From 6b15d5f4e18578acb46be3babc46b7a9d3a9299c Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Mon, 14 Dec 2015 10:14:45 -0500
Subject: [PATCH] - added {DOCROOT_CLIENT} to directive placeholders (non-symlink docroot) - made placeholders visible for apache, too - added event raise at formdef loading (on_before_formdef and on_after_formdef) - added possibility to put plugin files into module/lib/plugin.d/ directory
---
interface/lib/classes/functions.inc.php | 51 ++++++++++++++-------------------------------------
1 files changed, 14 insertions(+), 37 deletions(-)
diff --git a/interface/lib/classes/functions.inc.php b/interface/lib/classes/functions.inc.php
index 2be5fb7..8ec4496 100644
--- a/interface/lib/classes/functions.inc.php
+++ b/interface/lib/classes/functions.inc.php
@@ -186,7 +186,8 @@
global $app;
if($type == 'IPv4'){
- $regex = "/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/";
+// $regex = "/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/";
+ $regex = "/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/";
} else {
// IPv6
$regex = "/^(\:\:([a-f0-9]{1,4}\:){0,6}?[a-f0-9]{0,4}|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){0,6}?\:\:|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){1,6}?\:\:([a-f0-9]{1,4}\:){1,6}?[a-f0-9]{1,4})(\/\d{1,3})?$/i";
@@ -202,7 +203,7 @@
}
$ips = array();
- $results = $app->db->queryAllRecords("SELECT ip_address AS ip, server_id FROM server_ip WHERE ip_type = '".$app->db->quote($type)."'");
+ $results = $app->db->queryAllRecords("SELECT ip_address AS ip, server_id FROM server_ip WHERE ip_type = ?", $type);
if(!empty($results) && is_array($results)){
foreach($results as $result){
if(preg_match($regex, $result['ip'])){
@@ -229,39 +230,6 @@
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){
- $tmp_ips = explode(',', $result['xfer']);
- foreach($tmp_ips as $tmp_ip){
- $tmp_ip = trim($tmp_ip);
- if(preg_match($regex, $tmp_ip)) $ips[] = $tmp_ip;
- }
- }
- }
- $results = $app->db->queryAllRecords("SELECT xfer FROM dns_soa WHERE xfer != ''");
- if(!empty($results) && is_array($results)){
- foreach($results as $result){
- $tmp_ips = explode(',', $result['xfer']);
- foreach($tmp_ips as $tmp_ip){
- $tmp_ip = trim($tmp_ip);
- if(preg_match($regex, $tmp_ip)) $ips[] = $tmp_ip;
- }
- }
- }
- $results = $app->db->queryAllRecords("SELECT also_notify FROM dns_soa WHERE also_notify != ''");
- if(!empty($results) && is_array($results)){
- foreach($results as $result){
- $tmp_ips = explode(',', $result['also_notify']);
- foreach($tmp_ips as $tmp_ip){
- $tmp_ip = trim($tmp_ip);
- if(preg_match($regex, $tmp_ip)) $ips[] = $tmp_ip;
- }
- }
- }
- */
$results = $app->db->queryAllRecords("SELECT remote_ips FROM web_database WHERE remote_ips != ''");
if(!empty($results) && is_array($results)){
@@ -334,7 +302,7 @@
if($encode == true) {
if(function_exists('idn_to_ascii')) {
- $domain = idn_to_ascii($domain);
+ $domain = idn_to_ascii($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
} elseif(file_exists(ISPC_CLASS_PATH.'/idn/idna_convert.class.php')) {
/* use idna class:
* @author Matthias Sommerfeld <mso@phlylabs.de>
@@ -351,7 +319,7 @@
}
} else {
if(function_exists('idn_to_utf8')) {
- $domain = idn_to_utf8($domain);
+ $domain = idn_to_utf8($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
} elseif(file_exists(ISPC_CLASS_PATH.'/idn/idna_convert.class.php')) {
/* use idna class:
* @author Matthias Sommerfeld <mso@phlylabs.de>
@@ -413,6 +381,15 @@
return true;
}
+
+ public function getimagesizefromstring($string){
+ if (!function_exists('getimagesizefromstring')) {
+ $uri = 'data://application/octet-stream;base64,' . base64_encode($string);
+ return getimagesize($uri);
+ } else {
+ return getimagesizefromstring($string);
+ }
+ }
}
--
Gitblit v1.9.1