aboutsummaryrefslogtreecommitdiff
perl-net-dns-resolver-programmable used the undocumented and internal
method Net::DNS::rcodesbyname [0], and that interface is no longer
exposed.

This patch, copied from [1], makes the program check for the existence
of the method before trying to use it.

[0]
<https://rt.cpan.org/Public/Bug/Display.html?id=95901>

[1]
<https://rt.cpan.org/Public/Bug/Display.html?id=95901#txn-1575108>

diff --git a/lib/Net/DNS/Resolver/Programmable.pm b/lib/Net/DNS/Resolver/Programmable.pm
index 1af72ce..e09a2f0 100644
--- a/lib/Net/DNS/Resolver/Programmable.pm
+++ b/lib/Net/DNS/Resolver/Programmable.pm
@@ -203,8 +203,10 @@ sub send {
     if (defined(my $resolver_code = $self->{resolver_code})) {
         ($result, $aa, @answer_rrs) = $resolver_code->($domain, $rr_type, $class);
     }
-    
-    if (not defined($result) or defined($Net::DNS::rcodesbyname{$result})) {
+
+    if (not defined($result)
+         or defined($Net::DNS::Parameters::rcodebyname{$result})
+         or defined($Net::DNS::rcodesbyname{$result})) {
         # Valid RCODE, return a packet:
         
         $aa     = TRUE      if not defined($aa);
container: 'eval/container' correctly passes -L and -C flags.Ludovic Courtès This fixes a type error. * gnu/system/linux-container.scm (eval/container): Use 'append-map', not 'map'. * tests/containers.scm ("eval/container, non-empty load path"): New test. 2019-07-19linux-container: Add 'eval/container'.Ludovic Courtès * gnu/system/linux-container.scm (eval/container): New procedure. * tests/containers.scm ("eval/container, exit status") ("eval/container, writable user mapping"): New tests. 2019-04-02linux-container: Make the guest UID and GID a parameter.Ludovic Courtès * gnu/build/linux-container.scm (initialize-user-namespace): Add #:guest-uid and #:guest-gid parameters and honor them. (run-container): Likewise. (call-with-container): Likewise. * tests/containers.scm ("call-with-container, user namespace, guest UID/GID"): New test. 2017-05-31tests: Fix race condition in 'container-excursion*' test.Ludovic Courtès * tests/containers.scm ("container-excursion*"): Move (namespace pid) call before (kill pid SIGKILL). 2017-02-07linux-container: Add 'container-excursion*'.Ludovic Courtès * gnu/build/linux-container.scm (container-excursion*): New procedure. * tests/containers.scm ("container-excursion*") ("container-excursion*, same namespaces"): New tests. 2016-11-13tests: Don't check file-systems in container tests.Andy Patterson Hello, The containers test was hanging for me, and this patch fixed the problem. -- Andy From 945ad44acf489b7f3a398d4ab739ec2b48477502 Mon Sep 17 00:00:00 2001 From: Andy Patterson <ajpatter@uwaterloo.ca> Date: Sat, 12 Nov 2016 22:10:01 -0500 Subject: [PATCH] tests: Don't check file-systems in container tests. * tests/containers.scm ("call-with-container, mnt namespace"): Don't check file-system in 'call-with-container' call. * tests/containers.scm ("call-with-container, mnt namespace, wrong bindmount"): Likewise. Signed-off-by: Ludovic Courtès <ludo@gnu.org> 2016-11-10container: Pass a list of <file-system> objects as things to mount.Ludovic Courtès * gnu/build/linux-container.scm (mount-file-systems): 'mounts' is now a list of <file-system> objects instead of a list of lists ("specs"). Add call to 'file-system->spec' as the argument to 'mount-file-system'. (run-container, call-with-container): Adjust docstring accordingly. * gnu/system/file-systems.scm (spec->file-system): New procedure. * gnu/system/linux-container.scm (container-script)[script]: Call 'spec->file-system' inside gexp. * guix/scripts/environment.scm (launch-environment/container): Remove call to 'file-system->spec'. * tests/containers.scm ("call-with-container, mnt namespace") ("call-with-container, mnt namespace, wrong bind mount"): Pass a list of <file-system> objects. 2016-10-19container: Allow 'container-excursion' to the same namespaces.Ludovic Courtès Before that, 'container-excursion' would call 'setns' even when the target namespace is the one the caller is already in, which would fail. * gnu/build/linux-container.scm (container-excursion): Introduce 'source' and 'target'. Compare the result of 'readlink' on these instead of comparing file descriptors to decide whether to call 'setns'. * tests/containers.scm ("container-excursion, same namespace"): New test.