diff options
Diffstat (limited to 'components/entropy.c')
-rwxr-xr-x | components/entropy.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/components/entropy.c b/components/entropy.c new file mode 100755 index 0000000..66b2e5a --- /dev/null +++ b/components/entropy.c @@ -0,0 +1,28 @@ +/* See LICENSE file for copyright and license details. */ +#include "../slstatus.h" +#if defined(__linux__) + #include <stdint.h> + #include <stdio.h> + + #include "../util.h" + + #define ENTROPY_AVAIL "/proc/sys/kernel/random/entropy_avail" + + const char * + entropy(const char *unused) + { + uintmax_t num; + + if (pscanf(ENTROPY_AVAIL, "%ju", &num) != 1) + return NULL; + + return bprintf("%ju", num); + } +#elif defined(__OpenBSD__) | defined(__FreeBSD__) + const char * + entropy(const char *unused) + { + /* Unicode Character 'INFINITY' (U+221E) */ + return "\xe2\x88\x9e"; + } +#endif |