Użycie RNDADDENTROPY do dodania entropii do / dev / random

Mam urządzenie, które generuje pewien szum, który chcę dodać do puli entropii dla urządzenia / dev / random we wbudowanym systemie Linux.

Czytamstrona man na / dev / random i tak naprawdę nie rozumiem struktury, którą przekazujesz do wywołania ioctl RNDADDENTROPY.

   RNDADDENTROPY
          Add some additional entropy to the input pool, incrementing
          the entropy count.  This differs from writing to /dev/random
          or /dev/urandom, which only adds some data but does not
          increment the entropy count.  The following structure is used:

              struct rand_pool_info {
                  int    entropy_count;
                  int    buf_size;
                  __u32  buf[0];
              };

          Here entropy_count is the value added to (or subtracted from)
          the entropy count, and buf is the buffer of size buf_size
          which gets added to the entropy pool.

Jestentropy_count w tej strukturze liczba bitów, które dodam? Dlaczego tak po prostu nie powinno byćbuf_size * 8 (przy założeniu, żebuf_size jest w kategoriach bajtów)?

Dodatkowo dlaczego tak jestbuf tablica o zerowym rozmiarze? Jak mam przypisać mu wartość?

Dziękujemy za pomoc tutaj!

questionAnswers(3)

yourAnswerToTheQuestion