[Bug 259725] land/php74: dns_get_record fails when requested record doesn't exist

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 09 Nov 2021 02:36:18 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259725

            Bug ID: 259725
           Summary: land/php74: dns_get_record fails when requested record
                    doesn't exist
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: fsbruva@yahoo.com

This is a resurrection of an old upstream bug report that was never resolved:
https://bugs.php.net/bug.php?id=70027

dns_get_record() allows retrieving one or multiple DNS records of one or
multiple types.

However, when multiple DNS records are requested on FreeBSD, the entire
function call fails if one of the requested records doesn't exist for the
domain. The correct behavior (on other OS's) is to return those record types
that do exist. 

Test command:
---------------
php -r "var_dump(dns_get_record('www.google.com', DNS_A + DNS_CNAME));"

Expected result:
----------------
array(1) {
  [0]=>
  array(5) {
    ["host"]=>
    string(14) "www.google.com"
    ["class"]=>
    string(2) "IN"
    ["ttl"]=>
    int(5)
    ["type"]=>
    string(1) "A"
    ["ip"]=>
    string(14) "142.250.73.196"
  }
}

Actual result:
--------------
Warning: dns_get_record(): DNS Query failed in Command line code on line 1
bool(false)

Will submit tested patch shortly - submitting this bug report now so PR# can be
referenced in commit.

-- 
You are receiving this mail because:
You are the assignee for the bug.