gestumblinde

Gestumblinde - reference implementation of SLH-DSA
git clone git://www.tkruger.se/gestumblinde.git
Log | Files | Refs | README

clcommon.c (480B)


      1 #include "clcommon.h"
      2 
      3 int read_message_from_stdin(uint8_t **m, size_t *mlen) {
      4   size_t tlen = 0;
      5   size_t allocd = 1024;
      6   uint8_t *t = malloc(allocd * sizeof(*t));
      7 
      8   int c;
      9   while ((c = getc(stdin)) != EOF) {
     10     if (allocd == tlen) {
     11       allocd <<= 1;
     12       t = realloc(t, allocd * sizeof(*t));
     13 
     14       if (t == NULL)
     15         return -1;
     16     }
     17     t[tlen] = (uint8_t)(c & 0xff);
     18     tlen++;
     19   }
     20 
     21   t = realloc(t, tlen * sizeof(*t));
     22   *m = t;
     23   *mlen = tlen;
     24 
     25   return 0;
     26 }