X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fclasses%2Fresolver.class.php;h=525ce1c8fe1513c3b07fbed19943864633235a72;hp=e6a63699e7ccd6e652effcecc3da2b60eb904e19;hb=e9da1508b2a3ccbf63adc999981674740a47e074;hpb=48c8296c6d5ebe8eb283dbb2f72dc275361f2421 diff --git a/inc/classes/resolver.class.php b/inc/classes/resolver.class.php index e6a63699e7..525ce1c8fe 100644 --- a/inc/classes/resolver.class.php +++ b/inc/classes/resolver.class.php @@ -10,16 +10,9 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Resolver-Klasse * * -------------------------------------------------------------------- * - * $Revision:: $ * - * $Date:: $ * - * $Tag:: 0.2.1-FINAL $ * - * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * - * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009, 2010 by Mailer Developer Team * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2015 by Mailer Developer Team * + * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -46,7 +39,7 @@ if (!defined('__SECURITY')) { class HostnameResolver { // Resolve hostname -> IP address function resolveHostname ($hostname) { - // If sql_patches is not at least 0.7.0, abort here and return the hostname (gethostbyname() may return something unwanted) + // If ext-sql_patches is not at least 0.7.0, abort here and return the hostname (gethostbyname() may return something unwanted) if (!isExtensionInstalledAndNewer('sql_patches', '0.7.0')) { // Abort here return $hostname; @@ -68,13 +61,16 @@ class HostnameResolver { $ret = '0.0.0.0'; // Search for hostname in cache - $result = SQL_QUERY_ESC("SELECT `ip` FROM `{?_MYSQL_PREFIX?}_dns_cache` WHERE `hostname`='%s' LIMIT 1", - array($hostname), __METHOD__, __LINE__); + $result = sqlQueryEscaped("SELECT `ip` FROM `{?_MYSQL_PREFIX?}_dns_cache` WHERE `hostname`='%s' LIMIT 1", + array( + $hostname + ), __METHOD__, __LINE__ + ); // Does an entry exist? - if (SQL_NUMROWS($result) == 1) { + if (sqlNumRows($result) == 1) { // Then load the hostname - list($ip) = SQL_FETCHROW($result); + list($ip) = sqlFetchRow($result); // Count cache hit incrementStatsEntry('dns_cache_hits'); @@ -85,6 +81,7 @@ class HostnameResolver { } else { // Get IP address $ip = gethostbyname($hostname); + //* DEBUG: */ logDebugMessage(__METHOD__, __LINE__, 'ip=' . $ip . ',hostname=' . $hostname . ' - RESOLVED!'); // Count lookup hit incrementStatsEntry('dns_lookup_hits'); @@ -94,11 +91,16 @@ class HostnameResolver { // Seems to be an IP! Now check deeper... if (($matches[0] == $ip) && ($matches[1] >= 0) && ($matches[1] <= 255) && ($matches[2] >= 0) && ($matches[2] <= 255) && ($matches[3] >= 0) && ($matches[3] <= 255) && ($matches[4] > 0) && ($matches[4] < 255)) { // We also cache IP addresses - SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_dns_cache` (`ip`, `hostname`, `added`) VALUES('%s', '%s', NOW())", - array($ip, $hostname), __METHOD__, __LINE__); + sqlQueryEscaped("INSERT INTO `{?_MYSQL_PREFIX?}_dns_cache` (`ip`, `hostname`, `added`) VALUES ('%s', '%s', NOW())", + array( + $ip, + $hostname + ), __METHOD__, __LINE__ + ); // Set return value to $ip //* DEBUG: */ logDebugMessage(__METHOD__, __LINE__, sprintf("IP detected, cache entry written: %s->%s", $hostname, $ip)); + $ret = $ip; } else { // Network address or broadcast address found //* DEBUG: */ logDebugMessage(__METHOD__, __LINE__, sprintf("IP %s is possibly a network or broadcast address.", $ip)); @@ -108,8 +110,12 @@ class HostnameResolver { //* DEBUG: */ logDebugMessage(__METHOD__, __LINE__, sprintf("Cannot lookup: %s", $hostname)); } else { // Put entry in DB - SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_dns_cache` (`ip`, `hostname`, `added`) VALUES('%s', '%s', NOW())", - array($ip, $hostname), __METHOD__, __LINE__); + sqlQueryEscaped("INSERT INTO `{?_MYSQL_PREFIX?}_dns_cache` (`ip`, `hostname`, `added`) VALUES ('%s', '%s', NOW())", + array( + $ip, + $hostname + ), __METHOD__, __LINE__ + ); // Set return value to $ip $ret = $ip; @@ -118,16 +124,16 @@ class HostnameResolver { } // Free result - SQL_FREERESULT($result); + sqlFreeResult($result); - // Return IP number (let's hope it! + // Return IP number (let's hope it) return $ret; } // Purge old entries function purgeEntries() { // SQL for cleaning up - SQL_QUERY("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_dns_cache` WHERE UNIX_TIMESTAMP(`added`) < (UNIX_TIMESTAMP() - {?dns_cache_timeout?})", + sqlQuery('DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_dns_cache` WHERE (UNIX_TIMESTAMP() - UNIX_TIMESTAMP(`added`) >= {?dns_cache_timeout?})', __METHOD__, __LINE__); } }