[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r22053 - gnunet/src/gns
From: |
gnunet |
Subject: |
[GNUnet-SVN] r22053 - gnunet/src/gns |
Date: |
Sat, 16 Jun 2012 23:47:37 +0200 |
Author: schanzen
Date: 2012-06-16 23:47:37 +0200 (Sat, 16 Jun 2012)
New Revision: 22053
Modified:
gnunet/src/gns/gnunet-service-gns_resolver.c
Log:
properly handle CNAME as specified in rfc1034#section-3.6.2
Modified: gnunet/src/gns/gnunet-service-gns_resolver.c
===================================================================
--- gnunet/src/gns/gnunet-service-gns_resolver.c 2012-06-16 21:18:03 UTC
(rev 22052)
+++ gnunet/src/gns/gnunet-service-gns_resolver.c 2012-06-16 21:47:37 UTC
(rev 22053)
@@ -1359,6 +1359,19 @@
for (i = 0; i < packet->num_answers; i++)
{
+ /* http://tools.ietf.org/html/rfc1034#section-3.6.2 */
+ if (packet->authority_records[i].type == GNUNET_GNS_RECORD_TYPE_CNAME)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "CNAME... restarting query with %s\n",
+ packet->answers[i].data.hostname
+ );
+ strcpy (rh->dns_name, packet->answers[i].data.hostname);
+ send_dns_packet (rh);
+ GNUNET_DNSPARSER_free_packet (packet);
+ return;
+ }
+
if ((packet->answers[i].type == rlh->record_type) &&
(0 == strcmp (packet->answers[i].name, rh->dns_name)))
{
@@ -1379,6 +1392,7 @@
for (i = 0; i < packet->num_authority_records; i++)
{
+
if (packet->authority_records[i].type == GNUNET_GNS_RECORD_TYPE_NS)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r22053 - gnunet/src/gns,
gnunet <=