[Pdns-users] TXT record with embedded tab causes thread to die.
Christopher Pruden
cdpruden at liquidweb.com
Tue Mar 27 13:43:27 UTC 2012
Hi,
I'm working on a PowerDNS setup, with the gpgsql backend, and think I'm running into ticket #356. I tried this with 3.0.1 initially, and now 3.1rc1 (static RPM for both).
Initially, data was loaded by setting PowerDNS as a slave to a bind master, and using AXFR to get everything across. This seemed to work well, although I've found a few records that ended up in the DB that can't be retrieved. Specifically, it seems to be TXT records with an embedded tab (the greater than sign is the tab):
db=> select * from dns_record where name='example.com' and type='TXT';
id | zone_id | name | type | rdata | ttl | prio | change_date
---------+---------+-----------------------+------+---------------------------------+-----+------+-------------
2610172 | 269911 | example.com | TXT | "v=spf1 a mx ip4:127.0.0.1>?all" | 300 | 0 |
(1 row)
Querying bind:
$ dig +short TXT example.com
"v=spf1 a mx ip4:127.0.0.1\009?all"
Querying PowerDNS:
$ dig TXT example.com @10.30.152.98
; <<>> DiG 9.7.3-P3 <<>> TXT example.com @10.30.152.98
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 45631
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;example.com.> > IN> TXT
;; Query time: 54 msec
;; SERVER: 10.30.152.98#53(10.30.152.98)
;; WHEN: Mon Mar 26 17:08:59 2012
;; MSG SIZE rcvd: 39
The logs show this (including embedded tab):
Mar 27 09:29:00 authdns1 pdns[28480]: AXFR of domain 'example.com' initiated by 10.30.152.99
Mar 27 09:29:00 authdns1 pdns[28480]: TCP Connection Thread died because of STL error: Unable to parse DNS TXT '"v=spf1 a mx ip4:127.0.0.1 ?all"'
I actually have another case, as well, of not being able to parse a TXT record, that seems a bit different (I don't believe there are any embedded tabs or other characters in it):
Mar 27 09:29:00 authdns1 pdns[28480]: TCP Connection Thread died because of STL error: Unable to parse DNS TXT '"example.net. IN TXT " "v=spf1" "a" "mx" "ip4:72.52.197.100" "~all" ""'
bookkeep=> select * from dns_record where name='example.net' and type='TXT';
id | zone_id | name | type | rdata | ttl | prio | change_date
---------+---------+-------------------+------+--------------------------------------+-----+------+-------------
2395887 | 248632 | example.net | TXT | "v=spf1 a mx ip4:127.0.0.100 ~all" | 300 | 0 |
(1 row)
Does this seem like ticket #356 coming back? Any ideas on workarounds for the time being?
Thanks in advance,
Chris
More information about the Pdns-users
mailing list