From 6e677f9b55fdb610e93134042ee41ee5c641cbdf Mon Sep 17 00:00:00 2001 From: Justus Winter Date: Mon, 7 Nov 2016 12:21:26 +0100 Subject: gpgscm: Add support for pseudo-random numbers. * tests/gpgscm/ffi.c (do_getpid): New function. (do_srandom): Likewise. (random_scaled): Likewise. (do_random): Likewise. (do_make_random_string): Likewise. (ffi_init): Expose the new functions. * tests/gpgscm/lib.scm: Document the new functions. Signed-off-by: Justus Winter --- tests/gpgscm/lib.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'tests/gpgscm/lib.scm') diff --git a/tests/gpgscm/lib.scm b/tests/gpgscm/lib.scm index 316eacf87..270189dcd 100644 --- a/tests/gpgscm/lib.scm +++ b/tests/gpgscm/lib.scm @@ -185,3 +185,24 @@ (else (write-char (apply read-char p) acc) (loop acc)))))) + +;; +;; Libc functions. +;; + +;; Get our process id. +(ffi-define (getpid)) + +;; +;; Random numbers. +;; + +;; Seed the random number generator. +(ffi-define (srandom seed)) + +;; Get a pseudo-random number between 0 (inclusive) and SCALE +;; (exclusive). +(ffi-define (random scale)) + +;; Create a string of the given SIZE containing pseudo-random data. +(ffi-define (make-random-string size)) -- cgit v1.2.3