Sample code for 30+ languages & platforms
Perl Requires Chilkat v11.0.0+

Transition from MailMan.MxLookup to Dns.Query

Provides instructions for replacing deprecated MxLookup method calls with the Chilkat Dns class.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

$mailman = chilkat::CkMailMan->new();

#  ...
#  ...

$emailAddr = 'joe@example.com';

#  ------------------------------------------------------------------------
#  The MxLookup method is deprecated:

$domain = $mailman->mxLookup($emailAddr);
if ($mailman->get_LastMethodSuccess() == 0) {
    print $mailman->lastErrorText() . "\r\n";
    exit;
}

#  ------------------------------------------------------------------------
#  Do the equivalent using the Chilkat DNS class

$dns = chilkat::CkDns->new();

$json = chilkat::CkJsonObject->new();

#  This gets all MX domains for an email address.  (Typically one domain.)
#  The preferred domain will be at index 0 (see below).
$success = $dns->Query("MX",$emailAddr,$json);
if ($success == 0) {
    print $dns->lastErrorText() . "\r\n";
    exit;
}

$i = 0;
$count_i = $json->SizeOfArray("answer.mx");
while ($i < $count_i) {
    $json->put_I($i);
    $domain = $json->stringOf("answer.mx[i].domain");
    print $domain . "\r\n";
    $i = $i + 1;
}