]> git.meshlink.io Git - catta/commitdiff
add new function avahi_domain_ends_with()
authorLennart Poettering <lennart@poettering.net>
Sun, 25 Sep 2005 19:58:12 +0000 (19:58 +0000)
committerLennart Poettering <lennart@poettering.net>
Sun, 25 Sep 2005 19:58:12 +0000 (19:58 +0000)
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@605 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe

avahi-common/domain.c
avahi-common/domain.h

index 3703a0426f49352ab3e594beb2bc88d543876b0b..1a4f8a60c419b630f1db8a8d35885ce39a12a993 100644 (file)
@@ -337,3 +337,21 @@ unsigned avahi_domain_hash(const char *s) {
             hash = 31 * hash + tolower(*p);
     }
 }
+
+int avahi_domain_ends_with(const char *domain, const char *suffix) {
+    assert(domain);
+    assert(suffix);
+
+    assert(avahi_is_valid_domain_name(domain));
+    assert(avahi_is_valid_domain_name(suffix));
+
+    for (;;) {
+        char dummy[64];
+        
+        if (avahi_domain_equal(domain, suffix))
+            return 1;
+
+        if (!(avahi_unescape_label(&domain, dummy, sizeof(dummy))))
+            return 0;
+    } 
+}
index 88cf4d3ee1e980875360d001950f035182c390bd..0464915f9afd4c717274add1ad02a403026dbd34 100644 (file)
@@ -70,6 +70,9 @@ int avahi_is_valid_host_name(const char *t);
 /** Return some kind of hash value for the domain, useful for using domains as hash table keys. */
 unsigned avahi_domain_hash(const char *name);
 
+/** Returns 1 if the the end labels of domain are eqal to suffix */
+int avahi_domain_ends_with(const char *domain, const char *suffix);
+
 #ifndef DOXYGEN_SHOULD_SKIP_THIS
 AVAHI_C_DECL_END
 #endif