diff options
Diffstat (limited to 'src/librandom/surf_init.c')
| -rw-r--r-- | src/librandom/surf_init.c | 11 |
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 ; } |
