diff options
author | Lennart Poettering <lennart@poettering.net> | 2005-03-31 23:31:11 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2005-03-31 23:31:11 +0000 |
commit | d553a1c2d1cd3fcdd65ade64940b5bd3efc70675 (patch) | |
tree | 5e240f9fcea9fdc77662df825f217107fbd95406 /rr.c | |
parent | 07b93a6d49a3252e3f5cacadd15083949241b071 (diff) |
add client part of known answer suppresion
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@20 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'rr.c')
-rw-r--r-- | rr.c | 24 |
1 files changed, 23 insertions, 1 deletions
@@ -224,9 +224,31 @@ gboolean flx_key_equal(const flxKey *a, const flxKey *b) { /* g_message("equal: %p %p", a, b); */ - return strcmp(a->name, b->name) == 0 && a->type == b->type && a->class == b->class; + return strcmp(a->name, b->name) == 0 && + a->type == b->type && + a->class == b->class; } +gboolean flx_key_pattern_match(const flxKey *pattern, const flxKey *k) { + g_assert(pattern); + g_assert(k); + +/* g_message("equal: %p %p", a, b); */ + + g_assert(!flx_key_is_pattern(k)); + + return strcmp(pattern->name, k->name) == 0 && + (pattern->type == k->type || pattern->type == FLX_DNS_TYPE_ANY) && + pattern->class == k->class; +} + +gboolean flx_key_is_pattern(const flxKey *k) { + g_assert(k); + + return k->type == FLX_DNS_TYPE_ANY; +} + + guint flx_key_hash(const flxKey *k) { g_assert(k); |