31 s[1] = (
context->state >> 16) & 0xffff;
32 for (
size_t i = 0; i <
len; ++i) {
48 digest[0] = (
unsigned char) ((
context->state >> 24) & 0xff);
49 digest[1] = (
unsigned char) ((
context->state >> 16) & 0xff);
50 digest[2] = (
unsigned char) ((
context->state >> 8) & 0xff);
51 digest[3] = (
unsigned char) (
context->state & 0xff);
const php_stream_filter_ops * ops
PHP_HASH_API zend_result php_hash_serialize(const php_hashcontext_object *hash, zend_long *magic, zval *zv)
PHP_HASH_API int php_hash_unserialize(php_hashcontext_object *hash, zend_long magic, const zval *zv)
PHP_HASH_API zend_result PHP_ADLER32Copy(const php_hash_ops *ops, const PHP_ADLER32_CTX *orig_context, PHP_ADLER32_CTX *copy_context)
const php_hash_ops php_hash_adler32_ops
PHP_HASH_API void PHP_ADLER32Update(PHP_ADLER32_CTX *context, const unsigned char *input, size_t len)
PHP_HASH_API void PHP_ADLER32Init(PHP_ADLER32_CTX *context, ZEND_ATTRIBUTE_UNUSED HashTable *args)
PHP_HASH_API void PHP_ADLER32Final(unsigned char digest[4], PHP_ADLER32_CTX *context)
void(* php_hash_final_func_t)(unsigned char *digest, void *context)
zend_result(* php_hash_copy_func_t)(const void *ops, const void *orig_context, void *dest_context)
void(* php_hash_init_func_t)(void *context, HashTable *args)
void(* php_hash_update_func_t)(void *context, const unsigned char *buf, size_t count)
struct _php_hash_ops php_hash_ops
#define ZEND_ATTRIBUTE_UNUSED
struct _zend_array HashTable
ZEND_RESULT_CODE zend_result