summaryrefslogtreecommitdiff
path: root/src/gns/gnunet-service-gns_interceptor.c
diff options
context:
space:
mode:
authorMartin Schanzenbach <mschanzenbach@posteo.de>2012-03-19 12:20:30 +0000
committerMartin Schanzenbach <mschanzenbach@posteo.de>2012-03-19 12:20:30 +0000
commitab700c23613c8f1df85fe17134a93782d2bd42a2 (patch)
tree8afeeb73d4da9eba7898b02e0189c13af7fb7192 /src/gns/gnunet-service-gns_interceptor.c
parentb3e1d0806fb274c62a5acf19c56369b71f992312 (diff)
downloadgnunet-ab700c23613c8f1df85fe17134a93782d2bd42a2.tar.gz
gnunet-ab700c23613c8f1df85fe17134a93782d2bd42a2.zip
-fix mx records postprocessing
Diffstat (limited to 'src/gns/gnunet-service-gns_interceptor.c')
-rw-r--r--src/gns/gnunet-service-gns_interceptor.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/gns/gnunet-service-gns_interceptor.c b/src/gns/gnunet-service-gns_interceptor.c
index 25cad7ead..4160893ad 100644
--- a/src/gns/gnunet-service-gns_interceptor.c
+++ b/src/gns/gnunet-service-gns_interceptor.c
@@ -114,8 +114,25 @@ reply_to_dns(void* cls, uint32_t rd_count,
114 { 114 {
115 answer_records[i].name = ilh->query->name; 115 answer_records[i].name = ilh->query->name;
116 answer_records[i].type = rd[i].record_type; 116 answer_records[i].type = rd[i].record_type;
117 answer_records[i].data.raw.data_len = rd[i].data_size; 117 switch(rd[i].record_type)
118 answer_records[i].data.raw.data = (char*)rd[i].data; 118 {
119 case GNUNET_GNS_RECORD_TYPE_NS:
120 case GNUNET_GNS_RECORD_TYPE_CNAME:
121 case GNUNET_GNS_RECORD_TYPE_PTR:
122 answer_records[i].data.hostname = (char*)rd[i].data;
123 break;
124 case GNUNET_GNS_RECORD_TYPE_SOA:
125 answer_records[i].data.soa =
126 (struct GNUNET_DNSPARSER_SoaRecord *)rd[i].data;
127 break;
128 case GNUNET_GNS_RECORD_MX:
129 answer_records[i].data.mx =
130 (struct GNUNET_DNSPARSER_MxRecord *)rd[i].data;
131 break;
132 default:
133 answer_records[i].data.raw.data_len = rd[i].data_size;
134 answer_records[i].data.raw.data = (char*)rd[i].data;
135 }
119 answer_records[i].expiration_time = rd[i].expiration; 136 answer_records[i].expiration_time = rd[i].expiration;
120 answer_records[i].class = GNUNET_DNSPARSER_CLASS_INTERNET;//hmmn 137 answer_records[i].class = GNUNET_DNSPARSER_CLASS_INTERNET;//hmmn
121 } 138 }