Browse Source

remove `start()` from prng state

Steffen Jaeckel 6 years ago
parent
commit
58ea18e3b6

+ 1 - 1
demos/timing.c

@@ -647,7 +647,7 @@ static void time_prng(void)
 #undef DO2
 #undef DO2
 #undef DO1
 #undef DO1
 
 
-#define DO1 tprng.desc.start(&tprng); tprng.desc.add_entropy(buf, 32, &tprng); tprng.desc.ready(&tprng); tprng.desc.done(&tprng);
+#define DO1 prng_start[x](&tprng); tprng.desc.add_entropy(buf, 32, &tprng); tprng.desc.ready(&tprng); tprng.desc.done(&tprng);
 #define DO2 DO1 DO1
 #define DO2 DO1 DO1
       for (y = 0; y < 10000; y++) {
       for (y = 0; y < 10000; y++) {
          t_start();
          t_start();

+ 0 - 5
src/headers/tomcrypt_prng.h

@@ -56,11 +56,6 @@ struct ltc_prng_descriptor {
     const char *name;
     const char *name;
     /** size in bytes of exported state */
     /** size in bytes of exported state */
     int  export_size;
     int  export_size;
-    /** Start a PRNG state
-        @param prng   [out] The state to initialize
-        @return CRYPT_OK if successful
-    */
-    int (*start)(prng_state *prng);
     /** Add entropy to the PRNG
     /** Add entropy to the PRNG
         @param in         The entropy
         @param in         The entropy
         @param inlen      Length of the entropy (octets)\
         @param inlen      Length of the entropy (octets)\

+ 0 - 1
src/prngs/chacha20.c

@@ -13,7 +13,6 @@ static const struct ltc_prng_descriptor chacha20_prng_desc =
 {
 {
    "chacha20",
    "chacha20",
    40,
    40,
-   &chacha20_prng_start,
    &chacha20_prng_add_entropy,
    &chacha20_prng_add_entropy,
    &chacha20_prng_ready,
    &chacha20_prng_ready,
    &chacha20_prng_read,
    &chacha20_prng_read,

+ 0 - 1
src/prngs/fortuna.c

@@ -54,7 +54,6 @@ we reseed automatically when len(pool0) >= 64 or every LTC_FORTUNA_WD calls to t
 static const struct ltc_prng_descriptor fortuna_desc = {
 static const struct ltc_prng_descriptor fortuna_desc = {
     "fortuna",
     "fortuna",
     64,
     64,
-    &fortuna_start,
     &fortuna_add_entropy,
     &fortuna_add_entropy,
     &fortuna_ready,
     &fortuna_ready,
     &fortuna_read,
     &fortuna_read,

+ 0 - 1
src/prngs/rc4.c

@@ -13,7 +13,6 @@ static const struct ltc_prng_descriptor rc4_desc =
 {
 {
    "rc4",
    "rc4",
    32,
    32,
-   &rc4_start,
    &rc4_add_entropy,
    &rc4_add_entropy,
    &rc4_ready,
    &rc4_ready,
    &rc4_read,
    &rc4_read,

+ 0 - 4
src/prngs/rng_make_prng.c

@@ -40,10 +40,6 @@ int rng_make_prng(int bits, prng_state *prng,
       import_entropy = prng->desc.add_entropy;
       import_entropy = prng->desc.add_entropy;
    }
    }
 
 
-   if ((err = prng->desc.start(prng)) != CRYPT_OK) {
-      return err;
-   }
-
    buf = XMALLOC(bytes);
    buf = XMALLOC(bytes);
    if (buf == NULL) {
    if (buf == NULL) {
       return CRYPT_MEM;
       return CRYPT_MEM;

+ 0 - 1
src/prngs/sober128.c

@@ -15,7 +15,6 @@ static const struct ltc_prng_descriptor sober128_desc =
 {
 {
    "sober128",
    "sober128",
    40,
    40,
-   &sober128_start,
    &sober128_add_entropy,
    &sober128_add_entropy,
    &sober128_ready,
    &sober128_ready,
    &sober128_read,
    &sober128_read,

+ 0 - 1
src/prngs/sprng.c

@@ -17,7 +17,6 @@
 static const struct ltc_prng_descriptor sprng_desc =
 static const struct ltc_prng_descriptor sprng_desc =
 {
 {
     "sprng", 0,
     "sprng", 0,
-    &sprng_start,
     &sprng_add_entropy,
     &sprng_add_entropy,
     &sprng_ready,
     &sprng_ready,
     &sprng_read,
     &sprng_read,

+ 0 - 1
src/prngs/yarrow.c

@@ -12,7 +12,6 @@
 static const struct ltc_prng_descriptor yarrow_desc =
 static const struct ltc_prng_descriptor yarrow_desc =
 {
 {
     "yarrow", 64,
     "yarrow", 64,
-    &yarrow_start,
     &yarrow_add_entropy,
     &yarrow_add_entropy,
     &yarrow_ready,
     &yarrow_ready,
     &yarrow_read,
     &yarrow_read,

+ 1 - 1
tests/no_prng.c

@@ -144,7 +144,6 @@ static int no_prng_test(void)
 static const struct ltc_prng_descriptor no_prng_desc =
 static const struct ltc_prng_descriptor no_prng_desc =
 {
 {
     NULL, 0,
     NULL, 0,
-    &no_prng_start,
     &no_prng_add_entropy,
     &no_prng_add_entropy,
     &no_prng_ready,
     &no_prng_ready,
     &no_prng_read,
     &no_prng_read,
@@ -166,6 +165,7 @@ prng_state* no_prng_desc_get(void)
       return NULL;
       return NULL;
    }
    }
    no_prng->state.desc.name = no_prng->name;
    no_prng->state.desc.name = no_prng->name;
+   no_prng_start(&no_prng->state);
    return &no_prng->state;
    return &no_prng->state;
 }
 }