29#define PHP_SHA224_SPEC "l8l2b64."
31#define PHP_SHA224Init(ctx) PHP_SHA224InitArgs(ctx, NULL)
42#define PHP_SHA256_SPEC "l8l2b64."
44#define PHP_SHA256Init(ctx) PHP_SHA256InitArgs(ctx, NULL)
48#if defined(__cplusplus) || defined(_MSC_VER)
49# define PHP_STATIC_RESTRICT
51# define PHP_STATIC_RESTRICT static restrict
58#if ((defined(__i386__) || defined(__x86_64__)) && defined(HAVE_IMMINTRIN_H)) || defined(_M_X64) || defined(_M_IX86)
59# if defined(__SSSE3__) && defined(__SHA__)
60# define PHP_HASH_INTRIN_SHA_NATIVE 1
61# elif defined(HAVE_FUNC_ATTRIBUTE_TARGET) || defined(_M_X64) || defined(_M_IX86)
62# define PHP_HASH_INTRIN_SHA_RESOLVER 1
66#if defined(PHP_HASH_INTRIN_SHA_NATIVE) || defined(PHP_HASH_INTRIN_SHA_RESOLVER)
78#define PHP_SHA384_SPEC "q8q2b128."
80#define PHP_SHA384Init(ctx) PHP_SHA384InitArgs(ctx, NULL)
91#define PHP_SHA512_SPEC "q8q2b128."
93#define PHP_SHA512Init(ctx) PHP_SHA512InitArgs(ctx, NULL)
98#define PHP_SHA512_256Init(ctx) PHP_SHA512_256InitArgs(ctx, NULL)
100#define PHP_SHA512_256Update PHP_SHA512Update
103#define PHP_SHA512_224Init(ctx) PHP_SHA512_224InitArgs(ctx, NULL)
105#define PHP_SHA512_224Update PHP_SHA512Update
PHP_HASH_API void PHP_SHA384InitArgs(PHP_SHA384_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_HASH_API void PHP_SHA512_256Final(unsigned char[32], PHP_SHA512_CTX *)
PHP_HASH_API void PHP_SHA256Update(PHP_SHA256_CTX *, const unsigned char *, size_t)
PHP_HASH_API void PHP_SHA512_224Final(unsigned char[28], PHP_SHA512_CTX *)
#define PHP_STATIC_RESTRICT
PHP_HASH_API void PHP_SHA256Final(unsigned char[32], PHP_SHA256_CTX *)
PHP_HASH_API void PHP_SHA224Final(unsigned char[28], PHP_SHA224_CTX *)
PHP_HASH_API void PHP_SHA256InitArgs(PHP_SHA256_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_HASH_API void PHP_SHA384Final(unsigned char[48], PHP_SHA384_CTX *)
PHP_HASH_API void PHP_SHA512Update(PHP_SHA512_CTX *, const unsigned char *, size_t)
PHP_HASH_API void PHP_SHA512InitArgs(PHP_SHA512_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_HASH_API void PHP_SHA512Final(unsigned char[64], PHP_SHA512_CTX *)
PHP_HASH_API void PHP_SHA512_224InitArgs(PHP_SHA512_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_HASH_API void PHP_SHA512_256InitArgs(PHP_SHA512_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_HASH_API void PHP_SHA384Update(PHP_SHA384_CTX *, const unsigned char *, size_t)
PHP_HASH_API void PHP_SHA224Update(PHP_SHA224_CTX *, const unsigned char *, size_t)
PHP_HASH_API void PHP_SHA224InitArgs(PHP_SHA224_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
unsigned char buffer[128]
unsigned char buffer[128]
#define ZEND_ATTRIBUTE_UNUSED
struct _zend_array HashTable