Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 801688 - net-dns/pdnsd-1.2.9a-r2 - /.../if.h: error: redefinition of struct ifmap
Summary: net-dns/pdnsd-1.2.9a-r2 - /.../if.h: error: redefinition of struct ifmap
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Lars Wendler (Polynomial-C) (RETIRED)
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks: linux-headers-5.13
  Show dependency tree
 
Reported: 2021-07-12 08:01 UTC by Toralf Förster
Modified: 2021-12-16 10:03 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,14.83 KB, text/plain)
2021-07-12 08:01 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,33.70 KB, text/plain)
2021-07-12 08:01 UTC, Toralf Förster
Details
environment (environment,61.62 KB, text/plain)
2021-07-12 08:01 UTC, Toralf Förster
Details
etc.portage.tar.bz2 (etc.portage.tar.bz2,14.45 KB, application/x-bzip)
2021-07-12 08:01 UTC, Toralf Förster
Details
logs.tar.bz2 (logs.tar.bz2,8.79 KB, application/x-bzip)
2021-07-12 08:01 UTC, Toralf Förster
Details
net-dns:pdnsd-1.2.9a-r2:20210712-053223.log (net-dns:pdnsd-1.2.9a-r2:20210712-053223.log,19.08 KB, text/plain)
2021-07-12 08:01 UTC, Toralf Förster
Details
temp.tar.bz2 (temp.tar.bz2,18.92 KB, application/x-bzip)
2021-07-12 08:01 UTC, Toralf Förster
Details
fix cmake issue with kernels >=5.14 (5-14_fix_patch.txt,1.05 KB, patch)
2021-12-10 09:39 UTC, Alexandros C. Couloumbis
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2021-07-12 08:01:08 UTC
                 from error.h:35,
                 from icmp.c:63:
/usr/include/net/if.h:111:8: error: redefinition of ‘struct ifmap’
  111 | struct ifmap
      |        ^~~~~
In file included from /usr/include/linux/icmp.h:24,
                 from icmp.c:44:

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1_systemd-j3_abi32+64-20210711-194742

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-11.1.0 *
Python 3.9.6
Available Ruby profiles:
  [1]   ruby26 (with Rubygems)
  [2]   ruby30 (with Rubygems) *
The following VMs are available for generation-2:
*)	AdoptOpenJDK 8.292_p10 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8  system-vm

The Glorious Glasgow Haskell Compilation System, version 8.10.4
  [1]   php8.0 *
  HEAD of ::gentoo
commit f81671764b344476ef4ad9e893e4612bad4daa4d
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Mon Jul 12 04:36:40 2021 +0000

    2021-07-12 04:36:38 UTC

emerge -qpvO net-dns/pdnsd
[ebuild  N    ] net-dns/pdnsd-1.2.9a-r2  USE="ipv6 urandom -debug -test"
Comment 1 Toralf Förster gentoo-dev 2021-07-12 08:01:09 UTC
Created attachment 723439 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2021-07-12 08:01:10 UTC
Created attachment 723442 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2021-07-12 08:01:12 UTC
Created attachment 723445 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2021-07-12 08:01:13 UTC
Created attachment 723448 [details]
etc.portage.tar.bz2
Comment 5 Toralf Förster gentoo-dev 2021-07-12 08:01:14 UTC
Created attachment 723451 [details]
logs.tar.bz2
Comment 6 Toralf Förster gentoo-dev 2021-07-12 08:01:15 UTC
Created attachment 723454 [details]
net-dns:pdnsd-1.2.9a-r2:20210712-053223.log
Comment 7 Toralf Förster gentoo-dev 2021-07-12 08:01:16 UTC
Created attachment 723457 [details]
temp.tar.bz2
Comment 8 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2021-09-06 10:36:55 UTC
Trying to get in touch with upstream...
Comment 9 Larry the Git Cow gentoo-dev 2021-12-07 14:33:20 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b4ee34b6dca38296dc45146bfc5cec27d6dfc89

commit 9b4ee34b6dca38296dc45146bfc5cec27d6dfc89
Author:     Lars Wendler <polynomial-c@gentoo.org>
AuthorDate: 2021-12-07 14:29:13 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2021-12-07 14:33:15 +0000

    profiles/package.mask: Masked net-dns/pdnsd for removal
    
    Bug: https://bugs.gentoo.org/801688
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>

 profiles/package.mask | 6 ++++++
 1 file changed, 6 insertions(+)
Comment 10 Andreas Proteus 2021-12-08 14:19:20 UTC
It compiles fine with the stable linux-headers.
Why not add a DEPEND = ">linux-headers-5.11". or whatever, instead of removing?
Comment 11 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2021-12-08 14:27:13 UTC
(In reply to Andreas Proteus from comment #10)
> It compiles fine with the stable linux-headers.
> Why not add a DEPEND = ">linux-headers-5.11". or whatever, instead of
> removing?

Because I will not force unstable users to downgrade linux-headers. Furthermore it is just a matter of time until new linux-headers get stabilized that break pdnsd. And once new linux-headers package is stable, old versions are being removed.

If you desperately need this package, please consider adding it to a local or private overlay.

Oh, and you need to add the dependency line like this:


    <sys-kernel/linux-headers-5.13
Comment 12 Alexandros C. Couloumbis 2021-12-10 09:39:37 UTC
Created attachment 757944 [details, diff]
fix cmake issue with kernels >=5.14

the following patch resolves the issue with kernels >=5.14

https://github.com/msylgj/pdnsd/commit/59859acf9083010639eb9bc0bf8cb5d03f03935f

tested on 5.15.6-gentoo

you may place it over: /etc/portage/patches/net-dns/pdnsd/5-14_fix.patch

unfortunately, dnsmasq does not provide the full functionality of pdnsd
Comment 13 Alexandros C. Couloumbis 2021-12-10 09:48:47 UTC
(In reply to Alexandros C. Couloumbis from comment #12)
>  
> unfortunately, dnsmasq does not provide the full functionality of pdnsd

one of the important features dnsmasq is missing is the following:

https://wiki.archlinux.org/title/pdnsd

"Compared to BIND or dnsmasq it can remember its cache after a reboot; "p" stands for persistent."
Comment 14 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-12-11 06:55:26 UTC
(In reply to Alexandros C. Couloumbis from comment #13)
> (In reply to Alexandros C. Couloumbis from comment #12)
> >  
> > unfortunately, dnsmasq does not provide the full functionality of pdnsd
> 
> one of the important features dnsmasq is missing is the following:
> 
> https://wiki.archlinux.org/title/pdnsd
> 
> "Compared to BIND or dnsmasq it can remember its cache after a reboot; "p"
> stands for persistent."

Can you explain why this is so important? I genuinely don't get it. Surely the main use of this is on machines with uptime of at least a day, in which case a fair amount of TTLs will expire (invalidating the entries).

The cache isn't going to be valid for very long, so it seems unlikely it actually needs to be persistent? This feels like exactly why nobody else has implemented this in their software?
Comment 15 Alexandros C. Couloumbis 2021-12-11 09:41:43 UTC
(In reply to Sam James from comment #14)
> (In reply to Alexandros C. Couloumbis from comment #13)
> > (In reply to Alexandros C. Couloumbis from comment #12)
> > >  
> > > unfortunately, dnsmasq does not provide the full functionality of pdnsd
> > 
> > one of the important features dnsmasq is missing is the following:
> > 
> > https://wiki.archlinux.org/title/pdnsd
> > 
> > "Compared to BIND or dnsmasq it can remember its cache after a reboot; "p"
> > stands for persistent."
> 
> Can you explain why this is so important? I genuinely don't get it. Surely
> the main use of this is on machines with uptime of at least a day, in which
> case a fair amount of TTLs will expire (invalidating the entries).
> 
> The cache isn't going to be valid for very long, so it seems unlikely it
> actually needs to be persistent? This feels like exactly why nobody else has
> implemented this in their software?

sure

we run an open & free wireless network (AWMN since 2002) with around 400-600 nodes that has a single root name server (by design). my node daily scans the network for name servers & uses pdnsd pointing at each one of them with an infinite expire cache time in case some node goes off-line. pdnsd is used as a last resort. 

that been said, there is always this: https://dev.to/pichardoj/if-it-works--dont-thouch-it-4ij7
Comment 16 Larry the Git Cow gentoo-dev 2021-12-16 10:03:10 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7ce35657f269c3b7016e8940ad36e59cf06e12a4

commit 7ce35657f269c3b7016e8940ad36e59cf06e12a4
Author:     Lars Wendler <polynomial-c@gentoo.org>
AuthorDate: 2021-12-16 09:59:03 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2021-12-16 10:03:00 +0000

    net-dns/pdnsd: Fixed build with >=sys-kernel/linux-headers-5.13
    
    update EAPI 7 -> 8
    
    Thanks-to: Alexandros C. Couloumbis <alex@ozo.com>
    Closes: https://bugs.gentoo.org/801688
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>

 .../files/pdnsd-1.2.9a-linux-5.13_build_fix.patch  | 39 ++++++++++++++++++++++
 net-dns/pdnsd/pdnsd-1.2.9a-r2.ebuild               |  6 +++-
 2 files changed, 44 insertions(+), 1 deletion(-)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a27b0b43f00bfe239f413edaf2da398ce1bf06ec

commit a27b0b43f00bfe239f413edaf2da398ce1bf06ec
Author:     Lars Wendler <polynomial-c@gentoo.org>
AuthorDate: 2021-12-16 10:01:20 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2021-12-16 10:03:00 +0000

    profiles/package.mask: Cancel last-rite of net-dns/pdnsd for now
    
    Bug: https://bugs.gentoo.org/801688
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>

 profiles/package.mask | 6 ------
 1 file changed, 6 deletions(-)