summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFederico Lucifredi <flucifredi@acm.org>2008-01-17 08:55:41 +0000
committerFederico Lucifredi <flucifredi@acm.org>2008-01-17 08:55:41 +0000
commitca5e5999d2c48ef112ffa921d7b61c41c25afdf4 (patch)
treeef569a291aeba17bf09d39c331aabffe8268426c
parent744f9c3de82129ee9cc9101fb475495b0b01a809 (diff)
extending append_rdata to support DNSKEY records.
git-svn-id: file:///home/lennart/svn/public/avahi/branches/federico2@1723 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
-rw-r--r--avahi-core/dns.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/avahi-core/dns.c b/avahi-core/dns.c
index d368124..097efd2 100644
--- a/avahi-core/dns.c
+++ b/avahi-core/dns.c
@@ -746,12 +746,27 @@ static int append_rdata(AvahiDnsPacket *p, AvahiRecord *r) {
break;
case AVAHI_DNS_TYPE_AAAA:
-
+
if (!avahi_dns_packet_append_bytes(p, &r->data.aaaa.address, sizeof(r->data.aaaa.address)))
return -1;
-
+
break;
+ case AVAHI_DNS_TYPE_DNSKEY:
+
+ if (!avahi_dns_packet_append_uint16(p, r->data.dnskey.flags))
+ return -1;
+
+ if (!avahi_dns_packet_append_uint8(p, r->data.dnskey.protocol))
+ return -1;
+
+ if (!avahi_dns_packet_append_uint16(p, r->data.dnskey.algorithm))
+ return -1;
+
+ if (!avahi_dns_packet_append_bytes(p, r->data.dnskey.public_key, strlen(r->data.tsig.dnskey.public_key)))
+ return -1; /*truncates the null-termination */
+
+ break;
default: