has to be on my side. i made a change in the way i read/write to the socket and now i get
socket(AF_UNIX, SOCK_STREAM, 0) = 12 connect(12, {sa_family=AF_UNIX, sun_path="/tmp/pra.sock"}, 110) = 0 write(12, "{\"method\": \"initialize\", \"parame"..., 66) = 66 poll([{fd=12, events=POLLIN}], 1, 1000) = 1 ([{fd=12, revents=POLLIN}]) read(12, "{\"result\":true}", 1500) = 15 write(12, "{\"method\": \"getAllDomains\", \"par"..., 70) = 70 poll([{fd=12, events=POLLIN}], 1, 1000) = 0 (Timeout) poll([{fd=12, events=POLLIN}], 1, 1000) = 0 (Timeout) close(12) pdns now dies after the two POLL (timeout), i’ll work on my read/write code to fix this and let you know. thanks again > On 28 Nov 2023, at 16:21, Alexis Fidalgo <alz...@gmail.com> wrote: > > the mail with the whole strace is kept because of the attach but i can see > this > > > sendto(3, "<30>Nov 28 16:17:46 pdns[167106]"..., 57, MSG_NOSIGNAL, NULL, 0) = > 57 > socket(AF_UNIX, SOCK_STREAM, 0) = 12 > connect(12, {sa_family=AF_UNIX, sun_path="/tmp/pra.sock"}, 110) = 0 > write(12, "{\"method\": \"initialize\", \"parame"..., 66) = 66 > poll([{fd=12, events=POLLIN}], 1, 1000) = 1 ([{fd=12, revents=POLLIN}]) > read(12, "{\"result\":true}", 1500) = 15 > write(12, "{\"method\": \"getAllDomains\", \"par"..., 70) = -1 EPIPE (Broken > pipe) > --- SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=167106, si_uid=0} --- > close(12) = 0 > futex(0x7f5d0c6181e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0 > write(2, "Nov 28 16:17:46 PDNSException wh"..., 134Nov 28 16:17:46 > PDNSException while filling the zone cache: Exception caught when sending: > Could not send a message to remote process > ) = 134 > > > > it looks like the socket is being closed when pdns is trying to send a new > message (the getAllDomains)? > > >> On 28 Nov 2023, at 16:13, Remi Gacogne via Pdns-users >> <pdns-users@mailman.powerdns.com> wrote: >> >> Hi! >> >> On 28/11/2023 19:59, Alexis Fidalgo via Pdns-users wrote: >>> Sorry about that, yes, this will work locally, meaning the remote responder >>> (my script) will run on the same VM than pdns-auth, so pdns-auth will >>> connect using a unix socket with the responder using remote backend. >>> That actually occurs, this is what is shown from the pdns >>> --- >>> alz@nuc /opt/pdns-auth-4.8.3/sbin ./pdns_server >>> Nov 28 14:52:54 This is a standalone pdns >>> Nov 28 14:52:54 Listening on controlsocket in >>> '/var/run/pdns/pdns.controlsocket' >>> Nov 28 14:52:54 UDP server bound to 0.0.0.0:5300 >>> Nov 28 14:52:54 UDP server bound to 0.0.0.0:5300 >>> Nov 28 14:52:54 UDP server bound to 0.0.0.0:5300 >>> Nov 28 14:52:54 UDP server bound to 0.0.0.0:5300 >>> Nov 28 14:52:54 UDP server bound to 0.0.0.0:5300 >>> Nov 28 14:52:54 UDP server bound to 0.0.0.0:5300 >>> Nov 28 14:52:54 TCP server bound to 0.0.0.0:5300 >>> Nov 28 14:52:54 PowerDNS Authoritative Server 4.8.3 (C) 2001-2022 >>> PowerDNS.COM BV >>> Nov 28 14:52:54 Using 64-bits mode. Built using gcc 10.2.1 20210110 on Nov >>> 28 2023 11:42:16 by a...@nuc.lesi.com. >>> Nov 28 14:52:54 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. >>> Nov 28 14:52:54 [stub-resolver] Doing stub resolving for >>> 'auth-4.8.3.security-status.secpoll.powerdns.com.|TXT', using resolvers: >>> 192.168.86.1 >>> Nov 28 14:52:54 [stub-resolver] Question for >>> 'auth-4.8.3.security-status.secpoll.powerdns.com.|TXT' got answered by >>> 192.168.86.1 >>> Nov 28 14:52:54 Polled security status of version 4.8.3 at startup, no >>> known issues reported: OK >>> Nov 28 14:52:54 Reconnecting to backend >>> Nov 28 14:52:54 PDNSException while filling the zone cache: Exception >>> caught when sending: Could not send a message to remote process >>> — >>> this is what is showed on the responder when the >>> --- >>> 2023-11-28T14:52:54.907-0300 DEBUG handlers/handlers.go:65 pdns request >>> received: {"method": "initialize", "parameters": {"path": "/tmp/pra.sock"}} >>> 2023-11-28T14:52:54.907-0300 DEBUG handlers/handlers.go:50 Response >>> {"result":true} >>> — >>> This same responder script, if using http returns exactly the same json, >>> getAllDomains comes after the initialize, then the lookups, so the >>> responder works ok. >>> Problem is, when i switch to unix socket, throws the error on the red line >>> after the initialize and dies >> >> That's very weird indeed, and unfortunately the unix connector is lacking a >> bit of logging in this area. Any chance you would be able to strace the >> authoritative server process? >> >> Cheers,f >> -- >> Remi Gacogne >> PowerDNS.COM <http://powerdns.com/> BV - https://www.powerdns.com/ >> _______________________________________________ >> Pdns-users mailing list >> Pdns-users@mailman.powerdns.com <mailto:Pdns-users@mailman.powerdns.com> >> https://mailman.powerdns.com/mailman/listinfo/pdns-users >
_______________________________________________ Pdns-users mailing list Pdns-users@mailman.powerdns.com https://mailman.powerdns.com/mailman/listinfo/pdns-users