master
 1#include <errno.h>
 2#include <unistd.h>
 3#ifdef __wasilibc_use_wasip2
 4#include <wasi/libc.h>
 5#else
 6#include <wasi/api.h>
 7#endif
 8
 9int __getentropy(void *buffer, size_t len) {
10    if (len > 256) {
11        errno = EIO;
12        return -1;
13    }
14
15#ifdef __wasilibc_use_wasip2
16    int r = __wasilibc_random(buffer, len);
17#else
18    int r = __wasi_random_get(buffer, len);
19#endif
20    if (r != 0) {
21        errno = r;
22        return -1;
23    }
24    return 0;
25}
26weak_alias(__getentropy, getentropy);