1 /* $NetBSD: safe.c,v 1.1 2024/02/18 20:57:50 christos Exp $ */
2
3 /*
4 * Copyright (C) Internet Systems Consortium, Inc. ("ISC")
5 *
6 * SPDX-License-Identifier: MPL-2.0
7 *
8 * This Source Code Form is subject to the terms of the Mozilla Public
9 * License, v. 2.0. If a copy of the MPL was not distributed with this
10 * file, you can obtain one at https://mozilla.org/MPL/2.0/.
11 *
12 * See the COPYRIGHT file distributed with this work for additional
13 * information regarding copyright ownership.
14 */
15
16 #include <openssl/crypto.h>
17
18 #include <isc/safe.h>
19
20 int
isc_safe_memequal(const void * s1,const void * s2,size_t len)21 isc_safe_memequal(const void *s1, const void *s2, size_t len) {
22 return (!CRYPTO_memcmp(s1, s2, len));
23 }
24
25 void
isc_safe_memwipe(void * ptr,size_t len)26 isc_safe_memwipe(void *ptr, size_t len) {
27 OPENSSL_cleanse(ptr, len);
28 }
29