generate_random
generate_random.gr_session = session_p->k_session;
generate_random.gr_buf = (caddr_t)pRandomData;
generate_random.gr_buflen = ulRandomLen;
&generate_random)) < 0) {
if (generate_random.gr_return_value != CRYPTO_SUCCESS) {
generate_random.gr_return_value);
crypto_generate_random_t generate_random;
STRUCT_DECL(crypto_generate_random, generate_random);
STRUCT_INIT(generate_random, mode);
if (copyin(arg, STRUCT_BUF(generate_random),
STRUCT_SIZE(generate_random)) != 0) {
len = STRUCT_FGET(generate_random, gr_buflen);
session_id = STRUCT_FGET(generate_random, gr_session);
CRYPTO_RANDOM_OFFSET(generate_random), sp->sd_provider,
STRUCT_FGETP(generate_random, gr_buf), len) != 0) {
STRUCT_FSET(generate_random, gr_return_value, rv);
if (copyout(STRUCT_BUF(generate_random), arg,
STRUCT_SIZE(generate_random)) != 0) {
return (generate_random(dev, ARG, mode, rval));
if (random_number_ops->generate_random != NULL)
.generate_random = viorand_generate_random
KCF_PROV_RANDOM_OPS(pd)->generate_random) ? \
KCF_PROV_RANDOM_OPS(pd)->generate_random((pd)->pd_prov_handle, \
int (*generate_random)(crypto_provider_handle_t, crypto_session_id_t,