gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r12900 - gnunet/src/vpn


From: gnunet
Subject: [GNUnet-SVN] r12900 - gnunet/src/vpn
Date: Tue, 7 Sep 2010 15:37:28 +0200

Author: toelke
Date: 2010-09-07 15:37:28 +0200 (Tue, 07 Sep 2010)
New Revision: 12900

Modified:
   gnunet/src/vpn/Makefile.am
   gnunet/src/vpn/gnunet-daemon-vpn.c
   gnunet/src/vpn/gnunet-service-dns.c
   gnunet/src/vpn/gnunet-vpn-pretty-print.h
Log:
send dns-queries to the service-dns and pretty-print them

Modified: gnunet/src/vpn/Makefile.am
===================================================================
--- gnunet/src/vpn/Makefile.am  2010-09-07 13:37:28 UTC (rev 12899)
+++ gnunet/src/vpn/Makefile.am  2010-09-07 13:37:28 UTC (rev 12900)
@@ -34,7 +34,8 @@
  gnunet-helper-hijack-dns.c
 
 gnunet_daemon_vpn_SOURCES = \
- gnunet-daemon-vpn.c gnunet-vpn-pretty-print.c
+ gnunet-daemon-vpn.c \
+ gnunet-vpn-pretty-print.c
 gnunet_daemon_vpn_LDADD = \
   $(top_builddir)/src/core/libgnunetcore.la \
   $(top_builddir)/src/statistics/libgnunetstatistics.la \
@@ -42,7 +43,8 @@
   $(GN_LIBINTL)
 
 gnunet_service_dns_SOURCES = \
- gnunet-service-dns.c
+ gnunet-service-dns.c \
+ gnunet-vpn-pretty-print.c
 gnunet_service_dns_LDADD = \
   $(top_builddir)/src/core/libgnunetcore.la \
   $(top_builddir)/src/statistics/libgnunetstatistics.la \

Modified: gnunet/src/vpn/gnunet-daemon-vpn.c
===================================================================
--- gnunet/src/vpn/gnunet-daemon-vpn.c  2010-09-07 13:37:28 UTC (rev 12899)
+++ gnunet/src/vpn/gnunet-daemon-vpn.c  2010-09-07 13:37:28 UTC (rev 12900)
@@ -149,7 +149,7 @@
                struct ip_pkt *pkt = (struct ip_pkt*) message;
                struct ip_udp *udp = (struct ip_udp*) message;
                if (pkt->ip_hdr.proto == 0x11 && udp->ip_hdr.dadr == 0x020a0a0a 
&& ntohs(udp->udp_hdr.dpt) == 53 ) {
-                       size_t len = sizeof(struct query_packet*) + 
ntohs(udp->udp_hdr.len) - 7; /* 7 = 8 for the udp-header - 1 for the unsigned 
char data[1]; */
+                       size_t len = sizeof(struct query_packet) + 
ntohs(udp->udp_hdr.len) - 9; /* 7 = 8 for the udp-header + 1 for the unsigned 
char data[1]; */
                        struct query_packet* query = GNUNET_malloc(len);
                        query->hdr.type = 
htons(GNUNET_MESSAGE_TYPE_LOCAL_QUERY_DNS);
                        query->hdr.size = htons(len);
@@ -157,8 +157,11 @@
                        query->orig_from = pkt->ip_hdr.sadr;
                        query->src_port = udp->udp_hdr.spt;
                        memcpy(query->data, udp->data, ntohs(udp->udp_hdr.len) 
- 8);
-                       GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Queued sending\n");
-                       
GNUNET_CLIENT_notify_transmit_ready(mycls.dns_connection, len, 
GNUNET_TIME_UNIT_FOREVER_REL, GNUNET_YES, &send_query, query);
+                       struct GNUNET_CLIENT_TransmitHandle* th = 
GNUNET_CLIENT_notify_transmit_ready(mycls.dns_connection, len, 
GNUNET_TIME_UNIT_FOREVER_REL, GNUNET_YES, &send_query, query);
+                       if (th != NULL)
+                               GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Queued 
sending of %d bytes.\n", len);
+                       else
+                               GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Already 
queued!\n");
                }
        }
 

Modified: gnunet/src/vpn/gnunet-service-dns.c
===================================================================
--- gnunet/src/vpn/gnunet-service-dns.c 2010-09-07 13:37:28 UTC (rev 12899)
+++ gnunet/src/vpn/gnunet-service-dns.c 2010-09-07 13:37:28 UTC (rev 12900)
@@ -29,6 +29,8 @@
 #include "gnunet_os_lib.h"
 #include "gnunet-service-dns-p.h"
 #include "gnunet_protocols.h"
+#include "gnunet-vpn-packet.h"
+#include "gnunet-vpn-pretty-print.h"
 
 struct dns_cls {
        struct GNUNET_SCHEDULER_Handle *sched;
@@ -58,7 +60,10 @@
 {
        GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Received query!\n");
        struct query_packet* pkt = (struct query_packet*)message;
+       struct dns_pkt* dns = (struct dns_pkt*)pkt->data;
 
+       pkt_printf_dns(dns);
+
        GNUNET_SERVER_receive_done(client, GNUNET_OK);
 }
 

Modified: gnunet/src/vpn/gnunet-vpn-pretty-print.h
===================================================================
--- gnunet/src/vpn/gnunet-vpn-pretty-print.h    2010-09-07 13:37:28 UTC (rev 
12899)
+++ gnunet/src/vpn/gnunet-vpn-pretty-print.h    2010-09-07 13:37:28 UTC (rev 
12900)
@@ -7,6 +7,8 @@
 
 extern void pkt_printf(struct ip6_pkt* pkt);
 
+void pkt_printf_dns(struct dns_pkt* pkt);
+
 void pkt_printf_ip6tcp(struct ip6_tcp* pkt);
 void pkt_printf_ip6udp(struct ip6_udp* pkt);
 void pkt_printf_ip6dns(struct ip6_udp_dns* pkt);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]