diff options
author | Christian Grothoff <christian@grothoff.org> | 2012-01-04 12:36:43 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2012-01-04 12:36:43 +0000 |
commit | 9a1a436d0afdb2b6e4812c0417272fc1ef9f0cec (patch) | |
tree | 589d9590dc57dcde72e675848e9f50cc9e22ac2f /src/dns | |
parent | a88b52ae2d2b3e1dadc32178edd3e540a92e3deb (diff) | |
download | gnunet-9a1a436d0afdb2b6e4812c0417272fc1ef9f0cec.tar.gz gnunet-9a1a436d0afdb2b6e4812c0417272fc1ef9f0cec.zip |
-bugfixes
Diffstat (limited to 'src/dns')
-rw-r--r-- | src/dns/Makefile.am | 11 | ||||
-rw-r--r-- | src/dns/dnsparser.c | 6 | ||||
-rw-r--r-- | src/dns/gnunet-service-dns_new.c | 9 |
3 files changed, 19 insertions, 7 deletions
diff --git a/src/dns/Makefile.am b/src/dns/Makefile.am index 674f4bf57..6322f2ca6 100644 --- a/src/dns/Makefile.am +++ b/src/dns/Makefile.am | |||
@@ -34,6 +34,9 @@ lib_LTLIBRARIES = \ | |||
34 | bin_PROGRAMS = \ | 34 | bin_PROGRAMS = \ |
35 | gnunet-service-dns gnunet-service-dns-new $(HIJACKBIN) | 35 | gnunet-service-dns gnunet-service-dns-new $(HIJACKBIN) |
36 | 36 | ||
37 | noinst_PROGRAMS = \ | ||
38 | gnunet-dns-monitor | ||
39 | |||
37 | plugin_LTLIBRARIES = \ | 40 | plugin_LTLIBRARIES = \ |
38 | libgnunet_plugin_block_dns.la | 41 | libgnunet_plugin_block_dns.la |
39 | 42 | ||
@@ -55,6 +58,14 @@ gnunet_service_dns_LDADD = \ | |||
55 | $(top_builddir)/src/dns/libgnunetdnsparser.la \ | 58 | $(top_builddir)/src/dns/libgnunetdnsparser.la \ |
56 | $(GN_LIBINTL) | 59 | $(GN_LIBINTL) |
57 | 60 | ||
61 | gnunet_dns_monitor_SOURCES = \ | ||
62 | gnunet-dns-monitor.c | ||
63 | gnunet_dns_monitor_LDADD = \ | ||
64 | $(top_builddir)/src/dns/libgnunetdnsparser.la \ | ||
65 | $(top_builddir)/src/dns/libgnunetdnsnew.la \ | ||
66 | $(top_builddir)/src/util/libgnunetutil.la \ | ||
67 | $(GN_LIBINTL) | ||
68 | |||
58 | gnunet_service_dns_new_SOURCES = \ | 69 | gnunet_service_dns_new_SOURCES = \ |
59 | gnunet-service-dns_new.c | 70 | gnunet-service-dns_new.c |
60 | gnunet_service_dns_new_LDADD = \ | 71 | gnunet_service_dns_new_LDADD = \ |
diff --git a/src/dns/dnsparser.c b/src/dns/dnsparser.c index 2cd728f37..2a3fd55c0 100644 --- a/src/dns/dnsparser.c +++ b/src/dns/dnsparser.c | |||
@@ -82,7 +82,7 @@ parse_name (const char *udp_payload, | |||
82 | ret = GNUNET_strdup (""); | 82 | ret = GNUNET_strdup (""); |
83 | while (1) | 83 | while (1) |
84 | { | 84 | { |
85 | if (*off == udp_payload_length) | 85 | if (*off >= udp_payload_length) |
86 | goto error; | 86 | goto error; |
87 | len = input[*off]; | 87 | len = input[*off]; |
88 | if (0 == len) | 88 | if (0 == len) |
@@ -98,7 +98,7 @@ parse_name (const char *udp_payload, | |||
98 | &udp_payload[*off + 1]); | 98 | &udp_payload[*off + 1]); |
99 | GNUNET_free (ret); | 99 | GNUNET_free (ret); |
100 | ret = tmp; | 100 | ret = tmp; |
101 | off += 1 + len; | 101 | *off += 1 + len; |
102 | } | 102 | } |
103 | else if ((64 | 128) == (len & (64 | 128)) ) | 103 | else if ((64 | 128) == (len & (64 | 128)) ) |
104 | { | 104 | { |
@@ -116,7 +116,7 @@ parse_name (const char *udp_payload, | |||
116 | GNUNET_free (ret); | 116 | GNUNET_free (ret); |
117 | GNUNET_free (xstr); | 117 | GNUNET_free (xstr); |
118 | ret = tmp; | 118 | ret = tmp; |
119 | off += 2; | 119 | *off += 2; |
120 | /* pointers always terminate names */ | 120 | /* pointers always terminate names */ |
121 | break; | 121 | break; |
122 | } | 122 | } |
diff --git a/src/dns/gnunet-service-dns_new.c b/src/dns/gnunet-service-dns_new.c index 8918039d1..bf2368faa 100644 --- a/src/dns/gnunet-service-dns_new.c +++ b/src/dns/gnunet-service-dns_new.c | |||
@@ -1049,10 +1049,11 @@ handle_client_response (void *cls GNUNET_UNUSED, | |||
1049 | rr->client_wait_list_length, | 1049 | rr->client_wait_list_length, |
1050 | 0); | 1050 | 0); |
1051 | } | 1051 | } |
1052 | next_phase (rr); | 1052 | break; |
1053 | GNUNET_SERVER_receive_done (client, GNUNET_OK); | 1053 | } |
1054 | return; | 1054 | next_phase (rr); |
1055 | } | 1055 | GNUNET_SERVER_receive_done (client, GNUNET_OK); |
1056 | return; | ||
1056 | } | 1057 | } |
1057 | /* odd, client was not on our list for the request, that ought | 1058 | /* odd, client was not on our list for the request, that ought |
1058 | to be an error */ | 1059 | to be an error */ |