diff options
Diffstat (limited to 'modules/computer')
-rw-r--r-- | modules/computer/os.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/computer/os.c b/modules/computer/os.c index 41f8cb3a..3caf6c26 100644 --- a/modules/computer/os.c +++ b/modules/computer/os.c @@ -141,6 +141,17 @@ detect_desktop_environment(OperatingSystem * os) } } +gchar * +computer_get_entropy_avail(void) +{ + gint bits = h_sysfs_read_int("/proc/sys/kernel/random", "entropy_avail"); + if (bits < 200) + return g_strdup_printf("%d bits (low)", bits); + if (bits < 3000) + return g_strdup_printf("%d bits (medium)", bits); + return g_strdup_printf("%d bits (healthy)", bits); +} + OperatingSystem * computer_get_os(void) { @@ -241,5 +252,7 @@ computer_get_os(void) scan_languages(os); detect_desktop_environment(os); + os->entropy_avail = computer_get_entropy_avail(); + return os; } |