Package: b4 Version: 0.6.2-1 Severity: normal Hello,
for me the following b4 command reproducibly fails: $ b4 am yo82s5mc6ha8m...@google.com Looking up https://lore.kernel.org/r/YO82s5MC6HA8mL2Q%40google.com Grabbing thread from lore.kernel.org/linux-input Analyzing 5 messages in the thread --- Thread incomplete, attempting to backfill Grabbing thread from lore.kernel.org/alsa-devel Grabbing thread from lore.kernel.org/dmaengine Grabbing thread from lore.kernel.org/kvm Loaded 1 messages from https://lore.kernel.org/kvm/ Grabbing thread from lore.kernel.org/linux-acpi Grabbing thread from lore.kernel.org/linux-arm-kernel Server returned an error: 404 Grabbing thread from lore.kernel.org/linux-arm-msm Grabbing thread from lore.kernel.org/linux-cxl Grabbing thread from lore.kernel.org/linux-fpga Grabbing thread from lore.kernel.org/linux-hyperv Grabbing thread from lore.kernel.org/linux-i2c Grabbing thread from lore.kernel.org/linux-i3c Server returned an error: 404 Grabbing thread from lore.kernel.org/lkml Loaded 4 messages from https://lore.kernel.org/lkml/ Successfully backfilled missing patches --- Writing ./v4_20210713_u_kleine_koenig_bus_make_remove_callback_return_void.mbx ✔ [PATCH v4 1/5] PCI: endpoint: Make struct pci_epf_driver::remove return void ✔ [PATCH v4 2/5] s390/cio: Make struct css_driver::remove return void ✔ [PATCH v4 3/5] s390/ccwgroup: Drop if with an always false condition ✔ [PATCH v4 4/5] s390/scm: Make struct scm_driver::remove return void ✔ [PATCH v4 5/5] bus: Make remove callback return void + Acked-by: Dmitry Torokhov <dmitry.torok...@gmail.com> (✓ DKIM/gmail.com) + Acked-by: Geert Uytterhoeven <ge...@linux-m68k.org> + Acked-by: Sudeep Holla <sudeep.ho...@arm.com> Traceback (most recent call last): File "/usr/bin/b4", line 33, in <module> sys.exit(load_entry_point('b4==0.6.2', 'console_scripts', 'b4')()) File "/usr/lib/python3/dist-packages/b4/command.py", line 213, in cmd cmdargs.func(cmdargs) File "/usr/lib/python3/dist-packages/b4/command.py", line 40, in cmd_am b4.mbox.main(cmdargs) File "/usr/lib/python3/dist-packages/b4/mbox.py", line 538, in main mbox_to_am(threadfile, cmdargs) File "/usr/lib/python3/dist-packages/b4/mbox.py", line 114, in mbox_to_am am_mbx = lser.save_am_mbox(mbx, noaddtrailers=cmdargs.noaddtrailers, File "/usr/lib/python3/dist-packages/b4/__init__.py", line 565, in save_am_mbox msg = lmsg.get_am_message(add_trailers=add_trailers, trailer_order=trailer_order, copyccs=copyccs) File "/usr/lib/python3/dist-packages/b4/__init__.py", line 1400, in get_am_message self.fix_trailers(trailer_order=trailer_order, copyccs=copyccs) File "/usr/lib/python3/dist-packages/b4/__init__.py", line 1361, in fix_trailers attsig = LoreAttestationSignatureDKIM(fmsg.msg) # noqa File "/usr/lib/python3/dist-packages/b4/__init__.py", line 1707, in __init__ res = dkim.verify(self.msg.as_bytes(), dnsfunc=dkim_get_txt) File "/usr/lib/python3/dist-packages/dkim/__init__.py", line 1352, in verify return d.verify(dnsfunc=dnsfunc) File "/usr/lib/python3/dist-packages/dkim/__init__.py", line 940, in verify return self.verify_sig(sig, include_headers, sigheaders[idx], dnsfunc) File "/usr/lib/python3/dist-packages/dkim/__init__.py", line 773, in verify_sig self.pk, self.keysize, self.ktag, self.seqtlsrpt = load_pk_from_dns(name, File "/usr/lib/python3/dist-packages/dkim/__init__.py", line 481, in load_pk_from_dns s = dnsfunc(name, timeout=timeout) File "/usr/lib/python3/dist-packages/b4/__init__.py", line 2452, in dkim_get_txt a = _resolver.resolve(lookup, dns.rdatatype.TXT, raise_on_no_answer=False, lifetime=timeout, search=True) File "/usr/lib/python3/dist-packages/dns/resolver.py", line 1043, in resolve timeout = self._compute_timeout(start, lifetime) File "/usr/lib/python3/dist-packages/dns/resolver.py", line 950, in _compute_timeout raise Timeout(timeout=duration) dns.exception.Timeout: The DNS operation timed out after 5.001782417297363 seconds I wiresharked the DNS traffic and found out that my provider's DNS server doesn't reply "big" queries without edns: $ dig +noedns fm3._domainkey.messagingengine.com TXT ;; Truncated, retrying in TCP mode. ;; communications error to 192.168.80.1#53: end of file ; <<>> DiG 9.16.15-Debian <<>> +noedns fm3._domainkey.messagingengine.com TXT ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 21882 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;fm3._domainkey.messagingengine.com. IN TXT ;; Query time: 7 msec ;; SERVER: fdb0:5279:7365:8000::1#53(fdb0:5279:7365:8000::1) ;; WHEN: Sun Jul 18 22:17:15 CEST 2021 ;; MSG SIZE rcvd: 52 If I query one of the public DNS servers (like 1.1.1.1 or 8.8.8.8), or if I use an edns query (i.e. drop +noedns) or if I query one of the ipv6 servers of my provider I get a proper answer. If I understood correctly using edns is the only way to properly get replies bigger than 512 bytes, so it doesn't seem unreasonable to use edns for TXT records?! Best regards Uwe -- System Information: Debian Release: 11.0 APT prefers testing-debug APT policy: (700, 'testing-debug'), (700, 'stable-updates'), (700, 'testing'), (700, 'stable'), (600, 'unstable'), (500, 'unstable-debug'), (500, 'stable-debug'), (500, 'oldstable'), (499, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386, armhf, arm64 Kernel: Linux 5.10.0-6-amd64 (SMP w/4 CPU threads) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages b4 depends on: ii python3 3.9.2-3 ii python3-dkim 1.0.5-1 ii python3-dnspython 2.0.0-1 ii python3-requests 2.25.1+dfsg-2 b4 recommends no packages. b4 suggests no packages. -- no debconf information