Re: Fatal errors with Net-DNS-0.73

[email protected] (Matt Simerson) Sun, 1 Dec 2013 00:59:47 -0800
Newsgroups perl.qpsmtpd
Message-ID <[email protected]>
Having looked into it further, and having installed Net::DNS 0.73, I can =
confirm what you saw. Check out this patch:

=
https://github.com/msimerson/qpsmtpd/commit/b085388cda28012a1a63da9c3c9422=
5b399ac6a8

It specifically requests a PTR lookup, instead of using the Net::DNS =
default type. That seems to take care of it for me.

Matt


On Nov 30, 2013, at 6:31 PM, Walt Mankowski <[email protected]> wrote:

> Are you referring to commit 6a0fa13?  If so, I'm the one who first
> posted that bug, and it was for a different problem with Net-DNS
> 0.69. But Markus's patch was slightly different from mine, so it was
> possible it might have fixed my problem too. I used his patch, but
> unfortunately I still got the same error with Net-DNS 0.73.
>=20
> On Sat, Nov 30, 2013 at 10:39:36AM -0800, Matt Simerson wrote:
>>=20
>> https://github.com/smtpd/qpsmtpd/
>>=20
>> Have a look at the Changes file, and/or the closed issues.
>>=20
>> Matt
>>=20
>>=20
>> On Nov 30, 2013, at 7:43 AM, Walt Mankowski <[email protected]> =
wrote:
>>=20
>>> I installed the new version of Net::DNS last night (version 0.73) =
and
>>> that caused qpsmtpd to fail with a fatal error.  Here's what I see =
in
>>> the logs:
>>>=20
>>> 2013-11-30 10:04:04 ***  FATAL PROGRAM ERROR!!        Unknown method =
'default'
>>> 2013-11-30 10:04:04 ***  which the program has attempted to call for =
the object:
>>> 2013-11-30 10:04:04 ***
>>> 2013-11-30 10:04:04 ***  ;; EDNS version 0
>>> 2013-11-30 10:04:04 ;;        flags:  0000
>>> 2013-11-30 10:04:04 ;;        rcode:  NOERROR
>>> 2013-11-30 10:04:04 ;;        size:   512
>>> 2013-11-30 10:04:04 ;;        option:=20
>>> 2013-11-30 10:04:04=20
>>> 2013-11-30 10:04:04 ***
>>> 2013-11-30 10:04:04 ***  This object does not have a method =
'default'.  THIS IS A BUG
>>> 2013-11-30 10:04:04 ***  IN THE CALLING SOFTWARE, which incorrectly =
assumes that the
>>> 2013-11-30 10:04:04 ***  object would be of a particular type.  The =
type of an object
>>> 2013-11-30 10:04:04 ***  should be checked before calling any of its =
methods.
>>> 2013-11-30 10:04:04  at =
/home/waltman/perl5/perlbrew/perls/perl-5.18.1/lib/site_perl/5.18.1/i686-l=
inux-thread-multi/Net/DNS/Packet.pm line 183.
>>> 2013-11-30 10:04:04   =
Net::DNS::Packet::data(Net::DNS::Packet=3DHASH(0x9dd8280)) called at =
/home/waltman/perl5/perlbrew/perls/perl-5.18.1/lib/site_perl/5.18.1/i686-l=
inux-thread-multi/Net/DNS/Resolver/Base.pm line 500
>>> 2013-11-30 10:04:04   =
Net::DNS::Resolver::Base::send(Net::DNS::Resolver=3DHASH(0x928b5a0), =
"66.175.208.152") called at =
/home/waltman/perl5/perlbrew/perls/perl-5.18.1/lib/site_perl/5.18.1/i686-l=
inux-thread-multi/Net/DNS/Resolver/Base.pm line 490
>>> 2013-11-30 10:04:04   =
Net::DNS::Resolver::Base::query(Net::DNS::Resolver=3DHASH(0x928b5a0), =
"66.175.208.152") called at lib/Qpsmtpd/TcpServer.pm line 160
>>> 2013-11-30 10:04:04   Qpsmtpd::TcpServer::tcpenv("192.168.1.57", =
"66.175.208.152") called at ./qpsmtpd-forkserver line 301
>>>=20
>>> I'm still running qpsmtpd 0.84, so it could very well be something
>>> that has already been fixed. Is anyone else seeing this?
>>>=20
>>> I've downgraded to Net-DNS-0.72 for now and that seems to have fixed
>>> my problem.
>>=20