@@ -237,7 +237,7 @@ struct _zend_class_entry {
237
237
typedef union {
238
238
zend_max_align_t align ;
239
239
uint64_t opaque [5 ];
240
- } zend_utility_general_random_state ;
240
+ } zend_utility_random_bytes_insecure_state ;
241
241
242
242
typedef struct _zend_utility_functions {
243
243
void (* error_function )(int type , zend_string * error_filename , const uint32_t error_lineno , zend_string * message );
@@ -253,8 +253,8 @@ typedef struct _zend_utility_functions {
253
253
void (* printf_to_smart_str_function )(smart_str * buf , const char * format , va_list ap );
254
254
char * (* getenv_function )(const char * name , size_t name_len );
255
255
zend_string * (* resolve_path_function )(zend_string * filename );
256
- zend_result (* os_csprng_random_bytes_function )(void * bytes , size_t size , char * errstr , size_t errstr_size );
257
- zend_result (* general_random_bytes_function )( zend_utility_general_random_state * state , void * bytes , size_t size );
256
+ zend_result (* random_bytes_function )(void * bytes , size_t size , char * errstr , size_t errstr_size );
257
+ zend_result (* random_bytes_insecure_function )( zend_utility_random_bytes_insecure_state * state , void * bytes , size_t size );
258
258
} zend_utility_functions ;
259
259
260
260
typedef struct _zend_utility_values {
@@ -348,10 +348,13 @@ extern void (*zend_printf_to_smart_str)(smart_str *buf, const char *format, va_l
348
348
extern ZEND_API char * (* zend_getenv )(const char * name , size_t name_len );
349
349
extern ZEND_API zend_string * (* zend_resolve_path )(zend_string * filename );
350
350
/* Generate 'size' random bytes into 'bytes' with the OS CSPRNG. */
351
- extern ZEND_ATTRIBUTE_NONNULL ZEND_API zend_result (* zend_os_csprng_random_bytes )(void * bytes , size_t size , char * errstr , size_t errstr_size );
352
- /* Generate 'size' random bytes into 'bytes' with a general purpose PRNG.
353
- * 'state' must be zeroed before the first call and can be reused. */
354
- extern ZEND_ATTRIBUTE_NONNULL ZEND_API zend_result (* zend_general_random_bytes )(zend_utility_general_random_state * state , void * bytes , size_t size );
351
+ extern ZEND_ATTRIBUTE_NONNULL ZEND_API zend_result (* zend_random_bytes )(
352
+ void * bytes , size_t size , char * errstr , size_t errstr_size );
353
+ /* Generate 'size' random bytes into 'bytes' with a general purpose PRNG (not
354
+ * crypto safe). 'state' must be zeroed before the first call and can be reused.
355
+ */
356
+ extern ZEND_ATTRIBUTE_NONNULL ZEND_API zend_result (* zend_random_bytes_insecure )(
357
+ zend_utility_random_bytes_insecure_state * state , void * bytes , size_t size );
355
358
356
359
/* These two callbacks are especially for opcache */
357
360
extern ZEND_API zend_result (* zend_post_startup_cb )(void );
0 commit comments