fn random(userdata: ?*anyopaque, buffer: []u8) void userdata: ?*anyopaquebuffer: []u84777
4778
4779
4780
4781
4782
4783
4784fn random(userdata: ?*anyopaque, buffer: []u8) void {
const ev: *Evented = @ptrCast(@alignCast(userdata));
if (buffer.len == 0) return;
const thread: *Thread = .current();
var rand: Random = .{ .evented = ev, .thread = thread, .buffer = buffer };
thread.seed_csprng.once(&rand, &Random.seed);
if (rand.buffer.len > 0) thread.csprng.rng.fill(buffer);
}