+++ /dev/null
-/* $Id: memcmp.c 5049 2001-12-12 09:06:00Z rra $
-**
-** Replacement for a missing or broken memcmp.
-**
-** Written by Russ Allbery <rra@stanford.edu>
-** This work is hereby placed in the public domain by its author.
-**
-** Provides the same functionality as the standard library routine memcmp
-** for those platforms that don't have it or where it doesn't work right
-** (such as on SunOS where it can't deal with eight-bit characters).
-*/
-
-#include "config.h"
-#include <sys/types.h>
-
-/* If we're running the test suite, rename memcmp to avoid conflicts with
- the system version. */
-#if TESTING
-# define memcmp test_memcmp
-int test_memcmp(const void *, const void *, size_t);
-#endif
-
-int
-memcmp(const void *s1, const void *s2, size_t n)
-{
- size_t i;
- const unsigned char *p1, *p2;
-
- /* It's technically illegal to call memcmp with NULL pointers, but we
- may as well check anyway. */
- if (!s1)
- return !s2 ? 0 : -1;
- if (!s2)
- return 1;
-
- p1 = (const unsigned char *) s1;
- p2 = (const unsigned char *) s2;
- for (i = 0; i < n; i++, p1++, p2++)
- if (*p1 != *p2)
- return (int) *p1 - (int) *p2;
- return 0;
-}