mirror of
https://github.com/php/php-src.git
synced 2025-08-16 14:08:47 +02:00

The CSPRNG is a delicate and security relevant piece of code and having it in the giant random.c makes it much harder to verify changes to it. Split it into a separate file.
32 lines
731 B
Text
32 lines
731 B
Text
dnl
|
|
dnl Check for arc4random on BSD systems
|
|
dnl
|
|
AC_CHECK_DECLS([arc4random_buf])
|
|
|
|
dnl
|
|
dnl Check for CCRandomGenerateBytes
|
|
dnl header absent in previous macOs releases
|
|
dnl
|
|
AC_CHECK_HEADERS([CommonCrypto/CommonRandom.h], [], [],
|
|
[
|
|
#include <sys/types.h>
|
|
#include <Availability.h>
|
|
#include <CommonCrypto/CommonCryptoError.h>
|
|
])
|
|
|
|
dnl
|
|
dnl Setup extension
|
|
dnl
|
|
PHP_NEW_EXTENSION(random,
|
|
random.c \
|
|
csprng.c \
|
|
engine_combinedlcg.c \
|
|
engine_mt19937.c \
|
|
engine_pcgoneseq128xslrr64.c \
|
|
engine_xoshiro256starstar.c \
|
|
engine_secure.c \
|
|
engine_user.c \
|
|
gammasection.c \
|
|
randomizer.c,
|
|
no,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
|
|
PHP_INSTALL_HEADERS([ext/random], [php_random.h])
|