summaryrefslogtreecommitdiffstats
path: root/source/lib/replace/replace.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-10-11 12:30:34 +0000
committerAndrew Tridgell <tridge@samba.org>2005-10-11 12:30:34 +0000
commit29788b5113e4c28502203cb1a5b33662a5afe82d (patch)
tree5520bfaf3367addc2c33bbdb0aa88dfb2b61d9e0 /source/lib/replace/replace.c
parentbe995997200a0c0c53bf9a5ee0bce03ce150743d (diff)
downloadsamba-29788b5113e4c28502203cb1a5b33662a5afe82d.tar.gz
samba-29788b5113e4c28502203cb1a5b33662a5afe82d.tar.xz
samba-29788b5113e4c28502203cb1a5b33662a5afe82d.zip
r10896: added a strcasestr() replacement function
Diffstat (limited to 'source/lib/replace/replace.c')
-rw-r--r--source/lib/replace/replace.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/source/lib/replace/replace.c b/source/lib/replace/replace.c
index 5e60252a67b..d87a009e8c3 100644
--- a/source/lib/replace/replace.c
+++ b/source/lib/replace/replace.c
@@ -22,6 +22,7 @@
#include "system/wait.h"
#include "system/time.h"
#include "system/network.h"
+#include "system/iconv.h"
void replace_dummy(void);
void replace_dummy(void) {}
@@ -534,4 +535,17 @@ static ssize_t pwrite(int __fd, const void *__buf, size_t __nbytes, off_t __offs
}
#endif
-
+#ifndef HAVE_STRCASESTR
+char *strcasestr(const char *haystack, const char *needle)
+{
+ const char *s;
+ size_t nlen = strlen(needle);
+ for (s=haystack;*s;s++) {
+ if (toupper(*needle) == toupper(*s) &&
+ strncasecmp(s, needle, nlen) == 0) {
+ return discard_const_p(char, s);
+ }
+ }
+ return NULL;
+}
+#endif