Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions Misc/sbom.spdx.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 16 additions & 2 deletions Modules/_hacl/Lib_Memzero0.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,20 @@

#if defined(__APPLE__) && defined(__MACH__)
#include <AvailabilityMacros.h>
// memset_s is available from macOS 10.9, iOS 7, watchOS 2, and on all tvOS and visionOS versions.
# if (defined(MAC_OS_X_VERSION_MIN_REQUIRED) && (MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_9))
# define APPLE_HAS_MEMSET_S 1
# elif (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && (__IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_7_0))
# define APPLE_HAS_MEMSET_S 1
# elif (defined(TARGET_OS_TV) && TARGET_OS_TV)
# define APPLE_HAS_MEMSET_S 1
# elif (defined(__WATCH_OS_VERSION_MIN_REQUIRED) && (__WATCH_OS_VERSION_MIN_REQUIRED >= __WATCHOS_2_0))
# define APPLE_HAS_MEMSET_S 1
# elif (defined(TARGET_OS_VISION) && TARGET_OS_VISION)
# define APPLE_HAS_MEMSET_S 1
# else
# define APPLE_HAS_MEMSET_S 0
# endif
#endif

#if (defined(__APPLE__) && defined(__MACH__)) || defined(__linux__) || defined(__OpenBSD__)
Expand Down Expand Up @@ -41,7 +55,7 @@ void Lib_Memzero0_memzero0(void *dst, uint64_t len) {

#ifdef _WIN32
SecureZeroMemory(dst, len_);
#elif defined(__APPLE__) && defined(__MACH__) && defined(MAC_OS_X_VERSION_MIN_REQUIRED) && (MAC_OS_X_VERSION_MIN_REQUIRED >= 1090)
#elif defined(__APPLE__) && defined(__MACH__) && APPLE_HAS_MEMSET_S
memset_s(dst, len_, 0, len_);
#elif (defined(__linux__) && !defined(LINUX_NO_EXPLICIT_BZERO)) || defined(__FreeBSD__) || defined(__OpenBSD__)
explicit_bzero(dst, len_);
Expand All @@ -52,7 +66,7 @@ void Lib_Memzero0_memzero0(void *dst, uint64_t len) {
#warning "Your platform does not support any safe implementation of memzero -- consider a pull request!"
volatile unsigned char *volatile dst_ = (volatile unsigned char *volatile) dst;
size_t i = 0U;
while (i < len)
while (i < len_)
dst_[i++] = 0U;
#endif
}
2 changes: 1 addition & 1 deletion Modules/_hacl/refresh.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ fi

# Update this when updating to a new version after verifying that the changes
# the update brings in are good.
expected_hacl_star_rev=322f6d58290e0ed7f4ecb84fcce12917aa0f594b
expected_hacl_star_rev=7720f6d4fc0468a99d5ea6120976bcc271e42727

hacl_dir="$(realpath "$1")"
cd "$(dirname "$0")"
Expand Down
Loading