diff options
author | Mario Vavti <mario@mariovavti.com> | 2018-05-25 12:34:59 +0200 |
---|---|---|
committer | Mario Vavti <mario@mariovavti.com> | 2018-05-25 12:34:59 +0200 |
commit | eebeb450c3e0eef632dc86d7656521787ec94f91 (patch) | |
tree | 5a66b0ef997ffcd27b58b059637248eb67b1512f | |
parent | 0fe449ba33fbcf96057b204dd618cc349da9c554 (diff) | |
parent | cd4454100b41f384148d0c1ebdaf6e64d629b0e1 (diff) | |
download | volse-hubzilla-eebeb450c3e0eef632dc86d7656521787ec94f91.tar.gz volse-hubzilla-eebeb450c3e0eef632dc86d7656521787ec94f91.tar.bz2 volse-hubzilla-eebeb450c3e0eef632dc86d7656521787ec94f91.zip |
Merge remote-tracking branch 'mike/master' into dev
-rw-r--r-- | include/network.php | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/include/network.php b/include/network.php index 7e8f823a3..4b2d2f93f 100644 --- a/include/network.php +++ b/include/network.php @@ -468,13 +468,21 @@ function z_dns_check($h,$check_mx = 0) { && \App::$config['system']['do_not_check_dns']) return true; + // This will match either Windows or Mac ('Darwin') + if(stripos(PHP_OS,'win') !== false) + return true; + + // BSD variants have dns_get_record() but it only works reliably without any options + if(stripos(PHP_OS,'bsd') !== false) + return((@dns_get_record($h) || filter_var($h, FILTER_VALIDATE_IP)) ? true : false); + + // Otherwise we will assume dns_get_record() works as documented + + $opts = DNS_A + DNS_CNAME + DNS_PTR; + if($check_mx) + $opts += DNS_MX; - //$opts = DNS_A + DNS_CNAME + DNS_PTR; - //if($check_mx) - // $opts += DNS_MX; - // Specific record type flags are unreliable on FreeBSD and Mac, - // so now we'll ignore these and just check for the existence of any DNS record. - return((@dns_get_record($h) || filter_var($h, FILTER_VALIDATE_IP)) ? true : false); + return((@dns_get_record($h,$opts) || filter_var($h, FILTER_VALIDATE_IP)) ? true : false); } /** |