diff --git a/libs/sofia-sip/.update b/libs/sofia-sip/.update
index 5b56b738b6..7cfe75543e 100644
--- a/libs/sofia-sip/.update
+++ b/libs/sofia-sip/.update
@@ -1 +1 @@
-Wed Feb 11 10:49:17 CST 2009
+Wed Feb 11 10:49:44 CST 2009
diff --git a/libs/sofia-sip/libsofia-sip-ua/bnf/Makefile.am b/libs/sofia-sip/libsofia-sip-ua/bnf/Makefile.am
index 569e517a26..e64f7a3b09 100644
--- a/libs/sofia-sip/libsofia-sip-ua/bnf/Makefile.am
+++ b/libs/sofia-sip/libsofia-sip-ua/bnf/Makefile.am
@@ -26,7 +26,7 @@ libbnf_la_SOURCES = 	bnf.c
 
 COVERAGE_INPUT = 	$(libbnf_la_SOURCES) $(include_sofia_HEADERS)
 
-LDADD =			libbnf.la
+LDADD =			libbnf.la ../su/libsu.la
 
 torture_bnf_LDFLAGS = 	-static
 
diff --git a/libs/sofia-sip/libsofia-sip-ua/bnf/bnf.c b/libs/sofia-sip/libsofia-sip-ua/bnf/bnf.c
index e40bbe5e4c..07a503dcd3 100644
--- a/libs/sofia-sip/libsofia-sip-ua/bnf/bnf.c
+++ b/libs/sofia-sip/libsofia-sip-ua/bnf/bnf.c
@@ -34,6 +34,7 @@
 #include "config.h"
 
 #include "sofia-sip/bnf.h"
+#include "sofia-sip/su_string.h"
 
 #include <stdio.h>
 #include <assert.h>
@@ -795,12 +796,12 @@ int host_is_local(char const *host)
 
   return
     n >= 9 /* strlen("localhost") */ &&
-    strncasecmp(host, "localhost", 9) == 0 &&
+    su_casenmatch(host, "localhost", 9) &&
     (n == 9 ||
      ((n == 10 || /* localhost. */
        n == 21 || /* strlen("localhost.localdomain") */
        n == 22) && /* strlen("localhost.localdomain.") */
-      strncasecmp(host + 9, ".localdomain.", n - 9) == 0));
+      su_casenmatch(host + 9, ".localdomain.", n - 9)));
 }
 
 /** Return true if @a string has domain name in "invalid." domain.
@@ -815,9 +816,9 @@ int host_has_domain_invalid(char const *string)
     if (string[n - 1] == '.')	/* .invalid. perhaps? */
       n--;
     if (n == 7 /* strlen("invalid") */)
-      return strncasecmp(string, invalid + 1, 7) == 0;
+      return su_casenmatch(string, invalid + 1, 7);
     else
-      return strncasecmp(string + n - 8, invalid, 8) == 0;
+      return su_casenmatch(string + n - 8, invalid, 8);
   }
 
   return 0;
@@ -913,7 +914,7 @@ int host_cmp(char const *a, char const *b)
 	retval = memcmp(a6, b6, asize);
     }
     else {
-      retval = strcasecmp(a, b);
+      retval = su_strcasecmp(a, b);
     }
   }