On 8/18/2007 at 7:17 AM, "bert hubert" <[EMAIL PROTECTED]> wrote:
> On Fri, Aug 17, 2007 at 12:42:56PM -0400, J Knight wrote: >> After stumbling into the HACKING section of the Wiki, I find: >> http://svn.powerdns.com/snapshots/ - but there's no 3.1.5 snapshot, >> there's pre-relesase 3.1.4 snapshots only. >> Is there another HTTP/FTP-accessible location? > I've uploaded a 3.1.5 snapshot here: > http://svn.powerdns.com/snapshots/pdns-recursor-3.1.5-snapshot.tar.bz2 >> http://downloads.powerdns.com/releases/rpm/ have not seen an update since >> 12-Nov-2006 (9 months ago!). > And for good reason - we've only found 1 important bug in 3.1.4, and there > are no (urgent) feature requests. There will be a 3.1.5 of course, but so > far there have not been pressing reasons for it. > Please let us know how the 3.1.5 snapshot works for you! Thank you! Yes, I can confirm that all (3) TXT records are returned. Unfortunately, something rather significant broke: The pdns_recursor.controlsocket gets unlink'd the moment pdns_recursor daemonizes - and the fork'd child somehow never re-creates it - e.g.: no control socket. If I interpret the strace right, under the official pdns-recursor-3.1.4-1.i386.rpm recursor, the controlsocket never gets unlinked before the parent process exits! Environment: Linux RedHat ES3 Boost: boost_1_34_1 (not compiled) builds ok with one warning: CXXFLAGS=-I../boost_1_34_1/ ./configure CXXFLAGS=-I../boost_1_34_1/ make clean CXXFLAGS=-I../boost_1_34_1/ make all ... g++ -I../boost_1_34_1/ -Wall -DBOOST_SP_DISABLE_THREADS -O3 -D_GNU_SOURCE -c -o dnsparser.o dnsparser.cc dnsparser.cc: In member function `void PacketReader::copyRecord(unsigned char*, short unsigned int)': dnsparser.cc:309: warning: comparison between signed and unsigned integer expressions .... CXXFLAGS=-I../boost_1_34_1/ make install (may I suggest an uninstall: target in the Makefile :) ?) Tried it with suid/sgid and without - no effect. Tried with chroot and without - no effect. (machine heavily loaded with disk activity at this time (LA>4), it can take a minute for the recursor to come up, but one can nicely observe the control socket in /var/run/ getting created and unlink'd the moment PID 16099 (below) disappears!) Aug 18 23:04:05 pascal pdns_recursor[16099]: PowerDNS recursor 3.1.5-snapshot (C) 2001-2007 PowerDNS.COM BV (Aug 18 2007, 21:57:19, gcc 3.2.3 20030502 (Red Hat Linux 3.2.3-49)) starting up Aug 18 23:04:06 pascal pdns_recursor[16099]: PowerDNS comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it according to the terms of the GPL version 2. Aug 18 23:04:07 pascal pdns_recursor[16099]: Operating in 32 bits mode Aug 18 23:04:08 pascal pdns_recursor[16099]: Only allowing queries from: 127.0.0.0/8, .... Aug 18 23:04:09 pascal pdns_recursor[16099]: Will not send queries to: 127.0.0.0/8, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, ::1/128, fe80::/10 Aug 18 23:04:18 pascal pdns_recursor[16099]: Inserting rfc 1918 private space zones Aug 18 23:04:19 pascal pdns_recursor[16099]: Listening for UDP queries on 67.18.254.X:53 Aug 18 23:04:20 pascal pdns_recursor[16099]: Listening for UDP queries on 127.0.0.1:5353 Aug 18 23:04:21 pascal pdns_recursor[16099]: Listening for TCP queries on 67.18.254.X:53 Aug 18 23:04:22 pascal pdns_recursor[16099]: Listening for TCP queries on 127.0.0.1:5353 Aug 18 23:04:23 pascal pdns_recursor[16099]: Done priming cache with root hints Aug 18 23:04:24 pascal pdns_recursor[16099]: Calling daemonize, going to background Aug 18 23:04:25 pascal pdns_recursor[16124]: Non-fatal error initializing possible multiplexer (Setting up epoll: Function not implemented), falling back Aug 18 23:04:26 pascal pdns_recursor[16124]: Enabled 'select' multiplexer Aug 18 23:04:27 pascal pdns_recursor[16124]: Set effective group id to 513 Aug 18 23:04:28 pascal pdns_recursor[16124]: Set effective user id to 512 Aug 18 23:04:30 pascal pdns_recursor[16124]: Refreshed . records Note: the "Non-Fatal error" appears with the official pdns-recursor-3.1.4-1.i386.rpm as well. strace'ing the process (and the output below is not from the log msgs above strictly, but some other run - I did too many to count): rt_sigaction(SIGPIPE, {0x272140, [], SA_RESTORER, 0x1c0ec8}, {SIG_DFL}, 8) = 0 send(3, "<27>Aug 18 23:27:47 pdns_recurso"..., 85, 0) = 85 rt_sigaction(SIGPIPE, {SIG_DFL}, NULL, 8) = 0 socket(PF_FILE, SOCK_DGRAM, 0) = 8 setsockopt(8, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0 unlink("/var/run/powerdns/pdns_recursor.controlsocket") = -1 ENOENT (No such file or directory) bind(8, {sa_family=AF_FILE, path="/var/run/powerdns/pdns_recursor.controlsocket"}, 110) = 0 time(NULL) = 1187494068 time(NULL) = 1187494068 time(NULL) = 1187494068 ..... write(2, " ", 1 ) = 1 write(2, "t", 1t) = 1 write(2, "o", 1o) = 1 write(2, " ", 1 ) = 1 write(2, "b", 1b) = 1 write(2, "a", 1a) = 1 write(2, "c", 1c) = 1 write(2, "k", 1k) = 1 write(2, "g", 1g) = 1 write(2, "r", 1r) = 1 write(2, "o", 1o) = 1 write(2, "u", 1u) = 1 write(2, "n", 1n) = 1 write(2, "d", 1d) = 1 write(2, "\n", 1 ) = 1 time([1187494068]) = 1187494068 getpid() = 19513 rt_sigaction(SIGPIPE, {0x272140, [], SA_RESTORER, 0x1c0ec8}, {SIG_DFL}, 8) = 0 send(3, "<28>Aug 18 23:27:48 pdns_recurso"..., 80, 0) = 80 rt_sigaction(SIGPIPE, {SIG_DFL}, NULL, 8) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb75f00c8) = 19557 close(8) = 0 unlink("/var/run/powerdns/pdns_recursor.controlsocket") = 0 exit_group(0) = ? I also ran this with strace -f , and the child never does a bind() call for the socket (sa_family=AF_FILE). Thanks - Jamie _______________________________________________ Pdns-users mailing list [email protected] http://mailman.powerdns.com/mailman/listinfo/pdns-users
