summaryrefslogtreecommitdiffstats
path: root/dns.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2005-05-03 21:22:52 +0000
committerLennart Poettering <lennart@poettering.net>2005-05-03 21:22:52 +0000
commitb8c78f5c0da93d92aa28d3ef3757e78d03141f41 (patch)
tree78c3cb189c50296b6a936bf41c935762a85116bf /dns.c
parent72e2daefd371691e385bcd61741ee696391941d8 (diff)
* correctly build probe packets
* fix conflict detection * correctly handle FLUSH bit in incoming packets * drop whole group when one record conflicts * remove wrong TRUE/FALSE usage in flx_server_add_service_va() * fix wrong pass-through in switch satetement in rr.c git-svn-id: file:///home/lennart/svn/public/avahi/trunk@37 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'dns.c')
-rw-r--r--dns.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/dns.c b/dns.c
index a402e29..3f50827 100644
--- a/dns.c
+++ b/dns.c
@@ -482,9 +482,12 @@ flxRecord* flx_dns_packet_consume_record(flxDnsPacket *p, gboolean *ret_cache_fl
goto fail;
/* g_message("name = %s, rdlength = %u", name, rdlength); */
+
+ *ret_cache_flush = !!(class & FLX_DNS_CACHE_FLUSH);
+ class &= ~ FLX_DNS_CACHE_FLUSH;
start = flx_dns_packet_get_rptr(p);
-
+
r = flx_record_new_full(name, class, type);
switch (type) {
@@ -581,9 +584,6 @@ flxRecord* flx_dns_packet_consume_record(flxDnsPacket *p, gboolean *ret_cache_fl
if ((guint8*) flx_dns_packet_get_rptr(p) - (guint8*) start != rdlength)
goto fail;
- *ret_cache_flush = !!(class & FLX_DNS_CACHE_FLUSH);
- class &= ~ FLX_DNS_CACHE_FLUSH;
-
r->ttl = ttl;
return r;