I think it could be avoidable but I've given them a patch that tests old
internal way, and uses the new way otherwise
(see
https://rt.cpan.org/Ticket/Display.html?id=95901).
The new way is in place since version 0.69 b.t.w. so it could depend on
that minimum version.
But I believe it can avoid using the internal altogether as well by
simply trying to set the result code and catching the error ... (but
have not provided a patch for that yet)
op 23-05-14 23:51, Rob Brown via RT schreef:
Show quoted text> Queue: Net-DNS
> Ticket <URL:
https://rt.cpan.org/Ticket/Display.html?id=95859 >
>
> If Net::DNS::Resolver::Programmable cannot avoid using internals of
> Net::DNS, then the hope is that Programmable.pm can be modified to handle
> both the old Net::DNS internal way and the new way identically without too
> much of a performance penalty. Or simply alter it to only work with the
> newer Net::DNS 0.75 version.
>
>
>
>
> On Fri, May 23, 2014 at 3:36 PM, NLnet Labs via RT
> <bug-Net-DNS@rt.cpan.org>wrote:
>
>> Queue: Net-DNS
>> Ticket <URL:
https://rt.cpan.org/Ticket/Display.html?id=95859 >
>>
>> Hi Petr,
>>
>> Since it does not affects Mail-SPF operations but just the unit tests, and
>> is caused by use of Net::DNS internals by Net::DNS::Resolver::Programmable
>> (which is not us), I dare to say the urgency for us to put the internal
>> back is not that big... Instead I asked Net-DNS-Resolver-Programmable to
>> fix the issue on their side.
>>
>> Do you agree?
>>
>> -- Willem
>>
>> On Fri 23 Mei 2014 17:31:16, NLNETLABS wrote:
>>> I have created a ticket in the Net-DNS-Resolver-Programmable queue for
>>> this issue:
>>>
https://rt.cpan.org/Ticket/Display.html?id=95901
>>>
>>> On Thu 22 Mei 2014 07:01:18, ppisar wrote:
>>>> While debugging Mail-SPF failure
>>>> <
https://rt.cpan.org/Public/Bug/Display.html?id=95858> I come to a
>>>> regression in Net-DNS between 0.74 and 0.75.
>>>>
>>>> This code:
>>>>
>>>> #!/usr/bin/perl
>>>> use strict;
>>>> use warnings;
>>>> use Net::DNS::Resolver::Programmable;
>>>>
>>>> my $resolver = Net::DNS::Resolver::Programmable->new(
>>>> resolver_code => sub { return ('NXDOMAIN', undef) }
>>>> );
>>>> my $packet = $resolver->send('example.com', 'A', 'IN');
>>>>
>>>> use Data::Dumper;
>>>> print Dumper($packet);
>>>> print $packet->header->rcode, "\n" if defined $packet;
>>>>
>>>>
>>>> run with Net-DNS-0.74 returns defined $packet and $packet->header-
>>>>> rcode is 'NXDOMAIN', while run with Net-DNS-0.75 it returns undef
>>>> $packet.
>>>>
>>>> This was regression was introduced in SVN revision 1171.
>>
>>
>>
>>