Index: trunk/src/sh_ignore.c
===================================================================
--- trunk/src/sh_ignore.c	(revision 332)
+++ trunk/src/sh_ignore.c	(revision 333)
@@ -39,4 +39,6 @@
 #define FIL__ _("sh_ignore.c")
 
+#if defined(SH_WITH_CLIENT) || defined(SH_STANDALONE)
+
 struct sh_ignore_list {
 #ifdef HAVE_REGEX_H
@@ -191,8 +193,59 @@
   return 0;
 }
-
-
-
-
-
-
+#endif
+
+#ifdef SH_CUTEST
+#include "CuTest.h"
+
+void Test_ignore_ok (CuTest *tc) {
+#if defined(SH_WITH_CLIENT) || defined(SH_STANDALONE)
+
+  int ret; 
+
+  CuAssertTrue(tc, NULL == sh_del_ign);
+  CuAssertTrue(tc, NULL == sh_new_ign);
+ 
+  ret = sh_ignore_add_del ("/var/log/foo/.*");
+  CuAssertTrue(tc, 0 == ret);
+  CuAssertPtrNotNull(tc, sh_del_ign);
+
+  ret = sh_ignore_chk_del ("/var/log/foo/test");
+  CuAssertTrue(tc, S_TRUE == ret);
+  CuAssertTrue(tc, NULL == sh_new_ign);
+  
+  ret = sh_ignore_chk_del ("/var/log/footest");
+  CuAssertTrue(tc, S_FALSE == ret);
+
+  ret = sh_ignore_chk_del ("/my/var/log/footest");
+  CuAssertTrue(tc, S_FALSE == ret);
+
+  sh_ignore_clean();
+  CuAssertTrue(tc, NULL == sh_del_ign);
+  CuAssertTrue(tc, NULL == sh_new_ign);
+ 
+  ret = sh_ignore_add_new ("/var/log/foo/.*");
+  CuAssertTrue(tc, 0 == ret);
+  CuAssertPtrNotNull(tc, sh_new_ign);
+  CuAssertTrue(tc, NULL == sh_del_ign);
+
+  ret = sh_ignore_chk_new ("/var/log/foo/test");
+  CuAssertTrue(tc, S_TRUE == ret);
+  
+  ret = sh_ignore_chk_new ("/var/log/footest");
+  CuAssertTrue(tc, S_FALSE == ret);
+
+  ret = sh_ignore_chk_new ("/my/var/log/footest");
+  CuAssertTrue(tc, S_FALSE == ret);
+
+  sh_ignore_clean();
+  CuAssertTrue(tc, NULL == sh_new_ign);
+  CuAssertTrue(tc, NULL == sh_del_ign);
+
+#else
+  (void) tc; /* fix compiler warning */
+#endif
+  return;
+}
+/* #ifdef SH_CUTEST */
+#endif
+
