diff options
author | Lennart Poettering <lennart@poettering.net> | 2005-04-24 11:02:02 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2005-04-24 11:02:02 +0000 |
commit | 4ccd2cdd5ae567dc2cb6c05ca5e5a9537a9dc1c4 (patch) | |
tree | 3ab225d1b7065e8d777fd953ea9b5610868cc808 /util.c | |
parent | 601f0a4ff139521db8f2999646717ec37005b984 (diff) |
* add DNS packet name compression
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@27 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 31 |
1 files changed, 31 insertions, 0 deletions
@@ -125,3 +125,34 @@ gint flx_age(const GTimeVal *a) { return flx_timeval_diff(&now, a); } + +gboolean flx_domain_equal(const gchar *a, const gchar *b) { + g_assert(a); + g_assert(b); + + for (;;) { + if (*a == 0 && *b == 0) + return TRUE; + + if (*a == 0 && *b == '.' && *(b+1) == 0) + return TRUE; + + if (*a == '.' && *(a+1) == 0 && *b == 0) + return TRUE; + + if (*a != *b) + return FALSE; + + a++; + b++; + } +} + +guint flx_domain_hash(const gchar *p) { + char t[256]; + strncpy(t, p, sizeof(t)-1); + t[sizeof(t)-1] = 0; + + return g_int_hash(t); +} + |