summaryrefslogtreecommitdiffstats
path: root/avahi-core/query-sched.c
diff options
context:
space:
mode:
authorFederico Lucifredi <flucifredi@acm.org>2008-01-31 01:57:35 +0000
committerFederico Lucifredi <flucifredi@acm.org>2008-01-31 01:57:35 +0000
commitc1243d651f71127496f68ea933c608f2c70bb819 (patch)
tree9b7b7b20a8e31658bf7e73671fdd12ae117273a8 /avahi-core/query-sched.c
parent3ee3d1acf1985ca34f30ab255b6cedb1a6251f91 (diff)
touch-up of test codepath.federico2
git-svn-id: file:///home/lennart/svn/public/avahi/branches/federico2@1752 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'avahi-core/query-sched.c')
-rw-r--r--avahi-core/query-sched.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/avahi-core/query-sched.c b/avahi-core/query-sched.c
index 24758a2..757de78 100644
--- a/avahi-core/query-sched.c
+++ b/avahi-core/query-sched.c
@@ -266,6 +266,32 @@ static void append_known_answers_and_send(AvahiQueryScheduler *s, AvahiDnsPacket
avahi_dns_packet_set_field(p, AVAHI_DNS_FIELD_ANCOUNT, n);
/* append signature */
+ /*TODO: file location and naming policy to be revised with project maintainer */
+ /* get the local private zsk */
+ if(!(fp = fopen("/etc/avahi/62051.pem","r"))) {
+ avahi_log_error("private key file open failed.");
+ assert(fp);
+ }
+
+ if(!(private_key = PEM_read_PrivateKey(fp, NULL, NULL, "secret"))) {
+ avahi_log_error("private key read failed.");
+ assert(fp);
+ }
+
+ fclose(fp);
+
+ /* generate RRSIG record for given resource record */
+ rs = avahi_dnssec_sign_record(ka->record, ka->record->ttl, private_key);
+
+ /*append the signature RRSIG RR */
+ result = avahi_dns_packet_append_record(p, rs, 0, 0);
+
+ if (!result) {
+ avahi_log_error("appending of rdata failed.");
+ assert(result);
+ }
+
+ avahi_dns_packet_set_field(p, AVAHI_DNS_FIELD_ANCOUNT, n+1); /*increment record count for ANCOUNT */
/* append trust record */