From a0dcd34e681e0b36ce1030da1f62ca94ec7d10ed Mon Sep 17 00:00:00 2001 From: Kevin Cernekee Date: Sun, 7 Oct 2012 18:03:38 -0700 Subject: [PATCH] Move strcasestr() implementation to compat.c Note: this change is untested. Signed-off-by: Kevin Cernekee --- compat.c | 22 ++++++++++++++++++++++ http.c | 22 ---------------------- openconnect-internal.h | 4 ++++ 3 files changed, 26 insertions(+), 22 deletions(-) diff --git a/compat.c b/compat.c index 537f68db..da59d359 100644 --- a/compat.c +++ b/compat.c @@ -140,3 +140,25 @@ ssize_t openconnect__getline(char **lineptr, size_t *n, FILE *stream) return -1; } #endif + +#ifndef HAVE_STRCASESTR +#include + +char *openconnect__strcasestr(const char *haystack, const char *needle) +{ + int hlen = strlen(haystack); + int nlen = strlen(needle); + int i, j; + + for (i = 0; i < hlen - nlen + 1; i++) { + for (j = 0; j < nlen; j++) { + if (tolower(haystack[i + j]) != + tolower(needle[j])) + break; + } + if (j == nlen) + return (char *)haystack + i; + } + return NULL; +} +#endif diff --git a/http.c b/http.c index 0fb661e1..8f264dce 100644 --- a/http.c +++ b/http.c @@ -526,28 +526,6 @@ static int run_csd_script(struct openconnect_info *vpninfo, char *buf, int bufle return 0; } -#ifndef HAVE_STRCASESTR -static char *openconnect__strcasestr(const char *haystack, const char *needle) -{ - int hlen = strlen(haystack); - int nlen = strlen(needle); - int i, j; - - for (i = 0; i < hlen - nlen + 1; i++) { - for (j = 0; j < nlen; j++) { - if (tolower(haystack[i + j]) != - tolower(needle[j])) - break; - } - if (j == nlen) - return (char *)haystack + i; - } - return NULL; -} -#define strcasestr openconnect__strcasestr -#endif - - int internal_parse_url(char *url, char **res_proto, char **res_host, int *res_port, char **res_path, int default_port) { diff --git a/openconnect-internal.h b/openconnect-internal.h index eaf05a76..5b0b44a3 100644 --- a/openconnect-internal.h +++ b/openconnect-internal.h @@ -320,6 +320,10 @@ int openconnect__asprintf(char **strp, const char *fmt, ...); #define getline openconnect__getline ssize_t openconnect__getline(char **lineptr, size_t *n, FILE *stream); #endif +#ifndef HAVE_STRCASESTR +#define strcasestr openconnect__strcasestr +char *openconnect__strcasestr(const char *haystack, const char *needle); +#endif /****************************************************************************/