From: David Gibson Date: Fri, 18 Mar 2011 08:29:16 +0000 (+1100) Subject: Add configurator test for memmem() X-Git-Url: http://git.ozlabs.org/?p=ccan;a=commitdiff_plain;h=6aa15db4f4b07bc25c83769255586de51ec7f614;hp=19efa835ec7737d625e9a495a29a301c5465f8f5 Add configurator test for memmem() memmem(), which searches for one bytestring in a longer bytestring is one of those functions that should be standard, but isn't. This patch adds a ccan configurator test for the function so that modules can use or replace it as necessary. Signed-off-by: David Gibson --- diff --git a/config.h b/config.h index b0e5b02a..25609f13 100644 --- a/config.h +++ b/config.h @@ -32,6 +32,7 @@ #define HAVE_FLEXIBLE_ARRAY_MEMBER 1 #define HAVE_GETPAGESIZE 1 #define HAVE_LITTLE_ENDIAN 1 +#define HAVE_MEMMEM 1 #define HAVE_MMAP 1 #define HAVE_NESTED_FUNCTIONS 1 #define HAVE_STACK_GROWS_UPWARDS 0 diff --git a/tools/configurator/configurator.c b/tools/configurator/configurator.c index e697d775..af7955a3 100644 --- a/tools/configurator/configurator.c +++ b/tools/configurator/configurator.c @@ -106,6 +106,12 @@ static struct test tests[] = { "union { int i; char c[sizeof(int)]; } u;\n" "u.i = 0x01020304;\n" "return u.c[0] == 0x04 && u.c[1] == 0x03 && u.c[2] == 0x02 && u.c[3] == 0x01 ? 0 : 1;" }, + { "HAVE_MEMMEM", DEFINES_FUNC, NULL, + "#define _GNU_SOURCE\n" + "#include \n" + "static void *func(void *h, size_t hl, void *n, size_t nl) {\n" + "return memmem(h, hl, n, nl);" + "}\n", }, { "HAVE_MMAP", DEFINES_FUNC, NULL, "#include \n" "static void *func(int fd) {\n"