diff --git a/configure b/configure index 4cf4b6c0..1006d4d5 100755 --- a/configure +++ b/configure @@ -474,6 +474,27 @@ else fi rm -f _$func.c _$func +# +# Check for strnstr(). +func=strnstr +printf "Checking for $func() ... " +cat < _$func.c +#include +int main(void) { + const char big[] = "foo"; + const char little[] = "f"; + strnstr(big, little, 3); + return 0; +} +EOF +if $XCC _$func.c -o _$func 2>/dev/null; then + echo yes. + echo "CPPFLAGS += -DHAVE_STRNSTR" >>$CONFIG_MK +else + echo no. +fi +rm -f _$func.c _$func + # # Check for humanize_number(). func=humanize_number diff --git a/lib/fetch/common.c b/lib/fetch/common.c index d035ae62..49874d2e 100644 --- a/lib/fetch/common.c +++ b/lib/fetch/common.c @@ -444,6 +444,8 @@ fetch_cache_put(conn_t *conn, int (*closecb)(conn_t *)) #ifdef WITH_SSL + +#ifndef HAVE_STRNSTR /* * Find the first occurrence of find in s, where the search is limited to the * first slen characters of s. @@ -468,6 +470,7 @@ strnstr(const char *s, const char *find, size_t slen) } return ((char *)__UNCONST(s)); } +#endif /* * Convert characters A-Z to lowercase (intentionally avoid any locale