PowerDNS / pdns

PowerDNS Authoritative, PowerDNS Recursor, dnsdist
https://www.powerdns.com/
GNU General Public License v2.0
3.7k stars 908 forks source link

pdns-recursor doesn't respond to rec_control after reloading erroneous ACL file #330

Closed Habbie closed 11 years ago

Habbie commented 11 years ago

First we check with a correct ACL file:

gimre@voy:~$ cat /tmp/foo.lst 127.0.0.1 gimre@voy:~$ grep foo /tmp/recursor.conf allow-from-file=/tmp/foo.lst

gimre@voy:~$ sudo /tmp/pdns-recursor-3.3.1/rec_control --config-dir=/tmp reload-acls ok

Then we write something in the ACL file, which cannot be parsed:

gimre@voy:/tmp/pdns-recursor-3.3.1$ echo "uuuuu" > /tmp/foo.lst gimre@voy:/tmp/pdns-recursor-3.3.1$ sudo ./rec_control --config-dir=/tmp reload-acls Fatal: Unable to receive message over control channel: Success

In the logs we see the following error message:

Dec 15 00:10:37 Exception: Unable to convert 'uuuuu' to a netmask

After this, the recursor does not respond to any rec_control commands OR USR1 signal (for stats). Only a restart seems to work.

gimre@voy:~$ echo "127.0.0.1" > /tmp/foo.lst gimre@voy:~$ sudo /tmp/pdns-recursor-3.3.1/rec_control --config-dir=/tmp reload-acls Fatal: Unable to receive message over control channel: Success

Habbie commented 11 years ago

Author: peter 3.4-pre just exits when this happens (also note that it would not start up when this happens, either).

Habbie commented 11 years ago

Author: peter Fixed in r2323!