$resolver = new Net_DNS_Resolver();
$resolver->retry = isset($GLOBALS['conf']['dns']['retry']) ? $GLOBALS['conf']['dns']['retry'] : 1;
$resolver->retrans = isset($GLOBALS['conf']['dns']['retrans']) ? $GLOBALS['conf']['dns']['retrans'] : 1;
- $response = $resolver->query($host, 'PTR');
- $ptrdname = $response ? $response->answer[0]->ptrdname : $host;
+ $ptrdname = $host;
+ if ($response = $resolver->query($host, 'PTR')) {
+ foreach ($response->answer as $val) {
+ if (isset($val->ptrdname)) {
+ $ptrdname = $val->ptrdname;
+ break;
+ }
+ }
+ }
} else {
$ptrdname = @gethostbyaddr($host);
}
$remote_path = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
$remote_addr = $remote_path[0];
if ($have_netdns) {
- $response = $resolver->query($remote_addr, 'PTR');
- $remote = $response ? $response->answer[0]->ptrdname : $remote_addr;
+ $remote = $remote_addr;
+ if ($response = $resolver->query($remote_addr, 'PTR')) {
+ foreach ($response->answer as $val) {
+ if (isset($val->ptrdname)) {
+ $remote = $val->ptrdname;
+ break;
+ }
+ }
+ }
} else {
$remote = gethostbyaddr($remote_addr);
}
$remote_addr = $_SERVER['REMOTE_ADDR'];
if (empty($_SERVER['REMOTE_HOST'])) {
if ($have_netdns) {
- $response = $resolver->query($remote_addr, 'PTR');
- $remote = $response ? $response->answer[0]->ptrdname : $remote_addr;
+ $remote = $remote_addr;
+ if ($response = $resolver->query($remote_addr, 'PTR')) {
+ foreach ($response->answer as $val) {
+ if (isset($val->ptrdname)) {
+ $remote = $val->ptrdname;
+ break;
+ }
+ }
+ }
} else {
$remote = gethostbyaddr($remote_addr);
}
$resolver = new Net_DNS_Resolver();
$resolver->retry = isset($GLOBALS['conf']['dns']['retry']) ? $GLOBALS['conf']['dns']['retry'] : 1;
$resolver->retrans = isset($GLOBALS['conf']['dns']['retrans']) ? $GLOBALS['conf']['dns']['retrans'] : 1;
- $response = $resolver->query($host, 'PTR');
- $checkHost = $response ? $response->answer[0]->ptrdname : $host;
+ if ($response = $resolver->query($host, 'PTR')) {
+ foreach ($response->answer as $val) {
+ if (isset($val->ptrdname)) {
+ $checkHost = $val->ptrdname;
+ break;
+ }
+ }
+ }
} else {
$checkHost = @gethostbyaddr($host);
}