"Only socket address backends are permitted when compiled without libudns" but udns is installed
I'm having trouble getting sniproxy to use my config file which includes wildcards and needs to be able to resolve domains.
tail /var/log/messages
Aug 9 18:04:28 lancache sniproxy[23323]: Only socket address backends are permitted when compiled without libudns Aug 9 18:04:28 lancache sniproxy[23323]: error parsing /etc/sniproxy.conf at 239 near: Aug 9 18:04:28 lancache sniproxy[23323]: 229#011le Blah { Aug 9 18:04:28 lancache sniproxy[23323]: 240#011 .* *:443 Aug 9 18:04:28 lancache sniproxy[23323]: 242#011} Aug 9 18:04:28 lancache sniproxy[23323]: 243 Aug 9 18:04:28 lancache sniproxy[23323]: 243#011(null)
udns IS installed:
yum install udns-devel
Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile
- base: mirror.es.its.nyu.edu
- epel: ewr.edge.kernel.org
- extras: ewr.edge.kernel.org
- updates: ftp.osuosl.org Package udns-devel-0.4-3.el7.x86_64 already installed and latest version Nothing to do
uname -a
Linux hostname-omitted 3.10.0-862.9.1.el7.x86_64 #1 SMP Mon Jul 16 16:29:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
I'm trying to compile on centos 7, but it appears to believe that the libraries aren't available. Any help would be appreciated!
It sounds like libudns wasn't detected when ./configure ran. I suggest reveiwing the output of the ./configure script. If you continue to have problems I would ensure libudns is regisistered with pkg-config
Looks like it's not registered with pkg-config. Thanks I think you've pointed me in the right direction but I've never created a .pc file before. So, this will be interesting! I definitely have the library in /usr/lib64 . Any pointers? I'm about to hack my way through it by coping another .pc file.
Follow-up - I created my own .pc file and the configure script and pkg-config see udns if I'm interpreting the output correctly: checking for LIBUDNS... no checking for libudns... yes
PC file contents:
more /usr/lib64/pkgconfig/udns.pc prefix=/usr exec_prefix=/usr libdir=/usr/lib64 includedir=/usr/include
Name: udns Version: 0.4 Description: DNS resolver library for both synchronous and asynchronous DNS queries URL: http://www.corpit.ru/mjt/udns.html Libs: -L${libdir} -ludns Cflags: -I${includedir}
However, it still didn't compile from source. If I followed your RPM instructions from here on, though, it works! Not sure if I can explain why the rpm process detects it and the make process doesn't.