LIBRARY: sodium
FUNCTION: int sodium_init ( )
+
+! randombytes_H
+FUNCTION: void randombytes_buf ( void* buf, size_t size )
+FUNCTION: uint32_t randombytes_random ( )
+FUNCTION: uint32_t randombytes_uniform ( uint32_t upper_bound )
+FUNCTION: void randombytes_stir ( )
! Copyright (C) 2017 Alexander Ilin.
! See http://factorcode.org/license.txt for BSD license.
-USING: init kernel math sodium.ffi ;
+USING: init kernel math sequences sodium.ffi ;
IN: sodium
ERROR: sodium-init-fail ;
! Call this before any other function, may be called multiple times.
: sodium-init ( -- ) sodium_init 0 < [ sodium-init-fail ] when ;
+: random-bytes ( byte-array -- byte-array' )
+ dup dup length randombytes_buf ;
+
[ sodium-init ] "sodium" add-startup-hook