aboutsummaryrefslogtreecommitdiffstats
path: root/src/librandom/surf_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/librandom/surf_init.c')
-rw-r--r--src/librandom/surf_init.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/librandom/surf_init.c b/src/librandom/surf_init.c
index 53abdcc..49abe51 100644
--- a/src/librandom/surf_init.c
+++ b/src/librandom/surf_init.c
@@ -1,13 +1,14 @@
/* ISC license. */
+#include <stdint.h>
+
#include <skalibs/uint32.h>
#include <skalibs/surf.h>
void surf_init (SURFSchedule *ctx, char const *s)
{
- SURFSchedule zero = SURFSCHEDULE_ZERO ;
- unsigned int i = 4 ;
- *ctx = zero ;
- for (; i < 12 ; i++) uint32_unpack(s + (i<<2) - 16, ctx->in + i) ;
- for (i = 0 ; i < 32 ; i++) uint32_unpack(s + 32 + (i<<2), ctx->seed + i) ;
+ SURFSchedule z = SURFSCHEDULE_ZERO ;
+ for (uint32_t i = 4 ; i < 12 ; i++) uint32_unpack(s + (i<<2) - 16, z.in + i) ;
+ for (uint32_t i = 0 ; i < 32 ; i++) uint32_unpack(s + 32 + (i<<2), z.seed + i) ;
+ *ctx = z ;
}