memcmp(3)
- NetBSD Manual Pages
MEMCMP(3) NetBSD Library Functions Manual MEMCMP(3)
NAME
memcmp -- compare byte string
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <string.h>
int
memcmp(const void *b1, const void *b2, size_t len);
DESCRIPTION
The memcmp() function compares byte string b1 against byte string b2.
Both strings are assumed to be len bytes long.
RETURN VALUES
The memcmp() function returns zero if the two strings are identical, oth-
erwise returns the difference between the first two differing bytes
(treated as unsigned char values, so that `\200' is greater than `\0',
for example). Zero-length strings are always identical.
Do not use memcmp() to compare cryptographic secrets, because the time it
takes varies depending on how many bytes are the same, and thus leaks
information about the two strings by a timing side channel. To compare
secrets, hashes, message authentication codes, etc., use
consttime_memequal(3) instead.
SEE ALSO
bcmp(3), consttime_memequal(3), strcasecmp(3), strcmp(3), strcoll(3),
strxfrm(3)
STANDARDS
The memcmp() function conforms to ANSI X3.159-1989 (``ANSI C89'').
NetBSD 7.0 June 23, 2013 NetBSD 7.0
Powered by man-cgi (2024-03-20).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.