Fix issue with MemSan and entropy

Due to the recent change about entropy sources strength, it is no longer
acceptable to just disable the platform source. So, instead "fix" it so that
it is clear to MemSan that memory is initialized.

I tried __attribute__((no_sanitize_memory)) and MemSan's blacklist file, but
couldn't seem to get them to work.
diff --git a/library/entropy_poll.c b/library/entropy_poll.c
index 92c757e..073acad 100644
--- a/library/entropy_poll.c
+++ b/library/entropy_poll.c
@@ -81,8 +81,16 @@
 #include <sys/syscall.h>
 #if defined(SYS_getrandom)
 #define HAVE_GETRANDOM
+
 static int getrandom_wrapper( void *buf, size_t buflen, unsigned int flags )
 {
+    /* MemSan cannot understand that the syscall writes to the buffer */
+#if defined(__has_feature)
+#if __has_feature(memory_sanitizer)
+    memset( buf, 0, buflen );
+#endif
+#endif
+
     return( syscall( SYS_getrandom, buf, buflen, flags ) );
 }