1 /* $NetBSD: memcmp.c,v 1.3 2021/08/14 16:14:58 christos Exp $ */ 2 3 /* $OpenLDAP$ */ 4 /* This work is part of OpenLDAP Software <http://www.openldap.org/>. 5 * 6 * Copyright 1998-2021 The OpenLDAP Foundation. 7 * All rights reserved. 8 * 9 * Redistribution and use in source and binary forms, with or without 10 * modification, are permitted only as authorized by the OpenLDAP 11 * Public License. 12 * 13 * A copy of this license is available in the file LICENSE in the 14 * top-level directory of the distribution or, alternatively, at 15 * <http://www.OpenLDAP.org/license.html>. 16 */ 17 18 #include <sys/cdefs.h> 19 __RCSID("$NetBSD: memcmp.c,v 1.3 2021/08/14 16:14:58 christos Exp $"); 20 21 #include "portable.h" 22 23 #include <ac/string.h> 24 25 /* 26 * Memory Compare 27 */ 28 int 29 (lutil_memcmp)(const void *v1, const void *v2, size_t n) 30 { 31 if (n != 0) { 32 const unsigned char *s1=v1, *s2=v2; 33 do { 34 if (*s1++ != *s2++) return *--s1 - *--s2; 35 } while (--n != 0); 36 } 37 return 0; 38 } 39