22#define PHP_HASH_EXTNAME "hash"
23#define PHP_HASH_VERSION PHP_VERSION
24#define PHP_MHASH_VERSION PHP_VERSION
26#define PHP_HASH_HMAC 0x0001
28#define PHP_HASH_SERIALIZE_MAGIC_SPEC 2
116#define PHP_HASH_HAVAL_OPS(p,b) extern const php_hash_ops php_hash_##p##haval##b##_ops;
137#define phpext_hash_ptr &hash_module_entry
140# define PHP_HASH_API __declspec(dllexport)
141#elif defined(__GNUC__) && __GNUC__ >= 4
142# define PHP_HASH_API __attribute__ ((visibility("default")))
161static inline void php_hash_bin2hex(
char *
out,
const unsigned char *in,
size_t in_len)
163 static const char hexits[17] =
"0123456789abcdef";
166 for(i = 0; i < in_len; i++) {
167 out[i * 2] = hexits[in[i] >> 4];
168 out[(i * 2) + 1] = hexits[in[i] & 0x0F];
count(Countable|array $value, int $mode=COUNT_NORMAL)
zend_ffi_ctype_name_buf buf
const php_stream_filter_ops * ops
zend_module_entry hash_module_entry
zend_class_entry * php_hashcontext_ce
hash(string $algo, string $data, bool $binary=false, array $options=[])
const php_hash_ops php_hash_adler32_ops
const php_hash_ops php_hash_crc32c_ops
const php_hash_ops php_hash_crc32b_ops
const php_hash_ops php_hash_crc32_ops
const php_hash_ops php_hash_fnv1a32_ops
const php_hash_ops php_hash_fnv1a64_ops
const php_hash_ops php_hash_fnv132_ops
const php_hash_ops php_hash_fnv164_ops
const php_hash_ops php_hash_gost_crypto_ops
const php_hash_ops php_hash_gost_ops
const php_hash_ops php_hash_joaat_ops
const php_hash_ops php_hash_md2_ops
const php_hash_ops php_hash_md4_ops
const php_hash_ops php_hash_md5_ops
const php_hash_ops php_hash_murmur3c_ops
const php_hash_ops php_hash_murmur3f_ops
const php_hash_ops php_hash_murmur3a_ops
const php_hash_ops php_hash_ripemd128_ops
const php_hash_ops php_hash_ripemd160_ops
const php_hash_ops php_hash_ripemd320_ops
const php_hash_ops php_hash_ripemd256_ops
const php_hash_ops php_hash_sha256_ops
const php_hash_ops php_hash_sha384_ops
const php_hash_ops php_hash_sha1_ops
const php_hash_ops php_hash_sha512_224_ops
const php_hash_ops php_hash_sha224_ops
const php_hash_ops php_hash_sha512_256_ops
const php_hash_ops php_hash_sha512_ops
const php_hash_ops php_hash_snefru_ops
const php_hash_ops php_hash_whirlpool_ops
const php_hash_ops php_hash_xxh32_ops
const php_hash_ops php_hash_xxh3_128_ops
const php_hash_ops php_hash_xxh3_64_ops
const php_hash_ops php_hash_xxh64_ops
PHP_HASH_API zend_result php_hash_copy(const void *ops, const void *orig_context, void *dest_context)
zend_result(* php_hash_serialize_func_t)(const php_hashcontext_object *hash, zend_long *magic, zval *zv)
void(* php_hash_final_func_t)(unsigned char *digest, void *context)
PHP_HASH_API zend_result php_hash_serialize_spec(const php_hashcontext_object *context, zval *zv, const char *spec)
#define PHP_HASH_HAVAL_OPS(p, b)
const php_hash_ops php_hash_sha3_256_ops
const php_hash_ops php_hash_sha3_224_ops
zend_result(* php_hash_copy_func_t)(const void *ops, const void *orig_context, void *dest_context)
struct _php_hashcontext_object php_hashcontext_object
const php_hash_ops php_hash_4tiger128_ops
const php_hash_ops php_hash_3tiger128_ops
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)
const php_hash_ops php_hash_3tiger192_ops
PHP_HASH_API void php_hash_register_algo(const char *algo, const php_hash_ops *ops)
const php_hash_ops php_hash_4tiger160_ops
PHP_HASH_API int php_hash_unserialize_spec(php_hashcontext_object *hash, const zval *zv, const char *spec)
const php_hash_ops php_hash_sha3_384_ops
const php_hash_ops php_hash_4tiger192_ops
const php_hash_ops php_hash_3tiger160_ops
PHP_HASH_API int php_hash_unserialize(php_hashcontext_object *context, zend_long magic, const zval *zv)
struct _php_hash_ops php_hash_ops
PHP_HASH_API zend_result php_hash_serialize(const php_hashcontext_object *context, zend_long *magic, zval *zv)
int(* php_hash_unserialize_func_t)(php_hashcontext_object *hash, zend_long magic, const zval *zv)
PHP_HASH_API const php_hash_ops * php_hash_fetch_ops(zend_string *algo)
const php_hash_ops php_hash_sha3_512_ops
const char * serialize_spec
php_hash_update_func_t hash_update
php_hash_copy_func_t hash_copy
php_hash_unserialize_func_t hash_unserialize
php_hash_serialize_func_t hash_serialize
php_hash_init_func_t hash_init
php_hash_final_func_t hash_final
#define ecalloc(nmemb, size)
ZEND_API void(ZEND_FASTCALL *zend_touch_vm_stack_data)(void *vm_stack_data)
struct _zend_string zend_string
struct _zend_module_entry zend_module_entry
struct _zend_class_entry zend_class_entry
struct _zend_object zend_object
struct _zend_array HashTable
ZEND_RESULT_CODE zend_result