blob: 31d2e4facd6db3cba423132a7037cdb94669ef5b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
.Dd January 24, 2024
.Dt SQLITE3_RANDOMNESS 3
.Os
.Sh NAME
.Nm sqlite3_randomness
.Nd pseudo-Random number generator
.Sh SYNOPSIS
.In sqlite3.h
.Ft void
.Fo sqlite3_randomness
.Fa "int N"
.Fa "void *P"
.Fc
.Sh DESCRIPTION
SQLite contains a high-quality pseudo-random number generator (PRNG)
used to select random ROWIDs when inserting new records into
a table that already uses the largest possible ROWID.
The PRNG is also used for the built-in random() and randomblob() SQL
functions.
This interface allows applications to access the same PRNG for other
purposes.
.Pp
A call to this routine stores N bytes of randomness into buffer P.
The P parameter can be a NULL pointer.
.Pp
If this routine has not been previously called or if the previous call
had N less than one or a NULL pointer for P, then the PRNG is seeded
using randomness obtained from the xRandomness method of the default
sqlite3_vfs object.
If the previous call to this routine had an N of 1 or more and a non-NULL
P then the pseudo-randomness is generated internally and without recourse
to the sqlite3_vfs xRandomness method.
.Sh IMPLEMENTATION NOTES
These declarations were extracted from the
interface documentation at line 3101.
.Bd -literal
SQLITE_API void sqlite3_randomness(int N, void *P);
.Ed
.Sh SEE ALSO
.Xr sqlite3_vfs 3
|