Hi,

On 16/07/14 23:02, Jonas 'Sortie' Termansen wrote:
> * Consider using _DEFAULT_SOURCE or _ALL_SOURCE as feature macros on
>   unknown platforms.

> * crypto/compat/issetugid_linux.c is used on non-Linux platforms. This
>   fail on including glibc internal headers which is hardly elegant.

Those were the only issues when I tried building it on Debian
GNU/kFreeBSD[0] (and probably the same on Hurd) which are good examples
of non-Linux platforms.

We still have /dev/urandom, so we may be able to use getentropy_linux if
only the Linux-specific includes and the sysctl were all #ifdef __linux__

We also have the option of using the FreeBSD kernel's sysctl, but
suggesting a getentropy_freebsd.c would seem silly when FreeBSD itself
doesn't need one...

An alternative for other platforms is to link with libbsd[1], so that
arc4random is available and getentropy need not be compiled, although
beware the arc4random implementation in libbsd 0.6.0 is outdated and not
currently very safe to use for this[2].

[0]: https://bugs.debian.org/754513#10
[1]: http://libbsd.freedesktop.org/wiki/
[2]: https://bugs.debian.org/754513#186

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org

Reply via email to