1#ifndef __STDC_WANT_LIB_EXT1__
2#define __STDC_WANT_LIB_EXT1__ 1
5#include "ruby/missing.h"
27#ifndef FUNC_UNOPTIMIZED
28# define FUNC_UNOPTIMIZED(x) x
32#ifndef HAVE_EXPLICIT_BZERO
33 #ifdef HAVE_EXPLICIT_MEMSET
35explicit_bzero(
void *b,
size_t len)
37 (void)explicit_memset(b, 0,
len);
39 #elif defined HAVE_MEMSET_S
41explicit_bzero(
void *b,
size_t len)
45 #elif defined SecureZeroMemory
47explicit_bzero(
void *b,
size_t len)
49 SecureZeroMemory(b,
len);
52 #elif defined HAVE_FUNC_WEAK
55WEAK(
void ruby_explicit_bzero_hook_unused(
void *buf,
size_t len));
57ruby_explicit_bzero_hook_unused(
void *buf,
size_t len)
62explicit_bzero(
void *b,
size_t len)
65 ruby_explicit_bzero_hook_unused(b,
len);
70FUNC_UNOPTIMIZED(
void explicit_bzero(
void *b,
size_t len));
74explicit_bzero(
void *b,
size_t len)
82 volatile char* p = (
volatile char*)b;
int len
Length of the buffer.