From 0cf647bf6f199586bad2e13973fe034bf5676eea Mon Sep 17 00:00:00 2001 From: Friendika Date: Sun, 13 Mar 2011 16:47:41 -0700 Subject: don't let somebody install with a bogus db hostname as this seems to lead to spectacular failure modes --- include/dba.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'include/dba.php') diff --git a/include/dba.php b/include/dba.php index d75ed560a..1fdddb8a2 100644 --- a/include/dba.php +++ b/include/dba.php @@ -19,6 +19,22 @@ class dba { public $connected = false; function __construct($server,$user,$pass,$db,$install = false) { + $server = trim($server); + $user = trim($user); + $pass = trim($pass); + $db = trim($db); + + if($install) { + if(strlen($server) && ($server !== 'localhost') && ($server !== '127.0.0.1')) { + if(! dns_get_record($server, DNS_A + DNS_CNAME + DNS_PTR)) { + notice( sprintf( t('Cannot locate DNS info for database server \'%s\'',$server))); + $this->connected = false; + $this->db = null; + return; + } + } + } + $this->db = @new mysqli($server,$user,$pass,$db); if(! mysqli_connect_errno()) { $this->connected = true; -- cgit v1.2.3