summaryrefslogtreecommitdiff
path: root/components/entropy.c
blob: 5173f154155ad6dbb162886034021a439a36a0a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/* See LICENSE file for copyright and license details. */
#if defined(__linux__)
	#include <inttypes.h>
	#include <stdio.h>

	#include "../util.h"

	const char *
	entropy(void)
	{
		uintmax_t num;

		if (pscanf("/proc/sys/kernel/random/entropy_avail",
		           "%" PRIuMAX, &num) != 1) {
			return NULL;
		}

		return bprintf("%" PRIuMAX, num);
	}
#elif defined(__OpenBSD__)
	const char *
	entropy(void)
	{
		/* Unicode Character 'INFINITY' (U+221E) */
		return "\xe2\x88\x9e";
	}
#endif